]> git.proxmox.com Git - systemd.git/commitdiff
Imported Upstream version 215
authorMichael Biebl <biebl@debian.org>
Thu, 4 Sep 2014 15:08:06 +0000 (17:08 +0200)
committerMichael Biebl <biebl@debian.org>
Thu, 4 Sep 2014 15:08:06 +0000 (17:08 +0200)
914 files changed:
Makefile-man.am
Makefile.am
Makefile.in
NEWS
README
TODO
config.h.in
configure
configure.ac
docs/gudev/Makefile.in
docs/gudev/html/index.html
docs/gudev/version.xml
docs/libudev/Makefile.in
docs/libudev/html/api-index-full.html
docs/libudev/html/index.html
docs/libudev/html/index.sgml
docs/libudev/html/libudev-udev-queue.html
docs/libudev/html/libudev.devhelp2
docs/libudev/libudev-sections.txt
docs/libudev/version.xml
hwdb/20-OUI.hwdb
hwdb/20-bluetooth-vendor-product.hwdb
hwdb/20-pci-classes.hwdb
hwdb/20-pci-vendor-model.hwdb
hwdb/20-usb-classes.hwdb
hwdb/20-usb-vendor-model.hwdb
man/SD_ALERT.html
man/SD_CRIT.html
man/SD_DEBUG.html
man/SD_EMERG.html
man/SD_ERR.html
man/SD_ID128_CONST_STR.html
man/SD_ID128_FORMAT_STR.html
man/SD_ID128_FORMAT_VAL.html
man/SD_ID128_MAKE.html
man/SD_INFO.html
man/SD_JOURNAL_APPEND.html
man/SD_JOURNAL_CURRENT_USER.html
man/SD_JOURNAL_FOREACH.html
man/SD_JOURNAL_FOREACH_BACKWARDS.html
man/SD_JOURNAL_FOREACH_DATA.html
man/SD_JOURNAL_FOREACH_UNIQUE.html
man/SD_JOURNAL_INVALIDATE.html
man/SD_JOURNAL_LOCAL_ONLY.html
man/SD_JOURNAL_NOP.html
man/SD_JOURNAL_RUNTIME_ONLY.html
man/SD_JOURNAL_SUPPRESS_LOCATION.html
man/SD_JOURNAL_SYSTEM.html
man/SD_LISTEN_FDS_START.html
man/SD_NOTICE.html
man/SD_WARNING.html
man/binfmt.d.5
man/binfmt.d.html
man/bootchart.conf.5
man/bootchart.conf.html
man/bootctl.1
man/bootctl.html
man/bootup.7
man/bootup.html
man/busctl.1
man/busctl.html
man/coredump.conf.5 [new file with mode: 0644]
man/coredump.conf.html [new file with mode: 0644]
man/coredump.conf.xml [new file with mode: 0644]
man/coredumpctl.1 [new file with mode: 0644]
man/coredumpctl.html [new file with mode: 0644]
man/coredumpctl.xml [new file with mode: 0644]
man/crypttab.5
man/crypttab.html
man/crypttab.xml
man/daemon.7
man/daemon.html
man/daemon.xml
man/file-hierarchy.7 [new file with mode: 0644]
man/file-hierarchy.html [new file with mode: 0644]
man/file-hierarchy.xml [new file with mode: 0644]
man/halt.8
man/halt.html
man/hostname.5
man/hostname.html
man/hostnamectl.1
man/hostnamectl.html
man/hostnamectl.xml
man/index.html
man/init.html
man/journalctl.1
man/journalctl.html
man/journald.conf.5
man/journald.conf.html
man/journald.conf.xml
man/kernel-command-line.7
man/kernel-command-line.html
man/kernel-command-line.xml
man/kernel-install.8
man/kernel-install.html
man/kernel-install.xml
man/locale.conf.5
man/locale.conf.html
man/localectl.1
man/localectl.html
man/localtime.5
man/localtime.html
man/loginctl.1
man/loginctl.html
man/logind.conf.5
man/logind.conf.html
man/machine-id.5
man/machine-id.html
man/machine-info.5
man/machine-info.html
man/machinectl.1
man/machinectl.html
man/modules-load.d.5
man/modules-load.d.html
man/nss-myhostname.8
man/nss-myhostname.html
man/os-release.5
man/os-release.html
man/os-release.xml
man/pam_systemd.8
man/pam_systemd.html
man/poweroff.html
man/reboot.html
man/resolved.conf.5
man/resolved.conf.html
man/runlevel.8
man/runlevel.html
man/sd-daemon.3
man/sd-daemon.html
man/sd-id128.3
man/sd-id128.html
man/sd-journal.3
man/sd-journal.html
man/sd-login.3
man/sd-login.html
man/sd-readahead.3
man/sd-readahead.html
man/sd_booted.3
man/sd_booted.html
man/sd_bus_creds_get_audit_login_uid.html
man/sd_bus_creds_get_audit_session_id.html
man/sd_bus_creds_get_cgroup.html
man/sd_bus_creds_get_cmdline.html
man/sd_bus_creds_get_comm.html
man/sd_bus_creds_get_exe.html
man/sd_bus_creds_get_gid.html
man/sd_bus_creds_get_mask.html
man/sd_bus_creds_get_owner_uid.html
man/sd_bus_creds_get_pid.3
man/sd_bus_creds_get_pid.html
man/sd_bus_creds_get_pid_starttime.html
man/sd_bus_creds_get_selinux_context.html
man/sd_bus_creds_get_session.html
man/sd_bus_creds_get_slice.html
man/sd_bus_creds_get_tid.html
man/sd_bus_creds_get_tid_comm.html
man/sd_bus_creds_get_uid.html
man/sd_bus_creds_get_unique_name.html
man/sd_bus_creds_get_unit.html
man/sd_bus_creds_get_user_unit.html
man/sd_bus_creds_get_well_known_names.html
man/sd_bus_creds_has_bounding_cap.html
man/sd_bus_creds_has_effective_cap.html
man/sd_bus_creds_has_inheritable_cap.html
man/sd_bus_creds_has_permitted_cap.html
man/sd_bus_creds_new_from_pid.3
man/sd_bus_creds_new_from_pid.html
man/sd_bus_creds_ref.html
man/sd_bus_creds_unref.html
man/sd_bus_default_system.html
man/sd_bus_default_user.html
man/sd_bus_error.3
man/sd_bus_error.html
man/sd_bus_error_copy.html
man/sd_bus_error_free.html
man/sd_bus_error_get_errno.html
man/sd_bus_error_has_name.html
man/sd_bus_error_is_set.html
man/sd_bus_error_set.html
man/sd_bus_error_set_const.html
man/sd_bus_error_set_errno.html
man/sd_bus_error_set_errnof.html
man/sd_bus_message_append.3
man/sd_bus_message_append.html
man/sd_bus_message_append_array.3
man/sd_bus_message_append_array.html
man/sd_bus_message_append_array_iovec.html
man/sd_bus_message_append_array_memfd.html
man/sd_bus_message_append_array_space.html
man/sd_bus_message_append_basic.3
man/sd_bus_message_append_basic.html
man/sd_bus_message_append_string_iovec.html
man/sd_bus_message_append_string_memfd.3
man/sd_bus_message_append_string_memfd.html
man/sd_bus_message_append_string_space.html
man/sd_bus_message_append_strv.3
man/sd_bus_message_append_strv.html
man/sd_bus_message_get_cookie.3
man/sd_bus_message_get_cookie.html
man/sd_bus_message_get_monotonic_usec.3
man/sd_bus_message_get_monotonic_usec.html
man/sd_bus_message_get_realtime_usec.html
man/sd_bus_message_get_reply_cookie.html
man/sd_bus_message_get_seqnum.html
man/sd_bus_negotiate_creds.html
man/sd_bus_negotiate_fds.3
man/sd_bus_negotiate_fds.html
man/sd_bus_negotiate_timestamps.html
man/sd_bus_new.3
man/sd_bus_new.html
man/sd_bus_open_system.html
man/sd_bus_open_system_container.html
man/sd_bus_open_system_remote.html
man/sd_bus_open_user.3
man/sd_bus_open_user.html
man/sd_bus_path_decode.html
man/sd_bus_path_encode.3
man/sd_bus_path_encode.html
man/sd_bus_ref.html
man/sd_bus_release_name.html
man/sd_bus_request_name.3
man/sd_bus_request_name.html
man/sd_bus_unref.html
man/sd_event_add_time.3
man/sd_event_add_time.html
man/sd_event_default.html
man/sd_event_new.3
man/sd_event_new.html
man/sd_event_ref.html
man/sd_event_source_get_time.html
man/sd_event_source_get_time_accuracy.html
man/sd_event_source_get_time_clock.html
man/sd_event_source_set_time.html
man/sd_event_source_set_time_accuracy.html
man/sd_event_unref.html
man/sd_get_machine_names.html
man/sd_get_seats.3
man/sd_get_seats.html
man/sd_get_sessions.html
man/sd_get_uids.html
man/sd_id128_equal.html
man/sd_id128_from_string.html
man/sd_id128_get_boot.html
man/sd_id128_get_machine.3
man/sd_id128_get_machine.html
man/sd_id128_randomize.3
man/sd_id128_randomize.html
man/sd_id128_t.html
man/sd_id128_to_string.3
man/sd_id128_to_string.html
man/sd_is_fifo.3
man/sd_is_fifo.html
man/sd_is_mq.html
man/sd_is_socket.html
man/sd_is_socket_inet.html
man/sd_is_socket_unix.html
man/sd_is_special.html
man/sd_journal.html
man/sd_journal_add_conjunction.html
man/sd_journal_add_disjunction.html
man/sd_journal_add_match.3
man/sd_journal_add_match.html
man/sd_journal_close.html
man/sd_journal_enumerate_data.html
man/sd_journal_enumerate_unique.html
man/sd_journal_flush_matches.html
man/sd_journal_get_catalog.3
man/sd_journal_get_catalog.html
man/sd_journal_get_catalog_for_message_id.html
man/sd_journal_get_cursor.3
man/sd_journal_get_cursor.html
man/sd_journal_get_cutoff_monotonic_usec.html
man/sd_journal_get_cutoff_realtime_usec.3
man/sd_journal_get_cutoff_realtime_usec.html
man/sd_journal_get_data.3
man/sd_journal_get_data.html
man/sd_journal_get_data.xml
man/sd_journal_get_data_threshold.html
man/sd_journal_get_events.html
man/sd_journal_get_fd.3
man/sd_journal_get_fd.html
man/sd_journal_get_monotonic_usec.html
man/sd_journal_get_realtime_usec.3
man/sd_journal_get_realtime_usec.html
man/sd_journal_get_timeout.html
man/sd_journal_get_usage.3
man/sd_journal_get_usage.html
man/sd_journal_next.3
man/sd_journal_next.html
man/sd_journal_next.xml
man/sd_journal_next_skip.html
man/sd_journal_open.3
man/sd_journal_open.html
man/sd_journal_open_container.html
man/sd_journal_open_directory.html
man/sd_journal_open_files.html
man/sd_journal_perror.html
man/sd_journal_previous.html
man/sd_journal_previous_skip.html
man/sd_journal_print.3
man/sd_journal_print.html
man/sd_journal_printv.html
man/sd_journal_process.html
man/sd_journal_query_unique.3
man/sd_journal_query_unique.html
man/sd_journal_reliable_fd.html
man/sd_journal_restart_data.html
man/sd_journal_restart_unique.html
man/sd_journal_seek_cursor.html
man/sd_journal_seek_head.3
man/sd_journal_seek_head.html
man/sd_journal_seek_monotonic_usec.html
man/sd_journal_seek_realtime_usec.html
man/sd_journal_seek_tail.html
man/sd_journal_send.html
man/sd_journal_sendv.html
man/sd_journal_set_data_threshold.html
man/sd_journal_stream_fd.3
man/sd_journal_stream_fd.html
man/sd_journal_test_cursor.html
man/sd_journal_wait.html
man/sd_listen_fds.3
man/sd_listen_fds.html
man/sd_login_monitor.html
man/sd_login_monitor_flush.html
man/sd_login_monitor_get_events.html
man/sd_login_monitor_get_fd.html
man/sd_login_monitor_get_timeout.html
man/sd_login_monitor_new.3
man/sd_login_monitor_new.html
man/sd_login_monitor_unref.html
man/sd_notify.3
man/sd_notify.html
man/sd_notifyf.html
man/sd_peer_get_machine_name.html
man/sd_peer_get_owner_uid.html
man/sd_peer_get_session.html
man/sd_peer_get_slice.html
man/sd_peer_get_unit.html
man/sd_peer_get_user_unit.html
man/sd_pid_get_machine_name.html
man/sd_pid_get_owner_uid.html
man/sd_pid_get_session.3
man/sd_pid_get_session.html
man/sd_pid_get_slice.html
man/sd_pid_get_unit.html
man/sd_pid_get_user_unit.html
man/sd_readahead.3
man/sd_readahead.html
man/sd_seat_can_graphical.html
man/sd_seat_can_multi_session.html
man/sd_seat_can_tty.html
man/sd_seat_get_active.3
man/sd_seat_get_active.html
man/sd_seat_get_sessions.html
man/sd_session_get_class.html
man/sd_session_get_display.html
man/sd_session_get_remote_host.html
man/sd_session_get_remote_user.html
man/sd_session_get_seat.html
man/sd_session_get_service.html
man/sd_session_get_state.html
man/sd_session_get_tty.html
man/sd_session_get_type.html
man/sd_session_get_uid.html
man/sd_session_get_vt.html
man/sd_session_is_active.3
man/sd_session_is_active.html
man/sd_session_is_remote.html
man/sd_uid_get_display.html
man/sd_uid_get_seats.html
man/sd_uid_get_sessions.html
man/sd_uid_get_state.3
man/sd_uid_get_state.html
man/sd_uid_is_on_seat.html
man/sd_watchdog_enabled.3
man/sd_watchdog_enabled.html
man/sd_watchdog_enabled.xml
man/shutdown.8
man/shutdown.html
man/sysctl.d.5
man/sysctl.d.html
man/sysctl.d.xml
man/systemctl.1
man/systemctl.html
man/systemctl.xml
man/systemd-activate.8
man/systemd-activate.html
man/systemd-analyze.1
man/systemd-analyze.html
man/systemd-ask-password-console.path.html
man/systemd-ask-password-console.service.8
man/systemd-ask-password-console.service.html
man/systemd-ask-password-wall.path.html
man/systemd-ask-password-wall.service.html
man/systemd-ask-password.1
man/systemd-ask-password.html
man/systemd-backlight.html
man/systemd-backlight@.service.8
man/systemd-backlight@.service.html
man/systemd-binfmt.html
man/systemd-binfmt.service.8
man/systemd-binfmt.service.html
man/systemd-bootchart.1
man/systemd-bootchart.html
man/systemd-bus-proxyd.8
man/systemd-bus-proxyd.html
man/systemd-bus-proxyd.socket.html
man/systemd-bus-proxyd@.service.8
man/systemd-bus-proxyd@.service.html
man/systemd-cat.1
man/systemd-cat.html
man/systemd-cgls.1
man/systemd-cgls.html
man/systemd-cgtop.1
man/systemd-cgtop.html
man/systemd-coredumpctl.1 [deleted file]
man/systemd-coredumpctl.html [deleted file]
man/systemd-coredumpctl.xml [deleted file]
man/systemd-cryptsetup-generator.8
man/systemd-cryptsetup-generator.html
man/systemd-cryptsetup.html
man/systemd-cryptsetup@.service.8
man/systemd-cryptsetup@.service.html
man/systemd-debug-generator.8 [new file with mode: 0644]
man/systemd-debug-generator.html [new file with mode: 0644]
man/systemd-debug-generator.xml [new file with mode: 0644]
man/systemd-delta.1
man/systemd-delta.html
man/systemd-detect-virt.1
man/systemd-detect-virt.html
man/systemd-efi-boot-generator.8
man/systemd-efi-boot-generator.html
man/systemd-fsck-root.service.html
man/systemd-fsck.html
man/systemd-fsck@.service.8
man/systemd-fsck@.service.html
man/systemd-fsck@.service.xml
man/systemd-fstab-generator.8
man/systemd-fstab-generator.html
man/systemd-getty-generator.8
man/systemd-getty-generator.html
man/systemd-gpt-auto-generator.8
man/systemd-gpt-auto-generator.html
man/systemd-halt.service.8
man/systemd-halt.service.html
man/systemd-hibernate.service.html
man/systemd-hostnamed.html
man/systemd-hostnamed.service.8
man/systemd-hostnamed.service.html
man/systemd-hybrid-sleep.service.html
man/systemd-inhibit.1
man/systemd-inhibit.html
man/systemd-initctl.html
man/systemd-initctl.service.8
man/systemd-initctl.service.html
man/systemd-initctl.socket.html
man/systemd-journal-gatewayd.html
man/systemd-journal-gatewayd.service.8
man/systemd-journal-gatewayd.service.html
man/systemd-journal-gatewayd.socket.html
man/systemd-journal-remote.8
man/systemd-journal-remote.html
man/systemd-journald-dev-log.socket.8 [new file with mode: 0644]
man/systemd-journald-dev-log.socket.html [new file with mode: 0644]
man/systemd-journald.html
man/systemd-journald.service.8
man/systemd-journald.service.html
man/systemd-journald.socket.html
man/systemd-kexec.service.html
man/systemd-localed.html
man/systemd-localed.service.8
man/systemd-localed.service.html
man/systemd-logind.html
man/systemd-logind.service.8
man/systemd-logind.service.html
man/systemd-machine-id-setup.1
man/systemd-machine-id-setup.html
man/systemd-machined.html
man/systemd-machined.service.8
man/systemd-machined.service.html
man/systemd-modules-load.html
man/systemd-modules-load.service.8
man/systemd-modules-load.service.html
man/systemd-networkd-wait-online.html
man/systemd-networkd-wait-online.service.8
man/systemd-networkd-wait-online.service.html
man/systemd-networkd.html
man/systemd-networkd.service.8
man/systemd-networkd.service.html
man/systemd-notify.1
man/systemd-notify.html
man/systemd-nspawn.1
man/systemd-nspawn.html
man/systemd-nspawn.xml
man/systemd-path.1 [new file with mode: 0644]
man/systemd-path.html [new file with mode: 0644]
man/systemd-path.xml [new file with mode: 0644]
man/systemd-poweroff.service.html
man/systemd-quotacheck.html
man/systemd-quotacheck.service.8
man/systemd-quotacheck.service.html
man/systemd-random-seed.html
man/systemd-random-seed.service.8
man/systemd-random-seed.service.html
man/systemd-readahead-collect.service.html
man/systemd-readahead-done.service.html
man/systemd-readahead-done.timer.html
man/systemd-readahead-replay.service.8
man/systemd-readahead-replay.service.html
man/systemd-readahead.html
man/systemd-reboot.service.html
man/systemd-remount-fs.html
man/systemd-remount-fs.service.8
man/systemd-remount-fs.service.html
man/systemd-resolved.html
man/systemd-resolved.service.8
man/systemd-resolved.service.html
man/systemd-resolved.service.xml
man/systemd-rfkill.html
man/systemd-rfkill@.service.8
man/systemd-rfkill@.service.html
man/systemd-run.1
man/systemd-run.html
man/systemd-shutdown.html
man/systemd-shutdownd.html
man/systemd-shutdownd.service.8
man/systemd-shutdownd.service.html
man/systemd-shutdownd.socket.html
man/systemd-sleep.conf.5
man/systemd-sleep.conf.html
man/systemd-sleep.html
man/systemd-socket-proxyd.8
man/systemd-socket-proxyd.html
man/systemd-suspend.service.8
man/systemd-suspend.service.html
man/systemd-sysctl.html
man/systemd-sysctl.service.8
man/systemd-sysctl.service.html
man/systemd-system-update-generator.8
man/systemd-system-update-generator.html
man/systemd-system.conf.5
man/systemd-system.conf.html
man/systemd-sysusers.8 [new file with mode: 0644]
man/systemd-sysusers.html [new file with mode: 0644]
man/systemd-sysusers.service.8 [new file with mode: 0644]
man/systemd-sysusers.service.html [new file with mode: 0644]
man/systemd-sysusers.xml [new file with mode: 0644]
man/systemd-timedated.html
man/systemd-timedated.service.8
man/systemd-timedated.service.html
man/systemd-timesyncd.html
man/systemd-timesyncd.service.8
man/systemd-timesyncd.service.html
man/systemd-tmpfiles-clean.service.html
man/systemd-tmpfiles-clean.timer.html
man/systemd-tmpfiles-setup-dev.service.html
man/systemd-tmpfiles-setup.service.html
man/systemd-tmpfiles.8
man/systemd-tmpfiles.html
man/systemd-tty-ask-password-agent.1
man/systemd-tty-ask-password-agent.html
man/systemd-udevd-control.socket.html
man/systemd-udevd-kernel.socket.html
man/systemd-udevd.html
man/systemd-udevd.service.8
man/systemd-udevd.service.html
man/systemd-update-done.8 [new file with mode: 0644]
man/systemd-update-done.html [new file with mode: 0644]
man/systemd-update-done.service.8 [new file with mode: 0644]
man/systemd-update-done.service.html [new file with mode: 0644]
man/systemd-update-done.service.xml [new file with mode: 0644]
man/systemd-update-utmp-runlevel.service.html
man/systemd-update-utmp.html
man/systemd-update-utmp.service.8
man/systemd-update-utmp.service.html
man/systemd-user-sessions.html
man/systemd-user-sessions.service.8
man/systemd-user-sessions.service.html
man/systemd-user.conf.html
man/systemd-vconsole-setup.html
man/systemd-vconsole-setup.service.8
man/systemd-vconsole-setup.service.html
man/systemd.1
man/systemd.automount.5
man/systemd.automount.html
man/systemd.device.5
man/systemd.device.html
man/systemd.directives.7
man/systemd.directives.html
man/systemd.directives.xml
man/systemd.exec.5
man/systemd.exec.html
man/systemd.exec.xml
man/systemd.html
man/systemd.index.7
man/systemd.index.html
man/systemd.index.xml
man/systemd.journal-fields.7
man/systemd.journal-fields.html
man/systemd.journal-fields.xml
man/systemd.kill.5
man/systemd.kill.html
man/systemd.link.5
man/systemd.link.html
man/systemd.link.xml
man/systemd.mount.5
man/systemd.mount.html
man/systemd.mount.xml
man/systemd.netdev.5
man/systemd.netdev.html
man/systemd.netdev.xml
man/systemd.network.5
man/systemd.network.html
man/systemd.network.xml
man/systemd.path.5
man/systemd.path.html
man/systemd.preset.5
man/systemd.preset.html
man/systemd.resource-control.5
man/systemd.resource-control.html
man/systemd.scope.5
man/systemd.scope.html
man/systemd.service.5
man/systemd.service.html
man/systemd.service.xml
man/systemd.slice.5
man/systemd.slice.html
man/systemd.snapshot.5
man/systemd.snapshot.html
man/systemd.socket.5
man/systemd.socket.html
man/systemd.socket.xml
man/systemd.special.7
man/systemd.special.html
man/systemd.special.xml
man/systemd.swap.5
man/systemd.swap.html
man/systemd.target.5
man/systemd.target.html
man/systemd.time.7
man/systemd.time.html
man/systemd.timer.5
man/systemd.timer.html
man/systemd.unit.5
man/systemd.unit.html
man/systemd.unit.xml
man/sysusers.d.5 [new file with mode: 0644]
man/sysusers.d.html [new file with mode: 0644]
man/sysusers.d.xml [new file with mode: 0644]
man/telinit.8
man/telinit.html
man/timedatectl.1
man/timedatectl.html
man/tmpfiles.d.5
man/tmpfiles.d.html
man/tmpfiles.d.xml
man/udev.7
man/udev.html
man/udevadm.8
man/udevadm.html
man/user-system-options.xml
man/vconsole.conf.5
man/vconsole.conf.html
network/80-container-host0.network
network/80-container-ve.network
po/LINGUAS
po/de.po [new file with mode: 0644]
rules/42-usb-hid-pm.rules
rules/50-udev-default.rules
shell-completion/bash/coredumpctl [new file with mode: 0644]
shell-completion/bash/systemd-coredumpctl [deleted file]
shell-completion/zsh/_coredumpctl [new file with mode: 0644]
shell-completion/zsh/_systemd-coredumpctl [deleted file]
src/bootchart/bootchart.c
src/bootchart/svg.c
src/bus-proxyd/bus-policy.c
src/bus-proxyd/bus-policy.h
src/bus-proxyd/bus-proxyd.c
src/cgls/cgls.c
src/core/automount.c
src/core/busname.c
src/core/condition.c
src/core/dbus-execute.c
src/core/dbus-manager.c
src/core/dbus-mount.c
src/core/execute.c
src/core/killall.c
src/core/kmod-setup.c
src/core/load-fragment-gperf.gperf.m4
src/core/load-fragment.c
src/core/machine-id-setup.c
src/core/macros.systemd.in
src/core/main.c
src/core/mount-setup.c
src/core/mount.c
src/core/mount.h
src/core/namespace.c
src/core/org.freedesktop.systemd1.policy [new file with mode: 0644]
src/core/service.c
src/core/service.h
src/core/shutdown.c
src/core/snapshot.c
src/core/socket.c
src/core/switch-root.c
src/core/systemd.pc.in
src/core/timer.c
src/core/transaction.c
src/core/umount.c
src/core/unit.c
src/cryptsetup/cryptsetup-generator.c
src/cryptsetup/cryptsetup.c
src/debug-generator/debug-generator.c [new file with mode: 0644]
src/fsck/fsck.c
src/fstab-generator/fstab-generator.c
src/getty-generator/getty-generator.c
src/gpt-auto-generator/gpt-auto-generator.c
src/gudev/libgudev-1.0.sym [new file with mode: 0644]
src/hostname/hostnamed.c
src/hostname/org.freedesktop.hostname1.policy [new file with mode: 0644]
src/journal/compress.c
src/journal/compress.h
src/journal/coredump-vacuum.c [new file with mode: 0644]
src/journal/coredump-vacuum.h [new file with mode: 0644]
src/journal/coredump.c
src/journal/coredump.conf [new file with mode: 0644]
src/journal/coredumpctl.c
src/journal/journal-gatewayd.c
src/journal/journal-remote-parse.c
src/journal/journal-remote.c
src/journal/journal-send.c
src/journal/journal-vacuum.c
src/journal/journald-server.c
src/journal/journald-server.h
src/journal/journald.conf
src/journal/microhttpd-util.c
src/journal/stacktrace.c [new file with mode: 0644]
src/journal/stacktrace.h [new file with mode: 0644]
src/journal/test-compress.c [new file with mode: 0644]
src/journal/test-coredump-vacuum.c [new file with mode: 0644]
src/kernel-install/90-loaderentry.install
src/libsystemd-network/dhcp-internal.h
src/libsystemd-network/dhcp-lease-internal.h
src/libsystemd-network/dhcp-network.c
src/libsystemd-network/dhcp-packet.c
src/libsystemd-network/dhcp-protocol.h
src/libsystemd-network/dhcp-server-internal.h [new file with mode: 0644]
src/libsystemd-network/dhcp6-internal.h [new file with mode: 0644]
src/libsystemd-network/dhcp6-lease-internal.h [new file with mode: 0644]
src/libsystemd-network/dhcp6-network.c [new file with mode: 0644]
src/libsystemd-network/dhcp6-option.c [new file with mode: 0644]
src/libsystemd-network/dhcp6-protocol.h [new file with mode: 0644]
src/libsystemd-network/network-internal.c
src/libsystemd-network/network-internal.h
src/libsystemd-network/sd-dhcp-client.c
src/libsystemd-network/sd-dhcp-lease.c
src/libsystemd-network/sd-dhcp-server.c [new file with mode: 0644]
src/libsystemd-network/sd-dhcp6-client.c [new file with mode: 0644]
src/libsystemd-network/sd-dhcp6-lease.c [new file with mode: 0644]
src/libsystemd-network/sd-icmp6-nd.c [new file with mode: 0644]
src/libsystemd-network/test-dhcp-client.c
src/libsystemd-network/test-dhcp-server.c [new file with mode: 0644]
src/libsystemd-network/test-dhcp6-client.c [new file with mode: 0644]
src/libsystemd-network/test-icmp6-rs.c [new file with mode: 0644]
src/libsystemd/sd-bus/bus-message.c
src/libsystemd/sd-bus/sd-bus.c
src/libsystemd/sd-login/sd-login.c
src/libsystemd/sd-path/sd-path.c [new file with mode: 0644]
src/libsystemd/sd-rtnl/rtnl-types.c
src/libsystemd/sd-rtnl/test-rtnl.c
src/libudev/libudev-queue.c
src/libudev/libudev.h
src/libudev/libudev.sym
src/locale/localed.c
src/locale/org.freedesktop.locale1.policy [new file with mode: 0644]
src/login/org.freedesktop.login1.policy [new file with mode: 0644]
src/login/pam-module.c [deleted file]
src/login/pam_systemd.c [new file with mode: 0644]
src/login/pam_systemd.sym [new file with mode: 0644]
src/machine/machine-dbus.c
src/machine/machine.c
src/machine/machine.h
src/machine/machinectl.c
src/machine/machined-dbus.c
src/machine/org.freedesktop.machine1.conf
src/network/networkd-address-pool.c [new file with mode: 0644]
src/network/networkd-address.c
src/network/networkd-dummy.c [new file with mode: 0644]
src/network/networkd-link.c
src/network/networkd-macvlan.c [new file with mode: 0644]
src/network/networkd-manager.c
src/network/networkd-netdev-gperf.gperf
src/network/networkd-netdev.c
src/network/networkd-network-gperf.gperf
src/network/networkd-network.c
src/network/networkd-route.c
src/network/networkd-tunnel.c
src/network/networkd-tuntap.c [new file with mode: 0644]
src/network/networkd-veth.c
src/network/networkd-vlan.c [new file with mode: 0644]
src/network/networkd-vxlan.c [new file with mode: 0644]
src/network/networkd.h
src/network/test-network.c
src/nspawn/nspawn.c
src/path/path.c [new file with mode: 0644]
src/python-systemd/id128-constants.h [deleted file]
src/quotacheck/quotacheck.c
src/readahead/readahead-common.c
src/shared/acl-util.h
src/shared/architecture.c
src/shared/architecture.h
src/shared/audit.c
src/shared/base-filesystem.c [new file with mode: 0644]
src/shared/base-filesystem.h [new file with mode: 0644]
src/shared/condition-util.c
src/shared/condition-util.h
src/shared/conf-files.c
src/shared/copy.c
src/shared/copy.h
src/shared/dropin.c [new file with mode: 0644]
src/shared/dropin.h [new file with mode: 0644]
src/shared/exit-status.c
src/shared/exit-status.h
src/shared/fdset.c
src/shared/fileio.c
src/shared/fileio.h
src/shared/generator.c
src/shared/generator.h
src/shared/install.c
src/shared/install.h
src/shared/log.c
src/shared/macro.h
src/shared/missing.h
src/shared/path-lookup.c
src/shared/path-lookup.h
src/shared/path-util.c
src/shared/path-util.h
src/shared/sleep-config.c
src/shared/socket-label.c
src/shared/socket-util.c
src/shared/socket-util.h
src/shared/strv.c
src/shared/strv.h
src/shared/time-util.h
src/shared/unit-name.c
src/shared/util.c
src/shared/util.h
src/sleep/sleep.c
src/system-update-generator/system-update-generator.c
src/systemctl/systemctl.c
src/systemd/sd-dhcp-client.h
src/systemd/sd-dhcp-lease.h
src/systemd/sd-dhcp-server.h [new file with mode: 0644]
src/systemd/sd-dhcp6-client.h [new file with mode: 0644]
src/systemd/sd-dhcp6-lease.h [new file with mode: 0644]
src/systemd/sd-icmp6-nd.h [new file with mode: 0644]
src/systemd/sd-path.h [new file with mode: 0644]
src/sysusers/sysusers.c [new file with mode: 0644]
src/sysv-generator/sysv-generator.c
src/test/test-architecture.c
src/test/test-async.c [new file with mode: 0644]
src/test/test-capability.c [new file with mode: 0644]
src/test/test-conf-files.c [new file with mode: 0644]
src/test/test-fdset.c [new file with mode: 0644]
src/test/test-fileio.c
src/test/test-hashmap.c
src/test/test-install.c
src/test/test-path-util.c
src/test/test-ratelimit.c [new file with mode: 0644]
src/test/test-socket-util.c [new file with mode: 0644]
src/test/test-strv.c
src/test/test-unit-file.c
src/test/test-unit-name.c
src/test/test-util.c
src/timedate/org.freedesktop.timedate1.policy [new file with mode: 0644]
src/tmpfiles/tmpfiles.c
src/udev/net/link-config.c
src/udev/udev-builtin-net_id.c
src/udev/udev-builtin-net_setup_link.c
src/udev/udevadm-settle.c
src/update-done/update-done.c [new file with mode: 0644]
src/vconsole/vconsole-setup.c
system-preset/90-systemd.preset [new file with mode: 0644]
sysusers.d/basic.conf.in [new file with mode: 0644]
sysusers.d/systemd.conf [new file with mode: 0644]
test-libudev-sym.c
tmpfiles.d/etc.conf [new file with mode: 0644]
tmpfiles.d/systemd.conf
tmpfiles.d/var.conf
tools/make-directive-index.py
tools/make-man-rules.py
units/basic.target
units/cryptsetup-pre.target [new file with mode: 0644]
units/debug-shell.service.in
units/getty@.service.m4
units/ldconfig.service [new file with mode: 0644]
units/local-fs.target
units/sysinit.target
units/systemd-journal-catalog-update.service.in [new file with mode: 0644]
units/systemd-machined.service.in
units/systemd-networkd-wait-online.service.in
units/systemd-networkd.service.in
units/systemd-nspawn@.service.in
units/systemd-sysctl.service.in
units/systemd-sysusers.service.in [new file with mode: 0644]
units/systemd-timesyncd.service.in
units/systemd-tmpfiles-clean.service.in
units/systemd-tmpfiles-setup-dev.service.in
units/systemd-tmpfiles-setup.service.in
units/systemd-udev-hwdb-update.service.in [new file with mode: 0644]
units/systemd-udevd.service.in
units/systemd-update-done.service.in [new file with mode: 0644]
units/tmp.mount
units/user/basic.target

index 03adc7ca26798507225e2ed62d5a4af75f7b398c..5c289dda2a90a8062238f03944a8e6a4a812bc03 100644 (file)
@@ -11,6 +11,7 @@ MANPAGES += \
        man/bootup.7 \
        man/busctl.1 \
        man/daemon.7 \
+       man/file-hierarchy.7 \
        man/halt.8 \
        man/hostname.5 \
        man/journalctl.1 \
@@ -58,6 +59,7 @@ MANPAGES += \
        man/systemd-cat.1 \
        man/systemd-cgls.1 \
        man/systemd-cgtop.1 \
+       man/systemd-debug-generator.8 \
        man/systemd-delta.1 \
        man/systemd-detect-virt.1 \
        man/systemd-efi-boot-generator.8 \
@@ -72,6 +74,7 @@ MANPAGES += \
        man/systemd-machine-id-setup.1 \
        man/systemd-notify.1 \
        man/systemd-nspawn.1 \
+       man/systemd-path.1 \
        man/systemd-remount-fs.service.8 \
        man/systemd-run.1 \
        man/systemd-shutdownd.service.8 \
@@ -81,9 +84,11 @@ MANPAGES += \
        man/systemd-sysctl.service.8 \
        man/systemd-system-update-generator.8 \
        man/systemd-system.conf.5 \
+       man/systemd-sysusers.8 \
        man/systemd-tmpfiles.8 \
        man/systemd-tty-ask-password-agent.1 \
        man/systemd-udevd.service.8 \
+       man/systemd-update-done.service.8 \
        man/systemd-update-utmp.service.8 \
        man/systemd.1 \
        man/systemd.automount.5 \
@@ -107,6 +112,7 @@ MANPAGES += \
        man/systemd.time.7 \
        man/systemd.timer.5 \
        man/systemd.unit.5 \
+       man/sysusers.d.5 \
        man/telinit.8 \
        man/tmpfiles.d.5 \
        man/udev.7 \
@@ -193,6 +199,7 @@ MANPAGES_ALIAS += \
        man/systemd-hybrid-sleep.service.8 \
        man/systemd-initctl.8 \
        man/systemd-initctl.socket.8 \
+       man/systemd-journald-dev-log.socket.8 \
        man/systemd-journald.8 \
        man/systemd-journald.socket.8 \
        man/systemd-kexec.service.8 \
@@ -204,6 +211,7 @@ MANPAGES_ALIAS += \
        man/systemd-shutdownd.socket.8 \
        man/systemd-sleep.8 \
        man/systemd-sysctl.8 \
+       man/systemd-sysusers.service.8 \
        man/systemd-tmpfiles-clean.service.8 \
        man/systemd-tmpfiles-clean.timer.8 \
        man/systemd-tmpfiles-setup-dev.service.8 \
@@ -211,6 +219,7 @@ MANPAGES_ALIAS += \
        man/systemd-udevd-control.socket.8 \
        man/systemd-udevd-kernel.socket.8 \
        man/systemd-udevd.8 \
+       man/systemd-update-done.8 \
        man/systemd-update-utmp-runlevel.service.8 \
        man/systemd-update-utmp.8 \
        man/systemd-user.conf.5
@@ -295,6 +304,7 @@ man/systemd-hibernate.service.8: man/systemd-suspend.service.8
 man/systemd-hybrid-sleep.service.8: man/systemd-suspend.service.8
 man/systemd-initctl.8: man/systemd-initctl.service.8
 man/systemd-initctl.socket.8: man/systemd-initctl.service.8
+man/systemd-journald-dev-log.socket.8: man/systemd-journald.service.8
 man/systemd-journald.8: man/systemd-journald.service.8
 man/systemd-journald.socket.8: man/systemd-journald.service.8
 man/systemd-kexec.service.8: man/systemd-halt.service.8
@@ -306,6 +316,7 @@ man/systemd-shutdownd.8: man/systemd-shutdownd.service.8
 man/systemd-shutdownd.socket.8: man/systemd-shutdownd.service.8
 man/systemd-sleep.8: man/systemd-suspend.service.8
 man/systemd-sysctl.8: man/systemd-sysctl.service.8
+man/systemd-sysusers.service.8: man/systemd-sysusers.8
 man/systemd-tmpfiles-clean.service.8: man/systemd-tmpfiles.8
 man/systemd-tmpfiles-clean.timer.8: man/systemd-tmpfiles.8
 man/systemd-tmpfiles-setup-dev.service.8: man/systemd-tmpfiles.8
@@ -313,6 +324,7 @@ man/systemd-tmpfiles-setup.service.8: man/systemd-tmpfiles.8
 man/systemd-udevd-control.socket.8: man/systemd-udevd.service.8
 man/systemd-udevd-kernel.socket.8: man/systemd-udevd.service.8
 man/systemd-udevd.8: man/systemd-udevd.service.8
+man/systemd-update-done.8: man/systemd-update-done.service.8
 man/systemd-update-utmp-runlevel.service.8: man/systemd-update-utmp.service.8
 man/systemd-update-utmp.8: man/systemd-update-utmp.service.8
 man/systemd-user.conf.5: man/systemd-system.conf.5
@@ -559,6 +571,9 @@ man/systemd-initctl.html: man/systemd-initctl.service.html
 man/systemd-initctl.socket.html: man/systemd-initctl.service.html
        $(html-alias)
 
+man/systemd-journald-dev-log.socket.html: man/systemd-journald.service.html
+       $(html-alias)
+
 man/systemd-journald.html: man/systemd-journald.service.html
        $(html-alias)
 
@@ -592,6 +607,9 @@ man/systemd-sleep.html: man/systemd-suspend.service.html
 man/systemd-sysctl.html: man/systemd-sysctl.service.html
        $(html-alias)
 
+man/systemd-sysusers.service.html: man/systemd-sysusers.html
+       $(html-alias)
+
 man/systemd-tmpfiles-clean.service.html: man/systemd-tmpfiles.html
        $(html-alias)
 
@@ -613,6 +631,9 @@ man/systemd-udevd-kernel.socket.html: man/systemd-udevd.service.html
 man/systemd-udevd.html: man/systemd-udevd.service.html
        $(html-alias)
 
+man/systemd-update-done.html: man/systemd-update-done.service.html
+       $(html-alias)
+
 man/systemd-update-utmp-runlevel.service.html: man/systemd-update-utmp.service.html
        $(html-alias)
 
@@ -658,7 +679,8 @@ endif
 
 if ENABLE_COREDUMP
 MANPAGES += \
-       man/systemd-coredumpctl.1
+       man/coredump.conf.5 \
+       man/coredumpctl.1
 MANPAGES_ALIAS += \
        #
 
@@ -1472,13 +1494,16 @@ endif
 # Really, do not edit this file.
 
 EXTRA_DIST += \
-       man/binfmt.d.xml \
+       man/binfmt.d.xml \
        man/bootchart.conf.xml \
        man/bootctl.xml \
        man/bootup.xml \
        man/busctl.xml \
+       man/coredump.conf.xml \
+       man/coredumpctl.xml \
        man/crypttab.xml \
        man/daemon.xml \
+       man/file-hierarchy.xml \
        man/halt.xml \
        man/hostname.xml \
        man/hostnamectl.xml \
@@ -1569,9 +1594,9 @@ EXTRA_DIST += \
        man/systemd-cat.xml \
        man/systemd-cgls.xml \
        man/systemd-cgtop.xml \
-       man/systemd-coredumpctl.xml \
        man/systemd-cryptsetup-generator.xml \
        man/systemd-cryptsetup@.service.xml \
+       man/systemd-debug-generator.xml \
        man/systemd-delta.xml \
        man/systemd-detect-virt.xml \
        man/systemd-efi-boot-generator.xml \
@@ -1595,6 +1620,7 @@ EXTRA_DIST += \
        man/systemd-networkd.service.xml \
        man/systemd-notify.xml \
        man/systemd-nspawn.xml \
+       man/systemd-path.xml \
        man/systemd-quotacheck.service.xml \
        man/systemd-random-seed.service.xml \
        man/systemd-readahead-replay.service.xml \
@@ -1609,11 +1635,13 @@ EXTRA_DIST += \
        man/systemd-sysctl.service.xml \
        man/systemd-system-update-generator.xml \
        man/systemd-system.conf.xml \
+       man/systemd-sysusers.xml \
        man/systemd-timedated.service.xml \
        man/systemd-timesyncd.service.xml \
        man/systemd-tmpfiles.xml \
        man/systemd-tty-ask-password-agent.xml \
        man/systemd-udevd.service.xml \
+       man/systemd-update-done.service.xml \
        man/systemd-update-utmp.service.xml \
        man/systemd-user-sessions.service.xml \
        man/systemd-vconsole-setup.service.xml \
@@ -1643,6 +1671,7 @@ EXTRA_DIST += \
        man/systemd.timer.xml \
        man/systemd.unit.xml \
        man/systemd.xml \
+       man/sysusers.d.xml \
        man/telinit.xml \
        man/timedatectl.xml \
        man/tmpfiles.d.xml \
index 959c1210c3c706eccaab7025c7ea2dd4fc553dcc..e238cdeebfcb1960e724d6b294f9a1b772a2db80 100644 (file)
@@ -35,16 +35,16 @@ SUBDIRS = . po
 # Keep the test-suite.log
 .PRECIOUS: $(TEST_SUITE_LOG) Makefile
 
-LIBUDEV_CURRENT=5
-LIBUDEV_REVISION=1
-LIBUDEV_AGE=4
+LIBUDEV_CURRENT=6
+LIBUDEV_REVISION=0
+LIBUDEV_AGE=5
 
 LIBGUDEV_CURRENT=2
 LIBGUDEV_REVISION=0
 LIBGUDEV_AGE=2
 
 LIBSYSTEMD_CURRENT=3
-LIBSYSTEMD_REVISION=0
+LIBSYSTEMD_REVISION=1
 LIBSYSTEMD_AGE=3
 
 # The following four libraries only exist for compatibility reasons,
@@ -88,7 +88,10 @@ pkgsysconfdir=$(sysconfdir)/systemd
 userunitdir=$(prefix)/lib/systemd/user
 userpresetdir=$(prefix)/lib/systemd/user-preset
 tmpfilesdir=$(prefix)/lib/tmpfiles.d
+sysusersdir=$(prefix)/lib/sysusers.d
 sysctldir=$(prefix)/lib/sysctl.d
+binfmtdir=$(prefix)/lib/binfmt.d
+modulesloaddir=$(prefix)/lib/modules-load.d
 networkdir=$(rootprefix)/lib/systemd/network
 pkgincludedir=$(includedir)/systemd
 systemgeneratordir=$(rootlibexecdir)/system-generators
@@ -184,6 +187,8 @@ AM_CPPFLAGS = \
        -DPOLKIT_AGENT_BINARY_PATH=\"$(bindir)/pkttyagent\" \
        -DQUOTACHECK=\"$(QUOTACHECK)\" \
        -DKEXEC=\"$(KEXEC)\" \
+       -DLIBDIR=\"$(libdir)\" \
+       -DROOTLIBDIR=\"$(rootlibdir)\" \
        -I $(top_srcdir)/src \
        -I $(top_builddir)/src/shared \
        -I $(top_srcdir)/src/shared \
@@ -296,10 +301,14 @@ define install-relative-aliases
        done
 endef
 
+install-touch-usr-hook:
+       touch -c $(DESTDIR)/$(prefix)
+
 INSTALL_EXEC_HOOKS += \
        install-target-wants-hook \
        install-directories-hook \
-       install-aliases-hook
+       install-aliases-hook \
+       install-touch-usr-hook
 
 # ------------------------------------------------------------------------------
 AM_V_M4 = $(AM_V_M4_$(V))
@@ -337,7 +346,8 @@ bin_PROGRAMS = \
        systemd-detect-virt \
        systemd-delta \
        systemd-analyze \
-       systemd-run
+       systemd-run \
+       systemd-path
 
 dist_bin_SCRIPTS = \
        src/kernel-install/kernel-install
@@ -360,12 +370,14 @@ rootlibexec_PROGRAMS = \
        systemd-sysctl \
        systemd-sleep \
        systemd-bus-proxyd \
-       systemd-socket-proxyd
+       systemd-socket-proxyd \
+       systemd-update-done
 
 systemgenerator_PROGRAMS = \
        systemd-getty-generator \
        systemd-fstab-generator \
-       systemd-system-update-generator
+       systemd-system-update-generator \
+       systemd-debug-generator
 
 dist_bashcompletion_DATA = \
        shell-completion/bash/busctl \
@@ -458,7 +470,8 @@ dist_systemunit_DATA = \
        units/systemd-udevd-control.socket \
        units/systemd-udevd-kernel.socket \
        units/system-update.target \
-       units/initrd-switch-root.target
+       units/initrd-switch-root.target \
+       units/ldconfig.service
 
 nodist_systemunit_DATA = \
        units/getty@.service \
@@ -489,12 +502,14 @@ nodist_systemunit_DATA = \
        units/systemd-udevd.service \
        units/systemd-udev-trigger.service \
        units/systemd-udev-settle.service \
+       units/systemd-udev-hwdb-update.service \
        units/debug-shell.service \
        units/initrd-parse-etc.service \
        units/initrd-cleanup.service \
        units/initrd-udevadm-cleanup-db.service \
        units/initrd-switch-root.service \
-       units/systemd-nspawn@.service
+       units/systemd-nspawn@.service \
+       units/systemd-update-done.service
 
 dist_userunit_DATA = \
        units/user/basic.target \
@@ -504,6 +519,9 @@ dist_userunit_DATA = \
 nodist_userunit_DATA = \
        units/user/systemd-exit.service
 
+dist_systempreset_DATA = \
+       system-preset/90-systemd.preset
+
 EXTRA_DIST += \
        units/getty@.service.m4 \
        units/serial-getty@.service.m4 \
@@ -537,7 +555,8 @@ EXTRA_DIST += \
        units/initrd-cleanup.service.in \
        units/initrd-udevadm-cleanup-db.service.in \
        units/initrd-switch-root.service.in \
-       units/systemd-nspawn@.service.in
+       units/systemd-nspawn@.service.in \
+       units/systemd-update-done.service.in
 
 CLEANFILES += \
        units/console-shell.service.m4 \
@@ -800,8 +819,6 @@ libsystemd_shared_la_SOURCES = \
        src/shared/bus-label.c \
        src/shared/bus-label.h \
        src/shared/gpt.h \
-       src/shared/generator.h \
-       src/shared/generator.c \
        src/shared/clean-ipc.h \
        src/shared/clean-ipc.c \
        src/shared/login-shared.c \
@@ -813,7 +830,9 @@ libsystemd_shared_la_SOURCES = \
        src/shared/eventfd-util.c \
        src/shared/eventfd-util.h \
        src/shared/copy.c \
-       src/shared/copy.h
+       src/shared/copy.h \
+       src/shared/base-filesystem.c \
+       src/shared/base-filesystem.h
 
 nodist_libsystemd_shared_la_SOURCES = \
        src/shared/errno-from-name.h \
@@ -823,7 +842,8 @@ nodist_libsystemd_shared_la_SOURCES = \
 
 libsystemd_shared_la_CFLAGS = \
        $(AM_CFLAGS) \
-       $(SECCOMP_CFLAGS)
+       $(SECCOMP_CFLAGS) \
+       -pthread
 
 # ------------------------------------------------------------------------------
 noinst_LTLIBRARIES += \
@@ -855,7 +875,11 @@ libsystemd_label_la_SOURCES = \
        src/shared/fileio-label.c \
        src/shared/fileio-label.h \
        src/shared/dev-setup.c \
-       src/shared/dev-setup.h
+       src/shared/dev-setup.h \
+       src/shared/dropin.c \
+       src/shared/dropin.h \
+       src/shared/generator.h \
+       src/shared/generator.c
 
 libsystemd_label_la_CFLAGS = \
        $(AM_CFLAGS) \
@@ -1227,7 +1251,13 @@ tests += \
        test-tables \
        test-device-nodes \
        test-xml \
-       test-architecture
+       test-architecture \
+       test-socket-util \
+       test-fdset \
+       test-conf-files \
+       test-capability \
+       test-async \
+       test-ratelimit
 
 EXTRA_DIST += \
        test/sched_idle_bad.service \
@@ -1331,12 +1361,43 @@ test_utf8_SOURCES = \
 test_utf8_LDADD = \
        libsystemd-shared.la
 
+test_capability_SOURCES = \
+       src/test/test-capability.c
+
+test_capability_LDADD = \
+       libsystemd-shared.la \
+       libsystemd-capability.la
+
+test_async_SOURCES = \
+       src/test/test-async.c
+
+test_async_LDADD = \
+       libsystemd-shared.la
+
+test_fdset_SOURCES = \
+       src/test/test-fdset.c
+
+test_fdset_LDADD = \
+       libsystemd-core.la
+
+test_ratelimit_SOURCES = \
+       src/test/test-ratelimit.c
+
+test_ratelimit_LDADD = \
+       libsystemd-shared.la
+
 test_util_SOURCES = \
        src/test/test-util.c
 
 test_util_LDADD = \
        libsystemd-core.la
 
+test_socket_util_SOURCES = \
+       src/test/test-socket-util.c
+
+test_socket_util_LDADD = \
+       libsystemd-core.la
+
 test_ring_SOURCES = \
        src/test/test-ring.c
 
@@ -1572,12 +1633,18 @@ test_sched_prio_LDADD = \
        libsystemd-core.la \
        $(RT_LIBS)
 
+test_conf_files_SOURCES = \
+       src/test/test-conf-files.c
+
+test_conf_files_LDADD = \
+       libsystemd-shared.la
+
 # ------------------------------------------------------------------------------
 ## .PHONY so it always rebuilds it
 .PHONY: coverage lcov-run lcov-report coverage-sync
 
 # run lcov from scratch, always
-coverage:
+coverage: all
        $(MAKE) lcov-run
        $(MAKE) lcov-report
 
@@ -1639,6 +1706,14 @@ systemd_update_utmp_LDADD = \
        libsystemd-shared.la \
        $(AUDIT_LIBS)
 
+# ------------------------------------------------------------------------------
+systemd_update_done_SOURCES = \
+       src/update-done/update-done.c
+
+systemd_update_done_LDADD = \
+       libsystemd-internal.la \
+       libsystemd-shared.la
+
 # ------------------------------------------------------------------------------
 systemd_shutdownd_SOURCES = \
        src/shutdownd/shutdownd.c
@@ -1729,7 +1804,8 @@ dist_tmpfiles_DATA = \
        tmpfiles.d/systemd-nologin.conf \
        tmpfiles.d/tmp.conf \
        tmpfiles.d/x11.conf \
-       tmpfiles.d/var.conf
+       tmpfiles.d/var.conf \
+       tmpfiles.d/etc.conf
 
 if HAVE_SYSV_COMPAT
 dist_tmpfiles_DATA += \
@@ -1756,6 +1832,44 @@ EXTRA_DIST += \
        units/systemd-tmpfiles-setup.service.in \
        units/systemd-tmpfiles-clean.service.in
 
+# ------------------------------------------------------------------------------
+if ENABLE_SYSUSERS
+systemd_sysusers_SOURCES = \
+       src/sysusers/sysusers.c
+
+systemd_sysusers_LDADD = \
+       libsystemd-units.la \
+       libsystemd-label.la \
+       libsystemd-capability.la \
+       libsystemd-internal.la \
+       libsystemd-shared.la
+
+rootbin_PROGRAMS += \
+       systemd-sysusers
+
+nodist_systemunit_DATA += \
+       units/systemd-sysusers.service
+
+SYSINIT_TARGET_WANTS += \
+       systemd-sysusers.service
+
+dist_sysusers_DATA = \
+       sysusers.d/systemd.conf
+
+nodist_sysusers_DATA = \
+       sysusers.d/basic.conf
+
+EXTRA_DIST += \
+       units/systemd-sysusers.service.in \
+       sysusers.d/basic.conf.in
+
+CLEANFILES += \
+       sysusers.d/basic.conf
+
+INSTALL_DIRS += \
+       $(sysusersdir)
+endif
+
 # ------------------------------------------------------------------------------
 systemd_machine_id_setup_SOURCES = \
        src/machine-id-setup/machine-id-setup-main.c \
@@ -1823,6 +1937,14 @@ systemd_getty_generator_LDADD = \
        libsystemd-label.la \
        libsystemd-shared.la
 
+# ------------------------------------------------------------------------------
+systemd_debug_generator_SOURCES = \
+       src/debug-generator/debug-generator.c
+
+systemd_debug_generator_LDADD = \
+       libsystemd-label.la \
+       libsystemd-shared.la
+
 # ------------------------------------------------------------------------------
 systemd_fstab_generator_SOURCES = \
        src/fstab-generator/fstab-generator.c \
@@ -1977,6 +2099,14 @@ systemd_notify_LDADD = \
        libsystemd-internal.la \
        libsystemd-shared.la
 
+# ------------------------------------------------------------------------------
+systemd_path_SOURCES = \
+       src/path/path.c
+
+systemd_path_LDADD = \
+       libsystemd-internal.la \
+       libsystemd-shared.la
+
 # ------------------------------------------------------------------------------
 systemd_ask_password_SOURCES = \
        src/ask-password/ask-password.c
@@ -2102,6 +2232,7 @@ libsystemd_internal_la_SOURCES = \
        src/systemd/sd-login.h \
        src/systemd/sd-id128.h \
        src/systemd/sd-daemon.h \
+       src/systemd/sd-path.h \
        src/libsystemd/sd-bus/sd-bus.c \
        src/libsystemd/sd-bus/bus-control.c \
        src/libsystemd/sd-bus/bus-control.h \
@@ -2155,7 +2286,8 @@ libsystemd_internal_la_SOURCES = \
        src/libsystemd/sd-rtnl/rtnl-util.c \
        src/libsystemd/sd-id128/sd-id128.c \
        src/libsystemd/sd-daemon/sd-daemon.c \
-       src/libsystemd/sd-login/sd-login.c
+       src/libsystemd/sd-login/sd-login.c \
+       src/libsystemd/sd-path/sd-path.c
 
 nodist_libsystemd_internal_la_SOURCES = \
        src/libsystemd/libsystemd.sym \
@@ -2258,7 +2390,8 @@ pkginclude_HEADERS += \
        src/systemd/sd-utf8.h \
        src/systemd/sd-event.h \
        src/systemd/sd-rtnl.h \
-       src/systemd/sd-resolve.h
+       src/systemd/sd-resolve.h \
+       src/systemd/sd-path.h
 endif
 
 lib_LTLIBRARIES += \
@@ -2507,15 +2640,18 @@ libsystemd_network_la_CFLAGS = \
 libsystemd_network_la_SOURCES = \
        src/systemd/sd-network.h \
        src/systemd/sd-dhcp-client.h \
+       src/systemd/sd-dhcp-server.h \
        src/systemd/sd-dhcp-lease.h \
        src/systemd/sd-ipv4ll.h \
        src/network/sd-network.c \
        src/network/network-util.h \
        src/libsystemd-network/sd-dhcp-client.c \
+       src/libsystemd-network/sd-dhcp-server.c \
        src/libsystemd-network/dhcp-network.c \
        src/libsystemd-network/dhcp-option.c \
        src/libsystemd-network/dhcp-packet.c \
        src/libsystemd-network/dhcp-internal.h \
+       src/libsystemd-network/dhcp-server-internal.h \
        src/libsystemd-network/dhcp-protocol.h \
        src/libsystemd-network/dhcp-lease-internal.h \
        src/libsystemd-network/sd-dhcp-lease.c \
@@ -2524,7 +2660,18 @@ libsystemd_network_la_SOURCES = \
        src/libsystemd-network/ipv4ll-packet.c \
        src/libsystemd-network/ipv4ll-internal.h \
        src/libsystemd-network/network-internal.c \
-       src/libsystemd-network/network-internal.h
+       src/libsystemd-network/network-internal.h \
+       src/systemd/sd-icmp6-nd.h \
+       src/systemd/sd-dhcp6-client.h \
+       src/systemd/sd-dhcp6-lease.h \
+       src/libsystemd-network/sd-icmp6-nd.c \
+       src/libsystemd-network/sd-dhcp6-client.c \
+       src/libsystemd-network/dhcp6-internal.h \
+       src/libsystemd-network/dhcp6-protocol.h \
+       src/libsystemd-network/dhcp6-network.c \
+       src/libsystemd-network/dhcp6-option.c \
+       src/libsystemd-network/dhcp6-lease-internal.h \
+       src/libsystemd-network/sd-dhcp6-lease.c
 
 libsystemd_network_la_LIBADD = \
        libudev-internal.la \
@@ -2555,6 +2702,14 @@ test_dhcp_client_LDADD = \
        libsystemd-internal.la \
        libsystemd-shared.la
 
+test_dhcp_server_SOURCES = \
+       src/libsystemd-network/test-dhcp-server.c
+
+test_dhcp_server_LDADD = \
+       libsystemd-network.la \
+       libsystemd-internal.la \
+       libsystemd-shared.la
+
 test_ipv4ll_SOURCES = \
        src/systemd/sd-ipv4ll.h \
        src/libsystemd-network/ipv4ll-internal.h \
@@ -2566,10 +2721,34 @@ test_ipv4ll_LDADD = \
        libsystemd-internal.la \
        libsystemd-shared.la
 
+test_icmp6_rs_SOURCES = \
+       src/systemd/sd-dhcp6-client.h \
+       src/systemd/sd-icmp6-nd.h \
+       src/libsystemd-network/dhcp6-internal.h \
+       src/libsystemd-network/test-icmp6-rs.c
+
+test_icmp6_rs_LDADD = \
+       libsystemd-network.la \
+       libsystemd-internal.la \
+       libsystemd-shared.la
+
+test_dhcp6_client_SOURCES = \
+       src/systemd/sd-dhcp6-client.h \
+       src/libsystemd-network/dhcp6-internal.h \
+       src/libsystemd-network/test-dhcp6-client.c
+
+test_dhcp6_client_LDADD = \
+       libsystemd-network.la \
+       libsystemd-internal.la \
+       libsystemd-shared.la
+
 tests += \
        test-dhcp-option \
        test-dhcp-client \
-       test-ipv4ll
+       test-dhcp-server \
+       test-ipv4ll \
+       test-icmp6-rs \
+       test-dhcp6-client
 
 # ------------------------------------------------------------------------------
 if ENABLE_GTK_DOC
@@ -2716,19 +2895,23 @@ CLEANFILES += \
 EXTRA_DIST += \
        units/systemd-udevd.service.in \
        units/systemd-udev-trigger.service.in \
-       units/systemd-udev-settle.service.in
+       units/systemd-udev-settle.service.in \
+       units/systemd-udev-hwdb-update.service.in
 
 CLEANFILES += \
        units/systemd-udevd.service \
        units/systemd-udev-trigger.service \
-       units/systemd-udev-settle.service
+       units/systemd-udev-settle.service \
+       units/systemd-udev-hwdb-update.service
 
 SOCKETS_TARGET_WANTS += \
        systemd-udevd-control.socket \
        systemd-udevd-kernel.socket
+
 SYSINIT_TARGET_WANTS += \
        systemd-udevd.service \
-       systemd-udev-trigger.service
+       systemd-udev-trigger.service \
+       systemd-udev-hwdb-update.service
 
 rootbin_PROGRAMS += \
        udevadm
@@ -3027,6 +3210,7 @@ CLEANFILES += \
        src/gudev/gudev-1.0.pc
 
 libgudev_1_0_la_SOURCES = \
+       src/gudev/libgudev-1.0.sym \
        src/gudev/gudevenums.h \
        src/gudev/gudevenumtypes.h \
        src/gudev/gudevenumtypes.h\
@@ -3070,8 +3254,9 @@ libgudev_1_0_la_LIBADD = \
 libgudev_1_0_la_LDFLAGS = \
        $(AM_LDFLAGS) \
        -version-info $(LIBGUDEV_CURRENT):$(LIBGUDEV_REVISION):$(LIBGUDEV_AGE) \
-       -export-dynamic -no-undefined \
-       -export-symbols-regex '^g_udev_.*'
+       -export-dynamic \
+       -no-undefined \
+       -Wl,--version-script=$(top_srcdir)/src/gudev/libgudev-1.0.sym
 
 src/gudev/gudevmarshal.h: src/gudev/gudevmarshal.list
        $(AM_V_at)$(MKDIR_P) $(dir $@)
@@ -3345,6 +3530,15 @@ test_catalog_CPPFLAGS = \
 test_catalog_LDADD = \
        libsystemd-journal-core.la
 
+if HAVE_XZ
+test_compress_SOURCES = \
+       src/journal/test-compress.c
+
+test_compress_LDADD = \
+       libsystemd-journal-internal.la \
+       libsystemd-shared.la
+endif
+
 libsystemd_journal_core_la_SOURCES = \
        src/journal/journald-kmsg.c \
        src/journal/journald-kmsg.h \
@@ -3427,6 +3621,10 @@ tests += \
        test-mmap-cache \
        test-catalog
 
+if HAVE_XZ
+tests += test-compress
+endif
+
 pkginclude_HEADERS += \
        src/systemd/sd-journal.h \
        src/systemd/sd-messages.h \
@@ -3453,7 +3651,7 @@ libsystemd_journal_internal_la_SOURCES = \
        src/journal/mmap-cache.h
 
 # using _CFLAGS = in the conditional below would suppress AM_CFLAGS
-libsystemd_journal_internal_la_CFLAGS =
+libsystemd_journal_internal_la_CFLAGS = \
        $(AM_CFLAGS)
 
 libsystemd_journal_internal_la_LIBADD =
@@ -3503,7 +3701,8 @@ dist_systemunit_DATA += \
 
 nodist_systemunit_DATA += \
        units/systemd-journald.service \
-       units/systemd-journal-flush.service
+       units/systemd-journal-flush.service \
+       units/systemd-journal-catalog-update.service
 
 dist_pkgsysconf_DATA += \
        src/journal/journald.conf
@@ -3520,11 +3719,13 @@ SOCKETS_TARGET_WANTS += \
 
 SYSINIT_TARGET_WANTS += \
        systemd-journald.service \
-       systemd-journal-flush.service
+       systemd-journal-flush.service \
+       systemd-journal-catalog-update.service
 
 EXTRA_DIST += \
        units/systemd-journald.service.in \
        units/systemd-journal-flush.service.in \
+       units/systemd-journal-catalog-update.service.in \
        src/journal/journald-gperf.gperf
 
 CLEANFILES += \
@@ -3591,7 +3792,9 @@ systemd_socket_proxyd_LDADD = \
 # ------------------------------------------------------------------------------
 if ENABLE_COREDUMP
 systemd_coredump_SOURCES = \
-       src/journal/coredump.c
+       src/journal/coredump.c \
+       src/journal/coredump-vacuum.c \
+       src/journal/coredump-vacuum.h
 
 systemd_coredump_LDADD = \
        libsystemd-journal-internal.la \
@@ -3599,25 +3802,57 @@ systemd_coredump_LDADD = \
        libsystemd-internal.la \
        libsystemd-shared.la
 
+if HAVE_ELFUTILS
+systemd_coredump_SOURCES += \
+       src/journal/stacktrace.c \
+       src/journal/stacktrace.h
+
+systemd_coredump_LDADD += \
+       $(ELFUTILS_LIBS)
+endif
+
 rootlibexec_PROGRAMS += \
        systemd-coredump
 
-systemd_coredumpctl_SOURCES = \
+dist_pkgsysconf_DATA += \
+       src/journal/coredump.conf
+
+if HAVE_ACL
+systemd_coredump_LDADD += \
+       libsystemd-acl.la
+endif
+
+coredumpctl_SOURCES = \
        src/journal/coredumpctl.c
 
-systemd_coredumpctl_LDADD = \
+coredumpctl_LDADD = \
        libsystemd-journal-internal.la \
        libsystemd-internal.la \
        libsystemd-shared.la
 
 bin_PROGRAMS += \
-       systemd-coredumpctl
+       coredumpctl
+
+manual_tests += \
+       test-coredump-vacuum
+
+test_coredump_vacuum_SOURCES = \
+       src/journal/test-coredump-vacuum.c  \
+       src/journal/coredump-vacuum.c \
+       src/journal/coredump-vacuum.h
+
+test_coredump_vacuum_LDADD = \
+       libsystemd-internal.la \
+       libsystemd-shared.la
 
 dist_bashcompletion_DATA += \
-       shell-completion/bash/systemd-coredumpctl
+       shell-completion/bash/coredumpctl
 
 dist_zshcompletion_DATA += \
-       shell-completion/zsh/_systemd-coredumpctl
+       shell-completion/zsh/_coredumpctl
+
+GENERAL_ALIASES += \
+       $(bindir)/coredumpctl $(bindir)/systemd-coredumpctl
 
 sysctl_DATA = \
        sysctl.d/50-coredump.conf
@@ -3846,7 +4081,8 @@ systemgenerator_PROGRAMS += \
        systemd-cryptsetup-generator
 
 dist_systemunit_DATA += \
-       units/cryptsetup.target
+       units/cryptsetup.target \
+       units/cryptsetup-pre.target
 
 systemd_cryptsetup_SOURCES = \
        src/cryptsetup/cryptsetup.c
@@ -4100,6 +4336,9 @@ rootlibexec_PROGRAMS += \
 nodist_systemunit_DATA += \
        units/systemd-timesyncd.service
 
+GENERAL_ALIASES += \
+       $(systemunitdir)/systemd-timesyncd.service $(pkgsysconfdir)/system/multi-user.target.wants/systemd-timesyncd.service
+
 EXTRA_DIST += \
        units/systemd-timesyncd.service.in
 
@@ -4292,10 +4531,16 @@ libsystemd_networkd_core_la_SOURCES = \
        src/network/networkd-netdev.c \
        src/network/networkd-tunnel.c \
        src/network/networkd-veth.c \
+       src/network/networkd-vxlan.c \
+       src/network/networkd-vlan.c \
+       src/network/networkd-macvlan.c \
+       src/network/networkd-dummy.c \
+       src/network/networkd-tuntap.c \
        src/network/networkd-network.c \
        src/network/networkd-address.c \
        src/network/networkd-route.c \
-       src/network/networkd-manager.c
+       src/network/networkd-manager.c \
+       src/network/networkd-address-pool.c
 
 nodist_libsystemd_networkd_core_la_SOURCES = \
        src/network/networkd-network-gperf.c \
@@ -4486,7 +4731,8 @@ tests += \
 
 if HAVE_PAM
 pam_systemd_la_SOURCES = \
-       src/login/pam-module.c
+       src/login/pam_systemd.sym \
+       src/login/pam_systemd.c
 
 pam_systemd_la_CFLAGS = \
        $(AM_CFLAGS) \
@@ -4499,7 +4745,7 @@ pam_systemd_la_LDFLAGS = \
        -export-dynamic \
        -avoid-version \
        -shared \
-       -export-symbols-regex '^pam_sm_.*'
+       -Wl,--version-script=$(top_srcdir)/src/login/pam_systemd.sym
 
 pam_systemd_la_LIBADD = \
        libsystemd-capability.la \
@@ -4614,10 +4860,12 @@ _journal_la_LIBADD = \
 
 id128_la_SOURCES = \
        src/python-systemd/id128.c \
-       src/python-systemd/id128-constants.h \
        src/python-systemd/pyutil.c \
        src/python-systemd/pyutil.h
 
+nodist_id128_la_SOURCES = \
+       src/python-systemd/id128-constants.h
+
 id128_la_CFLAGS = \
        $(AM_CFLAGS) \
        -fvisibility=default \
@@ -4879,6 +5127,7 @@ substitutions = \
        '|udevrulesdir=$(udevrulesdir)|' \
        '|catalogdir=$(catalogdir)|' \
        '|tmpfilesdir=$(tmpfilesdir)|' \
+       '|sysusersdir=$(sysusersdir)|' \
        '|sysctldir=$(sysctldir)|' \
        '|systemgeneratordir=$(systemgeneratordir)|' \
        '|usergeneratordir=$(usergeneratordir)|' \
@@ -4910,7 +5159,12 @@ substitutions = \
        '|NTP_SERVERS=$(NTP_SERVERS)|' \
        '|DNS_SERVERS=$(DNS_SERVERS)|' \
        '|systemuidmax=$(SYSTEM_UID_MAX)|' \
-       '|systemgidmax=$(SYSTEM_GID_MAX)|'
+       '|systemgidmax=$(SYSTEM_GID_MAX)|' \
+       '|TTY_GID=$(TTY_GID)|' \
+       '|systemsleepdir=$(systemsleepdir)|' \
+       '|systemshutdowndir=$(systemshutdowndir)|' \
+       '|binfmtdir=$(binfmtdir)|' \
+       '|modulesloaddir=$(modulesloaddir)|'
 
 SED_PROCESS = \
        $(AM_V_GEN)$(MKDIR_P) $(dir $@) && \
@@ -4962,7 +5216,7 @@ units/user/%: units/%.m4
        $(AM_V_M4)$(M4) -P $(M4_DEFINES) -DFOR_USER=1 < $< > $@
 
 if ENABLE_POLKIT
-nodist_polkitpolicy_DATA = \
+dist_polkitpolicy_DATA = \
        $(polkitpolicy_files) \
        $(polkitpolicy_in_in_files:.policy.in.in=.policy)
 endif
@@ -5072,14 +5326,20 @@ RUNLEVEL4_TARGET_WANTS += \
 RUNLEVEL5_TARGET_WANTS += \
        systemd-update-utmp-runlevel.service
 endif
+
 SYSINIT_TARGET_WANTS += \
-       systemd-update-utmp.service
+       systemd-update-utmp.service \
+       systemd-update-done.service \
+       ldconfig.service
+
 LOCAL_FS_TARGET_WANTS += \
        systemd-remount-fs.service \
        tmp.mount
+
 MULTI_USER_TARGET_WANTS += \
        getty.target \
        systemd-ask-password-wall.path
+
 SYSINIT_TARGET_WANTS += \
        dev-hugepages.mount \
        dev-mqueue.mount \
@@ -5189,11 +5449,34 @@ DISTCHECK_CONFIGURE_FLAGS += \
        --with-sysvrcnd-path=
 endif
 
+if HAVE_PYTHON
+DISTCHECK_CONFIGURE_FLAGS += \
+       --with-python
+endif
+
 if ENABLE_GTK_DOC
 DISTCHECK_CONFIGURE_FLAGS += \
        --enable-gtk-doc
 endif
 
+#
+# Require python when making dist
+#
+.PHONY: dist-check-python
+dist-check-python:
+if !HAVE_PYTHON
+       @echo "*** python and python-lxml module must be installed and enabled in order to make dist"
+       @false
+endif
+
+dist-check-compat-libs:
+if !ENABLE_COMPAT_LIBS
+       @echo "*** compat-libs must be enabled in order to make dist"
+       @false
+endif
+
+dist: dist-check-python dist-check-compat-libs
+
 # check "broken" platforms limited toolchains for link breakage before we release
 .PHONY: linkcheck
 linkcheck:
@@ -5255,7 +5538,7 @@ valgrind-tests: $(TESTS)
        done
 
 exported-%: %
-       $(AM_V_GEN)nm -g --defined-only $(builddir)/.libs/$(<:.la=.so) 2>&1 /dev/null | grep " T " | cut -d" " -f3 > $@
+       $(AM_V_GEN)$(NM) -g --defined-only $(builddir)/.libs/$(<:.la=.so) 2>&1 /dev/null | grep " T " | cut -d" " -f3 > $@
 
 exported: $(addprefix exported-, $(lib_LTLIBRARIES))
        $(AM_V_GEN)cat $^ > $@
@@ -5275,7 +5558,7 @@ ALL_OBJECTS:=$(foreach v,$(OBJECT_VARIABLES),$($(v)))
 
 undefined defined: $(ALL_OBJECTS)
        $(AM_V_GEN)for f in $(ALL_OBJECTS) ; do \
-               nm -g --$@-only `echo $(builddir)/"$$f" | sed -e 's,\([^/]*\).lo$$,.libs/\1.o,'` ; \
+               $(NM) -g --$@-only `echo $(builddir)/"$$f" | sed -e 's,\([^/]*\).lo$$,.libs/\1.o,'` ; \
        done | cut -c 20- | cut -d @ -f 1 | sort -u > $@
 
 CLEANFILES += \
index 2a86b469b941a3830cc8a46b3e6c3799f1a10e2c..abb2e18542431601159b0db7474133781f8b408f 100644 (file)
@@ -104,9 +104,9 @@ POST_UNINSTALL = :
 build_triplet = @build@
 host_triplet = @host@
 check_PROGRAMS =
-@ENABLE_TESTS_TRUE@noinst_PROGRAMS = $(am__EXEEXT_10) $(am__EXEEXT_14)
+@ENABLE_TESTS_TRUE@noinst_PROGRAMS = $(am__EXEEXT_11) $(am__EXEEXT_16)
 @ENABLE_TESTS_FALSE@TESTS = test/udev-test.pl test/rules-test.sh
-@ENABLE_TESTS_TRUE@TESTS = $(am__EXEEXT_14) test/udev-test.pl \
+@ENABLE_TESTS_TRUE@TESTS = $(am__EXEEXT_16) test/udev-test.pl \
 @ENABLE_TESTS_TRUE@    test/rules-test.sh
 udevlibexec_PROGRAMS = ata_id$(EXEEXT) cdrom_id$(EXEEXT) \
        collect$(EXEEXT) scsi_id$(EXEEXT) v4l_id$(EXEEXT) \
@@ -114,15 +114,15 @@ udevlibexec_PROGRAMS = ata_id$(EXEEXT) cdrom_id$(EXEEXT) \
 rootbin_PROGRAMS = systemctl$(EXEEXT) systemd-notify$(EXEEXT) \
        systemd-ask-password$(EXEEXT) \
        systemd-tty-ask-password-agent$(EXEEXT) \
-       systemd-machine-id-setup$(EXEEXT) $(am__EXEEXT_15) \
-       udevadm$(EXEEXT) journalctl$(EXEEXT) $(am__EXEEXT_16) \
-       $(am__EXEEXT_17)
+       systemd-machine-id-setup$(EXEEXT) $(am__EXEEXT_17) \
+       $(am__EXEEXT_18) udevadm$(EXEEXT) journalctl$(EXEEXT) \
+       $(am__EXEEXT_19) $(am__EXEEXT_20)
 bin_PROGRAMS = systemd-cgls$(EXEEXT) systemd-cgtop$(EXEEXT) \
        systemd-nspawn$(EXEEXT) systemd-detect-virt$(EXEEXT) \
        systemd-delta$(EXEEXT) systemd-analyze$(EXEEXT) \
-       systemd-run$(EXEEXT) $(am__EXEEXT_1) busctl$(EXEEXT) \
-       systemd-cat$(EXEEXT) $(am__EXEEXT_2) $(am__EXEEXT_3) \
-       $(am__EXEEXT_4) $(am__EXEEXT_5)
+       systemd-run$(EXEEXT) systemd-path$(EXEEXT) $(am__EXEEXT_1) \
+       busctl$(EXEEXT) systemd-cat$(EXEEXT) $(am__EXEEXT_2) \
+       $(am__EXEEXT_3) $(am__EXEEXT_4) $(am__EXEEXT_5)
 rootlibexec_PROGRAMS = systemd$(EXEEXT) systemd-cgroups-agent$(EXEEXT) \
        systemd-initctl$(EXEEXT) systemd-update-utmp$(EXEEXT) \
        systemd-shutdownd$(EXEEXT) systemd-shutdown$(EXEEXT) \
@@ -130,20 +130,22 @@ rootlibexec_PROGRAMS = systemd$(EXEEXT) systemd-cgroups-agent$(EXEEXT) \
        systemd-fsck$(EXEEXT) systemd-ac-power$(EXEEXT) \
        systemd-sysctl$(EXEEXT) systemd-sleep$(EXEEXT) \
        systemd-bus-proxyd$(EXEEXT) systemd-socket-proxyd$(EXEEXT) \
-       $(am__EXEEXT_18) systemd-udevd$(EXEEXT) \
-       systemd-activate$(EXEEXT) $(am__EXEEXT_19) \
-       systemd-journald$(EXEEXT) $(am__EXEEXT_20) $(am__EXEEXT_21) \
-       $(am__EXEEXT_22) $(am__EXEEXT_23) $(am__EXEEXT_24) \
-       $(am__EXEEXT_25) $(am__EXEEXT_26) $(am__EXEEXT_27) \
-       $(am__EXEEXT_28) $(am__EXEEXT_29) $(am__EXEEXT_30) \
-       $(am__EXEEXT_31) $(am__EXEEXT_32) $(am__EXEEXT_33) \
-       $(am__EXEEXT_34) $(am__EXEEXT_35) $(am__EXEEXT_36) \
-       $(am__EXEEXT_37) $(am__EXEEXT_38) $(am__EXEEXT_39)
+       systemd-update-done$(EXEEXT) $(am__EXEEXT_21) \
+       systemd-udevd$(EXEEXT) systemd-activate$(EXEEXT) \
+       $(am__EXEEXT_22) systemd-journald$(EXEEXT) $(am__EXEEXT_23) \
+       $(am__EXEEXT_24) $(am__EXEEXT_25) $(am__EXEEXT_26) \
+       $(am__EXEEXT_27) $(am__EXEEXT_28) $(am__EXEEXT_29) \
+       $(am__EXEEXT_30) $(am__EXEEXT_31) $(am__EXEEXT_32) \
+       $(am__EXEEXT_33) $(am__EXEEXT_34) $(am__EXEEXT_35) \
+       $(am__EXEEXT_36) $(am__EXEEXT_37) $(am__EXEEXT_38) \
+       $(am__EXEEXT_39) $(am__EXEEXT_40) $(am__EXEEXT_41) \
+       $(am__EXEEXT_42)
 systemgenerator_PROGRAMS = systemd-getty-generator$(EXEEXT) \
        systemd-fstab-generator$(EXEEXT) \
-       systemd-system-update-generator$(EXEEXT) $(am__EXEEXT_40) \
-       $(am__EXEEXT_41) $(am__EXEEXT_42) $(am__EXEEXT_43) \
-       $(am__EXEEXT_44)
+       systemd-system-update-generator$(EXEEXT) \
+       systemd-debug-generator$(EXEEXT) $(am__EXEEXT_43) \
+       $(am__EXEEXT_44) $(am__EXEEXT_45) $(am__EXEEXT_46) \
+       $(am__EXEEXT_47)
 @HAVE_SYSV_COMPAT_TRUE@am__append_1 = \
 @HAVE_SYSV_COMPAT_TRUE@        units/rc-local.service \
 @HAVE_SYSV_COMPAT_TRUE@        units/halt-local.service
@@ -166,11 +168,12 @@ DIST_COMMON = $(srcdir)/Makefile-man.am $(srcdir)/Makefile.in \
        $(am__dist_gatewayddocumentroot_DATA_DIST) \
        $(dist_network_DATA) $(am__dist_ntpunits_DATA_DIST) \
        $(am__dist_pamconf_DATA_DIST) $(am__dist_pkgdata_DATA_DIST) \
-       $(am__dist_pkgsysconf_DATA_DIST) $(dist_sysctl_DATA) \
-       $(am__dist_systemunit_DATA_DIST) \
-       $(am__dist_tmpfiles_DATA_DIST) $(dist_udevconf_DATA) \
-       $(dist_udevhwdb_DATA) $(am__dist_udevrules_DATA_DIST) \
-       $(am__dist_userunit_DATA_DIST) \
+       $(am__dist_pkgsysconf_DATA_DIST) \
+       $(am__dist_polkitpolicy_DATA_DIST) $(dist_sysctl_DATA) \
+       $(dist_systempreset_DATA) $(am__dist_systemunit_DATA_DIST) \
+       $(am__dist_sysusers_DATA_DIST) $(am__dist_tmpfiles_DATA_DIST) \
+       $(dist_udevconf_DATA) $(dist_udevhwdb_DATA) \
+       $(am__dist_udevrules_DATA_DIST) $(am__dist_userunit_DATA_DIST) \
        $(am__dist_zshcompletion_DATA_DIST) $(include_HEADERS) \
        $(am__libgudev_include_HEADERS_DIST) \
        $(am__pkginclude_HEADERS_DIST) \
@@ -204,7 +207,8 @@ DIST_COMMON = $(srcdir)/Makefile-man.am $(srcdir)/Makefile.in \
 @ENABLE_BOOTCHART_TRUE@        #
 
 @ENABLE_COREDUMP_TRUE@am__append_9 = \
-@ENABLE_COREDUMP_TRUE@ man/systemd-coredumpctl.1
+@ENABLE_COREDUMP_TRUE@ man/coredump.conf.5 \
+@ENABLE_COREDUMP_TRUE@ man/coredumpctl.1
 
 @ENABLE_COREDUMP_TRUE@am__append_10 = \
 @ENABLE_COREDUMP_TRUE@ #
@@ -568,47 +572,66 @@ DIST_COMMON = $(srcdir)/Makefile-man.am $(srcdir)/Makefile.in \
 @ENABLE_TMPFILES_TRUE@ $(tmpfilesdir) \
 @ENABLE_TMPFILES_TRUE@ $(sysconfdir)/tmpfiles.d
 
+@ENABLE_SYSUSERS_TRUE@am__append_77 = \
+@ENABLE_SYSUSERS_TRUE@ systemd-sysusers
+
+@ENABLE_SYSUSERS_TRUE@am__append_78 = \
+@ENABLE_SYSUSERS_TRUE@ units/systemd-sysusers.service
+
+@ENABLE_SYSUSERS_TRUE@am__append_79 = \
+@ENABLE_SYSUSERS_TRUE@ systemd-sysusers.service
+
+@ENABLE_SYSUSERS_TRUE@am__append_80 = \
+@ENABLE_SYSUSERS_TRUE@ units/systemd-sysusers.service.in \
+@ENABLE_SYSUSERS_TRUE@ sysusers.d/basic.conf.in
+
+@ENABLE_SYSUSERS_TRUE@am__append_81 = \
+@ENABLE_SYSUSERS_TRUE@ sysusers.d/basic.conf
+
+@ENABLE_SYSUSERS_TRUE@am__append_82 = \
+@ENABLE_SYSUSERS_TRUE@ $(sysusersdir)
+
 
 # ------------------------------------------------------------------------------
-@ENABLE_EFI_TRUE@am__append_77 = \
+@ENABLE_EFI_TRUE@am__append_83 = \
 @ENABLE_EFI_TRUE@      systemd-efi-boot-generator
 
-@ENABLE_EFI_TRUE@am__append_78 = \
+@ENABLE_EFI_TRUE@am__append_84 = \
 @ENABLE_EFI_TRUE@      bootctl
 
-@ENABLE_EFI_TRUE@am__append_79 = \
+@ENABLE_EFI_TRUE@am__append_85 = \
 @ENABLE_EFI_TRUE@      shell-completion/bash/bootctl
 
-@ENABLE_EFI_TRUE@am__append_80 = \
+@ENABLE_EFI_TRUE@am__append_86 = \
 @ENABLE_EFI_TRUE@      shell-completion/zsh/_bootctl
 
 
 # ------------------------------------------------------------------------------
-@HAVE_BLKID_TRUE@am__append_81 = \
+@HAVE_BLKID_TRUE@am__append_87 = \
 @HAVE_BLKID_TRUE@      systemd-gpt-auto-generator
 
 
 # ------------------------------------------------------------------------------
-@ENABLE_KDBUS_TRUE@am__append_82 = \
+@ENABLE_KDBUS_TRUE@am__append_88 = \
 @ENABLE_KDBUS_TRUE@    systemd-dbus1-generator
 
-@ENABLE_KDBUS_TRUE@am__append_83 = dbus1-generator-install-hook
-@ENABLE_KDBUS_TRUE@am__append_84 = dbus1-generator-uninstall-hook
-@HAVE_SECCOMP_TRUE@am__append_85 = \
+@ENABLE_KDBUS_TRUE@am__append_89 = dbus1-generator-install-hook
+@ENABLE_KDBUS_TRUE@am__append_90 = dbus1-generator-uninstall-hook
+@HAVE_SECCOMP_TRUE@am__append_91 = \
 @HAVE_SECCOMP_TRUE@    libsystemd-seccomp.la \
 @HAVE_SECCOMP_TRUE@    $(SECCOMP_LIBS)
 
-@ENABLE_KDBUS_TRUE@am__append_86 = \
+@ENABLE_KDBUS_TRUE@am__append_92 = \
 @ENABLE_KDBUS_TRUE@    units/systemd-bus-proxyd@.service
 
-@ENABLE_KDBUS_TRUE@am__append_87 = \
+@ENABLE_KDBUS_TRUE@am__append_93 = \
 @ENABLE_KDBUS_TRUE@    units/systemd-bus-proxyd.socket
 
-@ENABLE_KDBUS_TRUE@am__append_88 = \
+@ENABLE_KDBUS_TRUE@am__append_94 = \
 @ENABLE_KDBUS_TRUE@    units/user/systemd-bus-proxyd.socket \
 @ENABLE_KDBUS_TRUE@    units/user/systemd-bus-proxyd@.service
 
-@ENABLE_KDBUS_TRUE@am__append_89 = \
+@ENABLE_KDBUS_TRUE@am__append_95 = \
 @ENABLE_KDBUS_TRUE@    src/systemd/sd-bus.h \
 @ENABLE_KDBUS_TRUE@    src/systemd/sd-bus-protocol.h \
 @ENABLE_KDBUS_TRUE@    src/systemd/sd-bus-vtable.h \
@@ -616,585 +639,610 @@ DIST_COMMON = $(srcdir)/Makefile-man.am $(srcdir)/Makefile.in \
 @ENABLE_KDBUS_TRUE@    src/systemd/sd-utf8.h \
 @ENABLE_KDBUS_TRUE@    src/systemd/sd-event.h \
 @ENABLE_KDBUS_TRUE@    src/systemd/sd-rtnl.h \
-@ENABLE_KDBUS_TRUE@    src/systemd/sd-resolve.h
+@ENABLE_KDBUS_TRUE@    src/systemd/sd-resolve.h \
+@ENABLE_KDBUS_TRUE@    src/systemd/sd-path.h
 
 
 # ------------------------------------------------------------------------------
-@ENABLE_GTK_DOC_TRUE@am__append_90 = \
+@ENABLE_GTK_DOC_TRUE@am__append_96 = \
 @ENABLE_GTK_DOC_TRUE@  docs/libudev
 
-@ENABLE_GTK_DOC_TRUE@am__append_91 = \
+@ENABLE_GTK_DOC_TRUE@am__append_97 = \
 @ENABLE_GTK_DOC_TRUE@  docs/html/libudev \
 @ENABLE_GTK_DOC_TRUE@  docs/html/gudev
 
-@ENABLE_FIRMWARE_TRUE@am__append_92 = \
+@ENABLE_FIRMWARE_TRUE@am__append_98 = \
 @ENABLE_FIRMWARE_TRUE@ src/udev/udev-builtin-firmware.c
 
-@ENABLE_FIRMWARE_TRUE@am__append_93 = \
+@ENABLE_FIRMWARE_TRUE@am__append_99 = \
 @ENABLE_FIRMWARE_TRUE@ rules/50-firmware.rules
 
-@HAVE_KMOD_TRUE@am__append_94 = \
+@HAVE_KMOD_TRUE@am__append_100 = \
 @HAVE_KMOD_TRUE@       src/udev/udev-builtin-kmod.c
 
-@HAVE_KMOD_TRUE@am__append_95 = \
+@HAVE_KMOD_TRUE@am__append_101 = \
 @HAVE_KMOD_TRUE@       rules/80-drivers.rules
 
-@HAVE_BLKID_TRUE@am__append_96 = \
+@HAVE_BLKID_TRUE@am__append_102 = \
 @HAVE_BLKID_TRUE@      src/udev/udev-builtin-blkid.c
 
-@HAVE_ACL_TRUE@am__append_97 = \
+@HAVE_ACL_TRUE@am__append_103 = \
 @HAVE_ACL_TRUE@        src/udev/udev-builtin-uaccess.c \
 @HAVE_ACL_TRUE@        src/login/logind-acl.c \
 @HAVE_ACL_TRUE@        src/libsystemd/sd-login/sd-login.c \
 @HAVE_ACL_TRUE@        src/systemd/sd-login.h
 
-@HAVE_ACL_TRUE@am__append_98 = \
+@HAVE_ACL_TRUE@am__append_104 = \
 @HAVE_ACL_TRUE@        libsystemd-acl.la
 
-@HAVE_ACL_TRUE@am__append_99 = \
+@HAVE_ACL_TRUE@am__append_105 = \
 @HAVE_ACL_TRUE@        libsystemd-acl.la
 
 
 # ------------------------------------------------------------------------------
-@ENABLE_GTK_DOC_TRUE@@ENABLE_GUDEV_TRUE@am__append_100 = \
+@ENABLE_GTK_DOC_TRUE@@ENABLE_GUDEV_TRUE@am__append_106 = \
 @ENABLE_GTK_DOC_TRUE@@ENABLE_GUDEV_TRUE@       docs/gudev
 
-@ENABLE_GUDEV_TRUE@am__append_101 = libgudev-1.0.la
-@ENABLE_GUDEV_TRUE@am__append_102 = \
+@ENABLE_GUDEV_TRUE@am__append_107 = libgudev-1.0.la
+@ENABLE_GUDEV_TRUE@am__append_108 = \
 @ENABLE_GUDEV_TRUE@    src/gudev/gudev-1.0.pc
 
-@ENABLE_GUDEV_TRUE@am__append_103 = \
+@ENABLE_GUDEV_TRUE@am__append_109 = \
 @ENABLE_GUDEV_TRUE@    src/gudev/gudev-1.0.pc
 
-@ENABLE_GUDEV_TRUE@am__append_104 = \
+@ENABLE_GUDEV_TRUE@am__append_110 = \
 @ENABLE_GUDEV_TRUE@    $(nodist_libgudev_1_0_la_SOURCES)
 
-@ENABLE_GUDEV_TRUE@@HAVE_INTROSPECTION_TRUE@am__append_105 = $(gir_DATA) $(typelibs_DATA)
-@ENABLE_GUDEV_TRUE@am__append_106 = libgudev-install-hook
-@ENABLE_GUDEV_TRUE@am__append_107 = libgudev-uninstall-hook
-@HAVE_MICROHTTPD_TRUE@am__append_108 = \
+@ENABLE_GUDEV_TRUE@@HAVE_INTROSPECTION_TRUE@am__append_111 = $(gir_DATA) $(typelibs_DATA)
+@ENABLE_GUDEV_TRUE@am__append_112 = libgudev-install-hook
+@ENABLE_GUDEV_TRUE@am__append_113 = libgudev-uninstall-hook
+@HAVE_MICROHTTPD_TRUE@am__append_114 = \
 @HAVE_MICROHTTPD_TRUE@ systemd-journal-remote
 
-@HAVE_GNUTLS_TRUE@@HAVE_MICROHTTPD_TRUE@am__append_109 = \
+@HAVE_GNUTLS_TRUE@@HAVE_MICROHTTPD_TRUE@am__append_115 = \
 @HAVE_GNUTLS_TRUE@@HAVE_MICROHTTPD_TRUE@       $(GNUTLS_LIBS)
 
-@HAVE_ACL_TRUE@am__append_110 = \
+@HAVE_ACL_TRUE@am__append_116 = \
 @HAVE_ACL_TRUE@        libsystemd-acl.la
 
-@HAVE_QRENCODE_TRUE@am__append_111 = \
+@HAVE_QRENCODE_TRUE@am__append_117 = \
 @HAVE_QRENCODE_TRUE@   src/journal/journal-qrcode.c \
 @HAVE_QRENCODE_TRUE@   src/journal/journal-qrcode.h
 
-@HAVE_QRENCODE_TRUE@am__append_112 = \
+@HAVE_QRENCODE_TRUE@am__append_118 = \
 @HAVE_QRENCODE_TRUE@   $(QRENCODE_CFLAGS)
 
-@HAVE_QRENCODE_TRUE@am__append_113 = \
+@HAVE_QRENCODE_TRUE@am__append_119 = \
 @HAVE_QRENCODE_TRUE@   $(QRENCODE_LIBS)
 
-@HAVE_ACL_TRUE@am__append_114 = \
+@HAVE_ACL_TRUE@am__append_120 = \
 @HAVE_ACL_TRUE@        libsystemd-acl.la
 
-@HAVE_XZ_TRUE@am__append_115 = \
+@HAVE_XZ_TRUE@am__append_121 = test-compress
+@HAVE_XZ_TRUE@am__append_122 = \
 @HAVE_XZ_TRUE@ src/journal/compress.c
 
-@HAVE_XZ_TRUE@am__append_116 = \
+@HAVE_XZ_TRUE@am__append_123 = \
 @HAVE_XZ_TRUE@ $(XZ_CFLAGS)
 
-@HAVE_XZ_TRUE@am__append_117 = \
+@HAVE_XZ_TRUE@am__append_124 = \
 @HAVE_XZ_TRUE@ $(XZ_LIBS)
 
-@HAVE_GCRYPT_TRUE@am__append_118 = \
+@HAVE_GCRYPT_TRUE@am__append_125 = \
 @HAVE_GCRYPT_TRUE@     src/journal/journal-authenticate.c \
 @HAVE_GCRYPT_TRUE@     src/journal/journal-authenticate.h \
 @HAVE_GCRYPT_TRUE@     src/journal/fsprg.c \
 @HAVE_GCRYPT_TRUE@     src/journal/fsprg.h
 
-@HAVE_GCRYPT_TRUE@am__append_119 = \
+@HAVE_GCRYPT_TRUE@am__append_126 = \
 @HAVE_GCRYPT_TRUE@     $(GCRYPT_LIBS)
 
 
 # fsprg.c is a drop-in file using void pointer arithmetic
-@HAVE_GCRYPT_TRUE@am__append_120 = \
+@HAVE_GCRYPT_TRUE@am__append_127 = \
 @HAVE_GCRYPT_TRUE@     $(GCRYPT_CFLAGS) \
 @HAVE_GCRYPT_TRUE@     -Wno-pointer-arith
 
-@HAVE_MICROHTTPD_TRUE@am__append_121 = \
+@HAVE_MICROHTTPD_TRUE@am__append_128 = \
 @HAVE_MICROHTTPD_TRUE@ systemd-journal-gatewayd
 
-@HAVE_GNUTLS_TRUE@@HAVE_MICROHTTPD_TRUE@am__append_122 = \
+@HAVE_GNUTLS_TRUE@@HAVE_MICROHTTPD_TRUE@am__append_129 = \
 @HAVE_GNUTLS_TRUE@@HAVE_MICROHTTPD_TRUE@       $(GNUTLS_LIBS)
 
-@HAVE_MICROHTTPD_TRUE@am__append_123 = \
+@HAVE_MICROHTTPD_TRUE@am__append_130 = \
 @HAVE_MICROHTTPD_TRUE@ units/systemd-journal-gatewayd.socket
 
-@HAVE_MICROHTTPD_TRUE@am__append_124 = \
+@HAVE_MICROHTTPD_TRUE@am__append_131 = \
 @HAVE_MICROHTTPD_TRUE@ units/systemd-journal-gatewayd.service
 
-@ENABLE_COREDUMP_TRUE@am__append_125 = \
+@ENABLE_COREDUMP_TRUE@@HAVE_ELFUTILS_TRUE@am__append_132 = \
+@ENABLE_COREDUMP_TRUE@@HAVE_ELFUTILS_TRUE@     src/journal/stacktrace.c \
+@ENABLE_COREDUMP_TRUE@@HAVE_ELFUTILS_TRUE@     src/journal/stacktrace.h
+
+@ENABLE_COREDUMP_TRUE@@HAVE_ELFUTILS_TRUE@am__append_133 = \
+@ENABLE_COREDUMP_TRUE@@HAVE_ELFUTILS_TRUE@     $(ELFUTILS_LIBS)
+
+@ENABLE_COREDUMP_TRUE@am__append_134 = \
 @ENABLE_COREDUMP_TRUE@ systemd-coredump
 
-@ENABLE_COREDUMP_TRUE@am__append_126 = \
-@ENABLE_COREDUMP_TRUE@ systemd-coredumpctl
+@ENABLE_COREDUMP_TRUE@am__append_135 = \
+@ENABLE_COREDUMP_TRUE@ src/journal/coredump.conf
+
+@ENABLE_COREDUMP_TRUE@@HAVE_ACL_TRUE@am__append_136 = \
+@ENABLE_COREDUMP_TRUE@@HAVE_ACL_TRUE@  libsystemd-acl.la
+
+@ENABLE_COREDUMP_TRUE@am__append_137 = \
+@ENABLE_COREDUMP_TRUE@ coredumpctl
 
-@ENABLE_COREDUMP_TRUE@am__append_127 = \
-@ENABLE_COREDUMP_TRUE@ shell-completion/bash/systemd-coredumpctl
+@ENABLE_COREDUMP_TRUE@am__append_138 = \
+@ENABLE_COREDUMP_TRUE@ test-coredump-vacuum
 
-@ENABLE_COREDUMP_TRUE@am__append_128 = \
-@ENABLE_COREDUMP_TRUE@ shell-completion/zsh/_systemd-coredumpctl
+@ENABLE_COREDUMP_TRUE@am__append_139 = \
+@ENABLE_COREDUMP_TRUE@ shell-completion/bash/coredumpctl
 
-@ENABLE_COREDUMP_TRUE@am__append_129 = \
+@ENABLE_COREDUMP_TRUE@am__append_140 = \
+@ENABLE_COREDUMP_TRUE@ shell-completion/zsh/_coredumpctl
+
+@ENABLE_COREDUMP_TRUE@am__append_141 = \
+@ENABLE_COREDUMP_TRUE@ $(bindir)/coredumpctl $(bindir)/systemd-coredumpctl
+
+@ENABLE_COREDUMP_TRUE@am__append_142 = \
 @ENABLE_COREDUMP_TRUE@ sysctl.d/50-coredump.conf
 
-@ENABLE_BINFMT_TRUE@am__append_130 = \
+@ENABLE_BINFMT_TRUE@am__append_143 = \
 @ENABLE_BINFMT_TRUE@   systemd-binfmt
 
-@ENABLE_BINFMT_TRUE@am__append_131 = \
+@ENABLE_BINFMT_TRUE@am__append_144 = \
 @ENABLE_BINFMT_TRUE@   units/proc-sys-fs-binfmt_misc.automount \
 @ENABLE_BINFMT_TRUE@   units/proc-sys-fs-binfmt_misc.mount
 
-@ENABLE_BINFMT_TRUE@am__append_132 = \
+@ENABLE_BINFMT_TRUE@am__append_145 = \
 @ENABLE_BINFMT_TRUE@   units/systemd-binfmt.service
 
-@ENABLE_BINFMT_TRUE@am__append_133 = \
+@ENABLE_BINFMT_TRUE@am__append_146 = \
 @ENABLE_BINFMT_TRUE@   $(prefix)/lib/binfmt.d \
 @ENABLE_BINFMT_TRUE@   $(sysconfdir)/binfmt.d
 
-@ENABLE_BINFMT_TRUE@am__append_134 = \
+@ENABLE_BINFMT_TRUE@am__append_147 = \
 @ENABLE_BINFMT_TRUE@   systemd-binfmt.service \
 @ENABLE_BINFMT_TRUE@   proc-sys-fs-binfmt_misc.automount
 
-@ENABLE_VCONSOLE_TRUE@am__append_135 = \
+@ENABLE_VCONSOLE_TRUE@am__append_148 = \
 @ENABLE_VCONSOLE_TRUE@ systemd-vconsole-setup
 
-@ENABLE_VCONSOLE_TRUE@am__append_136 = \
+@ENABLE_VCONSOLE_TRUE@am__append_149 = \
 @ENABLE_VCONSOLE_TRUE@ units/systemd-vconsole-setup.service
 
-@ENABLE_VCONSOLE_TRUE@am__append_137 = \
+@ENABLE_VCONSOLE_TRUE@am__append_150 = \
 @ENABLE_VCONSOLE_TRUE@ systemd-vconsole-setup.service
 
-@ENABLE_READAHEAD_TRUE@am__append_138 = \
+@ENABLE_READAHEAD_TRUE@am__append_151 = \
 @ENABLE_READAHEAD_TRUE@        src/readahead/sd-readahead.c \
 @ENABLE_READAHEAD_TRUE@        src/systemd/sd-readahead.h
 
-@ENABLE_READAHEAD_TRUE@am__append_139 = \
+@ENABLE_READAHEAD_TRUE@am__append_152 = \
 @ENABLE_READAHEAD_TRUE@        systemd-readahead
 
-@ENABLE_READAHEAD_TRUE@am__append_140 = \
+@ENABLE_READAHEAD_TRUE@am__append_153 = \
 @ENABLE_READAHEAD_TRUE@        units/systemd-readahead-drop.service \
 @ENABLE_READAHEAD_TRUE@        units/systemd-readahead-done.timer
 
-@ENABLE_READAHEAD_TRUE@am__append_141 = \
+@ENABLE_READAHEAD_TRUE@am__append_154 = \
 @ENABLE_READAHEAD_TRUE@        units/systemd-readahead-collect.service \
 @ENABLE_READAHEAD_TRUE@        units/systemd-readahead-replay.service \
 @ENABLE_READAHEAD_TRUE@        units/systemd-readahead-done.service
 
-@ENABLE_READAHEAD_TRUE@am__append_142 = \
+@ENABLE_READAHEAD_TRUE@am__append_155 = \
 @ENABLE_READAHEAD_TRUE@        test-ssd
 
-@ENABLE_BOOTCHART_TRUE@am__append_143 = \
+@ENABLE_BOOTCHART_TRUE@am__append_156 = \
 @ENABLE_BOOTCHART_TRUE@        systemd-bootchart
 
-@ENABLE_BOOTCHART_TRUE@am__append_144 = \
+@ENABLE_BOOTCHART_TRUE@am__append_157 = \
 @ENABLE_BOOTCHART_TRUE@        src/bootchart/bootchart.conf
 
 
 # ------------------------------------------------------------------------------
-@ENABLE_QUOTACHECK_TRUE@am__append_145 = \
+@ENABLE_QUOTACHECK_TRUE@am__append_158 = \
 @ENABLE_QUOTACHECK_TRUE@       systemd-quotacheck
 
-@ENABLE_QUOTACHECK_TRUE@am__append_146 = \
+@ENABLE_QUOTACHECK_TRUE@am__append_159 = \
 @ENABLE_QUOTACHECK_TRUE@       units/systemd-quotacheck.service
 
 
 # ------------------------------------------------------------------------------
-@ENABLE_RANDOMSEED_TRUE@am__append_147 = \
+@ENABLE_RANDOMSEED_TRUE@am__append_160 = \
 @ENABLE_RANDOMSEED_TRUE@       systemd-random-seed
 
-@ENABLE_RANDOMSEED_TRUE@am__append_148 = \
+@ENABLE_RANDOMSEED_TRUE@am__append_161 = \
 @ENABLE_RANDOMSEED_TRUE@       units/systemd-random-seed.service
 
-@ENABLE_RANDOMSEED_TRUE@am__append_149 = \
+@ENABLE_RANDOMSEED_TRUE@am__append_162 = \
 @ENABLE_RANDOMSEED_TRUE@       systemd-random-seed.service
 
 
 # ------------------------------------------------------------------------------
-@ENABLE_BACKLIGHT_TRUE@am__append_150 = \
+@ENABLE_BACKLIGHT_TRUE@am__append_163 = \
 @ENABLE_BACKLIGHT_TRUE@        systemd-backlight
 
-@ENABLE_BACKLIGHT_TRUE@am__append_151 = \
+@ENABLE_BACKLIGHT_TRUE@am__append_164 = \
 @ENABLE_BACKLIGHT_TRUE@        units/systemd-backlight@.service
 
 
 # ------------------------------------------------------------------------------
-@ENABLE_RFKILL_TRUE@am__append_152 = \
+@ENABLE_RFKILL_TRUE@am__append_165 = \
 @ENABLE_RFKILL_TRUE@   systemd-rfkill
 
-@ENABLE_RFKILL_TRUE@am__append_153 = \
+@ENABLE_RFKILL_TRUE@am__append_166 = \
 @ENABLE_RFKILL_TRUE@   units/systemd-rfkill@.service
 
 
 # ------------------------------------------------------------------------------
-@HAVE_LIBCRYPTSETUP_TRUE@am__append_154 = \
+@HAVE_LIBCRYPTSETUP_TRUE@am__append_167 = \
 @HAVE_LIBCRYPTSETUP_TRUE@      systemd-cryptsetup
 
-@HAVE_LIBCRYPTSETUP_TRUE@am__append_155 = \
+@HAVE_LIBCRYPTSETUP_TRUE@am__append_168 = \
 @HAVE_LIBCRYPTSETUP_TRUE@      systemd-cryptsetup-generator
 
-@HAVE_LIBCRYPTSETUP_TRUE@am__append_156 = \
-@HAVE_LIBCRYPTSETUP_TRUE@      units/cryptsetup.target
+@HAVE_LIBCRYPTSETUP_TRUE@am__append_169 = \
+@HAVE_LIBCRYPTSETUP_TRUE@      units/cryptsetup.target \
+@HAVE_LIBCRYPTSETUP_TRUE@      units/cryptsetup-pre.target
 
-@HAVE_LIBCRYPTSETUP_TRUE@am__append_157 = \
+@HAVE_LIBCRYPTSETUP_TRUE@am__append_170 = \
 @HAVE_LIBCRYPTSETUP_TRUE@      cryptsetup.target
 
-@ENABLE_HOSTNAMED_TRUE@am__append_158 = \
+@ENABLE_HOSTNAMED_TRUE@am__append_171 = \
 @ENABLE_HOSTNAMED_TRUE@        systemd-hostnamed
 
-@ENABLE_HOSTNAMED_TRUE@am__append_159 = \
+@ENABLE_HOSTNAMED_TRUE@am__append_172 = \
 @ENABLE_HOSTNAMED_TRUE@        units/systemd-hostnamed.service
 
-@ENABLE_HOSTNAMED_TRUE@am__append_160 = \
+@ENABLE_HOSTNAMED_TRUE@am__append_173 = \
 @ENABLE_HOSTNAMED_TRUE@        units/org.freedesktop.hostname1.busname
 
-@ENABLE_HOSTNAMED_TRUE@am__append_161 = \
+@ENABLE_HOSTNAMED_TRUE@am__append_174 = \
 @ENABLE_HOSTNAMED_TRUE@        src/hostname/org.freedesktop.hostname1.conf
 
-@ENABLE_HOSTNAMED_TRUE@am__append_162 = \
+@ENABLE_HOSTNAMED_TRUE@am__append_175 = \
 @ENABLE_HOSTNAMED_TRUE@        src/hostname/org.freedesktop.hostname1.service
 
-@ENABLE_HOSTNAMED_TRUE@am__append_163 = \
+@ENABLE_HOSTNAMED_TRUE@am__append_176 = \
 @ENABLE_HOSTNAMED_TRUE@        src/hostname/org.freedesktop.hostname1.policy
 
-@ENABLE_HOSTNAMED_TRUE@am__append_164 = \
+@ENABLE_HOSTNAMED_TRUE@am__append_177 = \
 @ENABLE_HOSTNAMED_TRUE@        systemd-hostnamed.service dbus-org.freedesktop.hostname1.service
 
-@ENABLE_HOSTNAMED_TRUE@am__append_165 = \
+@ENABLE_HOSTNAMED_TRUE@am__append_178 = \
 @ENABLE_HOSTNAMED_TRUE@        org.freedesktop.hostname1.busname
 
-@ENABLE_HOSTNAMED_TRUE@am__append_166 = \
+@ENABLE_HOSTNAMED_TRUE@am__append_179 = \
 @ENABLE_HOSTNAMED_TRUE@        hostnamectl
 
-@ENABLE_HOSTNAMED_TRUE@am__append_167 = \
+@ENABLE_HOSTNAMED_TRUE@am__append_180 = \
 @ENABLE_HOSTNAMED_TRUE@        shell-completion/bash/hostnamectl
 
-@ENABLE_HOSTNAMED_TRUE@am__append_168 = \
+@ENABLE_HOSTNAMED_TRUE@am__append_181 = \
 @ENABLE_HOSTNAMED_TRUE@        shell-completion/zsh/_hostnamectl
 
 
 # ------------------------------------------------------------------------------
-@ENABLE_KDBUS_TRUE@am__append_169 = \
+@ENABLE_KDBUS_TRUE@am__append_182 = \
 @ENABLE_KDBUS_TRUE@    units/org.freedesktop.systemd1.busname
 
-@ENABLE_KDBUS_TRUE@am__append_170 = \
+@ENABLE_KDBUS_TRUE@am__append_183 = \
 @ENABLE_KDBUS_TRUE@    org.freedesktop.systemd1.busname
 
-@ENABLE_LOCALED_TRUE@am__append_171 = \
+@ENABLE_LOCALED_TRUE@am__append_184 = \
 @ENABLE_LOCALED_TRUE@  units/systemd-localed.service
 
-@ENABLE_LOCALED_TRUE@am__append_172 = \
+@ENABLE_LOCALED_TRUE@am__append_185 = \
 @ENABLE_LOCALED_TRUE@  units/org.freedesktop.locale1.busname
 
-@ENABLE_LOCALED_TRUE@am__append_173 = \
+@ENABLE_LOCALED_TRUE@am__append_186 = \
 @ENABLE_LOCALED_TRUE@  systemd-localed
 
-@ENABLE_LOCALED_TRUE@am__append_174 = \
+@ENABLE_LOCALED_TRUE@am__append_187 = \
 @ENABLE_LOCALED_TRUE@  src/locale/org.freedesktop.locale1.conf
 
-@ENABLE_LOCALED_TRUE@am__append_175 = \
+@ENABLE_LOCALED_TRUE@am__append_188 = \
 @ENABLE_LOCALED_TRUE@  src/locale/org.freedesktop.locale1.service
 
-@ENABLE_LOCALED_TRUE@am__append_176 = \
+@ENABLE_LOCALED_TRUE@am__append_189 = \
 @ENABLE_LOCALED_TRUE@  src/locale/org.freedesktop.locale1.policy
 
-@ENABLE_LOCALED_TRUE@am__append_177 = \
+@ENABLE_LOCALED_TRUE@am__append_190 = \
 @ENABLE_LOCALED_TRUE@  systemd-localed.service dbus-org.freedesktop.locale1.service
 
-@ENABLE_LOCALED_TRUE@am__append_178 = \
+@ENABLE_LOCALED_TRUE@am__append_191 = \
 @ENABLE_LOCALED_TRUE@  org.freedesktop.locale1.busname
 
-@ENABLE_LOCALED_TRUE@am__append_179 = \
+@ENABLE_LOCALED_TRUE@am__append_192 = \
 @ENABLE_LOCALED_TRUE@  src/locale/kbd-model-map
 
-@ENABLE_LOCALED_TRUE@am__append_180 = \
+@ENABLE_LOCALED_TRUE@am__append_193 = \
 @ENABLE_LOCALED_TRUE@  localectl
 
-@ENABLE_LOCALED_TRUE@am__append_181 = \
+@ENABLE_LOCALED_TRUE@am__append_194 = \
 @ENABLE_LOCALED_TRUE@  shell-completion/bash/localectl
 
-@ENABLE_LOCALED_TRUE@am__append_182 = \
+@ENABLE_LOCALED_TRUE@am__append_195 = \
 @ENABLE_LOCALED_TRUE@  shell-completion/zsh/_localectl
 
-@ENABLE_TIMEDATED_TRUE@am__append_183 = \
+@ENABLE_TIMEDATED_TRUE@am__append_196 = \
 @ENABLE_TIMEDATED_TRUE@        systemd-timedated
 
-@ENABLE_TIMEDATED_TRUE@am__append_184 = \
+@ENABLE_TIMEDATED_TRUE@am__append_197 = \
 @ENABLE_TIMEDATED_TRUE@        src/timedate/org.freedesktop.timedate1.service
 
-@ENABLE_TIMEDATED_TRUE@am__append_185 = \
+@ENABLE_TIMEDATED_TRUE@am__append_198 = \
 @ENABLE_TIMEDATED_TRUE@        src/timedate/org.freedesktop.timedate1.conf
 
-@ENABLE_TIMEDATED_TRUE@am__append_186 = \
+@ENABLE_TIMEDATED_TRUE@am__append_199 = \
 @ENABLE_TIMEDATED_TRUE@        units/systemd-timedated.service
 
-@ENABLE_TIMEDATED_TRUE@am__append_187 = \
+@ENABLE_TIMEDATED_TRUE@am__append_200 = \
 @ENABLE_TIMEDATED_TRUE@        units/org.freedesktop.timedate1.busname
 
-@ENABLE_TIMEDATED_TRUE@am__append_188 = \
+@ENABLE_TIMEDATED_TRUE@am__append_201 = \
 @ENABLE_TIMEDATED_TRUE@        src/timedate/org.freedesktop.timedate1.policy
 
-@ENABLE_TIMEDATED_TRUE@am__append_189 = \
+@ENABLE_TIMEDATED_TRUE@am__append_202 = \
 @ENABLE_TIMEDATED_TRUE@        $(prefix)/lib/systemd/ntp-units.d \
 @ENABLE_TIMEDATED_TRUE@        $(sysconfdir)/systemd/ntp-units.d
 
-@ENABLE_TIMEDATED_TRUE@am__append_190 = \
+@ENABLE_TIMEDATED_TRUE@am__append_203 = \
 @ENABLE_TIMEDATED_TRUE@        systemd-timedated.service dbus-org.freedesktop.timedate1.service
 
-@ENABLE_TIMEDATED_TRUE@am__append_191 = \
+@ENABLE_TIMEDATED_TRUE@am__append_204 = \
 @ENABLE_TIMEDATED_TRUE@        org.freedesktop.timedate1.busname
 
-@ENABLE_TIMEDATED_TRUE@am__append_192 = \
+@ENABLE_TIMEDATED_TRUE@am__append_205 = \
 @ENABLE_TIMEDATED_TRUE@        timedatectl
 
-@ENABLE_TIMEDATED_TRUE@am__append_193 = \
+@ENABLE_TIMEDATED_TRUE@am__append_206 = \
 @ENABLE_TIMEDATED_TRUE@        shell-completion/bash/timedatectl
 
-@ENABLE_TIMEDATED_TRUE@am__append_194 = \
+@ENABLE_TIMEDATED_TRUE@am__append_207 = \
 @ENABLE_TIMEDATED_TRUE@        shell-completion/zsh/_timedatectl
 
-@ENABLE_TIMESYNCD_TRUE@am__append_195 =  \
+@ENABLE_TIMESYNCD_TRUE@am__append_208 =  \
 @ENABLE_TIMESYNCD_TRUE@        src/timesync/timesyncd-gperf.gperf \
 @ENABLE_TIMESYNCD_TRUE@        units/systemd-timesyncd.service.in \
 @ENABLE_TIMESYNCD_TRUE@        src/timesync/timesyncd.conf.in
-@ENABLE_TIMESYNCD_TRUE@am__append_196 =  \
+@ENABLE_TIMESYNCD_TRUE@am__append_209 =  \
 @ENABLE_TIMESYNCD_TRUE@        src/timesync/timesyncd-gperf.c \
 @ENABLE_TIMESYNCD_TRUE@        src/timesync/timesyncd.conf
-@ENABLE_TIMESYNCD_TRUE@am__append_197 = \
+@ENABLE_TIMESYNCD_TRUE@am__append_210 = \
 @ENABLE_TIMESYNCD_TRUE@        systemd-timesyncd
 
-@ENABLE_TIMESYNCD_TRUE@am__append_198 = \
+@ENABLE_TIMESYNCD_TRUE@am__append_211 = \
 @ENABLE_TIMESYNCD_TRUE@        units/systemd-timesyncd.service
 
-@ENABLE_TIMESYNCD_TRUE@am__append_199 = \
+@ENABLE_TIMESYNCD_TRUE@am__append_212 = \
+@ENABLE_TIMESYNCD_TRUE@        $(systemunitdir)/systemd-timesyncd.service $(pkgsysconfdir)/system/multi-user.target.wants/systemd-timesyncd.service
+
+@ENABLE_TIMESYNCD_TRUE@am__append_213 = \
 @ENABLE_TIMESYNCD_TRUE@        src/timesync/timesyncd.conf
 
-@HAVE_MYHOSTNAME_TRUE@am__append_200 = \
+@HAVE_MYHOSTNAME_TRUE@am__append_214 = \
 @HAVE_MYHOSTNAME_TRUE@ libnss_myhostname.la
 
-@ENABLE_MACHINED_TRUE@am__append_201 = \
+@ENABLE_MACHINED_TRUE@am__append_215 = \
 @ENABLE_MACHINED_TRUE@ systemd-machined
 
-@ENABLE_MACHINED_TRUE@am__append_202 = \
+@ENABLE_MACHINED_TRUE@am__append_216 = \
 @ENABLE_MACHINED_TRUE@ libsystemd-machine-core.la
 
-@ENABLE_MACHINED_TRUE@am__append_203 = \
+@ENABLE_MACHINED_TRUE@am__append_217 = \
 @ENABLE_MACHINED_TRUE@ machinectl
 
-@ENABLE_MACHINED_TRUE@am__append_204 = \
+@ENABLE_MACHINED_TRUE@am__append_218 = \
 @ENABLE_MACHINED_TRUE@ shell-completion/bash/machinectl
 
-@ENABLE_MACHINED_TRUE@am__append_205 = \
+@ENABLE_MACHINED_TRUE@am__append_219 = \
 @ENABLE_MACHINED_TRUE@ test-machine-tables
 
-@ENABLE_MACHINED_TRUE@am__append_206 = \
+@ENABLE_MACHINED_TRUE@am__append_220 = \
 @ENABLE_MACHINED_TRUE@ units/systemd-machined.service
 
-@ENABLE_MACHINED_TRUE@am__append_207 = \
+@ENABLE_MACHINED_TRUE@am__append_221 = \
 @ENABLE_MACHINED_TRUE@ units/machine.slice \
 @ENABLE_MACHINED_TRUE@ units/org.freedesktop.machine1.busname
 
-@ENABLE_MACHINED_TRUE@am__append_208 = \
+@ENABLE_MACHINED_TRUE@am__append_222 = \
 @ENABLE_MACHINED_TRUE@ src/machine/org.freedesktop.machine1.service
 
-@ENABLE_MACHINED_TRUE@am__append_209 = \
+@ENABLE_MACHINED_TRUE@am__append_223 = \
 @ENABLE_MACHINED_TRUE@ src/machine/org.freedesktop.machine1.conf
 
-@ENABLE_MACHINED_TRUE@am__append_210 = \
+@ENABLE_MACHINED_TRUE@am__append_224 = \
 @ENABLE_MACHINED_TRUE@ shell-completion/zsh/_machinectl \
 @ENABLE_MACHINED_TRUE@ shell-completion/zsh/_sd_machines
 
-@ENABLE_MACHINED_TRUE@am__append_211 = \
+@ENABLE_MACHINED_TRUE@am__append_225 = \
 @ENABLE_MACHINED_TRUE@ systemd-machined.service dbus-org.freedesktop.machine1.service
 
-@ENABLE_MACHINED_TRUE@am__append_212 = \
+@ENABLE_MACHINED_TRUE@am__append_226 = \
 @ENABLE_MACHINED_TRUE@ org.freedesktop.machine1.busname
 
-@ENABLE_MACHINED_TRUE@am__append_213 = \
+@ENABLE_MACHINED_TRUE@am__append_227 = \
 @ENABLE_MACHINED_TRUE@ units/systemd-machined.service.in
 
-@ENABLE_RESOLVED_TRUE@am__append_214 =  \
+@ENABLE_RESOLVED_TRUE@am__append_228 =  \
 @ENABLE_RESOLVED_TRUE@ src/resolve/resolved-gperf.gperf \
 @ENABLE_RESOLVED_TRUE@ units/systemd-resolved.service.in \
 @ENABLE_RESOLVED_TRUE@ src/resolve/resolved.conf.in
-@ENABLE_RESOLVED_TRUE@am__append_215 = src/resolve/resolved-gperf.c \
+@ENABLE_RESOLVED_TRUE@am__append_229 = src/resolve/resolved-gperf.c \
 @ENABLE_RESOLVED_TRUE@ src/resolve/resolved.conf
-@ENABLE_RESOLVED_TRUE@am__append_216 = \
+@ENABLE_RESOLVED_TRUE@am__append_230 = \
 @ENABLE_RESOLVED_TRUE@ systemd-resolved
 
-@ENABLE_RESOLVED_TRUE@am__append_217 = \
+@ENABLE_RESOLVED_TRUE@am__append_231 = \
 @ENABLE_RESOLVED_TRUE@ units/systemd-resolved.service
 
-@ENABLE_RESOLVED_TRUE@am__append_218 = \
+@ENABLE_RESOLVED_TRUE@am__append_232 = \
 @ENABLE_RESOLVED_TRUE@ $(systemunitdir)/systemd-resolved.service $(pkgsysconfdir)/system/multi-user.target.wants/systemd-resolved.service
 
-@ENABLE_RESOLVED_TRUE@am__append_219 = \
+@ENABLE_RESOLVED_TRUE@am__append_233 = \
 @ENABLE_RESOLVED_TRUE@ src/resolve/resolved.conf
 
 
 # ------------------------------------------------------------------------------
-@ENABLE_NETWORKD_TRUE@am__append_220 = systemd-networkd \
+@ENABLE_NETWORKD_TRUE@am__append_234 = systemd-networkd \
 @ENABLE_NETWORKD_TRUE@ systemd-networkd-wait-online
-@ENABLE_NETWORKD_TRUE@am__append_221 = \
+@ENABLE_NETWORKD_TRUE@am__append_235 = \
 @ENABLE_NETWORKD_TRUE@ libsystemd-networkd-core.la
 
-@ENABLE_NETWORKD_TRUE@am__append_222 = \
+@ENABLE_NETWORKD_TRUE@am__append_236 = \
 @ENABLE_NETWORKD_TRUE@ test-network
 
-@ENABLE_NETWORKD_TRUE@am__append_223 = \
+@ENABLE_NETWORKD_TRUE@am__append_237 = \
 @ENABLE_NETWORKD_TRUE@ units/systemd-networkd.service \
 @ENABLE_NETWORKD_TRUE@ units/systemd-networkd-wait-online.service
 
-@ENABLE_NETWORKD_TRUE@am__append_224 = \
+@ENABLE_NETWORKD_TRUE@am__append_238 = \
 @ENABLE_NETWORKD_TRUE@ $(systemunitdir)/systemd-networkd.service $(pkgsysconfdir)/system/multi-user.target.wants/systemd-networkd.service \
 @ENABLE_NETWORKD_TRUE@ $(systemunitdir)/systemd-networkd-wait-online.service $(pkgsysconfdir)/system/network-online.target.wants/systemd-networkd-wait-online.service
 
-@ENABLE_NETWORKD_TRUE@am__append_225 = \
+@ENABLE_NETWORKD_TRUE@am__append_239 = \
 @ENABLE_NETWORKD_TRUE@ src/network/networkd-network-gperf.gperf \
 @ENABLE_NETWORKD_TRUE@ src/network/networkd-netdev-gperf.gperf \
 @ENABLE_NETWORKD_TRUE@ units/systemd-networkd.service.in \
 @ENABLE_NETWORKD_TRUE@ units/systemd-networkd-wait-online.service.in
 
-@ENABLE_NETWORKD_TRUE@am__append_226 = \
+@ENABLE_NETWORKD_TRUE@am__append_240 = \
 @ENABLE_NETWORKD_TRUE@ src/network/networkd-network-gperf.c \
 @ENABLE_NETWORKD_TRUE@ src/network/networkd-netdev-gperf.c
 
-@ENABLE_LOGIND_TRUE@@HAVE_ACL_TRUE@am__append_227 = \
+@ENABLE_LOGIND_TRUE@@HAVE_ACL_TRUE@am__append_241 = \
 @ENABLE_LOGIND_TRUE@@HAVE_ACL_TRUE@    src/login/logind-acl.c
 
-@ENABLE_LOGIND_TRUE@@HAVE_ACL_TRUE@am__append_228 = \
+@ENABLE_LOGIND_TRUE@@HAVE_ACL_TRUE@am__append_242 = \
 @ENABLE_LOGIND_TRUE@@HAVE_ACL_TRUE@    libsystemd-acl.la
 
-@ENABLE_LOGIND_TRUE@am__append_229 = \
+@ENABLE_LOGIND_TRUE@am__append_243 = \
 @ENABLE_LOGIND_TRUE@   libsystemd-logind-core.la
 
-@ENABLE_LOGIND_TRUE@am__append_230 = \
+@ENABLE_LOGIND_TRUE@am__append_244 = \
 @ENABLE_LOGIND_TRUE@   systemd-logind \
 @ENABLE_LOGIND_TRUE@   systemd-user-sessions
 
-@ENABLE_LOGIND_TRUE@am__append_231 = loginctl systemd-inhibit
-@ENABLE_LOGIND_TRUE@am__append_232 = \
+@ENABLE_LOGIND_TRUE@am__append_245 = loginctl systemd-inhibit
+@ENABLE_LOGIND_TRUE@am__append_246 = \
 @ENABLE_LOGIND_TRUE@   shell-completion/bash/loginctl
 
-@ENABLE_LOGIND_TRUE@am__append_233 = \
+@ENABLE_LOGIND_TRUE@am__append_247 = \
 @ENABLE_LOGIND_TRUE@   shell-completion/zsh/_loginctl \
 @ENABLE_LOGIND_TRUE@   shell-completion/zsh/_systemd-inhibit
 
-@ENABLE_LOGIND_TRUE@am__append_234 = \
+@ENABLE_LOGIND_TRUE@am__append_248 = \
 @ENABLE_LOGIND_TRUE@   test-login \
 @ENABLE_LOGIND_TRUE@   test-inhibit
 
-@ENABLE_LOGIND_TRUE@am__append_235 = \
+@ENABLE_LOGIND_TRUE@am__append_249 = \
 @ENABLE_LOGIND_TRUE@   test-login-tables \
 @ENABLE_LOGIND_TRUE@   test-login-shared
 
-@ENABLE_LOGIND_TRUE@am__append_236 = \
+@ENABLE_LOGIND_TRUE@am__append_250 = \
 @ENABLE_LOGIND_TRUE@   units/systemd-logind.service \
 @ENABLE_LOGIND_TRUE@   units/systemd-user-sessions.service
 
-@ENABLE_LOGIND_TRUE@am__append_237 = \
+@ENABLE_LOGIND_TRUE@am__append_251 = \
 @ENABLE_LOGIND_TRUE@   units/user.slice \
 @ENABLE_LOGIND_TRUE@   units/org.freedesktop.login1.busname
 
-@ENABLE_LOGIND_TRUE@am__append_238 = \
+@ENABLE_LOGIND_TRUE@am__append_252 = \
 @ENABLE_LOGIND_TRUE@   src/login/org.freedesktop.login1.service
 
-@ENABLE_LOGIND_TRUE@am__append_239 = \
+@ENABLE_LOGIND_TRUE@am__append_253 = \
 @ENABLE_LOGIND_TRUE@   src/login/org.freedesktop.login1.conf
 
-@ENABLE_LOGIND_TRUE@am__append_240 = \
+@ENABLE_LOGIND_TRUE@am__append_254 = \
 @ENABLE_LOGIND_TRUE@   src/login/logind.conf
 
-@ENABLE_LOGIND_TRUE@am__append_241 = \
+@ENABLE_LOGIND_TRUE@am__append_255 = \
 @ENABLE_LOGIND_TRUE@   src/login/org.freedesktop.login1.policy
 
-@ENABLE_LOGIND_TRUE@am__append_242 = \
+@ENABLE_LOGIND_TRUE@am__append_256 = \
 @ENABLE_LOGIND_TRUE@   $(systemdstatedir)
 
-@ENABLE_LOGIND_TRUE@am__append_243 = \
+@ENABLE_LOGIND_TRUE@am__append_257 = \
 @ENABLE_LOGIND_TRUE@   systemd-logind.service \
 @ENABLE_LOGIND_TRUE@   systemd-user-sessions.service
 
-@ENABLE_LOGIND_TRUE@am__append_244 = \
+@ENABLE_LOGIND_TRUE@am__append_258 = \
 @ENABLE_LOGIND_TRUE@   systemd-logind.service dbus-org.freedesktop.login1.service
 
-@ENABLE_LOGIND_TRUE@am__append_245 = \
+@ENABLE_LOGIND_TRUE@am__append_259 = \
 @ENABLE_LOGIND_TRUE@   org.freedesktop.login1.busname
 
-@ENABLE_LOGIND_TRUE@@ENABLE_MULTI_SEAT_X_TRUE@am__append_246 = \
+@ENABLE_LOGIND_TRUE@@ENABLE_MULTI_SEAT_X_TRUE@am__append_260 = \
 @ENABLE_LOGIND_TRUE@@ENABLE_MULTI_SEAT_X_TRUE@ systemd-multi-seat-x
 
-@ENABLE_LOGIND_TRUE@am__append_247 = \
+@ENABLE_LOGIND_TRUE@am__append_261 = \
 @ENABLE_LOGIND_TRUE@   src/login/70-uaccess.rules \
 @ENABLE_LOGIND_TRUE@   src/login/70-power-switch.rules
 
-@ENABLE_LOGIND_TRUE@am__append_248 = \
+@ENABLE_LOGIND_TRUE@am__append_262 = \
 @ENABLE_LOGIND_TRUE@   src/login/71-seat.rules \
 @ENABLE_LOGIND_TRUE@   src/login/73-seat-late.rules
 
-@ENABLE_LOGIND_TRUE@am__append_249 = \
+@ENABLE_LOGIND_TRUE@am__append_263 = \
 @ENABLE_LOGIND_TRUE@   src/login/logind-gperf.c \
 @ENABLE_LOGIND_TRUE@   src/login/71-seat.rules \
 @ENABLE_LOGIND_TRUE@   src/login/73-seat-late.rules
 
-@HAVE_PYTHON_DEVEL_TRUE@am__append_250 = \
+@HAVE_PYTHON_DEVEL_TRUE@am__append_264 = \
 @HAVE_PYTHON_DEVEL_TRUE@       src/python-systemd/id128-constants.h
 
 
 # ------------------------------------------------------------------------------
-@ENABLE_COMPAT_LIBS_TRUE@am__append_251 = \
+@ENABLE_COMPAT_LIBS_TRUE@am__append_265 = \
 @ENABLE_COMPAT_LIBS_TRUE@      src/compat-libs/linkwarning.h
 
-@ENABLE_COMPAT_LIBS_TRUE@am__append_252 = \
+@ENABLE_COMPAT_LIBS_TRUE@am__append_266 = \
 @ENABLE_COMPAT_LIBS_TRUE@      libsystemd-journal.c \
 @ENABLE_COMPAT_LIBS_TRUE@      libsystemd-login.c \
 @ENABLE_COMPAT_LIBS_TRUE@      libsystemd-id128.c \
 @ENABLE_COMPAT_LIBS_TRUE@      libsystemd-daemon.c
 
-@ENABLE_COMPAT_LIBS_TRUE@am__append_253 = \
+@ENABLE_COMPAT_LIBS_TRUE@am__append_267 = \
 @ENABLE_COMPAT_LIBS_TRUE@      libsystemd-journal.la \
 @ENABLE_COMPAT_LIBS_TRUE@      libsystemd-login.la \
 @ENABLE_COMPAT_LIBS_TRUE@      libsystemd-id128.la \
 @ENABLE_COMPAT_LIBS_TRUE@      libsystemd-daemon.la
 
-@ENABLE_COMPAT_LIBS_TRUE@am__append_254 = \
+@ENABLE_COMPAT_LIBS_TRUE@am__append_268 = \
 @ENABLE_COMPAT_LIBS_TRUE@      src/compat-libs/libsystemd-journal.pc \
 @ENABLE_COMPAT_LIBS_TRUE@      src/compat-libs/libsystemd-login.pc \
 @ENABLE_COMPAT_LIBS_TRUE@      src/compat-libs/libsystemd-id128.pc \
 @ENABLE_COMPAT_LIBS_TRUE@      src/compat-libs/libsystemd-daemon.pc
 
-@ENABLE_COMPAT_LIBS_TRUE@am__append_255 = compat-lib-install-hook
-@ENABLE_COMPAT_LIBS_TRUE@am__append_256 = compat-lib-uninstall-hook
-@ENABLE_MANPAGES_TRUE@am__append_257 = \
+@ENABLE_COMPAT_LIBS_TRUE@am__append_269 = compat-lib-install-hook
+@ENABLE_COMPAT_LIBS_TRUE@am__append_270 = compat-lib-uninstall-hook
+@ENABLE_MANPAGES_TRUE@am__append_271 = \
 @ENABLE_MANPAGES_TRUE@ man/custom-entities.ent
 
-@HAVE_SYSV_COMPAT_TRUE@am__append_258 = \
+@HAVE_SYSV_COMPAT_TRUE@am__append_272 = \
 @HAVE_SYSV_COMPAT_TRUE@        docs/sysvinit/README \
 @HAVE_SYSV_COMPAT_TRUE@        docs/var-log/README
 
-@HAVE_SYSV_COMPAT_TRUE@am__append_259 = \
+@HAVE_SYSV_COMPAT_TRUE@am__append_273 = \
 @HAVE_SYSV_COMPAT_TRUE@        systemd-update-utmp-runlevel.service
 
-@HAVE_SYSV_COMPAT_TRUE@am__append_260 = \
+@HAVE_SYSV_COMPAT_TRUE@am__append_274 = \
 @HAVE_SYSV_COMPAT_TRUE@        systemd-update-utmp-runlevel.service
 
-@HAVE_SYSV_COMPAT_TRUE@am__append_261 = \
+@HAVE_SYSV_COMPAT_TRUE@am__append_275 = \
 @HAVE_SYSV_COMPAT_TRUE@        systemd-update-utmp-runlevel.service
 
-@HAVE_SYSV_COMPAT_TRUE@am__append_262 = \
+@HAVE_SYSV_COMPAT_TRUE@am__append_276 = \
 @HAVE_SYSV_COMPAT_TRUE@        systemd-update-utmp-runlevel.service
 
-@HAVE_SYSV_COMPAT_TRUE@am__append_263 = \
+@HAVE_SYSV_COMPAT_TRUE@am__append_277 = \
 @HAVE_SYSV_COMPAT_TRUE@        systemd-update-utmp-runlevel.service
 
-@HAVE_SYSV_COMPAT_TRUE@am__append_264 = \
+@HAVE_SYSV_COMPAT_TRUE@am__append_278 = \
 @HAVE_SYSV_COMPAT_TRUE@        poweroff.target runlevel0.target \
 @HAVE_SYSV_COMPAT_TRUE@        rescue.target runlevel1.target \
 @HAVE_SYSV_COMPAT_TRUE@        multi-user.target runlevel2.target \
@@ -1203,22 +1251,25 @@ DIST_COMMON = $(srcdir)/Makefile-man.am $(srcdir)/Makefile.in \
 @HAVE_SYSV_COMPAT_TRUE@        graphical.target runlevel5.target \
 @HAVE_SYSV_COMPAT_TRUE@        reboot.target runlevel6.target
 
-@HAVE_SYSV_COMPAT_TRUE@am__append_265 = \
+@HAVE_SYSV_COMPAT_TRUE@am__append_279 = \
 @HAVE_SYSV_COMPAT_TRUE@        $(systemunitdir)/runlevel1.target.wants \
 @HAVE_SYSV_COMPAT_TRUE@        $(systemunitdir)/runlevel2.target.wants \
 @HAVE_SYSV_COMPAT_TRUE@        $(systemunitdir)/runlevel3.target.wants \
 @HAVE_SYSV_COMPAT_TRUE@        $(systemunitdir)/runlevel4.target.wants \
 @HAVE_SYSV_COMPAT_TRUE@        $(systemunitdir)/runlevel5.target.wants
 
-@HAVE_SYSV_COMPAT_TRUE@am__append_266 = \
+@HAVE_SYSV_COMPAT_TRUE@am__append_280 = \
 @HAVE_SYSV_COMPAT_TRUE@        --with-sysvinit-path=$$dc_install_base/$(sysvinitdir) \
 @HAVE_SYSV_COMPAT_TRUE@        --with-sysvrcnd-path=$$dc_install_base/$(sysvrcnddir)
 
-@HAVE_SYSV_COMPAT_FALSE@am__append_267 = \
+@HAVE_SYSV_COMPAT_FALSE@am__append_281 = \
 @HAVE_SYSV_COMPAT_FALSE@       --with-sysvinit-path= \
 @HAVE_SYSV_COMPAT_FALSE@       --with-sysvrcnd-path=
 
-@ENABLE_GTK_DOC_TRUE@am__append_268 = \
+@HAVE_PYTHON_TRUE@am__append_282 = \
+@HAVE_PYTHON_TRUE@     --with-python
+
+@ENABLE_GTK_DOC_TRUE@am__append_283 = \
 @ENABLE_GTK_DOC_TRUE@  --enable-gtk-doc
 
 subdir = .
@@ -1277,15 +1328,17 @@ am__installdirs = "$(DESTDIR)$(libdir)" "$(DESTDIR)$(pamlibdir)" \
        "$(DESTDIR)$(gatewayddocumentrootdir)" \
        "$(DESTDIR)$(networkdir)" "$(DESTDIR)$(ntpunitsdir)" \
        "$(DESTDIR)$(pamconfdir)" "$(DESTDIR)$(pkgdatadir)" \
-       "$(DESTDIR)$(pkgsysconfdir)" "$(DESTDIR)$(sysctldir)" \
-       "$(DESTDIR)$(systemunitdir)" "$(DESTDIR)$(tmpfilesdir)" \
-       "$(DESTDIR)$(udevconfdir)" "$(DESTDIR)$(udevhwdbdir)" \
-       "$(DESTDIR)$(udevrulesdir)" "$(DESTDIR)$(userunitdir)" \
-       "$(DESTDIR)$(zshcompletiondir)" "$(DESTDIR)$(girdir)" \
        "$(DESTDIR)$(pkgsysconfdir)" "$(DESTDIR)$(polkitpolicydir)" \
+       "$(DESTDIR)$(sysctldir)" "$(DESTDIR)$(systempresetdir)" \
+       "$(DESTDIR)$(systemunitdir)" "$(DESTDIR)$(sysusersdir)" \
+       "$(DESTDIR)$(tmpfilesdir)" "$(DESTDIR)$(udevconfdir)" \
+       "$(DESTDIR)$(udevhwdbdir)" "$(DESTDIR)$(udevrulesdir)" \
+       "$(DESTDIR)$(userunitdir)" "$(DESTDIR)$(zshcompletiondir)" \
+       "$(DESTDIR)$(girdir)" "$(DESTDIR)$(pkgsysconfdir)" \
        "$(DESTDIR)$(rpmmacrosdir)" "$(DESTDIR)$(systemunitdir)" \
-       "$(DESTDIR)$(udevrulesdir)" "$(DESTDIR)$(userunitdir)" \
-       "$(DESTDIR)$(pkgconfigdatadir)" "$(DESTDIR)$(pkgconfiglibdir)" \
+       "$(DESTDIR)$(sysusersdir)" "$(DESTDIR)$(udevrulesdir)" \
+       "$(DESTDIR)$(userunitdir)" "$(DESTDIR)$(pkgconfigdatadir)" \
+       "$(DESTDIR)$(pkgconfiglibdir)" \
        "$(DESTDIR)$(sharepkgconfigdir)" "$(DESTDIR)$(sysctldir)" \
        "$(DESTDIR)$(sysvinitdir)" "$(DESTDIR)$(typelibsdir)" \
        "$(DESTDIR)$(varlogdir)" "$(DESTDIR)$(includedir)" \
@@ -1335,24 +1388,24 @@ _reader_la_LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \
 @HAVE_PYTHON_DEVEL_TRUE@id128_la_DEPENDENCIES = $(am__DEPENDENCIES_1) \
 @HAVE_PYTHON_DEVEL_TRUE@       libsystemd-shared.la libsystemd.la
 am__id128_la_SOURCES_DIST = src/python-systemd/id128.c \
-       src/python-systemd/id128-constants.h \
        src/python-systemd/pyutil.c src/python-systemd/pyutil.h
 @HAVE_PYTHON_DEVEL_TRUE@am_id128_la_OBJECTS =  \
 @HAVE_PYTHON_DEVEL_TRUE@       src/python-systemd/id128_la-id128.lo \
 @HAVE_PYTHON_DEVEL_TRUE@       src/python-systemd/id128_la-pyutil.lo
-id128_la_OBJECTS = $(am_id128_la_OBJECTS)
+nodist_id128_la_OBJECTS =
+id128_la_OBJECTS = $(am_id128_la_OBJECTS) $(nodist_id128_la_OBJECTS)
 id128_la_LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \
        $(LIBTOOLFLAGS) --mode=link $(CCLD) $(id128_la_CFLAGS) \
        $(CFLAGS) $(id128_la_LDFLAGS) $(LDFLAGS) -o $@
 @HAVE_PYTHON_DEVEL_TRUE@am_id128_la_rpath = -rpath $(pkgpyexecdir)
 @ENABLE_GUDEV_TRUE@libgudev_1_0_la_DEPENDENCIES = libudev.la \
 @ENABLE_GUDEV_TRUE@    $(am__DEPENDENCIES_1)
-am__libgudev_1_0_la_SOURCES_DIST = src/gudev/gudevenums.h \
-       src/gudev/gudevenumtypes.h src/gudev/gudevtypes.h \
-       src/gudev/gudevclient.h src/gudev/gudevclient.c \
-       src/gudev/gudevdevice.h src/gudev/gudevdevice.c \
-       src/gudev/gudevenumerator.h src/gudev/gudevenumerator.c \
-       src/gudev/gudevprivate.h
+am__libgudev_1_0_la_SOURCES_DIST = src/gudev/libgudev-1.0.sym \
+       src/gudev/gudevenums.h src/gudev/gudevenumtypes.h \
+       src/gudev/gudevtypes.h src/gudev/gudevclient.h \
+       src/gudev/gudevclient.c src/gudev/gudevdevice.h \
+       src/gudev/gudevdevice.c src/gudev/gudevenumerator.h \
+       src/gudev/gudevenumerator.c src/gudev/gudevprivate.h
 @ENABLE_GUDEV_TRUE@am_libgudev_1_0_la_OBJECTS =  \
 @ENABLE_GUDEV_TRUE@    src/gudev/libgudev_1_0_la-gudevclient.lo \
 @ENABLE_GUDEV_TRUE@    src/gudev/libgudev_1_0_la-gudevdevice.lo \
@@ -1593,7 +1646,8 @@ am_libsystemd_internal_la_OBJECTS =  \
        src/libsystemd/sd-rtnl/libsystemd_internal_la-rtnl-util.lo \
        src/libsystemd/sd-id128/libsystemd_internal_la-sd-id128.lo \
        src/libsystemd/sd-daemon/libsystemd_internal_la-sd-daemon.lo \
-       src/libsystemd/sd-login/libsystemd_internal_la-sd-login.lo
+       src/libsystemd/sd-login/libsystemd_internal_la-sd-login.lo \
+       src/libsystemd/sd-path/libsystemd_internal_la-sd-path.lo
 nodist_libsystemd_internal_la_OBJECTS = src/libsystemd/sd-bus/libsystemd_internal_la-bus-error-mapping.lo
 libsystemd_internal_la_OBJECTS = $(am_libsystemd_internal_la_OBJECTS) \
        $(nodist_libsystemd_internal_la_OBJECTS)
@@ -1604,7 +1658,7 @@ libsystemd_internal_la_LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC \
 libsystemd_journal_core_la_DEPENDENCIES =  \
        libsystemd-journal-internal.la libudev-internal.la \
        libsystemd-capability.la libsystemd-label.la \
-       libsystemd-internal.la libsystemd-shared.la $(am__append_114)
+       libsystemd-internal.la libsystemd-shared.la $(am__append_120)
 am_libsystemd_journal_core_la_OBJECTS = src/journal/journald-kmsg.lo \
        src/journal/journald-syslog.lo src/journal/journald-stream.lo \
        src/journal/journald-server.lo src/journal/journald-console.lo \
@@ -1673,7 +1727,9 @@ am_libsystemd_label_la_OBJECTS =  \
        src/shared/libsystemd_label_la-mkdir-label.lo \
        src/shared/libsystemd_label_la-ask-password-api.lo \
        src/shared/libsystemd_label_la-fileio-label.lo \
-       src/shared/libsystemd_label_la-dev-setup.lo
+       src/shared/libsystemd_label_la-dev-setup.lo \
+       src/shared/libsystemd_label_la-dropin.lo \
+       src/shared/libsystemd_label_la-generator.lo
 libsystemd_label_la_OBJECTS = $(am_libsystemd_label_la_OBJECTS)
 libsystemd_label_la_LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC \
        $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=link $(CCLD) \
@@ -1696,7 +1752,7 @@ libsystemd_login_la_LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC \
 @ENABLE_LOGIND_TRUE@   libsystemd-label.la \
 @ENABLE_LOGIND_TRUE@   libsystemd-capability.la \
 @ENABLE_LOGIND_TRUE@   libsystemd-internal.la libudev-internal.la \
-@ENABLE_LOGIND_TRUE@   libsystemd-shared.la $(am__append_228)
+@ENABLE_LOGIND_TRUE@   libsystemd-shared.la $(am__append_242)
 am__libsystemd_logind_core_la_SOURCES_DIST = src/login/logind-core.c \
        src/login/logind-device.c src/login/logind-device.h \
        src/login/logind-button.c src/login/logind-button.h \
@@ -1753,6 +1809,7 @@ libsystemd_network_la_DEPENDENCIES = libudev-internal.la \
 am_libsystemd_network_la_OBJECTS =  \
        src/network/libsystemd_network_la-sd-network.lo \
        src/libsystemd-network/libsystemd_network_la-sd-dhcp-client.lo \
+       src/libsystemd-network/libsystemd_network_la-sd-dhcp-server.lo \
        src/libsystemd-network/libsystemd_network_la-dhcp-network.lo \
        src/libsystemd-network/libsystemd_network_la-dhcp-option.lo \
        src/libsystemd-network/libsystemd_network_la-dhcp-packet.lo \
@@ -1760,7 +1817,12 @@ am_libsystemd_network_la_OBJECTS =  \
        src/libsystemd-network/libsystemd_network_la-sd-ipv4ll.lo \
        src/libsystemd-network/libsystemd_network_la-ipv4ll-network.lo \
        src/libsystemd-network/libsystemd_network_la-ipv4ll-packet.lo \
-       src/libsystemd-network/libsystemd_network_la-network-internal.lo
+       src/libsystemd-network/libsystemd_network_la-network-internal.lo \
+       src/libsystemd-network/libsystemd_network_la-sd-icmp6-nd.lo \
+       src/libsystemd-network/libsystemd_network_la-sd-dhcp6-client.lo \
+       src/libsystemd-network/libsystemd_network_la-dhcp6-network.lo \
+       src/libsystemd-network/libsystemd_network_la-dhcp6-option.lo \
+       src/libsystemd-network/libsystemd_network_la-sd-dhcp6-lease.lo
 libsystemd_network_la_OBJECTS = $(am_libsystemd_network_la_OBJECTS)
 libsystemd_network_la_LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC \
        $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=link $(CCLD) \
@@ -1775,17 +1837,26 @@ am__libsystemd_networkd_core_la_SOURCES_DIST =  \
        src/libsystemd-network/network-internal.h \
        src/network/networkd.h src/network/networkd-link.c \
        src/network/networkd-netdev.c src/network/networkd-tunnel.c \
-       src/network/networkd-veth.c src/network/networkd-network.c \
-       src/network/networkd-address.c src/network/networkd-route.c \
-       src/network/networkd-manager.c
+       src/network/networkd-veth.c src/network/networkd-vxlan.c \
+       src/network/networkd-vlan.c src/network/networkd-macvlan.c \
+       src/network/networkd-dummy.c src/network/networkd-tuntap.c \
+       src/network/networkd-network.c src/network/networkd-address.c \
+       src/network/networkd-route.c src/network/networkd-manager.c \
+       src/network/networkd-address-pool.c
 @ENABLE_NETWORKD_TRUE@am_libsystemd_networkd_core_la_OBJECTS = src/network/libsystemd_networkd_core_la-networkd-link.lo \
 @ENABLE_NETWORKD_TRUE@ src/network/libsystemd_networkd_core_la-networkd-netdev.lo \
 @ENABLE_NETWORKD_TRUE@ src/network/libsystemd_networkd_core_la-networkd-tunnel.lo \
 @ENABLE_NETWORKD_TRUE@ src/network/libsystemd_networkd_core_la-networkd-veth.lo \
+@ENABLE_NETWORKD_TRUE@ src/network/libsystemd_networkd_core_la-networkd-vxlan.lo \
+@ENABLE_NETWORKD_TRUE@ src/network/libsystemd_networkd_core_la-networkd-vlan.lo \
+@ENABLE_NETWORKD_TRUE@ src/network/libsystemd_networkd_core_la-networkd-macvlan.lo \
+@ENABLE_NETWORKD_TRUE@ src/network/libsystemd_networkd_core_la-networkd-dummy.lo \
+@ENABLE_NETWORKD_TRUE@ src/network/libsystemd_networkd_core_la-networkd-tuntap.lo \
 @ENABLE_NETWORKD_TRUE@ src/network/libsystemd_networkd_core_la-networkd-network.lo \
 @ENABLE_NETWORKD_TRUE@ src/network/libsystemd_networkd_core_la-networkd-address.lo \
 @ENABLE_NETWORKD_TRUE@ src/network/libsystemd_networkd_core_la-networkd-route.lo \
-@ENABLE_NETWORKD_TRUE@ src/network/libsystemd_networkd_core_la-networkd-manager.lo
+@ENABLE_NETWORKD_TRUE@ src/network/libsystemd_networkd_core_la-networkd-manager.lo \
+@ENABLE_NETWORKD_TRUE@ src/network/libsystemd_networkd_core_la-networkd-address-pool.lo
 @ENABLE_NETWORKD_TRUE@nodist_libsystemd_networkd_core_la_OBJECTS = src/network/libsystemd_networkd_core_la-networkd-network-gperf.lo \
 @ENABLE_NETWORKD_TRUE@ src/network/libsystemd_networkd_core_la-networkd-netdev-gperf.lo
 libsystemd_networkd_core_la_OBJECTS =  \
@@ -1869,13 +1940,13 @@ am_libsystemd_shared_la_OBJECTS =  \
        src/shared/libsystemd_shared_la-xml.lo \
        src/shared/libsystemd_shared_la-condition-util.lo \
        src/shared/libsystemd_shared_la-bus-label.lo \
-       src/shared/libsystemd_shared_la-generator.lo \
        src/shared/libsystemd_shared_la-clean-ipc.lo \
        src/shared/libsystemd_shared_la-login-shared.lo \
        src/shared/libsystemd_shared_la-ring.lo \
        src/shared/libsystemd_shared_la-async.lo \
        src/shared/libsystemd_shared_la-eventfd-util.lo \
-       src/shared/libsystemd_shared_la-copy.lo
+       src/shared/libsystemd_shared_la-copy.lo \
+       src/shared/libsystemd_shared_la-base-filesystem.lo
 nodist_libsystemd_shared_la_OBJECTS =
 libsystemd_shared_la_OBJECTS = $(am_libsystemd_shared_la_OBJECTS) \
        $(nodist_libsystemd_shared_la_OBJECTS)
@@ -1899,7 +1970,7 @@ am__libsystemd_la_SOURCES_DIST = src/systemd/sd-bus.h \
        src/systemd/sd-event.h src/systemd/sd-rtnl.h \
        src/systemd/sd-resolve.h src/systemd/sd-login.h \
        src/systemd/sd-id128.h src/systemd/sd-daemon.h \
-       src/libsystemd/sd-bus/sd-bus.c \
+       src/systemd/sd-path.h src/libsystemd/sd-bus/sd-bus.c \
        src/libsystemd/sd-bus/bus-control.c \
        src/libsystemd/sd-bus/bus-control.h \
        src/libsystemd/sd-bus/bus-error.c \
@@ -1952,6 +2023,7 @@ am__libsystemd_la_SOURCES_DIST = src/systemd/sd-bus.h \
        src/libsystemd/sd-id128/sd-id128.c \
        src/libsystemd/sd-daemon/sd-daemon.c \
        src/libsystemd/sd-login/sd-login.c \
+       src/libsystemd/sd-path/sd-path.c \
        src/libsystemd/sd-resolve/sd-resolve.c \
        src/libsystemd/sd-resolve/resolve-util.h \
        src/journal/sd-journal.c src/systemd/sd-journal.h \
@@ -1995,7 +2067,8 @@ am__objects_5 = src/libsystemd/sd-bus/libsystemd_la-sd-bus.lo \
        src/libsystemd/sd-rtnl/libsystemd_la-rtnl-util.lo \
        src/libsystemd/sd-id128/libsystemd_la-sd-id128.lo \
        src/libsystemd/sd-daemon/libsystemd_la-sd-daemon.lo \
-       src/libsystemd/sd-login/libsystemd_la-sd-login.lo
+       src/libsystemd/sd-login/libsystemd_la-sd-login.lo \
+       src/libsystemd/sd-path/libsystemd_la-sd-path.lo
 am__objects_6 = src/libsystemd/sd-resolve/libsystemd_la-sd-resolve.lo
 @HAVE_XZ_TRUE@am__objects_7 = src/journal/libsystemd_la-compress.lo
 @HAVE_GCRYPT_TRUE@am__objects_8 = src/journal/libsystemd_la-journal-authenticate.lo \
@@ -2022,7 +2095,7 @@ libsystemd_la_LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \
 libudev_core_la_DEPENDENCIES = libudev-internal.la libsystemd-label.la \
        libsystemd-internal.la libsystemd-network.la \
        libsystemd-shared.la $(am__DEPENDENCIES_1) \
-       $(am__DEPENDENCIES_1) $(am__append_98)
+       $(am__DEPENDENCIES_1) $(am__append_104)
 am__libudev_core_la_SOURCES_DIST = src/udev/udev.h \
        src/udev/udev-event.c src/udev/udev-watch.c \
        src/udev/udev-node.c src/udev/udev-rules.c \
@@ -2117,8 +2190,9 @@ login_la_LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \
 @ENABLE_LOGIND_TRUE@@HAVE_PAM_TRUE@    libsystemd-internal.la \
 @ENABLE_LOGIND_TRUE@@HAVE_PAM_TRUE@    libsystemd-shared.la \
 @ENABLE_LOGIND_TRUE@@HAVE_PAM_TRUE@    $(am__DEPENDENCIES_1)
-am__pam_systemd_la_SOURCES_DIST = src/login/pam-module.c
-@ENABLE_LOGIND_TRUE@@HAVE_PAM_TRUE@am_pam_systemd_la_OBJECTS = src/login/pam_systemd_la-pam-module.lo
+am__pam_systemd_la_SOURCES_DIST = src/login/pam_systemd.sym \
+       src/login/pam_systemd.c
+@ENABLE_LOGIND_TRUE@@HAVE_PAM_TRUE@am_pam_systemd_la_OBJECTS = src/login/pam_systemd_la-pam_systemd.lo
 pam_systemd_la_OBJECTS = $(am_pam_systemd_la_OBJECTS)
 pam_systemd_la_LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC \
        $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=link $(CCLD) \
@@ -2127,28 +2201,30 @@ pam_systemd_la_LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC \
 @ENABLE_LOGIND_TRUE@@HAVE_PAM_TRUE@am_pam_systemd_la_rpath = -rpath \
 @ENABLE_LOGIND_TRUE@@HAVE_PAM_TRUE@    $(pamlibdir)
 @ENABLE_EFI_TRUE@am__EXEEXT_1 = bootctl$(EXEEXT)
-@ENABLE_COREDUMP_TRUE@am__EXEEXT_2 = systemd-coredumpctl$(EXEEXT)
+@ENABLE_COREDUMP_TRUE@am__EXEEXT_2 = coredumpctl$(EXEEXT)
 @ENABLE_HOSTNAMED_TRUE@am__EXEEXT_3 = hostnamectl$(EXEEXT)
 @ENABLE_LOCALED_TRUE@am__EXEEXT_4 = localectl$(EXEEXT)
 @ENABLE_TIMEDATED_TRUE@am__EXEEXT_5 = timedatectl$(EXEEXT)
 @HAVE_KMOD_TRUE@am__EXEEXT_6 = test-rtnl-manual$(EXEEXT)
 @ENABLE_EFI_TRUE@am__EXEEXT_7 = test-boot-timestamp$(EXEEXT)
-@ENABLE_READAHEAD_TRUE@am__EXEEXT_8 = test-ssd$(EXEEXT)
-@ENABLE_LOGIND_TRUE@am__EXEEXT_9 = test-login$(EXEEXT) \
+@ENABLE_COREDUMP_TRUE@am__EXEEXT_8 = test-coredump-vacuum$(EXEEXT)
+@ENABLE_READAHEAD_TRUE@am__EXEEXT_9 = test-ssd$(EXEEXT)
+@ENABLE_LOGIND_TRUE@am__EXEEXT_10 = test-login$(EXEEXT) \
 @ENABLE_LOGIND_TRUE@   test-inhibit$(EXEEXT)
-am__EXEEXT_10 = test-engine$(EXEEXT) test-ns$(EXEEXT) \
+am__EXEEXT_11 = test-engine$(EXEEXT) test-ns$(EXEEXT) \
        test-loopback$(EXEEXT) test-hostname$(EXEEXT) \
        test-daemon$(EXEEXT) test-cgroup$(EXEEXT) \
        test-cgroup-mask$(EXEEXT) test-install$(EXEEXT) \
        test-watchdog$(EXEEXT) test-log$(EXEEXT) test-ipcrm$(EXEEXT) \
        $(am__EXEEXT_6) $(am__EXEEXT_7) test-libudev$(EXEEXT) \
        test-udev$(EXEEXT) test-journal-enum$(EXEEXT) $(am__EXEEXT_8) \
-       $(am__EXEEXT_9)
-@ENABLE_MACHINED_TRUE@am__EXEEXT_11 = test-machine-tables$(EXEEXT)
-@ENABLE_NETWORKD_TRUE@am__EXEEXT_12 = test-network$(EXEEXT)
-@ENABLE_LOGIND_TRUE@am__EXEEXT_13 = test-login-tables$(EXEEXT) \
+       $(am__EXEEXT_9) $(am__EXEEXT_10)
+@HAVE_XZ_TRUE@am__EXEEXT_12 = test-compress$(EXEEXT)
+@ENABLE_MACHINED_TRUE@am__EXEEXT_13 = test-machine-tables$(EXEEXT)
+@ENABLE_NETWORKD_TRUE@am__EXEEXT_14 = test-network$(EXEEXT)
+@ENABLE_LOGIND_TRUE@am__EXEEXT_15 = test-login-tables$(EXEEXT) \
 @ENABLE_LOGIND_TRUE@   test-login-shared$(EXEEXT)
-am__EXEEXT_14 = test-job-type$(EXEEXT) test-env-replace$(EXEEXT) \
+am__EXEEXT_16 = test-job-type$(EXEEXT) test-env-replace$(EXEEXT) \
        test-strbuf$(EXEEXT) test-strv$(EXEEXT) \
        test-path-util$(EXEEXT) test-strxcpyx$(EXEEXT) \
        test-unit-name$(EXEEXT) test-unit-file$(EXEEXT) \
@@ -2161,7 +2237,10 @@ am__EXEEXT_14 = test-job-type$(EXEEXT) test-env-replace$(EXEEXT) \
        test-fileio$(EXEEXT) test-time$(EXEEXT) test-hashmap$(EXEEXT) \
        test-list$(EXEEXT) test-tables$(EXEEXT) \
        test-device-nodes$(EXEEXT) test-xml$(EXEEXT) \
-       test-architecture$(EXEEXT) test-bus-marshal$(EXEEXT) \
+       test-architecture$(EXEEXT) test-socket-util$(EXEEXT) \
+       test-fdset$(EXEEXT) test-conf-files$(EXEEXT) \
+       test-capability$(EXEEXT) test-async$(EXEEXT) \
+       test-ratelimit$(EXEEXT) test-bus-marshal$(EXEEXT) \
        test-bus-signature$(EXEEXT) test-bus-chat$(EXEEXT) \
        test-bus-cleanup$(EXEEXT) test-bus-server$(EXEEXT) \
        test-bus-match$(EXEEXT) test-bus-kernel$(EXEEXT) \
@@ -2172,50 +2251,54 @@ am__EXEEXT_14 = test-job-type$(EXEEXT) test-env-replace$(EXEEXT) \
        test-bus-creds$(EXEEXT) test-bus-gvariant$(EXEEXT) \
        test-event$(EXEEXT) test-rtnl$(EXEEXT) test-resolve$(EXEEXT) \
        test-dhcp-option$(EXEEXT) test-dhcp-client$(EXEEXT) \
-       test-ipv4ll$(EXEEXT) test-id128$(EXEEXT) test-journal$(EXEEXT) \
+       test-dhcp-server$(EXEEXT) test-ipv4ll$(EXEEXT) \
+       test-icmp6-rs$(EXEEXT) test-dhcp6-client$(EXEEXT) \
+       test-id128$(EXEEXT) test-journal$(EXEEXT) \
        test-journal-send$(EXEEXT) test-journal-syslog$(EXEEXT) \
        test-journal-match$(EXEEXT) test-journal-stream$(EXEEXT) \
        test-journal-init$(EXEEXT) test-journal-verify$(EXEEXT) \
        test-journal-interleaving$(EXEEXT) test-journal-flush$(EXEEXT) \
        test-mmap-cache$(EXEEXT) test-catalog$(EXEEXT) \
-       $(am__EXEEXT_11) $(am__EXEEXT_12) $(am__EXEEXT_13) \
-       test-libsystemd-sym$(EXEEXT) test-libudev-sym$(EXEEXT)
-@ENABLE_TMPFILES_TRUE@am__EXEEXT_15 = systemd-tmpfiles$(EXEEXT)
-@ENABLE_MACHINED_TRUE@am__EXEEXT_16 = machinectl$(EXEEXT)
-@ENABLE_LOGIND_TRUE@am__EXEEXT_17 = loginctl$(EXEEXT) \
+       $(am__EXEEXT_12) $(am__EXEEXT_13) $(am__EXEEXT_14) \
+       $(am__EXEEXT_15) test-libsystemd-sym$(EXEEXT) \
+       test-libudev-sym$(EXEEXT)
+@ENABLE_TMPFILES_TRUE@am__EXEEXT_17 = systemd-tmpfiles$(EXEEXT)
+@ENABLE_SYSUSERS_TRUE@am__EXEEXT_18 = systemd-sysusers$(EXEEXT)
+@ENABLE_MACHINED_TRUE@am__EXEEXT_19 = machinectl$(EXEEXT)
+@ENABLE_LOGIND_TRUE@am__EXEEXT_20 = loginctl$(EXEEXT) \
 @ENABLE_LOGIND_TRUE@   systemd-inhibit$(EXEEXT)
-@HAVE_KMOD_TRUE@am__EXEEXT_18 = systemd-modules-load$(EXEEXT)
-@HAVE_MICROHTTPD_TRUE@am__EXEEXT_19 = systemd-journal-remote$(EXEEXT)
-@HAVE_MICROHTTPD_TRUE@am__EXEEXT_20 =  \
+@HAVE_KMOD_TRUE@am__EXEEXT_21 = systemd-modules-load$(EXEEXT)
+@HAVE_MICROHTTPD_TRUE@am__EXEEXT_22 = systemd-journal-remote$(EXEEXT)
+@HAVE_MICROHTTPD_TRUE@am__EXEEXT_23 =  \
 @HAVE_MICROHTTPD_TRUE@ systemd-journal-gatewayd$(EXEEXT)
-@ENABLE_COREDUMP_TRUE@am__EXEEXT_21 = systemd-coredump$(EXEEXT)
-@ENABLE_BINFMT_TRUE@am__EXEEXT_22 = systemd-binfmt$(EXEEXT)
-@ENABLE_VCONSOLE_TRUE@am__EXEEXT_23 = systemd-vconsole-setup$(EXEEXT)
-@ENABLE_READAHEAD_TRUE@am__EXEEXT_24 = systemd-readahead$(EXEEXT)
-@ENABLE_BOOTCHART_TRUE@am__EXEEXT_25 = systemd-bootchart$(EXEEXT)
-@ENABLE_QUOTACHECK_TRUE@am__EXEEXT_26 = systemd-quotacheck$(EXEEXT)
-@ENABLE_RANDOMSEED_TRUE@am__EXEEXT_27 = systemd-random-seed$(EXEEXT)
-@ENABLE_BACKLIGHT_TRUE@am__EXEEXT_28 = systemd-backlight$(EXEEXT)
-@ENABLE_RFKILL_TRUE@am__EXEEXT_29 = systemd-rfkill$(EXEEXT)
-@HAVE_LIBCRYPTSETUP_TRUE@am__EXEEXT_30 = systemd-cryptsetup$(EXEEXT)
-@ENABLE_HOSTNAMED_TRUE@am__EXEEXT_31 = systemd-hostnamed$(EXEEXT)
-@ENABLE_LOCALED_TRUE@am__EXEEXT_32 = systemd-localed$(EXEEXT)
-@ENABLE_TIMEDATED_TRUE@am__EXEEXT_33 = systemd-timedated$(EXEEXT)
-@ENABLE_TIMESYNCD_TRUE@am__EXEEXT_34 = systemd-timesyncd$(EXEEXT)
-@ENABLE_MACHINED_TRUE@am__EXEEXT_35 = systemd-machined$(EXEEXT)
-@ENABLE_RESOLVED_TRUE@am__EXEEXT_36 = systemd-resolved$(EXEEXT)
-@ENABLE_NETWORKD_TRUE@am__EXEEXT_37 = systemd-networkd$(EXEEXT) \
+@ENABLE_COREDUMP_TRUE@am__EXEEXT_24 = systemd-coredump$(EXEEXT)
+@ENABLE_BINFMT_TRUE@am__EXEEXT_25 = systemd-binfmt$(EXEEXT)
+@ENABLE_VCONSOLE_TRUE@am__EXEEXT_26 = systemd-vconsole-setup$(EXEEXT)
+@ENABLE_READAHEAD_TRUE@am__EXEEXT_27 = systemd-readahead$(EXEEXT)
+@ENABLE_BOOTCHART_TRUE@am__EXEEXT_28 = systemd-bootchart$(EXEEXT)
+@ENABLE_QUOTACHECK_TRUE@am__EXEEXT_29 = systemd-quotacheck$(EXEEXT)
+@ENABLE_RANDOMSEED_TRUE@am__EXEEXT_30 = systemd-random-seed$(EXEEXT)
+@ENABLE_BACKLIGHT_TRUE@am__EXEEXT_31 = systemd-backlight$(EXEEXT)
+@ENABLE_RFKILL_TRUE@am__EXEEXT_32 = systemd-rfkill$(EXEEXT)
+@HAVE_LIBCRYPTSETUP_TRUE@am__EXEEXT_33 = systemd-cryptsetup$(EXEEXT)
+@ENABLE_HOSTNAMED_TRUE@am__EXEEXT_34 = systemd-hostnamed$(EXEEXT)
+@ENABLE_LOCALED_TRUE@am__EXEEXT_35 = systemd-localed$(EXEEXT)
+@ENABLE_TIMEDATED_TRUE@am__EXEEXT_36 = systemd-timedated$(EXEEXT)
+@ENABLE_TIMESYNCD_TRUE@am__EXEEXT_37 = systemd-timesyncd$(EXEEXT)
+@ENABLE_MACHINED_TRUE@am__EXEEXT_38 = systemd-machined$(EXEEXT)
+@ENABLE_RESOLVED_TRUE@am__EXEEXT_39 = systemd-resolved$(EXEEXT)
+@ENABLE_NETWORKD_TRUE@am__EXEEXT_40 = systemd-networkd$(EXEEXT) \
 @ENABLE_NETWORKD_TRUE@ systemd-networkd-wait-online$(EXEEXT)
-@ENABLE_LOGIND_TRUE@am__EXEEXT_38 = systemd-logind$(EXEEXT) \
+@ENABLE_LOGIND_TRUE@am__EXEEXT_41 = systemd-logind$(EXEEXT) \
 @ENABLE_LOGIND_TRUE@   systemd-user-sessions$(EXEEXT)
-@ENABLE_LOGIND_TRUE@@ENABLE_MULTI_SEAT_X_TRUE@am__EXEEXT_39 = systemd-multi-seat-x$(EXEEXT)
-@HAVE_SYSV_COMPAT_TRUE@am__EXEEXT_40 =  \
+@ENABLE_LOGIND_TRUE@@ENABLE_MULTI_SEAT_X_TRUE@am__EXEEXT_42 = systemd-multi-seat-x$(EXEEXT)
+@HAVE_SYSV_COMPAT_TRUE@am__EXEEXT_43 =  \
 @HAVE_SYSV_COMPAT_TRUE@        systemd-sysv-generator$(EXEEXT) \
 @HAVE_SYSV_COMPAT_TRUE@        systemd-rc-local-generator$(EXEEXT)
-@ENABLE_EFI_TRUE@am__EXEEXT_41 = systemd-efi-boot-generator$(EXEEXT)
-@HAVE_BLKID_TRUE@am__EXEEXT_42 = systemd-gpt-auto-generator$(EXEEXT)
-@ENABLE_KDBUS_TRUE@am__EXEEXT_43 = systemd-dbus1-generator$(EXEEXT)
-@HAVE_LIBCRYPTSETUP_TRUE@am__EXEEXT_44 = systemd-cryptsetup-generator$(EXEEXT)
+@ENABLE_EFI_TRUE@am__EXEEXT_44 = systemd-efi-boot-generator$(EXEEXT)
+@HAVE_BLKID_TRUE@am__EXEEXT_45 = systemd-gpt-auto-generator$(EXEEXT)
+@ENABLE_KDBUS_TRUE@am__EXEEXT_46 = systemd-dbus1-generator$(EXEEXT)
+@HAVE_LIBCRYPTSETUP_TRUE@am__EXEEXT_47 = systemd-cryptsetup-generator$(EXEEXT)
 PROGRAMS = $(bin_PROGRAMS) $(noinst_PROGRAMS) $(rootbin_PROGRAMS) \
        $(rootlibexec_PROGRAMS) $(systemgenerator_PROGRAMS) \
        $(udevlibexec_PROGRAMS)
@@ -2248,6 +2331,14 @@ cdrom_id_DEPENDENCIES = libudev-internal.la libsystemd-shared.la
 am_collect_OBJECTS = src/udev/collect/collect.$(OBJEXT)
 collect_OBJECTS = $(am_collect_OBJECTS)
 collect_DEPENDENCIES = libudev-internal.la libsystemd-shared.la
+am__coredumpctl_SOURCES_DIST = src/journal/coredumpctl.c
+@ENABLE_COREDUMP_TRUE@am_coredumpctl_OBJECTS =  \
+@ENABLE_COREDUMP_TRUE@ src/journal/coredumpctl.$(OBJEXT)
+coredumpctl_OBJECTS = $(am_coredumpctl_OBJECTS)
+@ENABLE_COREDUMP_TRUE@coredumpctl_DEPENDENCIES =  \
+@ENABLE_COREDUMP_TRUE@ libsystemd-journal-internal.la \
+@ENABLE_COREDUMP_TRUE@ libsystemd-internal.la \
+@ENABLE_COREDUMP_TRUE@ libsystemd-shared.la
 am__hostnamectl_SOURCES_DIST = src/hostname/hostnamectl.c
 @ENABLE_HOSTNAMED_TRUE@am_hostnamectl_OBJECTS =  \
 @ENABLE_HOSTNAMED_TRUE@        src/hostname/hostnamectl.$(OBJEXT)
@@ -2264,7 +2355,7 @@ journalctl_OBJECTS = $(am_journalctl_OBJECTS)
 @HAVE_QRENCODE_TRUE@am__DEPENDENCIES_6 = $(am__DEPENDENCIES_1)
 journalctl_DEPENDENCIES = libsystemd-journal-internal.la \
        libsystemd-internal.la libsystemd-logs.la libsystemd-shared.la \
-       $(am__append_110) $(am__DEPENDENCIES_6)
+       $(am__append_116) $(am__DEPENDENCIES_6)
 journalctl_LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \
        $(LIBTOOLFLAGS) --mode=link $(CCLD) $(journalctl_CFLAGS) \
        $(CFLAGS) $(AM_LDFLAGS) $(LDFLAGS) -o $@
@@ -2369,23 +2460,22 @@ systemd_cgroups_agent_DEPENDENCIES = libsystemd-internal.la \
 am_systemd_cgtop_OBJECTS = src/cgtop/cgtop.$(OBJEXT)
 systemd_cgtop_OBJECTS = $(am_systemd_cgtop_OBJECTS)
 systemd_cgtop_DEPENDENCIES = libsystemd-shared.la
-am__systemd_coredump_SOURCES_DIST = src/journal/coredump.c
+am__systemd_coredump_SOURCES_DIST = src/journal/coredump.c \
+       src/journal/coredump-vacuum.c src/journal/coredump-vacuum.h \
+       src/journal/stacktrace.c src/journal/stacktrace.h
+@ENABLE_COREDUMP_TRUE@@HAVE_ELFUTILS_TRUE@am__objects_17 = src/journal/stacktrace.$(OBJEXT)
 @ENABLE_COREDUMP_TRUE@am_systemd_coredump_OBJECTS =  \
-@ENABLE_COREDUMP_TRUE@ src/journal/coredump.$(OBJEXT)
+@ENABLE_COREDUMP_TRUE@ src/journal/coredump.$(OBJEXT) \
+@ENABLE_COREDUMP_TRUE@ src/journal/coredump-vacuum.$(OBJEXT) \
+@ENABLE_COREDUMP_TRUE@ $(am__objects_17)
 systemd_coredump_OBJECTS = $(am_systemd_coredump_OBJECTS)
+@ENABLE_COREDUMP_TRUE@@HAVE_ELFUTILS_TRUE@am__DEPENDENCIES_7 = $(am__DEPENDENCIES_1)
 @ENABLE_COREDUMP_TRUE@systemd_coredump_DEPENDENCIES =  \
 @ENABLE_COREDUMP_TRUE@ libsystemd-journal-internal.la \
 @ENABLE_COREDUMP_TRUE@ libsystemd-label.la \
 @ENABLE_COREDUMP_TRUE@ libsystemd-internal.la \
-@ENABLE_COREDUMP_TRUE@ libsystemd-shared.la
-am__systemd_coredumpctl_SOURCES_DIST = src/journal/coredumpctl.c
-@ENABLE_COREDUMP_TRUE@am_systemd_coredumpctl_OBJECTS =  \
-@ENABLE_COREDUMP_TRUE@ src/journal/coredumpctl.$(OBJEXT)
-systemd_coredumpctl_OBJECTS = $(am_systemd_coredumpctl_OBJECTS)
-@ENABLE_COREDUMP_TRUE@systemd_coredumpctl_DEPENDENCIES =  \
-@ENABLE_COREDUMP_TRUE@ libsystemd-journal-internal.la \
-@ENABLE_COREDUMP_TRUE@ libsystemd-internal.la \
-@ENABLE_COREDUMP_TRUE@ libsystemd-shared.la
+@ENABLE_COREDUMP_TRUE@ libsystemd-shared.la \
+@ENABLE_COREDUMP_TRUE@ $(am__DEPENDENCIES_7) $(am__append_136)
 am__systemd_cryptsetup_SOURCES_DIST = src/cryptsetup/cryptsetup.c
 @HAVE_LIBCRYPTSETUP_TRUE@am_systemd_cryptsetup_OBJECTS = src/cryptsetup/systemd_cryptsetup-cryptsetup.$(OBJEXT)
 systemd_cryptsetup_OBJECTS = $(am_systemd_cryptsetup_OBJECTS)
@@ -2414,6 +2504,12 @@ systemd_dbus1_generator_OBJECTS =  \
 @ENABLE_KDBUS_TRUE@systemd_dbus1_generator_DEPENDENCIES =  \
 @ENABLE_KDBUS_TRUE@    libsystemd-label.la libsystemd-shared.la \
 @ENABLE_KDBUS_TRUE@    libsystemd-internal.la
+am_systemd_debug_generator_OBJECTS =  \
+       src/debug-generator/debug-generator.$(OBJEXT)
+systemd_debug_generator_OBJECTS =  \
+       $(am_systemd_debug_generator_OBJECTS)
+systemd_debug_generator_DEPENDENCIES = libsystemd-label.la \
+       libsystemd-shared.la
 am_systemd_delta_OBJECTS = src/delta/delta.$(OBJEXT)
 systemd_delta_OBJECTS = $(am_systemd_delta_OBJECTS)
 systemd_delta_DEPENDENCIES = libsystemd-shared.la
@@ -2485,7 +2581,7 @@ am__systemd_journal_gatewayd_SOURCES_DIST =  \
 @HAVE_MICROHTTPD_TRUE@ src/journal/systemd_journal_gatewayd-microhttpd-util.$(OBJEXT)
 systemd_journal_gatewayd_OBJECTS =  \
        $(am_systemd_journal_gatewayd_OBJECTS)
-@HAVE_GNUTLS_TRUE@@HAVE_MICROHTTPD_TRUE@am__DEPENDENCIES_7 =  \
+@HAVE_GNUTLS_TRUE@@HAVE_MICROHTTPD_TRUE@am__DEPENDENCIES_8 =  \
 @HAVE_GNUTLS_TRUE@@HAVE_MICROHTTPD_TRUE@       $(am__DEPENDENCIES_1)
 @HAVE_MICROHTTPD_TRUE@systemd_journal_gatewayd_DEPENDENCIES =  \
 @HAVE_MICROHTTPD_TRUE@ libsystemd-logs.la \
@@ -2493,7 +2589,7 @@ systemd_journal_gatewayd_OBJECTS =  \
 @HAVE_MICROHTTPD_TRUE@ libsystemd-internal.la \
 @HAVE_MICROHTTPD_TRUE@ libsystemd-shared.la \
 @HAVE_MICROHTTPD_TRUE@ $(am__DEPENDENCIES_1) \
-@HAVE_MICROHTTPD_TRUE@ $(am__DEPENDENCIES_7)
+@HAVE_MICROHTTPD_TRUE@ $(am__DEPENDENCIES_8)
 systemd_journal_gatewayd_LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC \
        $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=link $(CCLD) \
        $(systemd_journal_gatewayd_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) \
@@ -2514,7 +2610,7 @@ systemd_journal_remote_OBJECTS = $(am_systemd_journal_remote_OBJECTS)
 @HAVE_MICROHTTPD_TRUE@ libsystemd-internal.la \
 @HAVE_MICROHTTPD_TRUE@ libsystemd-journal-core.la \
 @HAVE_MICROHTTPD_TRUE@ $(am__DEPENDENCIES_1) \
-@HAVE_MICROHTTPD_TRUE@ $(am__DEPENDENCIES_7)
+@HAVE_MICROHTTPD_TRUE@ $(am__DEPENDENCIES_8)
 systemd_journal_remote_LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC \
        $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=link $(CCLD) \
        $(systemd_journal_remote_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) \
@@ -2603,16 +2699,20 @@ am_systemd_nspawn_OBJECTS =  \
        src/core/systemd_nspawn-mount-setup.$(OBJEXT) \
        src/core/systemd_nspawn-loopback-setup.$(OBJEXT)
 systemd_nspawn_OBJECTS = $(am_systemd_nspawn_OBJECTS)
-@HAVE_SECCOMP_TRUE@am__DEPENDENCIES_8 = libsystemd-seccomp.la \
+@HAVE_SECCOMP_TRUE@am__DEPENDENCIES_9 = libsystemd-seccomp.la \
 @HAVE_SECCOMP_TRUE@    $(am__DEPENDENCIES_1)
 systemd_nspawn_DEPENDENCIES = libsystemd-label.la \
        libsystemd-capability.la libsystemd-internal.la \
        libudev-internal.la libsystemd-shared.la $(am__DEPENDENCIES_1) \
-       $(am__DEPENDENCIES_8)
+       $(am__DEPENDENCIES_9)
 systemd_nspawn_LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC \
        $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=link $(CCLD) \
        $(systemd_nspawn_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) $(LDFLAGS) -o \
        $@
+am_systemd_path_OBJECTS = src/path/path.$(OBJEXT)
+systemd_path_OBJECTS = $(am_systemd_path_OBJECTS)
+systemd_path_DEPENDENCIES = libsystemd-internal.la \
+       libsystemd-shared.la
 am__systemd_quotacheck_SOURCES_DIST = src/quotacheck/quotacheck.c
 @ENABLE_QUOTACHECK_TRUE@am_systemd_quotacheck_OBJECTS =  \
 @ENABLE_QUOTACHECK_TRUE@       src/quotacheck/quotacheck.$(OBJEXT)
@@ -2714,6 +2814,15 @@ systemd_system_update_generator_OBJECTS =  \
        $(am_systemd_system_update_generator_OBJECTS)
 systemd_system_update_generator_DEPENDENCIES = libsystemd-label.la \
        libsystemd-shared.la
+am__systemd_sysusers_SOURCES_DIST = src/sysusers/sysusers.c
+@ENABLE_SYSUSERS_TRUE@am_systemd_sysusers_OBJECTS =  \
+@ENABLE_SYSUSERS_TRUE@ src/sysusers/sysusers.$(OBJEXT)
+systemd_sysusers_OBJECTS = $(am_systemd_sysusers_OBJECTS)
+@ENABLE_SYSUSERS_TRUE@systemd_sysusers_DEPENDENCIES =  \
+@ENABLE_SYSUSERS_TRUE@ libsystemd-units.la libsystemd-label.la \
+@ENABLE_SYSUSERS_TRUE@ libsystemd-capability.la \
+@ENABLE_SYSUSERS_TRUE@ libsystemd-internal.la \
+@ENABLE_SYSUSERS_TRUE@ libsystemd-shared.la
 am_systemd_sysv_generator_OBJECTS =  \
        src/sysv-generator/sysv-generator.$(OBJEXT)
 systemd_sysv_generator_OBJECTS = $(am_systemd_sysv_generator_OBJECTS)
@@ -2760,6 +2869,11 @@ systemd_tty_ask_password_agent_DEPENDENCIES = libsystemd-label.la \
 am_systemd_udevd_OBJECTS = src/udev/udevd.$(OBJEXT)
 systemd_udevd_OBJECTS = $(am_systemd_udevd_OBJECTS)
 systemd_udevd_DEPENDENCIES = libudev-core.la
+am_systemd_update_done_OBJECTS =  \
+       src/update-done/update-done.$(OBJEXT)
+systemd_update_done_OBJECTS = $(am_systemd_update_done_OBJECTS)
+systemd_update_done_DEPENDENCIES = libsystemd-internal.la \
+       libsystemd-shared.la
 am_systemd_update_utmp_OBJECTS =  \
        src/update-utmp/systemd_update_utmp-update-utmp.$(OBJEXT)
 systemd_update_utmp_OBJECTS = $(am_systemd_update_utmp_OBJECTS)
@@ -2785,6 +2899,9 @@ systemd_vconsole_setup_OBJECTS = $(am_systemd_vconsole_setup_OBJECTS)
 am_test_architecture_OBJECTS = src/test/test-architecture.$(OBJEXT)
 test_architecture_OBJECTS = $(am_test_architecture_OBJECTS)
 test_architecture_DEPENDENCIES = libsystemd-shared.la
+am_test_async_OBJECTS = src/test/test-async.$(OBJEXT)
+test_async_OBJECTS = $(am_test_async_OBJECTS)
+test_async_DEPENDENCIES = libsystemd-shared.la
 am__test_boot_timestamp_SOURCES_DIST =  \
        src/test/test-boot-timestamps.c
 @ENABLE_EFI_TRUE@am_test_boot_timestamp_OBJECTS =  \
@@ -2908,6 +3025,10 @@ test_bus_zero_copy_LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC \
 am_test_calendarspec_OBJECTS = src/test/test-calendarspec.$(OBJEXT)
 test_calendarspec_OBJECTS = $(am_test_calendarspec_OBJECTS)
 test_calendarspec_DEPENDENCIES = libsystemd-shared.la
+am_test_capability_OBJECTS = src/test/test-capability.$(OBJEXT)
+test_capability_OBJECTS = $(am_test_capability_OBJECTS)
+test_capability_DEPENDENCIES = libsystemd-shared.la \
+       libsystemd-capability.la
 am_test_catalog_OBJECTS =  \
        src/journal/test_catalog-test-catalog.$(OBJEXT)
 test_catalog_OBJECTS = $(am_test_catalog_OBJECTS)
@@ -2929,6 +3050,25 @@ am_test_cgroup_util_OBJECTS = src/test/test-cgroup-util.$(OBJEXT)
 test_cgroup_util_OBJECTS = $(am_test_cgroup_util_OBJECTS)
 test_cgroup_util_DEPENDENCIES = libsystemd-label.la \
        libsystemd-internal.la libsystemd-shared.la
+am__test_compress_SOURCES_DIST = src/journal/test-compress.c
+@HAVE_XZ_TRUE@am_test_compress_OBJECTS =  \
+@HAVE_XZ_TRUE@ src/journal/test-compress.$(OBJEXT)
+test_compress_OBJECTS = $(am_test_compress_OBJECTS)
+@HAVE_XZ_TRUE@test_compress_DEPENDENCIES =  \
+@HAVE_XZ_TRUE@ libsystemd-journal-internal.la \
+@HAVE_XZ_TRUE@ libsystemd-shared.la
+am_test_conf_files_OBJECTS = src/test/test-conf-files.$(OBJEXT)
+test_conf_files_OBJECTS = $(am_test_conf_files_OBJECTS)
+test_conf_files_DEPENDENCIES = libsystemd-shared.la
+am__test_coredump_vacuum_SOURCES_DIST =  \
+       src/journal/test-coredump-vacuum.c \
+       src/journal/coredump-vacuum.c src/journal/coredump-vacuum.h
+@ENABLE_COREDUMP_TRUE@am_test_coredump_vacuum_OBJECTS = src/journal/test-coredump-vacuum.$(OBJEXT) \
+@ENABLE_COREDUMP_TRUE@ src/journal/coredump-vacuum.$(OBJEXT)
+test_coredump_vacuum_OBJECTS = $(am_test_coredump_vacuum_OBJECTS)
+@ENABLE_COREDUMP_TRUE@test_coredump_vacuum_DEPENDENCIES =  \
+@ENABLE_COREDUMP_TRUE@ libsystemd-internal.la \
+@ENABLE_COREDUMP_TRUE@ libsystemd-shared.la
 am_test_daemon_OBJECTS = src/test/test-daemon.$(OBJEXT)
 test_daemon_OBJECTS = $(am_test_daemon_OBJECTS)
 test_daemon_DEPENDENCIES = libsystemd-internal.la libsystemd-shared.la
@@ -2949,6 +3089,16 @@ am_test_dhcp_option_OBJECTS =  \
 test_dhcp_option_OBJECTS = $(am_test_dhcp_option_OBJECTS)
 test_dhcp_option_DEPENDENCIES = libsystemd-network.la \
        libsystemd-internal.la libsystemd-shared.la
+am_test_dhcp_server_OBJECTS =  \
+       src/libsystemd-network/test-dhcp-server.$(OBJEXT)
+test_dhcp_server_OBJECTS = $(am_test_dhcp_server_OBJECTS)
+test_dhcp_server_DEPENDENCIES = libsystemd-network.la \
+       libsystemd-internal.la libsystemd-shared.la
+am_test_dhcp6_client_OBJECTS =  \
+       src/libsystemd-network/test-dhcp6-client.$(OBJEXT)
+test_dhcp6_client_OBJECTS = $(am_test_dhcp6_client_OBJECTS)
+test_dhcp6_client_DEPENDENCIES = libsystemd-network.la \
+       libsystemd-internal.la libsystemd-shared.la
 am_test_ellipsize_OBJECTS = src/test/test-ellipsize.$(OBJEXT)
 test_ellipsize_OBJECTS = $(am_test_ellipsize_OBJECTS)
 test_ellipsize_DEPENDENCIES = libsystemd-core.la
@@ -2964,6 +3114,9 @@ test_env_replace_DEPENDENCIES = libsystemd-shared.la
 am_test_event_OBJECTS = src/libsystemd/sd-event/test-event.$(OBJEXT)
 test_event_OBJECTS = $(am_test_event_OBJECTS)
 test_event_DEPENDENCIES = libsystemd-internal.la libsystemd-shared.la
+am_test_fdset_OBJECTS = src/test/test-fdset.$(OBJEXT)
+test_fdset_OBJECTS = $(am_test_fdset_OBJECTS)
+test_fdset_DEPENDENCIES = libsystemd-core.la
 am_test_fileio_OBJECTS = src/test/test-fileio.$(OBJEXT)
 test_fileio_OBJECTS = $(am_test_fileio_OBJECTS)
 test_fileio_DEPENDENCIES = libsystemd-core.la
@@ -2973,6 +3126,11 @@ test_hashmap_DEPENDENCIES = libsystemd-core.la
 am_test_hostname_OBJECTS = src/test/test-hostname.$(OBJEXT)
 test_hostname_OBJECTS = $(am_test_hostname_OBJECTS)
 test_hostname_DEPENDENCIES = libsystemd-core.la
+am_test_icmp6_rs_OBJECTS =  \
+       src/libsystemd-network/test-icmp6-rs.$(OBJEXT)
+test_icmp6_rs_OBJECTS = $(am_test_icmp6_rs_OBJECTS)
+test_icmp6_rs_DEPENDENCIES = libsystemd-network.la \
+       libsystemd-internal.la libsystemd-shared.la
 am_test_id128_OBJECTS = src/test/test-id128.$(OBJEXT)
 test_id128_OBJECTS = $(am_test_id128_OBJECTS)
 test_id128_DEPENDENCIES = libsystemd-internal.la libsystemd-shared.la
@@ -3115,6 +3273,9 @@ test_path_util_DEPENDENCIES = libsystemd-shared.la
 am_test_prioq_OBJECTS = src/test/test-prioq.$(OBJEXT)
 test_prioq_OBJECTS = $(am_test_prioq_OBJECTS)
 test_prioq_DEPENDENCIES = libsystemd-core.la
+am_test_ratelimit_OBJECTS = src/test/test-ratelimit.$(OBJEXT)
+test_ratelimit_OBJECTS = $(am_test_ratelimit_OBJECTS)
+test_ratelimit_DEPENDENCIES = libsystemd-shared.la
 am_test_replace_var_OBJECTS = src/test/test-replace-var.$(OBJEXT)
 test_replace_var_OBJECTS = $(am_test_replace_var_OBJECTS)
 test_replace_var_DEPENDENCIES = libsystemd-shared.la
@@ -3153,6 +3314,9 @@ test_sched_prio_LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC \
 am_test_sleep_OBJECTS = src/test/test-sleep.$(OBJEXT)
 test_sleep_OBJECTS = $(am_test_sleep_OBJECTS)
 test_sleep_DEPENDENCIES = libsystemd-core.la
+am_test_socket_util_OBJECTS = src/test/test-socket-util.$(OBJEXT)
+test_socket_util_OBJECTS = $(am_test_socket_util_OBJECTS)
+test_socket_util_DEPENDENCIES = libsystemd-core.la
 am__test_ssd_SOURCES_DIST = src/readahead/test-ssd.c \
        src/readahead/readahead-common.c \
        src/readahead/readahead-common.h
@@ -3194,7 +3358,7 @@ test_tmpfiles_DEPENDENCIES = libsystemd-shared.la
 am_test_udev_OBJECTS = src/test/test-udev.$(OBJEXT)
 test_udev_OBJECTS = $(am_test_udev_OBJECTS)
 test_udev_DEPENDENCIES = libudev-core.la $(am__DEPENDENCIES_1) \
-       $(am__DEPENDENCIES_1) $(am__DEPENDENCIES_1) $(am__append_99)
+       $(am__DEPENDENCIES_1) $(am__DEPENDENCIES_1) $(am__append_105)
 am_test_unit_file_OBJECTS =  \
        src/test/test_unit_file-test-unit-file.$(OBJEXT)
 test_unit_file_OBJECTS = $(am_test_unit_file_OBJECTS)
@@ -3281,7 +3445,8 @@ am__v_CCLD_0 = @echo "  CCLD    " $@;
 am__v_CCLD_1 = 
 SOURCES = $(_daemon_la_SOURCES) $(_journal_la_SOURCES) \
        $(_reader_la_SOURCES) $(id128_la_SOURCES) \
-       $(libgudev_1_0_la_SOURCES) $(nodist_libgudev_1_0_la_SOURCES) \
+       $(nodist_id128_la_SOURCES) $(libgudev_1_0_la_SOURCES) \
+       $(nodist_libgudev_1_0_la_SOURCES) \
        $(libnss_myhostname_la_SOURCES) $(libsystemd_acl_la_SOURCES) \
        $(libsystemd_capability_la_SOURCES) \
        $(libsystemd_core_la_SOURCES) \
@@ -3312,19 +3477,20 @@ SOURCES = $(_daemon_la_SOURCES) $(_journal_la_SOURCES) \
        $(login_la_SOURCES) $(pam_systemd_la_SOURCES) \
        $(accelerometer_SOURCES) $(ata_id_SOURCES) $(bootctl_SOURCES) \
        $(busctl_SOURCES) $(cdrom_id_SOURCES) $(collect_SOURCES) \
-       $(hostnamectl_SOURCES) $(journalctl_SOURCES) \
-       $(localectl_SOURCES) $(loginctl_SOURCES) $(machinectl_SOURCES) \
-       $(mtd_probe_SOURCES) $(scsi_id_SOURCES) $(systemctl_SOURCES) \
-       $(systemd_SOURCES) $(systemd_ac_power_SOURCES) \
-       $(systemd_activate_SOURCES) $(systemd_analyze_SOURCES) \
-       $(systemd_ask_password_SOURCES) $(systemd_backlight_SOURCES) \
-       $(systemd_binfmt_SOURCES) $(systemd_bootchart_SOURCES) \
-       $(systemd_bus_proxyd_SOURCES) $(systemd_cat_SOURCES) \
-       $(systemd_cgls_SOURCES) $(systemd_cgroups_agent_SOURCES) \
-       $(systemd_cgtop_SOURCES) $(systemd_coredump_SOURCES) \
-       $(systemd_coredumpctl_SOURCES) $(systemd_cryptsetup_SOURCES) \
+       $(coredumpctl_SOURCES) $(hostnamectl_SOURCES) \
+       $(journalctl_SOURCES) $(localectl_SOURCES) $(loginctl_SOURCES) \
+       $(machinectl_SOURCES) $(mtd_probe_SOURCES) $(scsi_id_SOURCES) \
+       $(systemctl_SOURCES) $(systemd_SOURCES) \
+       $(systemd_ac_power_SOURCES) $(systemd_activate_SOURCES) \
+       $(systemd_analyze_SOURCES) $(systemd_ask_password_SOURCES) \
+       $(systemd_backlight_SOURCES) $(systemd_binfmt_SOURCES) \
+       $(systemd_bootchart_SOURCES) $(systemd_bus_proxyd_SOURCES) \
+       $(systemd_cat_SOURCES) $(systemd_cgls_SOURCES) \
+       $(systemd_cgroups_agent_SOURCES) $(systemd_cgtop_SOURCES) \
+       $(systemd_coredump_SOURCES) $(systemd_cryptsetup_SOURCES) \
        $(systemd_cryptsetup_generator_SOURCES) \
-       $(systemd_dbus1_generator_SOURCES) $(systemd_delta_SOURCES) \
+       $(systemd_dbus1_generator_SOURCES) \
+       $(systemd_debug_generator_SOURCES) $(systemd_delta_SOURCES) \
        $(systemd_detect_virt_SOURCES) \
        $(systemd_efi_boot_generator_SOURCES) $(systemd_fsck_SOURCES) \
        $(systemd_fstab_generator_SOURCES) \
@@ -3340,7 +3506,8 @@ SOURCES = $(_daemon_la_SOURCES) $(_journal_la_SOURCES) \
        $(systemd_multi_seat_x_SOURCES) $(systemd_networkd_SOURCES) \
        $(systemd_networkd_wait_online_SOURCES) \
        $(systemd_notify_SOURCES) $(systemd_nspawn_SOURCES) \
-       $(systemd_quotacheck_SOURCES) $(systemd_random_seed_SOURCES) \
+       $(systemd_path_SOURCES) $(systemd_quotacheck_SOURCES) \
+       $(systemd_random_seed_SOURCES) \
        $(systemd_rc_local_generator_SOURCES) \
        $(systemd_readahead_SOURCES) $(systemd_remount_fs_SOURCES) \
        $(systemd_reply_password_SOURCES) $(systemd_resolved_SOURCES) \
@@ -3349,32 +3516,38 @@ SOURCES = $(_daemon_la_SOURCES) $(_journal_la_SOURCES) \
        $(systemd_shutdownd_SOURCES) $(systemd_sleep_SOURCES) \
        $(systemd_socket_proxyd_SOURCES) $(systemd_sysctl_SOURCES) \
        $(systemd_system_update_generator_SOURCES) \
-       $(systemd_sysv_generator_SOURCES) $(systemd_timedated_SOURCES) \
-       $(systemd_timesyncd_SOURCES) \
+       $(systemd_sysusers_SOURCES) $(systemd_sysv_generator_SOURCES) \
+       $(systemd_timedated_SOURCES) $(systemd_timesyncd_SOURCES) \
        $(nodist_systemd_timesyncd_SOURCES) \
        $(systemd_tmpfiles_SOURCES) \
        $(systemd_tty_ask_password_agent_SOURCES) \
-       $(systemd_udevd_SOURCES) $(systemd_update_utmp_SOURCES) \
+       $(systemd_udevd_SOURCES) $(systemd_update_done_SOURCES) \
+       $(systemd_update_utmp_SOURCES) \
        $(systemd_user_sessions_SOURCES) \
        $(systemd_vconsole_setup_SOURCES) $(test_architecture_SOURCES) \
-       $(test_boot_timestamp_SOURCES) $(test_bus_chat_SOURCES) \
-       $(test_bus_cleanup_SOURCES) $(test_bus_creds_SOURCES) \
-       $(test_bus_error_SOURCES) $(test_bus_gvariant_SOURCES) \
-       $(test_bus_introspect_SOURCES) $(test_bus_kernel_SOURCES) \
+       $(test_async_SOURCES) $(test_boot_timestamp_SOURCES) \
+       $(test_bus_chat_SOURCES) $(test_bus_cleanup_SOURCES) \
+       $(test_bus_creds_SOURCES) $(test_bus_error_SOURCES) \
+       $(test_bus_gvariant_SOURCES) $(test_bus_introspect_SOURCES) \
+       $(test_bus_kernel_SOURCES) \
        $(test_bus_kernel_benchmark_SOURCES) \
        $(test_bus_kernel_bloom_SOURCES) $(test_bus_marshal_SOURCES) \
        $(test_bus_match_SOURCES) $(test_bus_memfd_SOURCES) \
        $(test_bus_objects_SOURCES) $(test_bus_server_SOURCES) \
        $(test_bus_signature_SOURCES) $(test_bus_zero_copy_SOURCES) \
-       $(test_calendarspec_SOURCES) $(test_catalog_SOURCES) \
-       $(test_cgroup_SOURCES) $(test_cgroup_mask_SOURCES) \
-       $(test_cgroup_util_SOURCES) $(test_daemon_SOURCES) \
+       $(test_calendarspec_SOURCES) $(test_capability_SOURCES) \
+       $(test_catalog_SOURCES) $(test_cgroup_SOURCES) \
+       $(test_cgroup_mask_SOURCES) $(test_cgroup_util_SOURCES) \
+       $(test_compress_SOURCES) $(test_conf_files_SOURCES) \
+       $(test_coredump_vacuum_SOURCES) $(test_daemon_SOURCES) \
        $(test_date_SOURCES) $(test_device_nodes_SOURCES) \
        $(test_dhcp_client_SOURCES) $(test_dhcp_option_SOURCES) \
+       $(test_dhcp_server_SOURCES) $(test_dhcp6_client_SOURCES) \
        $(test_ellipsize_SOURCES) $(test_engine_SOURCES) \
        $(test_env_replace_SOURCES) $(test_event_SOURCES) \
-       $(test_fileio_SOURCES) $(test_hashmap_SOURCES) \
-       $(test_hostname_SOURCES) $(test_id128_SOURCES) \
+       $(test_fdset_SOURCES) $(test_fileio_SOURCES) \
+       $(test_hashmap_SOURCES) $(test_hostname_SOURCES) \
+       $(test_icmp6_rs_SOURCES) $(test_id128_SOURCES) \
        $(test_inhibit_SOURCES) $(test_install_SOURCES) \
        $(test_ipcrm_SOURCES) $(test_ipv4ll_SOURCES) \
        $(test_job_type_SOURCES) $(test_journal_SOURCES) \
@@ -3391,10 +3564,11 @@ SOURCES = $(_daemon_la_SOURCES) $(_journal_la_SOURCES) \
        $(test_mmap_cache_SOURCES) $(test_namespace_SOURCES) \
        $(test_network_SOURCES) $(test_ns_SOURCES) \
        $(test_path_util_SOURCES) $(test_prioq_SOURCES) \
-       $(test_replace_var_SOURCES) $(test_resolve_SOURCES) \
-       $(test_ring_SOURCES) $(test_rtnl_SOURCES) \
-       $(test_rtnl_manual_SOURCES) $(test_sched_prio_SOURCES) \
-       $(test_sleep_SOURCES) $(test_ssd_SOURCES) \
+       $(test_ratelimit_SOURCES) $(test_replace_var_SOURCES) \
+       $(test_resolve_SOURCES) $(test_ring_SOURCES) \
+       $(test_rtnl_SOURCES) $(test_rtnl_manual_SOURCES) \
+       $(test_sched_prio_SOURCES) $(test_sleep_SOURCES) \
+       $(test_socket_util_SOURCES) $(test_ssd_SOURCES) \
        $(test_strbuf_SOURCES) $(test_strip_tab_ansi_SOURCES) \
        $(test_strv_SOURCES) $(test_strxcpyx_SOURCES) \
        $(test_tables_SOURCES) $(test_time_SOURCES) \
@@ -3435,6 +3609,7 @@ DIST_SOURCES = $(am___daemon_la_SOURCES_DIST) \
        $(am__pam_systemd_la_SOURCES_DIST) $(accelerometer_SOURCES) \
        $(ata_id_SOURCES) $(am__bootctl_SOURCES_DIST) \
        $(busctl_SOURCES) $(cdrom_id_SOURCES) $(collect_SOURCES) \
+       $(am__coredumpctl_SOURCES_DIST) \
        $(am__hostnamectl_SOURCES_DIST) $(am__journalctl_SOURCES_DIST) \
        $(am__localectl_SOURCES_DIST) $(am__loginctl_SOURCES_DIST) \
        $(am__machinectl_SOURCES_DIST) $(mtd_probe_SOURCES) \
@@ -3447,11 +3622,11 @@ DIST_SOURCES = $(am___daemon_la_SOURCES_DIST) \
        $(systemd_bus_proxyd_SOURCES) $(systemd_cat_SOURCES) \
        $(systemd_cgls_SOURCES) $(systemd_cgroups_agent_SOURCES) \
        $(systemd_cgtop_SOURCES) $(am__systemd_coredump_SOURCES_DIST) \
-       $(am__systemd_coredumpctl_SOURCES_DIST) \
        $(am__systemd_cryptsetup_SOURCES_DIST) \
        $(am__systemd_cryptsetup_generator_SOURCES_DIST) \
        $(am__systemd_dbus1_generator_SOURCES_DIST) \
-       $(systemd_delta_SOURCES) $(systemd_detect_virt_SOURCES) \
+       $(systemd_debug_generator_SOURCES) $(systemd_delta_SOURCES) \
+       $(systemd_detect_virt_SOURCES) \
        $(am__systemd_efi_boot_generator_SOURCES_DIST) \
        $(systemd_fsck_SOURCES) $(systemd_fstab_generator_SOURCES) \
        $(systemd_getty_generator_SOURCES) \
@@ -3470,7 +3645,7 @@ DIST_SOURCES = $(am___daemon_la_SOURCES_DIST) \
        $(am__systemd_networkd_SOURCES_DIST) \
        $(am__systemd_networkd_wait_online_SOURCES_DIST) \
        $(systemd_notify_SOURCES) $(systemd_nspawn_SOURCES) \
-       $(am__systemd_quotacheck_SOURCES_DIST) \
+       $(systemd_path_SOURCES) $(am__systemd_quotacheck_SOURCES_DIST) \
        $(am__systemd_random_seed_SOURCES_DIST) \
        $(systemd_rc_local_generator_SOURCES) \
        $(am__systemd_readahead_SOURCES_DIST) \
@@ -3482,15 +3657,17 @@ DIST_SOURCES = $(am___daemon_la_SOURCES_DIST) \
        $(systemd_sleep_SOURCES) $(systemd_socket_proxyd_SOURCES) \
        $(systemd_sysctl_SOURCES) \
        $(systemd_system_update_generator_SOURCES) \
+       $(am__systemd_sysusers_SOURCES_DIST) \
        $(systemd_sysv_generator_SOURCES) \
        $(am__systemd_timedated_SOURCES_DIST) \
        $(am__systemd_timesyncd_SOURCES_DIST) \
        $(am__systemd_tmpfiles_SOURCES_DIST) \
        $(systemd_tty_ask_password_agent_SOURCES) \
-       $(systemd_udevd_SOURCES) $(systemd_update_utmp_SOURCES) \
+       $(systemd_udevd_SOURCES) $(systemd_update_done_SOURCES) \
+       $(systemd_update_utmp_SOURCES) \
        $(am__systemd_user_sessions_SOURCES_DIST) \
        $(am__systemd_vconsole_setup_SOURCES_DIST) \
-       $(test_architecture_SOURCES) \
+       $(test_architecture_SOURCES) $(test_async_SOURCES) \
        $(am__test_boot_timestamp_SOURCES_DIST) \
        $(test_bus_chat_SOURCES) $(test_bus_cleanup_SOURCES) \
        $(test_bus_creds_SOURCES) $(test_bus_error_SOURCES) \
@@ -3501,20 +3678,24 @@ DIST_SOURCES = $(am___daemon_la_SOURCES_DIST) \
        $(test_bus_match_SOURCES) $(test_bus_memfd_SOURCES) \
        $(test_bus_objects_SOURCES) $(test_bus_server_SOURCES) \
        $(test_bus_signature_SOURCES) $(test_bus_zero_copy_SOURCES) \
-       $(test_calendarspec_SOURCES) $(test_catalog_SOURCES) \
-       $(test_cgroup_SOURCES) $(test_cgroup_mask_SOURCES) \
-       $(test_cgroup_util_SOURCES) $(test_daemon_SOURCES) \
-       $(test_date_SOURCES) $(test_device_nodes_SOURCES) \
-       $(test_dhcp_client_SOURCES) $(test_dhcp_option_SOURCES) \
-       $(test_ellipsize_SOURCES) $(test_engine_SOURCES) \
-       $(test_env_replace_SOURCES) $(test_event_SOURCES) \
+       $(test_calendarspec_SOURCES) $(test_capability_SOURCES) \
+       $(test_catalog_SOURCES) $(test_cgroup_SOURCES) \
+       $(test_cgroup_mask_SOURCES) $(test_cgroup_util_SOURCES) \
+       $(am__test_compress_SOURCES_DIST) $(test_conf_files_SOURCES) \
+       $(am__test_coredump_vacuum_SOURCES_DIST) \
+       $(test_daemon_SOURCES) $(test_date_SOURCES) \
+       $(test_device_nodes_SOURCES) $(test_dhcp_client_SOURCES) \
+       $(test_dhcp_option_SOURCES) $(test_dhcp_server_SOURCES) \
+       $(test_dhcp6_client_SOURCES) $(test_ellipsize_SOURCES) \
+       $(test_engine_SOURCES) $(test_env_replace_SOURCES) \
+       $(test_event_SOURCES) $(test_fdset_SOURCES) \
        $(test_fileio_SOURCES) $(test_hashmap_SOURCES) \
-       $(test_hostname_SOURCES) $(test_id128_SOURCES) \
-       $(am__test_inhibit_SOURCES_DIST) $(test_install_SOURCES) \
-       $(test_ipcrm_SOURCES) $(test_ipv4ll_SOURCES) \
-       $(test_job_type_SOURCES) $(test_journal_SOURCES) \
-       $(test_journal_enum_SOURCES) $(test_journal_flush_SOURCES) \
-       $(test_journal_init_SOURCES) \
+       $(test_hostname_SOURCES) $(test_icmp6_rs_SOURCES) \
+       $(test_id128_SOURCES) $(am__test_inhibit_SOURCES_DIST) \
+       $(test_install_SOURCES) $(test_ipcrm_SOURCES) \
+       $(test_ipv4ll_SOURCES) $(test_job_type_SOURCES) \
+       $(test_journal_SOURCES) $(test_journal_enum_SOURCES) \
+       $(test_journal_flush_SOURCES) $(test_journal_init_SOURCES) \
        $(test_journal_interleaving_SOURCES) \
        $(test_journal_match_SOURCES) $(test_journal_send_SOURCES) \
        $(test_journal_stream_SOURCES) $(test_journal_syslog_SOURCES) \
@@ -3528,10 +3709,11 @@ DIST_SOURCES = $(am___daemon_la_SOURCES_DIST) \
        $(test_mmap_cache_SOURCES) $(test_namespace_SOURCES) \
        $(am__test_network_SOURCES_DIST) $(test_ns_SOURCES) \
        $(test_path_util_SOURCES) $(test_prioq_SOURCES) \
-       $(test_replace_var_SOURCES) $(test_resolve_SOURCES) \
-       $(test_ring_SOURCES) $(test_rtnl_SOURCES) \
-       $(test_rtnl_manual_SOURCES) $(test_sched_prio_SOURCES) \
-       $(test_sleep_SOURCES) $(am__test_ssd_SOURCES_DIST) \
+       $(test_ratelimit_SOURCES) $(test_replace_var_SOURCES) \
+       $(test_resolve_SOURCES) $(test_ring_SOURCES) \
+       $(test_rtnl_SOURCES) $(test_rtnl_manual_SOURCES) \
+       $(test_sched_prio_SOURCES) $(test_sleep_SOURCES) \
+       $(test_socket_util_SOURCES) $(am__test_ssd_SOURCES_DIST) \
        $(test_strbuf_SOURCES) $(test_strip_tab_ansi_SOURCES) \
        $(test_strv_SOURCES) $(test_strxcpyx_SOURCES) \
        $(test_tables_SOURCES) $(test_time_SOURCES) \
@@ -3581,7 +3763,7 @@ am__dist_bashcompletion_DATA_DIST = shell-completion/bash/busctl \
        shell-completion/bash/udevadm \
        shell-completion/bash/kernel-install \
        shell-completion/bash/bootctl \
-       shell-completion/bash/systemd-coredumpctl \
+       shell-completion/bash/coredumpctl \
        shell-completion/bash/hostnamectl \
        shell-completion/bash/localectl \
        shell-completion/bash/timedatectl \
@@ -3613,7 +3795,14 @@ am__dist_pamconf_DATA_DIST = src/login/systemd-user
 am__dist_pkgdata_DATA_DIST = src/locale/kbd-model-map
 am__dist_pkgsysconf_DATA_DIST = src/core/system.conf \
        src/core/user.conf src/journal/journald.conf \
-       src/bootchart/bootchart.conf src/login/logind.conf
+       src/journal/coredump.conf src/bootchart/bootchart.conf \
+       src/login/logind.conf
+am__dist_polkitpolicy_DATA_DIST =  \
+       src/hostname/org.freedesktop.hostname1.policy \
+       src/locale/org.freedesktop.locale1.policy \
+       src/timedate/org.freedesktop.timedate1.policy \
+       src/login/org.freedesktop.login1.policy \
+       src/core/org.freedesktop.systemd1.policy
 am__dist_systemunit_DATA_DIST = units/graphical.target \
        units/multi-user.target units/emergency.service \
        units/emergency.target units/sysinit.target units/basic.target \
@@ -3641,7 +3830,7 @@ am__dist_systemunit_DATA_DIST = units/graphical.target \
        units/systemd-ask-password-console.path \
        units/systemd-udevd-control.socket \
        units/systemd-udevd-kernel.socket units/system-update.target \
-       units/initrd-switch-root.target \
+       units/initrd-switch-root.target units/ldconfig.service \
        units/systemd-tmpfiles-clean.timer \
        units/systemd-bus-proxyd.socket units/systemd-journald.socket \
        units/systemd-journald-dev-log.socket \
@@ -3650,15 +3839,18 @@ am__dist_systemunit_DATA_DIST = units/graphical.target \
        units/proc-sys-fs-binfmt_misc.mount \
        units/systemd-readahead-drop.service \
        units/systemd-readahead-done.timer units/cryptsetup.target \
+       units/cryptsetup-pre.target \
        units/org.freedesktop.hostname1.busname \
        units/org.freedesktop.systemd1.busname \
        units/org.freedesktop.locale1.busname \
        units/org.freedesktop.timedate1.busname units/machine.slice \
        units/org.freedesktop.machine1.busname units/user.slice \
        units/org.freedesktop.login1.busname
+am__dist_sysusers_DATA_DIST = sysusers.d/systemd.conf
 am__dist_tmpfiles_DATA_DIST = tmpfiles.d/systemd.conf \
        tmpfiles.d/systemd-nologin.conf tmpfiles.d/tmp.conf \
-       tmpfiles.d/x11.conf tmpfiles.d/var.conf tmpfiles.d/legacy.conf
+       tmpfiles.d/x11.conf tmpfiles.d/var.conf tmpfiles.d/etc.conf \
+       tmpfiles.d/legacy.conf
 am__dist_udevrules_DATA_DIST = rules/42-usb-hid-pm.rules \
        rules/50-udev-default.rules rules/60-drm.rules \
        rules/60-keyboard.rules rules/60-persistent-storage-tape.rules \
@@ -3687,7 +3879,7 @@ am__dist_zshcompletion_DATA_DIST = shell-completion/zsh/_systemctl \
        shell-completion/zsh/_systemd \
        shell-completion/zsh/_systemd-tmpfiles \
        shell-completion/zsh/_bootctl \
-       shell-completion/zsh/_systemd-coredumpctl \
+       shell-completion/zsh/_coredumpctl \
        shell-completion/zsh/_hostnamectl \
        shell-completion/zsh/_localectl \
        shell-completion/zsh/_timedatectl \
@@ -3700,13 +3892,14 @@ DATA = $(dist_bashcompletion_DATA) $(dist_catalog_DATA) \
        $(dist_doc_DATA) $(dist_gatewayddocumentroot_DATA) \
        $(dist_network_DATA) $(dist_ntpunits_DATA) \
        $(dist_pamconf_DATA) $(dist_pkgdata_DATA) \
-       $(dist_pkgsysconf_DATA) $(dist_sysctl_DATA) \
-       $(dist_systemunit_DATA) $(dist_tmpfiles_DATA) \
-       $(dist_udevconf_DATA) $(dist_udevhwdb_DATA) \
-       $(dist_udevrules_DATA) $(dist_userunit_DATA) \
-       $(dist_zshcompletion_DATA) $(gir_DATA) \
-       $(nodist_pkgsysconf_DATA) $(nodist_polkitpolicy_DATA) \
-       $(nodist_rpmmacros_DATA) $(nodist_systemunit_DATA) \
+       $(dist_pkgsysconf_DATA) $(dist_polkitpolicy_DATA) \
+       $(dist_sysctl_DATA) $(dist_systempreset_DATA) \
+       $(dist_systemunit_DATA) $(dist_sysusers_DATA) \
+       $(dist_tmpfiles_DATA) $(dist_udevconf_DATA) \
+       $(dist_udevhwdb_DATA) $(dist_udevrules_DATA) \
+       $(dist_userunit_DATA) $(dist_zshcompletion_DATA) $(gir_DATA) \
+       $(nodist_pkgsysconf_DATA) $(nodist_rpmmacros_DATA) \
+       $(nodist_systemunit_DATA) $(nodist_sysusers_DATA) \
        $(nodist_udevrules_DATA) $(nodist_userunit_DATA) \
        $(noinst_DATA) $(pkgconfigdata_DATA) $(pkgconfiglib_DATA) \
        $(sharepkgconfig_DATA) $(sysctl_DATA) $(sysvinit_DATA) \
@@ -3721,8 +3914,8 @@ am__pkginclude_HEADERS_DIST = src/systemd/sd-login.h \
        src/systemd/sd-bus-vtable.h src/systemd/sd-memfd.h \
        src/systemd/sd-utf8.h src/systemd/sd-event.h \
        src/systemd/sd-rtnl.h src/systemd/sd-resolve.h \
-       src/systemd/sd-journal.h src/systemd/sd-messages.h \
-       src/systemd/_sd-common.h
+       src/systemd/sd-path.h src/systemd/sd-journal.h \
+       src/systemd/sd-messages.h src/systemd/_sd-common.h
 HEADERS = $(include_HEADERS) $(libgudev_include_HEADERS) \
        $(pkginclude_HEADERS)
 RECURSIVE_CLEAN_TARGETS = mostlyclean-recursive clean-recursive        \
@@ -4011,6 +4204,7 @@ ECHO_C = @ECHO_C@
 ECHO_N = @ECHO_N@
 ECHO_T = @ECHO_T@
 EGREP = @EGREP@
+ELFUTILS_LIBS = @ELFUTILS_LIBS@
 EXEEXT = @EXEEXT@
 FGREP = @FGREP@
 FIRMWARE_PATH = @FIRMWARE_PATH@
@@ -4135,6 +4329,7 @@ SYSTEM_SYSVINIT_PATH = @SYSTEM_SYSVINIT_PATH@
 SYSTEM_SYSVRCND_PATH = @SYSTEM_SYSVRCND_PATH@
 SYSTEM_UID_MAX = @SYSTEM_UID_MAX@
 TELINIT = @TELINIT@
+TTY_GID = @TTY_GID@
 USE_NLS = @USE_NLS@
 VERSION = @VERSION@
 XGETTEXT = @XGETTEXT@
@@ -4183,6 +4378,7 @@ infodir = @infodir@
 install_sh = @install_sh@
 intltool__v_merge_options_ = @intltool__v_merge_options_@
 intltool__v_merge_options_0 = @intltool__v_merge_options_0@
+intltool_found = @intltool_found@
 lcov_found = @lcov_found@
 libdir = @libdir@
 libexecdir = @libexecdir@
@@ -4217,15 +4413,15 @@ zshcompletiondir = @zshcompletiondir@
 ACLOCAL_AMFLAGS = -I m4 ${ACLOCAL_FLAGS}
 AM_MAKEFLAGS = --no-print-directory
 AUTOMAKE_OPTIONS = color-tests parallel-tests
-SUBDIRS = . po $(am__append_90) $(am__append_100)
-LIBUDEV_CURRENT = 5
-LIBUDEV_REVISION = 1
-LIBUDEV_AGE = 4
+SUBDIRS = . po $(am__append_96) $(am__append_106)
+LIBUDEV_CURRENT = 6
+LIBUDEV_REVISION = 0
+LIBUDEV_AGE = 5
 LIBGUDEV_CURRENT = 2
 LIBGUDEV_REVISION = 0
 LIBGUDEV_AGE = 2
 LIBSYSTEMD_CURRENT = 3
-LIBSYSTEMD_REVISION = 0
+LIBSYSTEMD_REVISION = 1
 LIBSYSTEMD_AGE = 3
 
 # The following four libraries only exist for compatibility reasons,
@@ -4257,7 +4453,10 @@ pkgsysconfdir = $(sysconfdir)/systemd
 userunitdir = $(prefix)/lib/systemd/user
 userpresetdir = $(prefix)/lib/systemd/user-preset
 tmpfilesdir = $(prefix)/lib/tmpfiles.d
+sysusersdir = $(prefix)/lib/sysusers.d
 sysctldir = $(prefix)/lib/sysctl.d
+binfmtdir = $(prefix)/lib/binfmt.d
+modulesloaddir = $(prefix)/lib/modules-load.d
 networkdir = $(rootprefix)/lib/systemd/network
 systemgeneratordir = $(rootlibexecdir)/system-generators
 usergeneratordir = $(prefix)/lib/systemd/user-generators
@@ -4284,23 +4483,24 @@ CLEANFILES = $(BUILT_SOURCES) units/console-shell.service.m4 \
        src/shared/errno-list.txt src/shared/errno-from-name.gperf \
        src/shared/af-list.txt src/shared/af-from-name.gperf \
        src/core/macros.systemd \
-       src/core/org.freedesktop.systemd1.policy.in \
+       src/core/org.freedesktop.systemd1.policy.in $(am__append_81) \
        src/libsystemd/libsystemd.sym \
        src/libsystemd/sd-bus/bus-error-mapping.c \
        src/libudev/libudev.pc docs/html/libudev docs/html/gudev \
        rules/99-systemd.rules src/udev/udev.pc \
        units/systemd-udevd.service units/systemd-udev-trigger.service \
        units/systemd-udev-settle.service \
+       units/systemd-udev-hwdb-update.service \
        src/udev/keyboard-keys-from-name.gperf \
        src/udev/keyboard-keys.txt src/udev/net/link-config-gperf.c \
-       $(am__append_103) $(am__append_105) \
-       src/journal/journald-gperf.c $(am__append_129) \
-       $(am__append_196) $(am__append_215) $(am__append_226) \
-       $(am__append_249) $(nodist_systemunit_DATA) \
+       $(am__append_109) $(am__append_111) \
+       src/journal/journald-gperf.c $(am__append_142) \
+       $(am__append_209) $(am__append_229) $(am__append_240) \
+       $(am__append_263) $(nodist_systemunit_DATA) \
        $(nodist_userunit_DATA) $(pkgconfigdata_DATA) \
        $(pkgconfiglib_DATA) $(nodist_polkitpolicy_DATA) \
-       $(am__append_258) defined undefined
-DISTCLEANFILES = $(am__append_257)
+       $(am__append_272) defined undefined
+DISTCLEANFILES = $(am__append_271)
 
 # Really, do not edit this file.
 EXTRA_DIST = units/getty@.service.m4 units/serial-getty@.service.m4 \
@@ -4329,17 +4529,19 @@ EXTRA_DIST = units/getty@.service.m4 units/serial-getty@.service.m4 \
        units/initrd-cleanup.service.in \
        units/initrd-udevadm-cleanup-db.service.in \
        units/initrd-switch-root.service.in \
-       units/systemd-nspawn@.service.in units/rc-local.service.in \
+       units/systemd-nspawn@.service.in \
+       units/systemd-update-done.service.in units/rc-local.service.in \
        units/halt-local.service.in man/binfmt.d.xml \
        man/bootchart.conf.xml man/bootctl.xml man/bootup.xml \
-       man/busctl.xml man/crypttab.xml man/daemon.xml man/halt.xml \
-       man/hostname.xml man/hostnamectl.xml man/journalctl.xml \
-       man/journald.conf.xml man/kernel-command-line.xml \
-       man/kernel-install.xml man/less-variables.xml \
-       man/libsystemd-pkgconfig.xml man/locale.conf.xml \
-       man/localectl.xml man/localtime.xml man/loginctl.xml \
-       man/logind.conf.xml man/machine-id.xml man/machine-info.xml \
-       man/machinectl.xml man/modules-load.d.xml \
+       man/busctl.xml man/coredump.conf.xml man/coredumpctl.xml \
+       man/crypttab.xml man/daemon.xml man/file-hierarchy.xml \
+       man/halt.xml man/hostname.xml man/hostnamectl.xml \
+       man/journalctl.xml man/journald.conf.xml \
+       man/kernel-command-line.xml man/kernel-install.xml \
+       man/less-variables.xml man/libsystemd-pkgconfig.xml \
+       man/locale.conf.xml man/localectl.xml man/localtime.xml \
+       man/loginctl.xml man/logind.conf.xml man/machine-id.xml \
+       man/machine-info.xml man/machinectl.xml man/modules-load.d.xml \
        man/nss-myhostname.xml man/os-release.xml man/pam_systemd.xml \
        man/resolved.conf.xml man/runlevel.xml man/sd-daemon.xml \
        man/sd-id128.xml man/sd-journal.xml man/sd-login.xml \
@@ -4380,9 +4582,9 @@ EXTRA_DIST = units/getty@.service.m4 units/serial-getty@.service.m4 \
        man/systemd-binfmt.service.xml man/systemd-bootchart.xml \
        man/systemd-bus-proxyd.xml man/systemd-bus-proxyd@.service.xml \
        man/systemd-cat.xml man/systemd-cgls.xml man/systemd-cgtop.xml \
-       man/systemd-coredumpctl.xml \
        man/systemd-cryptsetup-generator.xml \
-       man/systemd-cryptsetup@.service.xml man/systemd-delta.xml \
+       man/systemd-cryptsetup@.service.xml \
+       man/systemd-debug-generator.xml man/systemd-delta.xml \
        man/systemd-detect-virt.xml man/systemd-efi-boot-generator.xml \
        man/systemd-fsck@.service.xml man/systemd-fstab-generator.xml \
        man/systemd-getty-generator.xml \
@@ -4398,7 +4600,8 @@ EXTRA_DIST = units/getty@.service.m4 units/serial-getty@.service.m4 \
        man/systemd-modules-load.service.xml \
        man/systemd-networkd-wait-online.service.xml \
        man/systemd-networkd.service.xml man/systemd-notify.xml \
-       man/systemd-nspawn.xml man/systemd-quotacheck.service.xml \
+       man/systemd-nspawn.xml man/systemd-path.xml \
+       man/systemd-quotacheck.service.xml \
        man/systemd-random-seed.service.xml \
        man/systemd-readahead-replay.service.xml \
        man/systemd-remount-fs.service.xml \
@@ -4408,10 +4611,12 @@ EXTRA_DIST = units/getty@.service.m4 units/serial-getty@.service.m4 \
        man/systemd-socket-proxyd.xml man/systemd-suspend.service.xml \
        man/systemd-sysctl.service.xml \
        man/systemd-system-update-generator.xml \
-       man/systemd-system.conf.xml man/systemd-timedated.service.xml \
+       man/systemd-system.conf.xml man/systemd-sysusers.xml \
+       man/systemd-timedated.service.xml \
        man/systemd-timesyncd.service.xml man/systemd-tmpfiles.xml \
        man/systemd-tty-ask-password-agent.xml \
        man/systemd-udevd.service.xml \
+       man/systemd-update-done.service.xml \
        man/systemd-update-utmp.service.xml \
        man/systemd-user-sessions.service.xml \
        man/systemd-vconsole-setup.service.xml \
@@ -4427,9 +4632,9 @@ EXTRA_DIST = units/getty@.service.m4 units/serial-getty@.service.m4 \
        man/systemd.socket.xml man/systemd.special.xml \
        man/systemd.swap.xml man/systemd.target.xml \
        man/systemd.time.xml man/systemd.timer.xml \
-       man/systemd.unit.xml man/systemd.xml man/telinit.xml \
-       man/timedatectl.xml man/tmpfiles.d.xml man/udev.xml \
-       man/udevadm.xml man/user-system-options.xml \
+       man/systemd.unit.xml man/systemd.xml man/sysusers.d.xml \
+       man/telinit.xml man/timedatectl.xml man/tmpfiles.d.xml \
+       man/udev.xml man/udevadm.xml man/user-system-options.xml \
        man/vconsole.conf.xml $(am__append_57) $(XML_FILES) \
        $(HTML_FILES) $(HTML_ALIAS) $(man_MANS) \
        tools/make-man-index.py tools/make-directive-index.py \
@@ -4443,7 +4648,7 @@ EXTRA_DIST = units/getty@.service.m4 units/serial-getty@.service.m4 \
        units/kmod-static-nodes.service.in \
        units/systemd-tmpfiles-setup-dev.service.in \
        units/systemd-tmpfiles-setup.service.in \
-       units/systemd-tmpfiles-clean.service.in \
+       units/systemd-tmpfiles-clean.service.in $(am__append_80) \
        units/systemd-bus-proxyd@.service.in \
        src/libsystemd/libsystemd.sym.m4 \
        src/libsystemd/libsystemd.pc.in \
@@ -4454,6 +4659,7 @@ EXTRA_DIST = units/getty@.service.m4 units/serial-getty@.service.m4 \
        src/udev/udev.pc.in units/systemd-udevd.service.in \
        units/systemd-udev-trigger.service.in \
        units/systemd-udev-settle.service.in \
+       units/systemd-udev-hwdb-update.service.in \
        src/udev/net/link-config-gperf.gperf test/sys.tar.xz \
        test/udev-test.pl test/rules-test.sh test/rule-syntax-check.py \
        src/udev/scsi_id/README src/gudev/gudev-1.0.pc.in \
@@ -4463,6 +4669,7 @@ EXTRA_DIST = units/getty@.service.m4 units/serial-getty@.service.m4 \
        src/gudev/seed-example-enum.js src/gudev/seed-example.js \
        units/systemd-journald.service.in \
        units/systemd-journal-flush.service.in \
+       units/systemd-journal-catalog-update.service.in \
        src/journal/journald-gperf.gperf \
        units/systemd-journal-gatewayd.service.in \
        sysctl.d/50-coredump.conf.in units/systemd-binfmt.service.in \
@@ -4476,12 +4683,12 @@ EXTRA_DIST = units/getty@.service.m4 units/serial-getty@.service.m4 \
        units/systemd-rfkill@.service.in \
        units/systemd-hostnamed.service.in \
        units/systemd-localed.service.in \
-       units/systemd-timedated.service.in $(am__append_195) \
-       $(am__append_213) $(am__append_214) $(am__append_225) \
+       units/systemd-timedated.service.in $(am__append_208) \
+       $(am__append_227) $(am__append_228) $(am__append_239) \
        src/login/logind-gperf.gperf src/login/71-seat.rules.in \
        src/login/73-seat-late.rules.in \
        units/systemd-logind.service.in \
-       units/systemd-user-sessions.service.in $(am__append_251) \
+       units/systemd-user-sessions.service.in $(am__append_265) \
        src/compat-libs/libsystemd-journal.pc.in \
        src/compat-libs/libsystemd-login.pc.in \
        src/compat-libs/libsystemd-id128.pc.in \
@@ -4492,25 +4699,25 @@ EXTRA_DIST = units/getty@.service.m4 units/serial-getty@.service.m4 \
 BUILT_SOURCES = src/shared/errno-from-name.h \
        src/shared/errno-to-name.h src/shared/af-from-name.h \
        src/shared/af-to-name.h src/libsystemd/libsystemd.sym \
-       $(nodist_libudev_core_la_SOURCES) $(am__append_104) \
-       $(am__append_250) $(am__append_252) \
+       $(nodist_libudev_core_la_SOURCES) $(am__append_110) \
+       $(am__append_264) $(am__append_266) \
        $(test_libsystemd_sym_SOURCES) $(test_libudev_sym_SOURCES)
 INSTALL_EXEC_HOOKS = install-target-wants-hook \
        install-directories-hook install-aliases-hook \
-       systemd-detect-virt-install-hook $(am__append_83) \
-       bus-proxyd-install-hook libsystemd-install-hook \
-       libudev-install-hook $(am__append_106) journal-install-hook \
-       $(am__append_255)
-UNINSTALL_EXEC_HOOKS = $(am__append_84) bus-proxyd-uninstall-hook \
+       install-touch-usr-hook systemd-detect-virt-install-hook \
+       $(am__append_89) bus-proxyd-install-hook \
+       libsystemd-install-hook libudev-install-hook $(am__append_112) \
+       journal-install-hook $(am__append_269)
+UNINSTALL_EXEC_HOOKS = $(am__append_90) bus-proxyd-uninstall-hook \
        libsystemd-uninstall-hook libudev-uninstall-hook \
-       $(am__append_107) journal-uninstall-hook $(am__append_256)
+       $(am__append_113) journal-uninstall-hook $(am__append_270)
 INSTALL_DATA_HOOKS = units-install-hook hwdb-update-hook \
        catalog-update-hook
 UNINSTALL_DATA_HOOKS = units-uninstall-hook catalog-remove-hook
 DISTCLEAN_LOCAL_HOOKS = test-sys-distclean
 CLEAN_LOCAL_HOOKS = clean-sphinx
 pkginclude_HEADERS = src/systemd/sd-login.h src/systemd/sd-id128.h \
-       src/systemd/sd-daemon.h $(am__append_89) \
+       src/systemd/sd-daemon.h $(am__append_95) \
        src/systemd/sd-journal.h src/systemd/sd-messages.h \
        src/systemd/_sd-common.h
 
@@ -4535,14 +4742,14 @@ noinst_LTLIBRARIES = libsystemd-shared.la libsystemd-units.la \
        libsystemd-internal.la libsystemd-resolve.la \
        libsystemd-dump.la libsystemd-network.la libudev-internal.la \
        libudev-core.la libsystemd-journal-core.la \
-       libsystemd-journal-internal.la $(am__append_202) \
-       $(am__append_221) $(am__append_229)
-lib_LTLIBRARIES = libsystemd.la libudev.la $(am__append_101) \
-       $(am__append_200) $(am__append_253)
+       libsystemd-journal-internal.la $(am__append_216) \
+       $(am__append_235) $(am__append_243)
+lib_LTLIBRARIES = libsystemd.la libudev.la $(am__append_107) \
+       $(am__append_214) $(am__append_267)
 include_HEADERS = src/libudev/libudev.h
-noinst_DATA = $(am__append_53) $(am__append_55) $(am__append_91)
+noinst_DATA = $(am__append_53) $(am__append_55) $(am__append_97)
 pkgconfiglib_DATA = src/libsystemd/libsystemd.pc \
-       src/libudev/libudev.pc $(am__append_102) $(am__append_254)
+       src/libudev/libudev.pc $(am__append_108) $(am__append_268)
 polkitpolicy_in_in_files =  \
        src/core/org.freedesktop.systemd1.policy.in.in
 polkitpolicy_in_files =  \
@@ -4550,8 +4757,8 @@ polkitpolicy_in_files =  \
        src/locale/org.freedesktop.locale1.policy.in \
        src/timedate/org.freedesktop.timedate1.policy.in \
        src/login/org.freedesktop.login1.policy.in
-polkitpolicy_files = $(am__append_163) $(am__append_176) \
-       $(am__append_188) $(am__append_241)
+polkitpolicy_files = $(am__append_176) $(am__append_189) \
+       $(am__append_201) $(am__append_255)
 dist_udevrules_DATA = rules/42-usb-hid-pm.rules \
        rules/50-udev-default.rules rules/60-drm.rules \
        rules/60-keyboard.rules rules/60-persistent-storage-tape.rules \
@@ -4560,22 +4767,23 @@ dist_udevrules_DATA = rules/42-usb-hid-pm.rules \
        rules/60-persistent-storage.rules rules/64-btrfs.rules \
        rules/75-net-description.rules rules/75-tty-description.rules \
        rules/78-sound-card.rules rules/80-net-setup-link.rules \
-       rules/95-udev-late.rules $(am__append_93) $(am__append_95) \
+       rules/95-udev-late.rules $(am__append_99) $(am__append_101) \
        rules/60-cdrom_id.rules rules/60-persistent-v4l.rules \
        rules/61-accelerometer.rules rules/75-probe_mtd.rules \
-       $(am__append_247)
-nodist_udevrules_DATA = rules/99-systemd.rules $(am__append_248)
-nodist_pkgsysconf_DATA = $(am__append_199) $(am__append_219)
+       $(am__append_261)
+nodist_udevrules_DATA = rules/99-systemd.rules $(am__append_262)
+nodist_pkgsysconf_DATA = $(am__append_213) $(am__append_233)
 dist_pkgsysconf_DATA = src/core/system.conf src/core/user.conf \
-       src/journal/journald.conf $(am__append_144) $(am__append_240)
-dist_pkgdata_DATA = $(am__append_179)
+       src/journal/journald.conf $(am__append_135) $(am__append_157) \
+       $(am__append_254)
+dist_pkgdata_DATA = $(am__append_192)
 dist_dbuspolicy_DATA = src/core/org.freedesktop.systemd1.conf \
-       $(am__append_161) $(am__append_174) $(am__append_185) \
-       $(am__append_209) $(am__append_239)
+       $(am__append_174) $(am__append_187) $(am__append_198) \
+       $(am__append_223) $(am__append_253)
 dist_dbussystemservice_DATA =  \
-       src/core/org.freedesktop.systemd1.service $(am__append_162) \
-       $(am__append_175) $(am__append_184) $(am__append_208) \
-       $(am__append_238)
+       src/core/org.freedesktop.systemd1.service $(am__append_175) \
+       $(am__append_188) $(am__append_197) $(am__append_222) \
+       $(am__append_252)
 check_DATA = test/sys
 tests = test-job-type test-env-replace test-strbuf test-strv \
        test-path-util test-strxcpyx test-unit-name test-unit-file \
@@ -4584,26 +4792,28 @@ tests = test-job-type test-env-replace test-strbuf test-strv \
        test-sched-prio test-calendarspec test-strip-tab-ansi \
        test-cgroup-util test-prioq test-fileio test-time test-hashmap \
        test-list test-tables test-device-nodes test-xml \
-       test-architecture test-bus-marshal test-bus-signature \
-       test-bus-chat test-bus-cleanup test-bus-server test-bus-match \
-       test-bus-kernel test-bus-kernel-bloom \
-       test-bus-kernel-benchmark test-bus-memfd test-bus-zero-copy \
-       test-bus-introspect test-bus-objects test-bus-error \
-       test-bus-creds test-bus-gvariant test-event test-rtnl \
-       test-resolve test-dhcp-option test-dhcp-client test-ipv4ll \
+       test-architecture test-socket-util test-fdset test-conf-files \
+       test-capability test-async test-ratelimit test-bus-marshal \
+       test-bus-signature test-bus-chat test-bus-cleanup \
+       test-bus-server test-bus-match test-bus-kernel \
+       test-bus-kernel-bloom test-bus-kernel-benchmark test-bus-memfd \
+       test-bus-zero-copy test-bus-introspect test-bus-objects \
+       test-bus-error test-bus-creds test-bus-gvariant test-event \
+       test-rtnl test-resolve test-dhcp-option test-dhcp-client \
+       test-dhcp-server test-ipv4ll test-icmp6-rs test-dhcp6-client \
        test-id128 test-journal test-journal-send test-journal-syslog \
        test-journal-match test-journal-stream test-journal-init \
        test-journal-verify test-journal-interleaving \
        test-journal-flush test-mmap-cache test-catalog \
-       $(am__append_205) $(am__append_222) $(am__append_235) \
-       test-libsystemd-sym test-libudev-sym
+       $(am__append_121) $(am__append_219) $(am__append_236) \
+       $(am__append_249) test-libsystemd-sym test-libudev-sym
 
 # ------------------------------------------------------------------------------
 manual_tests = test-engine test-ns test-loopback test-hostname \
        test-daemon test-cgroup test-cgroup-mask test-install \
        test-watchdog test-log test-ipcrm $(am__append_62) \
        $(am__append_63) test-libudev test-udev test-journal-enum \
-       $(am__append_142) $(am__append_234)
+       $(am__append_138) $(am__append_155) $(am__append_248)
 AM_CPPFLAGS = \
        -include $(top_builddir)/config.h \
        -DPKGSYSCONFDIR=\"$(pkgsysconfdir)\" \
@@ -4635,6 +4845,8 @@ AM_CPPFLAGS = \
        -DPOLKIT_AGENT_BINARY_PATH=\"$(bindir)/pkttyagent\" \
        -DQUOTACHECK=\"$(QUOTACHECK)\" \
        -DKEXEC=\"$(KEXEC)\" \
+       -DLIBDIR=\"$(libdir)\" \
+       -DROOTLIBDIR=\"$(rootlibdir)\" \
        -I $(top_srcdir)/src \
        -I $(top_builddir)/src/shared \
        -I $(top_srcdir)/src/shared \
@@ -4661,50 +4873,53 @@ AM_CFLAGS = $(OUR_CFLAGS)
 AM_LDFLAGS = $(OUR_LDFLAGS)
 
 # ------------------------------------------------------------------------------
-INSTALL_DIRS = $(am__append_76) $(sysconfdir)/udev/rules.d \
-       $(sysconfdir)/udev/hwdb.d $(am__append_133) $(am__append_189) \
-       $(am__append_242) $(am__append_265) \
-       $(prefix)/lib/modules-load.d $(sysconfdir)/modules-load.d \
-       $(prefix)/lib/systemd/network $(sysconfdir)/systemd/network \
-       $(prefix)/lib/sysctl.d $(sysconfdir)/sysctl.d \
-       $(prefix)/lib/kernel/install.d $(sysconfdir)/kernel/install.d \
-       $(systemshutdowndir) $(systemsleepdir) $(systemgeneratordir) \
-       $(usergeneratordir) $(userunitdir) $(pkgsysconfdir)/system \
+INSTALL_DIRS = $(am__append_76) $(am__append_82) \
+       $(sysconfdir)/udev/rules.d $(sysconfdir)/udev/hwdb.d \
+       $(am__append_146) $(am__append_202) $(am__append_256) \
+       $(am__append_279) $(prefix)/lib/modules-load.d \
+       $(sysconfdir)/modules-load.d $(prefix)/lib/systemd/network \
+       $(sysconfdir)/systemd/network $(prefix)/lib/sysctl.d \
+       $(sysconfdir)/sysctl.d $(prefix)/lib/kernel/install.d \
+       $(sysconfdir)/kernel/install.d $(systemshutdowndir) \
+       $(systemsleepdir) $(systemgeneratordir) $(usergeneratordir) \
+       $(userunitdir) $(pkgsysconfdir)/system \
        $(pkgsysconfdir)/system/multi-user.target.wants \
        $(pkgsysconfdir)/system/getty.target.wants \
        $(pkgsysconfdir)/user $(dbussessionservicedir) \
        $(sysconfdir)/xdg/systemd
-RUNLEVEL1_TARGET_WANTS = $(am__append_259)
-RUNLEVEL2_TARGET_WANTS = $(am__append_260)
-RUNLEVEL3_TARGET_WANTS = $(am__append_261)
-RUNLEVEL4_TARGET_WANTS = $(am__append_262)
-RUNLEVEL5_TARGET_WANTS = $(am__append_263)
+RUNLEVEL1_TARGET_WANTS = $(am__append_273)
+RUNLEVEL2_TARGET_WANTS = $(am__append_274)
+RUNLEVEL3_TARGET_WANTS = $(am__append_275)
+RUNLEVEL4_TARGET_WANTS = $(am__append_276)
+RUNLEVEL5_TARGET_WANTS = $(am__append_277)
 SHUTDOWN_TARGET_WANTS = 
 LOCAL_FS_TARGET_WANTS = systemd-remount-fs.service tmp.mount
-MULTI_USER_TARGET_WANTS = $(am__append_243) getty.target \
+MULTI_USER_TARGET_WANTS = $(am__append_257) getty.target \
        systemd-ask-password-wall.path
 SYSINIT_TARGET_WANTS = $(am__append_66) $(am__append_68) \
-       $(am__append_73) systemd-udevd.service \
-       systemd-udev-trigger.service systemd-journald.service \
-       systemd-journal-flush.service $(am__append_134) \
-       $(am__append_137) $(am__append_149) $(am__append_157) \
-       systemd-update-utmp.service dev-hugepages.mount \
-       dev-mqueue.mount sys-kernel-config.mount \
-       sys-kernel-debug.mount sys-fs-fuse-connections.mount \
-       systemd-sysctl.service systemd-ask-password-console.path
+       $(am__append_73) $(am__append_79) systemd-udevd.service \
+       systemd-udev-trigger.service systemd-udev-hwdb-update.service \
+       systemd-journald.service systemd-journal-flush.service \
+       systemd-journal-catalog-update.service $(am__append_147) \
+       $(am__append_150) $(am__append_162) $(am__append_170) \
+       systemd-update-utmp.service systemd-update-done.service \
+       ldconfig.service dev-hugepages.mount dev-mqueue.mount \
+       sys-kernel-config.mount sys-kernel-debug.mount \
+       sys-fs-fuse-connections.mount systemd-sysctl.service \
+       systemd-ask-password-console.path
 SOCKETS_TARGET_WANTS = systemd-udevd-control.socket \
        systemd-udevd-kernel.socket systemd-journald.socket \
        systemd-journald-dev-log.socket systemd-initctl.socket \
        systemd-shutdownd.socket
-BUSNAMES_TARGET_WANTS = $(am__append_165) $(am__append_170) \
-       $(am__append_178) $(am__append_191) $(am__append_212) \
-       $(am__append_245)
+BUSNAMES_TARGET_WANTS = $(am__append_178) $(am__append_183) \
+       $(am__append_191) $(am__append_204) $(am__append_226) \
+       $(am__append_259)
 TIMERS_TARGET_WANTS = $(am__append_75)
 USER_SOCKETS_TARGET_WANTS = 
 USER_BUSNAMES_TARGET_WANTS = 
-SYSTEM_UNIT_ALIASES = $(am__append_164) $(am__append_177) \
-       $(am__append_190) $(am__append_211) $(am__append_244) \
-       $(am__append_264) graphical.target default.target \
+SYSTEM_UNIT_ALIASES = $(am__append_177) $(am__append_190) \
+       $(am__append_203) $(am__append_225) $(am__append_258) \
+       $(am__append_278) graphical.target default.target \
        reboot.target ctrl-alt-del.target getty@.service \
        autovt@.service
 USER_UNIT_ALIASES = $(systemunitdir)/shutdown.target shutdown.target \
@@ -4716,7 +4931,8 @@ USER_UNIT_ALIASES = $(systemunitdir)/shutdown.target shutdown.target \
        $(systemunitdir)/printer.target printer.target \
        $(systemunitdir)/sound.target sound.target \
        $(systemunitdir)/smartcard.target smartcard.target
-GENERAL_ALIASES = $(am__append_218) $(am__append_224) \
+GENERAL_ALIASES = $(am__append_141) $(am__append_212) \
+       $(am__append_232) $(am__append_238) \
        $(systemunitdir)/remote-fs.target \
        $(pkgsysconfdir)/system/multi-user.target.wants/remote-fs.target \
        $(systemunitdir)/getty@.service \
@@ -4760,9 +4976,9 @@ dist_bashcompletion_DATA = shell-completion/bash/busctl \
        shell-completion/bash/systemd-nspawn \
        shell-completion/bash/systemd-run \
        shell-completion/bash/udevadm \
-       shell-completion/bash/kernel-install $(am__append_79) \
-       $(am__append_127) $(am__append_167) $(am__append_181) \
-       $(am__append_193) $(am__append_204) $(am__append_232)
+       shell-completion/bash/kernel-install $(am__append_85) \
+       $(am__append_139) $(am__append_180) $(am__append_194) \
+       $(am__append_206) $(am__append_218) $(am__append_246)
 dist_zshcompletion_DATA = shell-completion/zsh/_systemctl \
        shell-completion/zsh/_journalctl shell-completion/zsh/_udevadm \
        shell-completion/zsh/_kernel-install \
@@ -4772,9 +4988,9 @@ dist_zshcompletion_DATA = shell-completion/zsh/_systemctl \
        shell-completion/zsh/_sd_hosts_or_user_at_host \
        shell-completion/zsh/_systemd-delta \
        shell-completion/zsh/_systemd $(am__append_74) \
-       $(am__append_80) $(am__append_128) $(am__append_168) \
-       $(am__append_182) $(am__append_194) $(am__append_210) \
-       $(am__append_233)
+       $(am__append_86) $(am__append_140) $(am__append_181) \
+       $(am__append_195) $(am__append_207) $(am__append_224) \
+       $(am__append_247)
 dist_sysctl_DATA = \
        sysctl.d/50-default.conf
 
@@ -4805,12 +5021,13 @@ dist_systemunit_DATA = units/graphical.target units/multi-user.target \
        units/systemd-ask-password-console.path \
        units/systemd-udevd-control.socket \
        units/systemd-udevd-kernel.socket units/system-update.target \
-       units/initrd-switch-root.target $(am__append_70) \
-       $(am__append_87) units/systemd-journald.socket \
-       units/systemd-journald-dev-log.socket $(am__append_123) \
-       $(am__append_131) $(am__append_140) $(am__append_156) \
-       $(am__append_160) $(am__append_169) $(am__append_172) \
-       $(am__append_187) $(am__append_207) $(am__append_237)
+       units/initrd-switch-root.target units/ldconfig.service \
+       $(am__append_70) $(am__append_93) \
+       units/systemd-journald.socket \
+       units/systemd-journald-dev-log.socket $(am__append_130) \
+       $(am__append_144) $(am__append_153) $(am__append_169) \
+       $(am__append_173) $(am__append_182) $(am__append_185) \
+       $(am__append_200) $(am__append_221) $(am__append_251)
 nodist_systemunit_DATA = units/getty@.service \
        units/serial-getty@.service units/console-shell.service \
        units/console-getty.service units/container-getty@.service \
@@ -4829,30 +5046,37 @@ nodist_systemunit_DATA = units/getty@.service \
        units/systemd-kexec.service units/systemd-fsck@.service \
        units/systemd-fsck-root.service units/systemd-udevd.service \
        units/systemd-udev-trigger.service \
-       units/systemd-udev-settle.service units/debug-shell.service \
-       units/initrd-parse-etc.service units/initrd-cleanup.service \
+       units/systemd-udev-settle.service \
+       units/systemd-udev-hwdb-update.service \
+       units/debug-shell.service units/initrd-parse-etc.service \
+       units/initrd-cleanup.service \
        units/initrd-udevadm-cleanup-db.service \
        units/initrd-switch-root.service units/systemd-nspawn@.service \
-       $(am__append_1) $(am__append_65) $(am__append_67) \
-       $(am__append_71) $(am__append_86) \
+       units/systemd-update-done.service $(am__append_1) \
+       $(am__append_65) $(am__append_67) $(am__append_71) \
+       $(am__append_78) $(am__append_92) \
        units/systemd-journald.service \
-       units/systemd-journal-flush.service $(am__append_124) \
-       $(am__append_132) $(am__append_136) $(am__append_141) \
-       $(am__append_146) units/quotaon.service $(am__append_148) \
-       $(am__append_151) $(am__append_153) $(am__append_159) \
-       $(am__append_171) $(am__append_186) $(am__append_198) \
-       $(am__append_206) $(am__append_217) $(am__append_223) \
-       $(am__append_236)
+       units/systemd-journal-flush.service \
+       units/systemd-journal-catalog-update.service $(am__append_131) \
+       $(am__append_145) $(am__append_149) $(am__append_154) \
+       $(am__append_159) units/quotaon.service $(am__append_161) \
+       $(am__append_164) $(am__append_166) $(am__append_172) \
+       $(am__append_184) $(am__append_199) $(am__append_211) \
+       $(am__append_220) $(am__append_231) $(am__append_237) \
+       $(am__append_250)
 dist_userunit_DATA = units/user/basic.target units/user/default.target \
-       units/user/exit.target $(am__append_88)
+       units/user/exit.target $(am__append_94)
 nodist_userunit_DATA = \
        units/user/systemd-exit.service
 
+dist_systempreset_DATA = \
+       system-preset/90-systemd.preset
+
 dist_doc_DATA = README NEWS LICENSE.LGPL2.1 LICENSE.GPL2 LICENSE.MIT \
        DISTRO_PORTING src/libsystemd/sd-bus/PORTING-DBUS1 \
        src/libsystemd/sd-bus/DIFFERENCES \
        src/libsystemd/sd-bus/GVARIANT-SERIALIZATION \
-       src/systemd/sd-shutdown.h $(am__append_138)
+       src/systemd/sd-shutdown.h $(am__append_151)
 
 # ------------------------------------------------------------------------------
 
@@ -4865,8 +5089,8 @@ dist_doc_DATA = README NEWS LICENSE.LGPL2.1 LICENSE.GPL2 LICENSE.MIT \
 # To make a man page conditional on a configure switch add
 # attribute conditional="ENABLE_WHAT" or conditional="WITH_WHAT"
 # to <refentry> element.
-MANPAGES = man/bootup.7 man/busctl.1 man/daemon.7 man/halt.8 \
-       man/hostname.5 man/journalctl.1 man/journald.conf.5 \
+MANPAGES = man/bootup.7 man/busctl.1 man/daemon.7 man/file-hierarchy.7 \
+       man/halt.8 man/hostname.5 man/journalctl.1 man/journald.conf.5 \
        man/kernel-command-line.7 man/kernel-install.8 \
        man/locale.conf.5 man/localtime.5 man/machine-id.5 \
        man/machine-info.5 man/os-release.5 man/runlevel.8 \
@@ -4886,22 +5110,25 @@ MANPAGES = man/bootup.7 man/busctl.1 man/daemon.7 man/halt.8 \
        man/systemd-activate.8 man/systemd-analyze.1 \
        man/systemd-ask-password-console.service.8 \
        man/systemd-ask-password.1 man/systemd-cat.1 \
-       man/systemd-cgls.1 man/systemd-cgtop.1 man/systemd-delta.1 \
+       man/systemd-cgls.1 man/systemd-cgtop.1 \
+       man/systemd-debug-generator.8 man/systemd-delta.1 \
        man/systemd-detect-virt.1 man/systemd-efi-boot-generator.8 \
        man/systemd-fsck@.service.8 man/systemd-fstab-generator.8 \
        man/systemd-getty-generator.8 man/systemd-gpt-auto-generator.8 \
        man/systemd-halt.service.8 man/systemd-inhibit.1 \
        man/systemd-initctl.service.8 man/systemd-journald.service.8 \
        man/systemd-machine-id-setup.1 man/systemd-notify.1 \
-       man/systemd-nspawn.1 man/systemd-remount-fs.service.8 \
-       man/systemd-run.1 man/systemd-shutdownd.service.8 \
-       man/systemd-sleep.conf.5 man/systemd-socket-proxyd.8 \
-       man/systemd-suspend.service.8 man/systemd-sysctl.service.8 \
+       man/systemd-nspawn.1 man/systemd-path.1 \
+       man/systemd-remount-fs.service.8 man/systemd-run.1 \
+       man/systemd-shutdownd.service.8 man/systemd-sleep.conf.5 \
+       man/systemd-socket-proxyd.8 man/systemd-suspend.service.8 \
+       man/systemd-sysctl.service.8 \
        man/systemd-system-update-generator.8 \
-       man/systemd-system.conf.5 man/systemd-tmpfiles.8 \
-       man/systemd-tty-ask-password-agent.1 \
-       man/systemd-udevd.service.8 man/systemd-update-utmp.service.8 \
-       man/systemd.1 man/systemd.automount.5 man/systemd.device.5 \
+       man/systemd-system.conf.5 man/systemd-sysusers.8 \
+       man/systemd-tmpfiles.8 man/systemd-tty-ask-password-agent.1 \
+       man/systemd-udevd.service.8 man/systemd-update-done.service.8 \
+       man/systemd-update-utmp.service.8 man/systemd.1 \
+       man/systemd.automount.5 man/systemd.device.5 \
        man/systemd.exec.5 man/systemd.journal-fields.7 \
        man/systemd.kill.5 man/systemd.link.5 man/systemd.mount.5 \
        man/systemd.path.5 man/systemd.preset.5 \
@@ -4910,8 +5137,8 @@ MANPAGES = man/bootup.7 man/busctl.1 man/daemon.7 man/halt.8 \
        man/systemd.snapshot.5 man/systemd.socket.5 \
        man/systemd.special.7 man/systemd.swap.5 man/systemd.target.5 \
        man/systemd.time.7 man/systemd.timer.5 man/systemd.unit.5 \
-       man/telinit.8 man/tmpfiles.d.5 man/udev.7 man/udevadm.8 \
-       $(am__append_3) $(am__append_5) $(am__append_7) \
+       man/sysusers.d.5 man/telinit.8 man/tmpfiles.d.5 man/udev.7 \
+       man/udevadm.8 $(am__append_3) $(am__append_5) $(am__append_7) \
        $(am__append_9) $(am__append_11) $(am__append_13) \
        $(am__append_15) $(am__append_17) $(am__append_19) \
        $(am__append_21) $(am__append_23) $(am__append_25) \
@@ -4965,18 +5192,21 @@ MANPAGES_ALIAS = man/SD_ALERT.3 man/SD_CRIT.3 man/SD_DEBUG.3 \
        man/systemd-fsck-root.service.8 man/systemd-fsck.8 \
        man/systemd-hibernate.service.8 \
        man/systemd-hybrid-sleep.service.8 man/systemd-initctl.8 \
-       man/systemd-initctl.socket.8 man/systemd-journald.8 \
+       man/systemd-initctl.socket.8 \
+       man/systemd-journald-dev-log.socket.8 man/systemd-journald.8 \
        man/systemd-journald.socket.8 man/systemd-kexec.service.8 \
        man/systemd-poweroff.service.8 man/systemd-reboot.service.8 \
        man/systemd-remount-fs.8 man/systemd-shutdown.8 \
        man/systemd-shutdownd.8 man/systemd-shutdownd.socket.8 \
        man/systemd-sleep.8 man/systemd-sysctl.8 \
+       man/systemd-sysusers.service.8 \
        man/systemd-tmpfiles-clean.service.8 \
        man/systemd-tmpfiles-clean.timer.8 \
        man/systemd-tmpfiles-setup-dev.service.8 \
        man/systemd-tmpfiles-setup.service.8 \
        man/systemd-udevd-control.socket.8 \
        man/systemd-udevd-kernel.socket.8 man/systemd-udevd.8 \
+       man/systemd-update-done.8 \
        man/systemd-update-utmp-runlevel.service.8 \
        man/systemd-update-utmp.8 man/systemd-user.conf.5 \
        $(am__append_4) $(am__append_6) $(am__append_8) \
@@ -5125,8 +5355,6 @@ libsystemd_shared_la_SOURCES = \
        src/shared/bus-label.c \
        src/shared/bus-label.h \
        src/shared/gpt.h \
-       src/shared/generator.h \
-       src/shared/generator.c \
        src/shared/clean-ipc.h \
        src/shared/clean-ipc.c \
        src/shared/login-shared.c \
@@ -5138,7 +5366,9 @@ libsystemd_shared_la_SOURCES = \
        src/shared/eventfd-util.c \
        src/shared/eventfd-util.h \
        src/shared/copy.c \
-       src/shared/copy.h
+       src/shared/copy.h \
+       src/shared/base-filesystem.c \
+       src/shared/base-filesystem.h
 
 nodist_libsystemd_shared_la_SOURCES = \
        src/shared/errno-from-name.h \
@@ -5148,7 +5378,8 @@ nodist_libsystemd_shared_la_SOURCES = \
 
 libsystemd_shared_la_CFLAGS = \
        $(AM_CFLAGS) \
-       $(SECCOMP_CFLAGS)
+       $(SECCOMP_CFLAGS) \
+       -pthread
 
 libsystemd_units_la_SOURCES = \
        src/shared/install.c \
@@ -5172,7 +5403,11 @@ libsystemd_label_la_SOURCES = \
        src/shared/fileio-label.c \
        src/shared/fileio-label.h \
        src/shared/dev-setup.c \
-       src/shared/dev-setup.h
+       src/shared/dev-setup.h \
+       src/shared/dropin.c \
+       src/shared/dropin.h \
+       src/shared/generator.h \
+       src/shared/generator.c
 
 libsystemd_label_la_CFLAGS = \
        $(AM_CFLAGS) \
@@ -5390,12 +5625,43 @@ test_utf8_SOURCES = \
 test_utf8_LDADD = \
        libsystemd-shared.la
 
+test_capability_SOURCES = \
+       src/test/test-capability.c
+
+test_capability_LDADD = \
+       libsystemd-shared.la \
+       libsystemd-capability.la
+
+test_async_SOURCES = \
+       src/test/test-async.c
+
+test_async_LDADD = \
+       libsystemd-shared.la
+
+test_fdset_SOURCES = \
+       src/test/test-fdset.c
+
+test_fdset_LDADD = \
+       libsystemd-core.la
+
+test_ratelimit_SOURCES = \
+       src/test/test-ratelimit.c
+
+test_ratelimit_LDADD = \
+       libsystemd-shared.la
+
 test_util_SOURCES = \
        src/test/test-util.c
 
 test_util_LDADD = \
        libsystemd-core.la
 
+test_socket_util_SOURCES = \
+       src/test/test-socket-util.c
+
+test_socket_util_LDADD = \
+       libsystemd-core.la
+
 test_ring_SOURCES = \
        src/test/test-ring.c
 
@@ -5631,6 +5897,12 @@ test_sched_prio_LDADD = \
        libsystemd-core.la \
        $(RT_LIBS)
 
+test_conf_files_SOURCES = \
+       src/test/test-conf-files.c
+
+test_conf_files_LDADD = \
+       libsystemd-shared.la
+
 coverage_dir = coverage
 coverage_opts = --base-directory $(srcdir) --directory $(builddir) --rc 'geninfo_adjust_src_path=$(abspath $(srcdir))=>$(abspath $(builddir))'
 
@@ -5666,6 +5938,15 @@ systemd_update_utmp_LDADD = \
        $(AUDIT_LIBS)
 
 
+# ------------------------------------------------------------------------------
+systemd_update_done_SOURCES = \
+       src/update-done/update-done.c
+
+systemd_update_done_LDADD = \
+       libsystemd-internal.la \
+       libsystemd-shared.la
+
+
 # ------------------------------------------------------------------------------
 systemd_shutdownd_SOURCES = \
        src/shutdownd/shutdownd.c
@@ -5719,7 +6000,26 @@ systemd_shutdown_LDADD = \
 @ENABLE_TMPFILES_TRUE@dist_tmpfiles_DATA = tmpfiles.d/systemd.conf \
 @ENABLE_TMPFILES_TRUE@ tmpfiles.d/systemd-nologin.conf \
 @ENABLE_TMPFILES_TRUE@ tmpfiles.d/tmp.conf tmpfiles.d/x11.conf \
-@ENABLE_TMPFILES_TRUE@ tmpfiles.d/var.conf $(am__append_72)
+@ENABLE_TMPFILES_TRUE@ tmpfiles.d/var.conf tmpfiles.d/etc.conf \
+@ENABLE_TMPFILES_TRUE@ $(am__append_72)
+
+# ------------------------------------------------------------------------------
+@ENABLE_SYSUSERS_TRUE@systemd_sysusers_SOURCES = \
+@ENABLE_SYSUSERS_TRUE@ src/sysusers/sysusers.c
+
+@ENABLE_SYSUSERS_TRUE@systemd_sysusers_LDADD = \
+@ENABLE_SYSUSERS_TRUE@ libsystemd-units.la \
+@ENABLE_SYSUSERS_TRUE@ libsystemd-label.la \
+@ENABLE_SYSUSERS_TRUE@ libsystemd-capability.la \
+@ENABLE_SYSUSERS_TRUE@ libsystemd-internal.la \
+@ENABLE_SYSUSERS_TRUE@ libsystemd-shared.la
+
+@ENABLE_SYSUSERS_TRUE@dist_sysusers_DATA = \
+@ENABLE_SYSUSERS_TRUE@ sysusers.d/systemd.conf
+
+@ENABLE_SYSUSERS_TRUE@nodist_sysusers_DATA = \
+@ENABLE_SYSUSERS_TRUE@ sysusers.d/basic.conf
+
 
 # ------------------------------------------------------------------------------
 systemd_machine_id_setup_SOURCES = \
@@ -5793,6 +6093,15 @@ systemd_getty_generator_LDADD = \
        libsystemd-shared.la
 
 
+# ------------------------------------------------------------------------------
+systemd_debug_generator_SOURCES = \
+       src/debug-generator/debug-generator.c
+
+systemd_debug_generator_LDADD = \
+       libsystemd-label.la \
+       libsystemd-shared.la
+
+
 # ------------------------------------------------------------------------------
 systemd_fstab_generator_SOURCES = \
        src/fstab-generator/fstab-generator.c \
@@ -5917,6 +6226,15 @@ systemd_notify_LDADD = \
        libsystemd-shared.la
 
 
+# ------------------------------------------------------------------------------
+systemd_path_SOURCES = \
+       src/path/path.c
+
+systemd_path_LDADD = \
+       libsystemd-internal.la \
+       libsystemd-shared.la
+
+
 # ------------------------------------------------------------------------------
 systemd_ask_password_SOURCES = \
        src/ask-password/ask-password.c
@@ -5966,7 +6284,7 @@ systemd_nspawn_CFLAGS = \
 
 systemd_nspawn_LDADD = libsystemd-label.la libsystemd-capability.la \
        libsystemd-internal.la libudev-internal.la \
-       libsystemd-shared.la $(BLKID_LIBS) $(am__append_85)
+       libsystemd-shared.la $(BLKID_LIBS) $(am__append_91)
 
 # ------------------------------------------------------------------------------
 systemd_run_SOURCES = \
@@ -6013,6 +6331,7 @@ libsystemd_internal_la_SOURCES = \
        src/systemd/sd-login.h \
        src/systemd/sd-id128.h \
        src/systemd/sd-daemon.h \
+       src/systemd/sd-path.h \
        src/libsystemd/sd-bus/sd-bus.c \
        src/libsystemd/sd-bus/bus-control.c \
        src/libsystemd/sd-bus/bus-control.h \
@@ -6066,7 +6385,8 @@ libsystemd_internal_la_SOURCES = \
        src/libsystemd/sd-rtnl/rtnl-util.c \
        src/libsystemd/sd-id128/sd-id128.c \
        src/libsystemd/sd-daemon/sd-daemon.c \
-       src/libsystemd/sd-login/sd-login.c
+       src/libsystemd/sd-login/sd-login.c \
+       src/libsystemd/sd-path/sd-path.c
 
 nodist_libsystemd_internal_la_SOURCES = \
        src/libsystemd/libsystemd.sym \
@@ -6336,15 +6656,18 @@ libsystemd_network_la_CFLAGS = \
 libsystemd_network_la_SOURCES = \
        src/systemd/sd-network.h \
        src/systemd/sd-dhcp-client.h \
+       src/systemd/sd-dhcp-server.h \
        src/systemd/sd-dhcp-lease.h \
        src/systemd/sd-ipv4ll.h \
        src/network/sd-network.c \
        src/network/network-util.h \
        src/libsystemd-network/sd-dhcp-client.c \
+       src/libsystemd-network/sd-dhcp-server.c \
        src/libsystemd-network/dhcp-network.c \
        src/libsystemd-network/dhcp-option.c \
        src/libsystemd-network/dhcp-packet.c \
        src/libsystemd-network/dhcp-internal.h \
+       src/libsystemd-network/dhcp-server-internal.h \
        src/libsystemd-network/dhcp-protocol.h \
        src/libsystemd-network/dhcp-lease-internal.h \
        src/libsystemd-network/sd-dhcp-lease.c \
@@ -6353,7 +6676,18 @@ libsystemd_network_la_SOURCES = \
        src/libsystemd-network/ipv4ll-packet.c \
        src/libsystemd-network/ipv4ll-internal.h \
        src/libsystemd-network/network-internal.c \
-       src/libsystemd-network/network-internal.h
+       src/libsystemd-network/network-internal.h \
+       src/systemd/sd-icmp6-nd.h \
+       src/systemd/sd-dhcp6-client.h \
+       src/systemd/sd-dhcp6-lease.h \
+       src/libsystemd-network/sd-icmp6-nd.c \
+       src/libsystemd-network/sd-dhcp6-client.c \
+       src/libsystemd-network/dhcp6-internal.h \
+       src/libsystemd-network/dhcp6-protocol.h \
+       src/libsystemd-network/dhcp6-network.c \
+       src/libsystemd-network/dhcp6-option.c \
+       src/libsystemd-network/dhcp6-lease-internal.h \
+       src/libsystemd-network/sd-dhcp6-lease.c
 
 libsystemd_network_la_LIBADD = \
        libudev-internal.la \
@@ -6384,6 +6718,14 @@ test_dhcp_client_LDADD = \
        libsystemd-internal.la \
        libsystemd-shared.la
 
+test_dhcp_server_SOURCES = \
+       src/libsystemd-network/test-dhcp-server.c
+
+test_dhcp_server_LDADD = \
+       libsystemd-network.la \
+       libsystemd-internal.la \
+       libsystemd-shared.la
+
 test_ipv4ll_SOURCES = \
        src/systemd/sd-ipv4ll.h \
        src/libsystemd-network/ipv4ll-internal.h \
@@ -6395,6 +6737,27 @@ test_ipv4ll_LDADD = \
        libsystemd-internal.la \
        libsystemd-shared.la
 
+test_icmp6_rs_SOURCES = \
+       src/systemd/sd-dhcp6-client.h \
+       src/systemd/sd-icmp6-nd.h \
+       src/libsystemd-network/dhcp6-internal.h \
+       src/libsystemd-network/test-icmp6-rs.c
+
+test_icmp6_rs_LDADD = \
+       libsystemd-network.la \
+       libsystemd-internal.la \
+       libsystemd-shared.la
+
+test_dhcp6_client_SOURCES = \
+       src/systemd/sd-dhcp6-client.h \
+       src/libsystemd-network/dhcp6-internal.h \
+       src/libsystemd-network/test-dhcp6-client.c
+
+test_dhcp6_client_LDADD = \
+       libsystemd-network.la \
+       libsystemd-internal.la \
+       libsystemd-shared.la
+
 libudev_la_SOURCES = \
        src/libudev/libudev.sym \
        src/libudev/libudev-private.h \
@@ -6466,8 +6829,8 @@ libudev_core_la_SOURCES = src/udev/udev.h src/udev/udev-event.c \
        src/udev/udev-builtin-path_id.c src/udev/udev-builtin-usb_id.c \
        src/udev/net/link-config.h src/udev/net/link-config.c \
        src/udev/net/ethtool-util.h src/udev/net/ethtool-util.c \
-       $(am__append_92) $(am__append_94) $(am__append_96) \
-       $(am__append_97)
+       $(am__append_98) $(am__append_100) $(am__append_102) \
+       $(am__append_103)
 nodist_libudev_core_la_SOURCES = \
        src/udev/keyboard-keys-from-name.h \
        src/udev/keyboard-keys-to-name.h \
@@ -6481,7 +6844,7 @@ libudev_core_la_CFLAGS = \
 libudev_core_la_LIBADD = libudev-internal.la libsystemd-label.la \
        libsystemd-internal.la libsystemd-network.la \
        libsystemd-shared.la $(BLKID_LIBS) $(KMOD_LIBS) \
-       $(am__append_98)
+       $(am__append_104)
 libudev_core_la_CPPFLAGS = \
        $(AM_CPPFLAGS) \
        -DFIRMWARE_PATH="$(FIRMWARE_PATH)"
@@ -6518,7 +6881,7 @@ test_udev_SOURCES = \
        src/test/test-udev.c
 
 test_udev_LDADD = libudev-core.la $(BLKID_LIBS) $(KMOD_LIBS) \
-       $(SELINUX_LIBS) $(am__append_99)
+       $(SELINUX_LIBS) $(am__append_105)
 
 # ------------------------------------------------------------------------------
 ata_id_SOURCES = \
@@ -6588,6 +6951,7 @@ accelerometer_LDADD = \
 @ENABLE_GUDEV_TRUE@    src/gudev/gudevenumerator.h
 
 @ENABLE_GUDEV_TRUE@libgudev_1_0_la_SOURCES = \
+@ENABLE_GUDEV_TRUE@    src/gudev/libgudev-1.0.sym \
 @ENABLE_GUDEV_TRUE@    src/gudev/gudevenums.h \
 @ENABLE_GUDEV_TRUE@    src/gudev/gudevenumtypes.h \
 @ENABLE_GUDEV_TRUE@    src/gudev/gudevenumtypes.h\
@@ -6628,8 +6992,9 @@ accelerometer_LDADD = \
 @ENABLE_GUDEV_TRUE@libgudev_1_0_la_LDFLAGS = \
 @ENABLE_GUDEV_TRUE@    $(AM_LDFLAGS) \
 @ENABLE_GUDEV_TRUE@    -version-info $(LIBGUDEV_CURRENT):$(LIBGUDEV_REVISION):$(LIBGUDEV_AGE) \
-@ENABLE_GUDEV_TRUE@    -export-dynamic -no-undefined \
-@ENABLE_GUDEV_TRUE@    -export-symbols-regex '^g_udev_.*'
+@ENABLE_GUDEV_TRUE@    -export-dynamic \
+@ENABLE_GUDEV_TRUE@    -no-undefined \
+@ENABLE_GUDEV_TRUE@    -Wl,--version-script=$(top_srcdir)/src/gudev/libgudev-1.0.sym
 
 @ENABLE_GUDEV_TRUE@@HAVE_INTROSPECTION_TRUE@src_gudev_GUdev_1_0_gir_INCLUDES = GObject-2.0
 @ENABLE_GUDEV_TRUE@@HAVE_INTROSPECTION_TRUE@src_gudev_GUdev_1_0_gir_CFLAGS = \
@@ -6721,18 +7086,18 @@ systemd_cat_LDADD = \
 @HAVE_MICROHTTPD_TRUE@systemd_journal_remote_LDADD =  \
 @HAVE_MICROHTTPD_TRUE@ libsystemd-internal.la \
 @HAVE_MICROHTTPD_TRUE@ libsystemd-journal-core.la \
-@HAVE_MICROHTTPD_TRUE@ $(MICROHTTPD_LIBS) $(am__append_109)
+@HAVE_MICROHTTPD_TRUE@ $(MICROHTTPD_LIBS) $(am__append_115)
 @HAVE_MICROHTTPD_TRUE@systemd_journal_remote_CFLAGS = \
 @HAVE_MICROHTTPD_TRUE@ $(AM_CFLAGS) \
 @HAVE_MICROHTTPD_TRUE@ $(MICROHTTPD_CFLAGS)
 
 
 # using _CFLAGS = in the conditional below would suppress AM_CFLAGS
-journalctl_CFLAGS = $(AM_CFLAGS) $(am__append_112)
-journalctl_SOURCES = src/journal/journalctl.c $(am__append_111)
+journalctl_CFLAGS = $(AM_CFLAGS) $(am__append_118)
+journalctl_SOURCES = src/journal/journalctl.c $(am__append_117)
 journalctl_LDADD = libsystemd-journal-internal.la \
        libsystemd-internal.la libsystemd-logs.la libsystemd-shared.la \
-       $(am__append_110) $(am__append_113)
+       $(am__append_116) $(am__append_119)
 test_journal_SOURCES = \
        src/journal/test-journal.c
 
@@ -6809,6 +7174,13 @@ test_catalog_CPPFLAGS = \
 test_catalog_LDADD = \
        libsystemd-journal-core.la
 
+@HAVE_XZ_TRUE@test_compress_SOURCES = \
+@HAVE_XZ_TRUE@ src/journal/test-compress.c
+
+@HAVE_XZ_TRUE@test_compress_LDADD = \
+@HAVE_XZ_TRUE@ libsystemd-journal-internal.la \
+@HAVE_XZ_TRUE@ libsystemd-shared.la
+
 libsystemd_journal_core_la_SOURCES = \
        src/journal/journald-kmsg.c \
        src/journal/journald-kmsg.h \
@@ -6834,7 +7206,7 @@ nodist_libsystemd_journal_core_la_SOURCES = \
 libsystemd_journal_core_la_LIBADD = libsystemd-journal-internal.la \
        libudev-internal.la libsystemd-capability.la \
        libsystemd-label.la libsystemd-internal.la \
-       libsystemd-shared.la $(am__append_114)
+       libsystemd-shared.la $(am__append_120)
 libsystemd_journal_internal_la_SOURCES = src/journal/sd-journal.c \
        src/systemd/sd-journal.h src/systemd/_sd-common.h \
        src/journal/journal-file.c src/journal/journal-file.h \
@@ -6844,13 +7216,13 @@ libsystemd_journal_internal_la_SOURCES = src/journal/sd-journal.c \
        src/journal/journal-send.c src/journal/journal-def.h \
        src/journal/compress.h src/journal/catalog.c \
        src/journal/catalog.h src/journal/mmap-cache.c \
-       src/journal/mmap-cache.h $(am__append_115) $(am__append_118)
+       src/journal/mmap-cache.h $(am__append_122) $(am__append_125)
 
 # using _CFLAGS = in the conditional below would suppress AM_CFLAGS
-libsystemd_journal_internal_la_CFLAGS = $(am__append_116) \
-       $(am__append_120)
-libsystemd_journal_internal_la_LIBADD = $(am__append_117) \
-       $(am__append_119)
+libsystemd_journal_internal_la_CFLAGS = $(AM_CFLAGS) $(am__append_123) \
+       $(am__append_127)
+libsystemd_journal_internal_la_LIBADD = $(am__append_124) \
+       $(am__append_126)
 dist_catalog_DATA = \
        catalog/systemd.fr.catalog \
        catalog/systemd.ru.catalog \
@@ -6870,7 +7242,7 @@ dist_catalog_DATA = \
 @HAVE_MICROHTTPD_TRUE@ libsystemd-journal-internal.la \
 @HAVE_MICROHTTPD_TRUE@ libsystemd-internal.la \
 @HAVE_MICROHTTPD_TRUE@ libsystemd-shared.la $(MICROHTTPD_LIBS) \
-@HAVE_MICROHTTPD_TRUE@ $(am__append_122)
+@HAVE_MICROHTTPD_TRUE@ $(am__append_129)
 @HAVE_MICROHTTPD_TRUE@systemd_journal_gatewayd_CFLAGS = \
 @HAVE_MICROHTTPD_TRUE@ $(AM_CFLAGS) \
 @HAVE_MICROHTTPD_TRUE@ $(MICROHTTPD_CFLAGS)
@@ -6896,23 +7268,34 @@ systemd_socket_proxyd_LDADD = \
 
 
 # ------------------------------------------------------------------------------
-@ENABLE_COREDUMP_TRUE@systemd_coredump_SOURCES = \
-@ENABLE_COREDUMP_TRUE@ src/journal/coredump.c
-
-@ENABLE_COREDUMP_TRUE@systemd_coredump_LDADD = \
+@ENABLE_COREDUMP_TRUE@systemd_coredump_SOURCES =  \
+@ENABLE_COREDUMP_TRUE@ src/journal/coredump.c \
+@ENABLE_COREDUMP_TRUE@ src/journal/coredump-vacuum.c \
+@ENABLE_COREDUMP_TRUE@ src/journal/coredump-vacuum.h \
+@ENABLE_COREDUMP_TRUE@ $(am__append_132)
+@ENABLE_COREDUMP_TRUE@systemd_coredump_LDADD =  \
 @ENABLE_COREDUMP_TRUE@ libsystemd-journal-internal.la \
 @ENABLE_COREDUMP_TRUE@ libsystemd-label.la \
 @ENABLE_COREDUMP_TRUE@ libsystemd-internal.la \
-@ENABLE_COREDUMP_TRUE@ libsystemd-shared.la
-
-@ENABLE_COREDUMP_TRUE@systemd_coredumpctl_SOURCES = \
+@ENABLE_COREDUMP_TRUE@ libsystemd-shared.la $(am__append_133) \
+@ENABLE_COREDUMP_TRUE@ $(am__append_136)
+@ENABLE_COREDUMP_TRUE@coredumpctl_SOURCES = \
 @ENABLE_COREDUMP_TRUE@ src/journal/coredumpctl.c
 
-@ENABLE_COREDUMP_TRUE@systemd_coredumpctl_LDADD = \
+@ENABLE_COREDUMP_TRUE@coredumpctl_LDADD = \
 @ENABLE_COREDUMP_TRUE@ libsystemd-journal-internal.la \
 @ENABLE_COREDUMP_TRUE@ libsystemd-internal.la \
 @ENABLE_COREDUMP_TRUE@ libsystemd-shared.la
 
+@ENABLE_COREDUMP_TRUE@test_coredump_vacuum_SOURCES = \
+@ENABLE_COREDUMP_TRUE@ src/journal/test-coredump-vacuum.c  \
+@ENABLE_COREDUMP_TRUE@ src/journal/coredump-vacuum.c \
+@ENABLE_COREDUMP_TRUE@ src/journal/coredump-vacuum.h
+
+@ENABLE_COREDUMP_TRUE@test_coredump_vacuum_LDADD = \
+@ENABLE_COREDUMP_TRUE@ libsystemd-internal.la \
+@ENABLE_COREDUMP_TRUE@ libsystemd-shared.la
+
 @ENABLE_COREDUMP_TRUE@sysctl_DATA = \
 @ENABLE_COREDUMP_TRUE@ sysctl.d/50-coredump.conf
 
@@ -7186,10 +7569,16 @@ systemd_socket_proxyd_LDADD = \
 @ENABLE_NETWORKD_TRUE@ src/network/networkd-netdev.c \
 @ENABLE_NETWORKD_TRUE@ src/network/networkd-tunnel.c \
 @ENABLE_NETWORKD_TRUE@ src/network/networkd-veth.c \
+@ENABLE_NETWORKD_TRUE@ src/network/networkd-vxlan.c \
+@ENABLE_NETWORKD_TRUE@ src/network/networkd-vlan.c \
+@ENABLE_NETWORKD_TRUE@ src/network/networkd-macvlan.c \
+@ENABLE_NETWORKD_TRUE@ src/network/networkd-dummy.c \
+@ENABLE_NETWORKD_TRUE@ src/network/networkd-tuntap.c \
 @ENABLE_NETWORKD_TRUE@ src/network/networkd-network.c \
 @ENABLE_NETWORKD_TRUE@ src/network/networkd-address.c \
 @ENABLE_NETWORKD_TRUE@ src/network/networkd-route.c \
-@ENABLE_NETWORKD_TRUE@ src/network/networkd-manager.c
+@ENABLE_NETWORKD_TRUE@ src/network/networkd-manager.c \
+@ENABLE_NETWORKD_TRUE@ src/network/networkd-address-pool.c
 
 @ENABLE_NETWORKD_TRUE@nodist_libsystemd_networkd_core_la_SOURCES = \
 @ENABLE_NETWORKD_TRUE@ src/network/networkd-network-gperf.c \
@@ -7259,12 +7648,12 @@ systemd_socket_proxyd_LDADD = \
 @ENABLE_LOGIND_TRUE@   src/login/logind-session-dbus.c \
 @ENABLE_LOGIND_TRUE@   src/login/logind-seat-dbus.c \
 @ENABLE_LOGIND_TRUE@   src/login/logind-user-dbus.c \
-@ENABLE_LOGIND_TRUE@   src/login/logind-acl.h $(am__append_227)
+@ENABLE_LOGIND_TRUE@   src/login/logind-acl.h $(am__append_241)
 @ENABLE_LOGIND_TRUE@libsystemd_logind_core_la_LIBADD =  \
 @ENABLE_LOGIND_TRUE@   libsystemd-label.la \
 @ENABLE_LOGIND_TRUE@   libsystemd-capability.la \
 @ENABLE_LOGIND_TRUE@   libsystemd-internal.la libudev-internal.la \
-@ENABLE_LOGIND_TRUE@   libsystemd-shared.la $(am__append_228)
+@ENABLE_LOGIND_TRUE@   libsystemd-shared.la $(am__append_242)
 @ENABLE_LOGIND_TRUE@systemd_user_sessions_SOURCES = \
 @ENABLE_LOGIND_TRUE@   src/login/user-sessions.c
 
@@ -7315,7 +7704,8 @@ systemd_socket_proxyd_LDADD = \
 @ENABLE_LOGIND_TRUE@   libsystemd-logind-core.la
 
 @ENABLE_LOGIND_TRUE@@HAVE_PAM_TRUE@pam_systemd_la_SOURCES = \
-@ENABLE_LOGIND_TRUE@@HAVE_PAM_TRUE@    src/login/pam-module.c
+@ENABLE_LOGIND_TRUE@@HAVE_PAM_TRUE@    src/login/pam_systemd.sym \
+@ENABLE_LOGIND_TRUE@@HAVE_PAM_TRUE@    src/login/pam_systemd.c
 
 @ENABLE_LOGIND_TRUE@@HAVE_PAM_TRUE@pam_systemd_la_CFLAGS = \
 @ENABLE_LOGIND_TRUE@@HAVE_PAM_TRUE@    $(AM_CFLAGS) \
@@ -7328,7 +7718,7 @@ systemd_socket_proxyd_LDADD = \
 @ENABLE_LOGIND_TRUE@@HAVE_PAM_TRUE@    -export-dynamic \
 @ENABLE_LOGIND_TRUE@@HAVE_PAM_TRUE@    -avoid-version \
 @ENABLE_LOGIND_TRUE@@HAVE_PAM_TRUE@    -shared \
-@ENABLE_LOGIND_TRUE@@HAVE_PAM_TRUE@    -export-symbols-regex '^pam_sm_.*'
+@ENABLE_LOGIND_TRUE@@HAVE_PAM_TRUE@    -Wl,--version-script=$(top_srcdir)/src/login/pam_systemd.sym
 
 @ENABLE_LOGIND_TRUE@@HAVE_PAM_TRUE@pam_systemd_la_LIBADD = \
 @ENABLE_LOGIND_TRUE@@HAVE_PAM_TRUE@    libsystemd-capability.la \
@@ -7378,10 +7768,12 @@ systemd_socket_proxyd_LDADD = \
 
 @HAVE_PYTHON_DEVEL_TRUE@id128_la_SOURCES = \
 @HAVE_PYTHON_DEVEL_TRUE@       src/python-systemd/id128.c \
-@HAVE_PYTHON_DEVEL_TRUE@       src/python-systemd/id128-constants.h \
 @HAVE_PYTHON_DEVEL_TRUE@       src/python-systemd/pyutil.c \
 @HAVE_PYTHON_DEVEL_TRUE@       src/python-systemd/pyutil.h
 
+@HAVE_PYTHON_DEVEL_TRUE@nodist_id128_la_SOURCES = \
+@HAVE_PYTHON_DEVEL_TRUE@       src/python-systemd/id128-constants.h
+
 @HAVE_PYTHON_DEVEL_TRUE@id128_la_CFLAGS = \
 @HAVE_PYTHON_DEVEL_TRUE@       $(AM_CFLAGS) \
 @HAVE_PYTHON_DEVEL_TRUE@       -fvisibility=default \
@@ -7558,6 +7950,7 @@ substitutions = \
        '|udevrulesdir=$(udevrulesdir)|' \
        '|catalogdir=$(catalogdir)|' \
        '|tmpfilesdir=$(tmpfilesdir)|' \
+       '|sysusersdir=$(sysusersdir)|' \
        '|sysctldir=$(sysctldir)|' \
        '|systemgeneratordir=$(systemgeneratordir)|' \
        '|usergeneratordir=$(usergeneratordir)|' \
@@ -7589,14 +7982,19 @@ substitutions = \
        '|NTP_SERVERS=$(NTP_SERVERS)|' \
        '|DNS_SERVERS=$(DNS_SERVERS)|' \
        '|systemuidmax=$(SYSTEM_UID_MAX)|' \
-       '|systemgidmax=$(SYSTEM_GID_MAX)|'
+       '|systemgidmax=$(SYSTEM_GID_MAX)|' \
+       '|TTY_GID=$(TTY_GID)|' \
+       '|systemsleepdir=$(systemsleepdir)|' \
+       '|systemshutdowndir=$(systemshutdowndir)|' \
+       '|binfmtdir=$(binfmtdir)|' \
+       '|modulesloaddir=$(modulesloaddir)|'
 
 SED_PROCESS = \
        $(AM_V_GEN)$(MKDIR_P) $(dir $@) && \
        $(SED) $(subst '|,-e 's|@,$(subst =,\@|,$(subst |',|g',$(substitutions)))) \
                < $< > $@
 
-@ENABLE_POLKIT_TRUE@nodist_polkitpolicy_DATA = \
+@ENABLE_POLKIT_TRUE@dist_polkitpolicy_DATA = \
 @ENABLE_POLKIT_TRUE@   $(polkitpolicy_files) \
 @ENABLE_POLKIT_TRUE@   $(polkitpolicy_in_in_files:.policy.in.in=.policy)
 
@@ -7633,8 +8031,8 @@ DISTCHECK_CONFIGURE_FLAGS =  \
        --with-pamlibdir=$$dc_install_base/$(pamlibdir) \
        --with-pamconfdir=$$dc_install_base/$(pamconfdir) \
        --with-rootprefix=$$dc_install_base --disable-split-usr \
-       --enable-kdbus --enable-compat-libs $(am__append_266) \
-       $(am__append_267) $(am__append_268)
+       --enable-kdbus --enable-compat-libs $(am__append_280) \
+       $(am__append_281) $(am__append_282) $(am__append_283)
 www_target = www.freedesktop.org:/srv/www.freedesktop.org/www/software/systemd
 OBJECT_VARIABLES := $(filter %_OBJECTS,$(.VARIABLES))
 ALL_OBJECTS := $(foreach v,$(OBJECT_VARIABLES),$($(v)))
@@ -8188,6 +8586,15 @@ src/libsystemd/sd-login/$(DEPDIR)/$(am__dirstamp):
 src/libsystemd/sd-login/libsystemd_internal_la-sd-login.lo:  \
        src/libsystemd/sd-login/$(am__dirstamp) \
        src/libsystemd/sd-login/$(DEPDIR)/$(am__dirstamp)
+src/libsystemd/sd-path/$(am__dirstamp):
+       @$(MKDIR_P) src/libsystemd/sd-path
+       @: > src/libsystemd/sd-path/$(am__dirstamp)
+src/libsystemd/sd-path/$(DEPDIR)/$(am__dirstamp):
+       @$(MKDIR_P) src/libsystemd/sd-path/$(DEPDIR)
+       @: > src/libsystemd/sd-path/$(DEPDIR)/$(am__dirstamp)
+src/libsystemd/sd-path/libsystemd_internal_la-sd-path.lo:  \
+       src/libsystemd/sd-path/$(am__dirstamp) \
+       src/libsystemd/sd-path/$(DEPDIR)/$(am__dirstamp)
 src/libsystemd/sd-bus/libsystemd_internal_la-bus-error-mapping.lo:  \
        src/libsystemd/sd-bus/$(am__dirstamp) \
        src/libsystemd/sd-bus/$(DEPDIR)/$(am__dirstamp)
@@ -8280,6 +8687,11 @@ src/shared/libsystemd_label_la-fileio-label.lo:  \
 src/shared/libsystemd_label_la-dev-setup.lo:  \
        src/shared/$(am__dirstamp) \
        src/shared/$(DEPDIR)/$(am__dirstamp)
+src/shared/libsystemd_label_la-dropin.lo: src/shared/$(am__dirstamp) \
+       src/shared/$(DEPDIR)/$(am__dirstamp)
+src/shared/libsystemd_label_la-generator.lo:  \
+       src/shared/$(am__dirstamp) \
+       src/shared/$(DEPDIR)/$(am__dirstamp)
 
 libsystemd-label.la: $(libsystemd_label_la_OBJECTS) $(libsystemd_label_la_DEPENDENCIES) $(EXTRA_libsystemd_label_la_DEPENDENCIES) 
        $(AM_V_CCLD)$(libsystemd_label_la_LINK)  $(libsystemd_label_la_OBJECTS) $(libsystemd_label_la_LIBADD) $(LIBS)
@@ -8361,6 +8773,9 @@ src/libsystemd-network/$(DEPDIR)/$(am__dirstamp):
 src/libsystemd-network/libsystemd_network_la-sd-dhcp-client.lo:  \
        src/libsystemd-network/$(am__dirstamp) \
        src/libsystemd-network/$(DEPDIR)/$(am__dirstamp)
+src/libsystemd-network/libsystemd_network_la-sd-dhcp-server.lo:  \
+       src/libsystemd-network/$(am__dirstamp) \
+       src/libsystemd-network/$(DEPDIR)/$(am__dirstamp)
 src/libsystemd-network/libsystemd_network_la-dhcp-network.lo:  \
        src/libsystemd-network/$(am__dirstamp) \
        src/libsystemd-network/$(DEPDIR)/$(am__dirstamp)
@@ -8385,6 +8800,21 @@ src/libsystemd-network/libsystemd_network_la-ipv4ll-packet.lo:  \
 src/libsystemd-network/libsystemd_network_la-network-internal.lo:  \
        src/libsystemd-network/$(am__dirstamp) \
        src/libsystemd-network/$(DEPDIR)/$(am__dirstamp)
+src/libsystemd-network/libsystemd_network_la-sd-icmp6-nd.lo:  \
+       src/libsystemd-network/$(am__dirstamp) \
+       src/libsystemd-network/$(DEPDIR)/$(am__dirstamp)
+src/libsystemd-network/libsystemd_network_la-sd-dhcp6-client.lo:  \
+       src/libsystemd-network/$(am__dirstamp) \
+       src/libsystemd-network/$(DEPDIR)/$(am__dirstamp)
+src/libsystemd-network/libsystemd_network_la-dhcp6-network.lo:  \
+       src/libsystemd-network/$(am__dirstamp) \
+       src/libsystemd-network/$(DEPDIR)/$(am__dirstamp)
+src/libsystemd-network/libsystemd_network_la-dhcp6-option.lo:  \
+       src/libsystemd-network/$(am__dirstamp) \
+       src/libsystemd-network/$(DEPDIR)/$(am__dirstamp)
+src/libsystemd-network/libsystemd_network_la-sd-dhcp6-lease.lo:  \
+       src/libsystemd-network/$(am__dirstamp) \
+       src/libsystemd-network/$(DEPDIR)/$(am__dirstamp)
 
 libsystemd-network.la: $(libsystemd_network_la_OBJECTS) $(libsystemd_network_la_DEPENDENCIES) $(EXTRA_libsystemd_network_la_DEPENDENCIES) 
        $(AM_V_CCLD)$(libsystemd_network_la_LINK)  $(libsystemd_network_la_OBJECTS) $(libsystemd_network_la_LIBADD) $(LIBS)
@@ -8400,6 +8830,21 @@ src/network/libsystemd_networkd_core_la-networkd-tunnel.lo:  \
 src/network/libsystemd_networkd_core_la-networkd-veth.lo:  \
        src/network/$(am__dirstamp) \
        src/network/$(DEPDIR)/$(am__dirstamp)
+src/network/libsystemd_networkd_core_la-networkd-vxlan.lo:  \
+       src/network/$(am__dirstamp) \
+       src/network/$(DEPDIR)/$(am__dirstamp)
+src/network/libsystemd_networkd_core_la-networkd-vlan.lo:  \
+       src/network/$(am__dirstamp) \
+       src/network/$(DEPDIR)/$(am__dirstamp)
+src/network/libsystemd_networkd_core_la-networkd-macvlan.lo:  \
+       src/network/$(am__dirstamp) \
+       src/network/$(DEPDIR)/$(am__dirstamp)
+src/network/libsystemd_networkd_core_la-networkd-dummy.lo:  \
+       src/network/$(am__dirstamp) \
+       src/network/$(DEPDIR)/$(am__dirstamp)
+src/network/libsystemd_networkd_core_la-networkd-tuntap.lo:  \
+       src/network/$(am__dirstamp) \
+       src/network/$(DEPDIR)/$(am__dirstamp)
 src/network/libsystemd_networkd_core_la-networkd-network.lo:  \
        src/network/$(am__dirstamp) \
        src/network/$(DEPDIR)/$(am__dirstamp)
@@ -8412,6 +8857,9 @@ src/network/libsystemd_networkd_core_la-networkd-route.lo:  \
 src/network/libsystemd_networkd_core_la-networkd-manager.lo:  \
        src/network/$(am__dirstamp) \
        src/network/$(DEPDIR)/$(am__dirstamp)
+src/network/libsystemd_networkd_core_la-networkd-address-pool.lo:  \
+       src/network/$(am__dirstamp) \
+       src/network/$(DEPDIR)/$(am__dirstamp)
 src/network/libsystemd_networkd_core_la-networkd-network-gperf.lo:  \
        src/network/$(am__dirstamp) \
        src/network/$(DEPDIR)/$(am__dirstamp)
@@ -8580,9 +9028,6 @@ src/shared/libsystemd_shared_la-condition-util.lo:  \
 src/shared/libsystemd_shared_la-bus-label.lo:  \
        src/shared/$(am__dirstamp) \
        src/shared/$(DEPDIR)/$(am__dirstamp)
-src/shared/libsystemd_shared_la-generator.lo:  \
-       src/shared/$(am__dirstamp) \
-       src/shared/$(DEPDIR)/$(am__dirstamp)
 src/shared/libsystemd_shared_la-clean-ipc.lo:  \
        src/shared/$(am__dirstamp) \
        src/shared/$(DEPDIR)/$(am__dirstamp)
@@ -8598,6 +9043,9 @@ src/shared/libsystemd_shared_la-eventfd-util.lo:  \
        src/shared/$(DEPDIR)/$(am__dirstamp)
 src/shared/libsystemd_shared_la-copy.lo: src/shared/$(am__dirstamp) \
        src/shared/$(DEPDIR)/$(am__dirstamp)
+src/shared/libsystemd_shared_la-base-filesystem.lo:  \
+       src/shared/$(am__dirstamp) \
+       src/shared/$(DEPDIR)/$(am__dirstamp)
 
 libsystemd-shared.la: $(libsystemd_shared_la_OBJECTS) $(libsystemd_shared_la_DEPENDENCIES) $(EXTRA_libsystemd_shared_la_DEPENDENCIES) 
        $(AM_V_CCLD)$(libsystemd_shared_la_LINK)  $(libsystemd_shared_la_OBJECTS) $(libsystemd_shared_la_LIBADD) $(LIBS)
@@ -8702,6 +9150,9 @@ src/libsystemd/sd-daemon/libsystemd_la-sd-daemon.lo:  \
 src/libsystemd/sd-login/libsystemd_la-sd-login.lo:  \
        src/libsystemd/sd-login/$(am__dirstamp) \
        src/libsystemd/sd-login/$(DEPDIR)/$(am__dirstamp)
+src/libsystemd/sd-path/libsystemd_la-sd-path.lo:  \
+       src/libsystemd/sd-path/$(am__dirstamp) \
+       src/libsystemd/sd-path/$(DEPDIR)/$(am__dirstamp)
 src/libsystemd/sd-resolve/libsystemd_la-sd-resolve.lo:  \
        src/libsystemd/sd-resolve/$(am__dirstamp) \
        src/libsystemd/sd-resolve/$(DEPDIR)/$(am__dirstamp)
@@ -8869,7 +9320,7 @@ src/python-systemd/login_la-pyutil.lo:  \
 
 login.la: $(login_la_OBJECTS) $(login_la_DEPENDENCIES) $(EXTRA_login_la_DEPENDENCIES) 
        $(AM_V_CCLD)$(login_la_LINK) $(am_login_la_rpath) $(login_la_OBJECTS) $(login_la_LIBADD) $(LIBS)
-src/login/pam_systemd_la-pam-module.lo: src/login/$(am__dirstamp) \
+src/login/pam_systemd_la-pam_systemd.lo: src/login/$(am__dirstamp) \
        src/login/$(DEPDIR)/$(am__dirstamp)
 
 pam_systemd.la: $(pam_systemd_la_OBJECTS) $(pam_systemd_la_DEPENDENCIES) $(EXTRA_pam_systemd_la_DEPENDENCIES) 
@@ -9210,6 +9661,12 @@ src/udev/collect/collect.$(OBJEXT): src/udev/collect/$(am__dirstamp) \
 collect$(EXEEXT): $(collect_OBJECTS) $(collect_DEPENDENCIES) $(EXTRA_collect_DEPENDENCIES) 
        @rm -f collect$(EXEEXT)
        $(AM_V_CCLD)$(LINK) $(collect_OBJECTS) $(collect_LDADD) $(LIBS)
+src/journal/coredumpctl.$(OBJEXT): src/journal/$(am__dirstamp) \
+       src/journal/$(DEPDIR)/$(am__dirstamp)
+
+coredumpctl$(EXEEXT): $(coredumpctl_OBJECTS) $(coredumpctl_DEPENDENCIES) $(EXTRA_coredumpctl_DEPENDENCIES) 
+       @rm -f coredumpctl$(EXEEXT)
+       $(AM_V_CCLD)$(LINK) $(coredumpctl_OBJECTS) $(coredumpctl_LDADD) $(LIBS)
 src/hostname/$(am__dirstamp):
        @$(MKDIR_P) src/hostname
        @: > src/hostname/$(am__dirstamp)
@@ -9455,16 +9912,14 @@ systemd-cgtop$(EXEEXT): $(systemd_cgtop_OBJECTS) $(systemd_cgtop_DEPENDENCIES) $
        $(AM_V_CCLD)$(LINK) $(systemd_cgtop_OBJECTS) $(systemd_cgtop_LDADD) $(LIBS)
 src/journal/coredump.$(OBJEXT): src/journal/$(am__dirstamp) \
        src/journal/$(DEPDIR)/$(am__dirstamp)
+src/journal/coredump-vacuum.$(OBJEXT): src/journal/$(am__dirstamp) \
+       src/journal/$(DEPDIR)/$(am__dirstamp)
+src/journal/stacktrace.$(OBJEXT): src/journal/$(am__dirstamp) \
+       src/journal/$(DEPDIR)/$(am__dirstamp)
 
 systemd-coredump$(EXEEXT): $(systemd_coredump_OBJECTS) $(systemd_coredump_DEPENDENCIES) $(EXTRA_systemd_coredump_DEPENDENCIES) 
        @rm -f systemd-coredump$(EXEEXT)
        $(AM_V_CCLD)$(LINK) $(systemd_coredump_OBJECTS) $(systemd_coredump_LDADD) $(LIBS)
-src/journal/coredumpctl.$(OBJEXT): src/journal/$(am__dirstamp) \
-       src/journal/$(DEPDIR)/$(am__dirstamp)
-
-systemd-coredumpctl$(EXEEXT): $(systemd_coredumpctl_OBJECTS) $(systemd_coredumpctl_DEPENDENCIES) $(EXTRA_systemd_coredumpctl_DEPENDENCIES) 
-       @rm -f systemd-coredumpctl$(EXEEXT)
-       $(AM_V_CCLD)$(LINK) $(systemd_coredumpctl_OBJECTS) $(systemd_coredumpctl_LDADD) $(LIBS)
 src/cryptsetup/$(am__dirstamp):
        @$(MKDIR_P) src/cryptsetup
        @: > src/cryptsetup/$(am__dirstamp)
@@ -9498,6 +9953,19 @@ src/dbus1-generator/dbus1-generator.$(OBJEXT):  \
 systemd-dbus1-generator$(EXEEXT): $(systemd_dbus1_generator_OBJECTS) $(systemd_dbus1_generator_DEPENDENCIES) $(EXTRA_systemd_dbus1_generator_DEPENDENCIES) 
        @rm -f systemd-dbus1-generator$(EXEEXT)
        $(AM_V_CCLD)$(LINK) $(systemd_dbus1_generator_OBJECTS) $(systemd_dbus1_generator_LDADD) $(LIBS)
+src/debug-generator/$(am__dirstamp):
+       @$(MKDIR_P) src/debug-generator
+       @: > src/debug-generator/$(am__dirstamp)
+src/debug-generator/$(DEPDIR)/$(am__dirstamp):
+       @$(MKDIR_P) src/debug-generator/$(DEPDIR)
+       @: > src/debug-generator/$(DEPDIR)/$(am__dirstamp)
+src/debug-generator/debug-generator.$(OBJEXT):  \
+       src/debug-generator/$(am__dirstamp) \
+       src/debug-generator/$(DEPDIR)/$(am__dirstamp)
+
+systemd-debug-generator$(EXEEXT): $(systemd_debug_generator_OBJECTS) $(systemd_debug_generator_DEPENDENCIES) $(EXTRA_systemd_debug_generator_DEPENDENCIES) 
+       @rm -f systemd-debug-generator$(EXEEXT)
+       $(AM_V_CCLD)$(LINK) $(systemd_debug_generator_OBJECTS) $(systemd_debug_generator_LDADD) $(LIBS)
 src/delta/$(am__dirstamp):
        @$(MKDIR_P) src/delta
        @: > src/delta/$(am__dirstamp)
@@ -9749,6 +10217,18 @@ src/core/systemd_nspawn-loopback-setup.$(OBJEXT):  \
 systemd-nspawn$(EXEEXT): $(systemd_nspawn_OBJECTS) $(systemd_nspawn_DEPENDENCIES) $(EXTRA_systemd_nspawn_DEPENDENCIES) 
        @rm -f systemd-nspawn$(EXEEXT)
        $(AM_V_CCLD)$(systemd_nspawn_LINK) $(systemd_nspawn_OBJECTS) $(systemd_nspawn_LDADD) $(LIBS)
+src/path/$(am__dirstamp):
+       @$(MKDIR_P) src/path
+       @: > src/path/$(am__dirstamp)
+src/path/$(DEPDIR)/$(am__dirstamp):
+       @$(MKDIR_P) src/path/$(DEPDIR)
+       @: > src/path/$(DEPDIR)/$(am__dirstamp)
+src/path/path.$(OBJEXT): src/path/$(am__dirstamp) \
+       src/path/$(DEPDIR)/$(am__dirstamp)
+
+systemd-path$(EXEEXT): $(systemd_path_OBJECTS) $(systemd_path_DEPENDENCIES) $(EXTRA_systemd_path_DEPENDENCIES) 
+       @rm -f systemd-path$(EXEEXT)
+       $(AM_V_CCLD)$(LINK) $(systemd_path_OBJECTS) $(systemd_path_LDADD) $(LIBS)
 src/quotacheck/$(am__dirstamp):
        @$(MKDIR_P) src/quotacheck
        @: > src/quotacheck/$(am__dirstamp)
@@ -9945,6 +10425,18 @@ src/system-update-generator/system-update-generator.$(OBJEXT):  \
 systemd-system-update-generator$(EXEEXT): $(systemd_system_update_generator_OBJECTS) $(systemd_system_update_generator_DEPENDENCIES) $(EXTRA_systemd_system_update_generator_DEPENDENCIES) 
        @rm -f systemd-system-update-generator$(EXEEXT)
        $(AM_V_CCLD)$(LINK) $(systemd_system_update_generator_OBJECTS) $(systemd_system_update_generator_LDADD) $(LIBS)
+src/sysusers/$(am__dirstamp):
+       @$(MKDIR_P) src/sysusers
+       @: > src/sysusers/$(am__dirstamp)
+src/sysusers/$(DEPDIR)/$(am__dirstamp):
+       @$(MKDIR_P) src/sysusers/$(DEPDIR)
+       @: > src/sysusers/$(DEPDIR)/$(am__dirstamp)
+src/sysusers/sysusers.$(OBJEXT): src/sysusers/$(am__dirstamp) \
+       src/sysusers/$(DEPDIR)/$(am__dirstamp)
+
+systemd-sysusers$(EXEEXT): $(systemd_sysusers_OBJECTS) $(systemd_sysusers_DEPENDENCIES) $(EXTRA_systemd_sysusers_DEPENDENCIES) 
+       @rm -f systemd-sysusers$(EXEEXT)
+       $(AM_V_CCLD)$(LINK) $(systemd_sysusers_OBJECTS) $(systemd_sysusers_LDADD) $(LIBS)
 src/sysv-generator/$(am__dirstamp):
        @$(MKDIR_P) src/sysv-generator
        @: > src/sysv-generator/$(am__dirstamp)
@@ -10015,6 +10507,19 @@ src/udev/udevd.$(OBJEXT): src/udev/$(am__dirstamp) \
 systemd-udevd$(EXEEXT): $(systemd_udevd_OBJECTS) $(systemd_udevd_DEPENDENCIES) $(EXTRA_systemd_udevd_DEPENDENCIES) 
        @rm -f systemd-udevd$(EXEEXT)
        $(AM_V_CCLD)$(LINK) $(systemd_udevd_OBJECTS) $(systemd_udevd_LDADD) $(LIBS)
+src/update-done/$(am__dirstamp):
+       @$(MKDIR_P) src/update-done
+       @: > src/update-done/$(am__dirstamp)
+src/update-done/$(DEPDIR)/$(am__dirstamp):
+       @$(MKDIR_P) src/update-done/$(DEPDIR)
+       @: > src/update-done/$(DEPDIR)/$(am__dirstamp)
+src/update-done/update-done.$(OBJEXT):  \
+       src/update-done/$(am__dirstamp) \
+       src/update-done/$(DEPDIR)/$(am__dirstamp)
+
+systemd-update-done$(EXEEXT): $(systemd_update_done_OBJECTS) $(systemd_update_done_DEPENDENCIES) $(EXTRA_systemd_update_done_DEPENDENCIES) 
+       @rm -f systemd-update-done$(EXEEXT)
+       $(AM_V_CCLD)$(LINK) $(systemd_update_done_OBJECTS) $(systemd_update_done_LDADD) $(LIBS)
 src/update-utmp/$(am__dirstamp):
        @$(MKDIR_P) src/update-utmp
        @: > src/update-utmp/$(am__dirstamp)
@@ -10058,6 +10563,12 @@ src/test/test-architecture.$(OBJEXT): src/test/$(am__dirstamp) \
 test-architecture$(EXEEXT): $(test_architecture_OBJECTS) $(test_architecture_DEPENDENCIES) $(EXTRA_test_architecture_DEPENDENCIES) 
        @rm -f test-architecture$(EXEEXT)
        $(AM_V_CCLD)$(LINK) $(test_architecture_OBJECTS) $(test_architecture_LDADD) $(LIBS)
+src/test/test-async.$(OBJEXT): src/test/$(am__dirstamp) \
+       src/test/$(DEPDIR)/$(am__dirstamp)
+
+test-async$(EXEEXT): $(test_async_OBJECTS) $(test_async_DEPENDENCIES) $(EXTRA_test_async_DEPENDENCIES) 
+       @rm -f test-async$(EXEEXT)
+       $(AM_V_CCLD)$(LINK) $(test_async_OBJECTS) $(test_async_LDADD) $(LIBS)
 src/test/test-boot-timestamps.$(OBJEXT): src/test/$(am__dirstamp) \
        src/test/$(DEPDIR)/$(am__dirstamp)
 
@@ -10182,6 +10693,12 @@ src/test/test-calendarspec.$(OBJEXT): src/test/$(am__dirstamp) \
 test-calendarspec$(EXEEXT): $(test_calendarspec_OBJECTS) $(test_calendarspec_DEPENDENCIES) $(EXTRA_test_calendarspec_DEPENDENCIES) 
        @rm -f test-calendarspec$(EXEEXT)
        $(AM_V_CCLD)$(LINK) $(test_calendarspec_OBJECTS) $(test_calendarspec_LDADD) $(LIBS)
+src/test/test-capability.$(OBJEXT): src/test/$(am__dirstamp) \
+       src/test/$(DEPDIR)/$(am__dirstamp)
+
+test-capability$(EXEEXT): $(test_capability_OBJECTS) $(test_capability_DEPENDENCIES) $(EXTRA_test_capability_DEPENDENCIES) 
+       @rm -f test-capability$(EXEEXT)
+       $(AM_V_CCLD)$(LINK) $(test_capability_OBJECTS) $(test_capability_LDADD) $(LIBS)
 src/journal/test_catalog-test-catalog.$(OBJEXT):  \
        src/journal/$(am__dirstamp) \
        src/journal/$(DEPDIR)/$(am__dirstamp)
@@ -10207,6 +10724,25 @@ src/test/test-cgroup-util.$(OBJEXT): src/test/$(am__dirstamp) \
 test-cgroup-util$(EXEEXT): $(test_cgroup_util_OBJECTS) $(test_cgroup_util_DEPENDENCIES) $(EXTRA_test_cgroup_util_DEPENDENCIES) 
        @rm -f test-cgroup-util$(EXEEXT)
        $(AM_V_CCLD)$(LINK) $(test_cgroup_util_OBJECTS) $(test_cgroup_util_LDADD) $(LIBS)
+src/journal/test-compress.$(OBJEXT): src/journal/$(am__dirstamp) \
+       src/journal/$(DEPDIR)/$(am__dirstamp)
+
+test-compress$(EXEEXT): $(test_compress_OBJECTS) $(test_compress_DEPENDENCIES) $(EXTRA_test_compress_DEPENDENCIES) 
+       @rm -f test-compress$(EXEEXT)
+       $(AM_V_CCLD)$(LINK) $(test_compress_OBJECTS) $(test_compress_LDADD) $(LIBS)
+src/test/test-conf-files.$(OBJEXT): src/test/$(am__dirstamp) \
+       src/test/$(DEPDIR)/$(am__dirstamp)
+
+test-conf-files$(EXEEXT): $(test_conf_files_OBJECTS) $(test_conf_files_DEPENDENCIES) $(EXTRA_test_conf_files_DEPENDENCIES) 
+       @rm -f test-conf-files$(EXEEXT)
+       $(AM_V_CCLD)$(LINK) $(test_conf_files_OBJECTS) $(test_conf_files_LDADD) $(LIBS)
+src/journal/test-coredump-vacuum.$(OBJEXT):  \
+       src/journal/$(am__dirstamp) \
+       src/journal/$(DEPDIR)/$(am__dirstamp)
+
+test-coredump-vacuum$(EXEEXT): $(test_coredump_vacuum_OBJECTS) $(test_coredump_vacuum_DEPENDENCIES) $(EXTRA_test_coredump_vacuum_DEPENDENCIES) 
+       @rm -f test-coredump-vacuum$(EXEEXT)
+       $(AM_V_CCLD)$(LINK) $(test_coredump_vacuum_OBJECTS) $(test_coredump_vacuum_LDADD) $(LIBS)
 src/test/test-daemon.$(OBJEXT): src/test/$(am__dirstamp) \
        src/test/$(DEPDIR)/$(am__dirstamp)
 
@@ -10239,6 +10775,20 @@ src/libsystemd-network/test-dhcp-option.$(OBJEXT):  \
 test-dhcp-option$(EXEEXT): $(test_dhcp_option_OBJECTS) $(test_dhcp_option_DEPENDENCIES) $(EXTRA_test_dhcp_option_DEPENDENCIES) 
        @rm -f test-dhcp-option$(EXEEXT)
        $(AM_V_CCLD)$(LINK) $(test_dhcp_option_OBJECTS) $(test_dhcp_option_LDADD) $(LIBS)
+src/libsystemd-network/test-dhcp-server.$(OBJEXT):  \
+       src/libsystemd-network/$(am__dirstamp) \
+       src/libsystemd-network/$(DEPDIR)/$(am__dirstamp)
+
+test-dhcp-server$(EXEEXT): $(test_dhcp_server_OBJECTS) $(test_dhcp_server_DEPENDENCIES) $(EXTRA_test_dhcp_server_DEPENDENCIES) 
+       @rm -f test-dhcp-server$(EXEEXT)
+       $(AM_V_CCLD)$(LINK) $(test_dhcp_server_OBJECTS) $(test_dhcp_server_LDADD) $(LIBS)
+src/libsystemd-network/test-dhcp6-client.$(OBJEXT):  \
+       src/libsystemd-network/$(am__dirstamp) \
+       src/libsystemd-network/$(DEPDIR)/$(am__dirstamp)
+
+test-dhcp6-client$(EXEEXT): $(test_dhcp6_client_OBJECTS) $(test_dhcp6_client_DEPENDENCIES) $(EXTRA_test_dhcp6_client_DEPENDENCIES) 
+       @rm -f test-dhcp6-client$(EXEEXT)
+       $(AM_V_CCLD)$(LINK) $(test_dhcp6_client_OBJECTS) $(test_dhcp6_client_LDADD) $(LIBS)
 src/test/test-ellipsize.$(OBJEXT): src/test/$(am__dirstamp) \
        src/test/$(DEPDIR)/$(am__dirstamp)
 
@@ -10264,6 +10814,12 @@ src/libsystemd/sd-event/test-event.$(OBJEXT):  \
 test-event$(EXEEXT): $(test_event_OBJECTS) $(test_event_DEPENDENCIES) $(EXTRA_test_event_DEPENDENCIES) 
        @rm -f test-event$(EXEEXT)
        $(AM_V_CCLD)$(LINK) $(test_event_OBJECTS) $(test_event_LDADD) $(LIBS)
+src/test/test-fdset.$(OBJEXT): src/test/$(am__dirstamp) \
+       src/test/$(DEPDIR)/$(am__dirstamp)
+
+test-fdset$(EXEEXT): $(test_fdset_OBJECTS) $(test_fdset_DEPENDENCIES) $(EXTRA_test_fdset_DEPENDENCIES) 
+       @rm -f test-fdset$(EXEEXT)
+       $(AM_V_CCLD)$(LINK) $(test_fdset_OBJECTS) $(test_fdset_LDADD) $(LIBS)
 src/test/test-fileio.$(OBJEXT): src/test/$(am__dirstamp) \
        src/test/$(DEPDIR)/$(am__dirstamp)
 
@@ -10282,6 +10838,13 @@ src/test/test-hostname.$(OBJEXT): src/test/$(am__dirstamp) \
 test-hostname$(EXEEXT): $(test_hostname_OBJECTS) $(test_hostname_DEPENDENCIES) $(EXTRA_test_hostname_DEPENDENCIES) 
        @rm -f test-hostname$(EXEEXT)
        $(AM_V_CCLD)$(LINK) $(test_hostname_OBJECTS) $(test_hostname_LDADD) $(LIBS)
+src/libsystemd-network/test-icmp6-rs.$(OBJEXT):  \
+       src/libsystemd-network/$(am__dirstamp) \
+       src/libsystemd-network/$(DEPDIR)/$(am__dirstamp)
+
+test-icmp6-rs$(EXEEXT): $(test_icmp6_rs_OBJECTS) $(test_icmp6_rs_DEPENDENCIES) $(EXTRA_test_icmp6_rs_DEPENDENCIES) 
+       @rm -f test-icmp6-rs$(EXEEXT)
+       $(AM_V_CCLD)$(LINK) $(test_icmp6_rs_OBJECTS) $(test_icmp6_rs_LDADD) $(LIBS)
 src/test/test-id128.$(OBJEXT): src/test/$(am__dirstamp) \
        src/test/$(DEPDIR)/$(am__dirstamp)
 
@@ -10478,6 +11041,12 @@ src/test/test-prioq.$(OBJEXT): src/test/$(am__dirstamp) \
 test-prioq$(EXEEXT): $(test_prioq_OBJECTS) $(test_prioq_DEPENDENCIES) $(EXTRA_test_prioq_DEPENDENCIES) 
        @rm -f test-prioq$(EXEEXT)
        $(AM_V_CCLD)$(LINK) $(test_prioq_OBJECTS) $(test_prioq_LDADD) $(LIBS)
+src/test/test-ratelimit.$(OBJEXT): src/test/$(am__dirstamp) \
+       src/test/$(DEPDIR)/$(am__dirstamp)
+
+test-ratelimit$(EXEEXT): $(test_ratelimit_OBJECTS) $(test_ratelimit_DEPENDENCIES) $(EXTRA_test_ratelimit_DEPENDENCIES) 
+       @rm -f test-ratelimit$(EXEEXT)
+       $(AM_V_CCLD)$(LINK) $(test_ratelimit_OBJECTS) $(test_ratelimit_LDADD) $(LIBS)
 src/test/test-replace-var.$(OBJEXT): src/test/$(am__dirstamp) \
        src/test/$(DEPDIR)/$(am__dirstamp)
 
@@ -10522,6 +11091,12 @@ src/test/test-sleep.$(OBJEXT): src/test/$(am__dirstamp) \
 test-sleep$(EXEEXT): $(test_sleep_OBJECTS) $(test_sleep_DEPENDENCIES) $(EXTRA_test_sleep_DEPENDENCIES) 
        @rm -f test-sleep$(EXEEXT)
        $(AM_V_CCLD)$(LINK) $(test_sleep_OBJECTS) $(test_sleep_LDADD) $(LIBS)
+src/test/test-socket-util.$(OBJEXT): src/test/$(am__dirstamp) \
+       src/test/$(DEPDIR)/$(am__dirstamp)
+
+test-socket-util$(EXEEXT): $(test_socket_util_OBJECTS) $(test_socket_util_DEPENDENCIES) $(EXTRA_test_socket_util_DEPENDENCIES) 
+       @rm -f test-socket-util$(EXEEXT)
+       $(AM_V_CCLD)$(LINK) $(test_socket_util_OBJECTS) $(test_socket_util_LDADD) $(LIBS)
 src/readahead/test-ssd.$(OBJEXT): src/readahead/$(am__dirstamp) \
        src/readahead/$(DEPDIR)/$(am__dirstamp)
 
@@ -10741,6 +11316,7 @@ mostlyclean-compile:
        -rm -f src/core/*.lo
        -rm -f src/cryptsetup/*.$(OBJEXT)
        -rm -f src/dbus1-generator/*.$(OBJEXT)
+       -rm -f src/debug-generator/*.$(OBJEXT)
        -rm -f src/delta/*.$(OBJEXT)
        -rm -f src/detect-virt/*.$(OBJEXT)
        -rm -f src/efi-boot-generator/*.$(OBJEXT)
@@ -10766,6 +11342,8 @@ mostlyclean-compile:
        -rm -f src/libsystemd/sd-id128/*.lo
        -rm -f src/libsystemd/sd-login/*.$(OBJEXT)
        -rm -f src/libsystemd/sd-login/*.lo
+       -rm -f src/libsystemd/sd-path/*.$(OBJEXT)
+       -rm -f src/libsystemd/sd-path/*.lo
        -rm -f src/libsystemd/sd-resolve/*.$(OBJEXT)
        -rm -f src/libsystemd/sd-resolve/*.lo
        -rm -f src/libsystemd/sd-rtnl/*.$(OBJEXT)
@@ -10787,6 +11365,7 @@ mostlyclean-compile:
        -rm -f src/nspawn/*.$(OBJEXT)
        -rm -f src/nss-myhostname/*.$(OBJEXT)
        -rm -f src/nss-myhostname/*.lo
+       -rm -f src/path/*.$(OBJEXT)
        -rm -f src/python-systemd/*.$(OBJEXT)
        -rm -f src/python-systemd/*.lo
        -rm -f src/quotacheck/*.$(OBJEXT)
@@ -10806,6 +11385,7 @@ mostlyclean-compile:
        -rm -f src/sysctl/*.$(OBJEXT)
        -rm -f src/system-update-generator/*.$(OBJEXT)
        -rm -f src/systemctl/*.$(OBJEXT)
+       -rm -f src/sysusers/*.$(OBJEXT)
        -rm -f src/sysv-generator/*.$(OBJEXT)
        -rm -f src/test/*.$(OBJEXT)
        -rm -f src/timedate/*.$(OBJEXT)
@@ -10823,6 +11403,7 @@ mostlyclean-compile:
        -rm -f src/udev/net/*.lo
        -rm -f src/udev/scsi_id/*.$(OBJEXT)
        -rm -f src/udev/v4l_id/*.$(OBJEXT)
+       -rm -f src/update-done/*.$(OBJEXT)
        -rm -f src/update-utmp/*.$(OBJEXT)
        -rm -f src/vconsole/*.$(OBJEXT)
 
@@ -10924,6 +11505,7 @@ distclean-compile:
 @AMDEP_TRUE@@am__include@ @am__quote@src/cryptsetup/$(DEPDIR)/cryptsetup-generator.Po@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@src/cryptsetup/$(DEPDIR)/systemd_cryptsetup-cryptsetup.Po@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@src/dbus1-generator/$(DEPDIR)/dbus1-generator.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@src/debug-generator/$(DEPDIR)/debug-generator.Po@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@src/delta/$(DEPDIR)/delta.Po@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@src/detect-virt/$(DEPDIR)/detect-virt.Po@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@src/efi-boot-generator/$(DEPDIR)/efi-boot-generator.Po@am__quote@
@@ -10940,6 +11522,7 @@ distclean-compile:
 @AMDEP_TRUE@@am__include@ @am__quote@src/hostname/$(DEPDIR)/hostnamed.Po@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@src/initctl/$(DEPDIR)/initctl.Po@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@src/journal/$(DEPDIR)/cat.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@src/journal/$(DEPDIR)/coredump-vacuum.Po@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@src/journal/$(DEPDIR)/coredump.Po@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@src/journal/$(DEPDIR)/coredumpctl.Po@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@src/journal/$(DEPDIR)/journalctl-journal-qrcode.Po@am__quote@
@@ -10976,12 +11559,15 @@ distclean-compile:
 @AMDEP_TRUE@@am__include@ @am__quote@src/journal/$(DEPDIR)/libsystemd_la-lookup3.Plo@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@src/journal/$(DEPDIR)/libsystemd_la-mmap-cache.Plo@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@src/journal/$(DEPDIR)/libsystemd_la-sd-journal.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@src/journal/$(DEPDIR)/stacktrace.Po@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@src/journal/$(DEPDIR)/systemd_journal_gatewayd-journal-gatewayd.Po@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@src/journal/$(DEPDIR)/systemd_journal_gatewayd-microhttpd-util.Po@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@src/journal/$(DEPDIR)/systemd_journal_remote-journal-remote-parse.Po@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@src/journal/$(DEPDIR)/systemd_journal_remote-journal-remote-write.Po@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@src/journal/$(DEPDIR)/systemd_journal_remote-journal-remote.Po@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@src/journal/$(DEPDIR)/systemd_journal_remote-microhttpd-util.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@src/journal/$(DEPDIR)/test-compress.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@src/journal/$(DEPDIR)/test-coredump-vacuum.Po@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@src/journal/$(DEPDIR)/test-journal-enum.Po@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@src/journal/$(DEPDIR)/test-journal-flush.Po@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@src/journal/$(DEPDIR)/test-journal-init.Po@am__quote@
@@ -10997,14 +11583,23 @@ distclean-compile:
 @AMDEP_TRUE@@am__include@ @am__quote@src/libsystemd-network/$(DEPDIR)/libsystemd_network_la-dhcp-network.Plo@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@src/libsystemd-network/$(DEPDIR)/libsystemd_network_la-dhcp-option.Plo@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@src/libsystemd-network/$(DEPDIR)/libsystemd_network_la-dhcp-packet.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@src/libsystemd-network/$(DEPDIR)/libsystemd_network_la-dhcp6-network.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@src/libsystemd-network/$(DEPDIR)/libsystemd_network_la-dhcp6-option.Plo@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@src/libsystemd-network/$(DEPDIR)/libsystemd_network_la-ipv4ll-network.Plo@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@src/libsystemd-network/$(DEPDIR)/libsystemd_network_la-ipv4ll-packet.Plo@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@src/libsystemd-network/$(DEPDIR)/libsystemd_network_la-network-internal.Plo@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@src/libsystemd-network/$(DEPDIR)/libsystemd_network_la-sd-dhcp-client.Plo@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@src/libsystemd-network/$(DEPDIR)/libsystemd_network_la-sd-dhcp-lease.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@src/libsystemd-network/$(DEPDIR)/libsystemd_network_la-sd-dhcp-server.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@src/libsystemd-network/$(DEPDIR)/libsystemd_network_la-sd-dhcp6-client.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@src/libsystemd-network/$(DEPDIR)/libsystemd_network_la-sd-dhcp6-lease.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@src/libsystemd-network/$(DEPDIR)/libsystemd_network_la-sd-icmp6-nd.Plo@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@src/libsystemd-network/$(DEPDIR)/libsystemd_network_la-sd-ipv4ll.Plo@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@src/libsystemd-network/$(DEPDIR)/test-dhcp-client.Po@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@src/libsystemd-network/$(DEPDIR)/test-dhcp-option.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@src/libsystemd-network/$(DEPDIR)/test-dhcp-server.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@src/libsystemd-network/$(DEPDIR)/test-dhcp6-client.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@src/libsystemd-network/$(DEPDIR)/test-icmp6-rs.Po@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@src/libsystemd-network/$(DEPDIR)/test-ipv4ll.Po@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@src/libsystemd/sd-bus/$(DEPDIR)/busctl-busctl.Po@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@src/libsystemd/sd-bus/$(DEPDIR)/libsystemd_dump_la-bus-dump.Plo@am__quote@
@@ -11079,6 +11674,8 @@ distclean-compile:
 @AMDEP_TRUE@@am__include@ @am__quote@src/libsystemd/sd-login/$(DEPDIR)/libsystemd_la-sd-login.Plo@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@src/libsystemd/sd-login/$(DEPDIR)/libudev_core_la-sd-login.Plo@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@src/libsystemd/sd-login/$(DEPDIR)/test-login.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@src/libsystemd/sd-path/$(DEPDIR)/libsystemd_internal_la-sd-path.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@src/libsystemd/sd-path/$(DEPDIR)/libsystemd_la-sd-path.Plo@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@src/libsystemd/sd-resolve/$(DEPDIR)/libsystemd_la-sd-resolve.Plo@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@src/libsystemd/sd-resolve/$(DEPDIR)/libsystemd_resolve_la-sd-resolve.Plo@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@src/libsystemd/sd-resolve/$(DEPDIR)/test_resolve-test-resolve.Po@am__quote@
@@ -11132,7 +11729,7 @@ distclean-compile:
 @AMDEP_TRUE@@am__include@ @am__quote@src/login/$(DEPDIR)/logind-user.Plo@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@src/login/$(DEPDIR)/logind.Po@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@src/login/$(DEPDIR)/multi-seat-x.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@src/login/$(DEPDIR)/pam_systemd_la-pam-module.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@src/login/$(DEPDIR)/pam_systemd_la-pam_systemd.Plo@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@src/login/$(DEPDIR)/sysfs-show.Po@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@src/login/$(DEPDIR)/test-inhibit.Po@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@src/login/$(DEPDIR)/test-login-shared.Po@am__quote@
@@ -11147,8 +11744,11 @@ distclean-compile:
 @AMDEP_TRUE@@am__include@ @am__quote@src/machine/$(DEPDIR)/test-machine-tables.Po@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@src/modules-load/$(DEPDIR)/systemd_modules_load-modules-load.Po@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@src/network/$(DEPDIR)/libsystemd_network_la-sd-network.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@src/network/$(DEPDIR)/libsystemd_networkd_core_la-networkd-address-pool.Plo@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@src/network/$(DEPDIR)/libsystemd_networkd_core_la-networkd-address.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@src/network/$(DEPDIR)/libsystemd_networkd_core_la-networkd-dummy.Plo@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@src/network/$(DEPDIR)/libsystemd_networkd_core_la-networkd-link.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@src/network/$(DEPDIR)/libsystemd_networkd_core_la-networkd-macvlan.Plo@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@src/network/$(DEPDIR)/libsystemd_networkd_core_la-networkd-manager.Plo@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@src/network/$(DEPDIR)/libsystemd_networkd_core_la-networkd-netdev-gperf.Plo@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@src/network/$(DEPDIR)/libsystemd_networkd_core_la-networkd-netdev.Plo@am__quote@
@@ -11156,7 +11756,10 @@ distclean-compile:
 @AMDEP_TRUE@@am__include@ @am__quote@src/network/$(DEPDIR)/libsystemd_networkd_core_la-networkd-network.Plo@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@src/network/$(DEPDIR)/libsystemd_networkd_core_la-networkd-route.Plo@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@src/network/$(DEPDIR)/libsystemd_networkd_core_la-networkd-tunnel.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@src/network/$(DEPDIR)/libsystemd_networkd_core_la-networkd-tuntap.Plo@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@src/network/$(DEPDIR)/libsystemd_networkd_core_la-networkd-veth.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@src/network/$(DEPDIR)/libsystemd_networkd_core_la-networkd-vlan.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@src/network/$(DEPDIR)/libsystemd_networkd_core_la-networkd-vxlan.Plo@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@src/network/$(DEPDIR)/networkd.Po@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@src/network/$(DEPDIR)/systemd_networkd_wait_online-networkd-wait-online.Po@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@src/network/$(DEPDIR)/test_network-test-network.Po@am__quote@
@@ -11164,6 +11767,7 @@ distclean-compile:
 @AMDEP_TRUE@@am__include@ @am__quote@src/nspawn/$(DEPDIR)/systemd_nspawn-nspawn.Po@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@src/nss-myhostname/$(DEPDIR)/netlink.Plo@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@src/nss-myhostname/$(DEPDIR)/nss-myhostname.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@src/path/$(DEPDIR)/path.Po@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@src/python-systemd/$(DEPDIR)/_daemon_la-_daemon.Plo@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@src/python-systemd/$(DEPDIR)/_daemon_la-pyutil.Plo@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@src/python-systemd/$(DEPDIR)/_journal_la-_journal.Plo@am__quote@
@@ -11196,7 +11800,9 @@ distclean-compile:
 @AMDEP_TRUE@@am__include@ @am__quote@src/shared/$(DEPDIR)/libsystemd_capability_la-capability.Plo@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@src/shared/$(DEPDIR)/libsystemd_label_la-ask-password-api.Plo@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@src/shared/$(DEPDIR)/libsystemd_label_la-dev-setup.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@src/shared/$(DEPDIR)/libsystemd_label_la-dropin.Plo@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@src/shared/$(DEPDIR)/libsystemd_label_la-fileio-label.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@src/shared/$(DEPDIR)/libsystemd_label_la-generator.Plo@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@src/shared/$(DEPDIR)/libsystemd_label_la-label.Plo@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@src/shared/$(DEPDIR)/libsystemd_label_la-mkdir-label.Plo@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@src/shared/$(DEPDIR)/libsystemd_label_la-selinux-util.Plo@am__quote@
@@ -11209,6 +11815,7 @@ distclean-compile:
 @AMDEP_TRUE@@am__include@ @am__quote@src/shared/$(DEPDIR)/libsystemd_shared_la-architecture.Plo@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@src/shared/$(DEPDIR)/libsystemd_shared_la-async.Plo@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@src/shared/$(DEPDIR)/libsystemd_shared_la-audit.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@src/shared/$(DEPDIR)/libsystemd_shared_la-base-filesystem.Plo@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@src/shared/$(DEPDIR)/libsystemd_shared_la-boot-timestamps.Plo@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@src/shared/$(DEPDIR)/libsystemd_shared_la-bus-label.Plo@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@src/shared/$(DEPDIR)/libsystemd_shared_la-calendarspec.Plo@am__quote@
@@ -11228,7 +11835,6 @@ distclean-compile:
 @AMDEP_TRUE@@am__include@ @am__quote@src/shared/$(DEPDIR)/libsystemd_shared_la-exit-status.Plo@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@src/shared/$(DEPDIR)/libsystemd_shared_la-fdset.Plo@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@src/shared/$(DEPDIR)/libsystemd_shared_la-fileio.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@src/shared/$(DEPDIR)/libsystemd_shared_la-generator.Plo@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@src/shared/$(DEPDIR)/libsystemd_shared_la-gunicode.Plo@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@src/shared/$(DEPDIR)/libsystemd_shared_la-hashmap.Plo@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@src/shared/$(DEPDIR)/libsystemd_shared_la-ima-util.Plo@am__quote@
@@ -11270,17 +11876,22 @@ distclean-compile:
 @AMDEP_TRUE@@am__include@ @am__quote@src/sysctl/$(DEPDIR)/sysctl.Po@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@src/system-update-generator/$(DEPDIR)/system-update-generator.Po@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@src/systemctl/$(DEPDIR)/systemctl.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@src/sysusers/$(DEPDIR)/sysusers.Po@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@src/sysv-generator/$(DEPDIR)/sysv-generator.Po@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@src/test/$(DEPDIR)/test-architecture.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@src/test/$(DEPDIR)/test-async.Po@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@src/test/$(DEPDIR)/test-boot-timestamps.Po@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@src/test/$(DEPDIR)/test-calendarspec.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@src/test/$(DEPDIR)/test-capability.Po@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@src/test/$(DEPDIR)/test-cgroup-util.Po@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@src/test/$(DEPDIR)/test-cgroup.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@src/test/$(DEPDIR)/test-conf-files.Po@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@src/test/$(DEPDIR)/test-daemon.Po@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@src/test/$(DEPDIR)/test-date.Po@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@src/test/$(DEPDIR)/test-device-nodes.Po@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@src/test/$(DEPDIR)/test-ellipsize.Po@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@src/test/$(DEPDIR)/test-env-replace.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@src/test/$(DEPDIR)/test-fdset.Po@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@src/test/$(DEPDIR)/test-fileio.Po@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@src/test/$(DEPDIR)/test-hashmap.Po@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@src/test/$(DEPDIR)/test-hostname.Po@am__quote@
@@ -11294,9 +11905,11 @@ distclean-compile:
 @AMDEP_TRUE@@am__include@ @am__quote@src/test/$(DEPDIR)/test-namespace.Po@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@src/test/$(DEPDIR)/test-path-util.Po@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@src/test/$(DEPDIR)/test-prioq.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@src/test/$(DEPDIR)/test-ratelimit.Po@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@src/test/$(DEPDIR)/test-replace-var.Po@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@src/test/$(DEPDIR)/test-ring.Po@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@src/test/$(DEPDIR)/test-sleep.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@src/test/$(DEPDIR)/test-socket-util.Po@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@src/test/$(DEPDIR)/test-strbuf.Po@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@src/test/$(DEPDIR)/test-strip-tab-ansi.Po@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@src/test/$(DEPDIR)/test-strv.Po@am__quote@
@@ -11363,6 +11976,7 @@ distclean-compile:
 @AMDEP_TRUE@@am__include@ @am__quote@src/udev/scsi_id/$(DEPDIR)/scsi_id.Po@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@src/udev/scsi_id/$(DEPDIR)/scsi_serial.Po@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@src/udev/v4l_id/$(DEPDIR)/v4l_id.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@src/update-done/$(DEPDIR)/update-done.Po@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@src/update-utmp/$(DEPDIR)/systemd_update_utmp-update-utmp.Po@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@src/vconsole/$(DEPDIR)/vconsole-setup.Po@am__quote@
 
@@ -12146,6 +12760,13 @@ src/libsystemd/sd-login/libsystemd_internal_la-sd-login.lo: src/libsystemd/sd-lo
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
 @am__fastdepCC_FALSE@  $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libsystemd_internal_la_CFLAGS) $(CFLAGS) -c -o src/libsystemd/sd-login/libsystemd_internal_la-sd-login.lo `test -f 'src/libsystemd/sd-login/sd-login.c' || echo '$(srcdir)/'`src/libsystemd/sd-login/sd-login.c
 
+src/libsystemd/sd-path/libsystemd_internal_la-sd-path.lo: src/libsystemd/sd-path/sd-path.c
+@am__fastdepCC_TRUE@   $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libsystemd_internal_la_CFLAGS) $(CFLAGS) -MT src/libsystemd/sd-path/libsystemd_internal_la-sd-path.lo -MD -MP -MF src/libsystemd/sd-path/$(DEPDIR)/libsystemd_internal_la-sd-path.Tpo -c -o src/libsystemd/sd-path/libsystemd_internal_la-sd-path.lo `test -f 'src/libsystemd/sd-path/sd-path.c' || echo '$(srcdir)/'`src/libsystemd/sd-path/sd-path.c
+@am__fastdepCC_TRUE@   $(AM_V_at)$(am__mv) src/libsystemd/sd-path/$(DEPDIR)/libsystemd_internal_la-sd-path.Tpo src/libsystemd/sd-path/$(DEPDIR)/libsystemd_internal_la-sd-path.Plo
+@AMDEP_TRUE@@am__fastdepCC_FALSE@      $(AM_V_CC)source='src/libsystemd/sd-path/sd-path.c' object='src/libsystemd/sd-path/libsystemd_internal_la-sd-path.lo' libtool=yes @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@      DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@  $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libsystemd_internal_la_CFLAGS) $(CFLAGS) -c -o src/libsystemd/sd-path/libsystemd_internal_la-sd-path.lo `test -f 'src/libsystemd/sd-path/sd-path.c' || echo '$(srcdir)/'`src/libsystemd/sd-path/sd-path.c
+
 src/libsystemd/sd-bus/libsystemd_internal_la-bus-error-mapping.lo: src/libsystemd/sd-bus/bus-error-mapping.c
 @am__fastdepCC_TRUE@   $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libsystemd_internal_la_CFLAGS) $(CFLAGS) -MT src/libsystemd/sd-bus/libsystemd_internal_la-bus-error-mapping.lo -MD -MP -MF src/libsystemd/sd-bus/$(DEPDIR)/libsystemd_internal_la-bus-error-mapping.Tpo -c -o src/libsystemd/sd-bus/libsystemd_internal_la-bus-error-mapping.lo `test -f 'src/libsystemd/sd-bus/bus-error-mapping.c' || echo '$(srcdir)/'`src/libsystemd/sd-bus/bus-error-mapping.c
 @am__fastdepCC_TRUE@   $(AM_V_at)$(am__mv) src/libsystemd/sd-bus/$(DEPDIR)/libsystemd_internal_la-bus-error-mapping.Tpo src/libsystemd/sd-bus/$(DEPDIR)/libsystemd_internal_la-bus-error-mapping.Plo
@@ -12286,6 +12907,20 @@ src/shared/libsystemd_label_la-dev-setup.lo: src/shared/dev-setup.c
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
 @am__fastdepCC_FALSE@  $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libsystemd_label_la_CFLAGS) $(CFLAGS) -c -o src/shared/libsystemd_label_la-dev-setup.lo `test -f 'src/shared/dev-setup.c' || echo '$(srcdir)/'`src/shared/dev-setup.c
 
+src/shared/libsystemd_label_la-dropin.lo: src/shared/dropin.c
+@am__fastdepCC_TRUE@   $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libsystemd_label_la_CFLAGS) $(CFLAGS) -MT src/shared/libsystemd_label_la-dropin.lo -MD -MP -MF src/shared/$(DEPDIR)/libsystemd_label_la-dropin.Tpo -c -o src/shared/libsystemd_label_la-dropin.lo `test -f 'src/shared/dropin.c' || echo '$(srcdir)/'`src/shared/dropin.c
+@am__fastdepCC_TRUE@   $(AM_V_at)$(am__mv) src/shared/$(DEPDIR)/libsystemd_label_la-dropin.Tpo src/shared/$(DEPDIR)/libsystemd_label_la-dropin.Plo
+@AMDEP_TRUE@@am__fastdepCC_FALSE@      $(AM_V_CC)source='src/shared/dropin.c' object='src/shared/libsystemd_label_la-dropin.lo' libtool=yes @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@      DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@  $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libsystemd_label_la_CFLAGS) $(CFLAGS) -c -o src/shared/libsystemd_label_la-dropin.lo `test -f 'src/shared/dropin.c' || echo '$(srcdir)/'`src/shared/dropin.c
+
+src/shared/libsystemd_label_la-generator.lo: src/shared/generator.c
+@am__fastdepCC_TRUE@   $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libsystemd_label_la_CFLAGS) $(CFLAGS) -MT src/shared/libsystemd_label_la-generator.lo -MD -MP -MF src/shared/$(DEPDIR)/libsystemd_label_la-generator.Tpo -c -o src/shared/libsystemd_label_la-generator.lo `test -f 'src/shared/generator.c' || echo '$(srcdir)/'`src/shared/generator.c
+@am__fastdepCC_TRUE@   $(AM_V_at)$(am__mv) src/shared/$(DEPDIR)/libsystemd_label_la-generator.Tpo src/shared/$(DEPDIR)/libsystemd_label_la-generator.Plo
+@AMDEP_TRUE@@am__fastdepCC_FALSE@      $(AM_V_CC)source='src/shared/generator.c' object='src/shared/libsystemd_label_la-generator.lo' libtool=yes @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@      DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@  $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libsystemd_label_la_CFLAGS) $(CFLAGS) -c -o src/shared/libsystemd_label_la-generator.lo `test -f 'src/shared/generator.c' || echo '$(srcdir)/'`src/shared/generator.c
+
 libsystemd_login_la-libsystemd-login.lo: libsystemd-login.c
 @am__fastdepCC_TRUE@   $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libsystemd_login_la_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT libsystemd_login_la-libsystemd-login.lo -MD -MP -MF $(DEPDIR)/libsystemd_login_la-libsystemd-login.Tpo -c -o libsystemd_login_la-libsystemd-login.lo `test -f 'libsystemd-login.c' || echo '$(srcdir)/'`libsystemd-login.c
 @am__fastdepCC_TRUE@   $(AM_V_at)$(am__mv) $(DEPDIR)/libsystemd_login_la-libsystemd-login.Tpo $(DEPDIR)/libsystemd_login_la-libsystemd-login.Plo
@@ -12307,6 +12942,13 @@ src/libsystemd-network/libsystemd_network_la-sd-dhcp-client.lo: src/libsystemd-n
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
 @am__fastdepCC_FALSE@  $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libsystemd_network_la_CFLAGS) $(CFLAGS) -c -o src/libsystemd-network/libsystemd_network_la-sd-dhcp-client.lo `test -f 'src/libsystemd-network/sd-dhcp-client.c' || echo '$(srcdir)/'`src/libsystemd-network/sd-dhcp-client.c
 
+src/libsystemd-network/libsystemd_network_la-sd-dhcp-server.lo: src/libsystemd-network/sd-dhcp-server.c
+@am__fastdepCC_TRUE@   $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libsystemd_network_la_CFLAGS) $(CFLAGS) -MT src/libsystemd-network/libsystemd_network_la-sd-dhcp-server.lo -MD -MP -MF src/libsystemd-network/$(DEPDIR)/libsystemd_network_la-sd-dhcp-server.Tpo -c -o src/libsystemd-network/libsystemd_network_la-sd-dhcp-server.lo `test -f 'src/libsystemd-network/sd-dhcp-server.c' || echo '$(srcdir)/'`src/libsystemd-network/sd-dhcp-server.c
+@am__fastdepCC_TRUE@   $(AM_V_at)$(am__mv) src/libsystemd-network/$(DEPDIR)/libsystemd_network_la-sd-dhcp-server.Tpo src/libsystemd-network/$(DEPDIR)/libsystemd_network_la-sd-dhcp-server.Plo
+@AMDEP_TRUE@@am__fastdepCC_FALSE@      $(AM_V_CC)source='src/libsystemd-network/sd-dhcp-server.c' object='src/libsystemd-network/libsystemd_network_la-sd-dhcp-server.lo' libtool=yes @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@      DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@  $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libsystemd_network_la_CFLAGS) $(CFLAGS) -c -o src/libsystemd-network/libsystemd_network_la-sd-dhcp-server.lo `test -f 'src/libsystemd-network/sd-dhcp-server.c' || echo '$(srcdir)/'`src/libsystemd-network/sd-dhcp-server.c
+
 src/libsystemd-network/libsystemd_network_la-dhcp-network.lo: src/libsystemd-network/dhcp-network.c
 @am__fastdepCC_TRUE@   $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libsystemd_network_la_CFLAGS) $(CFLAGS) -MT src/libsystemd-network/libsystemd_network_la-dhcp-network.lo -MD -MP -MF src/libsystemd-network/$(DEPDIR)/libsystemd_network_la-dhcp-network.Tpo -c -o src/libsystemd-network/libsystemd_network_la-dhcp-network.lo `test -f 'src/libsystemd-network/dhcp-network.c' || echo '$(srcdir)/'`src/libsystemd-network/dhcp-network.c
 @am__fastdepCC_TRUE@   $(AM_V_at)$(am__mv) src/libsystemd-network/$(DEPDIR)/libsystemd_network_la-dhcp-network.Tpo src/libsystemd-network/$(DEPDIR)/libsystemd_network_la-dhcp-network.Plo
@@ -12363,6 +13005,41 @@ src/libsystemd-network/libsystemd_network_la-network-internal.lo: src/libsystemd
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
 @am__fastdepCC_FALSE@  $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libsystemd_network_la_CFLAGS) $(CFLAGS) -c -o src/libsystemd-network/libsystemd_network_la-network-internal.lo `test -f 'src/libsystemd-network/network-internal.c' || echo '$(srcdir)/'`src/libsystemd-network/network-internal.c
 
+src/libsystemd-network/libsystemd_network_la-sd-icmp6-nd.lo: src/libsystemd-network/sd-icmp6-nd.c
+@am__fastdepCC_TRUE@   $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libsystemd_network_la_CFLAGS) $(CFLAGS) -MT src/libsystemd-network/libsystemd_network_la-sd-icmp6-nd.lo -MD -MP -MF src/libsystemd-network/$(DEPDIR)/libsystemd_network_la-sd-icmp6-nd.Tpo -c -o src/libsystemd-network/libsystemd_network_la-sd-icmp6-nd.lo `test -f 'src/libsystemd-network/sd-icmp6-nd.c' || echo '$(srcdir)/'`src/libsystemd-network/sd-icmp6-nd.c
+@am__fastdepCC_TRUE@   $(AM_V_at)$(am__mv) src/libsystemd-network/$(DEPDIR)/libsystemd_network_la-sd-icmp6-nd.Tpo src/libsystemd-network/$(DEPDIR)/libsystemd_network_la-sd-icmp6-nd.Plo
+@AMDEP_TRUE@@am__fastdepCC_FALSE@      $(AM_V_CC)source='src/libsystemd-network/sd-icmp6-nd.c' object='src/libsystemd-network/libsystemd_network_la-sd-icmp6-nd.lo' libtool=yes @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@      DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@  $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libsystemd_network_la_CFLAGS) $(CFLAGS) -c -o src/libsystemd-network/libsystemd_network_la-sd-icmp6-nd.lo `test -f 'src/libsystemd-network/sd-icmp6-nd.c' || echo '$(srcdir)/'`src/libsystemd-network/sd-icmp6-nd.c
+
+src/libsystemd-network/libsystemd_network_la-sd-dhcp6-client.lo: src/libsystemd-network/sd-dhcp6-client.c
+@am__fastdepCC_TRUE@   $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libsystemd_network_la_CFLAGS) $(CFLAGS) -MT src/libsystemd-network/libsystemd_network_la-sd-dhcp6-client.lo -MD -MP -MF src/libsystemd-network/$(DEPDIR)/libsystemd_network_la-sd-dhcp6-client.Tpo -c -o src/libsystemd-network/libsystemd_network_la-sd-dhcp6-client.lo `test -f 'src/libsystemd-network/sd-dhcp6-client.c' || echo '$(srcdir)/'`src/libsystemd-network/sd-dhcp6-client.c
+@am__fastdepCC_TRUE@   $(AM_V_at)$(am__mv) src/libsystemd-network/$(DEPDIR)/libsystemd_network_la-sd-dhcp6-client.Tpo src/libsystemd-network/$(DEPDIR)/libsystemd_network_la-sd-dhcp6-client.Plo
+@AMDEP_TRUE@@am__fastdepCC_FALSE@      $(AM_V_CC)source='src/libsystemd-network/sd-dhcp6-client.c' object='src/libsystemd-network/libsystemd_network_la-sd-dhcp6-client.lo' libtool=yes @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@      DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@  $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libsystemd_network_la_CFLAGS) $(CFLAGS) -c -o src/libsystemd-network/libsystemd_network_la-sd-dhcp6-client.lo `test -f 'src/libsystemd-network/sd-dhcp6-client.c' || echo '$(srcdir)/'`src/libsystemd-network/sd-dhcp6-client.c
+
+src/libsystemd-network/libsystemd_network_la-dhcp6-network.lo: src/libsystemd-network/dhcp6-network.c
+@am__fastdepCC_TRUE@   $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libsystemd_network_la_CFLAGS) $(CFLAGS) -MT src/libsystemd-network/libsystemd_network_la-dhcp6-network.lo -MD -MP -MF src/libsystemd-network/$(DEPDIR)/libsystemd_network_la-dhcp6-network.Tpo -c -o src/libsystemd-network/libsystemd_network_la-dhcp6-network.lo `test -f 'src/libsystemd-network/dhcp6-network.c' || echo '$(srcdir)/'`src/libsystemd-network/dhcp6-network.c
+@am__fastdepCC_TRUE@   $(AM_V_at)$(am__mv) src/libsystemd-network/$(DEPDIR)/libsystemd_network_la-dhcp6-network.Tpo src/libsystemd-network/$(DEPDIR)/libsystemd_network_la-dhcp6-network.Plo
+@AMDEP_TRUE@@am__fastdepCC_FALSE@      $(AM_V_CC)source='src/libsystemd-network/dhcp6-network.c' object='src/libsystemd-network/libsystemd_network_la-dhcp6-network.lo' libtool=yes @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@      DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@  $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libsystemd_network_la_CFLAGS) $(CFLAGS) -c -o src/libsystemd-network/libsystemd_network_la-dhcp6-network.lo `test -f 'src/libsystemd-network/dhcp6-network.c' || echo '$(srcdir)/'`src/libsystemd-network/dhcp6-network.c
+
+src/libsystemd-network/libsystemd_network_la-dhcp6-option.lo: src/libsystemd-network/dhcp6-option.c
+@am__fastdepCC_TRUE@   $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libsystemd_network_la_CFLAGS) $(CFLAGS) -MT src/libsystemd-network/libsystemd_network_la-dhcp6-option.lo -MD -MP -MF src/libsystemd-network/$(DEPDIR)/libsystemd_network_la-dhcp6-option.Tpo -c -o src/libsystemd-network/libsystemd_network_la-dhcp6-option.lo `test -f 'src/libsystemd-network/dhcp6-option.c' || echo '$(srcdir)/'`src/libsystemd-network/dhcp6-option.c
+@am__fastdepCC_TRUE@   $(AM_V_at)$(am__mv) src/libsystemd-network/$(DEPDIR)/libsystemd_network_la-dhcp6-option.Tpo src/libsystemd-network/$(DEPDIR)/libsystemd_network_la-dhcp6-option.Plo
+@AMDEP_TRUE@@am__fastdepCC_FALSE@      $(AM_V_CC)source='src/libsystemd-network/dhcp6-option.c' object='src/libsystemd-network/libsystemd_network_la-dhcp6-option.lo' libtool=yes @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@      DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@  $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libsystemd_network_la_CFLAGS) $(CFLAGS) -c -o src/libsystemd-network/libsystemd_network_la-dhcp6-option.lo `test -f 'src/libsystemd-network/dhcp6-option.c' || echo '$(srcdir)/'`src/libsystemd-network/dhcp6-option.c
+
+src/libsystemd-network/libsystemd_network_la-sd-dhcp6-lease.lo: src/libsystemd-network/sd-dhcp6-lease.c
+@am__fastdepCC_TRUE@   $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libsystemd_network_la_CFLAGS) $(CFLAGS) -MT src/libsystemd-network/libsystemd_network_la-sd-dhcp6-lease.lo -MD -MP -MF src/libsystemd-network/$(DEPDIR)/libsystemd_network_la-sd-dhcp6-lease.Tpo -c -o src/libsystemd-network/libsystemd_network_la-sd-dhcp6-lease.lo `test -f 'src/libsystemd-network/sd-dhcp6-lease.c' || echo '$(srcdir)/'`src/libsystemd-network/sd-dhcp6-lease.c
+@am__fastdepCC_TRUE@   $(AM_V_at)$(am__mv) src/libsystemd-network/$(DEPDIR)/libsystemd_network_la-sd-dhcp6-lease.Tpo src/libsystemd-network/$(DEPDIR)/libsystemd_network_la-sd-dhcp6-lease.Plo
+@AMDEP_TRUE@@am__fastdepCC_FALSE@      $(AM_V_CC)source='src/libsystemd-network/sd-dhcp6-lease.c' object='src/libsystemd-network/libsystemd_network_la-sd-dhcp6-lease.lo' libtool=yes @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@      DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@  $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libsystemd_network_la_CFLAGS) $(CFLAGS) -c -o src/libsystemd-network/libsystemd_network_la-sd-dhcp6-lease.lo `test -f 'src/libsystemd-network/sd-dhcp6-lease.c' || echo '$(srcdir)/'`src/libsystemd-network/sd-dhcp6-lease.c
+
 src/network/libsystemd_networkd_core_la-networkd-link.lo: src/network/networkd-link.c
 @am__fastdepCC_TRUE@   $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libsystemd_networkd_core_la_CFLAGS) $(CFLAGS) -MT src/network/libsystemd_networkd_core_la-networkd-link.lo -MD -MP -MF src/network/$(DEPDIR)/libsystemd_networkd_core_la-networkd-link.Tpo -c -o src/network/libsystemd_networkd_core_la-networkd-link.lo `test -f 'src/network/networkd-link.c' || echo '$(srcdir)/'`src/network/networkd-link.c
 @am__fastdepCC_TRUE@   $(AM_V_at)$(am__mv) src/network/$(DEPDIR)/libsystemd_networkd_core_la-networkd-link.Tpo src/network/$(DEPDIR)/libsystemd_networkd_core_la-networkd-link.Plo
@@ -12391,6 +13068,41 @@ src/network/libsystemd_networkd_core_la-networkd-veth.lo: src/network/networkd-v
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
 @am__fastdepCC_FALSE@  $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libsystemd_networkd_core_la_CFLAGS) $(CFLAGS) -c -o src/network/libsystemd_networkd_core_la-networkd-veth.lo `test -f 'src/network/networkd-veth.c' || echo '$(srcdir)/'`src/network/networkd-veth.c
 
+src/network/libsystemd_networkd_core_la-networkd-vxlan.lo: src/network/networkd-vxlan.c
+@am__fastdepCC_TRUE@   $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libsystemd_networkd_core_la_CFLAGS) $(CFLAGS) -MT src/network/libsystemd_networkd_core_la-networkd-vxlan.lo -MD -MP -MF src/network/$(DEPDIR)/libsystemd_networkd_core_la-networkd-vxlan.Tpo -c -o src/network/libsystemd_networkd_core_la-networkd-vxlan.lo `test -f 'src/network/networkd-vxlan.c' || echo '$(srcdir)/'`src/network/networkd-vxlan.c
+@am__fastdepCC_TRUE@   $(AM_V_at)$(am__mv) src/network/$(DEPDIR)/libsystemd_networkd_core_la-networkd-vxlan.Tpo src/network/$(DEPDIR)/libsystemd_networkd_core_la-networkd-vxlan.Plo
+@AMDEP_TRUE@@am__fastdepCC_FALSE@      $(AM_V_CC)source='src/network/networkd-vxlan.c' object='src/network/libsystemd_networkd_core_la-networkd-vxlan.lo' libtool=yes @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@      DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@  $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libsystemd_networkd_core_la_CFLAGS) $(CFLAGS) -c -o src/network/libsystemd_networkd_core_la-networkd-vxlan.lo `test -f 'src/network/networkd-vxlan.c' || echo '$(srcdir)/'`src/network/networkd-vxlan.c
+
+src/network/libsystemd_networkd_core_la-networkd-vlan.lo: src/network/networkd-vlan.c
+@am__fastdepCC_TRUE@   $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libsystemd_networkd_core_la_CFLAGS) $(CFLAGS) -MT src/network/libsystemd_networkd_core_la-networkd-vlan.lo -MD -MP -MF src/network/$(DEPDIR)/libsystemd_networkd_core_la-networkd-vlan.Tpo -c -o src/network/libsystemd_networkd_core_la-networkd-vlan.lo `test -f 'src/network/networkd-vlan.c' || echo '$(srcdir)/'`src/network/networkd-vlan.c
+@am__fastdepCC_TRUE@   $(AM_V_at)$(am__mv) src/network/$(DEPDIR)/libsystemd_networkd_core_la-networkd-vlan.Tpo src/network/$(DEPDIR)/libsystemd_networkd_core_la-networkd-vlan.Plo
+@AMDEP_TRUE@@am__fastdepCC_FALSE@      $(AM_V_CC)source='src/network/networkd-vlan.c' object='src/network/libsystemd_networkd_core_la-networkd-vlan.lo' libtool=yes @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@      DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@  $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libsystemd_networkd_core_la_CFLAGS) $(CFLAGS) -c -o src/network/libsystemd_networkd_core_la-networkd-vlan.lo `test -f 'src/network/networkd-vlan.c' || echo '$(srcdir)/'`src/network/networkd-vlan.c
+
+src/network/libsystemd_networkd_core_la-networkd-macvlan.lo: src/network/networkd-macvlan.c
+@am__fastdepCC_TRUE@   $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libsystemd_networkd_core_la_CFLAGS) $(CFLAGS) -MT src/network/libsystemd_networkd_core_la-networkd-macvlan.lo -MD -MP -MF src/network/$(DEPDIR)/libsystemd_networkd_core_la-networkd-macvlan.Tpo -c -o src/network/libsystemd_networkd_core_la-networkd-macvlan.lo `test -f 'src/network/networkd-macvlan.c' || echo '$(srcdir)/'`src/network/networkd-macvlan.c
+@am__fastdepCC_TRUE@   $(AM_V_at)$(am__mv) src/network/$(DEPDIR)/libsystemd_networkd_core_la-networkd-macvlan.Tpo src/network/$(DEPDIR)/libsystemd_networkd_core_la-networkd-macvlan.Plo
+@AMDEP_TRUE@@am__fastdepCC_FALSE@      $(AM_V_CC)source='src/network/networkd-macvlan.c' object='src/network/libsystemd_networkd_core_la-networkd-macvlan.lo' libtool=yes @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@      DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@  $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libsystemd_networkd_core_la_CFLAGS) $(CFLAGS) -c -o src/network/libsystemd_networkd_core_la-networkd-macvlan.lo `test -f 'src/network/networkd-macvlan.c' || echo '$(srcdir)/'`src/network/networkd-macvlan.c
+
+src/network/libsystemd_networkd_core_la-networkd-dummy.lo: src/network/networkd-dummy.c
+@am__fastdepCC_TRUE@   $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libsystemd_networkd_core_la_CFLAGS) $(CFLAGS) -MT src/network/libsystemd_networkd_core_la-networkd-dummy.lo -MD -MP -MF src/network/$(DEPDIR)/libsystemd_networkd_core_la-networkd-dummy.Tpo -c -o src/network/libsystemd_networkd_core_la-networkd-dummy.lo `test -f 'src/network/networkd-dummy.c' || echo '$(srcdir)/'`src/network/networkd-dummy.c
+@am__fastdepCC_TRUE@   $(AM_V_at)$(am__mv) src/network/$(DEPDIR)/libsystemd_networkd_core_la-networkd-dummy.Tpo src/network/$(DEPDIR)/libsystemd_networkd_core_la-networkd-dummy.Plo
+@AMDEP_TRUE@@am__fastdepCC_FALSE@      $(AM_V_CC)source='src/network/networkd-dummy.c' object='src/network/libsystemd_networkd_core_la-networkd-dummy.lo' libtool=yes @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@      DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@  $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libsystemd_networkd_core_la_CFLAGS) $(CFLAGS) -c -o src/network/libsystemd_networkd_core_la-networkd-dummy.lo `test -f 'src/network/networkd-dummy.c' || echo '$(srcdir)/'`src/network/networkd-dummy.c
+
+src/network/libsystemd_networkd_core_la-networkd-tuntap.lo: src/network/networkd-tuntap.c
+@am__fastdepCC_TRUE@   $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libsystemd_networkd_core_la_CFLAGS) $(CFLAGS) -MT src/network/libsystemd_networkd_core_la-networkd-tuntap.lo -MD -MP -MF src/network/$(DEPDIR)/libsystemd_networkd_core_la-networkd-tuntap.Tpo -c -o src/network/libsystemd_networkd_core_la-networkd-tuntap.lo `test -f 'src/network/networkd-tuntap.c' || echo '$(srcdir)/'`src/network/networkd-tuntap.c
+@am__fastdepCC_TRUE@   $(AM_V_at)$(am__mv) src/network/$(DEPDIR)/libsystemd_networkd_core_la-networkd-tuntap.Tpo src/network/$(DEPDIR)/libsystemd_networkd_core_la-networkd-tuntap.Plo
+@AMDEP_TRUE@@am__fastdepCC_FALSE@      $(AM_V_CC)source='src/network/networkd-tuntap.c' object='src/network/libsystemd_networkd_core_la-networkd-tuntap.lo' libtool=yes @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@      DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@  $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libsystemd_networkd_core_la_CFLAGS) $(CFLAGS) -c -o src/network/libsystemd_networkd_core_la-networkd-tuntap.lo `test -f 'src/network/networkd-tuntap.c' || echo '$(srcdir)/'`src/network/networkd-tuntap.c
+
 src/network/libsystemd_networkd_core_la-networkd-network.lo: src/network/networkd-network.c
 @am__fastdepCC_TRUE@   $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libsystemd_networkd_core_la_CFLAGS) $(CFLAGS) -MT src/network/libsystemd_networkd_core_la-networkd-network.lo -MD -MP -MF src/network/$(DEPDIR)/libsystemd_networkd_core_la-networkd-network.Tpo -c -o src/network/libsystemd_networkd_core_la-networkd-network.lo `test -f 'src/network/networkd-network.c' || echo '$(srcdir)/'`src/network/networkd-network.c
 @am__fastdepCC_TRUE@   $(AM_V_at)$(am__mv) src/network/$(DEPDIR)/libsystemd_networkd_core_la-networkd-network.Tpo src/network/$(DEPDIR)/libsystemd_networkd_core_la-networkd-network.Plo
@@ -12419,6 +13131,13 @@ src/network/libsystemd_networkd_core_la-networkd-manager.lo: src/network/network
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
 @am__fastdepCC_FALSE@  $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libsystemd_networkd_core_la_CFLAGS) $(CFLAGS) -c -o src/network/libsystemd_networkd_core_la-networkd-manager.lo `test -f 'src/network/networkd-manager.c' || echo '$(srcdir)/'`src/network/networkd-manager.c
 
+src/network/libsystemd_networkd_core_la-networkd-address-pool.lo: src/network/networkd-address-pool.c
+@am__fastdepCC_TRUE@   $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libsystemd_networkd_core_la_CFLAGS) $(CFLAGS) -MT src/network/libsystemd_networkd_core_la-networkd-address-pool.lo -MD -MP -MF src/network/$(DEPDIR)/libsystemd_networkd_core_la-networkd-address-pool.Tpo -c -o src/network/libsystemd_networkd_core_la-networkd-address-pool.lo `test -f 'src/network/networkd-address-pool.c' || echo '$(srcdir)/'`src/network/networkd-address-pool.c
+@am__fastdepCC_TRUE@   $(AM_V_at)$(am__mv) src/network/$(DEPDIR)/libsystemd_networkd_core_la-networkd-address-pool.Tpo src/network/$(DEPDIR)/libsystemd_networkd_core_la-networkd-address-pool.Plo
+@AMDEP_TRUE@@am__fastdepCC_FALSE@      $(AM_V_CC)source='src/network/networkd-address-pool.c' object='src/network/libsystemd_networkd_core_la-networkd-address-pool.lo' libtool=yes @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@      DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@  $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libsystemd_networkd_core_la_CFLAGS) $(CFLAGS) -c -o src/network/libsystemd_networkd_core_la-networkd-address-pool.lo `test -f 'src/network/networkd-address-pool.c' || echo '$(srcdir)/'`src/network/networkd-address-pool.c
+
 src/network/libsystemd_networkd_core_la-networkd-network-gperf.lo: src/network/networkd-network-gperf.c
 @am__fastdepCC_TRUE@   $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libsystemd_networkd_core_la_CFLAGS) $(CFLAGS) -MT src/network/libsystemd_networkd_core_la-networkd-network-gperf.lo -MD -MP -MF src/network/$(DEPDIR)/libsystemd_networkd_core_la-networkd-network-gperf.Tpo -c -o src/network/libsystemd_networkd_core_la-networkd-network-gperf.lo `test -f 'src/network/networkd-network-gperf.c' || echo '$(srcdir)/'`src/network/networkd-network-gperf.c
 @am__fastdepCC_TRUE@   $(AM_V_at)$(am__mv) src/network/$(DEPDIR)/libsystemd_networkd_core_la-networkd-network-gperf.Tpo src/network/$(DEPDIR)/libsystemd_networkd_core_la-networkd-network-gperf.Plo
@@ -12811,13 +13530,6 @@ src/shared/libsystemd_shared_la-bus-label.lo: src/shared/bus-label.c
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
 @am__fastdepCC_FALSE@  $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libsystemd_shared_la_CFLAGS) $(CFLAGS) -c -o src/shared/libsystemd_shared_la-bus-label.lo `test -f 'src/shared/bus-label.c' || echo '$(srcdir)/'`src/shared/bus-label.c
 
-src/shared/libsystemd_shared_la-generator.lo: src/shared/generator.c
-@am__fastdepCC_TRUE@   $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libsystemd_shared_la_CFLAGS) $(CFLAGS) -MT src/shared/libsystemd_shared_la-generator.lo -MD -MP -MF src/shared/$(DEPDIR)/libsystemd_shared_la-generator.Tpo -c -o src/shared/libsystemd_shared_la-generator.lo `test -f 'src/shared/generator.c' || echo '$(srcdir)/'`src/shared/generator.c
-@am__fastdepCC_TRUE@   $(AM_V_at)$(am__mv) src/shared/$(DEPDIR)/libsystemd_shared_la-generator.Tpo src/shared/$(DEPDIR)/libsystemd_shared_la-generator.Plo
-@AMDEP_TRUE@@am__fastdepCC_FALSE@      $(AM_V_CC)source='src/shared/generator.c' object='src/shared/libsystemd_shared_la-generator.lo' libtool=yes @AMDEPBACKSLASH@
-@AMDEP_TRUE@@am__fastdepCC_FALSE@      DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
-@am__fastdepCC_FALSE@  $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libsystemd_shared_la_CFLAGS) $(CFLAGS) -c -o src/shared/libsystemd_shared_la-generator.lo `test -f 'src/shared/generator.c' || echo '$(srcdir)/'`src/shared/generator.c
-
 src/shared/libsystemd_shared_la-clean-ipc.lo: src/shared/clean-ipc.c
 @am__fastdepCC_TRUE@   $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libsystemd_shared_la_CFLAGS) $(CFLAGS) -MT src/shared/libsystemd_shared_la-clean-ipc.lo -MD -MP -MF src/shared/$(DEPDIR)/libsystemd_shared_la-clean-ipc.Tpo -c -o src/shared/libsystemd_shared_la-clean-ipc.lo `test -f 'src/shared/clean-ipc.c' || echo '$(srcdir)/'`src/shared/clean-ipc.c
 @am__fastdepCC_TRUE@   $(AM_V_at)$(am__mv) src/shared/$(DEPDIR)/libsystemd_shared_la-clean-ipc.Tpo src/shared/$(DEPDIR)/libsystemd_shared_la-clean-ipc.Plo
@@ -12860,6 +13572,13 @@ src/shared/libsystemd_shared_la-copy.lo: src/shared/copy.c
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
 @am__fastdepCC_FALSE@  $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libsystemd_shared_la_CFLAGS) $(CFLAGS) -c -o src/shared/libsystemd_shared_la-copy.lo `test -f 'src/shared/copy.c' || echo '$(srcdir)/'`src/shared/copy.c
 
+src/shared/libsystemd_shared_la-base-filesystem.lo: src/shared/base-filesystem.c
+@am__fastdepCC_TRUE@   $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libsystemd_shared_la_CFLAGS) $(CFLAGS) -MT src/shared/libsystemd_shared_la-base-filesystem.lo -MD -MP -MF src/shared/$(DEPDIR)/libsystemd_shared_la-base-filesystem.Tpo -c -o src/shared/libsystemd_shared_la-base-filesystem.lo `test -f 'src/shared/base-filesystem.c' || echo '$(srcdir)/'`src/shared/base-filesystem.c
+@am__fastdepCC_TRUE@   $(AM_V_at)$(am__mv) src/shared/$(DEPDIR)/libsystemd_shared_la-base-filesystem.Tpo src/shared/$(DEPDIR)/libsystemd_shared_la-base-filesystem.Plo
+@AMDEP_TRUE@@am__fastdepCC_FALSE@      $(AM_V_CC)source='src/shared/base-filesystem.c' object='src/shared/libsystemd_shared_la-base-filesystem.lo' libtool=yes @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@      DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@  $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libsystemd_shared_la_CFLAGS) $(CFLAGS) -c -o src/shared/libsystemd_shared_la-base-filesystem.lo `test -f 'src/shared/base-filesystem.c' || echo '$(srcdir)/'`src/shared/base-filesystem.c
+
 src/libsystemd/sd-bus/libsystemd_la-sd-bus.lo: src/libsystemd/sd-bus/sd-bus.c
 @am__fastdepCC_TRUE@   $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libsystemd_la_CFLAGS) $(CFLAGS) -MT src/libsystemd/sd-bus/libsystemd_la-sd-bus.lo -MD -MP -MF src/libsystemd/sd-bus/$(DEPDIR)/libsystemd_la-sd-bus.Tpo -c -o src/libsystemd/sd-bus/libsystemd_la-sd-bus.lo `test -f 'src/libsystemd/sd-bus/sd-bus.c' || echo '$(srcdir)/'`src/libsystemd/sd-bus/sd-bus.c
 @am__fastdepCC_TRUE@   $(AM_V_at)$(am__mv) src/libsystemd/sd-bus/$(DEPDIR)/libsystemd_la-sd-bus.Tpo src/libsystemd/sd-bus/$(DEPDIR)/libsystemd_la-sd-bus.Plo
@@ -13070,6 +13789,13 @@ src/libsystemd/sd-login/libsystemd_la-sd-login.lo: src/libsystemd/sd-login/sd-lo
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
 @am__fastdepCC_FALSE@  $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libsystemd_la_CFLAGS) $(CFLAGS) -c -o src/libsystemd/sd-login/libsystemd_la-sd-login.lo `test -f 'src/libsystemd/sd-login/sd-login.c' || echo '$(srcdir)/'`src/libsystemd/sd-login/sd-login.c
 
+src/libsystemd/sd-path/libsystemd_la-sd-path.lo: src/libsystemd/sd-path/sd-path.c
+@am__fastdepCC_TRUE@   $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libsystemd_la_CFLAGS) $(CFLAGS) -MT src/libsystemd/sd-path/libsystemd_la-sd-path.lo -MD -MP -MF src/libsystemd/sd-path/$(DEPDIR)/libsystemd_la-sd-path.Tpo -c -o src/libsystemd/sd-path/libsystemd_la-sd-path.lo `test -f 'src/libsystemd/sd-path/sd-path.c' || echo '$(srcdir)/'`src/libsystemd/sd-path/sd-path.c
+@am__fastdepCC_TRUE@   $(AM_V_at)$(am__mv) src/libsystemd/sd-path/$(DEPDIR)/libsystemd_la-sd-path.Tpo src/libsystemd/sd-path/$(DEPDIR)/libsystemd_la-sd-path.Plo
+@AMDEP_TRUE@@am__fastdepCC_FALSE@      $(AM_V_CC)source='src/libsystemd/sd-path/sd-path.c' object='src/libsystemd/sd-path/libsystemd_la-sd-path.lo' libtool=yes @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@      DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@  $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libsystemd_la_CFLAGS) $(CFLAGS) -c -o src/libsystemd/sd-path/libsystemd_la-sd-path.lo `test -f 'src/libsystemd/sd-path/sd-path.c' || echo '$(srcdir)/'`src/libsystemd/sd-path/sd-path.c
+
 src/libsystemd/sd-resolve/libsystemd_la-sd-resolve.lo: src/libsystemd/sd-resolve/sd-resolve.c
 @am__fastdepCC_TRUE@   $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libsystemd_la_CFLAGS) $(CFLAGS) -MT src/libsystemd/sd-resolve/libsystemd_la-sd-resolve.lo -MD -MP -MF src/libsystemd/sd-resolve/$(DEPDIR)/libsystemd_la-sd-resolve.Tpo -c -o src/libsystemd/sd-resolve/libsystemd_la-sd-resolve.lo `test -f 'src/libsystemd/sd-resolve/sd-resolve.c' || echo '$(srcdir)/'`src/libsystemd/sd-resolve/sd-resolve.c
 @am__fastdepCC_TRUE@   $(AM_V_at)$(am__mv) src/libsystemd/sd-resolve/$(DEPDIR)/libsystemd_la-sd-resolve.Tpo src/libsystemd/sd-resolve/$(DEPDIR)/libsystemd_la-sd-resolve.Plo
@@ -13455,12 +14181,12 @@ src/python-systemd/login_la-pyutil.lo: src/python-systemd/pyutil.c
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
 @am__fastdepCC_FALSE@  $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(login_la_CFLAGS) $(CFLAGS) -c -o src/python-systemd/login_la-pyutil.lo `test -f 'src/python-systemd/pyutil.c' || echo '$(srcdir)/'`src/python-systemd/pyutil.c
 
-src/login/pam_systemd_la-pam-module.lo: src/login/pam-module.c
-@am__fastdepCC_TRUE@   $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(pam_systemd_la_CFLAGS) $(CFLAGS) -MT src/login/pam_systemd_la-pam-module.lo -MD -MP -MF src/login/$(DEPDIR)/pam_systemd_la-pam-module.Tpo -c -o src/login/pam_systemd_la-pam-module.lo `test -f 'src/login/pam-module.c' || echo '$(srcdir)/'`src/login/pam-module.c
-@am__fastdepCC_TRUE@   $(AM_V_at)$(am__mv) src/login/$(DEPDIR)/pam_systemd_la-pam-module.Tpo src/login/$(DEPDIR)/pam_systemd_la-pam-module.Plo
-@AMDEP_TRUE@@am__fastdepCC_FALSE@      $(AM_V_CC)source='src/login/pam-module.c' object='src/login/pam_systemd_la-pam-module.lo' libtool=yes @AMDEPBACKSLASH@
+src/login/pam_systemd_la-pam_systemd.lo: src/login/pam_systemd.c
+@am__fastdepCC_TRUE@   $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(pam_systemd_la_CFLAGS) $(CFLAGS) -MT src/login/pam_systemd_la-pam_systemd.lo -MD -MP -MF src/login/$(DEPDIR)/pam_systemd_la-pam_systemd.Tpo -c -o src/login/pam_systemd_la-pam_systemd.lo `test -f 'src/login/pam_systemd.c' || echo '$(srcdir)/'`src/login/pam_systemd.c
+@am__fastdepCC_TRUE@   $(AM_V_at)$(am__mv) src/login/$(DEPDIR)/pam_systemd_la-pam_systemd.Tpo src/login/$(DEPDIR)/pam_systemd_la-pam_systemd.Plo
+@AMDEP_TRUE@@am__fastdepCC_FALSE@      $(AM_V_CC)source='src/login/pam_systemd.c' object='src/login/pam_systemd_la-pam_systemd.lo' libtool=yes @AMDEPBACKSLASH@
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
-@am__fastdepCC_FALSE@  $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(pam_systemd_la_CFLAGS) $(CFLAGS) -c -o src/login/pam_systemd_la-pam-module.lo `test -f 'src/login/pam-module.c' || echo '$(srcdir)/'`src/login/pam-module.c
+@am__fastdepCC_FALSE@  $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(pam_systemd_la_CFLAGS) $(CFLAGS) -c -o src/login/pam_systemd_la-pam_systemd.lo `test -f 'src/login/pam_systemd.c' || echo '$(srcdir)/'`src/login/pam_systemd.c
 
 src/libsystemd/sd-bus/busctl-busctl.o: src/libsystemd/sd-bus/busctl.c
 @am__fastdepCC_TRUE@   $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(busctl_CFLAGS) $(CFLAGS) -MT src/libsystemd/sd-bus/busctl-busctl.o -MD -MP -MF src/libsystemd/sd-bus/$(DEPDIR)/busctl-busctl.Tpo -c -o src/libsystemd/sd-bus/busctl-busctl.o `test -f 'src/libsystemd/sd-bus/busctl.c' || echo '$(srcdir)/'`src/libsystemd/sd-bus/busctl.c
@@ -14064,6 +14790,7 @@ clean-libtool:
        -rm -rf src/libsystemd/sd-event/.libs src/libsystemd/sd-event/_libs
        -rm -rf src/libsystemd/sd-id128/.libs src/libsystemd/sd-id128/_libs
        -rm -rf src/libsystemd/sd-login/.libs src/libsystemd/sd-login/_libs
+       -rm -rf src/libsystemd/sd-path/.libs src/libsystemd/sd-path/_libs
        -rm -rf src/libsystemd/sd-resolve/.libs src/libsystemd/sd-resolve/_libs
        -rm -rf src/libsystemd/sd-rtnl/.libs src/libsystemd/sd-rtnl/_libs
        -rm -rf src/libsystemd/sd-utf8/.libs src/libsystemd/sd-utf8/_libs
@@ -14573,6 +15300,27 @@ uninstall-dist_pkgsysconfDATA:
        @list='$(dist_pkgsysconf_DATA)'; test -n "$(pkgsysconfdir)" || list=; \
        files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \
        dir='$(DESTDIR)$(pkgsysconfdir)'; $(am__uninstall_files_from_dir)
+install-dist_polkitpolicyDATA: $(dist_polkitpolicy_DATA)
+       @$(NORMAL_INSTALL)
+       @list='$(dist_polkitpolicy_DATA)'; test -n "$(polkitpolicydir)" || list=; \
+       if test -n "$$list"; then \
+         echo " $(MKDIR_P) '$(DESTDIR)$(polkitpolicydir)'"; \
+         $(MKDIR_P) "$(DESTDIR)$(polkitpolicydir)" || exit 1; \
+       fi; \
+       for p in $$list; do \
+         if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
+         echo "$$d$$p"; \
+       done | $(am__base_list) | \
+       while read files; do \
+         echo " $(INSTALL_DATA) $$files '$(DESTDIR)$(polkitpolicydir)'"; \
+         $(INSTALL_DATA) $$files "$(DESTDIR)$(polkitpolicydir)" || exit $$?; \
+       done
+
+uninstall-dist_polkitpolicyDATA:
+       @$(NORMAL_UNINSTALL)
+       @list='$(dist_polkitpolicy_DATA)'; test -n "$(polkitpolicydir)" || list=; \
+       files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \
+       dir='$(DESTDIR)$(polkitpolicydir)'; $(am__uninstall_files_from_dir)
 install-dist_sysctlDATA: $(dist_sysctl_DATA)
        @$(NORMAL_INSTALL)
        @list='$(dist_sysctl_DATA)'; test -n "$(sysctldir)" || list=; \
@@ -14594,6 +15342,27 @@ uninstall-dist_sysctlDATA:
        @list='$(dist_sysctl_DATA)'; test -n "$(sysctldir)" || list=; \
        files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \
        dir='$(DESTDIR)$(sysctldir)'; $(am__uninstall_files_from_dir)
+install-dist_systempresetDATA: $(dist_systempreset_DATA)
+       @$(NORMAL_INSTALL)
+       @list='$(dist_systempreset_DATA)'; test -n "$(systempresetdir)" || list=; \
+       if test -n "$$list"; then \
+         echo " $(MKDIR_P) '$(DESTDIR)$(systempresetdir)'"; \
+         $(MKDIR_P) "$(DESTDIR)$(systempresetdir)" || exit 1; \
+       fi; \
+       for p in $$list; do \
+         if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
+         echo "$$d$$p"; \
+       done | $(am__base_list) | \
+       while read files; do \
+         echo " $(INSTALL_DATA) $$files '$(DESTDIR)$(systempresetdir)'"; \
+         $(INSTALL_DATA) $$files "$(DESTDIR)$(systempresetdir)" || exit $$?; \
+       done
+
+uninstall-dist_systempresetDATA:
+       @$(NORMAL_UNINSTALL)
+       @list='$(dist_systempreset_DATA)'; test -n "$(systempresetdir)" || list=; \
+       files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \
+       dir='$(DESTDIR)$(systempresetdir)'; $(am__uninstall_files_from_dir)
 install-dist_systemunitDATA: $(dist_systemunit_DATA)
        @$(NORMAL_INSTALL)
        @list='$(dist_systemunit_DATA)'; test -n "$(systemunitdir)" || list=; \
@@ -14615,6 +15384,27 @@ uninstall-dist_systemunitDATA:
        @list='$(dist_systemunit_DATA)'; test -n "$(systemunitdir)" || list=; \
        files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \
        dir='$(DESTDIR)$(systemunitdir)'; $(am__uninstall_files_from_dir)
+install-dist_sysusersDATA: $(dist_sysusers_DATA)
+       @$(NORMAL_INSTALL)
+       @list='$(dist_sysusers_DATA)'; test -n "$(sysusersdir)" || list=; \
+       if test -n "$$list"; then \
+         echo " $(MKDIR_P) '$(DESTDIR)$(sysusersdir)'"; \
+         $(MKDIR_P) "$(DESTDIR)$(sysusersdir)" || exit 1; \
+       fi; \
+       for p in $$list; do \
+         if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
+         echo "$$d$$p"; \
+       done | $(am__base_list) | \
+       while read files; do \
+         echo " $(INSTALL_DATA) $$files '$(DESTDIR)$(sysusersdir)'"; \
+         $(INSTALL_DATA) $$files "$(DESTDIR)$(sysusersdir)" || exit $$?; \
+       done
+
+uninstall-dist_sysusersDATA:
+       @$(NORMAL_UNINSTALL)
+       @list='$(dist_sysusers_DATA)'; test -n "$(sysusersdir)" || list=; \
+       files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \
+       dir='$(DESTDIR)$(sysusersdir)'; $(am__uninstall_files_from_dir)
 install-dist_tmpfilesDATA: $(dist_tmpfiles_DATA)
        @$(NORMAL_INSTALL)
        @list='$(dist_tmpfiles_DATA)'; test -n "$(tmpfilesdir)" || list=; \
@@ -14783,27 +15573,6 @@ uninstall-nodist_pkgsysconfDATA:
        @list='$(nodist_pkgsysconf_DATA)'; test -n "$(pkgsysconfdir)" || list=; \
        files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \
        dir='$(DESTDIR)$(pkgsysconfdir)'; $(am__uninstall_files_from_dir)
-install-nodist_polkitpolicyDATA: $(nodist_polkitpolicy_DATA)
-       @$(NORMAL_INSTALL)
-       @list='$(nodist_polkitpolicy_DATA)'; test -n "$(polkitpolicydir)" || list=; \
-       if test -n "$$list"; then \
-         echo " $(MKDIR_P) '$(DESTDIR)$(polkitpolicydir)'"; \
-         $(MKDIR_P) "$(DESTDIR)$(polkitpolicydir)" || exit 1; \
-       fi; \
-       for p in $$list; do \
-         if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
-         echo "$$d$$p"; \
-       done | $(am__base_list) | \
-       while read files; do \
-         echo " $(INSTALL_DATA) $$files '$(DESTDIR)$(polkitpolicydir)'"; \
-         $(INSTALL_DATA) $$files "$(DESTDIR)$(polkitpolicydir)" || exit $$?; \
-       done
-
-uninstall-nodist_polkitpolicyDATA:
-       @$(NORMAL_UNINSTALL)
-       @list='$(nodist_polkitpolicy_DATA)'; test -n "$(polkitpolicydir)" || list=; \
-       files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \
-       dir='$(DESTDIR)$(polkitpolicydir)'; $(am__uninstall_files_from_dir)
 install-nodist_rpmmacrosDATA: $(nodist_rpmmacros_DATA)
        @$(NORMAL_INSTALL)
        @list='$(nodist_rpmmacros_DATA)'; test -n "$(rpmmacrosdir)" || list=; \
@@ -14846,6 +15615,27 @@ uninstall-nodist_systemunitDATA:
        @list='$(nodist_systemunit_DATA)'; test -n "$(systemunitdir)" || list=; \
        files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \
        dir='$(DESTDIR)$(systemunitdir)'; $(am__uninstall_files_from_dir)
+install-nodist_sysusersDATA: $(nodist_sysusers_DATA)
+       @$(NORMAL_INSTALL)
+       @list='$(nodist_sysusers_DATA)'; test -n "$(sysusersdir)" || list=; \
+       if test -n "$$list"; then \
+         echo " $(MKDIR_P) '$(DESTDIR)$(sysusersdir)'"; \
+         $(MKDIR_P) "$(DESTDIR)$(sysusersdir)" || exit 1; \
+       fi; \
+       for p in $$list; do \
+         if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
+         echo "$$d$$p"; \
+       done | $(am__base_list) | \
+       while read files; do \
+         echo " $(INSTALL_DATA) $$files '$(DESTDIR)$(sysusersdir)'"; \
+         $(INSTALL_DATA) $$files "$(DESTDIR)$(sysusersdir)" || exit $$?; \
+       done
+
+uninstall-nodist_sysusersDATA:
+       @$(NORMAL_UNINSTALL)
+       @list='$(nodist_sysusers_DATA)'; test -n "$(sysusersdir)" || list=; \
+       files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \
+       dir='$(DESTDIR)$(sysusersdir)'; $(am__uninstall_files_from_dir)
 install-nodist_udevrulesDATA: $(nodist_udevrules_DATA)
        @$(NORMAL_INSTALL)
        @list='$(nodist_udevrules_DATA)'; test -n "$(udevrulesdir)" || list=; \
@@ -15570,6 +16360,48 @@ test-architecture.log: test-architecture$(EXEEXT)
        --log-file $$b.log --trs-file $$b.trs \
        $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \
        "$$tst" $(AM_TESTS_FD_REDIRECT)
+test-socket-util.log: test-socket-util$(EXEEXT)
+       @p='test-socket-util$(EXEEXT)'; \
+       b='test-socket-util'; \
+       $(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \
+       --log-file $$b.log --trs-file $$b.trs \
+       $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \
+       "$$tst" $(AM_TESTS_FD_REDIRECT)
+test-fdset.log: test-fdset$(EXEEXT)
+       @p='test-fdset$(EXEEXT)'; \
+       b='test-fdset'; \
+       $(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \
+       --log-file $$b.log --trs-file $$b.trs \
+       $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \
+       "$$tst" $(AM_TESTS_FD_REDIRECT)
+test-conf-files.log: test-conf-files$(EXEEXT)
+       @p='test-conf-files$(EXEEXT)'; \
+       b='test-conf-files'; \
+       $(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \
+       --log-file $$b.log --trs-file $$b.trs \
+       $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \
+       "$$tst" $(AM_TESTS_FD_REDIRECT)
+test-capability.log: test-capability$(EXEEXT)
+       @p='test-capability$(EXEEXT)'; \
+       b='test-capability'; \
+       $(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \
+       --log-file $$b.log --trs-file $$b.trs \
+       $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \
+       "$$tst" $(AM_TESTS_FD_REDIRECT)
+test-async.log: test-async$(EXEEXT)
+       @p='test-async$(EXEEXT)'; \
+       b='test-async'; \
+       $(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \
+       --log-file $$b.log --trs-file $$b.trs \
+       $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \
+       "$$tst" $(AM_TESTS_FD_REDIRECT)
+test-ratelimit.log: test-ratelimit$(EXEEXT)
+       @p='test-ratelimit$(EXEEXT)'; \
+       b='test-ratelimit'; \
+       $(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \
+       --log-file $$b.log --trs-file $$b.trs \
+       $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \
+       "$$tst" $(AM_TESTS_FD_REDIRECT)
 test-bus-marshal.log: test-bus-marshal$(EXEEXT)
        @p='test-bus-marshal$(EXEEXT)'; \
        b='test-bus-marshal'; \
@@ -15717,6 +16549,13 @@ test-dhcp-client.log: test-dhcp-client$(EXEEXT)
        --log-file $$b.log --trs-file $$b.trs \
        $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \
        "$$tst" $(AM_TESTS_FD_REDIRECT)
+test-dhcp-server.log: test-dhcp-server$(EXEEXT)
+       @p='test-dhcp-server$(EXEEXT)'; \
+       b='test-dhcp-server'; \
+       $(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \
+       --log-file $$b.log --trs-file $$b.trs \
+       $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \
+       "$$tst" $(AM_TESTS_FD_REDIRECT)
 test-ipv4ll.log: test-ipv4ll$(EXEEXT)
        @p='test-ipv4ll$(EXEEXT)'; \
        b='test-ipv4ll'; \
@@ -15724,6 +16563,20 @@ test-ipv4ll.log: test-ipv4ll$(EXEEXT)
        --log-file $$b.log --trs-file $$b.trs \
        $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \
        "$$tst" $(AM_TESTS_FD_REDIRECT)
+test-icmp6-rs.log: test-icmp6-rs$(EXEEXT)
+       @p='test-icmp6-rs$(EXEEXT)'; \
+       b='test-icmp6-rs'; \
+       $(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \
+       --log-file $$b.log --trs-file $$b.trs \
+       $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \
+       "$$tst" $(AM_TESTS_FD_REDIRECT)
+test-dhcp6-client.log: test-dhcp6-client$(EXEEXT)
+       @p='test-dhcp6-client$(EXEEXT)'; \
+       b='test-dhcp6-client'; \
+       $(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \
+       --log-file $$b.log --trs-file $$b.trs \
+       $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \
+       "$$tst" $(AM_TESTS_FD_REDIRECT)
 test-id128.log: test-id128$(EXEEXT)
        @p='test-id128$(EXEEXT)'; \
        b='test-id128'; \
@@ -15808,6 +16661,13 @@ test-catalog.log: test-catalog$(EXEEXT)
        --log-file $$b.log --trs-file $$b.trs \
        $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \
        "$$tst" $(AM_TESTS_FD_REDIRECT)
+test-compress.log: test-compress$(EXEEXT)
+       @p='test-compress$(EXEEXT)'; \
+       b='test-compress'; \
+       $(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \
+       --log-file $$b.log --trs-file $$b.trs \
+       $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \
+       "$$tst" $(AM_TESTS_FD_REDIRECT)
 test-machine-tables.log: test-machine-tables$(EXEEXT)
        @p='test-machine-tables$(EXEEXT)'; \
        b='test-machine-tables'; \
@@ -16056,7 +16916,7 @@ install-binPROGRAMS: install-libLTLIBRARIES
 
 installdirs: installdirs-recursive
 installdirs-am:
-       for dir in "$(DESTDIR)$(libdir)" "$(DESTDIR)$(pamlibdir)" "$(DESTDIR)$(pkgpyexecdir)" "$(DESTDIR)$(bindir)" "$(DESTDIR)$(rootbindir)" "$(DESTDIR)$(rootlibexecdir)" "$(DESTDIR)$(systemgeneratordir)" "$(DESTDIR)$(udevlibexecdir)" "$(DESTDIR)$(bindir)" "$(DESTDIR)$(kernelinstalldir)" "$(DESTDIR)$(pkgpyexecdir)" "$(DESTDIR)$(man1dir)" "$(DESTDIR)$(man3dir)" "$(DESTDIR)$(man5dir)" "$(DESTDIR)$(man7dir)" "$(DESTDIR)$(man8dir)" "$(DESTDIR)$(bashcompletiondir)" "$(DESTDIR)$(catalogdir)" "$(DESTDIR)$(dbuspolicydir)" "$(DESTDIR)$(dbussystemservicedir)" "$(DESTDIR)$(docdir)" "$(DESTDIR)$(gatewayddocumentrootdir)" "$(DESTDIR)$(networkdir)" "$(DESTDIR)$(ntpunitsdir)" "$(DESTDIR)$(pamconfdir)" "$(DESTDIR)$(pkgdatadir)" "$(DESTDIR)$(pkgsysconfdir)" "$(DESTDIR)$(sysctldir)" "$(DESTDIR)$(systemunitdir)" "$(DESTDIR)$(tmpfilesdir)" "$(DESTDIR)$(udevconfdir)" "$(DESTDIR)$(udevhwdbdir)" "$(DESTDIR)$(udevrulesdir)" "$(DESTDIR)$(userunitdir)" "$(DESTDIR)$(zshcompletiondir)" "$(DESTDIR)$(girdir)" "$(DESTDIR)$(pkgsysconfdir)" "$(DESTDIR)$(polkitpolicydir)" "$(DESTDIR)$(rpmmacrosdir)" "$(DESTDIR)$(systemunitdir)" "$(DESTDIR)$(udevrulesdir)" "$(DESTDIR)$(userunitdir)" "$(DESTDIR)$(pkgconfigdatadir)" "$(DESTDIR)$(pkgconfiglibdir)" "$(DESTDIR)$(sharepkgconfigdir)" "$(DESTDIR)$(sysctldir)" "$(DESTDIR)$(sysvinitdir)" "$(DESTDIR)$(typelibsdir)" "$(DESTDIR)$(varlogdir)" "$(DESTDIR)$(includedir)" "$(DESTDIR)$(libgudev_includedir)" "$(DESTDIR)$(pkgincludedir)"; do \
+       for dir in "$(DESTDIR)$(libdir)" "$(DESTDIR)$(pamlibdir)" "$(DESTDIR)$(pkgpyexecdir)" "$(DESTDIR)$(bindir)" "$(DESTDIR)$(rootbindir)" "$(DESTDIR)$(rootlibexecdir)" "$(DESTDIR)$(systemgeneratordir)" "$(DESTDIR)$(udevlibexecdir)" "$(DESTDIR)$(bindir)" "$(DESTDIR)$(kernelinstalldir)" "$(DESTDIR)$(pkgpyexecdir)" "$(DESTDIR)$(man1dir)" "$(DESTDIR)$(man3dir)" "$(DESTDIR)$(man5dir)" "$(DESTDIR)$(man7dir)" "$(DESTDIR)$(man8dir)" "$(DESTDIR)$(bashcompletiondir)" "$(DESTDIR)$(catalogdir)" "$(DESTDIR)$(dbuspolicydir)" "$(DESTDIR)$(dbussystemservicedir)" "$(DESTDIR)$(docdir)" "$(DESTDIR)$(gatewayddocumentrootdir)" "$(DESTDIR)$(networkdir)" "$(DESTDIR)$(ntpunitsdir)" "$(DESTDIR)$(pamconfdir)" "$(DESTDIR)$(pkgdatadir)" "$(DESTDIR)$(pkgsysconfdir)" "$(DESTDIR)$(polkitpolicydir)" "$(DESTDIR)$(sysctldir)" "$(DESTDIR)$(systempresetdir)" "$(DESTDIR)$(systemunitdir)" "$(DESTDIR)$(sysusersdir)" "$(DESTDIR)$(tmpfilesdir)" "$(DESTDIR)$(udevconfdir)" "$(DESTDIR)$(udevhwdbdir)" "$(DESTDIR)$(udevrulesdir)" "$(DESTDIR)$(userunitdir)" "$(DESTDIR)$(zshcompletiondir)" "$(DESTDIR)$(girdir)" "$(DESTDIR)$(pkgsysconfdir)" "$(DESTDIR)$(rpmmacrosdir)" "$(DESTDIR)$(systemunitdir)" "$(DESTDIR)$(sysusersdir)" "$(DESTDIR)$(udevrulesdir)" "$(DESTDIR)$(userunitdir)" "$(DESTDIR)$(pkgconfigdatadir)" "$(DESTDIR)$(pkgconfiglibdir)" "$(DESTDIR)$(sharepkgconfigdir)" "$(DESTDIR)$(sysctldir)" "$(DESTDIR)$(sysvinitdir)" "$(DESTDIR)$(typelibsdir)" "$(DESTDIR)$(varlogdir)" "$(DESTDIR)$(includedir)" "$(DESTDIR)$(libgudev_includedir)" "$(DESTDIR)$(pkgincludedir)"; do \
          test -z "$$dir" || $(MKDIR_P) "$$dir"; \
        done
 install: $(BUILT_SOURCES)
@@ -16120,6 +16980,8 @@ distclean-generic:
        -rm -f src/cryptsetup/$(am__dirstamp)
        -rm -f src/dbus1-generator/$(DEPDIR)/$(am__dirstamp)
        -rm -f src/dbus1-generator/$(am__dirstamp)
+       -rm -f src/debug-generator/$(DEPDIR)/$(am__dirstamp)
+       -rm -f src/debug-generator/$(am__dirstamp)
        -rm -f src/delta/$(DEPDIR)/$(am__dirstamp)
        -rm -f src/delta/$(am__dirstamp)
        -rm -f src/detect-virt/$(DEPDIR)/$(am__dirstamp)
@@ -16154,6 +17016,8 @@ distclean-generic:
        -rm -f src/libsystemd/sd-id128/$(am__dirstamp)
        -rm -f src/libsystemd/sd-login/$(DEPDIR)/$(am__dirstamp)
        -rm -f src/libsystemd/sd-login/$(am__dirstamp)
+       -rm -f src/libsystemd/sd-path/$(DEPDIR)/$(am__dirstamp)
+       -rm -f src/libsystemd/sd-path/$(am__dirstamp)
        -rm -f src/libsystemd/sd-resolve/$(DEPDIR)/$(am__dirstamp)
        -rm -f src/libsystemd/sd-resolve/$(am__dirstamp)
        -rm -f src/libsystemd/sd-rtnl/$(DEPDIR)/$(am__dirstamp)
@@ -16180,6 +17044,8 @@ distclean-generic:
        -rm -f src/nspawn/$(am__dirstamp)
        -rm -f src/nss-myhostname/$(DEPDIR)/$(am__dirstamp)
        -rm -f src/nss-myhostname/$(am__dirstamp)
+       -rm -f src/path/$(DEPDIR)/$(am__dirstamp)
+       -rm -f src/path/$(am__dirstamp)
        -rm -f src/python-systemd/$(DEPDIR)/$(am__dirstamp)
        -rm -f src/python-systemd/$(am__dirstamp)
        -rm -f src/quotacheck/$(DEPDIR)/$(am__dirstamp)
@@ -16214,6 +17080,8 @@ distclean-generic:
        -rm -f src/system-update-generator/$(am__dirstamp)
        -rm -f src/systemctl/$(DEPDIR)/$(am__dirstamp)
        -rm -f src/systemctl/$(am__dirstamp)
+       -rm -f src/sysusers/$(DEPDIR)/$(am__dirstamp)
+       -rm -f src/sysusers/$(am__dirstamp)
        -rm -f src/sysv-generator/$(DEPDIR)/$(am__dirstamp)
        -rm -f src/sysv-generator/$(am__dirstamp)
        -rm -f src/test/$(DEPDIR)/$(am__dirstamp)
@@ -16244,6 +17112,8 @@ distclean-generic:
        -rm -f src/udev/scsi_id/$(am__dirstamp)
        -rm -f src/udev/v4l_id/$(DEPDIR)/$(am__dirstamp)
        -rm -f src/udev/v4l_id/$(am__dirstamp)
+       -rm -f src/update-done/$(DEPDIR)/$(am__dirstamp)
+       -rm -f src/update-done/$(am__dirstamp)
        -rm -f src/update-utmp/$(DEPDIR)/$(am__dirstamp)
        -rm -f src/update-utmp/$(am__dirstamp)
        -rm -f src/vconsole/$(DEPDIR)/$(am__dirstamp)
@@ -16266,7 +17136,7 @@ clean-am: clean-binPROGRAMS clean-checkPROGRAMS clean-generic \
 
 distclean: distclean-recursive
        -rm -f $(am__CONFIG_DISTCLEAN_FILES)
-       -rm -rf ./$(DEPDIR) src/ac-power/$(DEPDIR) src/activate/$(DEPDIR) src/analyze/$(DEPDIR) src/ask-password/$(DEPDIR) src/backlight/$(DEPDIR) src/binfmt/$(DEPDIR) src/boot/$(DEPDIR) src/bootchart/$(DEPDIR) src/bus-proxyd/$(DEPDIR) src/cgls/$(DEPDIR) src/cgroups-agent/$(DEPDIR) src/cgtop/$(DEPDIR) src/core/$(DEPDIR) src/cryptsetup/$(DEPDIR) src/dbus1-generator/$(DEPDIR) src/delta/$(DEPDIR) src/detect-virt/$(DEPDIR) src/efi-boot-generator/$(DEPDIR) src/fsck/$(DEPDIR) src/fstab-generator/$(DEPDIR) src/getty-generator/$(DEPDIR) src/gpt-auto-generator/$(DEPDIR) src/gudev/$(DEPDIR) src/hostname/$(DEPDIR) src/initctl/$(DEPDIR) src/journal/$(DEPDIR) src/libsystemd-network/$(DEPDIR) src/libsystemd/sd-bus/$(DEPDIR) src/libsystemd/sd-daemon/$(DEPDIR) src/libsystemd/sd-event/$(DEPDIR) src/libsystemd/sd-id128/$(DEPDIR) src/libsystemd/sd-login/$(DEPDIR) src/libsystemd/sd-resolve/$(DEPDIR) src/libsystemd/sd-rtnl/$(DEPDIR) src/libsystemd/sd-utf8/$(DEPDIR) src/libudev/$(DEPDIR) src/locale/$(DEPDIR) src/login/$(DEPDIR) src/machine-id-setup/$(DEPDIR) src/machine/$(DEPDIR) src/modules-load/$(DEPDIR) src/network/$(DEPDIR) src/notify/$(DEPDIR) src/nspawn/$(DEPDIR) src/nss-myhostname/$(DEPDIR) src/python-systemd/$(DEPDIR) src/quotacheck/$(DEPDIR) src/random-seed/$(DEPDIR) src/rc-local-generator/$(DEPDIR) src/readahead/$(DEPDIR) src/remount-fs/$(DEPDIR) src/reply-password/$(DEPDIR) src/resolve/$(DEPDIR) src/rfkill/$(DEPDIR) src/run/$(DEPDIR) src/shared/$(DEPDIR) src/shutdownd/$(DEPDIR) src/sleep/$(DEPDIR) src/socket-proxy/$(DEPDIR) src/sysctl/$(DEPDIR) src/system-update-generator/$(DEPDIR) src/systemctl/$(DEPDIR) src/sysv-generator/$(DEPDIR) src/test/$(DEPDIR) src/timedate/$(DEPDIR) src/timesync/$(DEPDIR) src/tmpfiles/$(DEPDIR) src/tty-ask-password-agent/$(DEPDIR) src/udev/$(DEPDIR) src/udev/accelerometer/$(DEPDIR) src/udev/ata_id/$(DEPDIR) src/udev/cdrom_id/$(DEPDIR) src/udev/collect/$(DEPDIR) src/udev/mtd_probe/$(DEPDIR) src/udev/net/$(DEPDIR) src/udev/scsi_id/$(DEPDIR) src/udev/v4l_id/$(DEPDIR) src/update-utmp/$(DEPDIR) src/vconsole/$(DEPDIR)
+       -rm -rf ./$(DEPDIR) src/ac-power/$(DEPDIR) src/activate/$(DEPDIR) src/analyze/$(DEPDIR) src/ask-password/$(DEPDIR) src/backlight/$(DEPDIR) src/binfmt/$(DEPDIR) src/boot/$(DEPDIR) src/bootchart/$(DEPDIR) src/bus-proxyd/$(DEPDIR) src/cgls/$(DEPDIR) src/cgroups-agent/$(DEPDIR) src/cgtop/$(DEPDIR) src/core/$(DEPDIR) src/cryptsetup/$(DEPDIR) src/dbus1-generator/$(DEPDIR) src/debug-generator/$(DEPDIR) src/delta/$(DEPDIR) src/detect-virt/$(DEPDIR) src/efi-boot-generator/$(DEPDIR) src/fsck/$(DEPDIR) src/fstab-generator/$(DEPDIR) src/getty-generator/$(DEPDIR) src/gpt-auto-generator/$(DEPDIR) src/gudev/$(DEPDIR) src/hostname/$(DEPDIR) src/initctl/$(DEPDIR) src/journal/$(DEPDIR) src/libsystemd-network/$(DEPDIR) src/libsystemd/sd-bus/$(DEPDIR) src/libsystemd/sd-daemon/$(DEPDIR) src/libsystemd/sd-event/$(DEPDIR) src/libsystemd/sd-id128/$(DEPDIR) src/libsystemd/sd-login/$(DEPDIR) src/libsystemd/sd-path/$(DEPDIR) src/libsystemd/sd-resolve/$(DEPDIR) src/libsystemd/sd-rtnl/$(DEPDIR) src/libsystemd/sd-utf8/$(DEPDIR) src/libudev/$(DEPDIR) src/locale/$(DEPDIR) src/login/$(DEPDIR) src/machine-id-setup/$(DEPDIR) src/machine/$(DEPDIR) src/modules-load/$(DEPDIR) src/network/$(DEPDIR) src/notify/$(DEPDIR) src/nspawn/$(DEPDIR) src/nss-myhostname/$(DEPDIR) src/path/$(DEPDIR) src/python-systemd/$(DEPDIR) src/quotacheck/$(DEPDIR) src/random-seed/$(DEPDIR) src/rc-local-generator/$(DEPDIR) src/readahead/$(DEPDIR) src/remount-fs/$(DEPDIR) src/reply-password/$(DEPDIR) src/resolve/$(DEPDIR) src/rfkill/$(DEPDIR) src/run/$(DEPDIR) src/shared/$(DEPDIR) src/shutdownd/$(DEPDIR) src/sleep/$(DEPDIR) src/socket-proxy/$(DEPDIR) src/sysctl/$(DEPDIR) src/system-update-generator/$(DEPDIR) src/systemctl/$(DEPDIR) src/sysusers/$(DEPDIR) src/sysv-generator/$(DEPDIR) src/test/$(DEPDIR) src/timedate/$(DEPDIR) src/timesync/$(DEPDIR) src/tmpfiles/$(DEPDIR) src/tty-ask-password-agent/$(DEPDIR) src/udev/$(DEPDIR) src/udev/accelerometer/$(DEPDIR) src/udev/ata_id/$(DEPDIR) src/udev/cdrom_id/$(DEPDIR) src/udev/collect/$(DEPDIR) src/udev/mtd_probe/$(DEPDIR) src/udev/net/$(DEPDIR) src/udev/scsi_id/$(DEPDIR) src/udev/v4l_id/$(DEPDIR) src/update-done/$(DEPDIR) src/update-utmp/$(DEPDIR) src/vconsole/$(DEPDIR)
        -rm -f Makefile
 distclean-am: clean-am distclean-compile distclean-generic \
        distclean-hdr distclean-libtool distclean-local distclean-tags
@@ -16290,20 +17160,22 @@ install-data-am: install-dist_bashcompletionDATA \
        install-dist_kernelinstallSCRIPTS install-dist_networkDATA \
        install-dist_ntpunitsDATA install-dist_pamconfDATA \
        install-dist_pkgdataDATA install-dist_pkgsysconfDATA \
-       install-dist_sysctlDATA install-dist_systemunitDATA \
-       install-dist_tmpfilesDATA install-dist_udevconfDATA \
-       install-dist_udevhwdbDATA install-dist_udevrulesDATA \
-       install-dist_userunitDATA install-dist_zshcompletionDATA \
-       install-girDATA install-includeHEADERS \
-       install-libgudev_includeHEADERS install-man \
-       install-nodist_pkgsysconfDATA install-nodist_polkitpolicyDATA \
+       install-dist_polkitpolicyDATA install-dist_sysctlDATA \
+       install-dist_systempresetDATA install-dist_systemunitDATA \
+       install-dist_sysusersDATA install-dist_tmpfilesDATA \
+       install-dist_udevconfDATA install-dist_udevhwdbDATA \
+       install-dist_udevrulesDATA install-dist_userunitDATA \
+       install-dist_zshcompletionDATA install-girDATA \
+       install-includeHEADERS install-libgudev_includeHEADERS \
+       install-man install-nodist_pkgsysconfDATA \
        install-nodist_rpmmacrosDATA install-nodist_systemunitDATA \
-       install-nodist_udevrulesDATA install-nodist_userunitDATA \
-       install-pamlibLTLIBRARIES install-pkgconfigdataDATA \
-       install-pkgconfiglibDATA install-pkgincludeHEADERS \
-       install-rootbinPROGRAMS install-sharepkgconfigDATA \
-       install-sysctlDATA install-systemgeneratorPROGRAMS \
-       install-sysvinitDATA install-typelibsDATA install-varlogDATA
+       install-nodist_sysusersDATA install-nodist_udevrulesDATA \
+       install-nodist_userunitDATA install-pamlibLTLIBRARIES \
+       install-pkgconfigdataDATA install-pkgconfiglibDATA \
+       install-pkgincludeHEADERS install-rootbinPROGRAMS \
+       install-sharepkgconfigDATA install-sysctlDATA \
+       install-systemgeneratorPROGRAMS install-sysvinitDATA \
+       install-typelibsDATA install-varlogDATA
        @$(NORMAL_INSTALL)
        $(MAKE) $(AM_MAKEFLAGS) install-data-hook
 install-dvi: install-dvi-recursive
@@ -16340,7 +17212,7 @@ installcheck-am:
 maintainer-clean: maintainer-clean-recursive
        -rm -f $(am__CONFIG_DISTCLEAN_FILES)
        -rm -rf $(top_srcdir)/autom4te.cache
-       -rm -rf ./$(DEPDIR) src/ac-power/$(DEPDIR) src/activate/$(DEPDIR) src/analyze/$(DEPDIR) src/ask-password/$(DEPDIR) src/backlight/$(DEPDIR) src/binfmt/$(DEPDIR) src/boot/$(DEPDIR) src/bootchart/$(DEPDIR) src/bus-proxyd/$(DEPDIR) src/cgls/$(DEPDIR) src/cgroups-agent/$(DEPDIR) src/cgtop/$(DEPDIR) src/core/$(DEPDIR) src/cryptsetup/$(DEPDIR) src/dbus1-generator/$(DEPDIR) src/delta/$(DEPDIR) src/detect-virt/$(DEPDIR) src/efi-boot-generator/$(DEPDIR) src/fsck/$(DEPDIR) src/fstab-generator/$(DEPDIR) src/getty-generator/$(DEPDIR) src/gpt-auto-generator/$(DEPDIR) src/gudev/$(DEPDIR) src/hostname/$(DEPDIR) src/initctl/$(DEPDIR) src/journal/$(DEPDIR) src/libsystemd-network/$(DEPDIR) src/libsystemd/sd-bus/$(DEPDIR) src/libsystemd/sd-daemon/$(DEPDIR) src/libsystemd/sd-event/$(DEPDIR) src/libsystemd/sd-id128/$(DEPDIR) src/libsystemd/sd-login/$(DEPDIR) src/libsystemd/sd-resolve/$(DEPDIR) src/libsystemd/sd-rtnl/$(DEPDIR) src/libsystemd/sd-utf8/$(DEPDIR) src/libudev/$(DEPDIR) src/locale/$(DEPDIR) src/login/$(DEPDIR) src/machine-id-setup/$(DEPDIR) src/machine/$(DEPDIR) src/modules-load/$(DEPDIR) src/network/$(DEPDIR) src/notify/$(DEPDIR) src/nspawn/$(DEPDIR) src/nss-myhostname/$(DEPDIR) src/python-systemd/$(DEPDIR) src/quotacheck/$(DEPDIR) src/random-seed/$(DEPDIR) src/rc-local-generator/$(DEPDIR) src/readahead/$(DEPDIR) src/remount-fs/$(DEPDIR) src/reply-password/$(DEPDIR) src/resolve/$(DEPDIR) src/rfkill/$(DEPDIR) src/run/$(DEPDIR) src/shared/$(DEPDIR) src/shutdownd/$(DEPDIR) src/sleep/$(DEPDIR) src/socket-proxy/$(DEPDIR) src/sysctl/$(DEPDIR) src/system-update-generator/$(DEPDIR) src/systemctl/$(DEPDIR) src/sysv-generator/$(DEPDIR) src/test/$(DEPDIR) src/timedate/$(DEPDIR) src/timesync/$(DEPDIR) src/tmpfiles/$(DEPDIR) src/tty-ask-password-agent/$(DEPDIR) src/udev/$(DEPDIR) src/udev/accelerometer/$(DEPDIR) src/udev/ata_id/$(DEPDIR) src/udev/cdrom_id/$(DEPDIR) src/udev/collect/$(DEPDIR) src/udev/mtd_probe/$(DEPDIR) src/udev/net/$(DEPDIR) src/udev/scsi_id/$(DEPDIR) src/udev/v4l_id/$(DEPDIR) src/update-utmp/$(DEPDIR) src/vconsole/$(DEPDIR)
+       -rm -rf ./$(DEPDIR) src/ac-power/$(DEPDIR) src/activate/$(DEPDIR) src/analyze/$(DEPDIR) src/ask-password/$(DEPDIR) src/backlight/$(DEPDIR) src/binfmt/$(DEPDIR) src/boot/$(DEPDIR) src/bootchart/$(DEPDIR) src/bus-proxyd/$(DEPDIR) src/cgls/$(DEPDIR) src/cgroups-agent/$(DEPDIR) src/cgtop/$(DEPDIR) src/core/$(DEPDIR) src/cryptsetup/$(DEPDIR) src/dbus1-generator/$(DEPDIR) src/debug-generator/$(DEPDIR) src/delta/$(DEPDIR) src/detect-virt/$(DEPDIR) src/efi-boot-generator/$(DEPDIR) src/fsck/$(DEPDIR) src/fstab-generator/$(DEPDIR) src/getty-generator/$(DEPDIR) src/gpt-auto-generator/$(DEPDIR) src/gudev/$(DEPDIR) src/hostname/$(DEPDIR) src/initctl/$(DEPDIR) src/journal/$(DEPDIR) src/libsystemd-network/$(DEPDIR) src/libsystemd/sd-bus/$(DEPDIR) src/libsystemd/sd-daemon/$(DEPDIR) src/libsystemd/sd-event/$(DEPDIR) src/libsystemd/sd-id128/$(DEPDIR) src/libsystemd/sd-login/$(DEPDIR) src/libsystemd/sd-path/$(DEPDIR) src/libsystemd/sd-resolve/$(DEPDIR) src/libsystemd/sd-rtnl/$(DEPDIR) src/libsystemd/sd-utf8/$(DEPDIR) src/libudev/$(DEPDIR) src/locale/$(DEPDIR) src/login/$(DEPDIR) src/machine-id-setup/$(DEPDIR) src/machine/$(DEPDIR) src/modules-load/$(DEPDIR) src/network/$(DEPDIR) src/notify/$(DEPDIR) src/nspawn/$(DEPDIR) src/nss-myhostname/$(DEPDIR) src/path/$(DEPDIR) src/python-systemd/$(DEPDIR) src/quotacheck/$(DEPDIR) src/random-seed/$(DEPDIR) src/rc-local-generator/$(DEPDIR) src/readahead/$(DEPDIR) src/remount-fs/$(DEPDIR) src/reply-password/$(DEPDIR) src/resolve/$(DEPDIR) src/rfkill/$(DEPDIR) src/run/$(DEPDIR) src/shared/$(DEPDIR) src/shutdownd/$(DEPDIR) src/sleep/$(DEPDIR) src/socket-proxy/$(DEPDIR) src/sysctl/$(DEPDIR) src/system-update-generator/$(DEPDIR) src/systemctl/$(DEPDIR) src/sysusers/$(DEPDIR) src/sysv-generator/$(DEPDIR) src/test/$(DEPDIR) src/timedate/$(DEPDIR) src/timesync/$(DEPDIR) src/tmpfiles/$(DEPDIR) src/tty-ask-password-agent/$(DEPDIR) src/udev/$(DEPDIR) src/udev/accelerometer/$(DEPDIR) src/udev/ata_id/$(DEPDIR) src/udev/cdrom_id/$(DEPDIR) src/udev/collect/$(DEPDIR) src/udev/mtd_probe/$(DEPDIR) src/udev/net/$(DEPDIR) src/udev/scsi_id/$(DEPDIR) src/udev/v4l_id/$(DEPDIR) src/update-done/$(DEPDIR) src/update-utmp/$(DEPDIR) src/vconsole/$(DEPDIR)
        -rm -f Makefile
 maintainer-clean-am: distclean-am maintainer-clean-generic
 
@@ -16365,24 +17237,25 @@ uninstall-am: uninstall-binPROGRAMS uninstall-dist_bashcompletionDATA \
        uninstall-dist_kernelinstallSCRIPTS uninstall-dist_networkDATA \
        uninstall-dist_ntpunitsDATA uninstall-dist_pamconfDATA \
        uninstall-dist_pkgdataDATA uninstall-dist_pkgpyexecPYTHON \
-       uninstall-dist_pkgsysconfDATA uninstall-dist_sysctlDATA \
-       uninstall-dist_systemunitDATA uninstall-dist_tmpfilesDATA \
-       uninstall-dist_udevconfDATA uninstall-dist_udevhwdbDATA \
-       uninstall-dist_udevrulesDATA uninstall-dist_userunitDATA \
-       uninstall-dist_zshcompletionDATA uninstall-girDATA \
-       uninstall-includeHEADERS uninstall-libLTLIBRARIES \
-       uninstall-libgudev_includeHEADERS uninstall-man \
-       uninstall-nodist_pkgsysconfDATA \
-       uninstall-nodist_polkitpolicyDATA \
+       uninstall-dist_pkgsysconfDATA uninstall-dist_polkitpolicyDATA \
+       uninstall-dist_sysctlDATA uninstall-dist_systempresetDATA \
+       uninstall-dist_systemunitDATA uninstall-dist_sysusersDATA \
+       uninstall-dist_tmpfilesDATA uninstall-dist_udevconfDATA \
+       uninstall-dist_udevhwdbDATA uninstall-dist_udevrulesDATA \
+       uninstall-dist_userunitDATA uninstall-dist_zshcompletionDATA \
+       uninstall-girDATA uninstall-includeHEADERS \
+       uninstall-libLTLIBRARIES uninstall-libgudev_includeHEADERS \
+       uninstall-man uninstall-nodist_pkgsysconfDATA \
        uninstall-nodist_rpmmacrosDATA uninstall-nodist_systemunitDATA \
-       uninstall-nodist_udevrulesDATA uninstall-nodist_userunitDATA \
-       uninstall-pamlibLTLIBRARIES uninstall-pkgconfigdataDATA \
-       uninstall-pkgconfiglibDATA uninstall-pkgincludeHEADERS \
-       uninstall-pkgpyexecLTLIBRARIES uninstall-rootbinPROGRAMS \
-       uninstall-rootlibexecPROGRAMS uninstall-sharepkgconfigDATA \
-       uninstall-sysctlDATA uninstall-systemgeneratorPROGRAMS \
-       uninstall-sysvinitDATA uninstall-typelibsDATA \
-       uninstall-udevlibexecPROGRAMS uninstall-varlogDATA
+       uninstall-nodist_sysusersDATA uninstall-nodist_udevrulesDATA \
+       uninstall-nodist_userunitDATA uninstall-pamlibLTLIBRARIES \
+       uninstall-pkgconfigdataDATA uninstall-pkgconfiglibDATA \
+       uninstall-pkgincludeHEADERS uninstall-pkgpyexecLTLIBRARIES \
+       uninstall-rootbinPROGRAMS uninstall-rootlibexecPROGRAMS \
+       uninstall-sharepkgconfigDATA uninstall-sysctlDATA \
+       uninstall-systemgeneratorPROGRAMS uninstall-sysvinitDATA \
+       uninstall-typelibsDATA uninstall-udevlibexecPROGRAMS \
+       uninstall-varlogDATA
        @$(NORMAL_INSTALL)
        $(MAKE) $(AM_MAKEFLAGS) uninstall-hook
 uninstall-man: uninstall-man1 uninstall-man3 uninstall-man5 \
@@ -16413,25 +17286,26 @@ uninstall-man: uninstall-man1 uninstall-man3 uninstall-man5 \
        install-dist_kernelinstallSCRIPTS install-dist_networkDATA \
        install-dist_ntpunitsDATA install-dist_pamconfDATA \
        install-dist_pkgdataDATA install-dist_pkgpyexecPYTHON \
-       install-dist_pkgsysconfDATA install-dist_sysctlDATA \
-       install-dist_systemunitDATA install-dist_tmpfilesDATA \
-       install-dist_udevconfDATA install-dist_udevhwdbDATA \
-       install-dist_udevrulesDATA install-dist_userunitDATA \
-       install-dist_zshcompletionDATA install-dvi install-dvi-am \
-       install-exec install-exec-am install-exec-hook install-girDATA \
-       install-html install-html-am install-includeHEADERS \
-       install-info install-info-am install-libLTLIBRARIES \
-       install-libgudev_includeHEADERS install-man install-man1 \
-       install-man3 install-man5 install-man7 install-man8 \
-       install-nodist_pkgsysconfDATA install-nodist_polkitpolicyDATA \
+       install-dist_pkgsysconfDATA install-dist_polkitpolicyDATA \
+       install-dist_sysctlDATA install-dist_systempresetDATA \
+       install-dist_systemunitDATA install-dist_sysusersDATA \
+       install-dist_tmpfilesDATA install-dist_udevconfDATA \
+       install-dist_udevhwdbDATA install-dist_udevrulesDATA \
+       install-dist_userunitDATA install-dist_zshcompletionDATA \
+       install-dvi install-dvi-am install-exec install-exec-am \
+       install-exec-hook install-girDATA install-html install-html-am \
+       install-includeHEADERS install-info install-info-am \
+       install-libLTLIBRARIES install-libgudev_includeHEADERS \
+       install-man install-man1 install-man3 install-man5 \
+       install-man7 install-man8 install-nodist_pkgsysconfDATA \
        install-nodist_rpmmacrosDATA install-nodist_systemunitDATA \
-       install-nodist_udevrulesDATA install-nodist_userunitDATA \
-       install-pamlibLTLIBRARIES install-pdf install-pdf-am \
-       install-pkgconfigdataDATA install-pkgconfiglibDATA \
-       install-pkgincludeHEADERS install-pkgpyexecLTLIBRARIES \
-       install-ps install-ps-am install-rootbinPROGRAMS \
-       install-rootlibexecPROGRAMS install-sharepkgconfigDATA \
-       install-strip install-sysctlDATA \
+       install-nodist_sysusersDATA install-nodist_udevrulesDATA \
+       install-nodist_userunitDATA install-pamlibLTLIBRARIES \
+       install-pdf install-pdf-am install-pkgconfigdataDATA \
+       install-pkgconfiglibDATA install-pkgincludeHEADERS \
+       install-pkgpyexecLTLIBRARIES install-ps install-ps-am \
+       install-rootbinPROGRAMS install-rootlibexecPROGRAMS \
+       install-sharepkgconfigDATA install-strip install-sysctlDATA \
        install-systemgeneratorPROGRAMS install-sysvinitDATA \
        install-typelibsDATA install-udevlibexecPROGRAMS \
        install-varlogDATA installcheck installcheck-am installdirs \
@@ -16446,25 +17320,26 @@ uninstall-man: uninstall-man1 uninstall-man3 uninstall-man5 \
        uninstall-dist_kernelinstallSCRIPTS uninstall-dist_networkDATA \
        uninstall-dist_ntpunitsDATA uninstall-dist_pamconfDATA \
        uninstall-dist_pkgdataDATA uninstall-dist_pkgpyexecPYTHON \
-       uninstall-dist_pkgsysconfDATA uninstall-dist_sysctlDATA \
-       uninstall-dist_systemunitDATA uninstall-dist_tmpfilesDATA \
-       uninstall-dist_udevconfDATA uninstall-dist_udevhwdbDATA \
-       uninstall-dist_udevrulesDATA uninstall-dist_userunitDATA \
-       uninstall-dist_zshcompletionDATA uninstall-girDATA \
-       uninstall-hook uninstall-includeHEADERS \
+       uninstall-dist_pkgsysconfDATA uninstall-dist_polkitpolicyDATA \
+       uninstall-dist_sysctlDATA uninstall-dist_systempresetDATA \
+       uninstall-dist_systemunitDATA uninstall-dist_sysusersDATA \
+       uninstall-dist_tmpfilesDATA uninstall-dist_udevconfDATA \
+       uninstall-dist_udevhwdbDATA uninstall-dist_udevrulesDATA \
+       uninstall-dist_userunitDATA uninstall-dist_zshcompletionDATA \
+       uninstall-girDATA uninstall-hook uninstall-includeHEADERS \
        uninstall-libLTLIBRARIES uninstall-libgudev_includeHEADERS \
        uninstall-man uninstall-man1 uninstall-man3 uninstall-man5 \
        uninstall-man7 uninstall-man8 uninstall-nodist_pkgsysconfDATA \
-       uninstall-nodist_polkitpolicyDATA \
        uninstall-nodist_rpmmacrosDATA uninstall-nodist_systemunitDATA \
-       uninstall-nodist_udevrulesDATA uninstall-nodist_userunitDATA \
-       uninstall-pamlibLTLIBRARIES uninstall-pkgconfigdataDATA \
-       uninstall-pkgconfiglibDATA uninstall-pkgincludeHEADERS \
-       uninstall-pkgpyexecLTLIBRARIES uninstall-rootbinPROGRAMS \
-       uninstall-rootlibexecPROGRAMS uninstall-sharepkgconfigDATA \
-       uninstall-sysctlDATA uninstall-systemgeneratorPROGRAMS \
-       uninstall-sysvinitDATA uninstall-typelibsDATA \
-       uninstall-udevlibexecPROGRAMS uninstall-varlogDATA
+       uninstall-nodist_sysusersDATA uninstall-nodist_udevrulesDATA \
+       uninstall-nodist_userunitDATA uninstall-pamlibLTLIBRARIES \
+       uninstall-pkgconfigdataDATA uninstall-pkgconfiglibDATA \
+       uninstall-pkgincludeHEADERS uninstall-pkgpyexecLTLIBRARIES \
+       uninstall-rootbinPROGRAMS uninstall-rootlibexecPROGRAMS \
+       uninstall-sharepkgconfigDATA uninstall-sysctlDATA \
+       uninstall-systemgeneratorPROGRAMS uninstall-sysvinitDATA \
+       uninstall-typelibsDATA uninstall-udevlibexecPROGRAMS \
+       uninstall-varlogDATA
 
 
 # remove targets if the command fails
@@ -16546,6 +17421,9 @@ define install-relative-aliases
        done
 endef
 
+install-touch-usr-hook:
+       touch -c $(DESTDIR)/$(prefix)
+
 # automake is broken and can't handle files with a dash in front
 # http://debbugs.gnu.org/cgi/bugreport.cgi?bug=14728#8
 units-install-hook:
@@ -16636,6 +17514,7 @@ man/systemd-hibernate.service.8: man/systemd-suspend.service.8
 man/systemd-hybrid-sleep.service.8: man/systemd-suspend.service.8
 man/systemd-initctl.8: man/systemd-initctl.service.8
 man/systemd-initctl.socket.8: man/systemd-initctl.service.8
+man/systemd-journald-dev-log.socket.8: man/systemd-journald.service.8
 man/systemd-journald.8: man/systemd-journald.service.8
 man/systemd-journald.socket.8: man/systemd-journald.service.8
 man/systemd-kexec.service.8: man/systemd-halt.service.8
@@ -16647,6 +17526,7 @@ man/systemd-shutdownd.8: man/systemd-shutdownd.service.8
 man/systemd-shutdownd.socket.8: man/systemd-shutdownd.service.8
 man/systemd-sleep.8: man/systemd-suspend.service.8
 man/systemd-sysctl.8: man/systemd-sysctl.service.8
+man/systemd-sysusers.service.8: man/systemd-sysusers.8
 man/systemd-tmpfiles-clean.service.8: man/systemd-tmpfiles.8
 man/systemd-tmpfiles-clean.timer.8: man/systemd-tmpfiles.8
 man/systemd-tmpfiles-setup-dev.service.8: man/systemd-tmpfiles.8
@@ -16654,6 +17534,7 @@ man/systemd-tmpfiles-setup.service.8: man/systemd-tmpfiles.8
 man/systemd-udevd-control.socket.8: man/systemd-udevd.service.8
 man/systemd-udevd-kernel.socket.8: man/systemd-udevd.service.8
 man/systemd-udevd.8: man/systemd-udevd.service.8
+man/systemd-update-done.8: man/systemd-update-done.service.8
 man/systemd-update-utmp-runlevel.service.8: man/systemd-update-utmp.service.8
 man/systemd-update-utmp.8: man/systemd-update-utmp.service.8
 man/systemd-user.conf.5: man/systemd-system.conf.5
@@ -16900,6 +17781,9 @@ man/systemd-initctl.html: man/systemd-initctl.service.html
 man/systemd-initctl.socket.html: man/systemd-initctl.service.html
        $(html-alias)
 
+man/systemd-journald-dev-log.socket.html: man/systemd-journald.service.html
+       $(html-alias)
+
 man/systemd-journald.html: man/systemd-journald.service.html
        $(html-alias)
 
@@ -16933,6 +17817,9 @@ man/systemd-sleep.html: man/systemd-suspend.service.html
 man/systemd-sysctl.html: man/systemd-sysctl.service.html
        $(html-alias)
 
+man/systemd-sysusers.service.html: man/systemd-sysusers.html
+       $(html-alias)
+
 man/systemd-tmpfiles-clean.service.html: man/systemd-tmpfiles.html
        $(html-alias)
 
@@ -16954,6 +17841,9 @@ man/systemd-udevd-kernel.socket.html: man/systemd-udevd.service.html
 man/systemd-udevd.html: man/systemd-udevd.service.html
        $(html-alias)
 
+man/systemd-update-done.html: man/systemd-update-done.service.html
+       $(html-alias)
+
 man/systemd-update-utmp-runlevel.service.html: man/systemd-update-utmp.service.html
        $(html-alias)
 
@@ -17514,7 +18404,7 @@ src/shared/af-to-name.h: src/shared/af-list.txt
 .PHONY: coverage lcov-run lcov-report coverage-sync
 
 # run lcov from scratch, always
-coverage:
+coverage: all
        $(MAKE) lcov-run
        $(MAKE) lcov-report
 
@@ -17650,7 +18540,6 @@ catalog-update-hook:
 
 catalog-remove-hook:
        -test -n "$(DESTDIR)" || rm -f $(catalogstatedir)/database
-       $(AM_CFLAGS)
 
 @ENABLE_LOCALED_TRUE@update-kbd-model-map: src/locale/generate-kbd-model-map
 @ENABLE_LOCALED_TRUE@  $PYTHON $< >src/locale/kbd-model-map
@@ -17794,6 +18683,20 @@ clean-local: $(CLEAN_LOCAL_HOOKS)
        rm -f $(abs_srcdir)/hwdb/usb.ids $(abs_srcdir)/hwdb/pci.ids $(abs_srcdir)/hwdb/oui.txt \
              $(abs_srcdir)/hwdb/iab.txt
 
+#
+# Require python when making dist
+#
+.PHONY: dist-check-python
+dist-check-python:
+@HAVE_PYTHON_FALSE@    @echo "*** python and python-lxml module must be installed and enabled in order to make dist"
+@HAVE_PYTHON_FALSE@    @false
+
+dist-check-compat-libs:
+@ENABLE_COMPAT_LIBS_FALSE@     @echo "*** compat-libs must be enabled in order to make dist"
+@ENABLE_COMPAT_LIBS_FALSE@     @false
+
+dist: dist-check-python dist-check-compat-libs
+
 # check "broken" platforms limited toolchains for link breakage before we release
 .PHONY: linkcheck
 linkcheck:
@@ -17853,7 +18756,7 @@ valgrind-tests: $(TESTS)
        done
 
 exported-%: %
-       $(AM_V_GEN)nm -g --defined-only $(builddir)/.libs/$(<:.la=.so) 2>&1 /dev/null | grep " T " | cut -d" " -f3 > $@
+       $(AM_V_GEN)$(NM) -g --defined-only $(builddir)/.libs/$(<:.la=.so) 2>&1 /dev/null | grep " T " | cut -d" " -f3 > $@
 
 exported: $(addprefix exported-, $(lib_LTLIBRARIES))
        $(AM_V_GEN)cat $^ > $@
@@ -17870,7 +18773,7 @@ check-api-docs: exported man
 
 undefined defined: $(ALL_OBJECTS)
        $(AM_V_GEN)for f in $(ALL_OBJECTS) ; do \
-               nm -g --$@-only `echo $(builddir)/"$$f" | sed -e 's,\([^/]*\).lo$$,.libs/\1.o,'` ; \
+               $(NM) -g --$@-only `echo $(builddir)/"$$f" | sed -e 's,\([^/]*\).lo$$,.libs/\1.o,'` ; \
        done | cut -c 20- | cut -d @ -f 1 | sort -u > $@
 
 .PHONY: check-api-unused
diff --git a/NEWS b/NEWS
index 54d9e9e66daa99a89af7c68d7e2995ae54c677da..6fc752ba99b98293a01798dcfb39aa79c0c30325 100644 (file)
--- a/NEWS
+++ b/NEWS
@@ -1,5 +1,239 @@
 systemd System and Service Manager
 
+CHANGES WITH 215:
+
+        * A new tool systemd-sysusers has been added. This tool
+          creates system users and groups in /etc/passwd and
+          /etc/group, based on static declarative system user/group
+          definitions in /usr/lib/sysusers.d/. This is useful to
+          enable factory resets and volatile systems that boot up with
+          an empty /etc directory, and thus need system users and
+          groups created during early boot. systemd now also ships
+          with two default sysusers.d/ files for the most basic
+          users and groups systemd and the core operating system
+          require.
+
+        * A new tmpfiles snippet has been added that rebuilds the
+          essential files in /etc on boot, should they be missing.
+
+        * A directive for ensuring automatic clean-up of
+          /var/cache/man/ has been removed from the default
+          configuration. This line should now be shipped by the man
+          implementation. The necessary change has been made to the
+          man-db implementation. Note that you need to update your man
+          implementation to one that ships this line, otherwise no
+          automatic clean-up of /var/cache/man will take place.
+
+        * A new condition ConditionNeedsUpdate= has been added that
+          may conditionalize services to only run when /etc or /var
+          are "older" than the vendor operating system resources in
+          /usr. This is useful for reconstructing or updating /etc
+          after an offline update of /usr or a factory reset, on the
+          next reboot. Services that want to run once after such an
+          update or reset should use this condition and order
+          themselves before the new systemd-update-done.service, which
+          will mark the two directories as fully updated. A number of
+          service files have been added making use of this, to rebuild
+          the udev hardware database, the journald message catalog and
+          dynamic loader cache (ldconfig). The systemd-sysusers tool
+          described above also makes use of this now. With this in
+          place it is now possible to start up a minimal operating
+          system with /etc empty cleanly. For more information on the
+          concepts involved see this recent blog story:
+
+          http://0pointer.de/blog/projects/stateless.html
+
+        * A new system group "input" has been introduced, and all
+          input device nodes get this group assigned. This is useful
+          for system-level software to get access to input devices. It
+          complements what is already done for "audio" and "video".
+
+        * systemd-networkd learnt minimal DHCPv4 server support in
+          addition to the existing DHCPv4 client support. It also
+          learnt DHCPv6 client and IPv6 Router Solicitation client
+          support. The DHCPv4 client gained support for static routes
+          passed in from the server. Note that the [DHCPv4] section
+          known in older systemd-networkd versions has been renamed to
+          [DHCP] and is now also used by the DHCPv6 client. Existing
+          .network files using settings of this section should be
+          updated, though compatibility is maintained. Optionally, the
+          client hostname may now be sent to the DHCP server.
+
+        * networkd gained support for vxlan virtual networks as well
+          as tun/tap and dummy devices.
+
+        * networkd gained support for automatic allocation of address
+          ranges for interfaces from a system-wide pool of
+          addresses. This is useful for dynamically managing a large
+          number of interfaces with a single network configuration
+          file. In particular this is useful to easily assign
+          appropriate IP addresses to the veth links of a large number
+          of nspawn instances.
+
+        * RPM macros for processing sysusers, sysctl and binfmt
+          drop-in snippets at package installation time have been
+          added.
+
+        * The /etc/os-release file should now be placed in
+          /usr/lib/os-release. The old location is automatically
+          created as symlink. /usr/lib is the more appropriate
+          location of this file, since it shall actually describe the
+          vendor operating system shipped in /usr, and not the
+          configuration stored in /etc.
+
+        * .mount units gained a new boolean SloppyOptions= setting
+          that maps to mount(8)'s -s option which enables permissive
+          parsing of unknown mount options.
+
+        * tmpfiles learnt a new "L+" directive which creates a symlink
+          but (unlike "L") deletes a pre-existing file first, should
+          it already exist and not already be the correct
+          symlink. Similar, "b+", "c+" and "p+" directives have been
+          added as well, which create block and character devices, as
+          well as fifos in the filesystem, possibly removing any
+          pre-existing files of different types.
+
+        * For tmpfiles' "L", "L+", "C" and "C+" directives the final
+          'argument' field (which so far specified the source to
+          symlink/copy the files from) is now optional. If omitted the
+          same file os copied from /usr/share/factory/ suffixed by the
+          full destination path. This is useful for populating /etc
+          with essential files, by copying them from vendor defaults
+          shipped in /usr/share/factory/etc.
+
+        * A new command "systemctl preset-all" has been added that
+          applies the service preset settings to all installed unit
+          files. A new switch --preset-mode= has been added that
+          controls whether only enable or only disable operations
+          shall be executed.
+
+        * A new command "systemctl is-system-running" has been added
+          that allows checking the overall state of the system, for
+          example whether it is fully up and running.
+
+        * When the system boots up with an empty /etc, the equivalent
+          to "systemctl preset-all" is executed during early boot, to
+          make sure all default services are enabled after a factory
+          reset.
+
+        * systemd now contains a minimal preset file that enables the
+          most basic services systemd ships by default.
+
+        * Unit files' [Install] section gained a new DefaultInstance=
+          field for defining the default instance to create if a
+          template unit is enabled with no instance specified.
+
+        * A new passive target cryptsetup-pre.target has been added
+          that may be used by services that need to make they run and
+          finish before the first LUKS cryptographic device is set up.
+
+        * The /dev/loop-control and /dev/btrfs-control device nodes
+          are now owned by the "disk" group by default, opening up
+          access to this group.
+
+        * systemd-coredump will now automatically generate a
+          stack trace of all core dumps taking place on the system,
+          based on elfutils' libdw library. This stack trace is logged
+          to the journal.
+
+        * systemd-coredump may now optionally store coredumps directly
+          on disk (in /var/lib/systemd/coredump, possibly compressed),
+          instead of storing them unconditionally in the journal. This
+          mode is the new default. A new configuration file
+          /etc/systemd/coredump.conf has been added to configure this
+          and other parameters of systemd-coredump.
+
+        * coredumpctl gained a new "info" verb to show details about a
+          specific coredump. A new switch "-1" has also been added
+          that makes sure to only show information about the most
+          recent entry instead of all entries. Also, as the tool is
+          generally useful now the "systemd-" prefix of the binary
+          name has been removed. Distributions that want to maintain
+          compatibility with the old name should add a symlink from
+          the old name to the new name.
+
+        * journald's SplitMode= now defaults to "uid". This makes sure
+          that unprivileged users can access their own coredumps with
+          coredumpctl without restrictions.
+
+        * New kernel command line options "systemd.wants=" (for
+          pulling an additional unit during boot), "systemd.mask="
+          (for masking a specific unit for the boot), and
+          "systemd.debug-shell" (for enabling the debug shell on tty9)
+          have been added. This is implemented in the new generator
+          "systemd-debug-generator".
+
+        * systemd-nspawn will now by default filter a couple of
+          syscalls for containers, among them those required for
+          kernel module loading, direct x86 IO port access, swap
+          management, and kexec. Most importantly though
+          open_by_handle_at() is now prohibited for containers,
+          closing a hole similar to a recently discussed vulnerability
+          in docker regarding access to files on file hierarchies the
+          container should normally not have access to. Note that for
+          nspawn we generally make no security claims anyway (and
+          this is explicitly documented in the man page), so this is
+          just a fix for one of the most obvious problems.
+
+        * A new man page file-hierarchy(7) has been added that
+          contains a minimized, modernized version of the file system
+          layout systemd expects, similar in style to the FHS
+          specification or hier(5). A new tool systemd-path(1) has
+          been added to query many of these paths for the local
+          machine and user.
+
+        * Automatic time-based clean-up of $XDG_RUNTIME_DIR is no
+          longer done. Since the directory now has a per-user size
+          limit, and is cleaned on logout this appears unnecessary,
+          in particular since this now brings the lifecycle of this
+          directory closer in line with how IPC objects are handled.
+
+        * systemd.pc now exports a number of additional directories,
+          including $libdir (which is useful to identify the library
+          path for the primary architecture of the system), and a
+          couple of drop-in directories.
+
+        * udev's predictable network interface names now use the dev_port
+          sysfs attribute, introduced in linux 3.15 instead of dev_id to
+          distinguish between ports of the same PCI function. dev_id should
+          only be used for ports using the same HW address, hence the need
+          for dev_port.
+
+        * machined has been updated to export the OS version of a
+          container (read from /etc/os-release and
+          /usr/lib/os-release) on the bus. This is now shown in
+          "machinectl status" for a machine.
+
+        * A new service setting RestartForceExitStatus= has been
+          added. If configured to a set of exit signals or process
+          return values, the service will be restarted when the main
+          daemon process exits with any of them, regardless of the
+          Restart= setting.
+
+        * systemctl's -H switch for connecting to remote systemd
+          machines has been extended so that it may be used to
+          directly connect to a specific container on the
+          host. "systemctl -H root@foobar:waldi" will now connect as
+          user "root" to host "foobar", and then proceed directly to
+          the container named "waldi". Note that currently you have to
+          authenticate as user "root" for this to work, as entering
+          containers is a privileged operation.
+
+        Contributions from: Andreas Henriksson, Benjamin Steinwender,
+        Carl Schaefer, Christian Hesse, Colin Ian King, Cristian
+        Rodríguez, Daniel Mack, Dave Reisner, David Herrmann, Eugene
+        Yakubovich, Filipe Brandenburger, Frederic Crozat, Hristo
+        Venev, Jan Engelhardt, Jonathan Boulle, Kay Sievers, Lennart
+        Poettering, Luke Shumaker, Mantas Mikulėnas, Marc-Antoine
+        Perennou, Marcel Holtmann, Michael Marineau, Michael Olbrich,
+        Michał Bartoszkiewicz, Michal Sekletar, Patrik Flykt, Ronan Le
+        Martret, Ronny Chevalier, Ruediger Oertel, Steven Noonan,
+        Susant Sahani, Thadeu Lima de Souza Cascardo, Thomas Hindoe
+        Paaboel Andersen, Tom Gundersen, Tom Hirst, Umut Tezduyar
+        Lindskog, Uoti Urpala, Zbigniew Jędrzejewski-Szmek
+
+        -- Berlin, 2014-07-03
+
 CHANGES WITH 214:
 
         * As an experimental feature, udev now tries to lock the
@@ -12,9 +246,9 @@ CHANGES WITH 214:
           was opened for writing, the close will trigger a partition
           table rescan in udev's "watch" facility, and if needed
           synthesize "change" events for the disk and all its partitions.
-          This is now unconditionally enabled, if it turns out to
+          This is now unconditionally enabled, and if it turns out to
           cause major problems, we might turn it on only for specific
-          devices, or might need to disable it entirely. Device-mapper
+          devices, or might need to disable it entirely. Device Mapper
           devices are excluded from this logic.
 
         * We temporarily dropped the "-l" switch for fsck invocations,
@@ -24,7 +258,7 @@ CHANGES WITH 214:
           change has been released.
 
         * The dependency on libattr has been removed. Since a long
-          time the extended attribute calls have moved to glibc, and
+          time, the extended attribute calls have moved to glibc, and
           libattr is thus unnecessary.
 
         * Virtualization detection works without priviliges now. This
@@ -49,17 +283,17 @@ CHANGES WITH 214:
 
         * systemd-networkd will no longer automatically attempt to
           manually load kernel modules necessary for certain tunnel
-          transports. Instead it is assumed the kernel loads them
+          transports. Instead, it is assumed the kernel loads them
           automatically when required. This only works correctly on
           very new kernels. On older kernels, please consider adding
-          the kernel modules to /etc/load-modules.d/ as a work-around.
+          the kernel modules to /etc/modules-load.d/ as a work-around.
 
         * The resolv.conf file systemd-resolved generates has been
-          moved to /run/systemd/resolve/, if you have a symlink from
-          /etc/resolv.conf it might be necessary to correct it.
+          moved to /run/systemd/resolve/. If you have a symlink from
+          /etc/resolv.conf, it might be necessary to correct it.
 
-        * Two new service settings ProtectedHome= and ProtectedSystem=
-          have been added. When enabled they will make the user data
+        * Two new service settings, ProtectedHome= and ProtectedSystem=,
+          have been added. When enabled, they will make the user data
           (such as /home) inaccessible or read-only and the system
           (such as /usr) read-only, for specific services. This allows
           very light-weight per-service sandboxing to avoid
@@ -71,13 +305,13 @@ CHANGES WITH 214:
           settings to set the owner user and group of AF_UNIX sockets
           and FIFOs in the file system.
 
-        * Socket units gained a new RemoveOnStop= setting. If enabled
+        * Socket units gained a new RemoveOnStop= setting. If enabled,
           all FIFOS and sockets in the file system will be removed
           when the specific socket unit is stopped.
 
         * Socket units gained a new Symlinks= setting. It takes a list
           of symlinks to create to file system sockets or FIFOs
-          created by the specific unix sockets. This is useful to
+          created by the specific Unix sockets. This is useful to
           manage symlinks to socket nodes with the same life-cycle as
           the socket itself.
 
@@ -104,7 +338,7 @@ CHANGES WITH 214:
           vanished.
 
         * A new "on-abnormal" setting for Restart= has been added. If
-          set it will result in automatic restarts on all "abnormal"
+          set, it will result in automatic restarts on all "abnormal"
           reasons for a process to exit, which includes unclean
           signals, core dumps, timeouts and watchdog timeouts, but
           does not include clean and unclean exit codes or clean
@@ -145,19 +379,19 @@ CHANGES WITH 214:
           files or entire directories.
 
         * systemd-tmpfiles "m" lines are now fully equivalent to "z"
-          lines. So far they have been non-globbing versions of the
-          latter, and have thus been redundant. In future it is
-          recommended to only use "z"; and "m" has hence been removed
+          lines. So far, they have been non-globbing versions of the
+          latter, and have thus been redundant. In future, it is
+          recommended to only use "z". "m" has hence been removed
           from the documentation, even though it stays supported.
 
         * A tmpfiles snippet to recreate the most basic structure in
           /var has been added. This is enough to create the /var/run →
           /run symlink and create a couple of structural
           directories. This allows systems to boot up with an empty or
-          volatile /var. Of course, while with this change the core OS
-          now is capable with dealing with a volatile /var not all
+          volatile /var. Of course, while with this change, the core OS
+          now is capable with dealing with a volatile /var, not all
           user services are ready for it. However, we hope that sooner
-          or later many service daemons will be changed upstream so
+          or later, many service daemons will be changed upstream so
           that they are able to automatically create their necessary
           directories in /var at boot, should they be missing. This is
           the first step to allow state-less systems that only require
@@ -171,7 +405,7 @@ CHANGES WITH 214:
         * Access modes specified in tmpfiles snippets may now be
           prefixed with "~", which indicates that they shall be masked
           by whether the existing file or directly is currently
-          writable, readable or executable at all. Also, if specified
+          writable, readable or executable at all. Also, if specified,
           the sgid/suid/sticky bits will be masked for all
           non-directories.
 
@@ -179,6 +413,11 @@ CHANGES WITH 214:
           added which is useful for services that shall run before any
           network is configured, for example firewall scripts.
 
+        * The "floppy" group that previously owned the /dev/fd*
+          devices is no longer used. The "disk" group is now used
+          instead. Distributions should probably deprecate usage of
+          this group.
+
         Contributions from: Camilo Aguilar, Christian Hesse, Colin Ian
         King, Cristian Rodríguez, Daniel Buch, Dave Reisner, David
         Strauss, Denis Tikhomirov, John, Jonathan Liu, Kay Sievers,
@@ -194,12 +433,12 @@ CHANGES WITH 213:
         * A new "systemd-timesyncd" daemon has been added for
           synchronizing the system clock across the network. It
           implements an SNTP client. In contrast to NTP
-          implementations such as chrony or the NTP reference server
+          implementations such as chrony or the NTP reference server,
           this only implements a client side, and does not bother with
           the full NTP complexity, focusing only on querying time from
           one remote server and synchronizing the local clock to
           it. Unless you intend to serve NTP to networked clients or
-          want to connect to local hardware clocks this simple NTP
+          want to connect to local hardware clocks, this simple NTP
           client should be more than appropriate for most
           installations. The daemon runs with minimal privileges, and
           has been hooked up with networkd to only operate when
@@ -208,9 +447,9 @@ CHANGES WITH 213:
           acquired, and uses this to possibly correct the system clock
           early at bootup, in order to accommodate for systems that
           lack an RTC such as the Raspberry Pi and embedded devices,
-          and make sure that time monotonically progresses on these
+          and to make sure that time monotonically progresses on these
           systems, even if it is not always correct. To make use of
-          this daemon a new system user and group "systemd-timesync"
+          this daemon, a new system user and group "systemd-timesync"
           needs to be created on installation of systemd.
 
         * The queue "seqnum" interface of libudev has been disabled, as
@@ -230,7 +469,7 @@ CHANGES WITH 213:
         * A new FailureAction= setting has been added for service
           units which may be used to specify an operation to trigger
           when a service fails. This works similarly to
-          StartLimitAction=, but unlike it controls what is done
+          StartLimitAction=, but unlike it, controls what is done
           immediately rather than only after several attempts to
           restart the service in question.
 
@@ -296,7 +535,7 @@ CHANGES WITH 213:
         * hostnamed has been changed to prefer the statically
           configured hostname in /etc/hostname (unless set to
           'localhost' or empty) over any dynamic one supplied by
-          dhcp. With this change the rules for picking the hostname
+          dhcp. With this change, the rules for picking the hostname
           match more closely the rules of other configuration settings
           where the local administrator's configuration in /etc always
           overrides any other settings.
diff --git a/README b/README
index 529c6e193049051890b398d9704cda3031e4ec56..b5545621c153ad7c5fad01984964da3ae4895be1 100644 (file)
--- a/README
+++ b/README
@@ -115,13 +115,14 @@ REQUIREMENTS:
         libcryptsetup (optional)
         libaudit (optional)
         libacl (optional)
-        libattr (optional)
         libselinux (optional)
         liblzma (optional)
         libgcrypt (optional)
         libqrencode (optional)
         libmicrohttpd (optional)
         libpython (optional)
+        gobject-introspection > 1.40.0 (optional)
+        elfutils >= 158 (optional)
         make, gcc, and similar tools
 
         During runtime, you need the following additional
@@ -168,7 +169,7 @@ USERS AND GROUPS:
         even in the very early boot stages, where no other databases
         and network are available:
 
-        tty, dialout, kmem, video, audio, lp, cdrom, tape, disk
+        audio, cdrom, dialout, disk, input, kmem, lp, tape, tty, video
 
         During runtime, the journal daemon requires the
         "systemd-journal" system group to exist. New journal files will
@@ -187,16 +188,16 @@ USERS AND GROUPS:
         exist. During execution this network facing service will drop
         privileges and assume this uid/gid for security reasons.
 
-        Similar, the NTP daemon requires the "systemd-timesync" system
+        Similarly, the NTP daemon requires the "systemd-timesync" system
         user and group to exist.
 
-        Similar, the network management daemon requires the
+        Similarly, the network management daemon requires the
         "systemd-network" system user and group to exist.
 
-        Similar, the name resolution daemon requires the
+        Similarly, the name resolution daemon requires the
         "systemd-resolve" system user and group to exist.
 
-        Similar, the kdbus dbus1 proxy daemon requires the
+        Similarly, the kdbus dbus1 proxy daemon requires the
         "systemd-bus-proxy" system user and group to exist.
 
 WARNINGS:
diff --git a/TODO b/TODO
index 9a889427198ae8473ea7d17610d63d9a9ce9015c..f09e85303a2e8374d69b08f1329e488420fd2e75 100644 (file)
--- a/TODO
+++ b/TODO
@@ -4,24 +4,12 @@ Bugfixes:
 
 * Should systemctl status \* work on all unit types, not just .service?
 
-* enabling an instance unit creates a pointless link, and
-  the unit will be started with getty@getty.service:
-    $ systemctl enable getty@.service
-    ln -s '/usr/lib/systemd/system/getty@.service' '/etc/systemd/system/getty.target.wants/getty@.service'
-
 * Dangling symlinks of .automount unit files in .wants/ directories, set up
   automount points even when the original .automount file did not exist
   anymore. Only the .mount unit was still around.
 
 * properly handle .mount unit state tracking when two mount points are stacked one on top of another on the exact same mount point.
 
-* shorten the message to sane length:
-
-  Cannot add dependency job for unit display-manager.service, ignoring: Unit display-manager.service failed to load: No such file or directory. See system logs and 'systemctl status display-manager.service' for details.
-
-* sd_bus_unref() is broken regarding self-references and "pseudo thread-safety".
-  See the comment in sd_bus_unref() for more..
-
 External:
 * Fedora: when installing fedora with yum --installroot /var/run is a directory, not a symlink
    https://bugzilla.redhat.com/show_bug.cgi?id=975864
@@ -30,8 +18,29 @@ External:
 
 * Fedora: post FPC ticket to move add %tmpfiles_create to the packaging guidelines
 
+* Fedora: move kernel image to /usr/lib/modules/, kernel-install will take care of populating /boot
+
 Features:
 
+* new component "systemd-first-boot" which asks for locale, timezone,
+  root password on first boot if the configuration for that has not
+  been provisioned yet. Similar in style to what the distros have, but
+  minimalist, text-only /dev/console stuff.
+
+* Add a new verb "systemctl top"
+
+* order OnCalendar timer units after timer-sync.target if DefaultDependencies=no so that we don't trigger them prematurely
+
+* refuse mounting on symlinks
+
+* logind: allow users to kill or lock their own sessions
+
+* support empty /etc boots nicely:
+  - nspawn/gpt-generator: introduce new gpt partition type for /usr
+  - nspawn: add --mode=auto,stateful,stateless,volatile
+  - fstab-generator: support auot/stateful/stateless/volatile on the kernel cmdline, too
+  - fstab-generator: add support for usr= in addition to root= on the kernel cmdline
+
 * generator that automatically discovers btrfs subvolumes, identifies their purpose based on some xattr on them.
 
 * support setting empty environment variables with Environment= and EnvironmentFile=
@@ -41,26 +50,20 @@ Features:
 
 * timer units: actually add extra delays to timer units with high AccuracySec values, don't start them already when we are awake...
 
-* timesyncd:
-  - hookup with networkd: NTP servers from dhcp
+* timesyncd - hookup with networkd: NTP servers from dhcp
 
 * a way for container managers to turn off getty starting via $container_headless= or so...
 
 * figure out a nice way how we can let the admin know what child/sibling unit causes cgroup membership for a specific unit
 
-* add a kernel command line option to enable the debug shell
-
 * journalctl: add the ability to look for the most recent process of a binary. journalctl /usr/bin/X11 --pid=-1 or so...
 
 * set NOTIFY_SOCKET also for control processes
 
-* drop parsing of chkconfig header lines from service.c
-
 * mount_cgroup_controllers(): symlinks need to get the label applied
 
-* For timer units: add some mechanisms so that timer units that trigger immediately on boot do not have the services they run added to the initial transaction and thus confuse Type=idle.
-
-* Add RPM macros for registering/unregistering binfmt drop-ins
+* For timer units: add some mechanisms so that timer units that trigger immediately on boot do not have the services
+  they run added to the initial transaction and thus confuse Type=idle.
 
 * Add timeout to early-boot, and shut down the system if it is hit. Solves the laptop-in-bag problem and is useful for embedded cases
 
@@ -86,10 +89,6 @@ Features:
   do not have to open it to know that it is not interesting for us, for
   the most common operations.
 
-* support transient mount units
-
-* add an "input" group to udev logic and add all input devices to it
-
 * add generator that pulls in systemd-network from containers when
   CAP_NET_ADMIN is set, more than the loopback device is defined, even
   when it is otherwise off
@@ -223,12 +222,6 @@ Features:
   - add 'set -e' to scripts in test/
   - make stuff in test/ work with separate output dir
 
-* systemctl delete x.snapshot leaves no trace in logs (at least at default level).
-
-* make the coredump collector tool move itself into the user's cgroup
-  so that the coredump is properly written to the user's own journal
-  file.
-
 * seems that when we follow symlinks to units we prefer the symlink
   destination path over /etc and /usr. We should not do that. Instead
   /etc should always override /run+/usr and also any symlink
@@ -266,8 +259,6 @@ Features:
 
 * use "log level" rather than "log priority" everywhere
 
-* timedate: have global on/off switches for auto-time (NTP), and auto-timezone that connman can subscribe to.
-
 * merge unit_kill_common() and unit_kill_context()
 
 * introduce ExecCondition= in services
@@ -374,7 +365,6 @@ Features:
     about it. Should fix both to print nice actionable messages.
   - print nice message from systemctl --failed if there are no entries shown, and hook that into ExecStartPre of rescue.service/emergency.service
   - add new command to systemctl: "systemctl system-reexec" which reexecs as many daemons as virtually possible
-  - systemctl enable: improve the success messages (i.e. more human readable, less shell-like)
   - systemctl enable: fail if target to alias into does not exist? maybe show how many units are enabled afterwards?
   - systemctl: "Journal has been rotated since unit was started." message is misleading
   - support "systemctl stop foobar@.service" to stop all units matching a certain template
@@ -385,14 +375,9 @@ Features:
 * unit install:
   - "systemctl mask" should find all names by which a unit is accessible
     (i.e. by scanning for symlinks to it) and link them all to /dev/null
-  - "systemctl disable" of a unit instance removes all symlinks, but should
-    only remove the instance symlink (systemctl disable of a template
-    unit however should remove them all).
   - systemctl list-unit-files should list generated files (and probably with a new state "generated" for them, or so)
   - systemctl: maybe add "systemctl add-wants" or so...
 
-* deal with sendmail/postfix exclusivity
-
 * timer units:
   - timer units should get the ability to trigger when:
     o CLOCK_REALTIME makes jumps (TFD_TIMER_CANCEL_ON_SET)
@@ -411,13 +396,6 @@ Features:
   mode, it will never touch the RTC if the no reliable time source is active or the
   user did not request anything like it.
 
-* libunwind support for coredump pattern hook, and includes this in
-  the message for coredumps. After all, libunwind is now capable to
-  unwind coredumps since a few weeks ago. This probably requires that
-  we have nice support for multi-line messages on display in
-  logs-show.c. Alternatively: use libelfutil, which seems to be the
-  better supported alternative.
-
 * add libsystemd-password or so to query passwords during boot using the password agent logic
 
 * If we show an error about a unit (such as not showing up) and it has no Description string, then show a description string generated form the reverse of unit_name_mangle().
@@ -426,19 +404,10 @@ Features:
 * fedup: do not delete initrd on switch-root
 * fedup: generator
 
-* timedated: refuse time changes when NTP is on
-
 * clean up date formatting and parsing so that all absolute/relative timestamps we format can also be parsed
 
 * on shutdown: move utmp, wall, audit logic all into PID 1 (or logind?), get rid of systemd-update-utmp-runlevel
 
-* add "factory" instructions to setup an empty /etc + /var
-    - used to setup a new container from a shared /usr
-    - superset of tmpfiles model
-    - instructions shipped by packages and stored in /usr/lib/
-    - compose /etc/passwd and /etc/group, copy files
-    - able to create uid + gid used by packages, for file ownership
-
 * make repeated alt-ctrl-del presses printing a dump, or even force a reboot without
   waiting for the timeout
 
@@ -464,21 +433,14 @@ Features:
 
 * make timer units go away after they elapsed
 
-* http://lists.freedesktop.org/archives/systemd-devel/2012-September/006502.html
-  (network and remote-fs on shutdown)
-
 * come up with a nice way to write queue/read_ahead_kb for a block device without interfering with readahead
 
 * move PID 1 segfaults to /var/lib/systemd/coredump?
 
 * create /sbin/init symlinks from the build system
 
-* Query Paul Moore about relabelling socket fds while they are open
-
 * allow writing multiple conditions in unit files on one line
 
-* explore multiple service instances per listening socket idea
-
 * MountFlags=shared acts as MountFlags=slave right now.
 
 * drop PID 1 reloading, only do reexecing (difficult: Reload()
@@ -549,7 +511,6 @@ Features:
 * when a bus name of a service disappears from the bus make sure to queue further activation requests
 
 * tmpfiles:
-  - check systemd-tmpfiles for selinux context hookup for mknod(), symlink() and similar
   - apply "x" on "D" too (see patch from William Douglas)
 
 * for services: do not set $HOME in services unless requested
@@ -588,8 +549,6 @@ Features:
   - readahead: when bumping /sys readahead variable save mtime and compare later to detect changes
   - readahead: make use of EXT4_IOC_MOVE_EXT, as used by http://e4rat.sourceforge.net/
 
-* add support for /bin/mount -s
-
 * GC unreferenced jobs (such as .device jobs)
 
 * write blog stories about:
@@ -615,8 +574,6 @@ Features:
 
 * allow port=0 in .socket units
 
-* support systemd.mask= on the kernel command line.
-
 * recreate systemd's D-Bus private socket file on SIGUSR2
 
 * Support --test based on current system state
@@ -660,12 +617,11 @@ Features:
    - add reduced [Link] support to .network files
    - add Scope= parsing option for [Network]
    - properly handle routerless dhcp leases
-   - set lifetime on the address acquired from dhcp
-   - patch kernel to support module alias for tunnel device (ipip/sit/gre),
-     then remove remove libkmod dependency and CAP_SYS_MODULE
    - add veth netdev support (c.f. http://shorewall.net/bridge-Shorewall-perl.html#veth)
    - add tun/tap netdev support
    - add more attribute support for SIT tunnel
+   - make metric of routes configurable
+   - work with non-ethernet devices
 
 * networkd-wait-online:
    - make operstates to wait for configurable?
@@ -675,6 +631,22 @@ Features:
    - export timezone information
    - FORCERENEW
 
+* dhcp6:
+   - add functions to set previously stored IPv6 addresses on startup and get
+     them at shutdown; store them in client->ia_na
+   - write more test cases
+   - implement and do duplicate address detection, see rfc 4862, 5.4.
+   - implement reconfigure support, see 5.3., 15.11. and 22.20.
+   - implement information request, see 1.2. and 18.1.5.
+   - implement support for temporary adressess (IA_TA)
+   - implement elapsed time option
+   - implement dhcpv6 authentication
+   - investigate the usefulness of Confirm messages; i.e. are there any
+     situations where the link changes without any loss in carrier detection
+     or interface down
+   - some servers don't do rapid commit without a filled in IA_NA, verify
+     this behavior
+
 External:
 
 * dbus:
index a59058757bf629d79054e587afdc0ea2ef4b4d6d..1ad8aed1aa1c3cc9bfb37bd5e2098e1a1457d8f7 100644 (file)
    */
 #undef HAVE_DECL_GETTID
 
+/* Define to 1 if you have the declaration of `IFLA_BOND_AD_INFO', and to 0 if
+   you don't. */
+#undef HAVE_DECL_IFLA_BOND_AD_INFO
+
+/* Define to 1 if you have the declaration of `IFLA_BRIDGE_VLAN_INFO', and to
+   0 if you don't. */
+#undef HAVE_DECL_IFLA_BRIDGE_VLAN_INFO
+
+/* Define to 1 if you have the declaration of
+   `IFLA_IPTUN_6RD_RELAY_PREFIXLEN', and to 0 if you don't. */
+#undef HAVE_DECL_IFLA_IPTUN_6RD_RELAY_PREFIXLEN
+
+/* Define to 1 if you have the declaration of `IFLA_PHYS_PORT_ID', and to 0 if
+   you don't. */
+#undef HAVE_DECL_IFLA_PHYS_PORT_ID
+
+/* Define to 1 if you have the declaration of `IFLA_VLAN_PROTOCOL', and to 0
+   if you don't. */
+#undef HAVE_DECL_IFLA_VLAN_PROTOCOL
+
+/* Define to 1 if you have the declaration of `IFLA_VXLAN_LOCAL6', and to 0 if
+   you don't. */
+#undef HAVE_DECL_IFLA_VXLAN_LOCAL6
+
 /* Define to 1 if you have the declaration of `LO_FLAGS_PARTSCAN', and to 0 if
    you don't. */
 #undef HAVE_DECL_LO_FLAGS_PARTSCAN
 /* Define to 1 if you have the <dlfcn.h> header file. */
 #undef HAVE_DLFCN_H
 
+/* ELFUTILS available */
+#undef HAVE_ELFUTILS
+
+/* Define to 1 if you have the <elfutils/libdwfl.h> header file. */
+#undef HAVE_ELFUTILS_LIBDWFL_H
+
 /* Define to 1 if you have the `fanotify_init' function. */
 #undef HAVE_FANOTIFY_INIT
 
 /* Define if libcryptsetup is available */
 #undef HAVE_LIBCRYPTSETUP
 
+/* Define to 1 if you have the `dw' library (-ldw). */
+#undef HAVE_LIBDW
+
 /* Define to 1 if you have the <linux/btrfs.h> header file. */
 #undef HAVE_LINUX_BTRFS_H
 
index cb76d200354f9d5cac4a61f26e7e75a2d571e661..c94712e5d3ccb5f60ae3e6122ad5d0267c93d9f2 100755 (executable)
--- a/configure
+++ b/configure
@@ -1,6 +1,6 @@
 #! /bin/sh
 # Guess values for system-dependent variables and create Makefiles.
-# Generated by GNU Autoconf 2.69 for systemd 214.
+# Generated by GNU Autoconf 2.69 for systemd 215.
 #
 # Report bugs to <http://bugs.freedesktop.org/enter_bug.cgi?product=systemd>.
 #
@@ -591,8 +591,8 @@ MAKEFLAGS=
 # Identity of this package.
 PACKAGE_NAME='systemd'
 PACKAGE_TARNAME='systemd'
-PACKAGE_VERSION='214'
-PACKAGE_STRING='systemd 214'
+PACKAGE_VERSION='215'
+PACKAGE_STRING='systemd 215'
 PACKAGE_BUGREPORT='http://bugs.freedesktop.org/enter_bug.cgi?product=systemd'
 PACKAGE_URL='http://www.freedesktop.org/wiki/Software/systemd'
 
@@ -652,6 +652,7 @@ ENABLE_TESTS_FALSE
 ENABLE_TESTS_TRUE
 ENABLE_GTK_DOC_TESTS_FALSE
 ENABLE_GTK_DOC_TESTS_TRUE
+TTY_GID
 HAVE_SYSV_COMPAT_FALSE
 HAVE_SYSV_COMPAT_TRUE
 M4_DEFINES
@@ -710,6 +711,8 @@ ENABLE_BACKLIGHT_FALSE
 ENABLE_BACKLIGHT_TRUE
 ENABLE_RANDOMSEED_FALSE
 ENABLE_RANDOMSEED_TRUE
+ENABLE_SYSUSERS_FALSE
+ENABLE_SYSUSERS_TRUE
 ENABLE_TMPFILES_FALSE
 ENABLE_TMPFILES_TRUE
 ENABLE_QUOTACHECK_FALSE
@@ -738,6 +741,9 @@ HAVE_LIBCRYPTSETUP_FALSE
 HAVE_LIBCRYPTSETUP_TRUE
 LIBCRYPTSETUP_LIBS
 LIBCRYPTSETUP_CFLAGS
+HAVE_ELFUTILS_FALSE
+HAVE_ELFUTILS_TRUE
+ELFUTILS_LIBS
 AUDIT_LIBS
 HAVE_GCRYPT_FALSE
 HAVE_GCRYPT_TRUE
@@ -885,6 +891,7 @@ INTLTOOL_EXTRACT
 INTLTOOL_MERGE
 INTLTOOL_UPDATE
 USE_NLS
+intltool_found
 OTOOL64
 OTOOL
 LIPO
@@ -1044,6 +1051,7 @@ with_smack_run_label
 enable_gcrypt
 with_libgcrypt_prefix
 enable_audit
+enable_elfutils
 enable_libcryptsetup
 enable_qrencode
 enable_microhttpd
@@ -1054,6 +1062,7 @@ enable_readahead
 enable_bootchart
 enable_quotacheck
 enable_tmpfiles
+enable_sysusers
 enable_randomseed
 enable_backlight
 enable_rfkill
@@ -1682,7 +1691,7 @@ if test "$ac_init_help" = "long"; then
   # Omit some internal or obsolete options to make the list less imposing.
   # This message is too long to be a string in the A/UX 3.1 sh.
   cat <<_ACEOF
-\`configure' configures systemd 214 to adapt to many kinds of systems.
+\`configure' configures systemd 215 to adapt to many kinds of systems.
 
 Usage: $0 [OPTION]... [VAR=VALUE]...
 
@@ -1752,7 +1761,7 @@ fi
 
 if test -n "$ac_init_help"; then
   case $ac_init_help in
-     short | recursive ) echo "Configuration of systemd 214:";;
+     short | recursive ) echo "Configuration of systemd 215:";;
    esac
   cat <<\_ACEOF
 
@@ -1802,6 +1811,7 @@ Optional Features:
   --disable-smack         Disable optional SMACK support
   --disable-gcrypt        Disable optional GCRYPT support
   --disable-audit         Disable optional AUDIT support
+  --disable-elfutils      Disable optional ELFUTILS support
   --disable-libcryptsetup disable libcryptsetup tools
   --disable-qrencode      disable qrencode support
   --disable-microhttpd    disable microhttpd support
@@ -1812,6 +1822,7 @@ Optional Features:
   --disable-bootchart     disable bootchart tool
   --disable-quotacheck    disable quotacheck tools
   --disable-tmpfiles      disable tmpfiles support
+  --disable-sysusers      disable sysusers support
   --disable-randomseed    disable randomseed tools
   --disable-backlight     disable backlight tools
   --disable-rfkill        disable rfkill tools
@@ -2029,7 +2040,7 @@ fi
 test -n "$ac_init_help" && exit $ac_status
 if $ac_init_version; then
   cat <<\_ACEOF
-systemd configure 214
+systemd configure 215
 generated by GNU Autoconf 2.69
 
 Copyright (C) 2012 Free Software Foundation, Inc.
@@ -2681,7 +2692,7 @@ cat >config.log <<_ACEOF
 This file contains any messages produced by compilers while
 running configure, to aid debugging if configure makes a mistake.
 
-It was created by systemd $as_me 214, which was
+It was created by systemd $as_me 215, which was
 generated by GNU Autoconf 2.69.  Invocation command line was
 
   $ $0 $@
@@ -5087,7 +5098,7 @@ fi
 
 # Define the identity of the package.
  PACKAGE='systemd'
- VERSION='214'
+ VERSION='215'
 
 
 cat >>confdefs.h <<_ACEOF
 
 # i18n stuff for the PolicyKit policy files
 
+# Check whether intltool can be found, disable NLS otherwise
+# Extract the first word of "intltool-merge", so it can be a program name with args.
+set dummy intltool-merge; ac_word=$2
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+$as_echo_n "checking for $ac_word... " >&6; }
+if ${ac_cv_prog_intltool_found+:} false; then :
+  $as_echo_n "(cached) " >&6
+else
+  if test -n "$intltool_found"; then
+  ac_cv_prog_intltool_found="$intltool_found" # Let the user override the test.
+else
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+  IFS=$as_save_IFS
+  test -z "$as_dir" && as_dir=.
+    for ac_exec_ext in '' $ac_executable_extensions; do
+  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+    ac_cv_prog_intltool_found="yes"
+    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+    break 2
+  fi
+done
+  done
+IFS=$as_save_IFS
+
+  test -z "$ac_cv_prog_intltool_found" && ac_cv_prog_intltool_found="no"
+fi
+fi
+intltool_found=$ac_cv_prog_intltool_found
+if test -n "$intltool_found"; then
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $intltool_found" >&5
+$as_echo "$intltool_found" >&6; }
+else
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
+fi
+
+
+if test x"$intltool_found" != xyes; then :
+  if test x"$enable_nls" = xyes; then :
+  as_fn_error $? "--enable-nls requested but intltool not found" "$LINENO" 5
+else
+  if test x"$enable_nls" != xno; then :
+  { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: *** Disabling NLS support because intltool was not found" >&5
+$as_echo "$as_me: WARNING: *** Disabling NLS support because intltool was not found" >&2;}
+                     enable_nls=no
+fi
+
+fi
+
+fi
+
+
   { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether NLS is requested" >&5
 $as_echo_n "checking whether NLS is requested... " >&6; }
     # Check whether --enable-nls was given.
@@ -12619,6 +12684,9 @@ fi
 $as_echo "$USE_NLS" >&6; }
 
 
+if test x"$enable_nls" != xno; then :
+
+    # intltoolize greps for '^(AC|IT)_PROG_INTLTOOL', so it needs to be on its own line
 
 
 case "$am__api_version" in
 
 
 
+fi
+
+if test -z "$INTLTOOL_POLICY_RULE"; then :
+
+    # If intltool is not available, provide a dummy rule to fail generation of %.policy files with a meaningful error message
+    INTLTOOL_POLICY_RULE='%.policy: %.policy.in ; @echo "  ITMRG   " $@ && echo "*** intltool support required to build target $@" && false'
+
+
+fi
+
 GETTEXT_PACKAGE=systemd
 
 
@@ -15268,16 +15346,37 @@ $as_echo "$am_cv_python_pyexecdir" >&6; }
   fi
 
 
-        if "$PYTHON" -c 'import lxml' 2>/dev/null; then :
+        if test "x$PYTHON" != "x:"; then :
+
+                { $as_echo "$as_me:${as_lineno-$LINENO}: checking for python lxml module" >&5
+$as_echo_n "checking for python lxml module... " >&6; }
+                if "$PYTHON" -c 'import lxml' 2>/dev/null; then :
   have_lxml=yes
-else
-  have_lxml=no
 fi
-        if test "$PYTHON" != : -a $have_lxml = yes; then :
+                { $as_echo "$as_me:${as_lineno-$LINENO}: result: $have_lxml" >&5
+$as_echo "$have_lxml" >&6; }
+                if test "x$have_lxml" = "xyes"; then :
   have_python=yes
+else
+  { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: *** python support requires python-lxml module installed" >&5
+$as_echo "$as_me: WARNING: *** python support requires python-lxml module installed" >&2;}
+fi
+
+fi
+
 fi
+if test "$have_python" != "yes"; then :
 
+      if test "$with_python" = "yes"; then :
+  as_fn_error $? "*** python support requested but python support not found" "$LINENO" 5
 fi
+      if test "$with_python" != "no"; then :
+  { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: *** python support not found, some documentation cannot be built" >&5
+$as_echo "$as_me: WARNING: *** python support not found, some documentation cannot be built" >&2;}
+fi
+
+fi
+
  if test "x$have_python" = "xyes"; then
   HAVE_PYTHON_TRUE=
   HAVE_PYTHON_FALSE='#'
@@ -15872,12 +15971,14 @@ _ACEOF
 fi
 done
 
-ac_fn_c_check_decl "$LINENO" "gettid" "ac_cv_have_decl_gettid" "#include <sys/types.h>
+ac_fn_c_check_decl "$LINENO" "gettid" "ac_cv_have_decl_gettid" "
+#include <sys/types.h>
 #include <unistd.h>
 #include <sys/mount.h>
 #include <fcntl.h>
 #include <sched.h>
 #include <linux/loop.h>
+
 "
 if test "x$ac_cv_have_decl_gettid" = xyes; then :
   ac_have_decl=1
 cat >>confdefs.h <<_ACEOF
 #define HAVE_DECL_GETTID $ac_have_decl
 _ACEOF
-ac_fn_c_check_decl "$LINENO" "pivot_root" "ac_cv_have_decl_pivot_root" "#include <sys/types.h>
+ac_fn_c_check_decl "$LINENO" "pivot_root" "ac_cv_have_decl_pivot_root" "
+#include <sys/types.h>
 #include <unistd.h>
 #include <sys/mount.h>
 #include <fcntl.h>
 #include <sched.h>
 #include <linux/loop.h>
+
 "
 if test "x$ac_cv_have_decl_pivot_root" = xyes; then :
   ac_have_decl=1
 cat >>confdefs.h <<_ACEOF
 #define HAVE_DECL_PIVOT_ROOT $ac_have_decl
 _ACEOF
-ac_fn_c_check_decl "$LINENO" "name_to_handle_at" "ac_cv_have_decl_name_to_handle_at" "#include <sys/types.h>
+ac_fn_c_check_decl "$LINENO" "name_to_handle_at" "ac_cv_have_decl_name_to_handle_at" "
+#include <sys/types.h>
 #include <unistd.h>
 #include <sys/mount.h>
 #include <fcntl.h>
 #include <sched.h>
 #include <linux/loop.h>
+
 "
 if test "x$ac_cv_have_decl_name_to_handle_at" = xyes; then :
   ac_have_decl=1
 cat >>confdefs.h <<_ACEOF
 #define HAVE_DECL_NAME_TO_HANDLE_AT $ac_have_decl
 _ACEOF
-ac_fn_c_check_decl "$LINENO" "setns" "ac_cv_have_decl_setns" "#include <sys/types.h>
+ac_fn_c_check_decl "$LINENO" "setns" "ac_cv_have_decl_setns" "
+#include <sys/types.h>
 #include <unistd.h>
 #include <sys/mount.h>
 #include <fcntl.h>
 #include <sched.h>
 #include <linux/loop.h>
+
 "
 if test "x$ac_cv_have_decl_setns" = xyes; then :
   ac_have_decl=1
 cat >>confdefs.h <<_ACEOF
 #define HAVE_DECL_SETNS $ac_have_decl
 _ACEOF
-ac_fn_c_check_decl "$LINENO" "LO_FLAGS_PARTSCAN" "ac_cv_have_decl_LO_FLAGS_PARTSCAN" "#include <sys/types.h>
+ac_fn_c_check_decl "$LINENO" "LO_FLAGS_PARTSCAN" "ac_cv_have_decl_LO_FLAGS_PARTSCAN" "
+#include <sys/types.h>
 #include <unistd.h>
 #include <sys/mount.h>
 #include <fcntl.h>
 #include <sched.h>
 #include <linux/loop.h>
+
 "
 if test "x$ac_cv_have_decl_LO_FLAGS_PARTSCAN" = xyes; then :
   ac_have_decl=1
@@ -15954,6 +16063,134 @@ cat >>confdefs.h <<_ACEOF
 _ACEOF
 
 
+ac_fn_c_check_decl "$LINENO" "IFLA_PHYS_PORT_ID" "ac_cv_have_decl_IFLA_PHYS_PORT_ID" "
+#include <inttypes.h>
+#include <netinet/in.h>
+#include <netinet/ether.h>
+#include <linux/rtnetlink.h>
+#include <net/if.h>
+#include <linux/ip.h>
+#include <linux/if_tunnel.h>
+#include <linux/if_link.h>
+#include <linux/if_bridge.h>
+
+"
+if test "x$ac_cv_have_decl_IFLA_PHYS_PORT_ID" = xyes; then :
+  ac_have_decl=1
+else
+  ac_have_decl=0
+fi
+
+cat >>confdefs.h <<_ACEOF
+#define HAVE_DECL_IFLA_PHYS_PORT_ID $ac_have_decl
+_ACEOF
+ac_fn_c_check_decl "$LINENO" "IFLA_BOND_AD_INFO" "ac_cv_have_decl_IFLA_BOND_AD_INFO" "
+#include <inttypes.h>
+#include <netinet/in.h>
+#include <netinet/ether.h>
+#include <linux/rtnetlink.h>
+#include <net/if.h>
+#include <linux/ip.h>
+#include <linux/if_tunnel.h>
+#include <linux/if_link.h>
+#include <linux/if_bridge.h>
+
+"
+if test "x$ac_cv_have_decl_IFLA_BOND_AD_INFO" = xyes; then :
+  ac_have_decl=1
+else
+  ac_have_decl=0
+fi
+
+cat >>confdefs.h <<_ACEOF
+#define HAVE_DECL_IFLA_BOND_AD_INFO $ac_have_decl
+_ACEOF
+ac_fn_c_check_decl "$LINENO" "IFLA_VLAN_PROTOCOL" "ac_cv_have_decl_IFLA_VLAN_PROTOCOL" "
+#include <inttypes.h>
+#include <netinet/in.h>
+#include <netinet/ether.h>
+#include <linux/rtnetlink.h>
+#include <net/if.h>
+#include <linux/ip.h>
+#include <linux/if_tunnel.h>
+#include <linux/if_link.h>
+#include <linux/if_bridge.h>
+
+"
+if test "x$ac_cv_have_decl_IFLA_VLAN_PROTOCOL" = xyes; then :
+  ac_have_decl=1
+else
+  ac_have_decl=0
+fi
+
+cat >>confdefs.h <<_ACEOF
+#define HAVE_DECL_IFLA_VLAN_PROTOCOL $ac_have_decl
+_ACEOF
+ac_fn_c_check_decl "$LINENO" "IFLA_VXLAN_LOCAL6" "ac_cv_have_decl_IFLA_VXLAN_LOCAL6" "
+#include <inttypes.h>
+#include <netinet/in.h>
+#include <netinet/ether.h>
+#include <linux/rtnetlink.h>
+#include <net/if.h>
+#include <linux/ip.h>
+#include <linux/if_tunnel.h>
+#include <linux/if_link.h>
+#include <linux/if_bridge.h>
+
+"
+if test "x$ac_cv_have_decl_IFLA_VXLAN_LOCAL6" = xyes; then :
+  ac_have_decl=1
+else
+  ac_have_decl=0
+fi
+
+cat >>confdefs.h <<_ACEOF
+#define HAVE_DECL_IFLA_VXLAN_LOCAL6 $ac_have_decl
+_ACEOF
+ac_fn_c_check_decl "$LINENO" "IFLA_IPTUN_6RD_RELAY_PREFIXLEN" "ac_cv_have_decl_IFLA_IPTUN_6RD_RELAY_PREFIXLEN" "
+#include <inttypes.h>
+#include <netinet/in.h>
+#include <netinet/ether.h>
+#include <linux/rtnetlink.h>
+#include <net/if.h>
+#include <linux/ip.h>
+#include <linux/if_tunnel.h>
+#include <linux/if_link.h>
+#include <linux/if_bridge.h>
+
+"
+if test "x$ac_cv_have_decl_IFLA_IPTUN_6RD_RELAY_PREFIXLEN" = xyes; then :
+  ac_have_decl=1
+else
+  ac_have_decl=0
+fi
+
+cat >>confdefs.h <<_ACEOF
+#define HAVE_DECL_IFLA_IPTUN_6RD_RELAY_PREFIXLEN $ac_have_decl
+_ACEOF
+ac_fn_c_check_decl "$LINENO" "IFLA_BRIDGE_VLAN_INFO" "ac_cv_have_decl_IFLA_BRIDGE_VLAN_INFO" "
+#include <inttypes.h>
+#include <netinet/in.h>
+#include <netinet/ether.h>
+#include <linux/rtnetlink.h>
+#include <net/if.h>
+#include <linux/ip.h>
+#include <linux/if_tunnel.h>
+#include <linux/if_link.h>
+#include <linux/if_bridge.h>
+
+"
+if test "x$ac_cv_have_decl_IFLA_BRIDGE_VLAN_INFO" = xyes; then :
+  ac_have_decl=1
+else
+  ac_have_decl=0
+fi
+
+cat >>confdefs.h <<_ACEOF
+#define HAVE_DECL_IFLA_BRIDGE_VLAN_INFO $ac_have_decl
+_ACEOF
+
+
 # This makes sure pkg.m4 is available.
 
 
@@ -17448,6 +17685,153 @@ else
 fi
 
 
+# ------------------------------------------------------------------------------
+# Check whether --enable-elfutils was given.
+if test "${enable_elfutils+set}" = set; then :
+  enableval=$enable_elfutils; case "${enableval}" in
+                        yes) have_elfutils=yes ;;
+                        no) have_elfutils=no ;;
+                        *) as_fn_error $? "bad value ${enableval} for --disable-elfutils" "$LINENO" 5 ;;
+                esac
+else
+  have_elfutils=auto
+fi
+
+
+if test "x${have_elfutils}" != xno ; then
+        for ac_header in elfutils/libdwfl.h
+do :
+  ac_fn_c_check_header_mongrel "$LINENO" "elfutils/libdwfl.h" "ac_cv_header_elfutils_libdwfl_h" "$ac_includes_default"
+if test "x$ac_cv_header_elfutils_libdwfl_h" = xyes; then :
+  cat >>confdefs.h <<_ACEOF
+#define HAVE_ELFUTILS_LIBDWFL_H 1
+_ACEOF
+
+else
+  if test "x$have_elfutils" = xyes ; then
+                        as_fn_error $? "*** ELFUTILS headers not found." "$LINENO" 5
+                fi
+fi
+
+done
+
+
+        { $as_echo "$as_me:${as_lineno-$LINENO}: checking for dwfl_begin in -ldw" >&5
+$as_echo_n "checking for dwfl_begin in -ldw... " >&6; }
+if ${ac_cv_lib_dw_dwfl_begin+:} false; then :
+  $as_echo_n "(cached) " >&6
+else
+  ac_check_lib_save_LIBS=$LIBS
+LIBS="-ldw  $LIBS"
+cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h.  */
+
+/* Override any GCC internal prototype to avoid an error.
+   Use char because int might match the return type of a GCC
+   builtin and then its argument prototype would still apply.  */
+#ifdef __cplusplus
+extern "C"
+#endif
+char dwfl_begin ();
+int
+main ()
+{
+return dwfl_begin ();
+  ;
+  return 0;
+}
+_ACEOF
+if ac_fn_c_try_link "$LINENO"; then :
+  ac_cv_lib_dw_dwfl_begin=yes
+else
+  ac_cv_lib_dw_dwfl_begin=no
+fi
+rm -f core conftest.err conftest.$ac_objext \
+    conftest$ac_exeext conftest.$ac_ext
+LIBS=$ac_check_lib_save_LIBS
+fi
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_dw_dwfl_begin" >&5
+$as_echo "$ac_cv_lib_dw_dwfl_begin" >&6; }
+if test "x$ac_cv_lib_dw_dwfl_begin" = xyes; then :
+  cat >>confdefs.h <<_ACEOF
+#define HAVE_LIBDW 1
+_ACEOF
+
+  LIBS="-ldw $LIBS"
+
+else
+  if test "x$have_elfutils" = xyes ; then
+                        as_fn_error $? "*** ELFUTILS libs not found." "$LINENO" 5
+                fi
+fi
+
+
+        { $as_echo "$as_me:${as_lineno-$LINENO}: checking for dwfl_core_file_attach in -ldw" >&5
+$as_echo_n "checking for dwfl_core_file_attach in -ldw... " >&6; }
+if ${ac_cv_lib_dw_dwfl_core_file_attach+:} false; then :
+  $as_echo_n "(cached) " >&6
+else
+  ac_check_lib_save_LIBS=$LIBS
+LIBS="-ldw  $LIBS"
+cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h.  */
+
+/* Override any GCC internal prototype to avoid an error.
+   Use char because int might match the return type of a GCC
+   builtin and then its argument prototype would still apply.  */
+#ifdef __cplusplus
+extern "C"
+#endif
+char dwfl_core_file_attach ();
+int
+main ()
+{
+return dwfl_core_file_attach ();
+  ;
+  return 0;
+}
+_ACEOF
+if ac_fn_c_try_link "$LINENO"; then :
+  ac_cv_lib_dw_dwfl_core_file_attach=yes
+else
+  ac_cv_lib_dw_dwfl_core_file_attach=no
+fi
+rm -f core conftest.err conftest.$ac_objext \
+    conftest$ac_exeext conftest.$ac_ext
+LIBS=$ac_check_lib_save_LIBS
+fi
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_dw_dwfl_core_file_attach" >&5
+$as_echo "$ac_cv_lib_dw_dwfl_core_file_attach" >&6; }
+if test "x$ac_cv_lib_dw_dwfl_core_file_attach" = xyes; then :
+  have_elfutils=yes
+else
+  if test "x$have_elfutils" = xyes ; then
+                        as_fn_error $? "*** ELFUTILS >= 158 is required." "$LINENO" 5
+                fi
+fi
+
+
+        if test "x$have_elfutils" = xyes ; then
+                ELFUTILS_LIBS="-lelf -ldw"
+
+$as_echo "#define HAVE_ELFUTILS 1" >>confdefs.h
+
+        else
+                have_elfutils=no
+        fi
+else
+        ELFUTILS_LIBS=
+fi
+
+ if test "$have_elfutils" = "yes"; then
+  HAVE_ELFUTILS_TRUE=
+  HAVE_ELFUTILS_FALSE='#'
+else
+  HAVE_ELFUTILS_TRUE='#'
+  HAVE_ELFUTILS_FALSE=
+fi
+
+
 # ------------------------------------------------------------------------------
 have_libcryptsetup=no
 # Check whether --enable-libcryptsetup was given.
@@ -17938,6 +18322,25 @@ else
 fi
 
 
+# ------------------------------------------------------------------------------
+have_sysusers=no
+# Check whether --enable-sysusers was given.
+if test "${enable_sysusers+set}" = set; then :
+  enableval=$enable_sysusers;
+fi
+
+if test "x$enable_sysusers" != "xno"; then
+        have_sysusers=yes
+fi
+ if test "$have_sysusers" = "yes"; then
+  ENABLE_SYSUSERS_TRUE=
+  ENABLE_SYSUSERS_FALSE='#'
+else
+  ENABLE_SYSUSERS_TRUE='#'
+  ENABLE_SYSUSERS_FALSE=
+fi
+
+
 # ------------------------------------------------------------------------------
 have_randomseed=no
 # Check whether --enable-randomseed was given.
@@ -18267,11 +18670,13 @@ if test "${enable_networkd+set}" = set; then :
   enableval=$enable_networkd;
 fi
 
-if test "x$enable_networkd" != "xno"; then
+if test "x$enable_networkd" != "xno"; then :
+
 
 $as_echo "#define ENABLE_NETWORKD 1" >>confdefs.h
 
         have_networkd=yes
+
 fi
  if test "x$have_networkd" = "xyes"; then
   ENABLE_NETWORKD_TRUE=
 
 # Check whether --with-tty-gid was given.
 if test "${with_tty_gid+set}" = set; then :
-  withval=$with_tty_gid;
+  withval=$with_tty_gid; TTY_GID="$withval"
+else
+  TTY_GID="5"
+fi
+
+
+
 cat >>confdefs.h <<_ACEOF
-#define TTY_GID $withval
+#define TTY_GID $TTY_GID
 _ACEOF
 
-fi
 
 
 
@@ -19503,6 +19913,10 @@ if test -z "${HAVE_GCRYPT_TRUE}" && test -z "${HAVE_GCRYPT_FALSE}"; then
   as_fn_error $? "conditional \"HAVE_GCRYPT\" was never defined.
 Usually this means the macro was only invoked conditionally." "$LINENO" 5
 fi
+if test -z "${HAVE_ELFUTILS_TRUE}" && test -z "${HAVE_ELFUTILS_FALSE}"; then
+  as_fn_error $? "conditional \"HAVE_ELFUTILS\" was never defined.
+Usually this means the macro was only invoked conditionally." "$LINENO" 5
+fi
 if test -z "${HAVE_LIBCRYPTSETUP_TRUE}" && test -z "${HAVE_LIBCRYPTSETUP_FALSE}"; then
   as_fn_error $? "conditional \"HAVE_LIBCRYPTSETUP\" was never defined.
 Usually this means the macro was only invoked conditionally." "$LINENO" 5
@@ -19543,6 +19957,10 @@ if test -z "${ENABLE_TMPFILES_TRUE}" && test -z "${ENABLE_TMPFILES_FALSE}"; then
   as_fn_error $? "conditional \"ENABLE_TMPFILES\" was never defined.
 Usually this means the macro was only invoked conditionally." "$LINENO" 5
 fi
+if test -z "${ENABLE_SYSUSERS_TRUE}" && test -z "${ENABLE_SYSUSERS_FALSE}"; then
+  as_fn_error $? "conditional \"ENABLE_SYSUSERS\" was never defined.
+Usually this means the macro was only invoked conditionally." "$LINENO" 5
+fi
 if test -z "${ENABLE_RANDOMSEED_TRUE}" && test -z "${ENABLE_RANDOMSEED_FALSE}"; then
   as_fn_error $? "conditional \"ENABLE_RANDOMSEED\" was never defined.
 Usually this means the macro was only invoked conditionally." "$LINENO" 5
@@ -20032,7 +20450,7 @@ cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
 # report actual input values of CONFIG_FILES etc. instead of their
 # values after options handling.
 ac_log="
-This file was extended by systemd $as_me 214, which was
+This file was extended by systemd $as_me 215, which was
 generated by GNU Autoconf 2.69.  Invocation command line was
 
   CONFIG_FILES    = $CONFIG_FILES
@@ -20099,7 +20517,7 @@ _ACEOF
 cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
 ac_cs_config="`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`"
 ac_cs_version="\\
-systemd config.status 214
+systemd config.status 215
 configured by $0, generated by GNU Autoconf 2.69,
   with options \\"\$ac_cs_config\\"
 
         MICROHTTPD:              ${have_microhttpd}
         CHKCONFIG:               ${have_chkconfig}
         GNUTLS:                  ${have_gnutls}
+        ELFUTILS:                ${have_elfutils}
         binfmt:                  ${have_binfmt}
         vconsole:                ${have_vconsole}
         readahead:               ${have_readahead}
         bootchart:               ${have_bootchart}
         quotacheck:              ${have_quotacheck}
         tmpfiles:                ${have_tmpfiles}
+        sysusers:                ${have_sysusers}
         randomseed:              ${have_randomseed}
         backlight:               ${have_backlight}
         rfkill:                  ${have_rfkill}
@@ -21974,6 +22394,7 @@ fi
         Extra start script:      ${RC_LOCAL_SCRIPT_PATH_START}
         Extra stop script:       ${RC_LOCAL_SCRIPT_PATH_STOP}
         Debug shell:             ${SUSHELL} @ ${DEBUGTTY}
+        TTY GID:                 ${TTY_GID}
         Maximum System UID:      ${SYSTEM_UID_MAX}
         Maximum System GID:      ${SYSTEM_GID_MAX}
 
@@ -22001,12 +22422,14 @@ $as_echo "
         MICROHTTPD:              ${have_microhttpd}
         CHKCONFIG:               ${have_chkconfig}
         GNUTLS:                  ${have_gnutls}
+        ELFUTILS:                ${have_elfutils}
         binfmt:                  ${have_binfmt}
         vconsole:                ${have_vconsole}
         readahead:               ${have_readahead}
         bootchart:               ${have_bootchart}
         quotacheck:              ${have_quotacheck}
         tmpfiles:                ${have_tmpfiles}
+        sysusers:                ${have_sysusers}
         randomseed:              ${have_randomseed}
         backlight:               ${have_backlight}
         rfkill:                  ${have_rfkill}
@@ -22066,6 +22489,7 @@ $as_echo "
         Extra start script:      ${RC_LOCAL_SCRIPT_PATH_START}
         Extra stop script:       ${RC_LOCAL_SCRIPT_PATH_STOP}
         Debug shell:             ${SUSHELL} @ ${DEBUGTTY}
+        TTY GID:                 ${TTY_GID}
         Maximum System UID:      ${SYSTEM_UID_MAX}
         Maximum System GID:      ${SYSTEM_GID_MAX}
 
index faf7f72289a5bfae42d20842dbad198deec70bf5..ae88382e21c75f4ecb19ac85ebcaa38cbc1aebfe 100644 (file)
@@ -20,7 +20,7 @@
 AC_PREREQ([2.64])
 
 AC_INIT([systemd],
-        [214],
+        [215],
         [http://bugs.freedesktop.org/enter_bug.cgi?product=systemd],
         [systemd],
         [http://www.freedesktop.org/wiki/Software/systemd])
@@ -49,7 +49,29 @@ AS_IF([test "x$enable_static" = "xyes"], [AC_MSG_ERROR([--enable-static is not s
 AS_IF([test "x$enable_largefile" = "xno"], [AC_MSG_ERROR([--disable-largefile is not supported by systemd])])
 
 # i18n stuff for the PolicyKit policy files
+
+# Check whether intltool can be found, disable NLS otherwise
+AC_CHECK_PROG(intltool_found, [intltool-merge], [yes], [no])
+AS_IF([test x"$intltool_found" != xyes],
+      [AS_IF([test x"$enable_nls" = xyes],
+             [AC_MSG_ERROR([--enable-nls requested but intltool not found])],
+             [AS_IF([test x"$enable_nls" != xno],
+                    [AC_MSG_WARN([*** Disabling NLS support because intltool was not found])
+                     enable_nls=no])
+             ])
+      ])
+
+AM_NLS
+AS_IF([test x"$enable_nls" != xno], [
+    # intltoolize greps for '^(AC|IT)_PROG_INTLTOOL', so it needs to be on its own line
 IT_PROG_INTLTOOL([0.40.0])
+])
+
+AS_IF([test -z "$INTLTOOL_POLICY_RULE"], [
+    # If intltool is not available, provide a dummy rule to fail generation of %.policy files with a meaningful error message
+    INTLTOOL_POLICY_RULE='%.policy: %.policy.in ; @echo "  ITMRG   " $@ && echo "*** intltool support required to build target $@" && false'
+    AC_SUBST(INTLTOOL_POLICY_RULE)
+])
 
 GETTEXT_PACKAGE=systemd
 AC_SUBST(GETTEXT_PACKAGE)
@@ -216,9 +238,21 @@ AC_ARG_WITH([python],
 have_lxml=no
 AS_IF([test "x$with_python" != "xno"], [
         AM_PATH_PYTHON(,, [:])
-        AS_IF(["$PYTHON" -c 'import lxml' 2>/dev/null], [have_lxml=yes], [have_lxml=no])
-        AS_IF([test "$PYTHON" != : -a $have_lxml = yes], [have_python=yes])
+        AS_IF([test "x$PYTHON" != "x:"], [
+                AC_MSG_CHECKING([for python lxml module])
+                AS_IF(["$PYTHON" -c 'import lxml' 2>/dev/null], [have_lxml=yes])
+                AC_MSG_RESULT([$have_lxml])
+                AS_IF([test "x$have_lxml" = "xyes"], [have_python=yes],
+                      [AC_MSG_WARN([*** python support requires python-lxml module installed])])
+        ])
+])
+AS_IF([test "$have_python" != "yes"], [
+      AS_IF([test "$with_python" = "yes"],
+            [AC_MSG_ERROR([*** python support requested but python support not found])])
+      AS_IF([test "$with_python" != "no"],
+            [AC_MSG_WARN([*** python support not found, some documentation cannot be built])])
 ])
+
 AM_CONDITIONAL([HAVE_PYTHON], [test "x$have_python" = "xyes"])
 AS_IF([test "x$PYTHON_BINARY" = "x"],
       [AS_IF([test "x$have_python" = "xyes"],
@@ -266,12 +300,33 @@ LIBS="$save_LIBS"
 
 AC_CHECK_FUNCS([fanotify_init fanotify_mark])
 AC_CHECK_FUNCS([__secure_getenv secure_getenv])
-AC_CHECK_DECLS([gettid, pivot_root, name_to_handle_at, setns, LO_FLAGS_PARTSCAN], [], [], [[#include <sys/types.h>
+AC_CHECK_DECLS([gettid, pivot_root, name_to_handle_at, setns, LO_FLAGS_PARTSCAN],
+               [], [], [[
+#include <sys/types.h>
 #include <unistd.h>
 #include <sys/mount.h>
 #include <fcntl.h>
 #include <sched.h>
-#include <linux/loop.h>]])
+#include <linux/loop.h>
+]])
+
+AC_CHECK_DECLS([IFLA_PHYS_PORT_ID,
+                IFLA_BOND_AD_INFO,
+                IFLA_VLAN_PROTOCOL,
+                IFLA_VXLAN_LOCAL6,
+                IFLA_IPTUN_6RD_RELAY_PREFIXLEN,
+                IFLA_BRIDGE_VLAN_INFO],
+[], [], [[
+#include <inttypes.h>
+#include <netinet/in.h>
+#include <netinet/ether.h>
+#include <linux/rtnetlink.h>
+#include <net/if.h>
+#include <linux/ip.h>
+#include <linux/if_tunnel.h>
+#include <linux/if_link.h>
+#include <linux/if_bridge.h>
+]])
 
 # This makes sure pkg.m4 is available.
 m4_pattern_forbid([^_?PKG_[A-Z_]+$],[*** pkg.m4 missing, please install pkg-config])
@@ -626,6 +681,52 @@ else
 fi
 AC_SUBST(AUDIT_LIBS)
 
+# ------------------------------------------------------------------------------
+AC_ARG_ENABLE([elfutils],
+        AS_HELP_STRING([--disable-elfutils],[Disable optional ELFUTILS support]),
+                [case "${enableval}" in
+                        yes) have_elfutils=yes ;;
+                        no) have_elfutils=no ;;
+                        *) AC_MSG_ERROR(bad value ${enableval} for --disable-elfutils) ;;
+                esac],
+                [have_elfutils=auto])
+
+if test "x${have_elfutils}" != xno ; then
+        AC_CHECK_HEADERS(
+                [elfutils/libdwfl.h],
+                [],
+                [if test "x$have_elfutils" = xyes ; then
+                        AC_MSG_ERROR([*** ELFUTILS headers not found.])
+                fi])
+
+        AC_CHECK_LIB(
+                [dw],
+                [dwfl_begin],
+                [],
+                [if test "x$have_elfutils" = xyes ; then
+                        AC_MSG_ERROR([*** ELFUTILS libs not found.])
+                fi])
+
+        AC_CHECK_LIB(
+                [dw],
+                [dwfl_core_file_attach],
+                [have_elfutils=yes],
+                [if test "x$have_elfutils" = xyes ; then
+                        AC_MSG_ERROR([*** ELFUTILS >= 158 is required.])
+                fi])
+
+        if test "x$have_elfutils" = xyes ; then
+                ELFUTILS_LIBS="-lelf -ldw"
+                AC_DEFINE(HAVE_ELFUTILS, 1, [ELFUTILS available])
+        else
+                have_elfutils=no
+        fi
+else
+        ELFUTILS_LIBS=
+fi
+AC_SUBST(ELFUTILS_LIBS)
+AM_CONDITIONAL(HAVE_ELFUTILS, [test "$have_elfutils" = "yes"])
+
 # ------------------------------------------------------------------------------
 have_libcryptsetup=no
 AC_ARG_ENABLE(libcryptsetup, AS_HELP_STRING([--disable-libcryptsetup], [disable libcryptsetup tools]))
@@ -722,6 +823,14 @@ if test "x$enable_tmpfiles" != "xno"; then
 fi
 AM_CONDITIONAL(ENABLE_TMPFILES, [test "$have_tmpfiles" = "yes"])
 
+# ------------------------------------------------------------------------------
+have_sysusers=no
+AC_ARG_ENABLE(sysusers, AS_HELP_STRING([--disable-sysusers], [disable sysusers support]))
+if test "x$enable_sysusers" != "xno"; then
+        have_sysusers=yes
+fi
+AM_CONDITIONAL(ENABLE_SYSUSERS, [test "$have_sysusers" = "yes"])
+
 # ------------------------------------------------------------------------------
 have_randomseed=no
 AC_ARG_ENABLE(randomseed, AS_HELP_STRING([--disable-randomseed], [disable randomseed tools]))
@@ -870,10 +979,10 @@ AC_SUBST(DNS_SERVERS)
 # ------------------------------------------------------------------------------
 have_networkd=no
 AC_ARG_ENABLE(networkd, AS_HELP_STRING([--disable-networkd], [disable networkd]))
-if test "x$enable_networkd" != "xno"; then
+AS_IF([test "x$enable_networkd" != "xno"], [
         AC_DEFINE(ENABLE_NETWORKD, 1, [Define if networkd support is to be enabled])
         have_networkd=yes
-fi
+])
 AM_CONDITIONAL(ENABLE_NETWORKD, [test "x$have_networkd" = "xyes"])
 
 # ------------------------------------------------------------------------------
@@ -1042,8 +1151,11 @@ AM_CONDITIONAL(HAVE_SYSV_COMPAT, test "$SYSTEM_SYSV_COMPAT" = "yes")
 AC_ARG_WITH([tty-gid],
         [AS_HELP_STRING([--with-tty-gid=GID],
                 [Specify the numeric GID of the 'tty' group])],
-        [AC_DEFINE_UNQUOTED(TTY_GID, [$withval], [GID of the 'tty' group])],
-        [])
+        [TTY_GID="$withval"],
+        [TTY_GID="5"])
+
+AC_DEFINE_UNQUOTED(TTY_GID, [$TTY_GID], [GID of the 'tty' group])
+AC_SUBST(TTY_GID)
 
 AC_ARG_WITH([dbuspolicydir],
         AS_HELP_STRING([--with-dbuspolicydir=DIR], [D-Bus policy directory]),
@@ -1160,12 +1272,14 @@ AC_MSG_RESULT([
         MICROHTTPD:              ${have_microhttpd}
         CHKCONFIG:               ${have_chkconfig}
         GNUTLS:                  ${have_gnutls}
+        ELFUTILS:                ${have_elfutils}
         binfmt:                  ${have_binfmt}
         vconsole:                ${have_vconsole}
         readahead:               ${have_readahead}
         bootchart:               ${have_bootchart}
         quotacheck:              ${have_quotacheck}
         tmpfiles:                ${have_tmpfiles}
+        sysusers:                ${have_sysusers}
         randomseed:              ${have_randomseed}
         backlight:               ${have_backlight}
         rfkill:                  ${have_rfkill}
@@ -1225,6 +1339,7 @@ AC_MSG_RESULT([
         Extra start script:      ${RC_LOCAL_SCRIPT_PATH_START}
         Extra stop script:       ${RC_LOCAL_SCRIPT_PATH_STOP}
         Debug shell:             ${SUSHELL} @ ${DEBUGTTY}
+        TTY GID:                 ${TTY_GID}
         Maximum System UID:      ${SYSTEM_UID_MAX}
         Maximum System GID:      ${SYSTEM_GID_MAX}
 
index 515fb59454b89ada96f4de22c260e7f3f0d255fa..92fbf7c1cac9a70c0c05dc0019cbf0b2e9b8b0df 100644 (file)
@@ -156,6 +156,7 @@ ECHO_C = @ECHO_C@
 ECHO_N = @ECHO_N@
 ECHO_T = @ECHO_T@
 EGREP = @EGREP@
+ELFUTILS_LIBS = @ELFUTILS_LIBS@
 EXEEXT = @EXEEXT@
 FGREP = @FGREP@
 FIRMWARE_PATH = @FIRMWARE_PATH@
@@ -280,6 +281,7 @@ SYSTEM_SYSVINIT_PATH = @SYSTEM_SYSVINIT_PATH@
 SYSTEM_SYSVRCND_PATH = @SYSTEM_SYSVRCND_PATH@
 SYSTEM_UID_MAX = @SYSTEM_UID_MAX@
 TELINIT = @TELINIT@
+TTY_GID = @TTY_GID@
 USE_NLS = @USE_NLS@
 VERSION = @VERSION@
 XGETTEXT = @XGETTEXT@
@@ -326,6 +328,7 @@ infodir = @infodir@
 install_sh = @install_sh@
 intltool__v_merge_options_ = @intltool__v_merge_options_@
 intltool__v_merge_options_0 = @intltool__v_merge_options_0@
+intltool_found = @intltool_found@
 lcov_found = @lcov_found@
 libdir = @libdir@
 libexecdir = @libexecdir@
index 9f7e9bbc0afbd7887d2af885aaa49e4a4f2ac615..31d5f43436c31dcdc475332533848f797a7af6ee 100644 (file)
@@ -15,7 +15,7 @@
 <div>
 <div><table class="navigation" id="top" width="100%" cellpadding="2" cellspacing="0"><tr><th valign="middle"><p class="title">GUdev Reference Manual</p></th></tr></table></div>
 <div><p class="releaseinfo">
-       For version 214
+       For version 215
  — the latest version of this
        documentation can be found at
        <a class="ulink" href="http://www.freedesktop.org/software/systemd/gudev/" target="_top">
index 9d683f8cf63bab4dc82778bbfefc8da211f6f1ae..c34a8046fa35e9cec76905037d0e5727b11386b6 100644 (file)
@@ -1 +1 @@
-214
+215
index 988954cfa140b5166e5ebd1f89e23cba2a3a590a..c3b374fab7ec4c534eba45cf9665607857f9c191 100644 (file)
@@ -156,6 +156,7 @@ ECHO_C = @ECHO_C@
 ECHO_N = @ECHO_N@
 ECHO_T = @ECHO_T@
 EGREP = @EGREP@
+ELFUTILS_LIBS = @ELFUTILS_LIBS@
 EXEEXT = @EXEEXT@
 FGREP = @FGREP@
 FIRMWARE_PATH = @FIRMWARE_PATH@
@@ -280,6 +281,7 @@ SYSTEM_SYSVINIT_PATH = @SYSTEM_SYSVINIT_PATH@
 SYSTEM_SYSVRCND_PATH = @SYSTEM_SYSVRCND_PATH@
 SYSTEM_UID_MAX = @SYSTEM_UID_MAX@
 TELINIT = @TELINIT@
+TTY_GID = @TTY_GID@
 USE_NLS = @USE_NLS@
 VERSION = @VERSION@
 XGETTEXT = @XGETTEXT@
@@ -326,6 +328,7 @@ infodir = @infodir@
 install_sh = @install_sh@
 intltool__v_merge_options_ = @intltool__v_merge_options_@
 intltool__v_merge_options_0 = @intltool__v_merge_options_0@
+intltool_found = @intltool_found@
 lcov_found = @lcov_found@
 libdir = @libdir@
 libexecdir = @libexecdir@
index 9404bfdc3932c15a7769bba44cea8b372252fc16..bb7290a6924e771fad8f92b56cf40a4e8ece02b2 100644 (file)
 </dt>
 <dd></dd>
 <dt>
+<a class="link" href="libudev-udev-queue.html#udev-queue-flush" title="udev_queue_flush ()">udev_queue_flush</a>, function in <a class="link" href="libudev-udev-queue.html" title="udev_queue">udev_queue</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="libudev-udev-queue.html#udev-queue-get-fd" title="udev_queue_get_fd ()">udev_queue_get_fd</a>, function in <a class="link" href="libudev-udev-queue.html" title="udev_queue">udev_queue</a>
+</dt>
+<dd></dd>
+<dt>
 <a class="link" href="libudev-udev-queue.html#udev-queue-get-kernel-seqnum" title="udev_queue_get_kernel_seqnum ()">udev_queue_get_kernel_seqnum</a>, function in <a class="link" href="libudev-udev-queue.html" title="udev_queue">udev_queue</a>
 </dt>
 <dd></dd>
index 4fca00bd323e1900e03c7fb7b4ccc570662a72aa..0df8f88f3fc8488bd106c398a827eae8a3a2268a 100644 (file)
@@ -15,7 +15,7 @@
 <div>
 <div><table class="navigation" id="top" width="100%" cellpadding="2" cellspacing="0"><tr><th valign="middle"><p class="title">libudev Reference Manual</p></th></tr></table></div>
 <div><p class="releaseinfo">
-       For version 214
+       For version 215
  — the latest version of this
        documentation can be found at
        <a class="ulink" href="http://www.freedesktop.org/software/systemd/libudev/" target="_top">
index 74c9d710a13bffe62b09eef0dbdba9ff8f1d3819..c01405a4c2d488cb81067039f50fb0743e711232 100644 (file)
 <ANCHOR id="udev-queue-get-queued-list-entry" href="libudev/libudev-udev-queue.html#udev-queue-get-queued-list-entry">
 <ANCHOR id="udev-queue-get-kernel-seqnum" href="libudev/libudev-udev-queue.html#udev-queue-get-kernel-seqnum">
 <ANCHOR id="udev-queue-get-udev-seqnum" href="libudev/libudev-udev-queue.html#udev-queue-get-udev-seqnum">
+<ANCHOR id="udev-queue-get-fd" href="libudev/libudev-udev-queue.html#udev-queue-get-fd">
+<ANCHOR id="udev-queue-flush" href="libudev/libudev-udev-queue.html#udev-queue-flush">
 <ANCHOR id="libudev-udev-hwdb" href="libudev/libudev-udev-hwdb.html">
 <ANCHOR id="libudev-udev-hwdb.synopsis" href="libudev/libudev-udev-hwdb.html#libudev-udev-hwdb.synopsis">
 <ANCHOR id="libudev-udev-hwdb.description" href="libudev/libudev-udev-hwdb.html#libudev-udev-hwdb.description">
index 69a156ee1faa0113d26e5a912e1fd0d20c62fdae..1e00d8dc3a0d179162d4ded0238a0d775d0a4c11 100644 (file)
@@ -54,6 +54,8 @@ struct <a class="link" href="libudev-udev-list.html#udev-list-entry" title="stru
                                                         (<em class="parameter"><code><span class="type">struct udev_queue</span> *udev_queue</code></em>);
 unsigned long long <span class="returnvalue">int</span> <a class="link" href="libudev-udev-queue.html#udev-queue-get-kernel-seqnum" title="udev_queue_get_kernel_seqnum ()">udev_queue_get_kernel_seqnum</a>     (<em class="parameter"><code><span class="type">struct udev_queue</span> *udev_queue</code></em>);
 unsigned long long <span class="returnvalue">int</span> <a class="link" href="libudev-udev-queue.html#udev-queue-get-udev-seqnum" title="udev_queue_get_udev_seqnum ()">udev_queue_get_udev_seqnum</a>       (<em class="parameter"><code><span class="type">struct udev_queue</span> *udev_queue</code></em>);
+<span class="returnvalue">int</span>                 <a class="link" href="libudev-udev-queue.html#udev-queue-get-fd" title="udev_queue_get_fd ()">udev_queue_get_fd</a>                   (<em class="parameter"><code><span class="type">struct udev_queue</span> *udev_queue</code></em>);
+<span class="returnvalue">int</span>                 <a class="link" href="libudev-udev-queue.html#udev-queue-flush" title="udev_queue_flush ()">udev_queue_flush</a>                    (<em class="parameter"><code><span class="type">struct udev_queue</span> *udev_queue</code></em>);
 </pre>
 </div>
 <div class="refsect1">
@@ -356,6 +358,16 @@ This function is deprecated.
 </tbody>
 </table></div>
 </div>
+<hr>
+<div class="refsect2">
+<a name="udev-queue-get-fd"></a><h3>udev_queue_get_fd ()</h3>
+<pre class="programlisting"><span class="returnvalue">int</span>                 udev_queue_get_fd                   (<em class="parameter"><code><span class="type">struct udev_queue</span> *udev_queue</code></em>);</pre>
+</div>
+<hr>
+<div class="refsect2">
+<a name="udev-queue-flush"></a><h3>udev_queue_flush ()</h3>
+<pre class="programlisting"><span class="returnvalue">int</span>                 udev_queue_flush                    (<em class="parameter"><code><span class="type">struct udev_queue</span> *udev_queue</code></em>);</pre>
+</div>
 </div>
 </div>
 <div class="footer">
index 3ae09b3d0e73049182c90b93f906e04ce6f42d7f..7219e01a4e4e32f2b129dee3b4329aa760998a44 100644 (file)
     <keyword type="function" name="udev_queue_get_queued_list_entry ()" link="libudev-udev-queue.html#udev-queue-get-queued-list-entry"/>
     <keyword type="function" name="udev_queue_get_kernel_seqnum ()" link="libudev-udev-queue.html#udev-queue-get-kernel-seqnum"/>
     <keyword type="function" name="udev_queue_get_udev_seqnum ()" link="libudev-udev-queue.html#udev-queue-get-udev-seqnum"/>
+    <keyword type="function" name="udev_queue_get_fd ()" link="libudev-udev-queue.html#udev-queue-get-fd"/>
+    <keyword type="function" name="udev_queue_flush ()" link="libudev-udev-queue.html#udev-queue-flush"/>
     <keyword type="struct" name="struct udev_hwdb" link="libudev-udev-hwdb.html#udev-hwdb"/>
     <keyword type="function" name="udev_hwdb_ref ()" link="libudev-udev-hwdb.html#udev-hwdb-ref"/>
     <keyword type="function" name="udev_hwdb_unref ()" link="libudev-udev-hwdb.html#udev-hwdb-unref"/>
index c1546458f4e2dddf7d5b9a0d2b540edf9ec384ab..8a31ded4e915dd188da8999df70748b60f7342ad 100644 (file)
@@ -116,6 +116,8 @@ udev_queue_get_seqnum_sequence_is_finished
 udev_queue_get_queued_list_entry
 udev_queue_get_kernel_seqnum
 udev_queue_get_udev_seqnum
+udev_queue_get_fd
+udev_queue_flush
 </SECTION>
 
 <SECTION>
index 9d683f8cf63bab4dc82778bbfefc8da211f6f1ae..c34a8046fa35e9cec76905037d0e5727b11386b6 100644 (file)
@@ -1 +1 @@
-214
+215
index 6188bfcff68bf82f29678e6325c48a745c302d14..97f1e6b2c0e02f39eac1d2b4ff4835758b412cdb 100644 (file)
@@ -6446,7 +6446,7 @@ OUI:0050C2871*
  ID_OUI_FROM_DATABASE=R-S-I Elektrotechnik GmbH & Co. KG
 
 OUI:0050C2872*
- ID_OUI_FROM_DATABASE=Oliotalo - Objecthouse Oy
+ ID_OUI_FROM_DATABASE=Oliotalo Oy
 
 OUI:0050C2873*
  ID_OUI_FROM_DATABASE=XRONET Corporation
@@ -37139,76 +37139,76 @@ OUI:001EC7*
  ID_OUI_FROM_DATABASE=2Wire, Inc.
 
 OUI:001EC8*
- ID_OUI_FROM_DATABASE=2Wire, Inc.
+ ID_OUI_FROM_DATABASE=Rapid Mobile (Pty) Ltd
 
 OUI:001EC9*
- ID_OUI_FROM_DATABASE=2Wire, Inc.
+ ID_OUI_FROM_DATABASE=Dell Inc
 
 OUI:001ECA*
- ID_OUI_FROM_DATABASE=2Wire, Inc.
+ ID_OUI_FROM_DATABASE=Nortel
 
 OUI:001ECB*
- ID_OUI_FROM_DATABASE=2Wire, Inc.
+ ID_OUI_FROM_DATABASE="RPC "Energoautomatika" Ltd
 
 OUI:001ECC*
- ID_OUI_FROM_DATABASE=2Wire, Inc.
+ ID_OUI_FROM_DATABASE=CDVI
 
 OUI:001ECD*
  ID_OUI_FROM_DATABASE=KYLAND Technology Co. LTD
 
 OUI:001ECE*
- ID_OUI_FROM_DATABASE=2Wire, Inc.
+ ID_OUI_FROM_DATABASE=BISA Technologies (Hong Kong) Limited
 
 OUI:001ECF*
- ID_OUI_FROM_DATABASE=2Wire, Inc.
+ ID_OUI_FROM_DATABASE=PHILIPS ELECTRONICS UK LTD
 
 OUI:001ED0*
- ID_OUI_FROM_DATABASE=2Wire, Inc.
+ ID_OUI_FROM_DATABASE=Ingespace
 
 OUI:001ED1*
- ID_OUI_FROM_DATABASE=2Wire, Inc.
+ ID_OUI_FROM_DATABASE=Keyprocessor B.V.
 
 OUI:001ED2*
- ID_OUI_FROM_DATABASE=2Wire, Inc.
+ ID_OUI_FROM_DATABASE=Ray Shine Video Technology Inc
 
 OUI:001ED3*
- ID_OUI_FROM_DATABASE=2Wire, Inc.
+ ID_OUI_FROM_DATABASE=Dot Technology Int'l Co., Ltd.
 
 OUI:001ED4*
- ID_OUI_FROM_DATABASE=2Wire, Inc.
+ ID_OUI_FROM_DATABASE=Doble Engineering
 
 OUI:001ED5*
- ID_OUI_FROM_DATABASE=2Wire, Inc.
+ ID_OUI_FROM_DATABASE=Tekon-Automatics
 
 OUI:001ED6*
- ID_OUI_FROM_DATABASE=2Wire, Inc.
+ ID_OUI_FROM_DATABASE=Alentec & Orion AB
 
 OUI:001ED7*
- ID_OUI_FROM_DATABASE=2Wire, Inc.
+ ID_OUI_FROM_DATABASE=H-Stream Wireless, Inc.
 
 OUI:001ED8*
- ID_OUI_FROM_DATABASE=2Wire, Inc.
+ ID_OUI_FROM_DATABASE=Digital United Inc.
 
 OUI:001ED9*
- ID_OUI_FROM_DATABASE=2Wire, Inc.
+ ID_OUI_FROM_DATABASE=Mitsubishi Precision Co.,LTd.
 
 OUI:001EDA*
- ID_OUI_FROM_DATABASE=2Wire, Inc.
+ ID_OUI_FROM_DATABASE=Wesemann Elektrotechniek B.V.
 
 OUI:001EDB*
- ID_OUI_FROM_DATABASE=2Wire, Inc.
+ ID_OUI_FROM_DATABASE=Giken Trastem Co., Ltd.
 
 OUI:001EDC*
- ID_OUI_FROM_DATABASE=2Wire, Inc.
+ ID_OUI_FROM_DATABASE=Sony Ericsson Mobile Communications AB
 
 OUI:001EDD*
- ID_OUI_FROM_DATABASE=2Wire, Inc.
+ ID_OUI_FROM_DATABASE=WASKO S.A.
 
 OUI:001EDE*
- ID_OUI_FROM_DATABASE=2Wire, Inc.
+ ID_OUI_FROM_DATABASE=BYD COMPANY LIMITED
 
 OUI:001EDF*
- ID_OUI_FROM_DATABASE=2Wire, Inc.
+ ID_OUI_FROM_DATABASE=Master Industrialization Center Kista
 
 OUI:001EE0*
  ID_OUI_FROM_DATABASE=Urmet Domus SpA
@@ -45800,7 +45800,7 @@ OUI:0050F8*
  ID_OUI_FROM_DATABASE=ENTREGA TECHNOLOGIES, INC.
 
 OUI:0050F9*
- ID_OUI_FROM_DATABASE=SENSORMATIC ACD
+ ID_OUI_FROM_DATABASE=Sensormatic Electronics LLC
 
 OUI:0050FA*
  ID_OUI_FROM_DATABASE=OXTEL, LTD.
@@ -45829,6 +45829,9 @@ OUI:0054AF*
 OUI:005907*
  ID_OUI_FROM_DATABASE=LenovoEMC Products USA, LLC
 
+OUI:005A39*
+ ID_OUI_FROM_DATABASE=SHENZHEN FAST TECHNOLOGIES CO., LTD.
+
 OUI:005CB1*
  ID_OUI_FROM_DATABASE=Gospell DIGITAL TECHNOLOGY CO., LTD
 
@@ -46603,6 +46606,9 @@ OUI:0060FE*
 OUI:0060FF*
  ID_OUI_FROM_DATABASE=QuVis, Inc.
 
+OUI:006171*
+ ID_OUI_FROM_DATABASE=Apple
+
 OUI:006440*
  ID_OUI_FROM_DATABASE=CISCO SYSTEMS, INC.
 
@@ -48238,6 +48244,9 @@ OUI:009C02*
 OUI:009D8E*
  ID_OUI_FROM_DATABASE=CARDIAC RECORDERS, INC.
 
+OUI:009EC8*
+ ID_OUI_FROM_DATABASE=Beijing Xiaomi Electronic Products Co., Ltd.
+
 OUI:00A000*
  ID_OUI_FROM_DATABASE=CENTILLION NETWORKS, INC.
 
@@ -50740,6 +50749,9 @@ OUI:00D38D*
 OUI:00D632*
  ID_OUI_FROM_DATABASE=GE Energy
 
+OUI:00D9D1*
+ ID_OUI_FROM_DATABASE=Sony Computer Entertainment Inc.
+
 OUI:00DB1E*
  ID_OUI_FROM_DATABASE=Albedo Telecom SL
 
@@ -51778,6 +51790,9 @@ OUI:0462D7*
 OUI:0463E0*
  ID_OUI_FROM_DATABASE=Nome Oy
 
+OUI:046785*
+ ID_OUI_FROM_DATABASE=scemtec Hard- und Software fuer Mess- und Steuerungstechnik GmbH
+
 OUI:046D42*
  ID_OUI_FROM_DATABASE=Bryston Ltd.
 
@@ -51901,6 +51916,9 @@ OUI:04DB8A*
 OUI:04DD4C*
  ID_OUI_FROM_DATABASE=Velocytech
 
+OUI:04DEDB*
+ ID_OUI_FROM_DATABASE=Rockport Networks Inc
+
 OUI:04DF69*
  ID_OUI_FROM_DATABASE=Car Connectivity Consortium
 
@@ -52498,6 +52516,9 @@ OUI:083F76*
 OUI:084027*
  ID_OUI_FROM_DATABASE=Gridstore Inc.
 
+OUI:084656*
+ ID_OUI_FROM_DATABASE=VODALYS Ingénierie
+
 OUI:08482C*
  ID_OUI_FROM_DATABASE=Raycore Taiwan Co., LTD.
 
@@ -52966,6 +52987,9 @@ OUI:0CCDD3*
 OUI:0CCDFB*
  ID_OUI_FROM_DATABASE=EDIC Systems Inc.
 
+OUI:0CCFD1*
+ ID_OUI_FROM_DATABASE=SPRINGWAVE Co., Ltd
+
 OUI:0CD292*
  ID_OUI_FROM_DATABASE=Intel Corporate
 
@@ -53089,6 +53113,9 @@ OUI:1010B6*
 OUI:101212*
  ID_OUI_FROM_DATABASE=Vivo International Corporation Pty Ltd
 
+OUI:101218*
+ ID_OUI_FROM_DATABASE=Korins Inc.
+
 OUI:101248*
  ID_OUI_FROM_DATABASE=ITG, Inc.
 
@@ -53128,6 +53155,9 @@ OUI:102D96*
 OUI:102EAF*
  ID_OUI_FROM_DATABASE=Texas Instruments
 
+OUI:102F6B*
+ ID_OUI_FROM_DATABASE=Microsoft Corporation
+
 OUI:103047*
  ID_OUI_FROM_DATABASE=Samsung Electronics Co.,Ltd
 
@@ -53164,6 +53194,9 @@ OUI:104780*
 OUI:1048B1*
  ID_OUI_FROM_DATABASE=Beijing Duokan Technology Limited
 
+OUI:104B46*
+ ID_OUI_FROM_DATABASE=Mitsubishi Electric Corporation
+
 OUI:104D77*
  ID_OUI_FROM_DATABASE=Innovative Computer Engineering
 
@@ -53242,6 +53275,9 @@ OUI:10880F*
 OUI:1088CE*
  ID_OUI_FROM_DATABASE=Fiberhome Telecommunication Tech.Co.,Ltd.
 
+OUI:108A1B*
+ ID_OUI_FROM_DATABASE=RAONIX Inc.
+
 OUI:108CCF*
  ID_OUI_FROM_DATABASE=CISCO SYSTEMS, INC.
 
@@ -53458,6 +53494,9 @@ OUI:144319*
 OUI:1446E4*
  ID_OUI_FROM_DATABASE=AVISTEL
 
+OUI:14488B*
+ ID_OUI_FROM_DATABASE=Shenzhen Doov Technology Co.,Ltd
+
 OUI:144978*
  ID_OUI_FROM_DATABASE=Digital Control Incorporated
 
@@ -53473,6 +53512,9 @@ OUI:145412*
 OUI:145645*
  ID_OUI_FROM_DATABASE=Savitech Corp.
 
+OUI:1458D0*
+ ID_OUI_FROM_DATABASE=Hewlett Packard
+
 OUI:145A05*
  ID_OUI_FROM_DATABASE=Apple
 
@@ -53608,6 +53650,9 @@ OUI:14EB33*
 OUI:14EDA5*
  ID_OUI_FROM_DATABASE=Wächter GmbH Sicherheitssysteme
 
+OUI:14EDE4*
+ ID_OUI_FROM_DATABASE=Kaiam Corporation
+
 OUI:14EE9D*
  ID_OUI_FROM_DATABASE=AirNav Systems LLC
 
@@ -53794,6 +53839,9 @@ OUI:1867B0*
 OUI:186D99*
  ID_OUI_FROM_DATABASE=Adanis Inc.
 
+OUI:187117*
+ ID_OUI_FROM_DATABASE=eta plus electronic gmbh
+
 OUI:1879A2*
  ID_OUI_FROM_DATABASE=GMJ ELECTRIC LIMITED
 
@@ -53812,6 +53860,9 @@ OUI:1880CE*
 OUI:1880F5*
  ID_OUI_FROM_DATABASE=Alcatel-Lucent Shanghai Bell Co., Ltd
 
+OUI:188219*
+ ID_OUI_FROM_DATABASE=Alibaba Cloud Computing Ltd.
+
 OUI:188331*
  ID_OUI_FROM_DATABASE=Samsung Electronics Co.,Ltd
 
@@ -53857,6 +53908,9 @@ OUI:189EFC*
 OUI:18A905*
  ID_OUI_FROM_DATABASE=Hewlett-Packard Company
 
+OUI:18A958*
+ ID_OUI_FROM_DATABASE=PROVISION THAI CO., LTD.
+
 OUI:18A99B*
  ID_OUI_FROM_DATABASE=Dell Inc
 
@@ -54049,6 +54103,9 @@ OUI:1C43EC*
 OUI:1C4593*
  ID_OUI_FROM_DATABASE=Texas Instruments
 
+OUI:1C4840*
+ ID_OUI_FROM_DATABASE=IMS Messsysteme GmbH
+
 OUI:1C48F9*
  ID_OUI_FROM_DATABASE=GN Netcom A/S
 
@@ -54064,6 +54121,9 @@ OUI:1C4BD6*
 OUI:1C51B5*
  ID_OUI_FROM_DATABASE=Techaya LTD
 
+OUI:1C5216*
+ ID_OUI_FROM_DATABASE=DONGGUAN HELE ELECTRONICS CO., LTD
+
 OUI:1C52D6*
  ID_OUI_FROM_DATABASE=FLAT DISPLAY TECHNOLOGY CORPORATION
 
@@ -54100,6 +54160,9 @@ OUI:1C66AA*
 OUI:1C69A5*
  ID_OUI_FROM_DATABASE=Research In Motion
 
+OUI:1C6A7A*
+ ID_OUI_FROM_DATABASE=Cisco
+
 OUI:1C6BCA*
  ID_OUI_FROM_DATABASE=Mitsunami Co., Ltd.
 
@@ -54163,6 +54226,12 @@ OUI:1C973D*
 OUI:1C994C*
  ID_OUI_FROM_DATABASE=Murata Manufactuaring Co.,Ltd.
 
+OUI:1C9C26*
+ ID_OUI_FROM_DATABASE=Zoovel Technologies
+
+OUI:1CA2B1*
+ ID_OUI_FROM_DATABASE=ruwido austria gmbh
+
 OUI:1CA770*
  ID_OUI_FROM_DATABASE=SHENZHEN CHUANGWEI-RGB ELECTRONICS CO.,LT
 
@@ -54217,6 +54286,9 @@ OUI:1CC63C*
 OUI:1CD40C*
  ID_OUI_FROM_DATABASE=Kriwan Industrie-Elektronik GmbH
 
+OUI:1CDEA7*
+ ID_OUI_FROM_DATABASE=Cisco
+
 OUI:1CDF0F*
  ID_OUI_FROM_DATABASE=CISCO SYSTEMS, INC.
 
@@ -54286,6 +54358,9 @@ OUI:20107A*
 OUI:201257*
  ID_OUI_FROM_DATABASE=Most Lucky Trading Ltd
 
+OUI:2012D5*
+ ID_OUI_FROM_DATABASE=Scientech Materials Corporation
+
 OUI:2013E0*
  ID_OUI_FROM_DATABASE=Samsung Electronics Co.,Ltd
 
@@ -54370,6 +54445,9 @@ OUI:205A00*
 OUI:205B5E*
  ID_OUI_FROM_DATABASE=Shenzhen Wonhe Technology Co., Ltd
 
+OUI:205CFA*
+ ID_OUI_FROM_DATABASE=Yangzhou ChangLian Network Technology Co,ltd.
+
 OUI:206432*
  ID_OUI_FROM_DATABASE=SAMSUNG ELECTRO MECHANICS CO.,LTD.
 
@@ -54439,6 +54517,9 @@ OUI:20A2E7*
 OUI:20A787*
  ID_OUI_FROM_DATABASE=Bointec Taiwan Corporation Limited
 
+OUI:20A99B*
+ ID_OUI_FROM_DATABASE=Microsoft Corporation
+
 OUI:20AA25*
  ID_OUI_FROM_DATABASE=IP-NET LLC
 
@@ -54469,6 +54550,9 @@ OUI:20BFDB*
 OUI:20C1AF*
  ID_OUI_FROM_DATABASE=i Wit Digital Co., Limited
 
+OUI:20C38F*
+ ID_OUI_FROM_DATABASE=Texas Instruments Inc
+
 OUI:20C60D*
  ID_OUI_FROM_DATABASE=Shanghai annijie Information technology Co.,LTD
 
@@ -54616,6 +54700,9 @@ OUI:2437EF*
 OUI:243C20*
  ID_OUI_FROM_DATABASE=Dynamode Group
 
+OUI:2442BC*
+ ID_OUI_FROM_DATABASE=Alinco,incorporated
+
 OUI:244597*
  ID_OUI_FROM_DATABASE=GEMUE Gebr. Mueller Apparatebau
 
@@ -55027,6 +55114,9 @@ OUI:28A241*
 OUI:28A574*
  ID_OUI_FROM_DATABASE=Miller Electric Mfg. Co.
 
+OUI:28A5EE*
+ ID_OUI_FROM_DATABASE=Shenzhen SDGI CATV Co., Ltd
+
 OUI:28AF0A*
  ID_OUI_FROM_DATABASE=Sirius XM Radio Inc
 
@@ -55177,6 +55267,9 @@ OUI:2C0033*
 OUI:2C00F7*
  ID_OUI_FROM_DATABASE=XOS
 
+OUI:2C010B*
+ ID_OUI_FROM_DATABASE=NASCENT Technology, LLC - RemKon
+
 OUI:2C0623*
  ID_OUI_FROM_DATABASE=Win Leader Inc.
 
@@ -55192,6 +55285,9 @@ OUI:2C18AE*
 OUI:2C1984*
  ID_OUI_FROM_DATABASE=IDN Telecom, Inc.
 
+OUI:2C1A31*
+ ID_OUI_FROM_DATABASE=Electronics Company Limited
+
 OUI:2C1EEA*
  ID_OUI_FROM_DATABASE=AERODEV
 
@@ -55369,6 +55465,9 @@ OUI:2C9EFC*
 OUI:2CA157*
  ID_OUI_FROM_DATABASE=acromate, Inc.
 
+OUI:2CA30E*
+ ID_OUI_FROM_DATABASE=POWER DRAGON DEVELOPMENT LIMITED
+
 OUI:2CA780*
  ID_OUI_FROM_DATABASE=True Technologies Inc.
 
@@ -55540,6 +55639,9 @@ OUI:303EAD*
 OUI:304174*
  ID_OUI_FROM_DATABASE=ALTEC LANSING LLC
 
+OUI:304225*
+ ID_OUI_FROM_DATABASE=BURG-WÄCHTER KG
+
 OUI:304449*
  ID_OUI_FROM_DATABASE=PLATH GmbH
 
@@ -55603,6 +55705,9 @@ OUI:306E5C*
 OUI:3071B2*
  ID_OUI_FROM_DATABASE=Hangzhou Prevail Optoelectronic Equipment Co.,LTD.
 
+OUI:307512*
+ ID_OUI_FROM_DATABASE=Sony Mobile Communications AB
+
 OUI:30766F*
  ID_OUI_FROM_DATABASE=LG Electronics
 
@@ -55735,6 +55840,9 @@ OUI:3400A3*
 OUI:340286*
  ID_OUI_FROM_DATABASE=Intel Corporate
 
+OUI:34029B*
+ ID_OUI_FROM_DATABASE=CloudBerry Technologies Private Limited
+
 OUI:3407FB*
  ID_OUI_FROM_DATABASE=Ericsson AB
 
@@ -55774,6 +55882,9 @@ OUI:3423BA*
 OUI:34255D*
  ID_OUI_FROM_DATABASE=Shenzhen Loadcom Technology Co.,Ltd
 
+OUI:3428F0*
+ ID_OUI_FROM_DATABASE=ATN International Limited
+
 OUI:3429EA*
  ID_OUI_FROM_DATABASE=MCD ELECTRONICS SP. Z O.O.
 
@@ -55798,6 +55909,9 @@ OUI:344B3D*
 OUI:344B50*
  ID_OUI_FROM_DATABASE=ZTE Corporation
 
+OUI:344DF7*
+ ID_OUI_FROM_DATABASE=LG Electronics
+
 OUI:344F3F*
  ID_OUI_FROM_DATABASE=IO-Power Technology Co., Ltd.
 
@@ -55825,6 +55939,9 @@ OUI:345D10*
 OUI:346178*
  ID_OUI_FROM_DATABASE=The Boeing Company
 
+OUI:346288*
+ ID_OUI_FROM_DATABASE=Cisco
+
 OUI:34684A*
  ID_OUI_FROM_DATABASE=Teraworks Co., Ltd.
 
@@ -55939,6 +56056,9 @@ OUI:34B1F7*
 OUI:34B571*
  ID_OUI_FROM_DATABASE=PLDS
 
+OUI:34B7FD*
+ ID_OUI_FROM_DATABASE=Guangzhou Younghead Electronic Technology Co.,Ltd
+
 OUI:34BA51*
  ID_OUI_FROM_DATABASE=Se-Kure Controls, Inc.
 
@@ -56047,6 +56167,9 @@ OUI:34F39B*
 OUI:34F62D*
  ID_OUI_FROM_DATABASE=SHARP Corporation
 
+OUI:34F6D2*
+ ID_OUI_FROM_DATABASE=Panasonic Taiwan Co.,Ltd.
+
 OUI:34F968*
  ID_OUI_FROM_DATABASE=ATEK Products, LLC
 
@@ -56062,6 +56185,9 @@ OUI:380197*
 OUI:3806B4*
  ID_OUI_FROM_DATABASE=A.D.C. GmbH
 
+OUI:3808FD*
+ ID_OUI_FROM_DATABASE=Silca Spa
+
 OUI:380A0A*
  ID_OUI_FROM_DATABASE=Sky-City Communication and Electronics Limited Company
 
@@ -56137,6 +56263,9 @@ OUI:384608*
 OUI:38484C*
  ID_OUI_FROM_DATABASE=Apple
 
+OUI:384B76*
+ ID_OUI_FROM_DATABASE=AIRTAME ApS
+
 OUI:384FF0*
  ID_OUI_FROM_DATABASE=Azurewave Technologies, Inc.
 
@@ -56227,6 +56356,9 @@ OUI:38AA3C*
 OUI:38B12D*
  ID_OUI_FROM_DATABASE=Sonotronic Nagel GmbH
 
+OUI:38B1DB*
+ ID_OUI_FROM_DATABASE=Hon Hai Precision Ind. Co.,Ltd.
+
 OUI:38B5BD*
  ID_OUI_FROM_DATABASE=E.G.O. Elektro-Ger
 
@@ -56302,6 +56434,9 @@ OUI:38EE9D*
 OUI:38F098*
  ID_OUI_FROM_DATABASE=Vapor Stone Rail Systems
 
+OUI:38F33F*
+ ID_OUI_FROM_DATABASE=TATSUNO CORPORATION
+
 OUI:38F597*
  ID_OUI_FROM_DATABASE=home2net GmbH
 
@@ -56443,6 +56578,9 @@ OUI:3C57D5*
 OUI:3C5A37*
  ID_OUI_FROM_DATABASE=Samsung Electronics
 
+OUI:3C5AB4*
+ ID_OUI_FROM_DATABASE=Google
+
 OUI:3C5F01*
  ID_OUI_FROM_DATABASE=Synerchip Co., Ltd.
 
@@ -56803,6 +56941,9 @@ OUI:407074*
 OUI:407496*
  ID_OUI_FROM_DATABASE=aFUN TECHNOLOGY INC.
 
+OUI:40786A*
+ ID_OUI_FROM_DATABASE=Motorola Mobility LLC
+
 OUI:407875*
  ID_OUI_FROM_DATABASE=IMBEL - Industria de Material Belico do Brasil
 
@@ -56929,6 +57070,9 @@ OUI:40D40E*
 OUI:40D559*
  ID_OUI_FROM_DATABASE=MICRO S.E.R.I.
 
+OUI:40E230*
+ ID_OUI_FROM_DATABASE=AzureWave Technologies, Inc.
+
 OUI:40E730*
  ID_OUI_FROM_DATABASE=DEY Storage Systems, Inc.
 
@@ -57145,6 +57289,9 @@ OUI:4486C1*
 OUI:4487FC*
  ID_OUI_FROM_DATABASE=ELITEGROUP COMPUTER SYSTEM CO., LTD.
 
+OUI:4488CB*
+ ID_OUI_FROM_DATABASE=Camco Technologies NV
+
 OUI:448A5B*
  ID_OUI_FROM_DATABASE=Micro-Star INT'L CO., LTD.
 
@@ -57337,6 +57484,9 @@ OUI:4851B7*
 OUI:485261*
  ID_OUI_FROM_DATABASE=SOREEL
 
+OUI:4857DD*
+ ID_OUI_FROM_DATABASE=Facebook
+
 OUI:485929*
  ID_OUI_FROM_DATABASE=LG Electronics
 
@@ -57361,6 +57511,9 @@ OUI:4861A3*
 OUI:486276*
  ID_OUI_FROM_DATABASE=HUAWEI TECHNOLOGIES CO.,LTD
 
+OUI:486B2C*
+ ID_OUI_FROM_DATABASE=BBK Electronics Corp., Ltd.,
+
 OUI:486B91*
  ID_OUI_FROM_DATABASE=Fleetwood Group Inc.
 
@@ -57391,6 +57544,9 @@ OUI:4891F6*
 OUI:489BE2*
  ID_OUI_FROM_DATABASE=SCI Innovations Ltd
 
+OUI:489D18*
+ ID_OUI_FROM_DATABASE=Flashbay Limited
+
 OUI:489D24*
  ID_OUI_FROM_DATABASE=Research In Motion
 
@@ -57655,6 +57811,9 @@ OUI:4C7367*
 OUI:4C73A5*
  ID_OUI_FROM_DATABASE=KOVE
 
+OUI:4C7403*
+ ID_OUI_FROM_DATABASE=Mundo Reader (bq)
+
 OUI:4C774F*
  ID_OUI_FROM_DATABASE=Embedded Wireless Labs
 
@@ -57745,6 +57904,9 @@ OUI:4CBAA3*
 OUI:4CBB58*
  ID_OUI_FROM_DATABASE=Chicony Electronics Co., Ltd.
 
+OUI:4CBC42*
+ ID_OUI_FROM_DATABASE=Shenzhen Hangsheng Electronics Co.,Ltd.
+
 OUI:4CBCA5*
  ID_OUI_FROM_DATABASE=Samsung Electronics Co.,Ltd
 
@@ -57784,6 +57946,9 @@ OUI:4CE1BB*
 OUI:4CE676*
  ID_OUI_FROM_DATABASE=Buffalo Inc.
 
+OUI:4CE933*
+ ID_OUI_FROM_DATABASE=RailComm, LLC
+
 OUI:4CEB42*
  ID_OUI_FROM_DATABASE=Intel Corporate
 
@@ -57799,6 +57964,9 @@ OUI:4CF2BF*
 OUI:4CF45B*
  ID_OUI_FROM_DATABASE=Blue Clover Devices
 
+OUI:4CF5A0*
+ ID_OUI_FROM_DATABASE=Scalable Network Technologies Inc
+
 OUI:4CF737*
  ID_OUI_FROM_DATABASE=SamJi Electronics Co., Ltd
 
@@ -57823,6 +57991,9 @@ OUI:500E6D*
 OUI:5011EB*
  ID_OUI_FROM_DATABASE=SilverNet Ltd
 
+OUI:5014B5*
+ ID_OUI_FROM_DATABASE=Richfit Information Technology Co., Ltd
+
 OUI:5017FF*
  ID_OUI_FROM_DATABASE=Cisco
 
@@ -57847,6 +58018,9 @@ OUI:502690*
 OUI:5027C7*
  ID_OUI_FROM_DATABASE=TECHNART Co.,Ltd
 
+OUI:50294D*
+ ID_OUI_FROM_DATABASE=NANJING IOT SENSOR TECHNOLOGY CO,LTD
+
 OUI:502A7E*
  ID_OUI_FROM_DATABASE=Smart electronic GmbH
 
@@ -57937,6 +58111,9 @@ OUI:506441*
 OUI:506787*
  ID_OUI_FROM_DATABASE=iTellus
 
+OUI:5067AE*
+ ID_OUI_FROM_DATABASE=Cisco
+
 OUI:5067F0*
  ID_OUI_FROM_DATABASE=ZyXEL Communications Corporation
 
@@ -58276,6 +58453,9 @@ OUI:549B12*
 OUI:549D85*
  ID_OUI_FROM_DATABASE=EnerAccess inc
 
+OUI:549F35*
+ ID_OUI_FROM_DATABASE=Dell Inc.
+
 OUI:54A04F*
  ID_OUI_FROM_DATABASE=t-mac Technologies Ltd
 
@@ -58366,6 +58546,9 @@ OUI:54F5B6*
 OUI:54F666*
  ID_OUI_FROM_DATABASE=Berthold Technologies GmbH and Co.KG
 
+OUI:54F876*
+ ID_OUI_FROM_DATABASE=ABB AG
+
 OUI:54FA3E*
  ID_OUI_FROM_DATABASE=Samsung Electronics Co.,LTD
 
@@ -58375,6 +58558,9 @@ OUI:54FB58*
 OUI:54FDBF*
  ID_OUI_FROM_DATABASE=Scheidt & Bachmann GmbH
 
+OUI:54FFCF*
+ ID_OUI_FROM_DATABASE=Mopria Alliance
+
 OUI:580528*
  ID_OUI_FROM_DATABASE=LABRIS NETWORKS
 
@@ -58390,6 +58576,9 @@ OUI:5809E5*
 OUI:580A20*
  ID_OUI_FROM_DATABASE=Cisco
 
+OUI:58108C*
+ ID_OUI_FROM_DATABASE=Intelbras
+
 OUI:581243*
  ID_OUI_FROM_DATABASE=AcSiP Technology Corp.
 
@@ -58504,9 +58693,15 @@ OUI:587521*
 OUI:587675*
  ID_OUI_FROM_DATABASE=Beijing ECHO Technologies Co.,Ltd
 
+OUI:5876C5*
+ ID_OUI_FROM_DATABASE=DIGI I'S LTD
+
 OUI:587A4D*
  ID_OUI_FROM_DATABASE=Stonesoft Corporation
 
+OUI:587BE9*
+ ID_OUI_FROM_DATABASE=AirPro Technology India Pvt. Ltd
+
 OUI:587E61*
  ID_OUI_FROM_DATABASE=Hisense Electric Co., Ltd
 
@@ -58633,6 +58828,9 @@ OUI:58EECE*
 OUI:58F387*
  ID_OUI_FROM_DATABASE=HCCP
 
+OUI:58F39C*
+ ID_OUI_FROM_DATABASE=Cisco
+
 OUI:58F67B*
  ID_OUI_FROM_DATABASE=Xia Men UnionCore Technology LTD.
 
@@ -58810,6 +59008,12 @@ OUI:5C89D4*
 OUI:5C8D4E*
  ID_OUI_FROM_DATABASE=Apple
 
+OUI:5C8FE0*
+ ID_OUI_FROM_DATABASE=ARRIS Group, Inc.
+
+OUI:5C93A2*
+ ID_OUI_FROM_DATABASE=Liteon Technology Corporation
+
 OUI:5C95AE*
  ID_OUI_FROM_DATABASE=Apple
 
@@ -59011,6 +59215,9 @@ OUI:60334B*
 OUI:603553*
  ID_OUI_FROM_DATABASE=Buwon Technology
 
+OUI:603696*
+ ID_OUI_FROM_DATABASE=The Sapling Company
+
 OUI:6036DD*
  ID_OUI_FROM_DATABASE=Intel Corporate
 
@@ -59038,9 +59245,18 @@ OUI:604616*
 OUI:6047D4*
  ID_OUI_FROM_DATABASE=FORICS Electronic Technology Co., Ltd.
 
+OUI:604826*
+ ID_OUI_FROM_DATABASE=Newbridge Technologies Int. Ltd.
+
 OUI:604A1C*
  ID_OUI_FROM_DATABASE=SUYIN Corporation
 
+OUI:6050C1*
+ ID_OUI_FROM_DATABASE=Kinetek Sports
+
+OUI:60512C*
+ ID_OUI_FROM_DATABASE=TCT mobile limited
+
 OUI:6052D0*
  ID_OUI_FROM_DATABASE=FACTS Engineering
 
@@ -59125,6 +59341,9 @@ OUI:609084*
 OUI:609217*
  ID_OUI_FROM_DATABASE=Apple
 
+OUI:6099D1*
+ ID_OUI_FROM_DATABASE=Vuzix / Lenovo
+
 OUI:609AA4*
  ID_OUI_FROM_DATABASE=GVI SECURITY INC.
 
@@ -59284,6 +59503,9 @@ OUI:60FEF9*
 OUI:60FFDD*
  ID_OUI_FROM_DATABASE=C.E. ELECTRONICS, INC
 
+OUI:64002D*
+ ID_OUI_FROM_DATABASE=Powerlinq Co., LTD
+
 OUI:6400F1*
  ID_OUI_FROM_DATABASE=CISCO SYSTEMS, INC.
 
@@ -59557,6 +59779,9 @@ OUI:64B310*
 OUI:64B370*
  ID_OUI_FROM_DATABASE=PowerComm Solutons LLC
 
+OUI:64B473*
+ ID_OUI_FROM_DATABASE=Xiaomi inc.
+
 OUI:64B64A*
  ID_OUI_FROM_DATABASE=ViVOtech, Inc.
 
@@ -59917,6 +60142,9 @@ OUI:68D247*
 OUI:68D925*
  ID_OUI_FROM_DATABASE=ProSys Development Services
 
+OUI:68D93C*
+ ID_OUI_FROM_DATABASE=Apple
+
 OUI:68DB67*
  ID_OUI_FROM_DATABASE=Nantong Coship Electronics Co., Ltd
 
@@ -59950,6 +60178,9 @@ OUI:68EE96*
 OUI:68EFBD*
  ID_OUI_FROM_DATABASE=CISCO SYSTEMS, INC.
 
+OUI:68F06D*
+ ID_OUI_FROM_DATABASE=ALONG INDUSTRIAL CO., LIMITED
+
 OUI:68F125*
  ID_OUI_FROM_DATABASE=Data Controls Inc.
 
@@ -60079,6 +60310,9 @@ OUI:6C626D*
 OUI:6C641A*
  ID_OUI_FROM_DATABASE=Penguin Computing
 
+OUI:6C6EFE*
+ ID_OUI_FROM_DATABASE=Core Logic Inc.
+
 OUI:6C6F18*
  ID_OUI_FROM_DATABASE=Stereotaxis, Inc.
 
@@ -60091,6 +60325,9 @@ OUI:6C709F*
 OUI:6C71D9*
  ID_OUI_FROM_DATABASE=AzureWave Technologies, Inc
 
+OUI:6C7660*
+ ID_OUI_FROM_DATABASE=KYOCERA Corporation
+
 OUI:6C81FE*
  ID_OUI_FROM_DATABASE=Mitsuba Corporation
 
@@ -60122,7 +60359,7 @@ OUI:6C92BF*
  ID_OUI_FROM_DATABASE=Inspur Electronic Information Industry Co.,Ltd.
 
 OUI:6C98EB*
- ID_OUI_FROM_DATABASE=Xyne GmbH
+ ID_OUI_FROM_DATABASE=Ocedo GmbH
 
 OUI:6C9989*
  ID_OUI_FROM_DATABASE=Cisco
@@ -60187,6 +60424,9 @@ OUI:6CB7F4*
 OUI:6CBEE9*
  ID_OUI_FROM_DATABASE=Alcatel-Lucent-IPD
 
+OUI:6CBFB5*
+ ID_OUI_FROM_DATABASE=Noon Technology Co., Ltd
+
 OUI:6CC1D2*
  ID_OUI_FROM_DATABASE=ARRIS Group, Inc.
 
@@ -60514,6 +60754,9 @@ OUI:70A8E3*
 OUI:70AAB2*
  ID_OUI_FROM_DATABASE=Research In Motion
 
+OUI:70AF25*
+ ID_OUI_FROM_DATABASE=Nishiyama Industry Co.,LTD.
+
 OUI:70B035*
  ID_OUI_FROM_DATABASE=Shenzhen Zowee Technology Co., Ltd
 
@@ -60535,6 +60778,9 @@ OUI:70B599*
 OUI:70B921*
  ID_OUI_FROM_DATABASE=FiberHome Telecommunication Technologies CO.,LTD
 
+OUI:70BAEF*
+ ID_OUI_FROM_DATABASE=Hangzhou H3C Technologies Co., Limited
+
 OUI:70C6AC*
  ID_OUI_FROM_DATABASE=Bosch Automotive Aftermarket
 
@@ -60586,6 +60832,9 @@ OUI:70EE50*
 OUI:70F176*
  ID_OUI_FROM_DATABASE=Data Modul AG
 
+OUI:70F196*
+ ID_OUI_FROM_DATABASE=Actiontec Electronics, Inc
+
 OUI:70F1A1*
  ID_OUI_FROM_DATABASE=Liteon Technology Corporation
 
@@ -60796,6 +61045,9 @@ OUI:74B00C*
 OUI:74B9EB*
  ID_OUI_FROM_DATABASE=Fujian JinQianMao Electronic Technology Co.,Ltd
 
+OUI:74BADB*
+ ID_OUI_FROM_DATABASE=Longconn Electornics(shenzhen)Co.,Ltd
+
 OUI:74BE08*
  ID_OUI_FROM_DATABASE=ATEK Products, LLC
 
@@ -60844,6 +61096,9 @@ OUI:74DE2B*
 OUI:74E06E*
  ID_OUI_FROM_DATABASE=Ergophone GmbH
 
+OUI:74E14A*
+ ID_OUI_FROM_DATABASE=IEEE REGISTRATION AUTHORITY  - Please see MAM public listing for more information.
+
 OUI:74E1B6*
  ID_OUI_FROM_DATABASE=Apple
 
@@ -61318,6 +61573,9 @@ OUI:7C092B*
 OUI:7C0A50*
  ID_OUI_FROM_DATABASE=J-MEX Inc.
 
+OUI:7C0ECE*
+ ID_OUI_FROM_DATABASE=Cisco
+
 OUI:7C11BE*
  ID_OUI_FROM_DATABASE=Apple
 
@@ -61345,6 +61603,9 @@ OUI:7C2048*
 OUI:7C2064*
  ID_OUI_FROM_DATABASE=Alcatel Lucent IPD
 
+OUI:7C2587*
+ ID_OUI_FROM_DATABASE=chaowifi.com
+
 OUI:7C2CF3*
  ID_OUI_FROM_DATABASE=Secure Electrans Ltd
 
@@ -61504,6 +61765,9 @@ OUI:7CAD74*
 OUI:7CB03E*
  ID_OUI_FROM_DATABASE=OSRAM GmbH
 
+OUI:7CB177*
+ ID_OUI_FROM_DATABASE=Satelco AG
+
 OUI:7CB21B*
  ID_OUI_FROM_DATABASE=Cisco SPVTG
 
@@ -61774,6 +62038,9 @@ OUI:8065E9*
 OUI:806629*
  ID_OUI_FROM_DATABASE=Prescope Technologies CO.,LTD.
 
+OUI:806C1B*
+ ID_OUI_FROM_DATABASE=Motorola Mobility LLC
+
 OUI:806C8B*
  ID_OUI_FROM_DATABASE=KAESER KOMPRESSOREN AG
 
@@ -61918,9 +62185,15 @@ OUI:80D733*
 OUI:80DB31*
  ID_OUI_FROM_DATABASE=Power Quotient International Co., Ltd.
 
+OUI:80E650*
+ ID_OUI_FROM_DATABASE=Apple
+
 OUI:80EA96*
  ID_OUI_FROM_DATABASE=Apple
 
+OUI:80EACA*
+ ID_OUI_FROM_DATABASE=Dialog Semiconductor Hellas SA
+
 OUI:80EE73*
  ID_OUI_FROM_DATABASE=Shuttle Inc.
 
@@ -61933,6 +62206,9 @@ OUI:80F593*
 OUI:80F62E*
  ID_OUI_FROM_DATABASE=Hangzhou H3C Technologies Co., Limited
 
+OUI:80F8EB*
+ ID_OUI_FROM_DATABASE=RayTight
+
 OUI:80FA5B*
  ID_OUI_FROM_DATABASE=CLEVO CO.
 
@@ -62116,6 +62392,9 @@ OUI:848506*
 OUI:84850A*
  ID_OUI_FROM_DATABASE=Hella Sonnen- und Wetterschutztechnik GmbH
 
+OUI:8486F3*
+ ID_OUI_FROM_DATABASE=Greenvity Communications
+
 OUI:848D84*
  ID_OUI_FROM_DATABASE=Rajant Corporation
 
@@ -62134,9 +62413,15 @@ OUI:848F69*
 OUI:849000*
  ID_OUI_FROM_DATABASE=Arnold & Richter Cine Technik
 
+OUI:84930C*
+ ID_OUI_FROM_DATABASE=InCoax Networks Europe AB
+
 OUI:84948C*
  ID_OUI_FROM_DATABASE=Hitron Technologies. Inc
 
+OUI:849681*
+ ID_OUI_FROM_DATABASE=Cathay Communication Co.,Ltd
+
 OUI:8496D8*
  ID_OUI_FROM_DATABASE=Pace plc
 
@@ -62206,6 +62491,9 @@ OUI:84DE3D*
 OUI:84DF0C*
  ID_OUI_FROM_DATABASE=NET2GRID BV
 
+OUI:84E058*
+ ID_OUI_FROM_DATABASE=Pace plc
+
 OUI:84E4D9*
  ID_OUI_FROM_DATABASE=Shenzhen NEED technology Ltd.
 
@@ -62545,6 +62833,9 @@ OUI:8C0EE3*
 OUI:8C11CB*
  ID_OUI_FROM_DATABASE=ABUS Security-Center GmbH & Co. KG
 
+OUI:8C18D9*
+ ID_OUI_FROM_DATABASE=Shenzhen RF Technology Co., Ltd
+
 OUI:8C1F94*
  ID_OUI_FROM_DATABASE=RF Surgical System Inc.
 
@@ -62632,6 +62923,9 @@ OUI:8C5AF0*
 OUI:8C5CA1*
  ID_OUI_FROM_DATABASE=d-broad,INC
 
+OUI:8C5D60*
+ ID_OUI_FROM_DATABASE=UCI Corporation Co.,Ltd.
+
 OUI:8C5FDF*
  ID_OUI_FROM_DATABASE=Beijing Railway Signal Factory
 
@@ -62683,6 +62977,9 @@ OUI:8C7CFF*
 OUI:8C7EB3*
  ID_OUI_FROM_DATABASE=Lytro, Inc.
 
+OUI:8C7F3B*
+ ID_OUI_FROM_DATABASE=ARRIS Group, Inc.
+
 OUI:8C82A8*
  ID_OUI_FROM_DATABASE=Insigma Technology Co.,Ltd
 
@@ -62716,6 +63013,9 @@ OUI:8CAE4C*
 OUI:8CAE89*
  ID_OUI_FROM_DATABASE=Y-cam Solutions Ltd
 
+OUI:8CB094*
+ ID_OUI_FROM_DATABASE=Airtech I&C Co., Ltd
+
 OUI:8CB64F*
  ID_OUI_FROM_DATABASE=CISCO SYSTEMS, INC.
 
@@ -62770,6 +63070,9 @@ OUI:8CD628*
 OUI:8CDB25*
  ID_OUI_FROM_DATABASE=ESG Solutions
 
+OUI:8CDCD4*
+ ID_OUI_FROM_DATABASE=Hewlett Packard
+
 OUI:8CDD8D*
  ID_OUI_FROM_DATABASE=Wifly-City System Inc.
 
@@ -62788,6 +63091,9 @@ OUI:8CE7B3*
 OUI:8CEEC6*
  ID_OUI_FROM_DATABASE=Precepscion Pty. Ltd.
 
+OUI:8CF813*
+ ID_OUI_FROM_DATABASE=ORANGE POLSKA
+
 OUI:8CF945*
  ID_OUI_FROM_DATABASE=Power Automation pte Ltd
 
@@ -62851,6 +63157,9 @@ OUI:901D27*
 OUI:901EDD*
  ID_OUI_FROM_DATABASE=GREAT COMPUTER CORPORATION
 
+OUI:90203A*
+ ID_OUI_FROM_DATABASE=BYD Precision Manufacture Co.,Ltd
+
 OUI:902083*
  ID_OUI_FROM_DATABASE=General Engine Management Systems Ltd.
 
@@ -63127,6 +63436,9 @@ OUI:90E6BA*
 OUI:90EA60*
  ID_OUI_FROM_DATABASE=SPI Lasers Ltd
 
+OUI:90EF68*
+ ID_OUI_FROM_DATABASE=ZyXEL Communications Corporation
+
 OUI:90F1AA*
  ID_OUI_FROM_DATABASE=Samsung Electronics Co.,LTD
 
@@ -63154,6 +63466,9 @@ OUI:90FB5B*
 OUI:90FBA6*
  ID_OUI_FROM_DATABASE=Hon Hai Precision Ind.Co.Ltd
 
+OUI:90FD61*
+ ID_OUI_FROM_DATABASE=Apple
+
 OUI:90FF79*
  ID_OUI_FROM_DATABASE=Metro Ethernet Forum
 
@@ -63247,6 +63562,9 @@ OUI:945103*
 OUI:9451BF*
  ID_OUI_FROM_DATABASE=Hyundai ESG
 
+OUI:945493*
+ ID_OUI_FROM_DATABASE=Rigado, LLC
+
 OUI:94592D*
  ID_OUI_FROM_DATABASE=EKE Building Technology Systems Ltd
 
@@ -63256,6 +63574,9 @@ OUI:945B7E*
 OUI:946124*
  ID_OUI_FROM_DATABASE=Pason Systems
 
+OUI:946269*
+ ID_OUI_FROM_DATABASE=Arris Group, Inc.
+
 OUI:9463D1*
  ID_OUI_FROM_DATABASE=Samsung Electronics Co.,Ltd
 
@@ -63622,6 +63943,9 @@ OUI:988EDD*
 OUI:989080*
  ID_OUI_FROM_DATABASE=Linkpower Network System Inc Ltd.
 
+OUI:989096*
+ ID_OUI_FROM_DATABASE=Dell Inc
+
 OUI:9893CC*
  ID_OUI_FROM_DATABASE=LG Electronics Inc.
 
@@ -63781,6 +64105,9 @@ OUI:9C3178*
 OUI:9C31B6*
  ID_OUI_FROM_DATABASE=Kulite Semiconductor Products Inc
 
+OUI:9C3583*
+ ID_OUI_FROM_DATABASE=Nipro Diagnostics, Inc
+
 OUI:9C3AAF*
  ID_OUI_FROM_DATABASE=Samsung Electronics Co.,Ltd
 
@@ -64234,6 +64561,9 @@ OUI:A08C9B*
 OUI:A090DE*
  ID_OUI_FROM_DATABASE=VEEDIMS,LLC
 
+OUI:A09347*
+ ID_OUI_FROM_DATABASE=GUANGDONG OPPO MOBILE TELECOMMUNICATIONS CORP.,LTD.
+
 OUI:A09805*
  ID_OUI_FROM_DATABASE=OpenVox Communication Co Ltd
 
@@ -64336,6 +64666,9 @@ OUI:A0E534*
 OUI:A0E5E9*
  ID_OUI_FROM_DATABASE=enimai Inc
 
+OUI:A0E6F8*
+ ID_OUI_FROM_DATABASE=Texas Instruments Inc
+
 OUI:A0E9DB*
  ID_OUI_FROM_DATABASE=Ningbo FreeWings Technologies Co.,Ltd
 
@@ -64498,6 +64831,9 @@ OUI:A46CC1*
 OUI:A46E79*
  ID_OUI_FROM_DATABASE=DFT System Co.Ltd
 
+OUI:A470D6*
+ ID_OUI_FROM_DATABASE=Motorola Mobility LLC
+
 OUI:A47733*
  ID_OUI_FROM_DATABASE=Google
 
@@ -64643,7 +64979,7 @@ OUI:A4D3B5*
  ID_OUI_FROM_DATABASE=GLITEL Stropkov, s.r.o.
 
 OUI:A4D856*
- ID_OUI_FROM_DATABASE=Qualcomm Labs Inc.
+ ID_OUI_FROM_DATABASE=Gimbal, Inc
 
 OUI:A4DA3F*
  ID_OUI_FROM_DATABASE=Bionics Corp.
@@ -64732,6 +65068,9 @@ OUI:A81758*
 OUI:A81B18*
  ID_OUI_FROM_DATABASE=XTS CORP
 
+OUI:A81B5D*
+ ID_OUI_FROM_DATABASE=Foxtel Management Pty Ltd
+
 OUI:A81FAF*
  ID_OUI_FROM_DATABASE=KRYPTON POLSKA
 
@@ -64984,6 +65323,9 @@ OUI:AC0A61*
 OUI:AC0DFE*
  ID_OUI_FROM_DATABASE=Ekon GmbH - myGEKKO
 
+OUI:AC11D3*
+ ID_OUI_FROM_DATABASE=Suzhou HOTEK  Video Technology Co. Ltd
+
 OUI:AC1461*
  ID_OUI_FROM_DATABASE=ATAW  Co., Ltd.
 
@@ -65023,6 +65365,9 @@ OUI:AC34CB*
 OUI:AC3613*
  ID_OUI_FROM_DATABASE=Samsung Electronics Co.,Ltd
 
+OUI:AC3870*
+ ID_OUI_FROM_DATABASE=Lenovo Mobile Communication Technology Ltd.
+
 OUI:AC3C0B*
  ID_OUI_FROM_DATABASE=Apple
 
@@ -65191,6 +65536,9 @@ OUI:ACAB8D*
 OUI:ACB313*
  ID_OUI_FROM_DATABASE=ARRIS Group, Inc.
 
+OUI:ACB74F*
+ ID_OUI_FROM_DATABASE=METEL s.r.o.
+
 OUI:ACB859*
  ID_OUI_FROM_DATABASE=Uniband Electronic Corp,
 
@@ -65356,6 +65704,9 @@ OUI:B03850*
 OUI:B0435D*
  ID_OUI_FROM_DATABASE=NuLEDs, Inc.
 
+OUI:B04515*
+ ID_OUI_FROM_DATABASE=mira fitness,LLC.
+
 OUI:B04545*
  ID_OUI_FROM_DATABASE=YACOUB Automation GmbH
 
@@ -65635,6 +65986,9 @@ OUI:B41489*
 OUI:B41513*
  ID_OUI_FROM_DATABASE=HUAWEI TECHNOLOGIES CO.,LTD
 
+OUI:B41780*
+ ID_OUI_FROM_DATABASE=DTI Group Ltd
+
 OUI:B418D1*
  ID_OUI_FROM_DATABASE=Apple
 
@@ -65746,6 +66100,12 @@ OUI:B4749F*
 OUI:B4750E*
  ID_OUI_FROM_DATABASE=Belkin International Inc.
 
+OUI:B479A7*
+ ID_OUI_FROM_DATABASE=Samsung Electro Mechanics co., LTD.
+
+OUI:B47C29*
+ ID_OUI_FROM_DATABASE=Shenzhen Guzidi Technology Co.,Ltd
+
 OUI:B47F5E*
  ID_OUI_FROM_DATABASE=Foresight Manufacture (S) Pte Ltd
 
@@ -65923,6 +66283,9 @@ OUI:B81619*
 OUI:B817C2*
  ID_OUI_FROM_DATABASE=Apple
 
+OUI:B8186F*
+ ID_OUI_FROM_DATABASE=ORIENTAL MOTOR CO., LTD.
+
 OUI:B81999*
  ID_OUI_FROM_DATABASE=Nesys
 
@@ -65989,6 +66352,9 @@ OUI:B843E4*
 OUI:B847C6*
  ID_OUI_FROM_DATABASE=SanJet Technology Corp.
 
+OUI:B84FD5*
+ ID_OUI_FROM_DATABASE=Microsoft Corporation
+
 OUI:B85510*
  ID_OUI_FROM_DATABASE=Zioncom Electronics (Shenzhen) Ltd.
 
@@ -66109,6 +66475,9 @@ OUI:B89AED*
 OUI:B89BC9*
  ID_OUI_FROM_DATABASE=SMC Networks Inc
 
+OUI:B89BE4*
+ ID_OUI_FROM_DATABASE=ABB Power Systems Power Generation
+
 OUI:B8A386*
  ID_OUI_FROM_DATABASE=D-Link International
 
@@ -66151,6 +66520,9 @@ OUI:B8BA72*
 OUI:B8BB6D*
  ID_OUI_FROM_DATABASE=ENERES Co.,Ltd.
 
+OUI:B8BD79*
+ ID_OUI_FROM_DATABASE=TrendPoint Systems
+
 OUI:B8BEBF*
  ID_OUI_FROM_DATABASE=CISCO SYSTEMS, INC.
 
@@ -66226,6 +66598,9 @@ OUI:B8EE65*
 OUI:B8EE79*
  ID_OUI_FROM_DATABASE=YWire Technologies, Inc.
 
+OUI:B8F317*
+ ID_OUI_FROM_DATABASE=iSun Smasher Communications Private Limited
+
 OUI:B8F4D0*
  ID_OUI_FROM_DATABASE=Herrmann Ultraschalltechnik GmbH & Co. Kg
 
@@ -66373,6 +66748,9 @@ OUI:BC5FF4*
 OUI:BC629F*
  ID_OUI_FROM_DATABASE=Telenet Systems P. Ltd.
 
+OUI:BC6641*
+ ID_OUI_FROM_DATABASE=IEEE REGISTRATION AUTHORITY  - Please see MAM public listing for more information.
+
 OUI:BC671C*
  ID_OUI_FROM_DATABASE=Cisco
 
@@ -66838,6 +67216,9 @@ OUI:C4017C*
 OUI:C401B1*
  ID_OUI_FROM_DATABASE=SeekTech INC
 
+OUI:C401CE*
+ ID_OUI_FROM_DATABASE=PRESITION (2000) CO., LTD.
+
 OUI:C40415*
  ID_OUI_FROM_DATABASE=NETGEAR INC.,
 
@@ -66970,6 +67351,12 @@ OUI:C455C2*
 OUI:C45600*
  ID_OUI_FROM_DATABASE=Galleon Embedded Computing
 
+OUI:C456FE*
+ ID_OUI_FROM_DATABASE=Lava International Ltd.
+
+OUI:C4576E*
+ ID_OUI_FROM_DATABASE=Samsung Electronics Co.,LTD
+
 OUI:C458C2*
  ID_OUI_FROM_DATABASE=Shenzhen TATFOOK Technology Co., Ltd.
 
@@ -67081,6 +67468,9 @@ OUI:C4B512*
 OUI:C4BA99*
  ID_OUI_FROM_DATABASE=I+ME Actia Informatik und Mikro-Elektronik GmbH
 
+OUI:C4BD6A*
+ ID_OUI_FROM_DATABASE=SKF GmbH
+
 OUI:C4C0AE*
  ID_OUI_FROM_DATABASE=MIDORI ELECTRONIC CO., LTD.
 
@@ -67429,6 +67819,9 @@ OUI:C8E1A7*
 OUI:C8E42F*
  ID_OUI_FROM_DATABASE=Technical Research Design and Development
 
+OUI:C8E7D8*
+ ID_OUI_FROM_DATABASE=SHENZHEN MERCURY COMMUNICATION TECHNOLOGIES CO.,LTD.
+
 OUI:C8EE08*
  ID_OUI_FROM_DATABASE=TANGTOP TECHNOLOGY CO.,LTD
 
@@ -67480,6 +67873,9 @@ OUI:C8FF77*
 OUI:CC0080*
  ID_OUI_FROM_DATABASE=BETTINI SRL
 
+OUI:CC03FA*
+ ID_OUI_FROM_DATABASE=Technicolor CH USA
+
 OUI:CC047C*
  ID_OUI_FROM_DATABASE=G-WAY Microwave
 
@@ -67507,6 +67903,9 @@ OUI:CC0CDA*
 OUI:CC0DEC*
  ID_OUI_FROM_DATABASE=Cisco SPVTG
 
+OUI:CC10A3*
+ ID_OUI_FROM_DATABASE=Beijing Nan Bao Technology Co., Ltd.
+
 OUI:CC14A6*
  ID_OUI_FROM_DATABASE=Yichun MyEnergy Domain, Inc
 
@@ -67531,6 +67930,9 @@ OUI:CC2A80*
 OUI:CC2D8C*
  ID_OUI_FROM_DATABASE=LG ELECTRONICS INC
 
+OUI:CC3080*
+ ID_OUI_FROM_DATABASE=VAIO Corporation
+
 OUI:CC33BB*
  ID_OUI_FROM_DATABASE=SAGEMCOM SAS
 
@@ -67756,9 +68158,15 @@ OUI:CCD539*
 OUI:CCD811*
  ID_OUI_FROM_DATABASE=Aiconn Technology Corporation
 
+OUI:CCD8C1*
+ ID_OUI_FROM_DATABASE=Cisco
+
 OUI:CCD9E9*
  ID_OUI_FROM_DATABASE=SCR Engineers Ltd.
 
+OUI:CCE17F*
+ ID_OUI_FROM_DATABASE=juniper networks
+
 OUI:CCE1D5*
  ID_OUI_FROM_DATABASE=Buffalo Inc.
 
@@ -67786,6 +68194,9 @@ OUI:CCF3A5*
 OUI:CCF407*
  ID_OUI_FROM_DATABASE=EUKREA ELECTROMATIQUE SARL
 
+OUI:CCF538*
+ ID_OUI_FROM_DATABASE=3isysnetworks
+
 OUI:CCF67A*
  ID_OUI_FROM_DATABASE=Ayecka Communication Systems LTD
 
@@ -67825,6 +68236,9 @@ OUI:D00AAB*
 OUI:D00EA4*
  ID_OUI_FROM_DATABASE=Porsche Cars North America
 
+OUI:D01242*
+ ID_OUI_FROM_DATABASE=BIOS Corporation
+
 OUI:D0131E*
  ID_OUI_FROM_DATABASE=Sunrex Technology Corp
 
@@ -67915,6 +68329,9 @@ OUI:D05FB8*
 OUI:D05FCE*
  ID_OUI_FROM_DATABASE=Hitachi Data Systems
 
+OUI:D062A0*
+ ID_OUI_FROM_DATABASE=China Essence Technology (Zhumadian) Co., Ltd.
+
 OUI:D0634D*
  ID_OUI_FROM_DATABASE=Meiko Maschinenbau GmbH &amp; Co. KG
 
@@ -67963,6 +68380,9 @@ OUI:D07E28*
 OUI:D07E35*
  ID_OUI_FROM_DATABASE=Intel Corporate
 
+OUI:D084B0*
+ ID_OUI_FROM_DATABASE=Sagemcom
+
 OUI:D08999*
  ID_OUI_FROM_DATABASE=APCON, Inc.
 
@@ -68110,6 +68530,9 @@ OUI:D0F27F*
 OUI:D0F73B*
  ID_OUI_FROM_DATABASE=Helmut Mauell GmbH
 
+OUI:D0FA1D*
+ ID_OUI_FROM_DATABASE=Qihoo  360  Technology Co.,Ltd
+
 OUI:D0FF50*
  ID_OUI_FROM_DATABASE=Texas Instruments, Inc
 
@@ -68191,6 +68614,9 @@ OUI:D42F23*
 OUI:D4319D*
  ID_OUI_FROM_DATABASE=Sinwatec
 
+OUI:D437D7*
+ ID_OUI_FROM_DATABASE=zte corporation
+
 OUI:D43A65*
  ID_OUI_FROM_DATABASE=IGRS Engineering Lab Ltd.
 
@@ -68278,6 +68704,9 @@ OUI:D46F42*
 OUI:D479C3*
  ID_OUI_FROM_DATABASE=Cameronet GmbH & Co. KG
 
+OUI:D47B35*
+ ID_OUI_FROM_DATABASE=NEO Monitors AS
+
 OUI:D47B75*
  ID_OUI_FROM_DATABASE=HARTING Electronics GmbH
 
@@ -68299,6 +68728,9 @@ OUI:D48890*
 OUI:D48CB5*
  ID_OUI_FROM_DATABASE=CISCO SYSTEMS, INC.
 
+OUI:D48F33*
+ ID_OUI_FROM_DATABASE=Microsoft Corporation
+
 OUI:D48FAA*
  ID_OUI_FROM_DATABASE=Sogecam Industrial, S.A.
 
@@ -68440,6 +68872,9 @@ OUI:D4EA0E*
 OUI:D4EC0C*
  ID_OUI_FROM_DATABASE=Harley-Davidson Motor Company
 
+OUI:D4EC86*
+ ID_OUI_FROM_DATABASE=LinkedHope Intelligent Technologies Co., Ltd
+
 OUI:D4EE07*
  ID_OUI_FROM_DATABASE=HIWIFI Co., Ltd.
 
@@ -68551,6 +68986,9 @@ OUI:D8490B*
 OUI:D8492F*
  ID_OUI_FROM_DATABASE=CANON INC.
 
+OUI:D84A87*
+ ID_OUI_FROM_DATABASE=OI ELECTRIC CO.,LTD
+
 OUI:D84B2A*
  ID_OUI_FROM_DATABASE=Cognitas Technologies, Inc.
 
@@ -68860,6 +69298,9 @@ OUI:DC37D2*
 OUI:DC38E1*
  ID_OUI_FROM_DATABASE=Juniper networks
 
+OUI:DC3979*
+ ID_OUI_FROM_DATABASE=Skyport Systems
+
 OUI:DC3A5E*
  ID_OUI_FROM_DATABASE=Roku, Inc
 
@@ -69199,6 +69640,9 @@ OUI:E09467*
 OUI:E09579*
  ID_OUI_FROM_DATABASE=ORTHOsoft inc, d/b/a Zimmer CAS
 
+OUI:E09796*
+ ID_OUI_FROM_DATABASE=HUAWEI TECHNOLOGIES CO.,LTD
+
 OUI:E097F2*
  ID_OUI_FROM_DATABASE=Atomax Inc.
 
@@ -69226,6 +69670,9 @@ OUI:E0AAB0*
 OUI:E0ABFE*
  ID_OUI_FROM_DATABASE=Orb Networks, Inc.
 
+OUI:E0ACF1*
+ ID_OUI_FROM_DATABASE=Cisco
+
 OUI:E0AE5E*
  ID_OUI_FROM_DATABASE=ALPS Co,. Ltd.
 
@@ -69523,6 +69970,9 @@ OUI:E492E7*
 OUI:E492FB*
  ID_OUI_FROM_DATABASE=Samsung Electronics Co.,Ltd
 
+OUI:E4956E*
+ ID_OUI_FROM_DATABASE=IEEE REGISTRATION AUTHORITY  - Please see MAM public listing for more information.
+
 OUI:E496AE*
  ID_OUI_FROM_DATABASE=ALTOGRAPHICS Inc.
 
@@ -69553,6 +70003,9 @@ OUI:E4B021*
 OUI:E4C146*
  ID_OUI_FROM_DATABASE=Objetivos y Servicios de Valor A
 
+OUI:E4C62B*
+ ID_OUI_FROM_DATABASE=Airware
+
 OUI:E4C63D*
  ID_OUI_FROM_DATABASE=Apple, Inc.
 
@@ -69910,6 +70363,9 @@ OUI:E8EA6A*
 OUI:E8EADA*
  ID_OUI_FROM_DATABASE=Denkovi Assembly Electroncs LTD
 
+OUI:E8ED05*
+ ID_OUI_FROM_DATABASE=ARRIS Group, Inc.
+
 OUI:E8EDF3*
  ID_OUI_FROM_DATABASE=Cisco
 
@@ -69931,6 +70387,9 @@ OUI:E8FC60*
 OUI:E8FCAF*
  ID_OUI_FROM_DATABASE=NETGEAR INC.,
 
+OUI:EC0EC4*
+ ID_OUI_FROM_DATABASE=Hon Hai Precision Ind. Co.,Ltd.
+
 OUI:EC0ED6*
  ID_OUI_FROM_DATABASE=ITECH INSTRUMENTS SAS
 
@@ -69949,6 +70408,9 @@ OUI:EC1766*
 OUI:EC1A59*
  ID_OUI_FROM_DATABASE=Belkin International Inc.
 
+OUI:EC1D7F*
+ ID_OUI_FROM_DATABASE=zte corporation
+
 OUI:EC219F*
  ID_OUI_FROM_DATABASE=VidaBox LLC
 
@@ -69982,6 +70444,9 @@ OUI:EC3586*
 OUI:EC3BF0*
  ID_OUI_FROM_DATABASE=NovelSat
 
+OUI:EC3C5A*
+ ID_OUI_FROM_DATABASE=SHEN ZHEN HENG SHENG HUI DIGITAL TECHNOLOGY CO.,LTD
+
 OUI:EC3E09*
  ID_OUI_FROM_DATABASE=PERFORMANCE DESIGNED PRODUCTS, LLC
 
@@ -70522,6 +70987,9 @@ OUI:F4068D*
 OUI:F406A5*
  ID_OUI_FROM_DATABASE=Hangzhou Bianfeng Networking Technology Co., Ltd.
 
+OUI:F409D8*
+ ID_OUI_FROM_DATABASE=Samsung Electro Mechanics co., LTD.
+
 OUI:F40B93*
  ID_OUI_FROM_DATABASE=Research In Motion
 
@@ -70555,6 +71023,9 @@ OUI:F42012*
 OUI:F42833*
  ID_OUI_FROM_DATABASE=MMPC Inc.
 
+OUI:F42853*
+ ID_OUI_FROM_DATABASE=Zioncom Electronics (Shenzhen) Ltd.
+
 OUI:F42896*
  ID_OUI_FROM_DATABASE=SPECTO PAINEIS ELETRONICOS LTDA
 
@@ -70780,6 +71251,9 @@ OUI:F4EC38*
 OUI:F4F15A*
  ID_OUI_FROM_DATABASE=Apple
 
+OUI:F4F1E1*
+ ID_OUI_FROM_DATABASE=Motorola Mobility LLC
+
 OUI:F4F26D*
  ID_OUI_FROM_DATABASE=TP-LINK TECHNOLOGIES CO.,LTD.
 
@@ -70855,6 +71329,9 @@ OUI:F81EDF*
 OUI:F82285*
  ID_OUI_FROM_DATABASE=Cypress Technology CO., LTD.
 
+OUI:F82441*
+ ID_OUI_FROM_DATABASE=Yeelink
+
 OUI:F82793*
  ID_OUI_FROM_DATABASE=Apple, Inc
 
@@ -71119,6 +71596,9 @@ OUI:F8E4FB*
 OUI:F8E7B5*
  ID_OUI_FROM_DATABASE=µTech Tecnologia LTDA
 
+OUI:F8E811*
+ ID_OUI_FROM_DATABASE=HUAWEI TECHNOLOGIES CO.,LTD
+
 OUI:F8E968*
  ID_OUI_FROM_DATABASE=Egker Kft.
 
@@ -71221,6 +71701,9 @@ OUI:FC1BFF*
 OUI:FC1D59*
  ID_OUI_FROM_DATABASE=I Smart Cities HK Ltd
 
+OUI:FC1D84*
+ ID_OUI_FROM_DATABASE=Autobase
+
 OUI:FC1E16*
  ID_OUI_FROM_DATABASE=IPEVO corp
 
@@ -71359,6 +71842,9 @@ OUI:FC9947*
 OUI:FC9FAE*
  ID_OUI_FROM_DATABASE=Fidus Systems Inc
 
+OUI:FC9FE1*
+ ID_OUI_FROM_DATABASE=CONWIN.Tech. Ltd
+
 OUI:FCA13E*
  ID_OUI_FROM_DATABASE=Samsung Electronics
 
@@ -71419,6 +71905,9 @@ OUI:FCD817*
 OUI:FCDB96*
  ID_OUI_FROM_DATABASE=ENERVALLEY CO., LTD
 
+OUI:FCDBB3*
+ ID_OUI_FROM_DATABASE=Murata Manufacturing Co., Ltd.
+
 OUI:FCDD55*
  ID_OUI_FROM_DATABASE=Shenzhen WeWins wireless Co.,Ltd
 
index a65c7db38f56588a46c497766e3cde7112cda906..9f3136a6a72771c098e66a24393722fded984418 100644 (file)
@@ -115,7 +115,7 @@ bluetooth:v0024*
  ID_VENDOR_FROM_DATABASE=Alcatel
 
 bluetooth:v0025*
- ID_VENDOR_FROM_DATABASE=Philips Semiconductors
+ ID_VENDOR_FROM_DATABASE=NXP Semiconductors (formerly Philips Semiconductors)
 
 bluetooth:v0026*
  ID_VENDOR_FROM_DATABASE=C Technologies
@@ -427,7 +427,7 @@ bluetooth:v008B*
  ID_VENDOR_FROM_DATABASE=Topcorn Positioning Systems, LLC
 
 bluetooth:v008C*
- ID_VENDOR_FROM_DATABASE=Qualcomm Retail Solutions, Inc. (formerly Qualcomm Labs, Inc.)
+ ID_VENDOR_FROM_DATABASE=Gimbal Inc. (formerly Qualcomm Labs, Inc. and Qualcomm Retail Solutions, Inc.)
 
 bluetooth:v008D*
  ID_VENDOR_FROM_DATABASE=Zscan Software
@@ -1006,10 +1006,70 @@ bluetooth:v014C*
  ID_VENDOR_FROM_DATABASE=Mesh-Net Ltd
 
 bluetooth:v014D*
- ID_VENDOR_FROM_DATABASE=HUIZHOU DESAY SV AUTOMOTIVE CO., LTD.
+ ID_VENDOR_FROM_DATABASE=Huizhou Desay SV Automotive CO., LTD.
 
 bluetooth:v014E*
  ID_VENDOR_FROM_DATABASE=Tangerine, Inc.
 
 bluetooth:v014F*
  ID_VENDOR_FROM_DATABASE=B&W Group Ltd.
+
+bluetooth:v0150*
+ ID_VENDOR_FROM_DATABASE=Pioneer Corporation
+
+bluetooth:v0151*
+ ID_VENDOR_FROM_DATABASE=OnBeep
+
+bluetooth:v0152*
+ ID_VENDOR_FROM_DATABASE=Vernier Software & Technology
+
+bluetooth:v0153*
+ ID_VENDOR_FROM_DATABASE=ROL Ergo
+
+bluetooth:v0154*
+ ID_VENDOR_FROM_DATABASE=Pebble Technology
+
+bluetooth:v0155*
+ ID_VENDOR_FROM_DATABASE=NETATMO
+
+bluetooth:v0156*
+ ID_VENDOR_FROM_DATABASE=Accumulate AB
+
+bluetooth:v0157*
+ ID_VENDOR_FROM_DATABASE=Anhui Huami Information Technology Co., Ltd.
+
+bluetooth:v0158*
+ ID_VENDOR_FROM_DATABASE=Inmite s.r.o.
+
+bluetooth:v0159*
+ ID_VENDOR_FROM_DATABASE=ChefSteps, Inc.
+
+bluetooth:v015A*
+ ID_VENDOR_FROM_DATABASE=micas AG
+
+bluetooth:v015B*
+ ID_VENDOR_FROM_DATABASE=Biomedical Research Ltd.
+
+bluetooth:v015C*
+ ID_VENDOR_FROM_DATABASE=Pitius Tec S.L.
+
+bluetooth:v015D*
+ ID_VENDOR_FROM_DATABASE=Estimote, Inc.
+
+bluetooth:v015E*
+ ID_VENDOR_FROM_DATABASE=Unikey Technologies, Inc.
+
+bluetooth:v015F*
+ ID_VENDOR_FROM_DATABASE=Timer Cap Co.
+
+bluetooth:v0160*
+ ID_VENDOR_FROM_DATABASE=AwoX
+
+bluetooth:v0161*
+ ID_VENDOR_FROM_DATABASE=yikes
+
+bluetooth:v0162*
+ ID_VENDOR_FROM_DATABASE=MADSGlobal NZ Ltd.
+
+bluetooth:v0163*
+ ID_VENDOR_FROM_DATABASE=PCH International
index fd1d5d0c61c374ea56d7377cfb4006ca455d36b0..5702c40114159c8620e0a6542354e33701676e75 100644 (file)
@@ -47,12 +47,24 @@ pci:v*d*sv*sd*bc01sc06i00*
 pci:v*d*sv*sd*bc01sc06i01*
  ID_PCI_INTERFACE_FROM_DATABASE=AHCI 1.0
 
+pci:v*d*sv*sd*bc01sc06i02*
+ ID_PCI_INTERFACE_FROM_DATABASE=Serial Storage Bus
+
 pci:v*d*sv*sd*bc01sc07*
  ID_PCI_SUBCLASS_FROM_DATABASE=Serial Attached SCSI controller
 
+pci:v*d*sv*sd*bc01sc07i01*
+ ID_PCI_INTERFACE_FROM_DATABASE=Serial Storage Bus
+
 pci:v*d*sv*sd*bc01sc08*
  ID_PCI_SUBCLASS_FROM_DATABASE=Non-Volatile memory controller
 
+pci:v*d*sv*sd*bc01sc08i01*
+ ID_PCI_INTERFACE_FROM_DATABASE=NVMHCI
+
+pci:v*d*sv*sd*bc01sc08i02*
+ ID_PCI_INTERFACE_FROM_DATABASE=NVM Express
+
 pci:v*d*sv*sd*bc01sc80*
  ID_PCI_SUBCLASS_FROM_DATABASE=Mass storage controller
 
@@ -80,6 +92,9 @@ pci:v*d*sv*sd*bc02sc05*
 pci:v*d*sv*sd*bc02sc06*
  ID_PCI_SUBCLASS_FROM_DATABASE=PICMG controller
 
+pci:v*d*sv*sd*bc02sc07*
+ ID_PCI_SUBCLASS_FROM_DATABASE=Infiniband controller
+
 pci:v*d*sv*sd*bc02sc80*
  ID_PCI_SUBCLASS_FROM_DATABASE=Network controller
 
@@ -311,6 +326,9 @@ pci:v*d*sv*sd*bc08sc02i01*
 pci:v*d*sv*sd*bc08sc02i02*
  ID_PCI_INTERFACE_FROM_DATABASE=EISA Timers
 
+pci:v*d*sv*sd*bc08sc02i03*
+ ID_PCI_INTERFACE_FROM_DATABASE=HPET
+
 pci:v*d*sv*sd*bc08sc03*
  ID_PCI_SUBCLASS_FROM_DATABASE=RTC
 
@@ -527,5 +545,14 @@ pci:v*d*sv*sd*bc11sc20*
 pci:v*d*sv*sd*bc11sc80*
  ID_PCI_SUBCLASS_FROM_DATABASE=Signal processing controller
 
+pci:v*d*sv*sd*bc12*
+ ID_PCI_CLASS_FROM_DATABASE=Processing accelerators
+
+pci:v*d*sv*sd*bc12sc00*
+ ID_PCI_SUBCLASS_FROM_DATABASE=Processing accelerators
+
+pci:v*d*sv*sd*bc13*
+ ID_PCI_CLASS_FROM_DATABASE=Non-Essential Instrumentation
+
 pci:v*d*sv*sd*bcFF*
  ID_PCI_CLASS_FROM_DATABASE=Unassigned class
index 62941b9a4595399b05842e67e21d12d4a660e334..77c727dcc008d3873481a9a61ee7389cb209c833 100644 (file)
@@ -959,6 +959,15 @@ pci:v00001000d0000005Dsv00001028sd00001F49*
 pci:v00001000d0000005Dsv00001028sd00001F4A*
  ID_MODEL_FROM_DATABASE=MegaRAID SAS-3 3108 [Invader] (PERC H730 Mini (for blades))
 
+pci:v00001000d0000005Dsv00001028sd00001F4D*
+ ID_MODEL_FROM_DATABASE=MegaRAID SAS-3 3108 [Invader] (PERC FS33xS)
+
+pci:v00001000d0000005Dsv00001028sd00001F4F*
+ ID_MODEL_FROM_DATABASE=MegaRAID SAS-3 3108 [Invader] (PERC H730P Slim)
+
+pci:v00001000d0000005Dsv00001028sd00001F54*
+ ID_MODEL_FROM_DATABASE=MegaRAID SAS-3 3108 [Invader] (PERC FS33xD)
+
 pci:v00001000d0000005Dsv000017AAsd00001052*
  ID_MODEL_FROM_DATABASE=MegaRAID SAS-3 3108 [Invader] (ThinkServer RAID 720i)
 
@@ -1677,7 +1686,7 @@ pci:v00001002d00001308*
  ID_MODEL_FROM_DATABASE=Kaveri HDMI/DP Audio Controller
 
 pci:v00001002d00001309*
- ID_MODEL_FROM_DATABASE=Kaveri [Radeon R7 Graphics]
+ ID_MODEL_FROM_DATABASE=Kaveri [Radeon R6/R7 Graphics]
 
 pci:v00001002d0000130A*
  ID_MODEL_FROM_DATABASE=Kaveri [Radeon R6 Graphics]
@@ -3003,7 +3012,7 @@ pci:v00001002d00004C57sv00001014sd00000517*
  ID_MODEL_FROM_DATABASE=RV200/M7 [Mobility Radeon 7500] (ThinkPad T30)
 
 pci:v00001002d00004C57sv00001014sd00000530*
- ID_MODEL_FROM_DATABASE=RV200/M7 [Mobility Radeon 7500] (ThinkPad T42 2373-4WU)
+ ID_MODEL_FROM_DATABASE=RV200/M7 [Mobility Radeon 7500] (ThinkPad T4x Series)
 
 pci:v00001002d00004C57sv00001028sd000000E6*
  ID_MODEL_FROM_DATABASE=RV200/M7 [Mobility Radeon 7500] (Radeon Mobility M7 LW (Dell Inspiron 8100))
@@ -4362,7 +4371,7 @@ pci:v00001002d00006667*
  ID_MODEL_FROM_DATABASE=Jet ULT [Radeon R5 M230]
 
 pci:v00001002d0000666F*
- ID_MODEL_FROM_DATABASE=Sun LE [Radeon HD 8550M]
+ ID_MODEL_FROM_DATABASE=Sun LE [Radeon HD 8550M / R5 M230]
 
 pci:v00001002d00006670*
  ID_MODEL_FROM_DATABASE=Hainan
@@ -5937,10 +5946,10 @@ pci:v00001002d0000679F*
  ID_MODEL_FROM_DATABASE=Tahiti
 
 pci:v00001002d000067A0*
- ID_MODEL_FROM_DATABASE=Hawaii XT GL
+ ID_MODEL_FROM_DATABASE=Hawaii XT GL [FirePro W9100]
 
 pci:v00001002d000067A1*
- ID_MODEL_FROM_DATABASE=Hawaii GL
+ ID_MODEL_FROM_DATABASE=Hawaii PRO GL [FirePro W8100]
 
 pci:v00001002d000067A2*
  ID_MODEL_FROM_DATABASE=Hawaii GL
@@ -5961,7 +5970,7 @@ pci:v00001002d000067B1*
  ID_MODEL_FROM_DATABASE=Hawaii PRO [Radeon R9 290]
 
 pci:v00001002d000067B9*
- ID_MODEL_FROM_DATABASE=Vesuvius [Radeon R9 295 X2]
+ ID_MODEL_FROM_DATABASE=Vesuvius [Radeon R9 295X2]
 
 pci:v00001002d000067BE*
  ID_MODEL_FROM_DATABASE=Hawaii LE
@@ -7860,7 +7869,13 @@ pci:v00001002d000068FE*
  ID_MODEL_FROM_DATABASE=Cedar LE
 
 pci:v00001002d00006900*
- ID_MODEL_FROM_DATABASE=Topaz XT [Radeon R7 M260]
+ ID_MODEL_FROM_DATABASE=Topaz XT [Radeon R7 M260/M265]
+
+pci:v00001002d00006900sv00001028sd00000640*
+ ID_MODEL_FROM_DATABASE=Topaz XT [Radeon R7 M260/M265] (Radeon R7 M265)
+
+pci:v00001002d00006900sv00001179sd0000F934*
+ ID_MODEL_FROM_DATABASE=Topaz XT [Radeon R7 M260/M265] (Radeon R7 M260)
 
 pci:v00001002d00006901*
  ID_MODEL_FROM_DATABASE=Topaz PRO [Radeon R5 M255]
@@ -8027,6 +8042,9 @@ pci:v00001002d0000718A*
 pci:v00001002d0000718B*
  ID_MODEL_FROM_DATABASE=RV516/M62 [Mobility Radeon X1350]
 
+pci:v00001002d0000718Bsv00001071sd00008209*
+ ID_MODEL_FROM_DATABASE=RV516/M62 [Mobility Radeon X1350] (Medion MIM 2240 Notebook PC [MD98100])
+
 pci:v00001002d0000718C*
  ID_MODEL_FROM_DATABASE=RV516/M62-CSP64 [Mobility Radeon X1350]
 
@@ -8969,26 +8987,29 @@ pci:v00001002d0000983E*
 pci:v00001002d0000983F*
  ID_MODEL_FROM_DATABASE=Kabini
 
+pci:v00001002d00009840*
+ ID_MODEL_FROM_DATABASE=Kabini HDMI/DP Audio
+
 pci:v00001002d00009850*
- ID_MODEL_FROM_DATABASE=Mullins [Radeon APU A6-6200 with R3 Graphics]
+ ID_MODEL_FROM_DATABASE=Mullins [Radeon R3 Graphics]
 
 pci:v00001002d00009851*
- ID_MODEL_FROM_DATABASE=Mullins [Radeon APU A4-6000 with R2 Graphics]
+ ID_MODEL_FROM_DATABASE=Mullins [Radeon R4/R5 Graphics]
 
 pci:v00001002d00009852*
- ID_MODEL_FROM_DATABASE=Mullins [Radeon APU A4-6000 with R2 Graphics]
+ ID_MODEL_FROM_DATABASE=Mullins [Radeon R2 Graphics]
 
 pci:v00001002d00009853*
- ID_MODEL_FROM_DATABASE=Mullins [Radeon APU E2-4000 with R2 Graphics]
+ ID_MODEL_FROM_DATABASE=Mullins [Radeon R2 Graphics]
 
 pci:v00001002d00009854*
- ID_MODEL_FROM_DATABASE=Mullins [Radeon APU E2-3700 with R2 Graphics]
+ ID_MODEL_FROM_DATABASE=Mullins [Radeon R3 Graphics]
 
 pci:v00001002d00009855*
- ID_MODEL_FROM_DATABASE=Mullins [Radeon APU XX-2450M with R3 Graphics]
+ ID_MODEL_FROM_DATABASE=Mullins [Radeon R6 Graphics]
 
 pci:v00001002d00009856*
- ID_MODEL_FROM_DATABASE=Mullins [Radeon APU XX-2200M with R2 Graphics]
+ ID_MODEL_FROM_DATABASE=Mullins [Radeon R2 Graphics]
 
 pci:v00001002d00009857*
  ID_MODEL_FROM_DATABASE=Mullins [Radeon APU XX-2200M with R2 Graphics]
@@ -12347,6 +12368,9 @@ pci:v0000102Bd00000532sv00001028sd0000029C*
 pci:v0000102Bd00000532sv00001028sd000002A4*
  ID_MODEL_FROM_DATABASE=MGA G200eW WPCM450 (PowerEdge T310 MGA G200eW WPCM450)
 
+pci:v0000102Bd00000532sv000015D9sd00000624*
+ ID_MODEL_FROM_DATABASE=MGA G200eW WPCM450 (X9SCM-F Motherboard)
+
 pci:v0000102Bd00000532sv000015D9sd0000A811*
  ID_MODEL_FROM_DATABASE=MGA G200eW WPCM450 (H8DGU)
 
@@ -13169,6 +13193,9 @@ pci:v00001039d00000016*
 pci:v00001039d00000018*
  ID_MODEL_FROM_DATABASE=SiS85C503/5513 (LPC Bridge)
 
+pci:v00001039d00000163*
+ ID_MODEL_FROM_DATABASE=163 802.11b/g Wireless LAN Adapter
+
 pci:v00001039d00000180*
  ID_MODEL_FROM_DATABASE=RAID bus controller 180 SATA/PATA  [SiS]
 
@@ -14141,6 +14168,9 @@ pci:v00001042d00003020*
 pci:v00001043*
  ID_VENDOR_FROM_DATABASE=ASUSTeK Computer Inc.
 
+pci:v00001043d00000464*
+ ID_MODEL_FROM_DATABASE=Radeon R9 270x GPU
+
 pci:v00001043d00000675*
  ID_MODEL_FROM_DATABASE=ISDNLink P-IN100-ST-D
 
@@ -17978,6 +18008,9 @@ pci:v00001095d00003512sv00001095sd00006512*
 pci:v00001095d00003531*
  ID_MODEL_FROM_DATABASE=SiI 3531 [SATALink/SATARaid] Serial ATA Controller
 
+pci:v00001095d00003531sv000017C0sd00004083*
+ ID_MODEL_FROM_DATABASE=SiI 3531 [SATALink/SATARaid] Serial ATA Controller (Medion WIM 2210 Notebook PC [MD96850])
+
 pci:v00001096*
  ID_VENDOR_FROM_DATABASE=Alacron
 
@@ -26261,6 +26294,9 @@ pci:v000010DEd00000F00*
 pci:v000010DEd00000F01*
  ID_MODEL_FROM_DATABASE=GF108 [GeForce GT 620]
 
+pci:v000010DEd00000F02*
+ ID_MODEL_FROM_DATABASE=GF108 [GeForce GT 730]
+
 pci:v000010DEd00000FC0*
  ID_MODEL_FROM_DATABASE=GK107 [GeForce GT 640 OEM]
 
@@ -26276,6 +26312,9 @@ pci:v000010DEd00000FC6*
 pci:v000010DEd00000FC6sv00001043sd00008428*
  ID_MODEL_FROM_DATABASE=GK107 [GeForce GTX 650] (GTX650-DC-1GD5)
 
+pci:v000010DEd00000FC8*
+ ID_MODEL_FROM_DATABASE=GK107 [GeForce GT 740]
+
 pci:v000010DEd00000FCD*
  ID_MODEL_FROM_DATABASE=GK107M [GeForce GT 755M]
 
@@ -26420,6 +26459,9 @@ pci:v000010DEd00000FFE*
 pci:v000010DEd00000FFF*
  ID_MODEL_FROM_DATABASE=GK107GL [Quadro 410]
 
+pci:v000010DEd00001001*
+ ID_MODEL_FROM_DATABASE=GK110B [GeForce GTX TITAN Z]
+
 pci:v000010DEd00001003*
  ID_MODEL_FROM_DATABASE=GK110 [GeForce GTX Titan LE]
 
@@ -26828,9 +26870,57 @@ pci:v000010DEd00001140sv00001025sd00000830*
 pci:v000010DEd00001140sv00001025sd00000837*
  ID_MODEL_FROM_DATABASE=GF117M [GeForce 610M/710M/820M / GT 620M/625M/630M/720M] (GeForce GT 720M)
 
+pci:v000010DEd00001140sv00001025sd0000083E*
+ ID_MODEL_FROM_DATABASE=GF117M [GeForce 610M/710M/820M / GT 620M/625M/630M/720M] (GeForce 820M)
+
 pci:v000010DEd00001140sv00001025sd00000841*
  ID_MODEL_FROM_DATABASE=GF117M [GeForce 610M/710M/820M / GT 620M/625M/630M/720M] (GeForce 710M)
 
+pci:v000010DEd00001140sv00001025sd00000854*
+ ID_MODEL_FROM_DATABASE=GF117M [GeForce 610M/710M/820M / GT 620M/625M/630M/720M] (GeForce 820M)
+
+pci:v000010DEd00001140sv00001025sd00000855*
+ ID_MODEL_FROM_DATABASE=GF117M [GeForce 610M/710M/820M / GT 620M/625M/630M/720M] (GeForce 820M)
+
+pci:v000010DEd00001140sv00001025sd00000856*
+ ID_MODEL_FROM_DATABASE=GF117M [GeForce 610M/710M/820M / GT 620M/625M/630M/720M] (GeForce 820M)
+
+pci:v000010DEd00001140sv00001025sd00000857*
+ ID_MODEL_FROM_DATABASE=GF117M [GeForce 610M/710M/820M / GT 620M/625M/630M/720M] (GeForce 820M)
+
+pci:v000010DEd00001140sv00001025sd00000858*
+ ID_MODEL_FROM_DATABASE=GF117M [GeForce 610M/710M/820M / GT 620M/625M/630M/720M] (GeForce 820M)
+
+pci:v000010DEd00001140sv00001025sd00000868*
+ ID_MODEL_FROM_DATABASE=GF117M [GeForce 610M/710M/820M / GT 620M/625M/630M/720M] (GeForce 820M)
+
+pci:v000010DEd00001140sv00001025sd00000869*
+ ID_MODEL_FROM_DATABASE=GF117M [GeForce 610M/710M/820M / GT 620M/625M/630M/720M] (GeForce 810M)
+
+pci:v000010DEd00001140sv00001025sd00000873*
+ ID_MODEL_FROM_DATABASE=GF117M [GeForce 610M/710M/820M / GT 620M/625M/630M/720M] (GeForce 820M)
+
+pci:v000010DEd00001140sv00001025sd00000878*
+ ID_MODEL_FROM_DATABASE=GF117M [GeForce 610M/710M/820M / GT 620M/625M/630M/720M] (GeForce 820M)
+
+pci:v000010DEd00001140sv00001025sd0000087B*
+ ID_MODEL_FROM_DATABASE=GF117M [GeForce 610M/710M/820M / GT 620M/625M/630M/720M] (GeForce 820M)
+
+pci:v000010DEd00001140sv00001025sd0000087C*
+ ID_MODEL_FROM_DATABASE=GF117M [GeForce 610M/710M/820M / GT 620M/625M/630M/720M] (GeForce 810M)
+
+pci:v000010DEd00001140sv00001025sd00000881*
+ ID_MODEL_FROM_DATABASE=GF117M [GeForce 610M/710M/820M / GT 620M/625M/630M/720M] (GeForce 820M)
+
+pci:v000010DEd00001140sv00001025sd0000088A*
+ ID_MODEL_FROM_DATABASE=GF117M [GeForce 610M/710M/820M / GT 620M/625M/630M/720M] (GeForce 820M)
+
+pci:v000010DEd00001140sv00001025sd0000090F*
+ ID_MODEL_FROM_DATABASE=GF117M [GeForce 610M/710M/820M / GT 620M/625M/630M/720M] (GeForce 820M)
+
+pci:v000010DEd00001140sv00001025sd00000921*
+ ID_MODEL_FROM_DATABASE=GF117M [GeForce 610M/710M/820M / GT 620M/625M/630M/720M] (GeForce 820M)
+
 pci:v000010DEd00001140sv00001028sd0000054D*
  ID_MODEL_FROM_DATABASE=GF117M [GeForce 610M/710M/820M / GT 620M/625M/630M/720M] (GeForce GT 630M)
 
@@ -26966,6 +27056,18 @@ pci:v000010DEd00001140sv00001043sd000016DD*
 pci:v000010DEd00001140sv00001043sd0000170D*
  ID_MODEL_FROM_DATABASE=GF117M [GeForce 610M/710M/820M / GT 620M/625M/630M/720M] (GeForce 820M)
 
+pci:v000010DEd00001140sv00001043sd0000176D*
+ ID_MODEL_FROM_DATABASE=GF117M [GeForce 610M/710M/820M / GT 620M/625M/630M/720M] (GeForce 820M)
+
+pci:v000010DEd00001140sv00001043sd0000178D*
+ ID_MODEL_FROM_DATABASE=GF117M [GeForce 610M/710M/820M / GT 620M/625M/630M/720M] (GeForce 820M)
+
+pci:v000010DEd00001140sv00001043sd0000179D*
+ ID_MODEL_FROM_DATABASE=GF117M [GeForce 610M/710M/820M / GT 620M/625M/630M/720M] (GeForce 820M)
+
+pci:v000010DEd00001140sv00001043sd000017DD*
+ ID_MODEL_FROM_DATABASE=GF117M [GeForce 610M/710M/820M / GT 620M/625M/630M/720M] (GeForce 820M)
+
 pci:v000010DEd00001140sv00001043sd00002132*
  ID_MODEL_FROM_DATABASE=GF117M [GeForce 610M/710M/820M / GT 620M/625M/630M/720M] (GeForce GT 620M)
 
@@ -27713,6 +27815,9 @@ pci:v000010DEd00001284*
 pci:v000010DEd00001286*
  ID_MODEL_FROM_DATABASE=GK208 [GeForce GT 720]
 
+pci:v000010DEd00001287*
+ ID_MODEL_FROM_DATABASE=GK208 [GeForce GT 730]
+
 pci:v000010DEd00001290*
  ID_MODEL_FROM_DATABASE=GK208M [GeForce GT 730M]
 
@@ -27749,6 +27854,21 @@ pci:v000010DEd00001294*
 pci:v000010DEd00001295*
  ID_MODEL_FROM_DATABASE=GK208M [GeForce 710M]
 
+pci:v000010DEd00001295sv0000103Csd00002B0D*
+ ID_MODEL_FROM_DATABASE=GK208M [GeForce 710M] (GeForce GT 710A)
+
+pci:v000010DEd00001295sv0000103Csd00002B0F*
+ ID_MODEL_FROM_DATABASE=GK208M [GeForce 710M] (GeForce GT 710A)
+
+pci:v000010DEd00001295sv0000103Csd00002B11*
+ ID_MODEL_FROM_DATABASE=GK208M [GeForce 710M] (GeForce GT 710A)
+
+pci:v000010DEd00001295sv0000103Csd00002B21*
+ ID_MODEL_FROM_DATABASE=GK208M [GeForce 710M] (GeForce GT 810A)
+
+pci:v000010DEd00001295sv0000103Csd00002B22*
+ ID_MODEL_FROM_DATABASE=GK208M [GeForce 710M] (GeForce GT 810A)
+
 pci:v000010DEd00001296*
  ID_MODEL_FROM_DATABASE=GK208M [GeForce 825M]
 
@@ -28302,7 +28422,7 @@ pci:v000010ECd00008136*
  ID_MODEL_FROM_DATABASE=RTL8101E/RTL8102E PCI Express Fast Ethernet controller
 
 pci:v000010ECd00008136sv0000103Csd00002AB1*
- ID_MODEL_FROM_DATABASE=RTL8101E/RTL8102E PCI Express Fast Ethernet controller (Pavillion p6774)
+ ID_MODEL_FROM_DATABASE=RTL8101E/RTL8102E PCI Express Fast Ethernet controller (Pavilion p6774)
 
 pci:v000010ECd00008136sv0000103Csd000030CC*
  ID_MODEL_FROM_DATABASE=RTL8101E/RTL8102E PCI Express Fast Ethernet controller (Pavilion dv6700)
@@ -28310,6 +28430,9 @@ pci:v000010ECd00008136sv0000103Csd000030CC*
 pci:v000010ECd00008136sv00001179sd0000FF64*
  ID_MODEL_FROM_DATABASE=RTL8101E/RTL8102E PCI Express Fast Ethernet controller (RTL8102E PCI-E Fast Ethernet NIC)
 
+pci:v000010ECd00008136sv000017C0sd00001053*
+ ID_MODEL_FROM_DATABASE=RTL8101E/RTL8102E PCI Express Fast Ethernet controller (AzureWave AW-NE766 802.11B/G/N Mini PCIe Card Model RT2700E)
+
 pci:v000010ECd00008138*
  ID_MODEL_FROM_DATABASE=RT8139 (B/C) Cardbus Fast Ethernet Adapter
 
@@ -29036,6 +29159,9 @@ pci:v00001102d0000000B*
 pci:v00001102d0000000Bsv00001102sd00000041*
  ID_MODEL_FROM_DATABASE=EMU20k2 [X-Fi Titanium Series] (SB0880 [SoundBlaster X-Fi Titanium PCI-e])
 
+pci:v00001102d00000012*
+ ID_MODEL_FROM_DATABASE=SB Recon3D
+
 pci:v00001102d00004001*
  ID_MODEL_FROM_DATABASE=SB Audigy FireWire Port
 
@@ -30878,6 +31004,9 @@ pci:v00001106d0000E340*
 pci:v00001106d0000E353*
  ID_MODEL_FROM_DATABASE=VX800/VX820 PCI Express Root Port
 
+pci:v00001106d0000E410*
+ ID_MODEL_FROM_DATABASE=VX900 PCI Express Physical Layer Electrical Sub-block
+
 pci:v00001106d0000F208*
  ID_MODEL_FROM_DATABASE=PT890 PCI to PCI Bridge Controller
 
@@ -35045,6 +35174,9 @@ pci:v000011ABd00004353sv0000104Dsd0000902D*
 pci:v000011ABd00004354*
  ID_MODEL_FROM_DATABASE=88E8040 PCI-E Fast Ethernet Controller
 
+pci:v000011ABd00004354sv0000144Dsd0000C06A*
+ ID_MODEL_FROM_DATABASE=88E8040 PCI-E Fast Ethernet Controller (R730 Laptop)
+
 pci:v000011ABd00004354sv0000144Dsd0000C072*
  ID_MODEL_FROM_DATABASE=88E8040 PCI-E Fast Ethernet Controller (Notebook N150P)
 
@@ -36557,6 +36689,9 @@ pci:v00001217*
 pci:v00001217d000000F7*
  ID_MODEL_FROM_DATABASE=Firewire (IEEE 1394)
 
+pci:v00001217d000000F7sv00001071sd00008209*
+ ID_MODEL_FROM_DATABASE=Firewire (IEEE 1394) (Medion MIM 2240 Notebook PC [MD98100])
+
 pci:v00001217d000000F7sv00001179sd0000FF50*
  ID_MODEL_FROM_DATABASE=Firewire (IEEE 1394) (Satellite P305D-S8995E)
 
@@ -36635,12 +36770,18 @@ pci:v00001217d00007114*
 pci:v00001217d00007120*
  ID_MODEL_FROM_DATABASE=Integrated MMC/SD Controller
 
+pci:v00001217d00007120sv00001071sd00008209*
+ ID_MODEL_FROM_DATABASE=Integrated MMC/SD Controller (Medion MIM 2240 Notebook PC [MD98100])
+
 pci:v00001217d00007120sv00001179sd0000FF50*
  ID_MODEL_FROM_DATABASE=Integrated MMC/SD Controller (Satellite P305D-S8995E)
 
 pci:v00001217d00007130*
  ID_MODEL_FROM_DATABASE=Integrated MS/xD Controller
 
+pci:v00001217d00007130sv00001071sd00008209*
+ ID_MODEL_FROM_DATABASE=Integrated MS/xD Controller (Medion MIM 2240 Notebook PC [MD98100])
+
 pci:v00001217d00007130sv00001179sd0000FF50*
  ID_MODEL_FROM_DATABASE=Integrated MS/xD Controller (Satellite P305D-S8995E)
 
@@ -42276,7 +42417,7 @@ pci:v00001425d00004083*
  ID_MODEL_FROM_DATABASE=T420X-4083 Unified Wire Ethernet Controller
 
 pci:v00001425d00004084*
- ID_MODEL_FROM_DATABASE=T420-4084 Unified Wire Ethernet Controller
+ ID_MODEL_FROM_DATABASE=T440-4084 Unified Wire Ethernet Controller
 
 pci:v00001425d00004085*
  ID_MODEL_FROM_DATABASE=T420-4085 SFP+ Unified Wire Ethernet Controller
@@ -42348,7 +42489,7 @@ pci:v00001425d00004483*
  ID_MODEL_FROM_DATABASE=T420X-4083 Unified Wire Ethernet Controller
 
 pci:v00001425d00004484*
- ID_MODEL_FROM_DATABASE=T420-4084 Unified Wire Ethernet Controller
+ ID_MODEL_FROM_DATABASE=T440-4084 Unified Wire Ethernet Controller
 
 pci:v00001425d00004485*
  ID_MODEL_FROM_DATABASE=T420-4085 SFP+ Unified Wire Ethernet Controller
@@ -42420,7 +42561,7 @@ pci:v00001425d00004583*
  ID_MODEL_FROM_DATABASE=T420X-4083 Unified Wire Storage Controller
 
 pci:v00001425d00004584*
- ID_MODEL_FROM_DATABASE=T420-4084 Unified Wire Storage Controller
+ ID_MODEL_FROM_DATABASE=T440-4084 Unified Wire Storage Controller
 
 pci:v00001425d00004585*
  ID_MODEL_FROM_DATABASE=T420-4085 SFP+ Unified Wire Storage Controller
@@ -42492,7 +42633,7 @@ pci:v00001425d00004683*
  ID_MODEL_FROM_DATABASE=T420X-4083 Unified Wire Storage Controller
 
 pci:v00001425d00004684*
- ID_MODEL_FROM_DATABASE=T420-4084 Unified Wire Storage Controller
+ ID_MODEL_FROM_DATABASE=T440-4084 Unified Wire Storage Controller
 
 pci:v00001425d00004685*
  ID_MODEL_FROM_DATABASE=T420-4085 SFP+ Unified Wire Storage Controller
@@ -42564,7 +42705,7 @@ pci:v00001425d00004783*
  ID_MODEL_FROM_DATABASE=T420X-4083 Unified Wire Ethernet Controller
 
 pci:v00001425d00004784*
- ID_MODEL_FROM_DATABASE=T420-4084 Unified Wire Ethernet Controller
+ ID_MODEL_FROM_DATABASE=T440-4084 Unified Wire Ethernet Controller
 
 pci:v00001425d00004785*
  ID_MODEL_FROM_DATABASE=T420-4085 SFP+ Unified Wire Ethernet Controller
@@ -42579,76 +42720,76 @@ pci:v00001425d00004788*
  ID_MODEL_FROM_DATABASE=T440-4088 Unified Wire Ethernet Controller
 
 pci:v00001425d00004801*
- ID_MODEL_FROM_DATABASE=T420-CR Unified Wire Ethernet Controller
+ ID_MODEL_FROM_DATABASE=T420-CR Unified Wire Ethernet Controller [VF]
 
 pci:v00001425d00004802*
- ID_MODEL_FROM_DATABASE=T422-CR Unified Wire Ethernet Controller
+ ID_MODEL_FROM_DATABASE=T422-CR Unified Wire Ethernet Controller [VF]
 
 pci:v00001425d00004803*
- ID_MODEL_FROM_DATABASE=T440-CR Unified Wire Ethernet Controller
+ ID_MODEL_FROM_DATABASE=T440-CR Unified Wire Ethernet Controller [VF]
 
 pci:v00001425d00004804*
- ID_MODEL_FROM_DATABASE=T420-BCH Unified Wire Ethernet Controller
+ ID_MODEL_FROM_DATABASE=T420-BCH Unified Wire Ethernet Controller [VF]
 
 pci:v00001425d00004805*
- ID_MODEL_FROM_DATABASE=T440-BCH Unified Wire Ethernet Controller
+ ID_MODEL_FROM_DATABASE=T440-BCH Unified Wire Ethernet Controller [VF]
 
 pci:v00001425d00004806*
- ID_MODEL_FROM_DATABASE=T440-CH Unified Wire Ethernet Controller
+ ID_MODEL_FROM_DATABASE=T440-CH Unified Wire Ethernet Controller [VF]
 
 pci:v00001425d00004807*
- ID_MODEL_FROM_DATABASE=T420-SO Unified Wire Ethernet Controller
+ ID_MODEL_FROM_DATABASE=T420-SO Unified Wire Ethernet Controller [VF]
 
 pci:v00001425d00004808*
- ID_MODEL_FROM_DATABASE=T420-CX Unified Wire Ethernet Controller
+ ID_MODEL_FROM_DATABASE=T420-CX Unified Wire Ethernet Controller [VF]
 
 pci:v00001425d00004809*
- ID_MODEL_FROM_DATABASE=T420-BT Unified Wire Ethernet Controller
+ ID_MODEL_FROM_DATABASE=T420-BT Unified Wire Ethernet Controller [VF]
 
 pci:v00001425d0000480A*
- ID_MODEL_FROM_DATABASE=T404-BT Unified Wire Ethernet Controller
+ ID_MODEL_FROM_DATABASE=T404-BT Unified Wire Ethernet Controller [VF]
 
 pci:v00001425d0000480B*
- ID_MODEL_FROM_DATABASE=B420-SR Unified Wire Ethernet Controller
+ ID_MODEL_FROM_DATABASE=B420-SR Unified Wire Ethernet Controller [VF]
 
 pci:v00001425d0000480C*
- ID_MODEL_FROM_DATABASE=B404-BT Unified Wire Ethernet Controller
+ ID_MODEL_FROM_DATABASE=B404-BT Unified Wire Ethernet Controller [VF]
 
 pci:v00001425d0000480D*
- ID_MODEL_FROM_DATABASE=T480 Unified Wire Ethernet Controller
+ ID_MODEL_FROM_DATABASE=T480 Unified Wire Ethernet Controller [VF]
 
 pci:v00001425d0000480E*
- ID_MODEL_FROM_DATABASE=T440-LP-CR Unified Wire Ethernet Controller
+ ID_MODEL_FROM_DATABASE=T440-LP-CR Unified Wire Ethernet Controller [VF]
 
 pci:v00001425d0000480F*
- ID_MODEL_FROM_DATABASE=T440 [Amsterdam] Unified Wire Ethernet Controller
+ ID_MODEL_FROM_DATABASE=T440 [Amsterdam] Unified Wire Ethernet Controller [VF]
 
 pci:v00001425d00004880*
- ID_MODEL_FROM_DATABASE=T480-4080 T480 Unified Wire Ethernet Controller
+ ID_MODEL_FROM_DATABASE=T480-4080 T480 Unified Wire Ethernet Controller [VF]
 
 pci:v00001425d00004881*
- ID_MODEL_FROM_DATABASE=T440F-4081 T440-FCoE Unified Wire Ethernet Controller
+ ID_MODEL_FROM_DATABASE=T440F-4081 T440-FCoE Unified Wire Ethernet Controller [VF]
 
 pci:v00001425d00004882*
- ID_MODEL_FROM_DATABASE=T420-4082  Unified Wire Ethernet Controller
+ ID_MODEL_FROM_DATABASE=T420-4082 Unified Wire Ethernet Controller [VF]
 
 pci:v00001425d00004883*
- ID_MODEL_FROM_DATABASE=T420X-4083 Unified Wire Ethernet Controller
+ ID_MODEL_FROM_DATABASE=T420X-4083 Unified Wire Ethernet Controller [VF]
 
 pci:v00001425d00004884*
- ID_MODEL_FROM_DATABASE=T420-4084 Unified Wire Ethernet Controller
+ ID_MODEL_FROM_DATABASE=T440-4084 Unified Wire Ethernet Controller [VF]
 
 pci:v00001425d00004885*
- ID_MODEL_FROM_DATABASE=T420-4085 SFP+ Unified Wire Ethernet Controller
+ ID_MODEL_FROM_DATABASE=T420-4085 SFP+ Unified Wire Ethernet Controller [VF]
 
 pci:v00001425d00004886*
- ID_MODEL_FROM_DATABASE=T440-4086 10Gbase-T Unified Wire Ethernet Controller
+ ID_MODEL_FROM_DATABASE=T440-4086 10Gbase-T Unified Wire Ethernet Controller [VF]
 
 pci:v00001425d00004887*
- ID_MODEL_FROM_DATABASE=T440T-4087 Unified Wire Ethernet Controller
+ ID_MODEL_FROM_DATABASE=T440T-4087 Unified Wire Ethernet Controller [VF]
 
 pci:v00001425d00004888*
- ID_MODEL_FROM_DATABASE=T440-4088 Unified Wire Ethernet Controller
+ ID_MODEL_FROM_DATABASE=T440-4088 Unified Wire Ethernet Controller [VF]
 
 pci:v00001425d00005001*
  ID_MODEL_FROM_DATABASE=T520-CR Unified Wire Ethernet Controller
@@ -43041,82 +43182,82 @@ pci:v00001425d00005785*
  ID_MODEL_FROM_DATABASE=T580-5085 Unified Wire Ethernet Controller
 
 pci:v00001425d00005801*
- ID_MODEL_FROM_DATABASE=T520-CR Unified Wire Ethernet Controller
+ ID_MODEL_FROM_DATABASE=T520-CR Unified Wire Ethernet Controller [VF]
 
 pci:v00001425d00005802*
- ID_MODEL_FROM_DATABASE=T522-CR Unified Wire Ethernet Controller
+ ID_MODEL_FROM_DATABASE=T522-CR Unified Wire Ethernet Controller [VF]
 
 pci:v00001425d00005803*
- ID_MODEL_FROM_DATABASE=T540-CR Unified Wire Ethernet Controller
+ ID_MODEL_FROM_DATABASE=T540-CR Unified Wire Ethernet Controller [VF]
 
 pci:v00001425d00005804*
- ID_MODEL_FROM_DATABASE=T520-BCH Unified Wire Ethernet Controller
+ ID_MODEL_FROM_DATABASE=T520-BCH Unified Wire Ethernet Controller [VF]
 
 pci:v00001425d00005805*
- ID_MODEL_FROM_DATABASE=T540-BCH Unified Wire Ethernet Controller
+ ID_MODEL_FROM_DATABASE=T540-BCH Unified Wire Ethernet Controller [VF]
 
 pci:v00001425d00005806*
- ID_MODEL_FROM_DATABASE=T540-CH Unified Wire Ethernet Controller
+ ID_MODEL_FROM_DATABASE=T540-CH Unified Wire Ethernet Controller [VF]
 
 pci:v00001425d00005807*
- ID_MODEL_FROM_DATABASE=T520-SO Unified Wire Ethernet Controller
+ ID_MODEL_FROM_DATABASE=T520-SO Unified Wire Ethernet Controller [VF]
 
 pci:v00001425d00005808*
- ID_MODEL_FROM_DATABASE=T520-CX Unified Wire Ethernet Controller
+ ID_MODEL_FROM_DATABASE=T520-CX Unified Wire Ethernet Controller [VF]
 
 pci:v00001425d00005809*
- ID_MODEL_FROM_DATABASE=T520-BT Unified Wire Ethernet Controller
+ ID_MODEL_FROM_DATABASE=T520-BT Unified Wire Ethernet Controller [VF]
 
 pci:v00001425d0000580A*
- ID_MODEL_FROM_DATABASE=T504-BT Unified Wire Ethernet Controller
+ ID_MODEL_FROM_DATABASE=T504-BT Unified Wire Ethernet Controller [VF]
 
 pci:v00001425d0000580B*
- ID_MODEL_FROM_DATABASE=B520-SR Unified Wire Ethernet Controller
+ ID_MODEL_FROM_DATABASE=B520-SR Unified Wire Ethernet Controller [VF]
 
 pci:v00001425d0000580C*
- ID_MODEL_FROM_DATABASE=B504-BT Unified Wire Ethernet Controller
+ ID_MODEL_FROM_DATABASE=B504-BT Unified Wire Ethernet Controller [VF]
 
 pci:v00001425d0000580D*
- ID_MODEL_FROM_DATABASE=T580-CR Unified Wire Ethernet Controller
+ ID_MODEL_FROM_DATABASE=T580-CR Unified Wire Ethernet Controller [VF]
 
 pci:v00001425d0000580E*
- ID_MODEL_FROM_DATABASE=T540-LP-CR Unified Wire Ethernet Controller
+ ID_MODEL_FROM_DATABASE=T540-LP-CR Unified Wire Ethernet Controller [VF]
 
 pci:v00001425d0000580F*
- ID_MODEL_FROM_DATABASE=T540 [Amsterdam] Unified Wire Ethernet Controller
+ ID_MODEL_FROM_DATABASE=T540 [Amsterdam] Unified Wire Ethernet Controller [VF]
 
 pci:v00001425d00005810*
- ID_MODEL_FROM_DATABASE=T580-LP-CR Unified Wire Ethernet Controller
+ ID_MODEL_FROM_DATABASE=T580-LP-CR Unified Wire Ethernet Controller [VF]
 
 pci:v00001425d00005811*
- ID_MODEL_FROM_DATABASE=T520-LL-CR Unified Wire Ethernet Controller
+ ID_MODEL_FROM_DATABASE=T520-LL-CR Unified Wire Ethernet Controller [VF]
 
 pci:v00001425d00005812*
- ID_MODEL_FROM_DATABASE=T560-CR Unified Wire Ethernet Controller
+ ID_MODEL_FROM_DATABASE=T560-CR Unified Wire Ethernet Controller [VF]
 
 pci:v00001425d00005813*
- ID_MODEL_FROM_DATABASE=T580-CR Unified Wire Ethernet Controller
+ ID_MODEL_FROM_DATABASE=T580-CR Unified Wire Ethernet Controller [VF]
 
 pci:v00001425d00005814*
- ID_MODEL_FROM_DATABASE=T580-LP-SO-CR Unified Wire Ethernet Controller
+ ID_MODEL_FROM_DATABASE=T580-LP-SO-CR Unified Wire Ethernet Controller [VF]
 
 pci:v00001425d00005815*
- ID_MODEL_FROM_DATABASE=T502-BT Unified Wire Ethernet Controller
+ ID_MODEL_FROM_DATABASE=T502-BT Unified Wire Ethernet Controller [VF]
 
 pci:v00001425d00005880*
- ID_MODEL_FROM_DATABASE=T540-5080 Unified Wire Ethernet Controller
+ ID_MODEL_FROM_DATABASE=T540-5080 Unified Wire Ethernet Controller [VF]
 
 pci:v00001425d00005881*
- ID_MODEL_FROM_DATABASE=T540-5081 Unified Wire Ethernet Controller
+ ID_MODEL_FROM_DATABASE=T540-5081 Unified Wire Ethernet Controller [VF]
 
 pci:v00001425d00005883*
- ID_MODEL_FROM_DATABASE=T540-5083 Unified Wire Ethernet Controller
+ ID_MODEL_FROM_DATABASE=T540-5083 Unified Wire Ethernet Controller [VF]
 
 pci:v00001425d00005884*
- ID_MODEL_FROM_DATABASE=T580-5084 Unified Wire Ethernet Controller
+ ID_MODEL_FROM_DATABASE=T580-5084 Unified Wire Ethernet Controller [VF]
 
 pci:v00001425d00005885*
- ID_MODEL_FROM_DATABASE=T580-5085 Unified Wire Ethernet Controller
+ ID_MODEL_FROM_DATABASE=T580-5085 Unified Wire Ethernet Controller [VF]
 
 pci:v00001425d0000A000*
  ID_MODEL_FROM_DATABASE=PE10K Unified Wire Ethernet Controller
@@ -43562,6 +43703,9 @@ pci:v0000148E*
 pci:v0000148F*
  ID_VENDOR_FROM_DATABASE=Plant Equipment, Inc.
 
+pci:v0000148Fd00005370*
+ ID_MODEL_FROM_DATABASE=Dexlink AUWL15I1
+
 pci:v00001490*
  ID_VENDOR_FROM_DATABASE=Stone Microsystems PTY Ltd.
 
@@ -44885,6 +45029,9 @@ pci:v000014E4d000016A2sv0000103Csd00001916*
 pci:v000014E4d000016A2sv0000103Csd00001917*
  ID_MODEL_FROM_DATABASE=BCM57840 NetXtreme II 10/20-Gigabit Ethernet (HP FlexFabric 20Gb 2-port 630M Adapter)
 
+pci:v000014E4d000016A3*
+ ID_MODEL_FROM_DATABASE=NetXtreme BCM57786 Gigabit Ethernet PCIe
+
 pci:v000014E4d000016A4*
  ID_MODEL_FROM_DATABASE=BCM57840 NetXtreme II Ethernet Multi Function
 
@@ -47796,7 +47943,7 @@ pci:v000015B3d00001003*
  ID_MODEL_FROM_DATABASE=MT27500 Family [ConnectX-3]
 
 pci:v000015B3d00001004*
- ID_MODEL_FROM_DATABASE=MT27500 Family [ConnectX-3 Virtual Function]
+ ID_MODEL_FROM_DATABASE=MT27500/MT27520 Family [ConnectX-3/ConnectX-3 Pro Virtual Function]
 
 pci:v000015B3d00001005*
  ID_MODEL_FROM_DATABASE=MT27510 Family
@@ -47807,9 +47954,6 @@ pci:v000015B3d00001006*
 pci:v000015B3d00001007*
  ID_MODEL_FROM_DATABASE=MT27520 Family [ConnectX-3 Pro]
 
-pci:v000015B3d00001008*
- ID_MODEL_FROM_DATABASE=MT27520 Family [ConnectX-3 Pro Virtual Function]
-
 pci:v000015B3d00001009*
  ID_MODEL_FROM_DATABASE=MT27530 Family
 
@@ -49187,6 +49331,9 @@ pci:v0000168Cd0000002Bsv0000105Bsd0000E017*
 pci:v0000168Cd0000002Bsv0000105Bsd0000E023*
  ID_MODEL_FROM_DATABASE=AR9285 Wireless Network Adapter (PCI-Express) (T77H121.04 802.11bgn Wireless Half-size Mini PCIe Card)
 
+pci:v0000168Cd0000002Bsv0000105Bsd0000E025*
+ ID_MODEL_FROM_DATABASE=AR9285 Wireless Network Adapter (PCI-Express) (T77H121.05 802.11bgn Wireless Half-size Mini PCIe Card)
+
 pci:v0000168Cd0000002Bsv00001113sd0000E811*
  ID_MODEL_FROM_DATABASE=AR9285 Wireless Network Adapter (PCI-Express) (WN7811A (Toshiba PA3722U-1MPC) 802.11bgn Wireless Half-size Mini PCIe Card)
 
@@ -50471,6 +50618,9 @@ pci:v00001814d00000701sv00001737sd00000074*
 pci:v00001814d00000781*
  ID_MODEL_FROM_DATABASE=RT2790 Wireless 802.11n 1T/2R PCIe
 
+pci:v00001814d00000781sv00001814sd00002790*
+ ID_MODEL_FROM_DATABASE=RT2790 Wireless 802.11n 1T/2R PCIe
+
 pci:v00001814d00003060*
  ID_MODEL_FROM_DATABASE=RT3060 Wireless 802.11n 1T/1R
 
@@ -51911,6 +52061,9 @@ pci:v00001969d00001063*
 pci:v00001969d00001063sv00001458sd0000E000*
  ID_MODEL_FROM_DATABASE=AR8131 Gigabit Ethernet (GA-G31M-ES2L Motherboard)
 
+pci:v00001969d00001063sv000017C0sd000010D2*
+ ID_MODEL_FROM_DATABASE=AR8131 Gigabit Ethernet (Medion Akoya E7214 Notebook PC [MD98410])
+
 pci:v00001969d00001066*
  ID_MODEL_FROM_DATABASE=Attansic L2c Gigabit Ethernet
 
@@ -52358,6 +52511,18 @@ pci:v00001A2Bd0000000A*
 pci:v00001A2Bd0000000E*
  ID_MODEL_FROM_DATABASE=DSLP-104 v1.1
 
+pci:v00001A30*
+ ID_VENDOR_FROM_DATABASE=Lantiq
+
+pci:v00001A30d00000680*
+ ID_MODEL_FROM_DATABASE=MtW8171 [Hyperion II]
+
+pci:v00001A30d00000700*
+ ID_MODEL_FROM_DATABASE=Wave300 PSB8224 [Hyperion III]
+
+pci:v00001A30d00000710*
+ ID_MODEL_FROM_DATABASE=Wave300 PSB8231 [Hyperion III]
+
 pci:v00001A32*
  ID_VENDOR_FROM_DATABASE=Quanta Microsystems, Inc
 
@@ -52497,19 +52662,19 @@ pci:v00001A78*
  ID_VENDOR_FROM_DATABASE=Virident Systems Inc.
 
 pci:v00001A78d00000031*
- ID_MODEL_FROM_DATABASE=Virident FlashMAX Drive
+ ID_MODEL_FROM_DATABASE=FlashMAX Drive
 
 pci:v00001A78d00000031sv00001A78sd00000034*
- ID_MODEL_FROM_DATABASE=Virident FlashMAX Drive (FlashMAX PCIe SSD [rev 3])
+ ID_MODEL_FROM_DATABASE=FlashMAX Drive (FlashMAX PCIe SSD [rev 3])
 
 pci:v00001A78d00000031sv00001A78sd00000037*
- ID_MODEL_FROM_DATABASE=Virident FlashMAX Drive (FlashMAX PCIe SSD [rev 3D])
+ ID_MODEL_FROM_DATABASE=FlashMAX Drive (FlashMAX PCIe SSD [rev 3D])
 
 pci:v00001A78d00000031sv00001A78sd00000038*
- ID_MODEL_FROM_DATABASE=Virident FlashMAX Drive (FlashMAX PCIe SSD [rev 4])
+ ID_MODEL_FROM_DATABASE=FlashMAX Drive (FlashMAX PCIe SSD [rev 4])
 
 pci:v00001A78d00000031sv00001A78sd00000039*
- ID_MODEL_FROM_DATABASE=Virident FlashMAX Drive (FlashMAX PCIe SSD [rev 4D])
+ ID_MODEL_FROM_DATABASE=FlashMAX Drive (FlashMAX PCIe SSD [rev 4D])
 
 pci:v00001A78d00000040*
  ID_MODEL_FROM_DATABASE=FlashMAX II
@@ -52520,6 +52685,9 @@ pci:v00001A78d00000041*
 pci:v00001A78d00000042*
  ID_MODEL_FROM_DATABASE=FlashMAX II
 
+pci:v00001A78d00000050*
+ ID_MODEL_FROM_DATABASE=FlashMAX III
+
 pci:v00001A84*
  ID_VENDOR_FROM_DATABASE=Commex Technologies
 
@@ -52682,6 +52850,15 @@ pci:v00001AEDd00001008*
 pci:v00001AEDd00002001*
  ID_MODEL_FROM_DATABASE=ioDrive2
 
+pci:v00001AEDd00003001*
+ ID_MODEL_FROM_DATABASE=ioMemory FHHL
+
+pci:v00001AEDd00003002*
+ ID_MODEL_FROM_DATABASE=ioMemory HHHL
+
+pci:v00001AEDd00003003*
+ ID_MODEL_FROM_DATABASE=ioMemory Mezzanine
+
 pci:v00001AEE*
  ID_VENDOR_FROM_DATABASE=Caustic Graphics Inc.
 
@@ -52775,6 +52952,9 @@ pci:v00001B21d00001080*
 pci:v00001B21d00001080sv00001849sd00001080*
  ID_MODEL_FROM_DATABASE=ASM1083/1085 PCIe to PCI Bridge (Motherboard)
 
+pci:v00001B21d00001142*
+ ID_MODEL_FROM_DATABASE=ASM1042A USB 3.0 Host Controller
+
 pci:v00001B2C*
  ID_VENDOR_FROM_DATABASE=Opal-RT Technologies Inc.
 
@@ -52916,6 +53096,9 @@ pci:v00001B4Bd00009485*
 pci:v00001B55*
  ID_VENDOR_FROM_DATABASE=NetUP Inc.
 
+pci:v00001B55d000018F6*
+ ID_MODEL_FROM_DATABASE=Dual DVB Universal CI card
+
 pci:v00001B55d00002A2C*
  ID_MODEL_FROM_DATABASE=Dual DVB-S2-CI card
 
@@ -53135,6 +53318,9 @@ pci:v00001CE4d00000002*
 pci:v00001CF7*
  ID_VENDOR_FROM_DATABASE=Subspace Dynamics
 
+pci:v00001D21*
+ ID_VENDOR_FROM_DATABASE=Allo
+
 pci:v00001D44*
  ID_VENDOR_FROM_DATABASE=DPT
 
@@ -54956,15 +55142,30 @@ pci:v00008086d00000044sv00001025sd00000347*
 pci:v00008086d00000044sv00001025sd00000487*
  ID_MODEL_FROM_DATABASE=Core Processor DRAM Controller (TravelMate 5742)
 
+pci:v00008086d00000044sv0000144Dsd0000C06A*
+ ID_MODEL_FROM_DATABASE=Core Processor DRAM Controller (R730 Laptop)
+
+pci:v00008086d00000044sv000017C0sd000010D2*
+ ID_MODEL_FROM_DATABASE=Core Processor DRAM Controller (Medion Akoya E7214 Notebook PC [MD98410])
+
 pci:v00008086d00000044sv0000E4BFsd000050C1*
  ID_MODEL_FROM_DATABASE=Core Processor DRAM Controller (PC1-GROOVE)
 
 pci:v00008086d00000045*
  ID_MODEL_FROM_DATABASE=Core Processor PCI Express x16 Root Port
 
+pci:v00008086d00000045sv000017C0sd000010D2*
+ ID_MODEL_FROM_DATABASE=Core Processor PCI Express x16 Root Port (Medion Akoya E7214 Notebook PC [MD98410])
+
 pci:v00008086d00000046*
  ID_MODEL_FROM_DATABASE=Core Processor Integrated Graphics Controller
 
+pci:v00008086d00000046sv0000144Dsd0000C06A*
+ ID_MODEL_FROM_DATABASE=Core Processor Integrated Graphics Controller (R730 Laptop)
+
+pci:v00008086d00000046sv000017C0sd000010D9*
+ ID_MODEL_FROM_DATABASE=Core Processor Integrated Graphics Controller (Medion Akoya E7214 Notebook PC [MD98410])
+
 pci:v00008086d00000046sv0000E4BFsd000050C1*
  ID_MODEL_FROM_DATABASE=Core Processor Integrated Graphics Controller (PC1-GROOVE)
 
@@ -55238,6 +55439,9 @@ pci:v00008086d00000150*
 pci:v00008086d00000150sv00001043sd000084CA*
  ID_MODEL_FROM_DATABASE=Xeon E3-1200 v2/3rd Gen Core processor DRAM Controller (P8 series motherboard)
 
+pci:v00008086d00000150sv000015D9sd00000624*
+ ID_MODEL_FROM_DATABASE=Xeon E3-1200 v2/3rd Gen Core processor DRAM Controller (X9SCM-F Motherboard)
+
 pci:v00008086d00000150sv00001849sd00000150*
  ID_MODEL_FROM_DATABASE=Xeon E3-1200 v2/3rd Gen Core processor DRAM Controller (Motherboard)
 
@@ -55445,6 +55649,9 @@ pci:v00008086d00000416sv000017AAsd0000220E*
 pci:v00008086d0000041A*
  ID_MODEL_FROM_DATABASE=Xeon E3-1200 v3 Processor Integrated Graphics Controller
 
+pci:v00008086d0000041E*
+ ID_MODEL_FROM_DATABASE=4th Generation Core Processor Family Integrated Graphics Controller
+
 pci:v00008086d00000433*
  ID_MODEL_FROM_DATABASE=Coleto Creek ACC - ME/CPM interface
 
@@ -56727,241 +56934,85 @@ pci:v00008086d00000EFD*
  ID_MODEL_FROM_DATABASE=Xeon E7 v2/Xeon E5 v2/Core i7 DDRIO
 
 pci:v00008086d00000F00*
- ID_MODEL_FROM_DATABASE=ValleyView SSA-CUnit
-
-pci:v00008086d00000F01*
- ID_MODEL_FROM_DATABASE=ValleyView SSA-CUnit
-
-pci:v00008086d00000F02*
- ID_MODEL_FROM_DATABASE=ValleyView SSA-CUnit
-
-pci:v00008086d00000F03*
- ID_MODEL_FROM_DATABASE=ValleyView SSA-CUnit
+ ID_MODEL_FROM_DATABASE=Atom Processor Z36xxx/Z37xxx Series SoC Transaction Register
 
 pci:v00008086d00000F04*
- ID_MODEL_FROM_DATABASE=ValleyView High Definition Audio Controller
-
-pci:v00008086d00000F05*
- ID_MODEL_FROM_DATABASE=ValleyView High Definition Audio Controller
+ ID_MODEL_FROM_DATABASE=Atom Processor Z36xxx/Z37xxx Series High Definition Audio Controller
 
 pci:v00008086d00000F06*
- ID_MODEL_FROM_DATABASE=ValleyView LPIO1 DMA Controller
-
-pci:v00008086d00000F07*
- ID_MODEL_FROM_DATABASE=ValleyView LPIO1 DMA Controller
+ ID_MODEL_FROM_DATABASE=Atom Processor Z36xxx/Z37xxx Series LPIO1 DMA Controller
 
 pci:v00008086d00000F08*
- ID_MODEL_FROM_DATABASE=ValleyView LPIO1 PWM Controller
+ ID_MODEL_FROM_DATABASE=Atom Processor Z36xxx/Z37xxx Series LPIO1 PWM Controller
 
 pci:v00008086d00000F09*
- ID_MODEL_FROM_DATABASE=ValleyView LPIO1 PWM Controller
+ ID_MODEL_FROM_DATABASE=Atom Processor Z36xxx/Z37xxx Series LPIO1 PWM Controller
 
 pci:v00008086d00000F0A*
- ID_MODEL_FROM_DATABASE=ValleyView LPIO1 HSUART Controller #1
-
-pci:v00008086d00000F0B*
- ID_MODEL_FROM_DATABASE=ValleyView LPIO1 HSUART Controller #1
+ ID_MODEL_FROM_DATABASE=Atom Processor Z36xxx/Z37xxx Series LPIO1 HSUART Controller #1
 
 pci:v00008086d00000F0C*
- ID_MODEL_FROM_DATABASE=ValleyView LPIO1 HSUART Controller #2
-
-pci:v00008086d00000F0D*
- ID_MODEL_FROM_DATABASE=ValleyView LPIO1 HSUART Controller #2
+ ID_MODEL_FROM_DATABASE=Atom Processor Z36xxx/Z37xxx Series LPIO1 HSUART Controller #2
 
 pci:v00008086d00000F0E*
- ID_MODEL_FROM_DATABASE=ValleyView LPIO1 SPI Controller
-
-pci:v00008086d00000F0F*
- ID_MODEL_FROM_DATABASE=ValleyView LPIO1 SPI Controller
-
-pci:v00008086d00000F10*
- ID_MODEL_FROM_DATABASE=ValleyView LPIO1 Controller
-
-pci:v00008086d00000F11*
- ID_MODEL_FROM_DATABASE=ValleyView LPIO1 Controller
-
-pci:v00008086d00000F12*
- ID_MODEL_FROM_DATABASE=ValleyView SMBus Controller
-
-pci:v00008086d00000F13*
- ID_MODEL_FROM_DATABASE=ValleyView SMBus Controller
+ ID_MODEL_FROM_DATABASE=Atom Processor Z36xxx/Z37xxx Series LPIO1 SPI Controller
 
 pci:v00008086d00000F14*
- ID_MODEL_FROM_DATABASE=ValleyView SDIO Controller
+ ID_MODEL_FROM_DATABASE=Atom Processor Z36xxx/Z37xxx Series SDIO Controller
 
 pci:v00008086d00000F15*
- ID_MODEL_FROM_DATABASE=ValleyView SDIO Controller
+ ID_MODEL_FROM_DATABASE=Atom Processor Z36xxx/Z37xxx Series SDIO Controller
 
 pci:v00008086d00000F16*
- ID_MODEL_FROM_DATABASE=ValleyView SDIO Controller
-
-pci:v00008086d00000F17*
- ID_MODEL_FROM_DATABASE=ValleyView SDIO Controller
+ ID_MODEL_FROM_DATABASE=Atom Processor Z36xxx/Z37xxx Series SDIO Controller
 
 pci:v00008086d00000F18*
- ID_MODEL_FROM_DATABASE=ValleyView SEC
-
-pci:v00008086d00000F19*
- ID_MODEL_FROM_DATABASE=ValleyView SEC
-
-pci:v00008086d00000F1A*
- ID_MODEL_FROM_DATABASE=ValleyView SEC
-
-pci:v00008086d00000F1B*
- ID_MODEL_FROM_DATABASE=ValleyView SEC
+ ID_MODEL_FROM_DATABASE=Atom Processor Z36xxx/Z37xxx Series Trusted Execution Engine
 
 pci:v00008086d00000F1C*
- ID_MODEL_FROM_DATABASE=ValleyView Power Control Unit
-
-pci:v00008086d00000F1D*
- ID_MODEL_FROM_DATABASE=ValleyView Power Control Unit
-
-pci:v00008086d00000F1E*
- ID_MODEL_FROM_DATABASE=ValleyView Power Control Unit
-
-pci:v00008086d00000F1F*
- ID_MODEL_FROM_DATABASE=ValleyView Power Control Unit
-
-pci:v00008086d00000F20*
- ID_MODEL_FROM_DATABASE=ValleyView 4-Port SATA Storage Controller
-
-pci:v00008086d00000F21*
- ID_MODEL_FROM_DATABASE=ValleyView 4-Port SATA Storage Controller
-
-pci:v00008086d00000F22*
- ID_MODEL_FROM_DATABASE=ValleyView 6-Port SATA AHCI Controller
-
-pci:v00008086d00000F23*
- ID_MODEL_FROM_DATABASE=ValleyView 6-Port SATA AHCI Controller
-
-pci:v00008086d00000F24*
- ID_MODEL_FROM_DATABASE=ValleyView SATA RAID Storage Controller
-
-pci:v00008086d00000F25*
- ID_MODEL_FROM_DATABASE=ValleyView SATA RAID Storage Controller
-
-pci:v00008086d00000F26*
- ID_MODEL_FROM_DATABASE=ValleyView 2-Port SATA Storage Controller
-
-pci:v00008086d00000F27*
- ID_MODEL_FROM_DATABASE=ValleyView 2-Port SATA Storage Controller
+ ID_MODEL_FROM_DATABASE=Atom Processor Z36xxx/Z37xxx Series Power Control Unit
 
 pci:v00008086d00000F28*
- ID_MODEL_FROM_DATABASE=ValleyView LPE Audio Controller
-
-pci:v00008086d00000F29*
- ID_MODEL_FROM_DATABASE=ValleyView LPE Audio Controller
-
-pci:v00008086d00000F2A*
- ID_MODEL_FROM_DATABASE=ValleyView LPE Audio Controller
-
-pci:v00008086d00000F2B*
- ID_MODEL_FROM_DATABASE=ValleyView LPE Audio Controller
-
-pci:v00008086d00000F2E*
- ID_MODEL_FROM_DATABASE=ValleyView SATA RAID Storage Controller
-
-pci:v00008086d00000F2F*
- ID_MODEL_FROM_DATABASE=ValleyView SATA RAID Storage Controller
-
-pci:v00008086d00000F30*
- ID_MODEL_FROM_DATABASE=ValleyView Gen7
+ ID_MODEL_FROM_DATABASE=Atom Processor Z36xxx/Z37xxx Series LPE Audio Controller
 
 pci:v00008086d00000F31*
- ID_MODEL_FROM_DATABASE=ValleyView Gen7
-
-pci:v00008086d00000F32*
- ID_MODEL_FROM_DATABASE=ValleyView Gen7
-
-pci:v00008086d00000F33*
- ID_MODEL_FROM_DATABASE=ValleyView Gen7
+ ID_MODEL_FROM_DATABASE=Atom Processor Z36xxx/Z37xxx Series Graphics & Display
 
 pci:v00008086d00000F34*
- ID_MODEL_FROM_DATABASE=ValleyView USB Enhanced Host Controller
+ ID_MODEL_FROM_DATABASE=Atom Processor Z36xxx/Z37xxx Series USB EHCI
 
 pci:v00008086d00000F35*
- ID_MODEL_FROM_DATABASE=ValleyView USB xHCI Host Controller
-
-pci:v00008086d00000F36*
- ID_MODEL_FROM_DATABASE=ValleyView USB xHCI Host Controller
+ ID_MODEL_FROM_DATABASE=Atom Processor Z36xxx/Z37xxx Series USB xHCI
 
 pci:v00008086d00000F37*
- ID_MODEL_FROM_DATABASE=ValleyView OTG
+ ID_MODEL_FROM_DATABASE=Atom Processor Z36xxx/Z37xxx Series OTG USB Device
 
 pci:v00008086d00000F38*
- ID_MODEL_FROM_DATABASE=ValleyView ISP
-
-pci:v00008086d00000F39*
- ID_MODEL_FROM_DATABASE=ValleyView ISP
-
-pci:v00008086d00000F3A*
- ID_MODEL_FROM_DATABASE=ValleyView ISP
-
-pci:v00008086d00000F3B*
- ID_MODEL_FROM_DATABASE=ValleyView ISP
-
-pci:v00008086d00000F3C*
- ID_MODEL_FROM_DATABASE=ValleyView ISP
-
-pci:v00008086d00000F3D*
- ID_MODEL_FROM_DATABASE=ValleyView ISP
-
-pci:v00008086d00000F3E*
- ID_MODEL_FROM_DATABASE=ValleyView ISP
-
-pci:v00008086d00000F3F*
- ID_MODEL_FROM_DATABASE=ValleyView ISP
+ ID_MODEL_FROM_DATABASE=Atom Processor Z36xxx/Z37xxx Series Camera ISP
 
 pci:v00008086d00000F40*
- ID_MODEL_FROM_DATABASE=ValleyView LPIO2 DMA Controller
+ ID_MODEL_FROM_DATABASE=Atom Processor Z36xxx/Z37xxx Series LPIO2 DMA Controller
 
 pci:v00008086d00000F41*
- ID_MODEL_FROM_DATABASE=ValleyView LPIO2 I2C Controller #1
+ ID_MODEL_FROM_DATABASE=Atom Processor Z36xxx/Z37xxx Series LPIO2 I2C Controller #1
 
 pci:v00008086d00000F42*
- ID_MODEL_FROM_DATABASE=ValleyView LPIO2 I2C Controller #2
+ ID_MODEL_FROM_DATABASE=Atom Processor Z36xxx/Z37xxx Series LPIO2 I2C Controller #2
 
 pci:v00008086d00000F43*
- ID_MODEL_FROM_DATABASE=ValleyView LPIO2 I2C Controller #3
+ ID_MODEL_FROM_DATABASE=Atom Processor Z36xxx/Z37xxx Series LPIO2 I2C Controller #3
 
 pci:v00008086d00000F44*
- ID_MODEL_FROM_DATABASE=ValleyView LPIO2 I2C Controller #4
+ ID_MODEL_FROM_DATABASE=Atom Processor Z36xxx/Z37xxx Series LPIO2 I2C Controller #4
 
 pci:v00008086d00000F45*
- ID_MODEL_FROM_DATABASE=ValleyView LPIO2 I2C Controller #5
+ ID_MODEL_FROM_DATABASE=Atom Processor Z36xxx/Z37xxx Series LPIO2 I2C Controller #5
 
 pci:v00008086d00000F46*
- ID_MODEL_FROM_DATABASE=ValleyView LPIO2 I2C Controller #6
+ ID_MODEL_FROM_DATABASE=Atom Processor Z36xxx/Z37xxx Series LPIO2 I2C Controller #6
 
 pci:v00008086d00000F47*
- ID_MODEL_FROM_DATABASE=ValleyView LPIO2 I2C Controller #7
-
-pci:v00008086d00000F48*
- ID_MODEL_FROM_DATABASE=ValleyView PCI Express Root Port
-
-pci:v00008086d00000F49*
- ID_MODEL_FROM_DATABASE=ValleyView PCI Express Root Port
-
-pci:v00008086d00000F4A*
- ID_MODEL_FROM_DATABASE=ValleyView PCI Express Root Port
-
-pci:v00008086d00000F4B*
- ID_MODEL_FROM_DATABASE=ValleyView PCI Express Root Port
-
-pci:v00008086d00000F4C*
- ID_MODEL_FROM_DATABASE=ValleyView PCI Express Root Port
-
-pci:v00008086d00000F4D*
- ID_MODEL_FROM_DATABASE=ValleyView PCI Express Root Port
-
-pci:v00008086d00000F4E*
- ID_MODEL_FROM_DATABASE=ValleyView PCI Express Root Port
-
-pci:v00008086d00000F4F*
- ID_MODEL_FROM_DATABASE=ValleyView PCI Express Root Port
-
-pci:v00008086d00000F50*
- ID_MODEL_FROM_DATABASE=ValleyView MIPI-HSI Controller
+ ID_MODEL_FROM_DATABASE=Atom Processor Z36xxx/Z37xxx Series LPIO2 I2C Controller #7
 
 pci:v00008086d00001000*
  ID_MODEL_FROM_DATABASE=82542 Gigabit Ethernet Controller (Fiber)
@@ -57842,6 +57893,9 @@ pci:v00008086d00001091*
 pci:v00008086d00001092*
  ID_MODEL_FROM_DATABASE=PRO/100 VE Network Connection
 
+pci:v00008086d00001092sv00001071sd00008209*
+ ID_MODEL_FROM_DATABASE=PRO/100 VE Network Connection (Medion MIM 2240 Notebook PC [MD98100])
+
 pci:v00008086d00001093*
  ID_MODEL_FROM_DATABASE=PRO/100 VM Network Connection
 
@@ -59403,7 +59457,7 @@ pci:v00008086d0000154Asv00008086sd0000011C*
  ID_MODEL_FROM_DATABASE=Ethernet Server Adapter X520-4 (Ethernet Converged Network Adapter X520-4)
 
 pci:v00008086d0000154C*
- ID_MODEL_FROM_DATABASE=XL710 X710 Virtual Function
+ ID_MODEL_FROM_DATABASE=XL710/X710 Virtual Function
 
 pci:v00008086d0000154D*
  ID_MODEL_FROM_DATABASE=Ethernet 10G 2P X520 Adapter
@@ -59460,34 +59514,37 @@ pci:v00008086d00001570*
  ID_MODEL_FROM_DATABASE=Ethernet Connection I219-V
 
 pci:v00008086d00001571*
- ID_MODEL_FROM_DATABASE=XL710 X710 Virtual Function
+ ID_MODEL_FROM_DATABASE=XL710/X710 Virtual Function
 
 pci:v00008086d00001572*
- ID_MODEL_FROM_DATABASE=Ethernet 10G 2P X710 Adapter
+ ID_MODEL_FROM_DATABASE=Ethernet Controller X710 for 10GbE SFP+
 
 pci:v00008086d00001572sv00001028sd00001F99*
- ID_MODEL_FROM_DATABASE=Ethernet 10G 2P X710 Adapter (Ethernet 10G 4P X710/I350 rNDC)
+ ID_MODEL_FROM_DATABASE=Ethernet Controller X710 for 10GbE SFP+ (Ethernet 10G 4P X710/I350 rNDC)
+
+pci:v00008086d00001572sv00008086sd00000000*
+ ID_MODEL_FROM_DATABASE=Ethernet Controller X710 for 10GbE SFP+ (Ethernet Converged Network Adapter X710)
 
 pci:v00008086d00001572sv00008086sd00000001*
- ID_MODEL_FROM_DATABASE=Ethernet 10G 2P X710 Adapter (Ethernet Converged Network Adapter X710-4)
+ ID_MODEL_FROM_DATABASE=Ethernet Controller X710 for 10GbE SFP+ (Ethernet Converged Network Adapter X710-4)
 
 pci:v00008086d00001572sv00008086sd00000002*
- ID_MODEL_FROM_DATABASE=Ethernet 10G 2P X710 Adapter (Ethernet Converged Network Adapter X710-4)
+ ID_MODEL_FROM_DATABASE=Ethernet Controller X710 for 10GbE SFP+ (Ethernet Converged Network Adapter X710-4)
 
 pci:v00008086d00001572sv00008086sd00000004*
- ID_MODEL_FROM_DATABASE=Ethernet 10G 2P X710 Adapter (Ethernet Converged Network Adapter X710-4)
+ ID_MODEL_FROM_DATABASE=Ethernet Controller X710 for 10GbE SFP+ (Ethernet Converged Network Adapter X710-4)
 
 pci:v00008086d00001572sv00008086sd00000005*
- ID_MODEL_FROM_DATABASE=Ethernet 10G 2P X710 Adapter (Ethernet 10G 4P X710 Adapter)
+ ID_MODEL_FROM_DATABASE=Ethernet Controller X710 for 10GbE SFP+ (Ethernet 10G 4P X710 Adapter)
 
 pci:v00008086d00001572sv00008086sd00000006*
- ID_MODEL_FROM_DATABASE=Ethernet 10G 2P X710 Adapter (Ethernet 10G2P X710 Adapter)
+ ID_MODEL_FROM_DATABASE=Ethernet Controller X710 for 10GbE SFP+ (Ethernet 10G 2P X710 Adapter)
 
 pci:v00008086d00001572sv00008086sd00000007*
- ID_MODEL_FROM_DATABASE=Ethernet 10G 2P X710 Adapter (Ethernet Converged Network Adapter X710-2)
+ ID_MODEL_FROM_DATABASE=Ethernet Controller X710 for 10GbE SFP+ (Ethernet Converged Network Adapter X710-2)
 
 pci:v00008086d00001572sv00008086sd00000008*
- ID_MODEL_FROM_DATABASE=Ethernet 10G 2P X710 Adapter (Ethernet Converged Network Adapter X710-2)
+ ID_MODEL_FROM_DATABASE=Ethernet Controller X710 for 10GbE SFP+ (Ethernet Converged Network Adapter X710-2)
 
 pci:v00008086d0000157B*
  ID_MODEL_FROM_DATABASE=I210 Gigabit Network Connection
@@ -59496,17 +59553,20 @@ pci:v00008086d0000157C*
  ID_MODEL_FROM_DATABASE=I210 Gigabit Backplane Connection
 
 pci:v00008086d00001580*
- ID_MODEL_FROM_DATABASE=Ethernet Controller XL710 for 40Gbe backplane
+ ID_MODEL_FROM_DATABASE=Ethernet Controller XL710 for 40GbE backplane
 
 pci:v00008086d00001581*
- ID_MODEL_FROM_DATABASE=Ethernet Controller X710 for 10Gbe backplane
+ ID_MODEL_FROM_DATABASE=Ethernet Controller X710 for 10GbE backplane
 
 pci:v00008086d00001581sv00001028sd00001F98*
- ID_MODEL_FROM_DATABASE=Ethernet Controller X710 for 10Gbe backplane (Ethernet 10G 4P X710-k bNDC)
+ ID_MODEL_FROM_DATABASE=Ethernet Controller X710 for 10GbE backplane (Ethernet 10G 4P X710-k bNDC)
 
 pci:v00008086d00001583*
  ID_MODEL_FROM_DATABASE=Ethernet Controller XL710 for 40GbE QSFP+
 
+pci:v00008086d00001583sv00008086sd00000000*
+ ID_MODEL_FROM_DATABASE=Ethernet Controller XL710 for 40GbE QSFP+ (Ethernet Converged Network Adapter XL710-Q2)
+
 pci:v00008086d00001583sv00008086sd00000001*
  ID_MODEL_FROM_DATABASE=Ethernet Controller XL710 for 40GbE QSFP+ (Ethernet Converged Network Adapter XL710-Q2)
 
@@ -59519,6 +59579,9 @@ pci:v00008086d00001583sv00008086sd00000003*
 pci:v00008086d00001584*
  ID_MODEL_FROM_DATABASE=Ethernet Controller XL710 for 40GbE QSFP+
 
+pci:v00008086d00001584sv00008086sd00000000*
+ ID_MODEL_FROM_DATABASE=Ethernet Controller XL710 for 40GbE QSFP+ (Ethernet Converged Network Adapter XL710-Q1)
+
 pci:v00008086d00001584sv00008086sd00000001*
  ID_MODEL_FROM_DATABASE=Ethernet Controller XL710 for 40GbE QSFP+ (Ethernet Converged Network Adapter XL710-Q1)
 
@@ -61244,9 +61307,15 @@ pci:v00008086d00002448sv0000104Dsd0000902D*
 pci:v00008086d00002448sv0000105Bsd00000D7C*
  ID_MODEL_FROM_DATABASE=82801 Mobile PCI Bridge (D270S/D250S Motherboard)
 
+pci:v00008086d00002448sv00001071sd00008209*
+ ID_MODEL_FROM_DATABASE=82801 Mobile PCI Bridge (Medion MIM 2240 Notebook PC [MD98100])
+
 pci:v00008086d00002448sv0000144Dsd0000C00C*
  ID_MODEL_FROM_DATABASE=82801 Mobile PCI Bridge (P30 notebook)
 
+pci:v00008086d00002448sv0000144Dsd0000C06A*
+ ID_MODEL_FROM_DATABASE=82801 Mobile PCI Bridge (R730 Laptop)
+
 pci:v00008086d00002448sv0000144Dsd0000C072*
  ID_MODEL_FROM_DATABASE=82801 Mobile PCI Bridge (Notebook N150P)
 
@@ -61259,6 +61328,12 @@ pci:v00008086d00002448sv00001734sd00001055*
 pci:v00008086d00002448sv000017AAsd000020AE*
  ID_MODEL_FROM_DATABASE=82801 Mobile PCI Bridge (ThinkPad T61/R61)
 
+pci:v00008086d00002448sv000017C0sd000010D2*
+ ID_MODEL_FROM_DATABASE=82801 Mobile PCI Bridge (Medion Akoya E7214 Notebook PC [MD98410])
+
+pci:v00008086d00002448sv000017C0sd00004083*
+ ID_MODEL_FROM_DATABASE=82801 Mobile PCI Bridge (Medion WIM 2210 Notebook PC [MD96850])
+
 pci:v00008086d00002448sv00008086sd0000544B*
  ID_MODEL_FROM_DATABASE=82801 Mobile PCI Bridge (Desktop Board D425KT)
 
@@ -61872,7 +61947,7 @@ pci:v00008086d000024C5sv00001014sd00000267*
  ID_MODEL_FROM_DATABASE=82801DB/DBL/DBM (ICH4/ICH4-L/ICH4-M) AC'97 Audio Controller (NetVista A30p)
 
 pci:v00008086d000024C5sv00001014sd00000537*
- ID_MODEL_FROM_DATABASE=82801DB/DBL/DBM (ICH4/ICH4-L/ICH4-M) AC'97 Audio Controller (ThinkPad T41)
+ ID_MODEL_FROM_DATABASE=82801DB/DBL/DBM (ICH4/ICH4-L/ICH4-M) AC'97 Audio Controller (ThinkPad T4x Series)
 
 pci:v00008086d000024C5sv00001014sd0000055F*
  ID_MODEL_FROM_DATABASE=82801DB/DBL/DBM (ICH4/ICH4-L/ICH4-M) AC'97 Audio Controller (Thinkpad R50e model 1634)
@@ -61944,7 +62019,7 @@ pci:v00008086d000024C6*
  ID_MODEL_FROM_DATABASE=82801DB/DBL/DBM (ICH4/ICH4-L/ICH4-M) AC'97 Modem Controller
 
 pci:v00008086d000024C6sv00001014sd00000524*
- ID_MODEL_FROM_DATABASE=82801DB/DBL/DBM (ICH4/ICH4-L/ICH4-M) AC'97 Modem Controller (ThinkPad T41)
+ ID_MODEL_FROM_DATABASE=82801DB/DBL/DBM (ICH4/ICH4-L/ICH4-M) AC'97 Modem Controller (ThinkPad T4x Series)
 
 pci:v00008086d000024C6sv00001014sd00000525*
  ID_MODEL_FROM_DATABASE=82801DB/DBL/DBM (ICH4/ICH4-L/ICH4-M) AC'97 Modem Controller (ThinkPad)
@@ -64358,6 +64433,9 @@ pci:v00008086d000027A0sv0000103Csd000030A3*
 pci:v00008086d000027A0sv00001043sd00001237*
  ID_MODEL_FROM_DATABASE=Mobile 945GM/PM/GMS, 943/940GML and 945GT Express Memory Controller Hub (A6J-Q008)
 
+pci:v00008086d000027A0sv00001071sd00008209*
+ ID_MODEL_FROM_DATABASE=Mobile 945GM/PM/GMS, 943/940GML and 945GT Express Memory Controller Hub (Medion MIM 2240 Notebook PC [MD98100])
+
 pci:v00008086d000027A0sv000017AAsd00002015*
  ID_MODEL_FROM_DATABASE=Mobile 945GM/PM/GMS, 943/940GML and 945GT Express Memory Controller Hub (ThinkPad T60)
 
@@ -64373,6 +64451,9 @@ pci:v00008086d000027A1sv0000103Csd0000309F*
 pci:v00008086d000027A1sv0000103Csd000030A3*
  ID_MODEL_FROM_DATABASE=Mobile 945GM/PM/GMS, 943/940GML and 945GT Express PCI Express Root Port (Compaq nw8440)
 
+pci:v00008086d000027A1sv00001071sd00008209*
+ ID_MODEL_FROM_DATABASE=Mobile 945GM/PM/GMS, 943/940GML and 945GT Express PCI Express Root Port (Medion MIM 2240 Notebook PC [MD98100])
+
 pci:v00008086d000027A2*
  ID_MODEL_FROM_DATABASE=Mobile 945GM/GMS, 943/940GML Express Integrated Graphics Controller
 
@@ -64457,6 +64538,9 @@ pci:v00008086d000027B9sv0000103Csd000030A1*
 pci:v00008086d000027B9sv0000103Csd000030A3*
  ID_MODEL_FROM_DATABASE=82801GBM (ICH7-M) LPC Interface Bridge (Compaq nw8440)
 
+pci:v00008086d000027B9sv00001071sd00008209*
+ ID_MODEL_FROM_DATABASE=82801GBM (ICH7-M) LPC Interface Bridge (Medion MIM 2240 Notebook PC [MD98100])
+
 pci:v00008086d000027B9sv000010F7sd00008338*
  ID_MODEL_FROM_DATABASE=82801GBM (ICH7-M) LPC Interface Bridge (Panasonic CF-Y5 laptop)
 
@@ -64568,6 +64652,9 @@ pci:v00008086d000027C4sv00001025sd0000006C*
 pci:v00008086d000027C4sv00001028sd000001D7*
  ID_MODEL_FROM_DATABASE=82801GBM/GHM (ICH7-M Family) SATA Controller [IDE mode] (XPS M1210)
 
+pci:v00008086d000027C4sv00001071sd00008209*
+ ID_MODEL_FROM_DATABASE=82801GBM/GHM (ICH7-M Family) SATA Controller [IDE mode] (Medion MIM 2240 Notebook PC [MD98100])
+
 pci:v00008086d000027C4sv000017AAsd0000200E*
  ID_MODEL_FROM_DATABASE=82801GBM/GHM (ICH7-M Family) SATA Controller [IDE mode] (ThinkPad T60)
 
@@ -64625,6 +64712,9 @@ pci:v00008086d000027C8sv00001043sd00008179*
 pci:v00008086d000027C8sv0000105Bsd00000D7C*
  ID_MODEL_FROM_DATABASE=NM10/ICH7 Family USB UHCI Controller #1 (D270S/D250S Motherboard)
 
+pci:v00008086d000027C8sv00001071sd00008209*
+ ID_MODEL_FROM_DATABASE=NM10/ICH7 Family USB UHCI Controller #1 (Medion MIM 2240 Notebook PC [MD98100])
+
 pci:v00008086d000027C8sv0000107Bsd00005048*
  ID_MODEL_FROM_DATABASE=NM10/ICH7 Family USB UHCI Controller #1 (E4500)
 
@@ -64691,6 +64781,9 @@ pci:v00008086d000027C9sv00001043sd00008179*
 pci:v00008086d000027C9sv0000105Bsd00000D7C*
  ID_MODEL_FROM_DATABASE=NM10/ICH7 Family USB UHCI Controller #2 (D270S/D250S Motherboard)
 
+pci:v00008086d000027C9sv00001071sd00008209*
+ ID_MODEL_FROM_DATABASE=NM10/ICH7 Family USB UHCI Controller #2 (Medion MIM 2240 Notebook PC [MD98100])
+
 pci:v00008086d000027C9sv0000107Bsd00005048*
  ID_MODEL_FROM_DATABASE=NM10/ICH7 Family USB UHCI Controller #2 (E4500)
 
@@ -64757,6 +64850,9 @@ pci:v00008086d000027CAsv00001043sd00008179*
 pci:v00008086d000027CAsv0000105Bsd00000D7C*
  ID_MODEL_FROM_DATABASE=NM10/ICH7 Family USB UHCI Controller #3 (D270S/D250S Motherboard)
 
+pci:v00008086d000027CAsv00001071sd00008209*
+ ID_MODEL_FROM_DATABASE=NM10/ICH7 Family USB UHCI Controller #3 (Medion MIM 2240 Notebook PC [MD98100])
+
 pci:v00008086d000027CAsv0000107Bsd00005048*
  ID_MODEL_FROM_DATABASE=NM10/ICH7 Family USB UHCI Controller #3 (E4500)
 
@@ -64817,6 +64913,9 @@ pci:v00008086d000027CBsv00001043sd00008179*
 pci:v00008086d000027CBsv0000105Bsd00000D7C*
  ID_MODEL_FROM_DATABASE=NM10/ICH7 Family USB UHCI Controller #4 (D270S/D250S Motherboard)
 
+pci:v00008086d000027CBsv00001071sd00008209*
+ ID_MODEL_FROM_DATABASE=NM10/ICH7 Family USB UHCI Controller #4 (Medion MIM 2240 Notebook PC [MD98100])
+
 pci:v00008086d000027CBsv0000107Bsd00005048*
  ID_MODEL_FROM_DATABASE=NM10/ICH7 Family USB UHCI Controller #4 (E4500)
 
@@ -64880,6 +64979,9 @@ pci:v00008086d000027CCsv00001043sd00008179*
 pci:v00008086d000027CCsv0000105Bsd00000D7C*
  ID_MODEL_FROM_DATABASE=NM10/ICH7 Family USB2 EHCI Controller (D270S/D250S Motherboard)
 
+pci:v00008086d000027CCsv00001071sd00008209*
+ ID_MODEL_FROM_DATABASE=NM10/ICH7 Family USB2 EHCI Controller (Medion MIM 2240 Notebook PC [MD98100])
+
 pci:v00008086d000027CCsv0000144Dsd0000C072*
  ID_MODEL_FROM_DATABASE=NM10/ICH7 Family USB2 EHCI Controller (Notebook N150P)
 
@@ -64913,6 +65015,9 @@ pci:v00008086d000027D0sv0000103Csd0000309F*
 pci:v00008086d000027D0sv0000103Csd000030A3*
  ID_MODEL_FROM_DATABASE=NM10/ICH7 Family PCI Express Port 1 (Compaq nw8440)
 
+pci:v00008086d000027D0sv00001071sd00008209*
+ ID_MODEL_FROM_DATABASE=NM10/ICH7 Family PCI Express Port 1 (Medion MIM 2240 Notebook PC [MD98100])
+
 pci:v00008086d000027D0sv0000144Dsd0000C072*
  ID_MODEL_FROM_DATABASE=NM10/ICH7 Family PCI Express Port 1 (Notebook N150P)
 
@@ -64937,6 +65042,9 @@ pci:v00008086d000027D2sv0000103Csd0000309F*
 pci:v00008086d000027D2sv0000103Csd000030A3*
  ID_MODEL_FROM_DATABASE=NM10/ICH7 Family PCI Express Port 2 (Compaq nw8440)
 
+pci:v00008086d000027D2sv00001071sd00008209*
+ ID_MODEL_FROM_DATABASE=NM10/ICH7 Family PCI Express Port 2 (Medion MIM 2240 Notebook PC [MD98100])
+
 pci:v00008086d000027D2sv0000144Dsd0000C072*
  ID_MODEL_FROM_DATABASE=NM10/ICH7 Family PCI Express Port 2 (Notebook N150P)
 
@@ -64952,6 +65060,9 @@ pci:v00008086d000027D2sv00008086sd0000544B*
 pci:v00008086d000027D4*
  ID_MODEL_FROM_DATABASE=NM10/ICH7 Family PCI Express Port 3
 
+pci:v00008086d000027D4sv00001071sd00008209*
+ ID_MODEL_FROM_DATABASE=NM10/ICH7 Family PCI Express Port 3 (Medion MIM 2240 Notebook PC [MD98100])
+
 pci:v00008086d000027D4sv0000144Dsd0000C072*
  ID_MODEL_FROM_DATABASE=NM10/ICH7 Family PCI Express Port 3 (Notebook N150P)
 
@@ -64970,6 +65081,9 @@ pci:v00008086d000027D6*
 pci:v00008086d000027D6sv0000103Csd000030A3*
  ID_MODEL_FROM_DATABASE=NM10/ICH7 Family PCI Express Port 4 (Compaq nw8440)
 
+pci:v00008086d000027D6sv00001071sd00008209*
+ ID_MODEL_FROM_DATABASE=NM10/ICH7 Family PCI Express Port 4 (Medion MIM 2240 Notebook PC [MD98100])
+
 pci:v00008086d000027D6sv0000144Dsd0000C072*
  ID_MODEL_FROM_DATABASE=NM10/ICH7 Family PCI Express Port 4 (Notebook N150P)
 
@@ -65021,6 +65135,9 @@ pci:v00008086d000027D8sv00001043sd000082EA*
 pci:v00008086d000027D8sv0000105Bsd00000D7C*
  ID_MODEL_FROM_DATABASE=NM10/ICH7 Family High Definition Audio Controller (D270S/D250S Motherboard)
 
+pci:v00008086d000027D8sv00001071sd00008207*
+ ID_MODEL_FROM_DATABASE=NM10/ICH7 Family High Definition Audio Controller (Medion MIM 2240 Notebook PC [MD98100])
+
 pci:v00008086d000027D8sv0000107Bsd00005048*
  ID_MODEL_FROM_DATABASE=NM10/ICH7 Family High Definition Audio Controller (E4500)
 
@@ -65099,6 +65216,9 @@ pci:v00008086d000027DAsv00001043sd00008179*
 pci:v00008086d000027DAsv0000105Bsd00000D7C*
  ID_MODEL_FROM_DATABASE=NM10/ICH7 Family SMBus Controller (D270S/D250S Motherboard)
 
+pci:v00008086d000027DAsv00001071sd00008209*
+ ID_MODEL_FROM_DATABASE=NM10/ICH7 Family SMBus Controller (Medion MIM 2240 Notebook PC [MD98100])
+
 pci:v00008086d000027DAsv000010F7sd00008338*
  ID_MODEL_FROM_DATABASE=NM10/ICH7 Family SMBus Controller (Panasonic CF-Y5 laptop)
 
@@ -65258,6 +65378,9 @@ pci:v00008086d00002815sv0000104Dsd00009005*
 pci:v00008086d00002815sv0000104Dsd0000902D*
  ID_MODEL_FROM_DATABASE=82801HM (ICH8M) LPC Interface Controller (VAIO VGN-NR120E)
 
+pci:v00008086d00002815sv000017C0sd00004083*
+ ID_MODEL_FROM_DATABASE=82801HM (ICH8M) LPC Interface Controller (Medion WIM 2210 Notebook PC [MD96850])
+
 pci:v00008086d00002820*
  ID_MODEL_FROM_DATABASE=82801H (ICH8 Family) 4 port SATA Controller [IDE mode]
 
@@ -65342,6 +65465,9 @@ pci:v00008086d00002829sv0000104Dsd0000902D*
 pci:v00008086d00002829sv000017AAsd000020A7*
  ID_MODEL_FROM_DATABASE=82801HM/HEM (ICH8M/ICH8M-E) SATA Controller [AHCI mode] (ThinkPad T61/R61)
 
+pci:v00008086d00002829sv000017C0sd00004083*
+ ID_MODEL_FROM_DATABASE=82801HM/HEM (ICH8M/ICH8M-E) SATA Controller [AHCI mode] (Medion WIM 2210 Notebook PC [MD96850])
+
 pci:v00008086d00002829sv0000E4BFsd0000CC47*
  ID_MODEL_FROM_DATABASE=82801HM/HEM (ICH8M/ICH8M-E) SATA Controller [AHCI mode] (CCG-RUMBA)
 
@@ -65393,6 +65519,9 @@ pci:v00008086d00002830sv00001462sd00007235*
 pci:v00008086d00002830sv000017AAsd000020AA*
  ID_MODEL_FROM_DATABASE=82801H (ICH8 Family) USB UHCI Controller #1 (ThinkPad T61/R61)
 
+pci:v00008086d00002830sv000017C0sd00004083*
+ ID_MODEL_FROM_DATABASE=82801H (ICH8 Family) USB UHCI Controller #1 (Medion WIM 2210 Notebook PC [MD96850])
+
 pci:v00008086d00002830sv0000E4BFsd0000CC47*
  ID_MODEL_FROM_DATABASE=82801H (ICH8 Family) USB UHCI Controller #1 (CCG-RUMBA)
 
@@ -65435,6 +65564,9 @@ pci:v00008086d00002831sv00001462sd00007235*
 pci:v00008086d00002831sv000017AAsd000020AA*
  ID_MODEL_FROM_DATABASE=82801H (ICH8 Family) USB UHCI Controller #2 (ThinkPad T61/R61)
 
+pci:v00008086d00002831sv000017C0sd00004083*
+ ID_MODEL_FROM_DATABASE=82801H (ICH8 Family) USB UHCI Controller #2 (Medion WIM 2210 Notebook PC [MD96850])
+
 pci:v00008086d00002831sv0000E4BFsd0000CC47*
  ID_MODEL_FROM_DATABASE=82801H (ICH8 Family) USB UHCI Controller #2 (CCG-RUMBA)
 
@@ -65474,6 +65606,9 @@ pci:v00008086d00002832sv0000104Dsd0000902D*
 pci:v00008086d00002832sv000017AAsd000020AA*
  ID_MODEL_FROM_DATABASE=82801H (ICH8 Family) USB UHCI Controller #3 (ThinkPad T61/R61)
 
+pci:v00008086d00002832sv000017C0sd00004083*
+ ID_MODEL_FROM_DATABASE=82801H (ICH8 Family) USB UHCI Controller #3 (Medion WIM 2210 Notebook PC [MD96850])
+
 pci:v00008086d00002832sv0000E4BFsd0000CC47*
  ID_MODEL_FROM_DATABASE=82801H (ICH8 Family) USB UHCI Controller #3 (CCG-RUMBA)
 
@@ -65519,6 +65654,9 @@ pci:v00008086d00002834sv00001462sd00007235*
 pci:v00008086d00002834sv000017AAsd000020AA*
  ID_MODEL_FROM_DATABASE=82801H (ICH8 Family) USB UHCI Controller #4 (ThinkPad T61/R61)
 
+pci:v00008086d00002834sv000017C0sd00004083*
+ ID_MODEL_FROM_DATABASE=82801H (ICH8 Family) USB UHCI Controller #4 (Medion WIM 2210 Notebook PC [MD96850])
+
 pci:v00008086d00002834sv0000E4BFsd0000CC47*
  ID_MODEL_FROM_DATABASE=82801H (ICH8 Family) USB UHCI Controller #4 (CCG-RUMBA)
 
@@ -65555,6 +65693,9 @@ pci:v00008086d00002835sv0000104Dsd0000902D*
 pci:v00008086d00002835sv000017AAsd000020AA*
  ID_MODEL_FROM_DATABASE=82801H (ICH8 Family) USB UHCI Controller #5 (Thinkpad T61/R61)
 
+pci:v00008086d00002835sv000017C0sd00004083*
+ ID_MODEL_FROM_DATABASE=82801H (ICH8 Family) USB UHCI Controller #5 (Medion WIM 2210 Notebook PC [MD96850])
+
 pci:v00008086d00002835sv0000E4BFsd0000CC47*
  ID_MODEL_FROM_DATABASE=82801H (ICH8 Family) USB UHCI Controller #5 (CCG-RUMBA)
 
@@ -65597,6 +65738,9 @@ pci:v00008086d00002836sv00001462sd00007235*
 pci:v00008086d00002836sv000017AAsd000020AB*
  ID_MODEL_FROM_DATABASE=82801H (ICH8 Family) USB2 EHCI Controller #1 (ThinkPad T61/R61)
 
+pci:v00008086d00002836sv000017C0sd00004083*
+ ID_MODEL_FROM_DATABASE=82801H (ICH8 Family) USB2 EHCI Controller #1 (Medion WIM 2210 Notebook PC [MD96850])
+
 pci:v00008086d00002836sv0000E4BFsd0000CC47*
  ID_MODEL_FROM_DATABASE=82801H (ICH8 Family) USB2 EHCI Controller #1 (CCG-RUMBA)
 
@@ -65633,6 +65777,9 @@ pci:v00008086d0000283Asv0000104Dsd0000902D*
 pci:v00008086d0000283Asv000017AAsd000020AB*
  ID_MODEL_FROM_DATABASE=82801H (ICH8 Family) USB2 EHCI Controller #2 (ThinkPad T61/R61)
 
+pci:v00008086d0000283Asv000017C0sd00004083*
+ ID_MODEL_FROM_DATABASE=82801H (ICH8 Family) USB2 EHCI Controller #2 (Medion WIM 2210 Notebook PC [MD96850])
+
 pci:v00008086d0000283Asv0000E4BFsd0000CC47*
  ID_MODEL_FROM_DATABASE=82801H (ICH8 Family) USB2 EHCI Controller #2 (CCG-RUMBA)
 
@@ -65669,6 +65816,9 @@ pci:v00008086d0000283Esv00001462sd00007235*
 pci:v00008086d0000283Esv000017AAsd000020A9*
  ID_MODEL_FROM_DATABASE=82801H (ICH8 Family) SMBus Controller (ThinkPad T61/R61)
 
+pci:v00008086d0000283Esv000017C0sd00004083*
+ ID_MODEL_FROM_DATABASE=82801H (ICH8 Family) SMBus Controller (Medion WIM 2210 Notebook PC [MD96850])
+
 pci:v00008086d0000283Esv0000E4BFsd0000CC47*
  ID_MODEL_FROM_DATABASE=82801H (ICH8 Family) SMBus Controller (CCG-RUMBA)
 
@@ -65687,6 +65837,9 @@ pci:v00008086d0000283Fsv0000104Dsd0000902D*
 pci:v00008086d0000283Fsv000017AAsd000020AD*
  ID_MODEL_FROM_DATABASE=82801H (ICH8 Family) PCI Express Port 1 (ThinkPad T61/R61)
 
+pci:v00008086d0000283Fsv000017C0sd00004083*
+ ID_MODEL_FROM_DATABASE=82801H (ICH8 Family) PCI Express Port 1 (Medion WIM 2210 Notebook PC [MD96850])
+
 pci:v00008086d00002841*
  ID_MODEL_FROM_DATABASE=82801H (ICH8 Family) PCI Express Port 2
 
@@ -65699,6 +65852,9 @@ pci:v00008086d00002841sv0000104Dsd0000902D*
 pci:v00008086d00002841sv000017AAsd000020AD*
  ID_MODEL_FROM_DATABASE=82801H (ICH8 Family) PCI Express Port 2 (ThinkPad T61/R61)
 
+pci:v00008086d00002841sv000017C0sd00004083*
+ ID_MODEL_FROM_DATABASE=82801H (ICH8 Family) PCI Express Port 2 (Medion WIM 2210 Notebook PC [MD96850])
+
 pci:v00008086d00002843*
  ID_MODEL_FROM_DATABASE=82801H (ICH8 Family) PCI Express Port 3
 
@@ -65708,12 +65864,18 @@ pci:v00008086d00002843sv0000104Dsd0000902D*
 pci:v00008086d00002843sv000017AAsd000020AD*
  ID_MODEL_FROM_DATABASE=82801H (ICH8 Family) PCI Express Port 3 (ThinkPad T61/R61)
 
+pci:v00008086d00002843sv000017C0sd00004083*
+ ID_MODEL_FROM_DATABASE=82801H (ICH8 Family) PCI Express Port 3 (Medion WIM 2210 Notebook PC [MD96850])
+
 pci:v00008086d00002845*
  ID_MODEL_FROM_DATABASE=82801H (ICH8 Family) PCI Express Port 4
 
 pci:v00008086d00002845sv000017AAsd000020AD*
  ID_MODEL_FROM_DATABASE=82801H (ICH8 Family) PCI Express Port 4 (ThinkPad T61/R61)
 
+pci:v00008086d00002845sv000017C0sd00004083*
+ ID_MODEL_FROM_DATABASE=82801H (ICH8 Family) PCI Express Port 4 (Medion WIM 2210 Notebook PC [MD96850])
+
 pci:v00008086d00002847*
  ID_MODEL_FROM_DATABASE=82801H (ICH8 Family) PCI Express Port 5
 
@@ -65726,6 +65888,9 @@ pci:v00008086d00002847sv0000103Csd000030C1*
 pci:v00008086d00002847sv000017AAsd000020AD*
  ID_MODEL_FROM_DATABASE=82801H (ICH8 Family) PCI Express Port 5 (ThinkPad T61/R61)
 
+pci:v00008086d00002847sv000017C0sd00004083*
+ ID_MODEL_FROM_DATABASE=82801H (ICH8 Family) PCI Express Port 5 (Medion WIM 2210 Notebook PC [MD96850])
+
 pci:v00008086d00002849*
  ID_MODEL_FROM_DATABASE=82801H (ICH8 Family) PCI Express Port 6
 
@@ -65792,6 +65957,9 @@ pci:v00008086d0000284Bsv000014F1sd00005051*
 pci:v00008086d0000284Bsv000017AAsd000020AC*
  ID_MODEL_FROM_DATABASE=82801H (ICH8 Family) HD Audio Controller (ThinkPad T61/R61)
 
+pci:v00008086d0000284Bsv000017C0sd00004088*
+ ID_MODEL_FROM_DATABASE=82801H (ICH8 Family) HD Audio Controller (Medion WIM 2210 Notebook PC [MD96850])
+
 pci:v00008086d0000284Bsv00008384sd00007616*
  ID_MODEL_FROM_DATABASE=82801H (ICH8 Family) HD Audio Controller (Dell Vostro 1400)
 
@@ -65831,6 +65999,9 @@ pci:v00008086d00002850sv0000104Dsd0000902D*
 pci:v00008086d00002850sv000017AAsd000020A6*
  ID_MODEL_FROM_DATABASE=82801HM/HEM (ICH8M/ICH8M-E) IDE Controller (ThinkPad T61/R61)
 
+pci:v00008086d00002850sv000017C0sd00004083*
+ ID_MODEL_FROM_DATABASE=82801HM/HEM (ICH8M/ICH8M-E) IDE Controller (Medion WIM 2210 Notebook PC [MD96850])
+
 pci:v00008086d00002850sv0000E4BFsd0000CC47*
  ID_MODEL_FROM_DATABASE=82801HM/HEM (ICH8M/ICH8M-E) IDE Controller (CCG-RUMBA)
 
@@ -66794,6 +66965,9 @@ pci:v00008086d00002A00sv000017AAsd000020B1*
 pci:v00008086d00002A00sv000017AAsd000020B3*
  ID_MODEL_FROM_DATABASE=Mobile PM965/GM965/GL960 Memory Controller Hub (ThinkPad T61/R61)
 
+pci:v00008086d00002A00sv000017C0sd00004082*
+ ID_MODEL_FROM_DATABASE=Mobile PM965/GM965/GL960 Memory Controller Hub (Medion WIM 2210 Notebook PC [MD96850])
+
 pci:v00008086d00002A00sv0000E4BFsd0000CC47*
  ID_MODEL_FROM_DATABASE=Mobile PM965/GM965/GL960 Memory Controller Hub (CCG-RUMBA)
 
@@ -66821,6 +66995,9 @@ pci:v00008086d00002A02sv0000104Dsd0000902D*
 pci:v00008086d00002A02sv000017AAsd000020B5*
  ID_MODEL_FROM_DATABASE=Mobile GM965/GL960 Integrated Graphics Controller (primary) (ThinkPad T61/R61)
 
+pci:v00008086d00002A02sv000017C0sd00004082*
+ ID_MODEL_FROM_DATABASE=Mobile GM965/GL960 Integrated Graphics Controller (primary) (Medion WIM 2210 Notebook PC [MD96850])
+
 pci:v00008086d00002A02sv0000E4BFsd0000CC47*
  ID_MODEL_FROM_DATABASE=Mobile GM965/GL960 Integrated Graphics Controller (primary) (CCG-RUMBA)
 
@@ -66828,7 +67005,7 @@ pci:v00008086d00002A03*
  ID_MODEL_FROM_DATABASE=Mobile GM965/GL960 Integrated Graphics Controller (secondary)
 
 pci:v00008086d00002A03sv00001028sd000001F3*
- ID_MODEL_FROM_DATABASE=Mobile GM965/GL960 Integrated Graphics Controller (secondary) (Dell Inspiron 1420)
+ ID_MODEL_FROM_DATABASE=Mobile GM965/GL960 Integrated Graphics Controller (secondary) (Inspiron 1420)
 
 pci:v00008086d00002A03sv0000103Csd000030C0*
  ID_MODEL_FROM_DATABASE=Mobile GM965/GL960 Integrated Graphics Controller (secondary) (Compaq 6710b)
@@ -66842,6 +67019,9 @@ pci:v00008086d00002A03sv0000104Dsd0000902D*
 pci:v00008086d00002A03sv000017AAsd000020B5*
  ID_MODEL_FROM_DATABASE=Mobile GM965/GL960 Integrated Graphics Controller (secondary) (ThinkPad T61/R61)
 
+pci:v00008086d00002A03sv000017C0sd00004082*
+ ID_MODEL_FROM_DATABASE=Mobile GM965/GL960 Integrated Graphics Controller (secondary) (Medion WIM 2210 Notebook PC [MD96850])
+
 pci:v00008086d00002A03sv0000E4BFsd0000CC47*
  ID_MODEL_FROM_DATABASE=Mobile GM965/GL960 Integrated Graphics Controller (secondary) (CCG-RUMBA)
 
@@ -67317,13 +67497,13 @@ pci:v00008086d00002D10*
  ID_MODEL_FROM_DATABASE=Core Processor QPI Link 0
 
 pci:v00008086d00002D11*
- ID_MODEL_FROM_DATABASE=Core Processor QPI Physical 0
+ ID_MODEL_FROM_DATABASE=1st Generation Core Processor QPI Physical 0
 
 pci:v00008086d00002D12*
- ID_MODEL_FROM_DATABASE=Core Processor Reserved
+ ID_MODEL_FROM_DATABASE=1st Generation Core Processor Reserved
 
 pci:v00008086d00002D13*
- ID_MODEL_FROM_DATABASE=Core Processor Reserved
+ ID_MODEL_FROM_DATABASE=1st Generation Core Processor Reserved
 
 pci:v00008086d00002D81*
  ID_MODEL_FROM_DATABASE=Xeon 5600 Series QuickPath Architecture System Address Decoder
@@ -67427,6 +67607,9 @@ pci:v00008086d00002E11*
 pci:v00008086d00002E12*
  ID_MODEL_FROM_DATABASE=4 Series Chipset Integrated Graphics Controller
 
+pci:v00008086d00002E12sv000017AAsd00003048*
+ ID_MODEL_FROM_DATABASE=4 Series Chipset Integrated Graphics Controller (ThinkCentre M6258)
+
 pci:v00008086d00002E13*
  ID_MODEL_FROM_DATABASE=4 Series Chipset Integrated Graphics Controller
 
@@ -69317,6 +69500,12 @@ pci:v00008086d00003B09*
 pci:v00008086d00003B09sv00001025sd00000347*
  ID_MODEL_FROM_DATABASE=Mobile 5 Series Chipset LPC Interface Controller (Aspire 7740G)
 
+pci:v00008086d00003B09sv0000144Dsd0000C06A*
+ ID_MODEL_FROM_DATABASE=Mobile 5 Series Chipset LPC Interface Controller (R730 Laptop)
+
+pci:v00008086d00003B09sv000017C0sd000010D2*
+ ID_MODEL_FROM_DATABASE=Mobile 5 Series Chipset LPC Interface Controller (Medion Akoya E7214 Notebook PC [MD98410])
+
 pci:v00008086d00003B0A*
  ID_MODEL_FROM_DATABASE=5 Series Chipset LPC Interface Controller
 
@@ -69416,18 +69605,36 @@ pci:v00008086d00003B26*
 pci:v00008086d00003B28*
  ID_MODEL_FROM_DATABASE=5 Series/3400 Series Chipset 4 port SATA IDE Controller
 
+pci:v00008086d00003B28sv0000144Dsd0000C06A*
+ ID_MODEL_FROM_DATABASE=5 Series/3400 Series Chipset 4 port SATA IDE Controller (R730 Laptop)
+
+pci:v00008086d00003B28sv000017C0sd000010D2*
+ ID_MODEL_FROM_DATABASE=5 Series/3400 Series Chipset 4 port SATA IDE Controller (Medion Akoya E7214 Notebook PC [MD98410])
+
 pci:v00008086d00003B29*
  ID_MODEL_FROM_DATABASE=5 Series/3400 Series Chipset 4 port SATA AHCI Controller
 
 pci:v00008086d00003B29sv00001025sd00000347*
  ID_MODEL_FROM_DATABASE=5 Series/3400 Series Chipset 4 port SATA AHCI Controller (Aspire 7740G)
 
+pci:v00008086d00003B29sv0000144Dsd0000C06A*
+ ID_MODEL_FROM_DATABASE=5 Series/3400 Series Chipset 4 port SATA AHCI Controller (R730 Laptop)
+
+pci:v00008086d00003B29sv000017C0sd000010D2*
+ ID_MODEL_FROM_DATABASE=5 Series/3400 Series Chipset 4 port SATA AHCI Controller (Medion Akoya E7214 Notebook PC [MD98410])
+
 pci:v00008086d00003B2C*
  ID_MODEL_FROM_DATABASE=5 Series/3400 Series Chipset SATA RAID Controller
 
 pci:v00008086d00003B2D*
  ID_MODEL_FROM_DATABASE=5 Series/3400 Series Chipset 2 port SATA IDE Controller
 
+pci:v00008086d00003B2Dsv0000144Dsd0000C06A*
+ ID_MODEL_FROM_DATABASE=5 Series/3400 Series Chipset 2 port SATA IDE Controller (R730 Laptop)
+
+pci:v00008086d00003B2Dsv000017C0sd000010D2*
+ ID_MODEL_FROM_DATABASE=5 Series/3400 Series Chipset 2 port SATA IDE Controller (Medion Akoya E7214 Notebook PC [MD98410])
+
 pci:v00008086d00003B2Dsv0000E4BFsd000050C1*
  ID_MODEL_FROM_DATABASE=5 Series/3400 Series Chipset 2 port SATA IDE Controller (PC1-GROOVE)
 
@@ -69458,9 +69665,15 @@ pci:v00008086d00003B30sv00001028sd000002DA*
 pci:v00008086d00003B30sv00001028sd0000040B*
  ID_MODEL_FROM_DATABASE=5 Series/3400 Series Chipset SMBus Controller (Latitude E6510)
 
+pci:v00008086d00003B30sv0000144Dsd0000C06A*
+ ID_MODEL_FROM_DATABASE=5 Series/3400 Series Chipset SMBus Controller (R730 Laptop)
+
 pci:v00008086d00003B30sv000015D9sd0000060D*
  ID_MODEL_FROM_DATABASE=5 Series/3400 Series Chipset SMBus Controller (C7SIM-Q Motherboard)
 
+pci:v00008086d00003B30sv000017C0sd000010D2*
+ ID_MODEL_FROM_DATABASE=5 Series/3400 Series Chipset SMBus Controller (Medion Akoya E7214 Notebook PC [MD98410])
+
 pci:v00008086d00003B30sv0000E4BFsd000050C1*
  ID_MODEL_FROM_DATABASE=5 Series/3400 Series Chipset SMBus Controller (PC1-GROOVE)
 
@@ -69470,6 +69683,12 @@ pci:v00008086d00003B32*
 pci:v00008086d00003B32sv00001025sd00000347*
  ID_MODEL_FROM_DATABASE=5 Series/3400 Series Chipset Thermal Subsystem (Aspire 7740G)
 
+pci:v00008086d00003B32sv0000144Dsd0000C06A*
+ ID_MODEL_FROM_DATABASE=5 Series/3400 Series Chipset Thermal Subsystem (R730 Laptop)
+
+pci:v00008086d00003B32sv000017C0sd000010D2*
+ ID_MODEL_FROM_DATABASE=5 Series/3400 Series Chipset Thermal Subsystem (Medion Akoya E7214 Notebook PC [MD98410])
+
 pci:v00008086d00003B34*
  ID_MODEL_FROM_DATABASE=5 Series/3400 Series Chipset USB2 Enhanced Host Controller
 
@@ -69482,9 +69701,15 @@ pci:v00008086d00003B34sv00001028sd000002DA*
 pci:v00008086d00003B34sv00001028sd0000040B*
  ID_MODEL_FROM_DATABASE=5 Series/3400 Series Chipset USB2 Enhanced Host Controller (Latitude E6510)
 
+pci:v00008086d00003B34sv0000144Dsd0000C06A*
+ ID_MODEL_FROM_DATABASE=5 Series/3400 Series Chipset USB2 Enhanced Host Controller (R730 Laptop)
+
 pci:v00008086d00003B34sv000015D9sd0000060D*
  ID_MODEL_FROM_DATABASE=5 Series/3400 Series Chipset USB2 Enhanced Host Controller (C7SIM-Q Motherboard)
 
+pci:v00008086d00003B34sv000017C0sd000010D2*
+ ID_MODEL_FROM_DATABASE=5 Series/3400 Series Chipset USB2 Enhanced Host Controller (Medion Akoya E7214 Notebook PC [MD98410])
+
 pci:v00008086d00003B34sv0000E4BFsd000050C1*
  ID_MODEL_FROM_DATABASE=5 Series/3400 Series Chipset USB2 Enhanced Host Controller (PC1-GROOVE)
 
@@ -69518,9 +69743,15 @@ pci:v00008086d00003B3Csv00001028sd000002DA*
 pci:v00008086d00003B3Csv00001028sd0000040B*
  ID_MODEL_FROM_DATABASE=5 Series/3400 Series Chipset USB2 Enhanced Host Controller (Latitude E6510)
 
+pci:v00008086d00003B3Csv0000144Dsd0000C06A*
+ ID_MODEL_FROM_DATABASE=5 Series/3400 Series Chipset USB2 Enhanced Host Controller (R730 Laptop)
+
 pci:v00008086d00003B3Csv000015D9sd0000060D*
  ID_MODEL_FROM_DATABASE=5 Series/3400 Series Chipset USB2 Enhanced Host Controller (C7SIM-Q Motherboard)
 
+pci:v00008086d00003B3Csv000017C0sd000010D2*
+ ID_MODEL_FROM_DATABASE=5 Series/3400 Series Chipset USB2 Enhanced Host Controller (Medion Akoya E7214 Notebook PC [MD98410])
+
 pci:v00008086d00003B3Csv0000E4BFsd000050C1*
  ID_MODEL_FROM_DATABASE=5 Series/3400 Series Chipset USB2 Enhanced Host Controller (PC1-GROOVE)
 
@@ -69545,9 +69776,15 @@ pci:v00008086d00003B42sv00001028sd000002DA*
 pci:v00008086d00003B42sv00001028sd0000040B*
  ID_MODEL_FROM_DATABASE=5 Series/3400 Series Chipset PCI Express Root Port 1 (Latitude E6510)
 
+pci:v00008086d00003B42sv0000144Dsd0000C06A*
+ ID_MODEL_FROM_DATABASE=5 Series/3400 Series Chipset PCI Express Root Port 1 (R730 Laptop)
+
 pci:v00008086d00003B42sv000015D9sd0000060D*
  ID_MODEL_FROM_DATABASE=5 Series/3400 Series Chipset PCI Express Root Port 1 (C7SIM-Q Motherboard)
 
+pci:v00008086d00003B42sv000017C0sd000010D2*
+ ID_MODEL_FROM_DATABASE=5 Series/3400 Series Chipset PCI Express Root Port 1 (Medion Akoya E7214 Notebook PC [MD98410])
+
 pci:v00008086d00003B44*
  ID_MODEL_FROM_DATABASE=5 Series/3400 Series Chipset PCI Express Root Port 2
 
@@ -69557,24 +69794,39 @@ pci:v00008086d00003B44sv00001028sd0000040B*
 pci:v00008086d00003B44sv000015D9sd0000060D*
  ID_MODEL_FROM_DATABASE=5 Series/3400 Series Chipset PCI Express Root Port 2 (C7SIM-Q Motherboard)
 
+pci:v00008086d00003B44sv000017C0sd000010D2*
+ ID_MODEL_FROM_DATABASE=5 Series/3400 Series Chipset PCI Express Root Port 2 (Medion Akoya E7214 Notebook PC [MD98410])
+
 pci:v00008086d00003B46*
  ID_MODEL_FROM_DATABASE=5 Series/3400 Series Chipset PCI Express Root Port 3
 
 pci:v00008086d00003B46sv00001028sd0000040B*
  ID_MODEL_FROM_DATABASE=5 Series/3400 Series Chipset PCI Express Root Port 3 (Latitude E6510)
 
+pci:v00008086d00003B46sv0000144Dsd0000C06A*
+ ID_MODEL_FROM_DATABASE=5 Series/3400 Series Chipset PCI Express Root Port 3 (R730 Laptop)
+
+pci:v00008086d00003B46sv000017C0sd000010D2*
+ ID_MODEL_FROM_DATABASE=5 Series/3400 Series Chipset PCI Express Root Port 3 (Medion Akoya E7214 Notebook PC [MD98410])
+
 pci:v00008086d00003B48*
  ID_MODEL_FROM_DATABASE=5 Series/3400 Series Chipset PCI Express Root Port 4
 
 pci:v00008086d00003B48sv00001028sd0000040B*
  ID_MODEL_FROM_DATABASE=5 Series/3400 Series Chipset PCI Express Root Port 4 (Latitude E6510)
 
+pci:v00008086d00003B48sv0000144Dsd0000C06A*
+ ID_MODEL_FROM_DATABASE=5 Series/3400 Series Chipset PCI Express Root Port 4 (R730 Laptop)
+
 pci:v00008086d00003B4A*
  ID_MODEL_FROM_DATABASE=5 Series/3400 Series Chipset PCI Express Root Port 5
 
 pci:v00008086d00003B4Asv00001028sd000002DA*
  ID_MODEL_FROM_DATABASE=5 Series/3400 Series Chipset PCI Express Root Port 5 (OptiPlex 980)
 
+pci:v00008086d00003B4Asv000017C0sd000010D2*
+ ID_MODEL_FROM_DATABASE=5 Series/3400 Series Chipset PCI Express Root Port 5 (Medion Akoya E7214 Notebook PC [MD98410])
+
 pci:v00008086d00003B4C*
  ID_MODEL_FROM_DATABASE=5 Series/3400 Series Chipset PCI Express Root Port 6
 
@@ -69599,9 +69851,15 @@ pci:v00008086d00003B56sv00001028sd000002DA*
 pci:v00008086d00003B56sv00001028sd0000040B*
  ID_MODEL_FROM_DATABASE=5 Series/3400 Series Chipset High Definition Audio (Latitude E6510)
 
+pci:v00008086d00003B56sv0000144Dsd0000C06A*
+ ID_MODEL_FROM_DATABASE=5 Series/3400 Series Chipset High Definition Audio (R730 Laptop)
+
 pci:v00008086d00003B56sv000015D9sd0000060D*
  ID_MODEL_FROM_DATABASE=5 Series/3400 Series Chipset High Definition Audio (C7SIM-Q Motherboard)
 
+pci:v00008086d00003B56sv000017C0sd000010D2*
+ ID_MODEL_FROM_DATABASE=5 Series/3400 Series Chipset High Definition Audio (Medion Akoya E7214 Notebook PC [MD98410])
+
 pci:v00008086d00003B56sv0000E4BFsd000050C1*
  ID_MODEL_FROM_DATABASE=5 Series/3400 Series Chipset High Definition Audio (PC1-GROOVE)
 
@@ -69617,6 +69875,9 @@ pci:v00008086d00003B64sv00001025sd00000347*
 pci:v00008086d00003B64sv000015D9sd0000060D*
  ID_MODEL_FROM_DATABASE=5 Series/3400 Series Chipset HECI Controller (C7SIM-Q Motherboard)
 
+pci:v00008086d00003B64sv000017C0sd000010D2*
+ ID_MODEL_FROM_DATABASE=5 Series/3400 Series Chipset HECI Controller (Medion Akoya E7214 Notebook PC [MD98410])
+
 pci:v00008086d00003B64sv0000E4BFsd000050C1*
  ID_MODEL_FROM_DATABASE=5 Series/3400 Series Chipset HECI Controller (PC1-GROOVE)
 
@@ -69990,7 +70251,7 @@ pci:v00008086d00004222sv00008086sd00001000*
  ID_MODEL_FROM_DATABASE=PRO/Wireless 3945ABG [Golan] Network Connection (PRO/Wireless 3945ABG Network Connection)
 
 pci:v00008086d00004222sv00008086sd00001001*
- ID_MODEL_FROM_DATABASE=PRO/Wireless 3945ABG [Golan] Network Connection (PRO/Wireless 3945ABG Network Connection)
+ ID_MODEL_FROM_DATABASE=PRO/Wireless 3945ABG [Golan] Network Connection (WM3945ABG MOW2)
 
 pci:v00008086d00004222sv00008086sd00001005*
  ID_MODEL_FROM_DATABASE=PRO/Wireless 3945ABG [Golan] Network Connection (PRO/Wireless 3945BG Network Connection)
@@ -71168,6 +71429,114 @@ pci:v00008086d00008C5E*
 pci:v00008086d00008C5F*
  ID_MODEL_FROM_DATABASE=8 Series/C220 Series Chipset Family LPC Controller
 
+pci:v00008086d00008C80*
+ ID_MODEL_FROM_DATABASE=9 Series Chipset Family SATA Controller [IDE Mode]
+
+pci:v00008086d00008C81*
+ ID_MODEL_FROM_DATABASE=9 Series Chipset Family SATA Controller [IDE Mode]
+
+pci:v00008086d00008C82*
+ ID_MODEL_FROM_DATABASE=9 Series Chipset Family SATA Controller [AHCI Mode]
+
+pci:v00008086d00008C83*
+ ID_MODEL_FROM_DATABASE=9 Series Chipset Family SATA Controller [AHCI Mode]
+
+pci:v00008086d00008C84*
+ ID_MODEL_FROM_DATABASE=9 Series Chipset Family SATA Controller [RAID Mode]
+
+pci:v00008086d00008C85*
+ ID_MODEL_FROM_DATABASE=9 Series Chipset Family SATA Controller [RAID Mode]
+
+pci:v00008086d00008C86*
+ ID_MODEL_FROM_DATABASE=9 Series Chipset Family SATA Controller [RAID Mode]
+
+pci:v00008086d00008C87*
+ ID_MODEL_FROM_DATABASE=9 Series Chipset Family SATA Controller [RAID Mode]
+
+pci:v00008086d00008C88*
+ ID_MODEL_FROM_DATABASE=9 Series Chipset Family SATA Controller [IDE Mode]
+
+pci:v00008086d00008C89*
+ ID_MODEL_FROM_DATABASE=9 Series Chipset Family SATA Controller [IDE Mode]
+
+pci:v00008086d00008C8E*
+ ID_MODEL_FROM_DATABASE=9 Series Chipset Family SATA Controller [RAID Mode]
+
+pci:v00008086d00008C8F*
+ ID_MODEL_FROM_DATABASE=9 Series Chipset Family SATA Controller [RAID Mode]
+
+pci:v00008086d00008C90*
+ ID_MODEL_FROM_DATABASE=9 Series Chipset Family PCI Express Root Port 1
+
+pci:v00008086d00008C92*
+ ID_MODEL_FROM_DATABASE=9 Series Chipset Family PCI Express Root Port 2
+
+pci:v00008086d00008C94*
+ ID_MODEL_FROM_DATABASE=9 Series Chipset Family PCI Express Root Port 3
+
+pci:v00008086d00008C96*
+ ID_MODEL_FROM_DATABASE=9 Series Chipset Family PCI Express Root Port 4
+
+pci:v00008086d00008C98*
+ ID_MODEL_FROM_DATABASE=9 Series Chipset Family PCI Express Root Port 5
+
+pci:v00008086d00008C9A*
+ ID_MODEL_FROM_DATABASE=9 Series Chipset Family PCI Express Root Port 6
+
+pci:v00008086d00008C9C*
+ ID_MODEL_FROM_DATABASE=9 Series Chipset Family PCI Express Root Port 7
+
+pci:v00008086d00008C9E*
+ ID_MODEL_FROM_DATABASE=9 Series Chipset Family PCI Express Root Port 8
+
+pci:v00008086d00008CA0*
+ ID_MODEL_FROM_DATABASE=9 Series Chipset Family HD Audio Controller
+
+pci:v00008086d00008CA2*
+ ID_MODEL_FROM_DATABASE=9 Series Chipset Family SMBus Controller
+
+pci:v00008086d00008CA4*
+ ID_MODEL_FROM_DATABASE=9 Series Chipset Family Thermal Controller
+
+pci:v00008086d00008CA6*
+ ID_MODEL_FROM_DATABASE=9 Series Chipset Family USB EHCI Controller #1
+
+pci:v00008086d00008CAD*
+ ID_MODEL_FROM_DATABASE=9 Series Chipset Family USB EHCI Controller #2
+
+pci:v00008086d00008CB1*
+ ID_MODEL_FROM_DATABASE=9 Series Chipset Family USB xHCI Controller
+
+pci:v00008086d00008CB3*
+ ID_MODEL_FROM_DATABASE=9 Series Chipset Family LAN Controller
+
+pci:v00008086d00008CBA*
+ ID_MODEL_FROM_DATABASE=9 Series Chipset Family ME Interface #1
+
+pci:v00008086d00008CBB*
+ ID_MODEL_FROM_DATABASE=9 Series Chipset Family ME Interface #2
+
+pci:v00008086d00008CBC*
+ ID_MODEL_FROM_DATABASE=9 Series Chipset Family IDE-R Controller
+
+pci:v00008086d00008CBD*
+ ID_MODEL_FROM_DATABASE=9 Series Chipset Family KT Controller
+
+pci:v00008086d00008CC1*
+ ID_MODEL_FROM_DATABASE=9 Series Chipset Family LPC Controller
+
+pci:v00008086d00008CC2*
+ ID_MODEL_FROM_DATABASE=9 Series Chipset Family LPC Controller
+
+pci:v00008086d00008CC3*
+ ID_MODEL_FROM_DATABASE=9 Series Chipset Family HM97 LPC Controller
+
+pci:v00008086d00008CC4*
+ ID_MODEL_FROM_DATABASE=9 Series Chipset Family Z97 LPC Controller
+
+pci:v00008086d00008CC6*
+ ID_MODEL_FROM_DATABASE=9 Series Chipset Family H97 Controller
+
 pci:v00008086d00008D00*
  ID_MODEL_FROM_DATABASE=Wellsburg 4-port SATA Controller [IDE mode]
 
@@ -71379,208 +71748,208 @@ pci:v00008086d000096A1*
  ID_MODEL_FROM_DATABASE=Integrated RAID
 
 pci:v00008086d00009C00*
- ID_MODEL_FROM_DATABASE=Lynx Point-LP SATA Controller 1 [IDE mode]
+ ID_MODEL_FROM_DATABASE=8 Series SATA Controller 1 [IDE mode]
 
 pci:v00008086d00009C01*
- ID_MODEL_FROM_DATABASE=Lynx Point-LP SATA Controller 1 [IDE mode]
+ ID_MODEL_FROM_DATABASE=8 Series SATA Controller 1 [IDE mode]
 
 pci:v00008086d00009C02*
- ID_MODEL_FROM_DATABASE=Lynx Point-LP SATA Controller 1 [AHCI mode]
+ ID_MODEL_FROM_DATABASE=8 Series SATA Controller 1 [AHCI mode]
 
 pci:v00008086d00009C03*
- ID_MODEL_FROM_DATABASE=Lynx Point-LP SATA Controller 1 [AHCI mode]
+ ID_MODEL_FROM_DATABASE=8 Series SATA Controller 1 [AHCI mode]
 
 pci:v00008086d00009C03sv000017AAsd00002214*
- ID_MODEL_FROM_DATABASE=Lynx Point-LP SATA Controller 1 [AHCI mode] (ThinkPad X240)
+ ID_MODEL_FROM_DATABASE=8 Series SATA Controller 1 [AHCI mode] (ThinkPad X240)
 
 pci:v00008086d00009C04*
- ID_MODEL_FROM_DATABASE=Lynx Point-LP SATA Controller 1 [RAID mode]
+ ID_MODEL_FROM_DATABASE=8 Series SATA Controller 1 [RAID mode]
 
 pci:v00008086d00009C05*
- ID_MODEL_FROM_DATABASE=Lynx Point-LP SATA Controller 1 [RAID mode]
+ ID_MODEL_FROM_DATABASE=8 Series SATA Controller 1 [RAID mode]
 
 pci:v00008086d00009C06*
- ID_MODEL_FROM_DATABASE=Lynx Point-LP SATA Controller 1 [RAID mode]
+ ID_MODEL_FROM_DATABASE=8 Series SATA Controller 1 [RAID mode]
 
 pci:v00008086d00009C07*
- ID_MODEL_FROM_DATABASE=Lynx Point-LP SATA Controller 1 [RAID mode]
+ ID_MODEL_FROM_DATABASE=8 Series SATA Controller 1 [RAID mode]
 
 pci:v00008086d00009C08*
- ID_MODEL_FROM_DATABASE=Lynx Point-LP SATA Controller 2 [IDE mode]
+ ID_MODEL_FROM_DATABASE=8 Series SATA Controller 2 [IDE mode]
 
 pci:v00008086d00009C09*
- ID_MODEL_FROM_DATABASE=Lynx Point-LP SATA Controller 2 [IDE mode]
+ ID_MODEL_FROM_DATABASE=8 Series SATA Controller 2 [IDE mode]
 
 pci:v00008086d00009C0A*
- ID_MODEL_FROM_DATABASE=LynxPoint-LP SATA Controller [Reserved]
+ ID_MODEL_FROM_DATABASE=8 Series SATA Controller [Reserved]
 
 pci:v00008086d00009C0B*
- ID_MODEL_FROM_DATABASE=LynxPoint-LP SATA Controller [Reserved]
+ ID_MODEL_FROM_DATABASE=8 Series SATA Controller [Reserved]
 
 pci:v00008086d00009C0C*
- ID_MODEL_FROM_DATABASE=LynxPoint-LP SATA Controller [Reserved]
+ ID_MODEL_FROM_DATABASE=8 Series SATA Controller [Reserved]
 
 pci:v00008086d00009C0D*
- ID_MODEL_FROM_DATABASE=LynxPoint-LP SATA Controller [Reserved]
+ ID_MODEL_FROM_DATABASE=8 Series SATA Controller [Reserved]
 
 pci:v00008086d00009C0E*
- ID_MODEL_FROM_DATABASE=Lynx Point-LP SATA Controller 1 [RAID mode]
+ ID_MODEL_FROM_DATABASE=8 Series SATA Controller 1 [RAID mode]
 
 pci:v00008086d00009C0F*
- ID_MODEL_FROM_DATABASE=Lynx Point-LP SATA Controller 1 [RAID mode]
+ ID_MODEL_FROM_DATABASE=8 Series SATA Controller 1 [RAID mode]
 
 pci:v00008086d00009C10*
- ID_MODEL_FROM_DATABASE=Lynx Point-LP PCI Express Root Port 1
+ ID_MODEL_FROM_DATABASE=8 Series PCI Express Root Port 1
 
 pci:v00008086d00009C11*
- ID_MODEL_FROM_DATABASE=Lynx Point-LP PCI Express Root Port 1
+ ID_MODEL_FROM_DATABASE=8 Series PCI Express Root Port 1
 
 pci:v00008086d00009C12*
- ID_MODEL_FROM_DATABASE=Lynx Point-LP PCI Express Root Port 2
+ ID_MODEL_FROM_DATABASE=8 Series PCI Express Root Port 2
 
 pci:v00008086d00009C13*
- ID_MODEL_FROM_DATABASE=Lynx Point-LP PCI Express Root Port 2
+ ID_MODEL_FROM_DATABASE=8 Series PCI Express Root Port 2
 
 pci:v00008086d00009C14*
- ID_MODEL_FROM_DATABASE=Lynx Point-LP PCI Express Root Port 3
+ ID_MODEL_FROM_DATABASE=8 Series PCI Express Root Port 3
 
 pci:v00008086d00009C15*
- ID_MODEL_FROM_DATABASE=Lynx Point-LP PCI Express Root Port 3
+ ID_MODEL_FROM_DATABASE=8 Series PCI Express Root Port 3
 
 pci:v00008086d00009C16*
- ID_MODEL_FROM_DATABASE=Lynx Point-LP PCI Express Root Port 4
+ ID_MODEL_FROM_DATABASE=8 Series PCI Express Root Port 4
 
 pci:v00008086d00009C17*
- ID_MODEL_FROM_DATABASE=Lynx Point-LP PCI Express Root Port 4
+ ID_MODEL_FROM_DATABASE=8 Series PCI Express Root Port 4
 
 pci:v00008086d00009C18*
- ID_MODEL_FROM_DATABASE=Lynx Point-LP PCI Express Root Port 5
+ ID_MODEL_FROM_DATABASE=8 Series PCI Express Root Port 5
 
 pci:v00008086d00009C19*
- ID_MODEL_FROM_DATABASE=Lynx Point-LP PCI Express Root Port 5
+ ID_MODEL_FROM_DATABASE=8 Series PCI Express Root Port 5
 
 pci:v00008086d00009C1A*
- ID_MODEL_FROM_DATABASE=Lynx Point-LP PCI Express Root Port 6
+ ID_MODEL_FROM_DATABASE=8 Series PCI Express Root Port 6
 
 pci:v00008086d00009C1B*
- ID_MODEL_FROM_DATABASE=Lynx Point-LP PCI Express Root Port 6
+ ID_MODEL_FROM_DATABASE=8 Series PCI Express Root Port 6
 
 pci:v00008086d00009C1C*
- ID_MODEL_FROM_DATABASE=Lynx Point-LP PCI Express Root Port 7
+ ID_MODEL_FROM_DATABASE=8 Series PCI Express Root Port 7
 
 pci:v00008086d00009C1D*
- ID_MODEL_FROM_DATABASE=Lynx Point-LP PCI Express Root Port 7
+ ID_MODEL_FROM_DATABASE=8 Series PCI Express Root Port 7
 
 pci:v00008086d00009C1E*
- ID_MODEL_FROM_DATABASE=Lynx Point-LP PCI Express Root Port 8
+ ID_MODEL_FROM_DATABASE=8 Series PCI Express Root Port 8
 
 pci:v00008086d00009C1F*
- ID_MODEL_FROM_DATABASE=Lynx Point-LP PCI Express Root Port 8
+ ID_MODEL_FROM_DATABASE=8 Series PCI Express Root Port 8
 
 pci:v00008086d00009C20*
- ID_MODEL_FROM_DATABASE=Lynx Point-LP HD Audio Controller
+ ID_MODEL_FROM_DATABASE=8 Series HD Audio Controller
 
 pci:v00008086d00009C20sv000017AAsd00002214*
- ID_MODEL_FROM_DATABASE=Lynx Point-LP HD Audio Controller (ThinkPad X240)
+ ID_MODEL_FROM_DATABASE=8 Series HD Audio Controller (ThinkPad X240)
 
 pci:v00008086d00009C21*
- ID_MODEL_FROM_DATABASE=Lynx Point-LP HD Audio Controller
+ ID_MODEL_FROM_DATABASE=8 Series HD Audio Controller
 
 pci:v00008086d00009C22*
- ID_MODEL_FROM_DATABASE=Lynx Point-LP SMBus Controller
+ ID_MODEL_FROM_DATABASE=8 Series SMBus Controller
 
 pci:v00008086d00009C22sv000017AAsd00002214*
- ID_MODEL_FROM_DATABASE=Lynx Point-LP SMBus Controller (ThinkPad X240)
+ ID_MODEL_FROM_DATABASE=8 Series SMBus Controller (ThinkPad X240)
 
 pci:v00008086d00009C23*
- ID_MODEL_FROM_DATABASE=Lynx Point-LP CHAP Counters
+ ID_MODEL_FROM_DATABASE=8 Series CHAP Counters
 
 pci:v00008086d00009C24*
- ID_MODEL_FROM_DATABASE=Lynx Point-LP Thermal
+ ID_MODEL_FROM_DATABASE=8 Series Thermal
 
 pci:v00008086d00009C26*
- ID_MODEL_FROM_DATABASE=Lynx Point-LP USB EHCI #1
+ ID_MODEL_FROM_DATABASE=8 Series USB EHCI #1
 
 pci:v00008086d00009C26sv000017AAsd00002214*
- ID_MODEL_FROM_DATABASE=Lynx Point-LP USB EHCI #1 (ThinkPad X240)
+ ID_MODEL_FROM_DATABASE=8 Series USB EHCI #1 (ThinkPad X240)
 
 pci:v00008086d00009C2D*
- ID_MODEL_FROM_DATABASE=Lynx Point-LP USB EHCI #2
+ ID_MODEL_FROM_DATABASE=8 Series USB EHCI #2
 
 pci:v00008086d00009C31*
- ID_MODEL_FROM_DATABASE=Lynx Point-LP USB xHCI HC
+ ID_MODEL_FROM_DATABASE=8 Series USB xHCI HC
 
 pci:v00008086d00009C31sv000017AAsd00002214*
- ID_MODEL_FROM_DATABASE=Lynx Point-LP USB xHCI HC (ThinkPad X240)
+ ID_MODEL_FROM_DATABASE=8 Series USB xHCI HC (ThinkPad X240)
 
 pci:v00008086d00009C35*
- ID_MODEL_FROM_DATABASE=Lynx Point-LP SDIO Controller
+ ID_MODEL_FROM_DATABASE=8 Series SDIO Controller
 
 pci:v00008086d00009C36*
- ID_MODEL_FROM_DATABASE=Lynx Point-LP Audio DSP Controller
+ ID_MODEL_FROM_DATABASE=8 Series Audio DSP Controller
 
 pci:v00008086d00009C3A*
- ID_MODEL_FROM_DATABASE=Lynx Point-LP HECI #0
+ ID_MODEL_FROM_DATABASE=8 Series HECI #0
 
 pci:v00008086d00009C3Asv000017AAsd00002214*
- ID_MODEL_FROM_DATABASE=Lynx Point-LP HECI #0 (ThinkPad X240)
+ ID_MODEL_FROM_DATABASE=8 Series HECI #0 (ThinkPad X240)
 
 pci:v00008086d00009C3B*
- ID_MODEL_FROM_DATABASE=Lynx Point-LP HECI #1
+ ID_MODEL_FROM_DATABASE=8 Series HECI #1
 
 pci:v00008086d00009C3C*
- ID_MODEL_FROM_DATABASE=Lynx Point-LP HECI IDER
+ ID_MODEL_FROM_DATABASE=8 Series HECI IDER
 
 pci:v00008086d00009C3D*
- ID_MODEL_FROM_DATABASE=Lynx Point-LP HECI KT
+ ID_MODEL_FROM_DATABASE=8 Series HECI KT
 
 pci:v00008086d00009C40*
- ID_MODEL_FROM_DATABASE=Lynx Point-LP LPC Controller
+ ID_MODEL_FROM_DATABASE=8 Series LPC Controller
 
 pci:v00008086d00009C41*
- ID_MODEL_FROM_DATABASE=Lynx Point-LP LPC Controller
+ ID_MODEL_FROM_DATABASE=8 Series LPC Controller
 
 pci:v00008086d00009C42*
- ID_MODEL_FROM_DATABASE=Lynx Point-LP LPC Controller
+ ID_MODEL_FROM_DATABASE=8 Series LPC Controller
 
 pci:v00008086d00009C43*
- ID_MODEL_FROM_DATABASE=Lynx Point-LP LPC Controller
+ ID_MODEL_FROM_DATABASE=8 Series LPC Controller
 
 pci:v00008086d00009C43sv000017AAsd00002214*
- ID_MODEL_FROM_DATABASE=Lynx Point-LP LPC Controller (ThinkPad X240)
+ ID_MODEL_FROM_DATABASE=8 Series LPC Controller (ThinkPad X240)
 
 pci:v00008086d00009C44*
- ID_MODEL_FROM_DATABASE=Lynx Point-LP LPC Controller
+ ID_MODEL_FROM_DATABASE=8 Series LPC Controller
 
 pci:v00008086d00009C45*
- ID_MODEL_FROM_DATABASE=Lynx Point-LP LPC Controller
+ ID_MODEL_FROM_DATABASE=8 Series LPC Controller
 
 pci:v00008086d00009C46*
- ID_MODEL_FROM_DATABASE=Lynx Point-LP LPC Controller
+ ID_MODEL_FROM_DATABASE=8 Series LPC Controller
 
 pci:v00008086d00009C47*
- ID_MODEL_FROM_DATABASE=Lynx Point-LP LPC Controller
+ ID_MODEL_FROM_DATABASE=8 Series LPC Controller
 
 pci:v00008086d00009C60*
- ID_MODEL_FROM_DATABASE=Lynx Point-LP Low Power Sub-System DMA
+ ID_MODEL_FROM_DATABASE=8 Series Low Power Sub-System DMA
 
 pci:v00008086d00009C61*
- ID_MODEL_FROM_DATABASE=Lynx Point-LP I2C Controller #0
+ ID_MODEL_FROM_DATABASE=8 Series I2C Controller #0
 
 pci:v00008086d00009C62*
- ID_MODEL_FROM_DATABASE=Lynx Point-LP I2C Controller #1
+ ID_MODEL_FROM_DATABASE=8 Series I2C Controller #1
 
 pci:v00008086d00009C63*
- ID_MODEL_FROM_DATABASE=Lynx Point-LP UART Controller #0
+ ID_MODEL_FROM_DATABASE=8 Series UART Controller #0
 
 pci:v00008086d00009C64*
- ID_MODEL_FROM_DATABASE=Lynx Point-LP UART Controller #1
+ ID_MODEL_FROM_DATABASE=8 Series UART Controller #1
 
 pci:v00008086d00009C65*
- ID_MODEL_FROM_DATABASE=Lynx Point-LP SPI Controller #0
+ ID_MODEL_FROM_DATABASE=8 Series SPI Controller #0
 
 pci:v00008086d00009C66*
- ID_MODEL_FROM_DATABASE=Lynx Point-LP SPI Controller #1
+ ID_MODEL_FROM_DATABASE=8 Series SPI Controller #1
 
 pci:v00008086d00009C83*
  ID_MODEL_FROM_DATABASE=Wildcat Point-LP SATA Controller [AHCI Mode]
index 3294d8a8169a69b531d1367fddd4931844a79fa8..418d39bb84ee6b5b7a139336026e08a0a3ab60a8 100644 (file)
@@ -311,6 +311,9 @@ usb:v*p*d*dcEFdsc02dp02*
 usb:v*p*d*dcEFdsc03dp01*
  ID_USB_PROTOCOL_FROM_DATABASE=Cable Based Association
 
+usb:v*p*d*dcEFdsc05*
+ ID_USB_SUBCLASS_FROM_DATABASE=USB3 Vision
+
 usb:v*p*d*dcFE*
  ID_USB_CLASS_FROM_DATABASE=Application Specific Interface
 
index 05f267d3a5d939f4f458b8c1bb77c90d3d76347e..89cd5b1cfbfc07a465a5a69189226876913aab32 100644 (file)
@@ -284,9 +284,18 @@ usb:v03EBp2310*
 usb:v03EBp2FE4*
  ID_MODEL_FROM_DATABASE=ATxmega32A4U DFU bootloader
 
+usb:v03EBp2FE6*
+ ID_MODEL_FROM_DATABASE=Cactus V6 (DFU)
+
+usb:v03EBp2FEA*
+ ID_MODEL_FROM_DATABASE=Cactus RF60 (DFU)
+
 usb:v03EBp2FF0*
  ID_MODEL_FROM_DATABASE=atmega32u2 DFU bootloader
 
+usb:v03EBp2FF4*
+ ID_MODEL_FROM_DATABASE=atmega32u4 DFU bootloader
+
 usb:v03EBp2FFA*
  ID_MODEL_FROM_DATABASE=at90usb162 DFU bootloader
 
@@ -4409,6 +4418,9 @@ usb:v0424p2602*
 usb:v0424p2640*
  ID_MODEL_FROM_DATABASE=USB 2.0 Hub
 
+usb:v0424p2660*
+ ID_MODEL_FROM_DATABASE=Hub
+
 usb:v0424p4060*
  ID_MODEL_FROM_DATABASE=Ultra Fast Media Reader
 
@@ -5373,7 +5385,7 @@ usb:v0457p0162*
  ID_MODEL_FROM_DATABASE=SiS162 usb Wireless LAN Adapter
 
 usb:v0457p0163*
- ID_MODEL_FROM_DATABASE=802.11 Wireless LAN Adapter
+ ID_MODEL_FROM_DATABASE=SiS163U 802.11 Wireless LAN Adapter
 
 usb:v0457p0817*
  ID_MODEL_FROM_DATABASE=SiS-184-ASUS-4352.17 touch panel
@@ -6947,6 +6959,9 @@ usb:v046Dp082D*
 usb:v046Dp0830*
  ID_MODEL_FROM_DATABASE=QuickClip
 
+usb:v046Dp0837*
+ ID_MODEL_FROM_DATABASE=BCC950 ConferenceCam
+
 usb:v046Dp0840*
  ID_MODEL_FROM_DATABASE=QuickCam Express
 
@@ -7856,6 +7871,9 @@ usb:v046DpC52F*
 usb:v046DpC532*
  ID_MODEL_FROM_DATABASE=Unifying Receiver
 
+usb:v046DpC534*
+ ID_MODEL_FROM_DATABASE=Unifying Receiver
+
 usb:v046DpC603*
  ID_MODEL_FROM_DATABASE=3Dconnexion Spacemouse Plus XT
 
@@ -8738,6 +8756,9 @@ usb:v0480pA007*
 usb:v0480pA009*
  ID_MODEL_FROM_DATABASE=Stor.E Basics
 
+usb:v0480pA00D*
+ ID_MODEL_FROM_DATABASE=STOR.E BASICS 500GB
+
 usb:v0480pD010*
  ID_MODEL_FROM_DATABASE=External Disk 3TB
 
@@ -10943,6 +10964,9 @@ usb:v04A9p3196*
 usb:v04A9p319A*
  ID_MODEL_FROM_DATABASE=EOS 7D
 
+usb:v04A9p319B*
+ ID_MODEL_FROM_DATABASE=EOS 50D
+
 usb:v04A9p31AA*
  ID_MODEL_FROM_DATABASE=SELPHY CP770
 
@@ -11219,6 +11243,15 @@ usb:v04A9p3277*
 usb:v04A9p327D*
  ID_MODEL_FROM_DATABASE=Powershot ELPH 115 IS / IXUS 132
 
+usb:v04A9p327F*
+ ID_MODEL_FROM_DATABASE=EOS Rebel T5 / EOS 1200D / EOS Kiss X70
+
+usb:v04A9p3284*
+ ID_MODEL_FROM_DATABASE=PowerShot D30
+
+usb:v04A9p3286*
+ ID_MODEL_FROM_DATABASE=PowerShot SX600 HS
+
 usb:v04A9p3288*
  ID_MODEL_FROM_DATABASE=Powershot ELPH 135 / IXUS 145
 
@@ -13040,6 +13073,9 @@ usb:v04D8p0036*
 usb:v04D8p00E0*
  ID_MODEL_FROM_DATABASE=PIC32 Starter Board
 
+usb:v04D8p04CD*
+ ID_MODEL_FROM_DATABASE=28Cxxx EEPROM Programmer
+
 usb:v04D8p0A04*
  ID_MODEL_FROM_DATABASE=AGP LIN Serial Analyzer
 
@@ -14093,6 +14129,9 @@ usb:v04E8p5F05*
 usb:v04E8p6032*
  ID_MODEL_FROM_DATABASE=G2 Portable hard drive
 
+usb:v04E8p6033*
+ ID_MODEL_FROM_DATABASE=G2 Portable device
+
 usb:v04E8p6034*
  ID_MODEL_FROM_DATABASE=G2 Portable hard drive
 
@@ -14102,6 +14141,9 @@ usb:v04E8p60B3*
 usb:v04E8p60C4*
  ID_MODEL_FROM_DATABASE=M2 Portable Hard Drive USB 3.0
 
+usb:v04E8p6124*
+ ID_MODEL_FROM_DATABASE=D3 Station External Hard Drive
+
 usb:v04E8p61B6*
  ID_MODEL_FROM_DATABASE=M3 Portable Hard Drive 1TB
 
@@ -15224,6 +15266,9 @@ usb:v04F9p0223*
 usb:v04F9p0248*
  ID_MODEL_FROM_DATABASE=DCP-7055 scanner/printer
 
+usb:v04F9p02B3*
+ ID_MODEL_FROM_DATABASE=MFC J4510DW
+
 usb:v04F9p1000*
  ID_MODEL_FROM_DATABASE=Printer
 
@@ -15546,7 +15591,7 @@ usb:v050Dp0013*
  ID_MODEL_FROM_DATABASE=F8T013 Bluetooth Adapter
 
 usb:v050Dp0017*
- ID_MODEL_FROM_DATABASE=B8T017 Bluetooth+EDR 2.1
+ ID_MODEL_FROM_DATABASE=B8T017 Bluetooth+EDR 2.1 / F4U017 USB 2.0 7-port Hub
 
 usb:v050Dp003A*
  ID_MODEL_FROM_DATABASE=Universal Media Reader
@@ -15683,6 +15728,9 @@ usb:v050Dp1106*
 usb:v050Dp1109*
  ID_MODEL_FROM_DATABASE=F9L1109v1 802.11a/b/g/n/ac Wireless Adapter [Realtek RTL8812AU]
 
+usb:v050Dp110A*
+ ID_MODEL_FROM_DATABASE=F9L1101v2 802.11abgn Wireless Adapter [Realtek RTL8192DU]
+
 usb:v050Dp11F2*
  ID_MODEL_FROM_DATABASE=ISY Wireless Micro Adapter IWL 2000 [RTL8188CUS]
 
@@ -15723,7 +15771,7 @@ usb:v050Dp6051*
  ID_MODEL_FROM_DATABASE=F5D6051 802.11b Wireless Network Adapter [ZyDAS ZD1201]
 
 usb:v050Dp615A*
- ID_MODEL_FROM_DATABASE=F7D4101 / F9L1101 802.11abgn Wireless Adapter [Broadcom BCM4323]
+ ID_MODEL_FROM_DATABASE=F7D4101 / F9L1101v1 802.11abgn Wireless Adapter [Broadcom BCM4323]
 
 usb:v050Dp7050*
  ID_MODEL_FROM_DATABASE=F5D7050 Wireless G Adapter v1000/v2000 [Intersil ISL3887]
@@ -16358,6 +16406,9 @@ usb:v0547p2810*
 usb:v0547p4D90*
  ID_MODEL_FROM_DATABASE=AmScope MD1900 camera
 
+usb:v0547p7000*
+ ID_MODEL_FROM_DATABASE=PowerSpec MCE460 Front Panel LED Display
+
 usb:v0547p7777*
  ID_MODEL_FROM_DATABASE=Bluetooth Device
 
@@ -21677,6 +21728,9 @@ usb:v05F9p2601*
 usb:v05F9p2602*
  ID_MODEL_FROM_DATABASE=Datalogic Magellan 1100i Barcode Scanner
 
+usb:v05F9p4204*
+ ID_MODEL_FROM_DATABASE=Datalogic Gryphon GFS4470 Fixed Scanner
+
 usb:v05F9p5204*
  ID_MODEL_FROM_DATABASE=Datalogic Gryphon GFS4170 (config mode)
 
@@ -23234,6 +23288,9 @@ usb:v068Ep00D3*
 usb:v068Ep00E2*
  ID_MODEL_FROM_DATABASE=HFX OEM Joystick
 
+usb:v068Ep00F0*
+ ID_MODEL_FROM_DATABASE=Multi-Function Panel
+
 usb:v068Ep00F1*
  ID_MODEL_FROM_DATABASE=Pro Throttle
 
@@ -25838,6 +25895,9 @@ usb:v0781p74D0*
 usb:v0781p74D1*
  ID_MODEL_FROM_DATABASE=Sansa Clip+ (msc)
 
+usb:v0781p74E5*
+ ID_MODEL_FROM_DATABASE=Sansa Clip Zip
+
 usb:v0781p8181*
  ID_MODEL_FROM_DATABASE=Pen Flash
 
@@ -26219,6 +26279,9 @@ usb:v07AAp001A*
 usb:v07AAp001C*
  ID_MODEL_FROM_DATABASE=CG-WLUSB2GT 802.11g Wireless Adapter [Intersil ISL3880]
 
+usb:v07AAp0020*
+ ID_MODEL_FROM_DATABASE=CG-WLUSB2GTST 802.11g Wireless Adapter [Intersil ISL3887]
+
 usb:v07AAp002E*
  ID_MODEL_FROM_DATABASE=CG-WLUSB2GPX [Ralink RT2571W]
 
@@ -26939,6 +27002,9 @@ usb:v07CApA827*
 usb:v07CApA867*
  ID_MODEL_FROM_DATABASE=AVerTV DVB-T (A867)
 
+usb:v07CApB300*
+ ID_MODEL_FROM_DATABASE=A300 DVB-T TV receiver
+
 usb:v07CApB800*
  ID_MODEL_FROM_DATABASE=MR800 FM Radio
 
@@ -27941,6 +28007,9 @@ usb:v083Ap4507*
 usb:v083Ap4521*
  ID_MODEL_FROM_DATABASE=Siemens S30863-S1016-R107-2 802.11g Wireless Adapter [Intersil ISL3887]
 
+usb:v083Ap4531*
+ ID_MODEL_FROM_DATABASE=T-Com Sinus 154 data II [Intersil ISL3887]
+
 usb:v083Ap5046*
  ID_MODEL_FROM_DATABASE=SpeedStream 10/100 Ethernet [pegasus]
 
@@ -30476,6 +30545,9 @@ usb:v0957p0518*
 usb:v0957p0A07*
  ID_MODEL_FROM_DATABASE=34411A Multimeter
 
+usb:v0957p1507*
+ ID_MODEL_FROM_DATABASE=33210A Waveform Generator
+
 usb:v0957p1745*
  ID_MODEL_FROM_DATABASE=Test and Measurement Device (IVI)
 
@@ -30876,13 +30948,13 @@ usb:v09D9*
  ID_VENDOR_FROM_DATABASE=KRF Tech, Ltd
 
 usb:v09DA*
- ID_VENDOR_FROM_DATABASE=A4 Tech Co., Ltd
+ ID_VENDOR_FROM_DATABASE=A4Tech Co., Ltd.
 
 usb:v09DAp0006*
  ID_MODEL_FROM_DATABASE=Optical Mouse WOP-35 / Trust 450L Optical Mouse
 
 usb:v09DAp000A*
- ID_MODEL_FROM_DATABASE=Optical Mouse Opto 510D
+ ID_MODEL_FROM_DATABASE=Optical Mouse Opto 510D / OP-620D
 
 usb:v09DAp000E*
  ID_MODEL_FROM_DATABASE=X-F710F Optical Mouse 3xFire Gaming Mouse
@@ -32174,6 +32246,9 @@ usb:v0AB1*
 usb:v0AB1p0002*
  ID_MODEL_FROM_DATABASE=OBID RFID-Reader
 
+usb:v0AB1p0004*
+ ID_MODEL_FROM_DATABASE=OBID classic-pro
+
 usb:v0ABA*
  ID_VENDOR_FROM_DATABASE=Ellisys
 
@@ -32571,7 +32646,7 @@ usb:v0B05p1708*
  ID_MODEL_FROM_DATABASE=Mass Storage Device
 
 usb:v0B05p170B*
- ID_MODEL_FROM_DATABASE=Mass Storage Device
+ ID_MODEL_FROM_DATABASE=Multi card reader
 
 usb:v0B05p170C*
  ID_MODEL_FROM_DATABASE=WL-159g 802.11bg
@@ -32687,6 +32762,9 @@ usb:v0B05p17A1*
 usb:v0B05p17AB*
  ID_MODEL_FROM_DATABASE=USB-N13 802.11n Network Adapter (rev. B1) [Realtek RTL8192CU]
 
+usb:v0B05p17C7*
+ ID_MODEL_FROM_DATABASE=WL-330NUL
+
 usb:v0B05p17C9*
  ID_MODEL_FROM_DATABASE=USB-AC53 802.11a/b/g/n/ac Wireless Adapter [Broadcom BCM43526]
 
@@ -32714,6 +32792,9 @@ usb:v0B05p5410*
 usb:v0B05p5412*
  ID_MODEL_FROM_DATABASE=MeMO Pad HD 7 (PTP mode)
 
+usb:v0B05p550F*
+ ID_MODEL_FROM_DATABASE=ASUS fonepad 7
+
 usb:v0B05p6101*
  ID_MODEL_FROM_DATABASE=Cable Modem
 
@@ -32756,6 +32837,9 @@ usb:v0B0Dp0000*
 usb:v0B0E*
  ID_VENDOR_FROM_DATABASE=GN Netcom
 
+usb:v0B0Ep034C*
+ ID_MODEL_FROM_DATABASE=Jabra UC Voice 750 MS
+
 usb:v0B0Ep0420*
  ID_MODEL_FROM_DATABASE=Jabra SPEAK 510
 
@@ -49610,6 +49694,12 @@ usb:v2659p1212*
 usb:v2659p1213*
  ID_MODEL_FROM_DATABASE=MediaTV Pro III MiniPCIe (US)
 
+usb:v2676*
+ ID_VENDOR_FROM_DATABASE=Basler AG
+
+usb:v2676pBA02*
+ ID_MODEL_FROM_DATABASE=ace
+
 usb:v2730*
  ID_VENDOR_FROM_DATABASE=Citizen
 
index 63792bb2d1dd6c7fd3cc2a2b41a991b49f0f2b7d..afc020f8340b843665afa6649182dcb875af6d39 100644 (file)
@@ -19,8 +19,8 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="sd-daemon"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd-daemon, SD_EMERG, SD_ALERT, SD_CRIT, SD_ERR, SD_WARNING, SD_NOTICE, SD_INFO, SD_DEBUG — APIs for
-                new-style daemons</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-daemon.h&gt;</pre></div><div class="cmdsynopsis"><p><code class="command">pkg-config --cflags --libs libsystemd</code> </p></div></div><div class="refsect1"><a name="idm214188016064"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="filename">sd-daemon.h</code> provide APIs
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="sd-daemon"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd-daemon, SD_EMERG, SD_ALERT, SD_CRIT, SD_ERR, SD_WARNING, SD_NOTICE, SD_INFO, SD_DEBUG — APIs for
+                new-style daemons</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-daemon.h&gt;</pre></div><div class="cmdsynopsis"><p><code class="command">pkg-config --cflags --libs libsystemd</code> </p></div></div><div class="refsect1"><a name="idm214195900512"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="filename">sd-daemon.h</code> provide APIs
                 for new-style daemons, as implemented by the
                 <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>
                 init system.</p><p>See
                 log level system. To use these prefixes simply prefix
                 every line with one of these strings. A line that is
                 not prefixed will be logged at the default log level
-                SD_INFO.</p><div class="example"><a name="idm214184167584"></a><p class="title"><b>Example 1. Hello World</b></p><div class="example-contents"><p>A daemon may log with the log level
-                        NOTICE by issuing this call:</p><pre class="programlisting">fprintf(stderr, SD_NOTICE "Hello World!\n");</pre></div></div><br class="example-break"></div><div class="refsect1"><a name="idm214180497360"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p><a name="pkgconfig-text"></a>These APIs are implemented as a shared
+                SD_INFO.</p><div class="example"><a name="idm214195045552"></a><p class="title"><b>Example 1. Hello World</b></p><div class="example-contents"><p>A daemon may log with the log level
+                        NOTICE by issuing this call:</p><pre class="programlisting">fprintf(stderr, SD_NOTICE "Hello World!\n");</pre></div></div><br class="example-break"></div><div class="refsect1"><a name="idm214192388800"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p><a name="pkgconfig-text"></a>These APIs are implemented as a shared
   library, which can be compiled and linked to with the
   <code class="constant">libsystemd</code> <a href="pkg-config.html"><span class="citerefentry"><span class="refentrytitle">pkg-config</span>(1)</span></a>
-  file.</p></div><div class="refsect1"><a name="idm214184164912"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+  file.</p></div><div class="refsect1"><a name="idm214193723968"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
                         <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
                         <a href="sd_listen_fds.html"><span class="citerefentry"><span class="refentrytitle">sd_listen_fds</span>(3)</span></a>,
                         <a href="sd_notify.html"><span class="citerefentry"><span class="refentrytitle">sd_notify</span>(3)</span></a>,
index 63792bb2d1dd6c7fd3cc2a2b41a991b49f0f2b7d..afc020f8340b843665afa6649182dcb875af6d39 100644 (file)
@@ -19,8 +19,8 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="sd-daemon"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd-daemon, SD_EMERG, SD_ALERT, SD_CRIT, SD_ERR, SD_WARNING, SD_NOTICE, SD_INFO, SD_DEBUG — APIs for
-                new-style daemons</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-daemon.h&gt;</pre></div><div class="cmdsynopsis"><p><code class="command">pkg-config --cflags --libs libsystemd</code> </p></div></div><div class="refsect1"><a name="idm214188016064"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="filename">sd-daemon.h</code> provide APIs
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="sd-daemon"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd-daemon, SD_EMERG, SD_ALERT, SD_CRIT, SD_ERR, SD_WARNING, SD_NOTICE, SD_INFO, SD_DEBUG — APIs for
+                new-style daemons</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-daemon.h&gt;</pre></div><div class="cmdsynopsis"><p><code class="command">pkg-config --cflags --libs libsystemd</code> </p></div></div><div class="refsect1"><a name="idm214195900512"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="filename">sd-daemon.h</code> provide APIs
                 for new-style daemons, as implemented by the
                 <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>
                 init system.</p><p>See
                 log level system. To use these prefixes simply prefix
                 every line with one of these strings. A line that is
                 not prefixed will be logged at the default log level
-                SD_INFO.</p><div class="example"><a name="idm214184167584"></a><p class="title"><b>Example 1. Hello World</b></p><div class="example-contents"><p>A daemon may log with the log level
-                        NOTICE by issuing this call:</p><pre class="programlisting">fprintf(stderr, SD_NOTICE "Hello World!\n");</pre></div></div><br class="example-break"></div><div class="refsect1"><a name="idm214180497360"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p><a name="pkgconfig-text"></a>These APIs are implemented as a shared
+                SD_INFO.</p><div class="example"><a name="idm214195045552"></a><p class="title"><b>Example 1. Hello World</b></p><div class="example-contents"><p>A daemon may log with the log level
+                        NOTICE by issuing this call:</p><pre class="programlisting">fprintf(stderr, SD_NOTICE "Hello World!\n");</pre></div></div><br class="example-break"></div><div class="refsect1"><a name="idm214192388800"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p><a name="pkgconfig-text"></a>These APIs are implemented as a shared
   library, which can be compiled and linked to with the
   <code class="constant">libsystemd</code> <a href="pkg-config.html"><span class="citerefentry"><span class="refentrytitle">pkg-config</span>(1)</span></a>
-  file.</p></div><div class="refsect1"><a name="idm214184164912"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+  file.</p></div><div class="refsect1"><a name="idm214193723968"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
                         <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
                         <a href="sd_listen_fds.html"><span class="citerefentry"><span class="refentrytitle">sd_listen_fds</span>(3)</span></a>,
                         <a href="sd_notify.html"><span class="citerefentry"><span class="refentrytitle">sd_notify</span>(3)</span></a>,
index 63792bb2d1dd6c7fd3cc2a2b41a991b49f0f2b7d..afc020f8340b843665afa6649182dcb875af6d39 100644 (file)
@@ -19,8 +19,8 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="sd-daemon"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd-daemon, SD_EMERG, SD_ALERT, SD_CRIT, SD_ERR, SD_WARNING, SD_NOTICE, SD_INFO, SD_DEBUG — APIs for
-                new-style daemons</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-daemon.h&gt;</pre></div><div class="cmdsynopsis"><p><code class="command">pkg-config --cflags --libs libsystemd</code> </p></div></div><div class="refsect1"><a name="idm214188016064"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="filename">sd-daemon.h</code> provide APIs
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="sd-daemon"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd-daemon, SD_EMERG, SD_ALERT, SD_CRIT, SD_ERR, SD_WARNING, SD_NOTICE, SD_INFO, SD_DEBUG — APIs for
+                new-style daemons</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-daemon.h&gt;</pre></div><div class="cmdsynopsis"><p><code class="command">pkg-config --cflags --libs libsystemd</code> </p></div></div><div class="refsect1"><a name="idm214195900512"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="filename">sd-daemon.h</code> provide APIs
                 for new-style daemons, as implemented by the
                 <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>
                 init system.</p><p>See
                 log level system. To use these prefixes simply prefix
                 every line with one of these strings. A line that is
                 not prefixed will be logged at the default log level
-                SD_INFO.</p><div class="example"><a name="idm214184167584"></a><p class="title"><b>Example 1. Hello World</b></p><div class="example-contents"><p>A daemon may log with the log level
-                        NOTICE by issuing this call:</p><pre class="programlisting">fprintf(stderr, SD_NOTICE "Hello World!\n");</pre></div></div><br class="example-break"></div><div class="refsect1"><a name="idm214180497360"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p><a name="pkgconfig-text"></a>These APIs are implemented as a shared
+                SD_INFO.</p><div class="example"><a name="idm214195045552"></a><p class="title"><b>Example 1. Hello World</b></p><div class="example-contents"><p>A daemon may log with the log level
+                        NOTICE by issuing this call:</p><pre class="programlisting">fprintf(stderr, SD_NOTICE "Hello World!\n");</pre></div></div><br class="example-break"></div><div class="refsect1"><a name="idm214192388800"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p><a name="pkgconfig-text"></a>These APIs are implemented as a shared
   library, which can be compiled and linked to with the
   <code class="constant">libsystemd</code> <a href="pkg-config.html"><span class="citerefentry"><span class="refentrytitle">pkg-config</span>(1)</span></a>
-  file.</p></div><div class="refsect1"><a name="idm214184164912"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+  file.</p></div><div class="refsect1"><a name="idm214193723968"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
                         <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
                         <a href="sd_listen_fds.html"><span class="citerefentry"><span class="refentrytitle">sd_listen_fds</span>(3)</span></a>,
                         <a href="sd_notify.html"><span class="citerefentry"><span class="refentrytitle">sd_notify</span>(3)</span></a>,
index 63792bb2d1dd6c7fd3cc2a2b41a991b49f0f2b7d..afc020f8340b843665afa6649182dcb875af6d39 100644 (file)
@@ -19,8 +19,8 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="sd-daemon"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd-daemon, SD_EMERG, SD_ALERT, SD_CRIT, SD_ERR, SD_WARNING, SD_NOTICE, SD_INFO, SD_DEBUG — APIs for
-                new-style daemons</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-daemon.h&gt;</pre></div><div class="cmdsynopsis"><p><code class="command">pkg-config --cflags --libs libsystemd</code> </p></div></div><div class="refsect1"><a name="idm214188016064"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="filename">sd-daemon.h</code> provide APIs
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="sd-daemon"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd-daemon, SD_EMERG, SD_ALERT, SD_CRIT, SD_ERR, SD_WARNING, SD_NOTICE, SD_INFO, SD_DEBUG — APIs for
+                new-style daemons</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-daemon.h&gt;</pre></div><div class="cmdsynopsis"><p><code class="command">pkg-config --cflags --libs libsystemd</code> </p></div></div><div class="refsect1"><a name="idm214195900512"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="filename">sd-daemon.h</code> provide APIs
                 for new-style daemons, as implemented by the
                 <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>
                 init system.</p><p>See
                 log level system. To use these prefixes simply prefix
                 every line with one of these strings. A line that is
                 not prefixed will be logged at the default log level
-                SD_INFO.</p><div class="example"><a name="idm214184167584"></a><p class="title"><b>Example 1. Hello World</b></p><div class="example-contents"><p>A daemon may log with the log level
-                        NOTICE by issuing this call:</p><pre class="programlisting">fprintf(stderr, SD_NOTICE "Hello World!\n");</pre></div></div><br class="example-break"></div><div class="refsect1"><a name="idm214180497360"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p><a name="pkgconfig-text"></a>These APIs are implemented as a shared
+                SD_INFO.</p><div class="example"><a name="idm214195045552"></a><p class="title"><b>Example 1. Hello World</b></p><div class="example-contents"><p>A daemon may log with the log level
+                        NOTICE by issuing this call:</p><pre class="programlisting">fprintf(stderr, SD_NOTICE "Hello World!\n");</pre></div></div><br class="example-break"></div><div class="refsect1"><a name="idm214192388800"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p><a name="pkgconfig-text"></a>These APIs are implemented as a shared
   library, which can be compiled and linked to with the
   <code class="constant">libsystemd</code> <a href="pkg-config.html"><span class="citerefentry"><span class="refentrytitle">pkg-config</span>(1)</span></a>
-  file.</p></div><div class="refsect1"><a name="idm214184164912"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+  file.</p></div><div class="refsect1"><a name="idm214193723968"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
                         <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
                         <a href="sd_listen_fds.html"><span class="citerefentry"><span class="refentrytitle">sd_listen_fds</span>(3)</span></a>,
                         <a href="sd_notify.html"><span class="citerefentry"><span class="refentrytitle">sd_notify</span>(3)</span></a>,
index 63792bb2d1dd6c7fd3cc2a2b41a991b49f0f2b7d..afc020f8340b843665afa6649182dcb875af6d39 100644 (file)
@@ -19,8 +19,8 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="sd-daemon"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd-daemon, SD_EMERG, SD_ALERT, SD_CRIT, SD_ERR, SD_WARNING, SD_NOTICE, SD_INFO, SD_DEBUG — APIs for
-                new-style daemons</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-daemon.h&gt;</pre></div><div class="cmdsynopsis"><p><code class="command">pkg-config --cflags --libs libsystemd</code> </p></div></div><div class="refsect1"><a name="idm214188016064"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="filename">sd-daemon.h</code> provide APIs
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="sd-daemon"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd-daemon, SD_EMERG, SD_ALERT, SD_CRIT, SD_ERR, SD_WARNING, SD_NOTICE, SD_INFO, SD_DEBUG — APIs for
+                new-style daemons</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-daemon.h&gt;</pre></div><div class="cmdsynopsis"><p><code class="command">pkg-config --cflags --libs libsystemd</code> </p></div></div><div class="refsect1"><a name="idm214195900512"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="filename">sd-daemon.h</code> provide APIs
                 for new-style daemons, as implemented by the
                 <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>
                 init system.</p><p>See
                 log level system. To use these prefixes simply prefix
                 every line with one of these strings. A line that is
                 not prefixed will be logged at the default log level
-                SD_INFO.</p><div class="example"><a name="idm214184167584"></a><p class="title"><b>Example 1. Hello World</b></p><div class="example-contents"><p>A daemon may log with the log level
-                        NOTICE by issuing this call:</p><pre class="programlisting">fprintf(stderr, SD_NOTICE "Hello World!\n");</pre></div></div><br class="example-break"></div><div class="refsect1"><a name="idm214180497360"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p><a name="pkgconfig-text"></a>These APIs are implemented as a shared
+                SD_INFO.</p><div class="example"><a name="idm214195045552"></a><p class="title"><b>Example 1. Hello World</b></p><div class="example-contents"><p>A daemon may log with the log level
+                        NOTICE by issuing this call:</p><pre class="programlisting">fprintf(stderr, SD_NOTICE "Hello World!\n");</pre></div></div><br class="example-break"></div><div class="refsect1"><a name="idm214192388800"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p><a name="pkgconfig-text"></a>These APIs are implemented as a shared
   library, which can be compiled and linked to with the
   <code class="constant">libsystemd</code> <a href="pkg-config.html"><span class="citerefentry"><span class="refentrytitle">pkg-config</span>(1)</span></a>
-  file.</p></div><div class="refsect1"><a name="idm214184164912"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+  file.</p></div><div class="refsect1"><a name="idm214193723968"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
                         <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
                         <a href="sd_listen_fds.html"><span class="citerefentry"><span class="refentrytitle">sd_listen_fds</span>(3)</span></a>,
                         <a href="sd_notify.html"><span class="citerefentry"><span class="refentrytitle">sd_notify</span>(3)</span></a>,
index 1ee8026bcb2e97706bfeabcb93213cf766f1c272..913e12f3247b208f1463c5ef1193713668dee8cd 100644 (file)
@@ -19,7 +19,7 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="sd-id128"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd-id128, sd_id128_t, SD_ID128_MAKE, SD_ID128_CONST_STR, SD_ID128_FORMAT_STR, SD_ID128_FORMAT_VAL, sd_id128_equal — APIs for processing 128-bit IDs</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-id128.h&gt;</pre></div><div class="cmdsynopsis"><p><code class="command">pkg-config --cflags --libs libsystemd</code> </p></div></div><div class="refsect1"><a name="idm214203487536"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="filename">sd-id128.h</code> provides APIs to
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="sd-id128"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd-id128, sd_id128_t, SD_ID128_MAKE, SD_ID128_CONST_STR, SD_ID128_FORMAT_STR, SD_ID128_FORMAT_VAL, sd_id128_equal — APIs for processing 128-bit IDs</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-id128.h&gt;</pre></div><div class="cmdsynopsis"><p><code class="command">pkg-config --cflags --libs libsystemd</code> </p></div></div><div class="refsect1"><a name="idm214191197712"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="filename">sd-id128.h</code> provides APIs to
                 process and generate 128-bit ID values. The 128-bit ID
                 values processed and generated by these APIs are a
                 generalization of OSF UUIDs as defined by <a class="ulink" href="https://tools.ietf.org/html/rfc4122" target="_top">RFC
 }</pre><p>Note that new, randomized IDs may be generated
                 with
                 <a href="journalctl.html"><span class="citerefentry"><span class="refentrytitle">journalctl</span>(1)</span></a>'s
-                <code class="option">--new-id</code> option.</p></div><div class="refsect1"><a name="idm214194742784"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p><a name="pkgconfig-text"></a>These APIs are implemented as a shared
+                <code class="option">--new-id</code> option.</p></div><div class="refsect1"><a name="idm214187744304"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p><a name="pkgconfig-text"></a>These APIs are implemented as a shared
   library, which can be compiled and linked to with the
   <code class="constant">libsystemd</code> <a href="pkg-config.html"><span class="citerefentry"><span class="refentrytitle">pkg-config</span>(1)</span></a>
-  file.</p></div><div class="refsect1"><a name="idm214203585552"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+  file.</p></div><div class="refsect1"><a name="idm214191643840"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
                         <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
                         <a href="sd_id128_to_string.html"><span class="citerefentry"><span class="refentrytitle">sd_id128_to_string</span>(3)</span></a>,
                         <a href="sd_id128_randomize.html"><span class="citerefentry"><span class="refentrytitle">sd_id128_randomize</span>(3)</span></a>,
index 1ee8026bcb2e97706bfeabcb93213cf766f1c272..913e12f3247b208f1463c5ef1193713668dee8cd 100644 (file)
@@ -19,7 +19,7 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="sd-id128"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd-id128, sd_id128_t, SD_ID128_MAKE, SD_ID128_CONST_STR, SD_ID128_FORMAT_STR, SD_ID128_FORMAT_VAL, sd_id128_equal — APIs for processing 128-bit IDs</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-id128.h&gt;</pre></div><div class="cmdsynopsis"><p><code class="command">pkg-config --cflags --libs libsystemd</code> </p></div></div><div class="refsect1"><a name="idm214203487536"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="filename">sd-id128.h</code> provides APIs to
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="sd-id128"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd-id128, sd_id128_t, SD_ID128_MAKE, SD_ID128_CONST_STR, SD_ID128_FORMAT_STR, SD_ID128_FORMAT_VAL, sd_id128_equal — APIs for processing 128-bit IDs</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-id128.h&gt;</pre></div><div class="cmdsynopsis"><p><code class="command">pkg-config --cflags --libs libsystemd</code> </p></div></div><div class="refsect1"><a name="idm214191197712"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="filename">sd-id128.h</code> provides APIs to
                 process and generate 128-bit ID values. The 128-bit ID
                 values processed and generated by these APIs are a
                 generalization of OSF UUIDs as defined by <a class="ulink" href="https://tools.ietf.org/html/rfc4122" target="_top">RFC
 }</pre><p>Note that new, randomized IDs may be generated
                 with
                 <a href="journalctl.html"><span class="citerefentry"><span class="refentrytitle">journalctl</span>(1)</span></a>'s
-                <code class="option">--new-id</code> option.</p></div><div class="refsect1"><a name="idm214194742784"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p><a name="pkgconfig-text"></a>These APIs are implemented as a shared
+                <code class="option">--new-id</code> option.</p></div><div class="refsect1"><a name="idm214187744304"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p><a name="pkgconfig-text"></a>These APIs are implemented as a shared
   library, which can be compiled and linked to with the
   <code class="constant">libsystemd</code> <a href="pkg-config.html"><span class="citerefentry"><span class="refentrytitle">pkg-config</span>(1)</span></a>
-  file.</p></div><div class="refsect1"><a name="idm214203585552"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+  file.</p></div><div class="refsect1"><a name="idm214191643840"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
                         <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
                         <a href="sd_id128_to_string.html"><span class="citerefentry"><span class="refentrytitle">sd_id128_to_string</span>(3)</span></a>,
                         <a href="sd_id128_randomize.html"><span class="citerefentry"><span class="refentrytitle">sd_id128_randomize</span>(3)</span></a>,
index 1ee8026bcb2e97706bfeabcb93213cf766f1c272..913e12f3247b208f1463c5ef1193713668dee8cd 100644 (file)
@@ -19,7 +19,7 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="sd-id128"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd-id128, sd_id128_t, SD_ID128_MAKE, SD_ID128_CONST_STR, SD_ID128_FORMAT_STR, SD_ID128_FORMAT_VAL, sd_id128_equal — APIs for processing 128-bit IDs</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-id128.h&gt;</pre></div><div class="cmdsynopsis"><p><code class="command">pkg-config --cflags --libs libsystemd</code> </p></div></div><div class="refsect1"><a name="idm214203487536"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="filename">sd-id128.h</code> provides APIs to
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="sd-id128"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd-id128, sd_id128_t, SD_ID128_MAKE, SD_ID128_CONST_STR, SD_ID128_FORMAT_STR, SD_ID128_FORMAT_VAL, sd_id128_equal — APIs for processing 128-bit IDs</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-id128.h&gt;</pre></div><div class="cmdsynopsis"><p><code class="command">pkg-config --cflags --libs libsystemd</code> </p></div></div><div class="refsect1"><a name="idm214191197712"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="filename">sd-id128.h</code> provides APIs to
                 process and generate 128-bit ID values. The 128-bit ID
                 values processed and generated by these APIs are a
                 generalization of OSF UUIDs as defined by <a class="ulink" href="https://tools.ietf.org/html/rfc4122" target="_top">RFC
 }</pre><p>Note that new, randomized IDs may be generated
                 with
                 <a href="journalctl.html"><span class="citerefentry"><span class="refentrytitle">journalctl</span>(1)</span></a>'s
-                <code class="option">--new-id</code> option.</p></div><div class="refsect1"><a name="idm214194742784"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p><a name="pkgconfig-text"></a>These APIs are implemented as a shared
+                <code class="option">--new-id</code> option.</p></div><div class="refsect1"><a name="idm214187744304"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p><a name="pkgconfig-text"></a>These APIs are implemented as a shared
   library, which can be compiled and linked to with the
   <code class="constant">libsystemd</code> <a href="pkg-config.html"><span class="citerefentry"><span class="refentrytitle">pkg-config</span>(1)</span></a>
-  file.</p></div><div class="refsect1"><a name="idm214203585552"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+  file.</p></div><div class="refsect1"><a name="idm214191643840"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
                         <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
                         <a href="sd_id128_to_string.html"><span class="citerefentry"><span class="refentrytitle">sd_id128_to_string</span>(3)</span></a>,
                         <a href="sd_id128_randomize.html"><span class="citerefentry"><span class="refentrytitle">sd_id128_randomize</span>(3)</span></a>,
index 1ee8026bcb2e97706bfeabcb93213cf766f1c272..913e12f3247b208f1463c5ef1193713668dee8cd 100644 (file)
@@ -19,7 +19,7 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="sd-id128"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd-id128, sd_id128_t, SD_ID128_MAKE, SD_ID128_CONST_STR, SD_ID128_FORMAT_STR, SD_ID128_FORMAT_VAL, sd_id128_equal — APIs for processing 128-bit IDs</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-id128.h&gt;</pre></div><div class="cmdsynopsis"><p><code class="command">pkg-config --cflags --libs libsystemd</code> </p></div></div><div class="refsect1"><a name="idm214203487536"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="filename">sd-id128.h</code> provides APIs to
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="sd-id128"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd-id128, sd_id128_t, SD_ID128_MAKE, SD_ID128_CONST_STR, SD_ID128_FORMAT_STR, SD_ID128_FORMAT_VAL, sd_id128_equal — APIs for processing 128-bit IDs</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-id128.h&gt;</pre></div><div class="cmdsynopsis"><p><code class="command">pkg-config --cflags --libs libsystemd</code> </p></div></div><div class="refsect1"><a name="idm214191197712"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="filename">sd-id128.h</code> provides APIs to
                 process and generate 128-bit ID values. The 128-bit ID
                 values processed and generated by these APIs are a
                 generalization of OSF UUIDs as defined by <a class="ulink" href="https://tools.ietf.org/html/rfc4122" target="_top">RFC
 }</pre><p>Note that new, randomized IDs may be generated
                 with
                 <a href="journalctl.html"><span class="citerefentry"><span class="refentrytitle">journalctl</span>(1)</span></a>'s
-                <code class="option">--new-id</code> option.</p></div><div class="refsect1"><a name="idm214194742784"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p><a name="pkgconfig-text"></a>These APIs are implemented as a shared
+                <code class="option">--new-id</code> option.</p></div><div class="refsect1"><a name="idm214187744304"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p><a name="pkgconfig-text"></a>These APIs are implemented as a shared
   library, which can be compiled and linked to with the
   <code class="constant">libsystemd</code> <a href="pkg-config.html"><span class="citerefentry"><span class="refentrytitle">pkg-config</span>(1)</span></a>
-  file.</p></div><div class="refsect1"><a name="idm214203585552"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+  file.</p></div><div class="refsect1"><a name="idm214191643840"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
                         <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
                         <a href="sd_id128_to_string.html"><span class="citerefentry"><span class="refentrytitle">sd_id128_to_string</span>(3)</span></a>,
                         <a href="sd_id128_randomize.html"><span class="citerefentry"><span class="refentrytitle">sd_id128_randomize</span>(3)</span></a>,
index 63792bb2d1dd6c7fd3cc2a2b41a991b49f0f2b7d..afc020f8340b843665afa6649182dcb875af6d39 100644 (file)
@@ -19,8 +19,8 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="sd-daemon"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd-daemon, SD_EMERG, SD_ALERT, SD_CRIT, SD_ERR, SD_WARNING, SD_NOTICE, SD_INFO, SD_DEBUG — APIs for
-                new-style daemons</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-daemon.h&gt;</pre></div><div class="cmdsynopsis"><p><code class="command">pkg-config --cflags --libs libsystemd</code> </p></div></div><div class="refsect1"><a name="idm214188016064"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="filename">sd-daemon.h</code> provide APIs
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="sd-daemon"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd-daemon, SD_EMERG, SD_ALERT, SD_CRIT, SD_ERR, SD_WARNING, SD_NOTICE, SD_INFO, SD_DEBUG — APIs for
+                new-style daemons</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-daemon.h&gt;</pre></div><div class="cmdsynopsis"><p><code class="command">pkg-config --cflags --libs libsystemd</code> </p></div></div><div class="refsect1"><a name="idm214195900512"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="filename">sd-daemon.h</code> provide APIs
                 for new-style daemons, as implemented by the
                 <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>
                 init system.</p><p>See
                 log level system. To use these prefixes simply prefix
                 every line with one of these strings. A line that is
                 not prefixed will be logged at the default log level
-                SD_INFO.</p><div class="example"><a name="idm214184167584"></a><p class="title"><b>Example 1. Hello World</b></p><div class="example-contents"><p>A daemon may log with the log level
-                        NOTICE by issuing this call:</p><pre class="programlisting">fprintf(stderr, SD_NOTICE "Hello World!\n");</pre></div></div><br class="example-break"></div><div class="refsect1"><a name="idm214180497360"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p><a name="pkgconfig-text"></a>These APIs are implemented as a shared
+                SD_INFO.</p><div class="example"><a name="idm214195045552"></a><p class="title"><b>Example 1. Hello World</b></p><div class="example-contents"><p>A daemon may log with the log level
+                        NOTICE by issuing this call:</p><pre class="programlisting">fprintf(stderr, SD_NOTICE "Hello World!\n");</pre></div></div><br class="example-break"></div><div class="refsect1"><a name="idm214192388800"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p><a name="pkgconfig-text"></a>These APIs are implemented as a shared
   library, which can be compiled and linked to with the
   <code class="constant">libsystemd</code> <a href="pkg-config.html"><span class="citerefentry"><span class="refentrytitle">pkg-config</span>(1)</span></a>
-  file.</p></div><div class="refsect1"><a name="idm214184164912"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+  file.</p></div><div class="refsect1"><a name="idm214193723968"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
                         <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
                         <a href="sd_listen_fds.html"><span class="citerefentry"><span class="refentrytitle">sd_listen_fds</span>(3)</span></a>,
                         <a href="sd_notify.html"><span class="citerefentry"><span class="refentrytitle">sd_notify</span>(3)</span></a>,
index ef2d13e7f8fb202dfb797bfa1ca8a2f41d233c98..a5d9515e05c50feb63dc590efd804e3d99c93f46 100644 (file)
@@ -19,8 +19,8 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="sd_journal_get_fd"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_journal_get_fd, sd_journal_get_events, sd_journal_get_timeout, sd_journal_process, sd_journal_wait, sd_journal_reliable_fd, SD_JOURNAL_NOP, SD_JOURNAL_APPEND, SD_JOURNAL_INVALIDATE — Journal change notification
-                interface</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-journal.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_get_fd</b>(</code></td><td>sd_journal *<var class="pdparam">j</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_get_events</b>(</code></td><td>sd_journal *<var class="pdparam">j</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_get_timeout</b>(</code></td><td>sd_journal *<var class="pdparam">j</var>, </td></tr><tr><td> </td><td>uint64_t *<var class="pdparam">timeout_usec</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_process</b>(</code></td><td>sd_journal *<var class="pdparam">j</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_wait</b>(</code></td><td>sd_journal *<var class="pdparam">j</var>, </td></tr><tr><td> </td><td>uint64_t <var class="pdparam">timeout_usec</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_reliable_fd</b>(</code></td><td>sd_journal *<var class="pdparam">j</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214189551600"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_journal_get_fd()</code> returns
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="sd_journal_get_fd"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_journal_get_fd, sd_journal_get_events, sd_journal_get_timeout, sd_journal_process, sd_journal_wait, sd_journal_reliable_fd, SD_JOURNAL_NOP, SD_JOURNAL_APPEND, SD_JOURNAL_INVALIDATE — Journal change notification
+                interface</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-journal.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_get_fd</b>(</code></td><td>sd_journal *<var class="pdparam">j</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_get_events</b>(</code></td><td>sd_journal *<var class="pdparam">j</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_get_timeout</b>(</code></td><td>sd_journal *<var class="pdparam">j</var>, </td></tr><tr><td> </td><td>uint64_t *<var class="pdparam">timeout_usec</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_process</b>(</code></td><td>sd_journal *<var class="pdparam">j</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_wait</b>(</code></td><td>sd_journal *<var class="pdparam">j</var>, </td></tr><tr><td> </td><td>uint64_t <var class="pdparam">timeout_usec</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_reliable_fd</b>(</code></td><td>sd_journal *<var class="pdparam">j</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214185830672"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_journal_get_fd()</code> returns
                 a file descriptor that may be asynchronously polled in
                 an external event loop and is signaled as soon as the
                 journal changes, because new entries or files were
@@ -112,7 +112,7 @@ else {
                 no need to invoke this function directly as
                 <code class="function">sd_journal_get_timeout()</code> on these
                 file systems will ask for timeouts explicitly
-                anyway.</p></div><div class="refsect1"><a name="idm214189511696"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p><code class="function">sd_journal_get_fd()</code> returns
+                anyway.</p></div><div class="refsect1"><a name="idm214185790416"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p><code class="function">sd_journal_get_fd()</code> returns
                 a valid file descriptor on success or a negative
                 errno-style error code.</p><p><code class="function">sd_journal_get_events()</code>
                 returns a combination of <code class="constant">POLLIN</code>,
@@ -138,7 +138,7 @@ else {
                 probably refresh their entire display, while in the
                 case of <code class="constant">SD_JOURNAL_APPEND</code>, it is
                 sufficient to simply continue reading at the previous
-                end of the journal.</p></div><div class="refsect1"><a name="idm214184533264"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p>The <code class="function">sd_journal_get_fd()</code>,
+                end of the journal.</p></div><div class="refsect1"><a name="idm214180864000"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p>The <code class="function">sd_journal_get_fd()</code>,
                 <code class="function">sd_journal_get_events()</code>,
                 <code class="function">sd_journal_reliable_fd()</code>,
                 <code class="function">sd_journal_process()</code> and
@@ -146,7 +146,7 @@ else {
                 available as a shared library, which can be compiled and
                 linked to with the
                 <code class="constant">libsystemd</code> <a href="pkg-config.html"><span class="citerefentry"><span class="refentrytitle">pkg-config</span>(1)</span></a>
-                file.</p></div><div class="refsect1"><a name="idm214184527680"></a><h2 id="Examples">Examples<a class="headerlink" title="Permalink to this headline" href="#Examples">¶</a></h2><p>Iterating through the journal, in a live view tracking all changes:</p><pre class="programlisting">#include &lt;stdio.h&gt;
+                file.</p></div><div class="refsect1"><a name="idm214180858416"></a><h2 id="Examples">Examples<a class="headerlink" title="Permalink to this headline" href="#Examples">¶</a></h2><p>Iterating through the journal, in a live view tracking all changes:</p><pre class="programlisting">#include &lt;stdio.h&gt;
 #include &lt;string.h&gt;
 #include &lt;systemd/sd-journal.h&gt;
 
@@ -208,7 +208,7 @@ int wait_for_changes(sd_journal *j) {
         pollfd.events = sd_journal_get_events(j);
         poll(&amp;pollfd, 1, msec);
         return sd_journal_process(j);
-}</pre></div><div class="refsect1"><a name="idm214184521056"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+}</pre></div><div class="refsect1"><a name="idm214180851792"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
                         <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
                         <a href="sd-journal.html"><span class="citerefentry"><span class="refentrytitle">sd-journal</span>(3)</span></a>,
                         <a href="sd_journal_open.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_open</span>(3)</span></a>,
index 5e4d04c89dec61e486102b65b029c35f83c96104..df228940e21693f7b0ad805c75c39bec16dd9b67 100644 (file)
@@ -19,7 +19,7 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="sd_journal_open"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_journal_open, sd_journal_open_directory, sd_journal_open_files, sd_journal_open_container, sd_journal_close, sd_journal, SD_JOURNAL_LOCAL_ONLY, SD_JOURNAL_RUNTIME_ONLY, SD_JOURNAL_SYSTEM, SD_JOURNAL_CURRENT_USER — Open the system journal for reading</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-journal.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_open</b>(</code></td><td>sd_journal **<var class="pdparam">ret</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">flags</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_open_directory</b>(</code></td><td>sd_journal **<var class="pdparam">ret</var>, </td></tr><tr><td> </td><td>const char *<var class="pdparam">path</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">flags</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_open_files</b>(</code></td><td>sd_journal **<var class="pdparam">ret</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">paths</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">flags</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_open_container</b>(</code></td><td>sd_journal **<var class="pdparam">ret</var>, </td></tr><tr><td> </td><td>const char *<var class="pdparam">machine</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">flags</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">void <b class="fsfunc">sd_journal_close</b>(</code></td><td>sd_journal *<var class="pdparam">j</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214195234384"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_journal_open()</code> opens
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="sd_journal_open"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_journal_open, sd_journal_open_directory, sd_journal_open_files, sd_journal_open_container, sd_journal_close, sd_journal, SD_JOURNAL_LOCAL_ONLY, SD_JOURNAL_RUNTIME_ONLY, SD_JOURNAL_SYSTEM, SD_JOURNAL_CURRENT_USER — Open the system journal for reading</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-journal.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_open</b>(</code></td><td>sd_journal **<var class="pdparam">ret</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">flags</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_open_directory</b>(</code></td><td>sd_journal **<var class="pdparam">ret</var>, </td></tr><tr><td> </td><td>const char *<var class="pdparam">path</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">flags</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_open_files</b>(</code></td><td>sd_journal **<var class="pdparam">ret</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">paths</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">flags</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_open_container</b>(</code></td><td>sd_journal **<var class="pdparam">ret</var>, </td></tr><tr><td> </td><td>const char *<var class="pdparam">machine</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">flags</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">void <b class="fsfunc">sd_journal_close</b>(</code></td><td>sd_journal *<var class="pdparam">j</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214202620928"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_journal_open()</code> opens
                 the log journal for reading. It will find all journal
                 files automatically and interleave them automatically
                 when reading. As first argument it takes a pointer to
                 locally, to its closest entry in time)
                 <a href="sd_journal_seek_cursor.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_seek_cursor</span>(3)</span></a>.</p><p>Notification of journal changes is available via
                 <code class="function">sd_journal_get_fd()</code> and related
-                calls.</p></div><div class="refsect1"><a name="idm214195199952"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>The <code class="function">sd_journal_open()</code>,
+                calls.</p></div><div class="refsect1"><a name="idm214202586464"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>The <code class="function">sd_journal_open()</code>,
                 <code class="function">sd_journal_open_directory()</code>, and
                 <code class="function">sd_journal_open_files()</code> calls
                 return 0 on success or a negative errno-style error
                 code. <code class="function">sd_journal_close()</code> returns
-                nothing.</p></div><div class="refsect1"><a name="idm214195195744"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p>The <code class="function">sd_journal_open()</code>,
+                nothing.</p></div><div class="refsect1"><a name="idm214202582256"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p>The <code class="function">sd_journal_open()</code>,
                 <code class="function">sd_journal_open_directory()</code> and
                 <code class="function">sd_journal_close()</code> interfaces are
                 available as a shared library, which can be compiled and
                 linked to with the
                 <code class="constant">libsystemd</code> <a href="pkg-config.html"><span class="citerefentry"><span class="refentrytitle">pkg-config</span>(1)</span></a>
-                file.</p></div><div class="refsect1"><a name="idm214190277136"></a><h2 id="History">History<a class="headerlink" title="Permalink to this headline" href="#History">¶</a></h2><p><code class="function">sd_journal_open()</code>,
+                file.</p></div><div class="refsect1"><a name="idm214197661808"></a><h2 id="History">History<a class="headerlink" title="Permalink to this headline" href="#History">¶</a></h2><p><code class="function">sd_journal_open()</code>,
                 <code class="function">sd_journal_close()</code>,
                 <code class="constant">SD_JOURNAL_LOCAL_ONLY</code>,
                 <code class="constant">SD_JOURNAL_RUNTIME_ONLY</code>,
                 and <code class="function">sd_journal_open_files()</code>
                 were added in systemd-205.
                 <code class="constant">SD_JOURNAL_SYSTEM_ONLY</code>
-                was deprecated.</p></div><div class="refsect1"><a name="idm214190270800"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+                was deprecated.</p></div><div class="refsect1"><a name="idm214197655472"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
                         <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
                         <a href="sd-journal.html"><span class="citerefentry"><span class="refentrytitle">sd-journal</span>(3)</span></a>,
                         <a href="sd_journal_next.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_next</span>(3)</span></a>,
index f1961f485bd04f1f7c139f5d71b428aa74a44828..8d2ec8cd7db7aaacad26b4debb890fe52c70c8d1 100644 (file)
@@ -19,7 +19,7 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="sd_journal_next"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_journal_next, sd_journal_previous, sd_journal_next_skip, sd_journal_previous_skip, SD_JOURNAL_FOREACH, SD_JOURNAL_FOREACH_BACKWARDS — Advance or set back the read pointer in the journal</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-journal.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_next</b>(</code></td><td>sd_journal *<var class="pdparam">j</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_previous</b>(</code></td><td>sd_journal *<var class="pdparam">j</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_next_skip</b>(</code></td><td>sd_journal *<var class="pdparam">j</var>, </td></tr><tr><td> </td><td>uint64_t <var class="pdparam">skip</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_previous_skip</b>(</code></td><td>sd_journal *<var class="pdparam">j</var>, </td></tr><tr><td> </td><td>uint64_t <var class="pdparam">skip</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef"><b class="fsfunc">SD_JOURNAL_FOREACH</b>(</code></td><td>sd_journal *<var class="pdparam">j</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef"><b class="fsfunc">SD_JOURNAL_FOREACH_BACKWARDS</b>(</code></td><td>sd_journal *<var class="pdparam">j</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214184331424"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_journal_next()</code> advances
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="sd_journal_next"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_journal_next, sd_journal_previous, sd_journal_next_skip, sd_journal_previous_skip, SD_JOURNAL_FOREACH, SD_JOURNAL_FOREACH_BACKWARDS — Advance or set back the read pointer in the journal</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-journal.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_next</b>(</code></td><td>sd_journal *<var class="pdparam">j</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_previous</b>(</code></td><td>sd_journal *<var class="pdparam">j</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_next_skip</b>(</code></td><td>sd_journal *<var class="pdparam">j</var>, </td></tr><tr><td> </td><td>uint64_t <var class="pdparam">skip</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_previous_skip</b>(</code></td><td>sd_journal *<var class="pdparam">j</var>, </td></tr><tr><td> </td><td>uint64_t <var class="pdparam">skip</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef"><b class="fsfunc">SD_JOURNAL_FOREACH</b>(</code></td><td>sd_journal *<var class="pdparam">j</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef"><b class="fsfunc">SD_JOURNAL_FOREACH_BACKWARDS</b>(</code></td><td>sd_journal *<var class="pdparam">j</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214197612176"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_journal_next()</code> advances
                 the read pointer into the journal by one entry. The
                 only argument taken is a journal context object as
                 allocated via
@@ -48,7 +48,7 @@
                 for an example. Similarly,
                 <code class="function">SD_JOURNAL_FOREACH_BACKWARDS()</code>
                 may be used for iterating the journal in reverse
-                order.</p></div><div class="refsect1"><a name="idm214184318032"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>The four calls return the number of entries
+                order.</p></div><div class="refsect1"><a name="idm214197598784"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>The four calls return the number of entries
                 advanced/set back on success or a negative errno-style
                 error code. When the end or beginning of the journal
                 is reached, a number smaller than requested is
                 <code class="function">sd_journal_previous()</code> reach the
                 end/beginning of the journal they will return 0,
                 instead of 1 when they are successful. This should be
-                considered an EOF marker.</p></div><div class="refsect1"><a name="idm214184307648"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p>The <code class="function">sd_journal_next()</code>, <code class="function">sd_journal_previous()</code>,
+                considered an EOF marker.</p></div><div class="refsect1"><a name="idm214197588368"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p>The <code class="function">sd_journal_next()</code>, <code class="function">sd_journal_previous()</code>,
                 <code class="function">sd_journal_next_skip()</code> and
                 <code class="function">sd_journal_previous_skip()</code> interfaces are
                 available as a shared library, which can be compiled and
                 linked to with the
                 <code class="constant">libsystemd</code> <a href="pkg-config.html"><span class="citerefentry"><span class="refentrytitle">pkg-config</span>(1)</span></a>
-                file.</p></div><div class="refsect1"><a name="idm214184302064"></a><h2 id="Examples">Examples<a class="headerlink" title="Permalink to this headline" href="#Examples">¶</a></h2><p>Iterating through the journal:</p><pre class="programlisting">#include &lt;stdio.h&gt;
+                file.</p></div><div class="refsect1"><a name="idm214197582832"></a><h2 id="Examples">Examples<a class="headerlink" title="Permalink to this headline" href="#Examples">¶</a></h2><p>Iterating through the journal:</p><pre class="programlisting">#include &lt;stdio.h&gt;
 #include &lt;string.h&gt;
 #include &lt;systemd/sd-journal.h&gt;
 
@@ -79,7 +79,7 @@ int main(int argc, char *argv[]) {
                 const char *d;
                 size_t l;
 
-                r = sd_journal_get_data(j, "MESSAGE", &amp;d, &amp;l);
+                r = sd_journal_get_data(j, "MESSAGE", (const void **)&amp;d, &amp;l);
                 if (r &lt; 0) {
                         fprintf(stderr, "Failed to read message field: %s\n", strerror(-r));
                         continue;
@@ -89,7 +89,7 @@ int main(int argc, char *argv[]) {
         }
         sd_journal_close(j);
         return 0;
-}</pre></div><div class="refsect1"><a name="idm214184298560"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+}</pre></div><div class="refsect1"><a name="idm214197579328"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
                         <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
                         <a href="sd-journal.html"><span class="citerefentry"><span class="refentrytitle">sd-journal</span>(3)</span></a>,
                         <a href="sd_journal_open.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_open</span>(3)</span></a>,
index f1961f485bd04f1f7c139f5d71b428aa74a44828..8d2ec8cd7db7aaacad26b4debb890fe52c70c8d1 100644 (file)
@@ -19,7 +19,7 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="sd_journal_next"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_journal_next, sd_journal_previous, sd_journal_next_skip, sd_journal_previous_skip, SD_JOURNAL_FOREACH, SD_JOURNAL_FOREACH_BACKWARDS — Advance or set back the read pointer in the journal</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-journal.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_next</b>(</code></td><td>sd_journal *<var class="pdparam">j</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_previous</b>(</code></td><td>sd_journal *<var class="pdparam">j</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_next_skip</b>(</code></td><td>sd_journal *<var class="pdparam">j</var>, </td></tr><tr><td> </td><td>uint64_t <var class="pdparam">skip</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_previous_skip</b>(</code></td><td>sd_journal *<var class="pdparam">j</var>, </td></tr><tr><td> </td><td>uint64_t <var class="pdparam">skip</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef"><b class="fsfunc">SD_JOURNAL_FOREACH</b>(</code></td><td>sd_journal *<var class="pdparam">j</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef"><b class="fsfunc">SD_JOURNAL_FOREACH_BACKWARDS</b>(</code></td><td>sd_journal *<var class="pdparam">j</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214184331424"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_journal_next()</code> advances
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="sd_journal_next"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_journal_next, sd_journal_previous, sd_journal_next_skip, sd_journal_previous_skip, SD_JOURNAL_FOREACH, SD_JOURNAL_FOREACH_BACKWARDS — Advance or set back the read pointer in the journal</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-journal.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_next</b>(</code></td><td>sd_journal *<var class="pdparam">j</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_previous</b>(</code></td><td>sd_journal *<var class="pdparam">j</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_next_skip</b>(</code></td><td>sd_journal *<var class="pdparam">j</var>, </td></tr><tr><td> </td><td>uint64_t <var class="pdparam">skip</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_previous_skip</b>(</code></td><td>sd_journal *<var class="pdparam">j</var>, </td></tr><tr><td> </td><td>uint64_t <var class="pdparam">skip</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef"><b class="fsfunc">SD_JOURNAL_FOREACH</b>(</code></td><td>sd_journal *<var class="pdparam">j</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef"><b class="fsfunc">SD_JOURNAL_FOREACH_BACKWARDS</b>(</code></td><td>sd_journal *<var class="pdparam">j</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214197612176"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_journal_next()</code> advances
                 the read pointer into the journal by one entry. The
                 only argument taken is a journal context object as
                 allocated via
@@ -48,7 +48,7 @@
                 for an example. Similarly,
                 <code class="function">SD_JOURNAL_FOREACH_BACKWARDS()</code>
                 may be used for iterating the journal in reverse
-                order.</p></div><div class="refsect1"><a name="idm214184318032"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>The four calls return the number of entries
+                order.</p></div><div class="refsect1"><a name="idm214197598784"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>The four calls return the number of entries
                 advanced/set back on success or a negative errno-style
                 error code. When the end or beginning of the journal
                 is reached, a number smaller than requested is
                 <code class="function">sd_journal_previous()</code> reach the
                 end/beginning of the journal they will return 0,
                 instead of 1 when they are successful. This should be
-                considered an EOF marker.</p></div><div class="refsect1"><a name="idm214184307648"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p>The <code class="function">sd_journal_next()</code>, <code class="function">sd_journal_previous()</code>,
+                considered an EOF marker.</p></div><div class="refsect1"><a name="idm214197588368"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p>The <code class="function">sd_journal_next()</code>, <code class="function">sd_journal_previous()</code>,
                 <code class="function">sd_journal_next_skip()</code> and
                 <code class="function">sd_journal_previous_skip()</code> interfaces are
                 available as a shared library, which can be compiled and
                 linked to with the
                 <code class="constant">libsystemd</code> <a href="pkg-config.html"><span class="citerefentry"><span class="refentrytitle">pkg-config</span>(1)</span></a>
-                file.</p></div><div class="refsect1"><a name="idm214184302064"></a><h2 id="Examples">Examples<a class="headerlink" title="Permalink to this headline" href="#Examples">¶</a></h2><p>Iterating through the journal:</p><pre class="programlisting">#include &lt;stdio.h&gt;
+                file.</p></div><div class="refsect1"><a name="idm214197582832"></a><h2 id="Examples">Examples<a class="headerlink" title="Permalink to this headline" href="#Examples">¶</a></h2><p>Iterating through the journal:</p><pre class="programlisting">#include &lt;stdio.h&gt;
 #include &lt;string.h&gt;
 #include &lt;systemd/sd-journal.h&gt;
 
@@ -79,7 +79,7 @@ int main(int argc, char *argv[]) {
                 const char *d;
                 size_t l;
 
-                r = sd_journal_get_data(j, "MESSAGE", &amp;d, &amp;l);
+                r = sd_journal_get_data(j, "MESSAGE", (const void **)&amp;d, &amp;l);
                 if (r &lt; 0) {
                         fprintf(stderr, "Failed to read message field: %s\n", strerror(-r));
                         continue;
@@ -89,7 +89,7 @@ int main(int argc, char *argv[]) {
         }
         sd_journal_close(j);
         return 0;
-}</pre></div><div class="refsect1"><a name="idm214184298560"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+}</pre></div><div class="refsect1"><a name="idm214197579328"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
                         <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
                         <a href="sd-journal.html"><span class="citerefentry"><span class="refentrytitle">sd-journal</span>(3)</span></a>,
                         <a href="sd_journal_open.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_open</span>(3)</span></a>,
index 55dc8666a2060de63a1de6ebbba90c0e0f31df5d..5eb35328b8224011850385b38c6d4580476e211f 100644 (file)
@@ -19,7 +19,7 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="sd_journal_get_data"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_journal_get_data, sd_journal_enumerate_data, sd_journal_restart_data, SD_JOURNAL_FOREACH_DATA, sd_journal_set_data_threshold, sd_journal_get_data_threshold — Read data fields from the current journal entry</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-journal.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_get_data</b>(</code></td><td>sd_journal *<var class="pdparam">j</var>, </td></tr><tr><td> </td><td>const char *<var class="pdparam">field</var>, </td></tr><tr><td> </td><td>const void **<var class="pdparam">data</var>, </td></tr><tr><td> </td><td>size_t *<var class="pdparam">length</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_enumerate_data</b>(</code></td><td>sd_journal *<var class="pdparam">j</var>, </td></tr><tr><td> </td><td>const void **<var class="pdparam">data</var>, </td></tr><tr><td> </td><td>size_t *<var class="pdparam">length</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">void <b class="fsfunc">sd_journal_restart_data</b>(</code></td><td>sd_journal *<var class="pdparam">j</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef"><b class="fsfunc">SD_JOURNAL_FOREACH_DATA</b>(</code></td><td>sd_journal *<var class="pdparam">j</var>, </td></tr><tr><td> </td><td>const void *<var class="pdparam">data</var>, </td></tr><tr><td> </td><td>size_t <var class="pdparam">length</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_set_data_threshold</b>(</code></td><td>sd_journal *<var class="pdparam">j</var>, </td></tr><tr><td> </td><td>size_t <var class="pdparam">sz</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_get_data_threshold</b>(</code></td><td>sd_journal *<var class="pdparam">j</var>, </td></tr><tr><td> </td><td>size_t *<var class="pdparam">sz</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214187428608"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_journal_get_data()</code> gets
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="sd_journal_get_data"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_journal_get_data, sd_journal_enumerate_data, sd_journal_restart_data, SD_JOURNAL_FOREACH_DATA, sd_journal_set_data_threshold, sd_journal_get_data_threshold — Read data fields from the current journal entry</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-journal.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_get_data</b>(</code></td><td>sd_journal *<var class="pdparam">j</var>, </td></tr><tr><td> </td><td>const char *<var class="pdparam">field</var>, </td></tr><tr><td> </td><td>const void **<var class="pdparam">data</var>, </td></tr><tr><td> </td><td>size_t *<var class="pdparam">length</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_enumerate_data</b>(</code></td><td>sd_journal *<var class="pdparam">j</var>, </td></tr><tr><td> </td><td>const void **<var class="pdparam">data</var>, </td></tr><tr><td> </td><td>size_t *<var class="pdparam">length</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">void <b class="fsfunc">sd_journal_restart_data</b>(</code></td><td>sd_journal *<var class="pdparam">j</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef"><b class="fsfunc">SD_JOURNAL_FOREACH_DATA</b>(</code></td><td>sd_journal *<var class="pdparam">j</var>, </td></tr><tr><td> </td><td>const void *<var class="pdparam">data</var>, </td></tr><tr><td> </td><td>size_t <var class="pdparam">length</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_set_data_threshold</b>(</code></td><td>sd_journal *<var class="pdparam">j</var>, </td></tr><tr><td> </td><td>size_t <var class="pdparam">sz</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_get_data_threshold</b>(</code></td><td>sd_journal *<var class="pdparam">j</var>, </td></tr><tr><td> </td><td>size_t *<var class="pdparam">sz</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214182872080"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_journal_get_data()</code> gets
                 the data object associated with a specific field from
                 the current journal entry. It takes four arguments:
                 the journal context object, a string with the field
@@ -77,7 +77,7 @@
                 having to decompress large compressed data objects in
                 full.</p><p><code class="function">sd_journal_get_data_threshold()</code>
                 returns the currently configured data field size
-                threshold.</p></div><div class="refsect1"><a name="idm214187402928"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p><code class="function">sd_journal_get_data()</code>
+                threshold.</p></div><div class="refsect1"><a name="idm214182845904"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p><code class="function">sd_journal_get_data()</code>
                 returns 0 on success or a negative errno-style error
                 code. If the current entry does not include the
                 specified field, -ENOENT is returned. If
@@ -92,7 +92,7 @@
                 nothing. <code class="function">sd_journal_set_data_threshold()</code>
                 and <code class="function">sd_journal_get_threshold()</code>
                 return 0 on success or a negative errno-style error
-                code.</p></div><div class="refsect1"><a name="idm214187396880"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p>The <code class="function">sd_journal_get_data()</code>,
+                code.</p></div><div class="refsect1"><a name="idm214182839856"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p>The <code class="function">sd_journal_get_data()</code>,
                 <code class="function">sd_journal_enumerate_data()</code>,
                 <code class="function">sd_journal_restart_data()</code>,
                 <code class="function">sd_journal_set_data_threshold()</code>
                 interfaces are available as a shared library, which can
                 be compiled and linked to with the
                 <code class="constant">libsystemd</code> <a href="pkg-config.html"><span class="citerefentry"><span class="refentrytitle">pkg-config</span>(1)</span></a>
-                file.</p></div><div class="refsect1"><a name="idm214187390528"></a><h2 id="Examples">Examples<a class="headerlink" title="Permalink to this headline" href="#Examples">¶</a></h2><p>See
+                file.</p></div><div class="refsect1"><a name="idm214177917392"></a><h2 id="Examples">Examples<a class="headerlink" title="Permalink to this headline" href="#Examples">¶</a></h2><p>See
                 <a href="sd_journal_next.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_next</span>(3)</span></a>
                 for a complete example how to use
                 <code class="function">sd_journal_get_data()</code>.</p><p>Use the
                 entry:</p><pre class="programlisting">...
 int print_fields(sd_journal *j) {
         const void *data;
-        size_t l;
+        size_t length;
         SD_JOURNAL_FOREACH_DATA(j, data, length)
                 printf("%.*s\n", (int) length, data);
 }
-...</pre></div><div class="refsect1"><a name="idm214182417888"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+...</pre></div><div class="refsect1"><a name="idm214177912896"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
                         <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
                         <a href="systemd.journal-fields.html"><span class="citerefentry"><span class="refentrytitle">systemd.journal-fields</span>(7)</span></a>,
                         <a href="sd-journal.html"><span class="citerefentry"><span class="refentrytitle">sd-journal</span>(3)</span></a>,
index 3c8684d994a027f0bf02ac699550404746797fe3..8419624e21ee409961fc0d86d32be581518ef48f 100644 (file)
@@ -19,7 +19,7 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="sd_journal_query_unique"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_journal_query_unique, sd_journal_enumerate_unique, sd_journal_restart_unique, SD_JOURNAL_FOREACH_UNIQUE — Read unique data fields from the journal</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-journal.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_query_unique</b>(</code></td><td>sd_journal *<var class="pdparam">j</var>, </td></tr><tr><td> </td><td>const char *<var class="pdparam">field</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_enumerate_unique</b>(</code></td><td>sd_journal *<var class="pdparam">j</var>, </td></tr><tr><td> </td><td>const void **<var class="pdparam">data</var>, </td></tr><tr><td> </td><td>size_t *<var class="pdparam">length</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">void <b class="fsfunc">sd_journal_restart_unique</b>(</code></td><td>sd_journal *<var class="pdparam">j</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef"><b class="fsfunc">SD_JOURNAL_FOREACH_UNIQUE</b>(</code></td><td>sd_journal *<var class="pdparam">j</var>, </td></tr><tr><td> </td><td>const void *<var class="pdparam">data</var>, </td></tr><tr><td> </td><td>size_t <var class="pdparam">length</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214170804784"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_journal_query_unique()</code>
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="sd_journal_query_unique"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_journal_query_unique, sd_journal_enumerate_unique, sd_journal_restart_unique, SD_JOURNAL_FOREACH_UNIQUE — Read unique data fields from the journal</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-journal.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_query_unique</b>(</code></td><td>sd_journal *<var class="pdparam">j</var>, </td></tr><tr><td> </td><td>const char *<var class="pdparam">field</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_enumerate_unique</b>(</code></td><td>sd_journal *<var class="pdparam">j</var>, </td></tr><tr><td> </td><td>const void **<var class="pdparam">data</var>, </td></tr><tr><td> </td><td>size_t *<var class="pdparam">length</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">void <b class="fsfunc">sd_journal_restart_unique</b>(</code></td><td>sd_journal *<var class="pdparam">j</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef"><b class="fsfunc">SD_JOURNAL_FOREACH_UNIQUE</b>(</code></td><td>sd_journal *<var class="pdparam">j</var>, </td></tr><tr><td> </td><td>const void *<var class="pdparam">data</var>, </td></tr><tr><td> </td><td>size_t <var class="pdparam">length</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214197431712"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_journal_query_unique()</code>
                 queries the journal for all unique values the
                 specified field can take. It takes two arguments: the
                 journal to query and the field name to look
                 influenced by matches set with
                 <code class="function">sd_journal_add_match()</code> but this
                 might change in a later version of this
-                software.</p></div><div class="refsect1"><a name="idm214170790992"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p><code class="function">sd_journal_query_unique()</code>
+                software.</p></div><div class="refsect1"><a name="idm214197493904"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p><code class="function">sd_journal_query_unique()</code>
                 returns 0 on success or a negative errno-style error
                 code. <code class="function">sd_journal_enumerate_unique()</code>
                 returns a positive integer if the next field data has
                 been read, 0 when no more fields are known, or a
                 negative errno-style error
                 code. <code class="function">sd_journal_restart_unique()</code>
-                returns nothing.</p></div><div class="refsect1"><a name="idm214170780096"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p>The <code class="function">sd_journal_query_unique()</code>,
+                returns nothing.</p></div><div class="refsect1"><a name="idm214197490352"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p>The <code class="function">sd_journal_query_unique()</code>,
                 <code class="function">sd_journal_enumerate_unique()</code> and
                 <code class="function">sd_journal_restart_unique()</code>
                 interfaces are available as a shared library, which can
                 be compiled and linked to with the
                 <code class="constant">libsystemd</code> <a href="pkg-config.html"><span class="citerefentry"><span class="refentrytitle">pkg-config</span>(1)</span></a>
-                file.</p></div><div class="refsect1"><a name="idm214170775216"></a><h2 id="Examples">Examples<a class="headerlink" title="Permalink to this headline" href="#Examples">¶</a></h2><p>Use the
+                file.</p></div><div class="refsect1"><a name="idm214197485472"></a><h2 id="Examples">Examples<a class="headerlink" title="Permalink to this headline" href="#Examples">¶</a></h2><p>Use the
                 <code class="function">SD_JOURNAL_FOREACH_UNIQUE</code> macro
                 to iterate through all values a field of the journal
                 can take. The following example lists all unit names
@@ -101,7 +101,7 @@ int main(int argc, char *argv[]) {
                 printf("%.*s\n", (int) l, (const char*) d);
         sd_journal_close(j);
         return 0;
-}</pre></div><div class="refsect1"><a name="idm214170770608"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+}</pre></div><div class="refsect1"><a name="idm214197482672"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
                         <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
                         <a href="systemd.journal-fields.html"><span class="citerefentry"><span class="refentrytitle">systemd.journal-fields</span>(7)</span></a>,
                         <a href="sd-journal.html"><span class="citerefentry"><span class="refentrytitle">sd-journal</span>(3)</span></a>,
index ef2d13e7f8fb202dfb797bfa1ca8a2f41d233c98..a5d9515e05c50feb63dc590efd804e3d99c93f46 100644 (file)
@@ -19,8 +19,8 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="sd_journal_get_fd"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_journal_get_fd, sd_journal_get_events, sd_journal_get_timeout, sd_journal_process, sd_journal_wait, sd_journal_reliable_fd, SD_JOURNAL_NOP, SD_JOURNAL_APPEND, SD_JOURNAL_INVALIDATE — Journal change notification
-                interface</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-journal.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_get_fd</b>(</code></td><td>sd_journal *<var class="pdparam">j</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_get_events</b>(</code></td><td>sd_journal *<var class="pdparam">j</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_get_timeout</b>(</code></td><td>sd_journal *<var class="pdparam">j</var>, </td></tr><tr><td> </td><td>uint64_t *<var class="pdparam">timeout_usec</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_process</b>(</code></td><td>sd_journal *<var class="pdparam">j</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_wait</b>(</code></td><td>sd_journal *<var class="pdparam">j</var>, </td></tr><tr><td> </td><td>uint64_t <var class="pdparam">timeout_usec</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_reliable_fd</b>(</code></td><td>sd_journal *<var class="pdparam">j</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214189551600"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_journal_get_fd()</code> returns
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="sd_journal_get_fd"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_journal_get_fd, sd_journal_get_events, sd_journal_get_timeout, sd_journal_process, sd_journal_wait, sd_journal_reliable_fd, SD_JOURNAL_NOP, SD_JOURNAL_APPEND, SD_JOURNAL_INVALIDATE — Journal change notification
+                interface</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-journal.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_get_fd</b>(</code></td><td>sd_journal *<var class="pdparam">j</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_get_events</b>(</code></td><td>sd_journal *<var class="pdparam">j</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_get_timeout</b>(</code></td><td>sd_journal *<var class="pdparam">j</var>, </td></tr><tr><td> </td><td>uint64_t *<var class="pdparam">timeout_usec</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_process</b>(</code></td><td>sd_journal *<var class="pdparam">j</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_wait</b>(</code></td><td>sd_journal *<var class="pdparam">j</var>, </td></tr><tr><td> </td><td>uint64_t <var class="pdparam">timeout_usec</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_reliable_fd</b>(</code></td><td>sd_journal *<var class="pdparam">j</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214185830672"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_journal_get_fd()</code> returns
                 a file descriptor that may be asynchronously polled in
                 an external event loop and is signaled as soon as the
                 journal changes, because new entries or files were
@@ -112,7 +112,7 @@ else {
                 no need to invoke this function directly as
                 <code class="function">sd_journal_get_timeout()</code> on these
                 file systems will ask for timeouts explicitly
-                anyway.</p></div><div class="refsect1"><a name="idm214189511696"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p><code class="function">sd_journal_get_fd()</code> returns
+                anyway.</p></div><div class="refsect1"><a name="idm214185790416"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p><code class="function">sd_journal_get_fd()</code> returns
                 a valid file descriptor on success or a negative
                 errno-style error code.</p><p><code class="function">sd_journal_get_events()</code>
                 returns a combination of <code class="constant">POLLIN</code>,
@@ -138,7 +138,7 @@ else {
                 probably refresh their entire display, while in the
                 case of <code class="constant">SD_JOURNAL_APPEND</code>, it is
                 sufficient to simply continue reading at the previous
-                end of the journal.</p></div><div class="refsect1"><a name="idm214184533264"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p>The <code class="function">sd_journal_get_fd()</code>,
+                end of the journal.</p></div><div class="refsect1"><a name="idm214180864000"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p>The <code class="function">sd_journal_get_fd()</code>,
                 <code class="function">sd_journal_get_events()</code>,
                 <code class="function">sd_journal_reliable_fd()</code>,
                 <code class="function">sd_journal_process()</code> and
@@ -146,7 +146,7 @@ else {
                 available as a shared library, which can be compiled and
                 linked to with the
                 <code class="constant">libsystemd</code> <a href="pkg-config.html"><span class="citerefentry"><span class="refentrytitle">pkg-config</span>(1)</span></a>
-                file.</p></div><div class="refsect1"><a name="idm214184527680"></a><h2 id="Examples">Examples<a class="headerlink" title="Permalink to this headline" href="#Examples">¶</a></h2><p>Iterating through the journal, in a live view tracking all changes:</p><pre class="programlisting">#include &lt;stdio.h&gt;
+                file.</p></div><div class="refsect1"><a name="idm214180858416"></a><h2 id="Examples">Examples<a class="headerlink" title="Permalink to this headline" href="#Examples">¶</a></h2><p>Iterating through the journal, in a live view tracking all changes:</p><pre class="programlisting">#include &lt;stdio.h&gt;
 #include &lt;string.h&gt;
 #include &lt;systemd/sd-journal.h&gt;
 
@@ -208,7 +208,7 @@ int wait_for_changes(sd_journal *j) {
         pollfd.events = sd_journal_get_events(j);
         poll(&amp;pollfd, 1, msec);
         return sd_journal_process(j);
-}</pre></div><div class="refsect1"><a name="idm214184521056"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+}</pre></div><div class="refsect1"><a name="idm214180851792"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
                         <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
                         <a href="sd-journal.html"><span class="citerefentry"><span class="refentrytitle">sd-journal</span>(3)</span></a>,
                         <a href="sd_journal_open.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_open</span>(3)</span></a>,
index 5e4d04c89dec61e486102b65b029c35f83c96104..df228940e21693f7b0ad805c75c39bec16dd9b67 100644 (file)
@@ -19,7 +19,7 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="sd_journal_open"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_journal_open, sd_journal_open_directory, sd_journal_open_files, sd_journal_open_container, sd_journal_close, sd_journal, SD_JOURNAL_LOCAL_ONLY, SD_JOURNAL_RUNTIME_ONLY, SD_JOURNAL_SYSTEM, SD_JOURNAL_CURRENT_USER — Open the system journal for reading</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-journal.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_open</b>(</code></td><td>sd_journal **<var class="pdparam">ret</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">flags</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_open_directory</b>(</code></td><td>sd_journal **<var class="pdparam">ret</var>, </td></tr><tr><td> </td><td>const char *<var class="pdparam">path</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">flags</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_open_files</b>(</code></td><td>sd_journal **<var class="pdparam">ret</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">paths</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">flags</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_open_container</b>(</code></td><td>sd_journal **<var class="pdparam">ret</var>, </td></tr><tr><td> </td><td>const char *<var class="pdparam">machine</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">flags</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">void <b class="fsfunc">sd_journal_close</b>(</code></td><td>sd_journal *<var class="pdparam">j</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214195234384"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_journal_open()</code> opens
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="sd_journal_open"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_journal_open, sd_journal_open_directory, sd_journal_open_files, sd_journal_open_container, sd_journal_close, sd_journal, SD_JOURNAL_LOCAL_ONLY, SD_JOURNAL_RUNTIME_ONLY, SD_JOURNAL_SYSTEM, SD_JOURNAL_CURRENT_USER — Open the system journal for reading</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-journal.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_open</b>(</code></td><td>sd_journal **<var class="pdparam">ret</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">flags</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_open_directory</b>(</code></td><td>sd_journal **<var class="pdparam">ret</var>, </td></tr><tr><td> </td><td>const char *<var class="pdparam">path</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">flags</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_open_files</b>(</code></td><td>sd_journal **<var class="pdparam">ret</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">paths</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">flags</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_open_container</b>(</code></td><td>sd_journal **<var class="pdparam">ret</var>, </td></tr><tr><td> </td><td>const char *<var class="pdparam">machine</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">flags</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">void <b class="fsfunc">sd_journal_close</b>(</code></td><td>sd_journal *<var class="pdparam">j</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214202620928"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_journal_open()</code> opens
                 the log journal for reading. It will find all journal
                 files automatically and interleave them automatically
                 when reading. As first argument it takes a pointer to
                 locally, to its closest entry in time)
                 <a href="sd_journal_seek_cursor.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_seek_cursor</span>(3)</span></a>.</p><p>Notification of journal changes is available via
                 <code class="function">sd_journal_get_fd()</code> and related
-                calls.</p></div><div class="refsect1"><a name="idm214195199952"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>The <code class="function">sd_journal_open()</code>,
+                calls.</p></div><div class="refsect1"><a name="idm214202586464"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>The <code class="function">sd_journal_open()</code>,
                 <code class="function">sd_journal_open_directory()</code>, and
                 <code class="function">sd_journal_open_files()</code> calls
                 return 0 on success or a negative errno-style error
                 code. <code class="function">sd_journal_close()</code> returns
-                nothing.</p></div><div class="refsect1"><a name="idm214195195744"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p>The <code class="function">sd_journal_open()</code>,
+                nothing.</p></div><div class="refsect1"><a name="idm214202582256"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p>The <code class="function">sd_journal_open()</code>,
                 <code class="function">sd_journal_open_directory()</code> and
                 <code class="function">sd_journal_close()</code> interfaces are
                 available as a shared library, which can be compiled and
                 linked to with the
                 <code class="constant">libsystemd</code> <a href="pkg-config.html"><span class="citerefentry"><span class="refentrytitle">pkg-config</span>(1)</span></a>
-                file.</p></div><div class="refsect1"><a name="idm214190277136"></a><h2 id="History">History<a class="headerlink" title="Permalink to this headline" href="#History">¶</a></h2><p><code class="function">sd_journal_open()</code>,
+                file.</p></div><div class="refsect1"><a name="idm214197661808"></a><h2 id="History">History<a class="headerlink" title="Permalink to this headline" href="#History">¶</a></h2><p><code class="function">sd_journal_open()</code>,
                 <code class="function">sd_journal_close()</code>,
                 <code class="constant">SD_JOURNAL_LOCAL_ONLY</code>,
                 <code class="constant">SD_JOURNAL_RUNTIME_ONLY</code>,
                 and <code class="function">sd_journal_open_files()</code>
                 were added in systemd-205.
                 <code class="constant">SD_JOURNAL_SYSTEM_ONLY</code>
-                was deprecated.</p></div><div class="refsect1"><a name="idm214190270800"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+                was deprecated.</p></div><div class="refsect1"><a name="idm214197655472"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
                         <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
                         <a href="sd-journal.html"><span class="citerefentry"><span class="refentrytitle">sd-journal</span>(3)</span></a>,
                         <a href="sd_journal_next.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_next</span>(3)</span></a>,
index ef2d13e7f8fb202dfb797bfa1ca8a2f41d233c98..a5d9515e05c50feb63dc590efd804e3d99c93f46 100644 (file)
@@ -19,8 +19,8 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="sd_journal_get_fd"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_journal_get_fd, sd_journal_get_events, sd_journal_get_timeout, sd_journal_process, sd_journal_wait, sd_journal_reliable_fd, SD_JOURNAL_NOP, SD_JOURNAL_APPEND, SD_JOURNAL_INVALIDATE — Journal change notification
-                interface</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-journal.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_get_fd</b>(</code></td><td>sd_journal *<var class="pdparam">j</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_get_events</b>(</code></td><td>sd_journal *<var class="pdparam">j</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_get_timeout</b>(</code></td><td>sd_journal *<var class="pdparam">j</var>, </td></tr><tr><td> </td><td>uint64_t *<var class="pdparam">timeout_usec</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_process</b>(</code></td><td>sd_journal *<var class="pdparam">j</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_wait</b>(</code></td><td>sd_journal *<var class="pdparam">j</var>, </td></tr><tr><td> </td><td>uint64_t <var class="pdparam">timeout_usec</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_reliable_fd</b>(</code></td><td>sd_journal *<var class="pdparam">j</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214189551600"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_journal_get_fd()</code> returns
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="sd_journal_get_fd"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_journal_get_fd, sd_journal_get_events, sd_journal_get_timeout, sd_journal_process, sd_journal_wait, sd_journal_reliable_fd, SD_JOURNAL_NOP, SD_JOURNAL_APPEND, SD_JOURNAL_INVALIDATE — Journal change notification
+                interface</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-journal.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_get_fd</b>(</code></td><td>sd_journal *<var class="pdparam">j</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_get_events</b>(</code></td><td>sd_journal *<var class="pdparam">j</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_get_timeout</b>(</code></td><td>sd_journal *<var class="pdparam">j</var>, </td></tr><tr><td> </td><td>uint64_t *<var class="pdparam">timeout_usec</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_process</b>(</code></td><td>sd_journal *<var class="pdparam">j</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_wait</b>(</code></td><td>sd_journal *<var class="pdparam">j</var>, </td></tr><tr><td> </td><td>uint64_t <var class="pdparam">timeout_usec</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_reliable_fd</b>(</code></td><td>sd_journal *<var class="pdparam">j</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214185830672"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_journal_get_fd()</code> returns
                 a file descriptor that may be asynchronously polled in
                 an external event loop and is signaled as soon as the
                 journal changes, because new entries or files were
@@ -112,7 +112,7 @@ else {
                 no need to invoke this function directly as
                 <code class="function">sd_journal_get_timeout()</code> on these
                 file systems will ask for timeouts explicitly
-                anyway.</p></div><div class="refsect1"><a name="idm214189511696"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p><code class="function">sd_journal_get_fd()</code> returns
+                anyway.</p></div><div class="refsect1"><a name="idm214185790416"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p><code class="function">sd_journal_get_fd()</code> returns
                 a valid file descriptor on success or a negative
                 errno-style error code.</p><p><code class="function">sd_journal_get_events()</code>
                 returns a combination of <code class="constant">POLLIN</code>,
@@ -138,7 +138,7 @@ else {
                 probably refresh their entire display, while in the
                 case of <code class="constant">SD_JOURNAL_APPEND</code>, it is
                 sufficient to simply continue reading at the previous
-                end of the journal.</p></div><div class="refsect1"><a name="idm214184533264"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p>The <code class="function">sd_journal_get_fd()</code>,
+                end of the journal.</p></div><div class="refsect1"><a name="idm214180864000"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p>The <code class="function">sd_journal_get_fd()</code>,
                 <code class="function">sd_journal_get_events()</code>,
                 <code class="function">sd_journal_reliable_fd()</code>,
                 <code class="function">sd_journal_process()</code> and
@@ -146,7 +146,7 @@ else {
                 available as a shared library, which can be compiled and
                 linked to with the
                 <code class="constant">libsystemd</code> <a href="pkg-config.html"><span class="citerefentry"><span class="refentrytitle">pkg-config</span>(1)</span></a>
-                file.</p></div><div class="refsect1"><a name="idm214184527680"></a><h2 id="Examples">Examples<a class="headerlink" title="Permalink to this headline" href="#Examples">¶</a></h2><p>Iterating through the journal, in a live view tracking all changes:</p><pre class="programlisting">#include &lt;stdio.h&gt;
+                file.</p></div><div class="refsect1"><a name="idm214180858416"></a><h2 id="Examples">Examples<a class="headerlink" title="Permalink to this headline" href="#Examples">¶</a></h2><p>Iterating through the journal, in a live view tracking all changes:</p><pre class="programlisting">#include &lt;stdio.h&gt;
 #include &lt;string.h&gt;
 #include &lt;systemd/sd-journal.h&gt;
 
@@ -208,7 +208,7 @@ int wait_for_changes(sd_journal *j) {
         pollfd.events = sd_journal_get_events(j);
         poll(&amp;pollfd, 1, msec);
         return sd_journal_process(j);
-}</pre></div><div class="refsect1"><a name="idm214184521056"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+}</pre></div><div class="refsect1"><a name="idm214180851792"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
                         <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
                         <a href="sd-journal.html"><span class="citerefentry"><span class="refentrytitle">sd-journal</span>(3)</span></a>,
                         <a href="sd_journal_open.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_open</span>(3)</span></a>,
index 5e4d04c89dec61e486102b65b029c35f83c96104..df228940e21693f7b0ad805c75c39bec16dd9b67 100644 (file)
@@ -19,7 +19,7 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="sd_journal_open"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_journal_open, sd_journal_open_directory, sd_journal_open_files, sd_journal_open_container, sd_journal_close, sd_journal, SD_JOURNAL_LOCAL_ONLY, SD_JOURNAL_RUNTIME_ONLY, SD_JOURNAL_SYSTEM, SD_JOURNAL_CURRENT_USER — Open the system journal for reading</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-journal.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_open</b>(</code></td><td>sd_journal **<var class="pdparam">ret</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">flags</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_open_directory</b>(</code></td><td>sd_journal **<var class="pdparam">ret</var>, </td></tr><tr><td> </td><td>const char *<var class="pdparam">path</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">flags</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_open_files</b>(</code></td><td>sd_journal **<var class="pdparam">ret</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">paths</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">flags</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_open_container</b>(</code></td><td>sd_journal **<var class="pdparam">ret</var>, </td></tr><tr><td> </td><td>const char *<var class="pdparam">machine</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">flags</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">void <b class="fsfunc">sd_journal_close</b>(</code></td><td>sd_journal *<var class="pdparam">j</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214195234384"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_journal_open()</code> opens
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="sd_journal_open"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_journal_open, sd_journal_open_directory, sd_journal_open_files, sd_journal_open_container, sd_journal_close, sd_journal, SD_JOURNAL_LOCAL_ONLY, SD_JOURNAL_RUNTIME_ONLY, SD_JOURNAL_SYSTEM, SD_JOURNAL_CURRENT_USER — Open the system journal for reading</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-journal.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_open</b>(</code></td><td>sd_journal **<var class="pdparam">ret</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">flags</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_open_directory</b>(</code></td><td>sd_journal **<var class="pdparam">ret</var>, </td></tr><tr><td> </td><td>const char *<var class="pdparam">path</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">flags</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_open_files</b>(</code></td><td>sd_journal **<var class="pdparam">ret</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">paths</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">flags</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_open_container</b>(</code></td><td>sd_journal **<var class="pdparam">ret</var>, </td></tr><tr><td> </td><td>const char *<var class="pdparam">machine</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">flags</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">void <b class="fsfunc">sd_journal_close</b>(</code></td><td>sd_journal *<var class="pdparam">j</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214202620928"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_journal_open()</code> opens
                 the log journal for reading. It will find all journal
                 files automatically and interleave them automatically
                 when reading. As first argument it takes a pointer to
                 locally, to its closest entry in time)
                 <a href="sd_journal_seek_cursor.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_seek_cursor</span>(3)</span></a>.</p><p>Notification of journal changes is available via
                 <code class="function">sd_journal_get_fd()</code> and related
-                calls.</p></div><div class="refsect1"><a name="idm214195199952"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>The <code class="function">sd_journal_open()</code>,
+                calls.</p></div><div class="refsect1"><a name="idm214202586464"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>The <code class="function">sd_journal_open()</code>,
                 <code class="function">sd_journal_open_directory()</code>, and
                 <code class="function">sd_journal_open_files()</code> calls
                 return 0 on success or a negative errno-style error
                 code. <code class="function">sd_journal_close()</code> returns
-                nothing.</p></div><div class="refsect1"><a name="idm214195195744"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p>The <code class="function">sd_journal_open()</code>,
+                nothing.</p></div><div class="refsect1"><a name="idm214202582256"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p>The <code class="function">sd_journal_open()</code>,
                 <code class="function">sd_journal_open_directory()</code> and
                 <code class="function">sd_journal_close()</code> interfaces are
                 available as a shared library, which can be compiled and
                 linked to with the
                 <code class="constant">libsystemd</code> <a href="pkg-config.html"><span class="citerefentry"><span class="refentrytitle">pkg-config</span>(1)</span></a>
-                file.</p></div><div class="refsect1"><a name="idm214190277136"></a><h2 id="History">History<a class="headerlink" title="Permalink to this headline" href="#History">¶</a></h2><p><code class="function">sd_journal_open()</code>,
+                file.</p></div><div class="refsect1"><a name="idm214197661808"></a><h2 id="History">History<a class="headerlink" title="Permalink to this headline" href="#History">¶</a></h2><p><code class="function">sd_journal_open()</code>,
                 <code class="function">sd_journal_close()</code>,
                 <code class="constant">SD_JOURNAL_LOCAL_ONLY</code>,
                 <code class="constant">SD_JOURNAL_RUNTIME_ONLY</code>,
                 and <code class="function">sd_journal_open_files()</code>
                 were added in systemd-205.
                 <code class="constant">SD_JOURNAL_SYSTEM_ONLY</code>
-                was deprecated.</p></div><div class="refsect1"><a name="idm214190270800"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+                was deprecated.</p></div><div class="refsect1"><a name="idm214197655472"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
                         <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
                         <a href="sd-journal.html"><span class="citerefentry"><span class="refentrytitle">sd-journal</span>(3)</span></a>,
                         <a href="sd_journal_next.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_next</span>(3)</span></a>,
index 7438ea67f80d627ba85244752b53dd06b5d09e13..a80243707201a36ec5dc8e69e489291ecea0b275 100644 (file)
@@ -19,7 +19,7 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="sd_journal_print"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_journal_print, sd_journal_printv, sd_journal_send, sd_journal_sendv, sd_journal_perror, SD_JOURNAL_SUPPRESS_LOCATION — Submit log entries to the journal</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-journal.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_print</b>(</code></td><td>int <var class="pdparam">priority</var>, </td></tr><tr><td> </td><td>const char *<var class="pdparam">format</var>, </td></tr><tr><td> </td><td>...<code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_printv</b>(</code></td><td>int <var class="pdparam">priority</var>, </td></tr><tr><td> </td><td>const char *<var class="pdparam">format</var>, </td></tr><tr><td> </td><td>va_list <var class="pdparam">ap</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_send</b>(</code></td><td>const char *<var class="pdparam">format</var>, </td></tr><tr><td> </td><td>...<code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_sendv</b>(</code></td><td>const struct iovec *<var class="pdparam">iov</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">n</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_perror</b>(</code></td><td>const char *<var class="pdparam">message</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214171911712"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_journal_print()</code> may be
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="sd_journal_print"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_journal_print, sd_journal_printv, sd_journal_send, sd_journal_sendv, sd_journal_perror, SD_JOURNAL_SUPPRESS_LOCATION — Submit log entries to the journal</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-journal.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_print</b>(</code></td><td>int <var class="pdparam">priority</var>, </td></tr><tr><td> </td><td>const char *<var class="pdparam">format</var>, </td></tr><tr><td> </td><td>...<code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_printv</b>(</code></td><td>int <var class="pdparam">priority</var>, </td></tr><tr><td> </td><td>const char *<var class="pdparam">format</var>, </td></tr><tr><td> </td><td>va_list <var class="pdparam">ap</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_send</b>(</code></td><td>const char *<var class="pdparam">format</var>, </td></tr><tr><td> </td><td>...<code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_sendv</b>(</code></td><td>const struct iovec *<var class="pdparam">iov</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">n</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_perror</b>(</code></td><td>const char *<var class="pdparam">message</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214193392656"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_journal_print()</code> may be
                 used to submit simple, plain text log entries to the
                 system journal. The first argument is a priority
                 value. This is followed by a format string and its
@@ -118,26 +118,26 @@ sd_journal_send("MESSAGE=Hello World, this is PID %lu!", (unsigned long) getpid(
                 log entries that are generated via
                 <code class="function">sd_journal_send()</code>. Using
                 <code class="function">syslog()</code> has the benefit of being
-                more portable.</p></div><div class="refsect1"><a name="idm214171870448"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>The four calls return 0 on success or a negative
+                more portable.</p></div><div class="refsect1"><a name="idm214193498576"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>The four calls return 0 on success or a negative
                 errno-style error code. The
                 <a href="errno.html"><span class="citerefentry"><span class="refentrytitle">errno</span>(3)</span></a>
                 variable itself is not altered.</p><p>If
                 <a href="systemd-journald.html"><span class="citerefentry"><span class="refentrytitle">systemd-journald</span>(8)</span></a>
                 is not running (the socket is not present), those
-                functions do nothing, and also return 0.</p></div><div class="refsect1"><a name="idm214166952576"></a><h2 id="Async signal safety">Async signal safety<a class="headerlink" title="Permalink to this headline" href="#Async%20signal%20safety">¶</a></h2><p><code class="function">sd_journal_sendv()</code> is "async signal
+                functions do nothing, and also return 0.</p></div><div class="refsect1"><a name="idm214193495056"></a><h2 id="Async signal safety">Async signal safety<a class="headerlink" title="Permalink to this headline" href="#Async%20signal%20safety">¶</a></h2><p><code class="function">sd_journal_sendv()</code> is "async signal
                 safe" in the meaning of <a href="signal.html"><span class="citerefentry"><span class="refentrytitle">signal</span>(7)</span></a>.
                 </p><p><code class="function">sd_journal_print</code>,
                 <code class="function">sd_journal_printv</code>,
                 <code class="function">sd_journal_send</code>, and
                 <code class="function">sd_journal_perror</code> are
-                not async signal safe.</p></div><div class="refsect1"><a name="idm214166947408"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p>The <code class="function">sd_journal_print()</code>,
+                not async signal safe.</p></div><div class="refsect1"><a name="idm214193489376"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p>The <code class="function">sd_journal_print()</code>,
                 <code class="function">sd_journal_printv()</code>,
                 <code class="function">sd_journal_send()</code> and
                 <code class="function">sd_journal_sendv()</code> interfaces
                 are available as a shared library, which can be compiled
                 and linked to with the
                 <code class="constant">libsystemd</code> <a href="pkg-config.html"><span class="citerefentry"><span class="refentrytitle">pkg-config</span>(1)</span></a>
-                file.</p></div><div class="refsect1"><a name="idm214166942448"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+                file.</p></div><div class="refsect1"><a name="idm214188855456"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
                         <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
                         <a href="sd-journal.html"><span class="citerefentry"><span class="refentrytitle">sd-journal</span>(3)</span></a>,
                         <a href="sd_journal_stream_fd.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_stream_fd</span>(3)</span></a>,
index 5e4d04c89dec61e486102b65b029c35f83c96104..df228940e21693f7b0ad805c75c39bec16dd9b67 100644 (file)
@@ -19,7 +19,7 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="sd_journal_open"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_journal_open, sd_journal_open_directory, sd_journal_open_files, sd_journal_open_container, sd_journal_close, sd_journal, SD_JOURNAL_LOCAL_ONLY, SD_JOURNAL_RUNTIME_ONLY, SD_JOURNAL_SYSTEM, SD_JOURNAL_CURRENT_USER — Open the system journal for reading</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-journal.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_open</b>(</code></td><td>sd_journal **<var class="pdparam">ret</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">flags</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_open_directory</b>(</code></td><td>sd_journal **<var class="pdparam">ret</var>, </td></tr><tr><td> </td><td>const char *<var class="pdparam">path</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">flags</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_open_files</b>(</code></td><td>sd_journal **<var class="pdparam">ret</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">paths</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">flags</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_open_container</b>(</code></td><td>sd_journal **<var class="pdparam">ret</var>, </td></tr><tr><td> </td><td>const char *<var class="pdparam">machine</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">flags</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">void <b class="fsfunc">sd_journal_close</b>(</code></td><td>sd_journal *<var class="pdparam">j</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214195234384"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_journal_open()</code> opens
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="sd_journal_open"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_journal_open, sd_journal_open_directory, sd_journal_open_files, sd_journal_open_container, sd_journal_close, sd_journal, SD_JOURNAL_LOCAL_ONLY, SD_JOURNAL_RUNTIME_ONLY, SD_JOURNAL_SYSTEM, SD_JOURNAL_CURRENT_USER — Open the system journal for reading</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-journal.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_open</b>(</code></td><td>sd_journal **<var class="pdparam">ret</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">flags</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_open_directory</b>(</code></td><td>sd_journal **<var class="pdparam">ret</var>, </td></tr><tr><td> </td><td>const char *<var class="pdparam">path</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">flags</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_open_files</b>(</code></td><td>sd_journal **<var class="pdparam">ret</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">paths</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">flags</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_open_container</b>(</code></td><td>sd_journal **<var class="pdparam">ret</var>, </td></tr><tr><td> </td><td>const char *<var class="pdparam">machine</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">flags</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">void <b class="fsfunc">sd_journal_close</b>(</code></td><td>sd_journal *<var class="pdparam">j</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214202620928"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_journal_open()</code> opens
                 the log journal for reading. It will find all journal
                 files automatically and interleave them automatically
                 when reading. As first argument it takes a pointer to
                 locally, to its closest entry in time)
                 <a href="sd_journal_seek_cursor.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_seek_cursor</span>(3)</span></a>.</p><p>Notification of journal changes is available via
                 <code class="function">sd_journal_get_fd()</code> and related
-                calls.</p></div><div class="refsect1"><a name="idm214195199952"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>The <code class="function">sd_journal_open()</code>,
+                calls.</p></div><div class="refsect1"><a name="idm214202586464"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>The <code class="function">sd_journal_open()</code>,
                 <code class="function">sd_journal_open_directory()</code>, and
                 <code class="function">sd_journal_open_files()</code> calls
                 return 0 on success or a negative errno-style error
                 code. <code class="function">sd_journal_close()</code> returns
-                nothing.</p></div><div class="refsect1"><a name="idm214195195744"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p>The <code class="function">sd_journal_open()</code>,
+                nothing.</p></div><div class="refsect1"><a name="idm214202582256"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p>The <code class="function">sd_journal_open()</code>,
                 <code class="function">sd_journal_open_directory()</code> and
                 <code class="function">sd_journal_close()</code> interfaces are
                 available as a shared library, which can be compiled and
                 linked to with the
                 <code class="constant">libsystemd</code> <a href="pkg-config.html"><span class="citerefentry"><span class="refentrytitle">pkg-config</span>(1)</span></a>
-                file.</p></div><div class="refsect1"><a name="idm214190277136"></a><h2 id="History">History<a class="headerlink" title="Permalink to this headline" href="#History">¶</a></h2><p><code class="function">sd_journal_open()</code>,
+                file.</p></div><div class="refsect1"><a name="idm214197661808"></a><h2 id="History">History<a class="headerlink" title="Permalink to this headline" href="#History">¶</a></h2><p><code class="function">sd_journal_open()</code>,
                 <code class="function">sd_journal_close()</code>,
                 <code class="constant">SD_JOURNAL_LOCAL_ONLY</code>,
                 <code class="constant">SD_JOURNAL_RUNTIME_ONLY</code>,
                 and <code class="function">sd_journal_open_files()</code>
                 were added in systemd-205.
                 <code class="constant">SD_JOURNAL_SYSTEM_ONLY</code>
-                was deprecated.</p></div><div class="refsect1"><a name="idm214190270800"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+                was deprecated.</p></div><div class="refsect1"><a name="idm214197655472"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
                         <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
                         <a href="sd-journal.html"><span class="citerefentry"><span class="refentrytitle">sd-journal</span>(3)</span></a>,
                         <a href="sd_journal_next.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_next</span>(3)</span></a>,
index ad7e35655059a09e708ad854f59743f569c11fdb..25181fca86b97ca5735e2ca286c2cc13d137eed3 100644 (file)
@@ -19,7 +19,7 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="sd_listen_fds"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_listen_fds, SD_LISTEN_FDS_START — Check for file descriptors passed by the system manager</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-daemon.h&gt;</pre><pre class="funcsynopsisinfo">#define SD_LISTEN_FDS_START 3</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_listen_fds</b>(</code></td><td>int <var class="pdparam">unset_environment</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214192684512"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_listen_fds()</code> shall be
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="sd_listen_fds"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_listen_fds, SD_LISTEN_FDS_START — Check for file descriptors passed by the system manager</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-daemon.h&gt;</pre><pre class="funcsynopsisinfo">#define SD_LISTEN_FDS_START 3</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_listen_fds</b>(</code></td><td>int <var class="pdparam">unset_environment</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214197560512"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_listen_fds()</code> shall be
                 called by a daemon to check for file descriptors
                 passed by the init system as part of the socket-based
                 activation logic.</p><p>If the <em class="parameter"><code>unset_environment</code></em>
@@ -50,7 +50,7 @@
                 datagram or stream socket matters a lot for the most
                 common program logics and should be checked.</p><p>This function call will set the FD_CLOEXEC flag
                 for all passed file descriptors to avoid further
-                inheritance to children of the calling process.</p></div><div class="refsect1"><a name="idm214192892160"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>On failure, this call returns a negative
+                inheritance to children of the calling process.</p></div><div class="refsect1"><a name="idm214197624416"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>On failure, this call returns a negative
                 errno-style error code. If
                 <code class="varname">$LISTEN_FDS</code>/<code class="varname">$LISTEN_PID</code>
                 was not set or was not correctly set for this daemon and
@@ -58,7 +58,7 @@
                 returned. Otherwise, the number of file descriptors
                 passed is returned. The application may find them
                 starting with file descriptor SD_LISTEN_FDS_START,
-                i.e. file descriptor 3.</p></div><div class="refsect1"><a name="idm214194136768"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p><a name="pkgconfig-text"></a>These APIs are implemented as a shared
+                i.e. file descriptor 3.</p></div><div class="refsect1"><a name="idm214197551888"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p><a name="pkgconfig-text"></a>These APIs are implemented as a shared
   library, which can be compiled and linked to with the
   <code class="constant">libsystemd</code> <a href="pkg-config.html"><span class="citerefentry"><span class="refentrytitle">pkg-config</span>(1)</span></a>
   file.</p><p>Internally, this function checks whether the
                 variable, then sets the FD_CLOEXEC flag for the parsed
                 number of file descriptors starting from
                 SD_LISTEN_FDS_START. Finally, it returns the parsed
-                number.</p></div><div class="refsect1"><a name="idm214192287840"></a><h2 id="Environment">Environment<a class="headerlink" title="Permalink to this headline" href="#Environment">¶</a></h2><div class="variablelist"><dl class="variablelist"><dt id="$LISTEN_PID"><span class="term"><code class="varname">$LISTEN_PID</code>, </span><span class="term"><code class="varname">$LISTEN_FDS</code></span><a class="headerlink" title="Permalink to this term" href="#%24LISTEN_PID">¶</a></dt><dd><p>Set by the init system
+                number.</p></div><div class="refsect1"><a name="idm214197548512"></a><h2 id="Environment">Environment<a class="headerlink" title="Permalink to this headline" href="#Environment">¶</a></h2><div class="variablelist"><dl class="variablelist"><dt id="$LISTEN_PID"><span class="term"><code class="varname">$LISTEN_PID</code>, </span><span class="term"><code class="varname">$LISTEN_FDS</code></span><a class="headerlink" title="Permalink to this term" href="#%24LISTEN_PID">¶</a></dt><dd><p>Set by the init system
                                 for supervised processes that use
                                 socket-based activation. This
                                 environment variable specifies the
                                 data
                                 <code class="function">sd_listen_fds()</code>
                                 parses. See above for
-                                details.</p></dd></dl></div></div><div class="refsect1"><a name="idm214193629840"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+                                details.</p></dd></dl></div></div><div class="refsect1"><a name="idm214197690240"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
                         <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
                         <a href="sd-daemon.html"><span class="citerefentry"><span class="refentrytitle">sd-daemon</span>(3)</span></a>,
                         <a href="sd_is_fifo.html"><span class="citerefentry"><span class="refentrytitle">sd_is_fifo</span>(3)</span></a>,
index 63792bb2d1dd6c7fd3cc2a2b41a991b49f0f2b7d..afc020f8340b843665afa6649182dcb875af6d39 100644 (file)
@@ -19,8 +19,8 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="sd-daemon"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd-daemon, SD_EMERG, SD_ALERT, SD_CRIT, SD_ERR, SD_WARNING, SD_NOTICE, SD_INFO, SD_DEBUG — APIs for
-                new-style daemons</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-daemon.h&gt;</pre></div><div class="cmdsynopsis"><p><code class="command">pkg-config --cflags --libs libsystemd</code> </p></div></div><div class="refsect1"><a name="idm214188016064"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="filename">sd-daemon.h</code> provide APIs
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="sd-daemon"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd-daemon, SD_EMERG, SD_ALERT, SD_CRIT, SD_ERR, SD_WARNING, SD_NOTICE, SD_INFO, SD_DEBUG — APIs for
+                new-style daemons</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-daemon.h&gt;</pre></div><div class="cmdsynopsis"><p><code class="command">pkg-config --cflags --libs libsystemd</code> </p></div></div><div class="refsect1"><a name="idm214195900512"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="filename">sd-daemon.h</code> provide APIs
                 for new-style daemons, as implemented by the
                 <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>
                 init system.</p><p>See
                 log level system. To use these prefixes simply prefix
                 every line with one of these strings. A line that is
                 not prefixed will be logged at the default log level
-                SD_INFO.</p><div class="example"><a name="idm214184167584"></a><p class="title"><b>Example 1. Hello World</b></p><div class="example-contents"><p>A daemon may log with the log level
-                        NOTICE by issuing this call:</p><pre class="programlisting">fprintf(stderr, SD_NOTICE "Hello World!\n");</pre></div></div><br class="example-break"></div><div class="refsect1"><a name="idm214180497360"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p><a name="pkgconfig-text"></a>These APIs are implemented as a shared
+                SD_INFO.</p><div class="example"><a name="idm214195045552"></a><p class="title"><b>Example 1. Hello World</b></p><div class="example-contents"><p>A daemon may log with the log level
+                        NOTICE by issuing this call:</p><pre class="programlisting">fprintf(stderr, SD_NOTICE "Hello World!\n");</pre></div></div><br class="example-break"></div><div class="refsect1"><a name="idm214192388800"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p><a name="pkgconfig-text"></a>These APIs are implemented as a shared
   library, which can be compiled and linked to with the
   <code class="constant">libsystemd</code> <a href="pkg-config.html"><span class="citerefentry"><span class="refentrytitle">pkg-config</span>(1)</span></a>
-  file.</p></div><div class="refsect1"><a name="idm214184164912"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+  file.</p></div><div class="refsect1"><a name="idm214193723968"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
                         <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
                         <a href="sd_listen_fds.html"><span class="citerefentry"><span class="refentrytitle">sd_listen_fds</span>(3)</span></a>,
                         <a href="sd_notify.html"><span class="citerefentry"><span class="refentrytitle">sd_notify</span>(3)</span></a>,
index 63792bb2d1dd6c7fd3cc2a2b41a991b49f0f2b7d..afc020f8340b843665afa6649182dcb875af6d39 100644 (file)
@@ -19,8 +19,8 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="sd-daemon"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd-daemon, SD_EMERG, SD_ALERT, SD_CRIT, SD_ERR, SD_WARNING, SD_NOTICE, SD_INFO, SD_DEBUG — APIs for
-                new-style daemons</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-daemon.h&gt;</pre></div><div class="cmdsynopsis"><p><code class="command">pkg-config --cflags --libs libsystemd</code> </p></div></div><div class="refsect1"><a name="idm214188016064"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="filename">sd-daemon.h</code> provide APIs
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="sd-daemon"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd-daemon, SD_EMERG, SD_ALERT, SD_CRIT, SD_ERR, SD_WARNING, SD_NOTICE, SD_INFO, SD_DEBUG — APIs for
+                new-style daemons</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-daemon.h&gt;</pre></div><div class="cmdsynopsis"><p><code class="command">pkg-config --cflags --libs libsystemd</code> </p></div></div><div class="refsect1"><a name="idm214195900512"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="filename">sd-daemon.h</code> provide APIs
                 for new-style daemons, as implemented by the
                 <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>
                 init system.</p><p>See
                 log level system. To use these prefixes simply prefix
                 every line with one of these strings. A line that is
                 not prefixed will be logged at the default log level
-                SD_INFO.</p><div class="example"><a name="idm214184167584"></a><p class="title"><b>Example 1. Hello World</b></p><div class="example-contents"><p>A daemon may log with the log level
-                        NOTICE by issuing this call:</p><pre class="programlisting">fprintf(stderr, SD_NOTICE "Hello World!\n");</pre></div></div><br class="example-break"></div><div class="refsect1"><a name="idm214180497360"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p><a name="pkgconfig-text"></a>These APIs are implemented as a shared
+                SD_INFO.</p><div class="example"><a name="idm214195045552"></a><p class="title"><b>Example 1. Hello World</b></p><div class="example-contents"><p>A daemon may log with the log level
+                        NOTICE by issuing this call:</p><pre class="programlisting">fprintf(stderr, SD_NOTICE "Hello World!\n");</pre></div></div><br class="example-break"></div><div class="refsect1"><a name="idm214192388800"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p><a name="pkgconfig-text"></a>These APIs are implemented as a shared
   library, which can be compiled and linked to with the
   <code class="constant">libsystemd</code> <a href="pkg-config.html"><span class="citerefentry"><span class="refentrytitle">pkg-config</span>(1)</span></a>
-  file.</p></div><div class="refsect1"><a name="idm214184164912"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+  file.</p></div><div class="refsect1"><a name="idm214193723968"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
                         <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
                         <a href="sd_listen_fds.html"><span class="citerefentry"><span class="refentrytitle">sd_listen_fds</span>(3)</span></a>,
                         <a href="sd_notify.html"><span class="citerefentry"><span class="refentrytitle">sd_notify</span>(3)</span></a>,
index 78f17905bff2bc0423513b96d208a67f78823b31..1d547c0b9a49aad1a3205757febe14ca652a3d6c 100644 (file)
@@ -1,5 +1,5 @@
 '\" t
-.TH "BINFMT\&.D" "5" "" "systemd 214" "binfmt.d"
+.TH "BINFMT\&.D" "5" "" "systemd 215" "binfmt.d"
 .\" -----------------------------------------------------------------
 .\" * Define some portability stuff
 .\" -----------------------------------------------------------------
index ceda01a1c476d453c15815fcdeb83f16c1f96e8c..cf9e7c34550cb3249e16bfefebf343df8be9f9b9 100644 (file)
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="binfmt.d"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>binfmt.d — Configure additional binary formats for
-                executables at boot</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><p><code class="filename">/etc/binfmt.d/*.conf</code></p><p><code class="filename">/run/binfmt.d/*.conf</code></p><p><code class="filename">/usr/lib/binfmt.d/*.conf</code></p></div><div class="refsect1"><a name="idm214180113856"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p>At boot,
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="binfmt.d"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>binfmt.d — Configure additional binary formats for
+                executables at boot</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><p><code class="filename">/etc/binfmt.d/*.conf</code></p><p><code class="filename">/run/binfmt.d/*.conf</code></p><p><code class="filename">/usr/lib/binfmt.d/*.conf</code></p></div><div class="refsect1"><a name="idm214170142016"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p>At boot,
                 <a href="systemd-binfmt.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-binfmt.service</span>(8)</span></a>
                 reads configuration files from the above directories
                 to register in the kernel additional binary
-                formats for executables.</p></div><div class="refsect1"><a name="idm214180139264"></a><h2 id="Configuration Format">Configuration Format<a class="headerlink" title="Permalink to this headline" href="#Configuration%20Format">¶</a></h2><p>Each file contains a list of binfmt_misc kernel
+                formats for executables.</p></div><div class="refsect1"><a name="idm214172795840"></a><h2 id="Configuration Format">Configuration Format<a class="headerlink" title="Permalink to this headline" href="#Configuration%20Format">¶</a></h2><p>Each file contains a list of binfmt_misc kernel
                 binary format rules. Consult <a class="ulink" href="https://www.kernel.org/doc/Documentation/binfmt_misc.txt" target="_top">binfmt_misc.txt</a>
                 for more information on registration of additional
                 binary formats and how to write rules.</p><p>Empty lines and lines beginning with ; and # are
@@ -50,8 +50,8 @@
                 recommended way is to place a symlink to
                 <code class="filename">/dev/null</code> in
                 <code class="filename">/etc/binfmt.d/</code> bearing the
-                same filename.</p></div><div class="refsect1"><a name="idm214176291712"></a><h2 id="Example">Example<a class="headerlink" title="Permalink to this headline" href="#Example">¶</a></h2><div class="example"><a name="idm214176291040"></a><p class="title"><b>Example 1. /etc/binfmt.d/wine.conf example:</b></p><div class="example-contents"><pre class="programlisting"># Start WINE on Windows executables
-:DOSWin:M::MZ::/usr/bin/wine:</pre></div></div><br class="example-break"></div><div class="refsect1"><a name="idm214176289440"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+                same filename.</p></div><div class="refsect1"><a name="idm214169046960"></a><h2 id="Example">Example<a class="headerlink" title="Permalink to this headline" href="#Example">¶</a></h2><div class="example"><a name="idm214169046288"></a><p class="title"><b>Example 1. /etc/binfmt.d/wine.conf example:</b></p><div class="example-contents"><pre class="programlisting"># Start WINE on Windows executables
+:DOSWin:M::MZ::/usr/bin/wine:</pre></div></div><br class="example-break"></div><div class="refsect1"><a name="idm214169044640"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
                         <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
                         <a href="systemd-binfmt.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-binfmt.service</span>(8)</span></a>,
                         <a href="systemd-delta.html"><span class="citerefentry"><span class="refentrytitle">systemd-delta</span>(1)</span></a>,
index e70ea57d8ba21d8d754848d90d874db19a0a8b0c..bb0ea6b0416070f658c8f2213283b3c53d354870 100644 (file)
@@ -1,5 +1,5 @@
 '\" t
-.TH "BOOTCHART\&.CONF" "5" "" "systemd 214" "bootchart.conf"
+.TH "BOOTCHART\&.CONF" "5" "" "systemd 215" "bootchart.conf"
 .\" -----------------------------------------------------------------
 .\" * Define some portability stuff
 .\" -----------------------------------------------------------------
index 2f31e215adfd5b2d50757162147993a7e76548e6..1c4fdc71260f5695e82d568746877db985871285 100644 (file)
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="bootchart.conf"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>bootchart.conf — Boot performance analysis graphing tool configuration file</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><p><code class="filename">/etc/systemd/bootchart.conf</code></p></div><div class="refsect1"><a name="idm214187346016"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p>When starting, systemd-bootchart will read the
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="bootchart.conf"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>bootchart.conf — Boot performance analysis graphing tool configuration file</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><p><code class="filename">/etc/systemd/bootchart.conf</code></p></div><div class="refsect1"><a name="idm214168376384"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p>When starting, systemd-bootchart will read the
                 configuration file <code class="filename">bootchart.conf</code>.
                 This configuration file determines logging parameters and
-                graph output.</p></div><div class="refsect1"><a name="idm214191942832"></a><h2 id="Options">Options<a class="headerlink" title="Permalink to this headline" href="#Options">¶</a></h2><div class="variablelist"><dl class="variablelist"><dt id="Samples=500"><span class="term"><code class="varname">Samples=500</code></span><a class="headerlink" title="Permalink to this term" href="#Samples=500">¶</a></dt><dd><p>Configure the amount of samples to
+                graph output.</p></div><div class="refsect1"><a name="idm214170469440"></a><h2 id="Options">Options<a class="headerlink" title="Permalink to this headline" href="#Options">¶</a></h2><div class="variablelist"><dl class="variablelist"><dt id="Samples=500"><span class="term"><code class="varname">Samples=500</code></span><a class="headerlink" title="Permalink to this term" href="#Samples=500">¶</a></dt><dd><p>Configure the amount of samples to
                                 record in total before bootchart exits. Each sample will
                                 record at intervals defined by Frequency=.</p></dd><dt id="Frequency=25"><span class="term"><code class="varname">Frequency=25</code></span><a class="headerlink" title="Permalink to this term" href="#Frequency=25">¶</a></dt><dd><p>Configure the sample log frequency.
                                 This can be a fractional number, but must be larger than
@@ -48,7 +48,7 @@
                                 of processes' PSS memory consumption.</p></dd><dt id="PlotEntropyGraph=no"><span class="term"><code class="varname">PlotEntropyGraph=no</code></span><a class="headerlink" title="Permalink to this term" href="#PlotEntropyGraph=no">¶</a></dt><dd><p>If set to yes, enables logging and graphing
                                 of the kernel random entropy pool size.</p></dd><dt id="ScaleX=100"><span class="term"><code class="varname">ScaleX=100</code></span><a class="headerlink" title="Permalink to this term" href="#ScaleX=100">¶</a></dt><dd><p>Horizontal scaling factor for all variable
                                 graph components.</p></dd><dt id="ScaleY=20"><span class="term"><code class="varname">ScaleY=20</code></span><a class="headerlink" title="Permalink to this term" href="#ScaleY=20">¶</a></dt><dd><p>Vertical scaling factor for all variable
-                                graph components.</p></dd><dt id="ControlGroup=no"><span class="term"><code class="varname">ControlGroup=no</code></span><a class="headerlink" title="Permalink to this term" href="#ControlGroup=no">¶</a></dt><dd><p>Display process control group.</p></dd></dl></div></div><div class="refsect1"><a name="idm214192067360"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+                                graph components.</p></dd><dt id="ControlGroup=no"><span class="term"><code class="varname">ControlGroup=no</code></span><a class="headerlink" title="Permalink to this term" href="#ControlGroup=no">¶</a></dt><dd><p>Display process control group.</p></dd></dl></div></div><div class="refsect1"><a name="idm214170612832"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
                           <a href="systemd-bootchart.html"><span class="citerefentry"><span class="refentrytitle">systemd-bootchart</span>(1)</span></a>,
                           <a href="systemd.directives.html"><span class="citerefentry"><span class="refentrytitle">systemd.directives</span>(7)</span></a>
                   </p></div></div></body></html>
index 4175ea5530d3eaded44a488ff8a8b04a8a2c9da0..745f8076f9229eaf161624132767e94741904fba 100644 (file)
@@ -1,5 +1,5 @@
 '\" t
-.TH "BOOTCTL" "1" "" "systemd 214" "bootctl"
+.TH "BOOTCTL" "1" "" "systemd 215" "bootctl"
 .\" -----------------------------------------------------------------
 .\" * Define some portability stuff
 .\" -----------------------------------------------------------------
index f556094ca6b78ca7aa67031929ce2526d6068e2a..81a4cf5cdb92395393d148c678efa6099721b8a5 100644 (file)
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="bootctl"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>bootctl — Control the firmware and boot manager settings</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="cmdsynopsis"><p><code class="command">bootctl</code>  [OPTIONS...] {COMMAND}</p></div></div><div class="refsect1"><a name="idm214192376192"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><span class="command"><strong>bootctl</strong></span> may be used to
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="bootctl"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>bootctl — Control the firmware and boot manager settings</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="cmdsynopsis"><p><code class="command">bootctl</code>  [OPTIONS...] {COMMAND}</p></div></div><div class="refsect1"><a name="idm214180461680"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><span class="command"><strong>bootctl</strong></span> may be used to
                 query or (in the future) change the firmware and boot
                 manager settings.</p><p>Firmware information is available only on EFI
                 systems.</p><p>Currently, only the <a href="gummiboot.html"><span class="citerefentry"><span class="refentrytitle">gummiboot</span>(8)</span></a> boot
                 manager implements the required boot loader interface
-                to provide complete boot manager information.</p></div><div class="refsect1"><a name="idm214188563984"></a><h2 id="Options">Options<a class="headerlink" title="Permalink to this headline" href="#Options">¶</a></h2><p>The following options are understood:</p><div class="variablelist"><dl class="variablelist"><dt id="-h"><span class="term"><code class="option">-h</code>, </span><span class="term"><code class="option">--help</code></span><a class="headerlink" title="Permalink to this term" href="#-h">¶</a></dt><dd><p><a name="help-text"></a>Print a short help text and exit.
+                to provide complete boot manager information.</p></div><div class="refsect1"><a name="idm214180504032"></a><h2 id="Options">Options<a class="headerlink" title="Permalink to this headline" href="#Options">¶</a></h2><p>The following options are understood:</p><div class="variablelist"><dl class="variablelist"><dt id="-h"><span class="term"><code class="option">-h</code>, </span><span class="term"><code class="option">--help</code></span><a class="headerlink" title="Permalink to this term" href="#-h">¶</a></dt><dd><p><a name="help-text"></a>Print a short help text and exit.
     </p></dd><dt id="--version"><span class="term"><code class="option">--version</code></span><a class="headerlink" title="Permalink to this term" href="#--version">¶</a></dt><dd><p><a name="version-text"></a>Print a short version string and exit.</p></dd></dl></div><p>The following commands are understood:</p><div class="variablelist"><dl class="variablelist"><dt id="status"><span class="term"><span class="command"><strong>status</strong></span></span><a class="headerlink" title="Permalink to this term" href="#status">¶</a></dt><dd><p>Show firmware and boot
                                 manager information about the system,
                                 including secure boot mode status and
                                 selected firmware entry (where
-                                available).</p></dd></dl></div></div><div class="refsect1"><a name="idm214188557920"></a><h2 id="Exit status">Exit status<a class="headerlink" title="Permalink to this headline" href="#Exit%20status">¶</a></h2><p>On success, 0 is returned, a non-zero failure
-                code otherwise.</p></div><div class="refsect1"><a name="idm214188556736"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+                                available).</p></dd></dl></div></div><div class="refsect1"><a name="idm214176713504"></a><h2 id="Exit status">Exit status<a class="headerlink" title="Permalink to this headline" href="#Exit%20status">¶</a></h2><p>On success, 0 is returned, a non-zero failure
+                code otherwise.</p></div><div class="refsect1"><a name="idm214176712320"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
                         <a class="ulink" href="http://www.freedesktop.org/wiki/Software/systemd/BootLoaderInterface" target="_top">Boot loader interface</a>,
                         <a class="ulink" href="http://www.freedesktop.org/wiki/Specifications/BootLoaderSpec" target="_top">Boot loader specification</a>,
                         <a class="ulink" href="http://www.freedesktop.org/wiki/Software/gummiboot/" target="_top">gummiboot</a>
index 23f2b39bf09207a8e4921bad06662dd6e6240b42..49ea2345d01929104bf736c9ef6b402740b3e7e2 100644 (file)
@@ -1,5 +1,5 @@
 '\" t
-.TH "BOOTUP" "7" "" "systemd 214" "bootup"
+.TH "BOOTUP" "7" "" "systemd 215" "bootup"
 .\" -----------------------------------------------------------------
 .\" * Define some portability stuff
 .\" -----------------------------------------------------------------
index 23b9c187d55d207bc2795325e83df7baeff77c9c..01a51293dbe4532d1084f0002edf44d3c8f945b7 100644 (file)
@@ -19,7 +19,7 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="bootup"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>bootup — System bootup process</p></div><div class="refsect1"><a name="idm214173222816"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p>A number of different components are involved in
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="bootup"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>bootup — System bootup process</p></div><div class="refsect1"><a name="idm214175133552"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p>A number of different components are involved in
                 the system boot. Immediately after power-up, the
                 system BIOS will do minimal hardware initialization,
                 and hand control over to a boot loader stored on a
@@ -45,7 +45,7 @@
                 unmounts/detaches the root file system and the storage
                 it resides on. As a last step, the system is powered down.</p><p>Additional information about the system boot
                 process may be found in
-                <a href="boot.html"><span class="citerefentry"><span class="refentrytitle">boot</span>(7)</span></a>.</p></div><div class="refsect1"><a name="idm214169432720"></a><h2 id="System Manager Bootup">System Manager Bootup<a class="headerlink" title="Permalink to this headline" href="#System%20Manager%20Bootup">¶</a></h2><p>At boot, the system manager on the OS image is
+                <a href="boot.html"><span class="citerefentry"><span class="refentrytitle">boot</span>(7)</span></a>.</p></div><div class="refsect1"><a name="idm214172705392"></a><h2 id="System Manager Bootup">System Manager Bootup<a class="headerlink" title="Permalink to this headline" href="#System%20Manager%20Bootup">¶</a></h2><p>At boot, the system manager on the OS image is
                 responsible for initializing the required file
                 systems, services and drivers that are necessary for
                 operation of the system. On
                 option (see
                 <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>)
                 or by symlinking <code class="filename">default.target</code>
-                to them.</p></div><div class="refsect1"><a name="idm214173316512"></a><h2 id="Bootup in the Initial RAM Disk (initrd)">Bootup in the Initial RAM Disk (initrd)<a class="headerlink" title="Permalink to this headline" href="#Bootup%20in%20the%20Initial%20RAM%20Disk%20(initrd)">¶</a></h2><p>The initial RAM disk implementation (initrd) can
+                to them.</p></div><div class="refsect1"><a name="idm214174200976"></a><h2 id="Bootup in the Initial RAM Disk (initrd)">Bootup in the Initial RAM Disk (initrd)<a class="headerlink" title="Permalink to this headline" href="#Bootup%20in%20the%20Initial%20RAM%20Disk%20(initrd)">¶</a></h2><p>The initial RAM disk implementation (initrd) can
                 be set up using systemd as well. In this case, boot up
                 inside the initrd follows the following
                 structure.</p><p>The default target in the initrd is
                                    initrd-switch-root.service
                                                |
                                                v
-                                     Transition to Host OS</pre></div><div class="refsect1"><a name="idm214173291536"></a><h2 id="System Manager Shutdown">System Manager Shutdown<a class="headerlink" title="Permalink to this headline" href="#System%20Manager%20Shutdown">¶</a></h2><p>System shutdown with systemd also consists of
+                                     Transition to Host OS</pre></div><div class="refsect1"><a name="idm214171319504"></a><h2 id="System Manager Shutdown">System Manager Shutdown<a class="headerlink" title="Permalink to this headline" href="#System%20Manager%20Shutdown">¶</a></h2><p>System shutdown with systemd also consists of
                 various target units with some minimal ordering
                 structure applied:</p><pre class="programlisting">                                  (conflicts with  (conflicts with
                                     all system     all file system
 systemd-reboot.service   systemd-poweroff.service   systemd-halt.service   systemd-kexec.service
            |                         |                        |                      |
            v                         v                        v                      v
-    <span class="emphasis"><em>reboot.target</em></span>             <span class="emphasis"><em>poweroff.target</em></span>            <span class="emphasis"><em>halt.target</em></span>           <span class="emphasis"><em>kexec.target</em></span></pre><p>Commonly used system shutdown targets are <span class="emphasis"><em>emphasized</em></span>.</p></div><div class="refsect1"><a name="idm214173283648"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+    <span class="emphasis"><em>reboot.target</em></span>             <span class="emphasis"><em>poweroff.target</em></span>            <span class="emphasis"><em>halt.target</em></span>           <span class="emphasis"><em>kexec.target</em></span></pre><p>Commonly used system shutdown targets are <span class="emphasis"><em>emphasized</em></span>.</p></div><div class="refsect1"><a name="idm214172155856"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
                         <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
                         <a href="boot.html"><span class="citerefentry"><span class="refentrytitle">boot</span>(7)</span></a>,
                         <a href="systemd.special.html"><span class="citerefentry"><span class="refentrytitle">systemd.special</span>(7)</span></a>,
index e606fba073145a25623f704f4e806a4b0eed6ecd..c52d8ea096806b9ecc691798661352ed6be1b74a 100644 (file)
@@ -1,5 +1,5 @@
 '\" t
-.TH "BUSCTL" "1" "" "systemd 214" "busctl"
+.TH "BUSCTL" "1" "" "systemd 215" "busctl"
 .\" -----------------------------------------------------------------
 .\" * Define some portability stuff
 .\" -----------------------------------------------------------------
@@ -90,8 +90,10 @@ Talk to the service manager of the system\&. This is the implied default\&.
 .PP
 \fB\-H\fR, \fB\-\-host=\fR
 .RS 4
-Execute the operation remotely\&. Specify a hostname, or username and hostname separated by
-"@", to connect to\&. This will use SSH to talk to the remote machine manager instance\&.
+Execute the operation remotely\&. Specify a hostname, or a username and hostname separated by
+"@", to connect to\&. The hostname may optionally be suffixed by a container name, separated by
+":", which connects directly to a specific container on the specified host\&. This will use SSH to talk to the remote machine manager instance\&. Container names may be enumerated with
+\fBmachinectl \-H \fR\fB\fIHOST\fR\fR\&.
 .RE
 .PP
 \fB\-M\fR, \fB\-\-machine=\fR
index c835d79d9cb1884974c3ae9c20a0b43ca9250c9f..3aa48d5bca8db02c5379efaf4ec315764cfd1ba8 100644 (file)
@@ -19,8 +19,8 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="busctl"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>busctl — Introspect the bus</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="cmdsynopsis"><p><code class="command">busctl</code>  [OPTIONS...] [COMMAND] [<em class="replaceable"><code>NAME</code></em>...]</p></div></div><div class="refsect1"><a name="idm214177446480"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><span class="command"><strong>busctl</strong></span> may be used to
-    introspect and monitor the D-Bus bus.</p></div><div class="refsect1"><a name="idm214177444736"></a><h2 id="Options">Options<a class="headerlink" title="Permalink to this headline" href="#Options">¶</a></h2><p>The following options are understood:</p><div class="variablelist"><dl class="variablelist"><dt id="--address=ADDRESS"><span class="term"><code class="option">--address=<em class="replaceable"><code>ADDRESS</code></em></code></span><a class="headerlink" title="Permalink to this term" href="#--address=ADDRESS">¶</a></dt><dd><p>Connect to the bus specified by
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="busctl"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>busctl — Introspect the bus</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="cmdsynopsis"><p><code class="command">busctl</code>  [OPTIONS...] [COMMAND] [<em class="replaceable"><code>NAME</code></em>...]</p></div></div><div class="refsect1"><a name="idm214187534608"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><span class="command"><strong>busctl</strong></span> may be used to
+    introspect and monitor the D-Bus bus.</p></div><div class="refsect1"><a name="idm214188850608"></a><h2 id="Options">Options<a class="headerlink" title="Permalink to this headline" href="#Options">¶</a></h2><p>The following options are understood:</p><div class="variablelist"><dl class="variablelist"><dt id="--address=ADDRESS"><span class="term"><code class="option">--address=<em class="replaceable"><code>ADDRESS</code></em></code></span><a class="headerlink" title="Permalink to this term" href="#--address=ADDRESS">¶</a></dt><dd><p>Connect to the bus specified by
           <em class="replaceable"><code>ADDRESS</code></em> instead of using suitable
           defaults for either the system or user bus (see
           <code class="option">--system</code> and <code class="option">--user</code>
           i.e. the column headers and the
           footer.</p></dd><dt id="--user"><span class="term"><code class="option">--user</code></span><a class="headerlink" title="Permalink to this term" href="#--user">¶</a></dt><dd><p><a name="user-text"></a>Talk to the service manager of the calling user,
       rather than the service manager of the system.</p></dd><dt id="--system"><span class="term"><code class="option">--system</code></span><a class="headerlink" title="Permalink to this term" href="#--system">¶</a></dt><dd><p><a name="system-text"></a>Talk to the service manager of the system. This is the
-      implied default.</p></dd><dt id="-H"><span class="term"><code class="option">-H</code>, </span><span class="term"><code class="option">--host=</code></span><a class="headerlink" title="Permalink to this term" href="#-H">¶</a></dt><dd><p><a name="host-text"></a>Execute the operation remotely. Specify a hostname, or
+      implied default.</p></dd><dt id="-H"><span class="term"><code class="option">-H</code>, </span><span class="term"><code class="option">--host=</code></span><a class="headerlink" title="Permalink to this term" href="#-H">¶</a></dt><dd><p><a name="host-text"></a>Execute the operation remotely. Specify a hostname, or a
       username and hostname separated by "<code class="literal">@</code>", to
-      connect to. This will use SSH to talk to the remote machine
-      manager instance.</p></dd><dt id="-M"><span class="term"><code class="option">-M</code>, </span><span class="term"><code class="option">--machine=</code></span><a class="headerlink" title="Permalink to this term" href="#-M">¶</a></dt><dd><p><a name="machine-text"></a>Execute operation on a local container. Specify a
+      connect to. The hostname may optionally be suffixed by a
+      container name, separated by "<code class="literal">:</code>", which
+      connects directly to a specific container on the specified
+      host. This will use SSH to talk to the remote machine manager
+      instance. Container names may be enumerated with
+      <span class="command"><strong>machinectl -H
+      <em class="replaceable"><code>HOST</code></em></strong></span>.</p></dd><dt id="-M"><span class="term"><code class="option">-M</code>, </span><span class="term"><code class="option">--machine=</code></span><a class="headerlink" title="Permalink to this term" href="#-M">¶</a></dt><dd><p><a name="machine-text"></a>Execute operation on a local container. Specify a
       container name to connect to.</p></dd><dt id="-h"><span class="term"><code class="option">-h</code>, </span><span class="term"><code class="option">--help</code></span><a class="headerlink" title="Permalink to this term" href="#-h">¶</a></dt><dd><p><a name="help-text"></a>Print a short help text and exit.
-    </p></dd><dt id="--version"><span class="term"><code class="option">--version</code></span><a class="headerlink" title="Permalink to this term" href="#--version">¶</a></dt><dd><p><a name="version-text"></a>Print a short version string and exit.</p></dd><dt id="--no-pager"><span class="term"><code class="option">--no-pager</code></span><a class="headerlink" title="Permalink to this term" href="#--no-pager">¶</a></dt><dd><p>Do not pipe output into a pager.</p></dd></dl></div></div><div class="refsect1"><a name="idm214181322304"></a><h2 id="Commands">Commands<a class="headerlink" title="Permalink to this headline" href="#Commands">¶</a></h2><p>The following commands are understood:</p><div class="variablelist"><dl class="variablelist"><dt id="list"><span class="term"><span class="command"><strong>list</strong></span></span><a class="headerlink" title="Permalink to this term" href="#list">¶</a></dt><dd><p>Show endpoints attached to the bus. This is
+    </p></dd><dt id="--version"><span class="term"><code class="option">--version</code></span><a class="headerlink" title="Permalink to this term" href="#--version">¶</a></dt><dd><p><a name="version-text"></a>Print a short version string and exit.</p></dd><dt id="--no-pager"><span class="term"><code class="option">--no-pager</code></span><a class="headerlink" title="Permalink to this term" href="#--no-pager">¶</a></dt><dd><p>Do not pipe output into a pager.</p></dd></dl></div></div><div class="refsect1"><a name="idm214187800176"></a><h2 id="Commands">Commands<a class="headerlink" title="Permalink to this headline" href="#Commands">¶</a></h2><p>The following commands are understood:</p><div class="variablelist"><dl class="variablelist"><dt id="list"><span class="term"><span class="command"><strong>list</strong></span></span><a class="headerlink" title="Permalink to this term" href="#list">¶</a></dt><dd><p>Show endpoints attached to the bus. This is
         the default if no command is specified.</p></dd><dt id="monitor  NAME"><span class="term"><span class="command"><strong>monitor</strong></span>   [<em class="replaceable"><code>NAME</code></em>...]</span><a class="headerlink" title="Permalink to this term" href="#monitor%20%20NAME">¶</a></dt><dd><p>Dump messages being exchanged. If
         <em class="replaceable"><code>NAME</code></em> is specified, show messages
         to or from this endpoint. Otherwise, show all messages on the
         bus.</p></dd><dt id="status  NAME"><span class="term"><span class="command"><strong>status</strong></span>    <em class="replaceable"><code>NAME</code></em> </span><a class="headerlink" title="Permalink to this term" href="#status%20%20NAME">¶</a></dt><dd><p>Show process information and credentials of a
-        bus endpoint.</p></dd><dt id="help"><span class="term"><span class="command"><strong>help</strong></span></span><a class="headerlink" title="Permalink to this term" href="#help">¶</a></dt><dd><p>Show command syntax help.</p></dd></dl></div></div><div class="refsect1"><a name="idm214181303952"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+        bus endpoint.</p></dd><dt id="help"><span class="term"><span class="command"><strong>help</strong></span></span><a class="headerlink" title="Permalink to this term" href="#help">¶</a></dt><dd><p>Show command syntax help.</p></dd></dl></div></div><div class="refsect1"><a name="idm214188024640"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
       <a href="dbus-daemon.html"><span class="citerefentry"><span class="refentrytitle">dbus-daemon</span>(1)</span></a>,
       <a class="ulink" href="http://freedesktop.org/wiki/Software/dbus" target="_top">D-Bus</a>,
       <a class="ulink" href="https://code.google.com/p/d-bus/" target="_top">kdbus</a>,
diff --git a/man/coredump.conf.5 b/man/coredump.conf.5
new file mode 100644 (file)
index 0000000..aa25b7d
--- /dev/null
@@ -0,0 +1,84 @@
+'\" t
+.TH "COREDUMP\&.CONF" "5" "" "systemd 215" "coredump.conf"
+.\" -----------------------------------------------------------------
+.\" * Define some portability stuff
+.\" -----------------------------------------------------------------
+.\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+.\" http://bugs.debian.org/507673
+.\" http://lists.gnu.org/archive/html/groff/2009-02/msg00013.html
+.\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+.ie \n(.g .ds Aq \(aq
+.el       .ds Aq '
+.\" -----------------------------------------------------------------
+.\" * set default formatting
+.\" -----------------------------------------------------------------
+.\" disable hyphenation
+.nh
+.\" disable justification (adjust text to left margin only)
+.ad l
+.\" -----------------------------------------------------------------
+.\" * MAIN CONTENT STARTS HERE *
+.\" -----------------------------------------------------------------
+.SH "NAME"
+coredump.conf \- Coredump storage configuration file
+.SH "SYNOPSIS"
+.PP
+/etc/systemd/coredump\&.conf
+.SH "DESCRIPTION"
+.PP
+This file configures the behaviour of
+\fBsystemd\-coredump\fR, a handler for core dumps invoked by the kernel\&.
+.SH "OPTIONS"
+.PP
+All options are configured in the
+"[Coredump]"
+section:
+.PP
+\fIStorage=\fR
+.RS 4
+Controls where to store cores\&. One of
+"none",
+"external",
+"journal", and
+"both"\&. When
+"none", the coredumps will be logged but not stored permanently\&. When
+"external"
+(the default), cores will be stored in
+/var/lib/systemd/coredump\&. When
+"journal", cores will be stored in the journal and rotated following normal journal rotation patterns\&. When
+"both", cores will be stored in both locations\&.
+.sp
+When cores are stored in the journal, they might be compressed following journal compression settings, see
+\fBjournald.conf\fR(5)\&. When cores are stored externally, they will be compressed by default, see below\&.
+.RE
+.PP
+\fICompress=\fR
+.RS 4
+Controls the type of compression for external storage\&. Takes a boolean argument, defaults to
+"yes"\&.
+.RE
+.PP
+\fIProcessSizeMax=\fR
+.RS 4
+The maximum size in bytes of a core which will be processed\&. Coredumps exceeding this size will be logged, but the backtrace will not be generated and the core will not be stored\&.
+.RE
+.PP
+\fIExternalSizeMax=\fR, \fIJournalSizeMax=\fR
+.RS 4
+The maximum (uncompressed) size in bytes of a core to be saved\&.
+.RE
+.PP
+\fIMaxUse=\fR, \fIKeepFree=\fR
+.RS 4
+Enforce limits on the disk space taken up by externally stored coredumps\&.
+\fBMaxUse=\fR
+makes sure that old coredumps are removed as soon as the total disk space taken up by coredumps grows beyond this limit (defaults to 10% of the total disk size)\&.
+\fBKeepFree=\fR
+controls how much disk space to keep free at least (defaults to 15% of the total disk size)\&. Note that the disk space used by coredumps might temporarily exceed these limits while coredumps are processed\&. Note that old coredumps are also removed based on on time via
+\fBsystemd-tmpfiles\fR(8)\&.
+.RE
+.SH "SEE ALSO"
+.PP
+\fBsystemd-journald.service\fR(8),
+\fBcoredumpctl\fR(1),
+\fBsystemd-tmpfiles\fR(8)
diff --git a/man/coredump.conf.html b/man/coredump.conf.html
new file mode 100644 (file)
index 0000000..b9e06c6
--- /dev/null
@@ -0,0 +1,57 @@
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>coredump.conf</title><meta name="generator" content="DocBook XSL Stylesheets V1.78.1"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><style>
+    a.headerlink {
+      color: #c60f0f;
+      font-size: 0.8em;
+      padding: 0 4px 0 4px;
+      text-decoration: none;
+      visibility: hidden;
+    }
+
+    a.headerlink:hover {
+      background-color: #c60f0f;
+      color: white;
+    }
+
+    h1:hover > a.headerlink, h2:hover > a.headerlink, h3:hover > a.headerlink, dt:hover > a.headerlink {
+      visibility: visible;
+    }
+  </style><a href="index.html">Index </a>·
+  <a href="systemd.directives.html">Directives </a>·
+  <a href="../python-systemd/index.html">Python </a>·
+  <a href="../libudev/index.html">libudev </a>·
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="coredump.conf"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>coredump.conf — Coredump storage configuration file</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><p><code class="filename">/etc/systemd/coredump.conf</code></p></div><div class="refsect1"><a name="idm214179163936"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p>This file configures the behaviour of <span class="command"><strong>systemd-coredump</strong></span>,
+    a handler for core dumps invoked by the kernel.</p></div><div class="refsect1"><a name="idm214183007376"></a><h2 id="Options">Options<a class="headerlink" title="Permalink to this headline" href="#Options">¶</a></h2><p>All options are configured in the
+    "<code class="literal">[Coredump]</code>" section:</p><div class="variablelist"><dl class="variablelist"><dt id="Storage="><span class="term"><code class="varname">Storage=</code></span><a class="headerlink" title="Permalink to this term" href="#Storage=">¶</a></dt><dd><p>Controls where to store cores. One of
+        "<code class="literal">none</code>", "<code class="literal">external</code>",
+        "<code class="literal">journal</code>", and "<code class="literal">both</code>". When
+        "<code class="literal">none</code>", the coredumps will be logged but not
+        stored permanently. When "<code class="literal">external</code>" (the
+        default), cores will be stored in <code class="filename">/var/lib/systemd/coredump</code>.
+        When "<code class="literal">journal</code>", cores will be stored in
+        the journal and rotated following normal journal
+        rotation patterns. When "<code class="literal">both</code>", cores
+        will be stored in both locations.</p><p>When cores are stored in the journal, they might be
+        compressed following journal compression settings, see
+        <a href="journald.conf.html"><span class="citerefentry"><span class="refentrytitle">journald.conf</span>(5)</span></a>.
+        When cores are stored externally, they will be compressed
+        by default, see below.</p></dd><dt id="Compress="><span class="term"><code class="varname">Compress=</code></span><a class="headerlink" title="Permalink to this term" href="#Compress=">¶</a></dt><dd><p>Controls the type of compression for external
+        storage. Takes a boolean argument, defaults to
+        "<code class="literal">yes</code>".</p></dd><dt id="ProcessSizeMax="><span class="term"><code class="varname">ProcessSizeMax=</code></span><a class="headerlink" title="Permalink to this term" href="#ProcessSizeMax=">¶</a></dt><dd><p>The maximum size in bytes of a core
+        which will be processed. Coredumps exceeding this size
+        will be logged, but the backtrace will not be generated
+        and the core will not be stored.</p></dd><dt id="ExternalSizeMax="><span class="term"><code class="varname">ExternalSizeMax=</code>, </span><span class="term"><code class="varname">JournalSizeMax=</code></span><a class="headerlink" title="Permalink to this term" href="#ExternalSizeMax=">¶</a></dt><dd><p>The maximum (uncompressed) size in bytes of a
+        core to be saved.</p></dd><dt id="MaxUse="><span class="term"><code class="varname">MaxUse=</code>, </span><span class="term"><code class="varname">KeepFree=</code></span><a class="headerlink" title="Permalink to this term" href="#MaxUse=">¶</a></dt><dd><p>Enforce limits on the disk space taken up by
+        externally stored coredumps. <code class="option">MaxUse=</code> makes
+        sure that old coredumps are removed as soon as the total disk
+        space taken up by coredumps grows beyond this limit (defaults
+        to 10% of the total disk size). <code class="option">KeepFree=</code>
+        controls how much disk space to keep free at least (defaults
+        to 15% of the total disk size). Note that the disk space used
+        by coredumps might temporarily exceed these limits while
+        coredumps are processed. Note that old coredumps are also
+        removed based on on time via
+        <a href="systemd-tmpfiles.html"><span class="citerefentry"><span class="refentrytitle">systemd-tmpfiles</span>(8)</span></a>.</p></dd></dl></div></div><div class="refsect1"><a name="idm214183150560"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+      <a href="systemd-journald.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-journald.service</span>(8)</span></a>,
+      <a href="coredumpctl.html"><span class="citerefentry"><span class="refentrytitle">coredumpctl</span>(1)</span></a>,
+      <a href="systemd-tmpfiles.html"><span class="citerefentry"><span class="refentrytitle">systemd-tmpfiles</span>(8)</span></a>
+    </p></div></div></body></html>
diff --git a/man/coredump.conf.xml b/man/coredump.conf.xml
new file mode 100644 (file)
index 0000000..fa55eb9
--- /dev/null
@@ -0,0 +1,145 @@
+<?xml version='1.0'?> <!--*-nxml-*-->
+<?xml-stylesheet type="text/xsl" href="http://docbook.sourceforge.net/release/xsl/current/xhtml/docbook.xsl"?>
+<!DOCTYPE refentry PUBLIC "-//OASIS//DTD DocBook XML V4.2//EN"
+        "http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd">
+
+<!--
+  This file is part of systemd.
+
+  Copyright 2014 Zbigniew Jędrzejewski-Szmek
+
+  systemd is free software; you can redistribute it and/or modify it
+  under the terms of the GNU Lesser General Public License as published by
+  the Free Software Foundation; either version 2.1 of the License, or
+  (at your option) any later version.
+
+  systemd is distributed in the hope that it will be useful, but
+  WITHOUT ANY WARRANTY; without even the implied warranty of
+  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+  Lesser General Public License for more details.
+
+  You should have received a copy of the GNU Lesser General Public License
+  along with systemd; If not, see <http://www.gnu.org/licenses/>.
+-->
+
+<refentry id="coredump.conf" conditional="ENABLE_COREDUMP">
+  <refentryinfo>
+    <title>coredump.conf</title>
+    <productname>systemd</productname>
+
+    <authorgroup>
+      <author>
+        <contrib>Developer</contrib>
+        <firstname>Lennart</firstname>
+        <surname>Poettering</surname>
+        <email>lennart@poettering.net</email>
+      </author>
+    </authorgroup>
+  </refentryinfo>
+
+  <refmeta>
+    <refentrytitle>coredump.conf</refentrytitle>
+    <manvolnum>5</manvolnum>
+  </refmeta>
+
+  <refnamediv>
+    <refname>coredump.conf</refname>
+    <refpurpose>Coredump storage configuration file</refpurpose>
+  </refnamediv>
+
+  <refsynopsisdiv>
+    <para><filename>/etc/systemd/coredump.conf</filename></para>
+  </refsynopsisdiv>
+
+  <refsect1>
+    <title>Description</title>
+
+    <para>This file configures the behaviour of <command>systemd-coredump</command>,
+    a handler for core dumps invoked by the kernel.</para>
+  </refsect1>
+
+  <refsect1>
+    <title>Options</title>
+
+    <para>All options are configured in the
+    <literal>[Coredump]</literal> section:</para>
+
+    <variablelist>
+
+      <varlistentry>
+        <term><varname>Storage=</varname></term>
+
+        <listitem><para>Controls where to store cores. One of
+        <literal>none</literal>, <literal>external</literal>,
+        <literal>journal</literal>, and <literal>both</literal>. When
+        <literal>none</literal>, the coredumps will be logged but not
+        stored permanently. When <literal>external</literal> (the
+        default), cores will be stored in <filename>/var/lib/systemd/coredump</filename>.
+        When <literal>journal</literal>, cores will be stored in
+        the journal and rotated following normal journal
+        rotation patterns. When <literal>both</literal>, cores
+        will be stored in both locations.</para>
+
+        <para>When cores are stored in the journal, they might be
+        compressed following journal compression settings, see
+        <citerefentry><refentrytitle>journald.conf</refentrytitle><manvolnum>5</manvolnum></citerefentry>.
+        When cores are stored externally, they will be compressed
+        by default, see below.</para></listitem>
+      </varlistentry>
+
+      <varlistentry>
+        <term><varname>Compress=</varname></term>
+
+        <listitem><para>Controls the type of compression for external
+        storage. Takes a boolean argument, defaults to
+        <literal>yes</literal>.</para>
+        </listitem>
+      </varlistentry>
+
+      <varlistentry>
+        <term><varname>ProcessSizeMax=</varname></term>
+
+        <listitem><para>The maximum size in bytes of a core
+        which will be processed. Coredumps exceeding this size
+        will be logged, but the backtrace will not be generated
+        and the core will not be stored.</para></listitem>
+      </varlistentry>
+
+      <varlistentry>
+        <term><varname>ExternalSizeMax=</varname></term>
+        <term><varname>JournalSizeMax=</varname></term>
+
+        <listitem><para>The maximum (uncompressed) size in bytes of a
+        core to be saved.</para></listitem>
+      </varlistentry>
+
+      <varlistentry>
+        <term><varname>MaxUse=</varname></term>
+        <term><varname>KeepFree=</varname></term>
+
+        <listitem><para>Enforce limits on the disk space taken up by
+        externally stored coredumps. <option>MaxUse=</option> makes
+        sure that old coredumps are removed as soon as the total disk
+        space taken up by coredumps grows beyond this limit (defaults
+        to 10% of the total disk size). <option>KeepFree=</option>
+        controls how much disk space to keep free at least (defaults
+        to 15% of the total disk size). Note that the disk space used
+        by coredumps might temporarily exceed these limits while
+        coredumps are processed. Note that old coredumps are also
+        removed based on on time via
+        <citerefentry><refentrytitle>systemd-tmpfiles</refentrytitle><manvolnum>8</manvolnum></citerefentry>.</para></listitem>
+      </varlistentry>
+    </variablelist>
+
+  </refsect1>
+
+  <refsect1>
+    <title>See Also</title>
+    <para>
+      <citerefentry><refentrytitle>systemd-journald.service</refentrytitle><manvolnum>8</manvolnum></citerefentry>,
+      <citerefentry><refentrytitle>coredumpctl</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
+      <citerefentry><refentrytitle>systemd-tmpfiles</refentrytitle><manvolnum>8</manvolnum></citerefentry>
+    </para>
+  </refsect1>
+
+</refentry>
diff --git a/man/coredumpctl.1 b/man/coredumpctl.1
new file mode 100644 (file)
index 0000000..3af6c6b
--- /dev/null
@@ -0,0 +1,126 @@
+'\" t
+.TH "COREDUMPCTL" "1" "" "systemd 215" "coredumpctl"
+.\" -----------------------------------------------------------------
+.\" * Define some portability stuff
+.\" -----------------------------------------------------------------
+.\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+.\" http://bugs.debian.org/507673
+.\" http://lists.gnu.org/archive/html/groff/2009-02/msg00013.html
+.\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+.ie \n(.g .ds Aq \(aq
+.el       .ds Aq '
+.\" -----------------------------------------------------------------
+.\" * set default formatting
+.\" -----------------------------------------------------------------
+.\" disable hyphenation
+.nh
+.\" disable justification (adjust text to left margin only)
+.ad l
+.\" -----------------------------------------------------------------
+.\" * MAIN CONTENT STARTS HERE *
+.\" -----------------------------------------------------------------
+.SH "NAME"
+coredumpctl \- Retrieve coredumps from the journal
+.SH "SYNOPSIS"
+.HP \w'\fBcoredumpctl\fR\ 'u
+\fBcoredumpctl\fR [OPTIONS...] {COMMAND} [PID|COMM|EXE|MATCH...]
+.SH "DESCRIPTION"
+.PP
+\fBcoredumpctl\fR
+may be used to retrieve coredumps from
+\fBsystemd-journald\fR(8)\&.
+.SH "OPTIONS"
+.PP
+The following options are understood:
+.PP
+\fB\-\-no\-legend\fR
+.RS 4
+Do not print the column headers\&.
+.RE
+.PP
+\fB\-1\fR
+.RS 4
+Show information of a single coredump only, instead of listing all known coredumps\&.
+.RE
+.PP
+\fB\-F\fR, \fB\-\-field=\fR
+.RS 4
+Print all possible data values the specified field takes in matching coredump entries of the journal\&.
+.RE
+.PP
+\fB\-o\fR, \fB\-\-output=FILE\fR
+.RS 4
+Write the core to
+\fBFILE\fR\&.
+.RE
+.PP
+\fB\-h\fR, \fB\-\-help\fR
+.RS 4
+Print a short help text and exit\&.
+.RE
+.PP
+\fB\-\-version\fR
+.RS 4
+Print a short version string and exit\&.
+.RE
+.PP
+\fB\-\-no\-pager\fR
+.RS 4
+Do not pipe output into a pager\&.
+.RE
+.PP
+The following commands are understood:
+.PP
+\fBlist\fR
+.RS 4
+List coredumps captured in the journal matching specified characteristics\&. If no command is specified, this is the implied default\&.
+.RE
+.PP
+\fBinfo\fR
+.RS 4
+Show detailed information about coredumps captured in the journal\&.
+.RE
+.PP
+\fBdump\fR
+.RS 4
+Extract the last coredump matching specified characteristics\&. The coredump will be written on standard output, unless an output file is specified with
+\fB\-o/\-\-output\fR\&.
+.RE
+.PP
+\fBgdb\fR
+.RS 4
+Invoke the GNU debugger on the last coredump matching specified characteristics\&.
+.RE
+.SH "MATCHING"
+.PP
+A match can be:
+.PP
+\fIPID\fR
+.RS 4
+Process ID of the process that dumped core\&. An integer\&.
+.RE
+.PP
+\fICOMM\fR
+.RS 4
+Name of the executable (matches
+\fBCOREDUMP_COMM=\fR)\&. Must not contain slashes\&.
+.RE
+.PP
+\fIEXE\fR
+.RS 4
+Path to the executable (matches
+\fBCOREDUMP_EXE=\fR)\&. Must contain at least one slash\&.
+.RE
+.PP
+\fIMATCH\fR
+.RS 4
+General journalctl predicates (see
+\fBjournalctl\fR(1))\&. Must contain an equal sign\&.
+.RE
+.SH "EXIT STATUS"
+.PP
+On success, 0 is returned; otherwise, a non\-zero failure code is returned\&. Not finding any matching coredumps is treated as failure\&.
+.SH "SEE ALSO"
+.PP
+\fBsystemd-journald.service\fR(8),
+\fBgdb\fR(1)
diff --git a/man/coredumpctl.html b/man/coredumpctl.html
new file mode 100644 (file)
index 0000000..d302eb6
--- /dev/null
@@ -0,0 +1,64 @@
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>coredumpctl</title><meta name="generator" content="DocBook XSL Stylesheets V1.78.1"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><style>
+    a.headerlink {
+      color: #c60f0f;
+      font-size: 0.8em;
+      padding: 0 4px 0 4px;
+      text-decoration: none;
+      visibility: hidden;
+    }
+
+    a.headerlink:hover {
+      background-color: #c60f0f;
+      color: white;
+    }
+
+    h1:hover > a.headerlink, h2:hover > a.headerlink, h3:hover > a.headerlink, dt:hover > a.headerlink {
+      visibility: visible;
+    }
+  </style><a href="index.html">Index </a>·
+  <a href="systemd.directives.html">Directives </a>·
+  <a href="../python-systemd/index.html">Python </a>·
+  <a href="../libudev/index.html">libudev </a>·
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="coredumpctl"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>coredumpctl — Retrieve coredumps from the journal</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="cmdsynopsis"><p><code class="command">coredumpctl</code>  [OPTIONS...] {COMMAND} [PID|COMM|EXE|MATCH...]</p></div></div><div class="refsect1"><a name="idm214194795776"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><span class="command"><strong>coredumpctl</strong></span> may be used to
+                retrieve coredumps from
+                <a href="systemd-journald.html"><span class="citerefentry"><span class="refentrytitle">systemd-journald</span>(8)</span></a>.</p></div><div class="refsect1"><a name="idm214194840048"></a><h2 id="Options">Options<a class="headerlink" title="Permalink to this headline" href="#Options">¶</a></h2><p>The following options are understood:</p><div class="variablelist"><dl class="variablelist"><dt id="--no-legend"><span class="term"><code class="option">--no-legend</code></span><a class="headerlink" title="Permalink to this term" href="#--no-legend">¶</a></dt><dd><p>Do not print the column headers.
+                                </p></dd><dt id="-1"><span class="term"><code class="option">-1</code></span><a class="headerlink" title="Permalink to this term" href="#-1">¶</a></dt><dd><p>Show information of a
+                                single coredump only, instead of
+                                listing all known coredumps.
+                                </p></dd><dt id="-F"><span class="term"><code class="option">-F</code>, </span><span class="term"><code class="option">--field=</code></span><a class="headerlink" title="Permalink to this term" href="#-F">¶</a></dt><dd><p>Print all possible
+                                data values the specified field
+                                takes in matching coredump entries of the
+                                journal.</p></dd><dt id="-o"><span class="term"><code class="option">-o</code>, </span><span class="term"><code class="option">--output=FILE</code></span><a class="headerlink" title="Permalink to this term" href="#-o">¶</a></dt><dd><p>Write the core to
+                                <code class="option">FILE</code>.</p></dd><dt id="-h"><span class="term"><code class="option">-h</code>, </span><span class="term"><code class="option">--help</code></span><a class="headerlink" title="Permalink to this term" href="#-h">¶</a></dt><dd><p><a name="help-text"></a>Print a short help text and exit.
+    </p></dd><dt id="--version"><span class="term"><code class="option">--version</code></span><a class="headerlink" title="Permalink to this term" href="#--version">¶</a></dt><dd><p><a name="version-text"></a>Print a short version string and exit.</p></dd><dt id="--no-pager"><span class="term"><code class="option">--no-pager</code></span><a class="headerlink" title="Permalink to this term" href="#--no-pager">¶</a></dt><dd><p>Do not pipe output into a pager.</p></dd></dl></div><p>The following commands are understood:</p><div class="variablelist"><dl class="variablelist"><dt id="list"><span class="term"><span class="command"><strong>list</strong></span></span><a class="headerlink" title="Permalink to this term" href="#list">¶</a></dt><dd><p>List coredumps
+                                captured in the journal matching
+                                specified characteristics. If no
+                                command is specified, this is the
+                                implied default.</p></dd><dt id="info"><span class="term"><span class="command"><strong>info</strong></span></span><a class="headerlink" title="Permalink to this term" href="#info">¶</a></dt><dd><p>Show detailed
+                                information about coredumps captured
+                                in the journal.</p></dd><dt id="dump"><span class="term"><span class="command"><strong>dump</strong></span></span><a class="headerlink" title="Permalink to this term" href="#dump">¶</a></dt><dd><p>Extract the last coredump
+                                matching specified characteristics.
+                                The coredump will be written on standard output,
+                                unless an output file is specified with
+                                <code class="option">-o/--output</code>.
+                                </p></dd><dt id="gdb"><span class="term"><span class="command"><strong>gdb</strong></span></span><a class="headerlink" title="Permalink to this term" href="#gdb">¶</a></dt><dd><p>Invoke the GNU
+                                debugger on the last coredump matching
+                                specified characteristics.
+                                </p></dd></dl></div></div><div class="refsect1"><a name="idm214194937296"></a><h2 id="Matching">Matching<a class="headerlink" title="Permalink to this headline" href="#Matching">¶</a></h2><p>A match can be:</p><div class="variablelist"><dl class="variablelist"><dt id="PID"><span class="term"><em class="replaceable"><code>PID</code></em></span><a class="headerlink" title="Permalink to this term" href="#PID">¶</a></dt><dd><p>Process ID of the
+                                process that dumped
+                                core. An integer.</p></dd><dt id="COMM"><span class="term"><em class="replaceable"><code>COMM</code></em></span><a class="headerlink" title="Permalink to this term" href="#COMM">¶</a></dt><dd><p>Name of the executable
+                                (matches <code class="option">COREDUMP_COMM=</code>).
+                                Must not contain slashes.
+                                </p></dd><dt id="EXE"><span class="term"><em class="replaceable"><code>EXE</code></em></span><a class="headerlink" title="Permalink to this term" href="#EXE">¶</a></dt><dd><p>Path to the executable
+                                (matches <code class="option">COREDUMP_EXE=</code>).
+                                Must contain at least one slash.
+                                </p></dd><dt id="MATCH"><span class="term"><em class="replaceable"><code>MATCH</code></em></span><a class="headerlink" title="Permalink to this term" href="#MATCH">¶</a></dt><dd><p>General journalctl predicates
+                                (see <a href="journalctl.html"><span class="citerefentry"><span class="refentrytitle">journalctl</span>(1)</span></a>).
+                                Must contain an equal sign.
+                                </p></dd></dl></div></div><div class="refsect1"><a name="idm214194927856"></a><h2 id="Exit status">Exit status<a class="headerlink" title="Permalink to this headline" href="#Exit%20status">¶</a></h2><p>On success, 0 is returned; otherwise, a non-zero failure
+                code is returned. Not finding any matching coredumps is treated
+                as failure.
+                </p></div><div class="refsect1"><a name="idm214194926480"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+                        <a href="systemd-journald.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-journald.service</span>(8)</span></a>,
+                        <a href="gdb.html"><span class="citerefentry"><span class="refentrytitle">gdb</span>(1)</span></a>
+                </p></div></div></body></html>
diff --git a/man/coredumpctl.xml b/man/coredumpctl.xml
new file mode 100644 (file)
index 0000000..73d1b84
--- /dev/null
@@ -0,0 +1,218 @@
+<?xml version='1.0'?> <!--*-nxml-*-->
+<!DOCTYPE refentry PUBLIC "-//OASIS//DTD DocBook XML V4.2//EN"
+        "http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd">
+
+<!--
+  This file is part of systemd.
+
+  Copyright 2012 Zbigniew Jędrzejewski-Szmek
+
+  systemd is free software; you can redistribute it and/or modify it
+  under the terms of the GNU Lesser General Public License as published by
+  the Free Software Foundation; either version 2.1 of the License, or
+  (at your option) any later version.
+
+  systemd is distributed in the hope that it will be useful, but
+  WITHOUT ANY WARRANTY; without even the implied warranty of
+  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+  Lesser General Public License for more details.
+
+  You should have received a copy of the GNU Lesser General Public License
+  along with systemd; If not, see <http://www.gnu.org/licenses/>.
+-->
+
+<refentry id="coredumpctl" conditional='ENABLE_COREDUMP'
+          xmlns:xi="http://www.w3.org/2001/XInclude">
+
+        <refentryinfo>
+                <title>coredumpctl</title>
+                <productname>systemd</productname>
+
+                <authorgroup>
+                        <author>
+                                <contrib>Developer</contrib>
+                                <firstname>Zbigniew</firstname>
+                                <surname>Jędrzejewski-Szmek</surname>
+                                <email>zbyszek@in.waw.pl</email>
+                        </author>
+                </authorgroup>
+        </refentryinfo>
+
+        <refmeta>
+                <refentrytitle>coredumpctl</refentrytitle>
+                <manvolnum>1</manvolnum>
+        </refmeta>
+
+        <refnamediv>
+                <refname>coredumpctl</refname>
+                <refpurpose>Retrieve coredumps from the journal</refpurpose>
+        </refnamediv>
+
+        <refsynopsisdiv>
+                <cmdsynopsis>
+                        <command>coredumpctl</command>
+                        <arg choice="opt" rep="repeat">OPTIONS</arg>
+                        <arg choice="req">COMMAND</arg>
+                        <arg choice="opt" rep="repeat">PID|COMM|EXE|MATCH</arg>
+                </cmdsynopsis>
+        </refsynopsisdiv>
+
+        <refsect1>
+                <title>Description</title>
+
+                <para><command>coredumpctl</command> may be used to
+                retrieve coredumps from
+                <citerefentry><refentrytitle>systemd-journald</refentrytitle><manvolnum>8</manvolnum></citerefentry>.</para>
+        </refsect1>
+
+        <refsect1>
+                <title>Options</title>
+
+                <para>The following options are understood:</para>
+
+                <variablelist>
+                        <varlistentry>
+                                <term><option>--no-legend</option></term>
+
+                                <listitem><para>Do not print the column headers.
+                                </para></listitem>
+                        </varlistentry>
+
+                        <varlistentry>
+                                <term><option>-1</option></term>
+
+                                <listitem><para>Show information of a
+                                single coredump only, instead of
+                                listing all known coredumps.
+                                </para></listitem>
+                        </varlistentry>
+
+                        <varlistentry>
+                                <term><option>-F</option></term>
+                                <term><option>--field=</option></term>
+
+                                <listitem><para>Print all possible
+                                data values the specified field
+                                takes in matching coredump entries of the
+                                journal.</para></listitem>
+                        </varlistentry>
+
+                        <varlistentry>
+                                <term><option>-o</option></term>
+                                <term><option>--output=FILE</option></term>
+
+                                <listitem><para>Write the core to
+                                <option>FILE</option>.</para></listitem>
+                        </varlistentry>
+
+                        <xi:include href="standard-options.xml" xpointer="help" />
+                        <xi:include href="standard-options.xml" xpointer="version" />
+                        <xi:include href="standard-options.xml" xpointer="no-pager" />
+
+                </variablelist>
+
+                <para>The following commands are understood:</para>
+
+                <variablelist>
+                        <varlistentry>
+                                <term><command>list</command></term>
+
+                                <listitem><para>List coredumps
+                                captured in the journal matching
+                                specified characteristics. If no
+                                command is specified, this is the
+                                implied default.</para></listitem>
+                        </varlistentry>
+
+                        <varlistentry>
+                                <term><command>info</command></term>
+
+                                <listitem><para>Show detailed
+                                information about coredumps captured
+                                in the journal.</para></listitem>
+                        </varlistentry>
+
+                        <varlistentry>
+                                <term><command>dump</command></term>
+
+                                <listitem><para>Extract the last coredump
+                                matching specified characteristics.
+                                The coredump will be written on standard output,
+                                unless an output file is specified with
+                                <option>-o/--output</option>.
+                                </para></listitem>
+                        </varlistentry>
+
+                        <varlistentry>
+                                <term><command>gdb</command></term>
+
+                                <listitem><para>Invoke the GNU
+                                debugger on the last coredump matching
+                                specified characteristics.
+                                </para></listitem>
+                        </varlistentry>
+
+                </variablelist>
+
+        </refsect1>
+
+        <refsect1>
+                <title>Matching</title>
+
+                <para>A match can be:</para>
+
+                <variablelist>
+                        <varlistentry>
+                                <term><replaceable>PID</replaceable></term>
+
+                                <listitem><para>Process ID of the
+                                process that dumped
+                                core. An integer.</para></listitem>
+                        </varlistentry>
+
+                        <varlistentry>
+                                <term><replaceable>COMM</replaceable></term>
+
+                                <listitem><para>Name of the executable
+                                (matches <option>COREDUMP_COMM=</option>).
+                                Must not contain slashes.
+                                </para></listitem>
+                        </varlistentry>
+
+                        <varlistentry>
+                                <term><replaceable>EXE</replaceable></term>
+
+                                <listitem><para>Path to the executable
+                                (matches <option>COREDUMP_EXE=</option>).
+                                Must contain at least one slash.
+                                </para></listitem>
+                        </varlistentry>
+
+                        <varlistentry>
+                                <term><replaceable>MATCH</replaceable></term>
+
+                                <listitem><para>General journalctl predicates
+                                (see <citerefentry><refentrytitle>journalctl</refentrytitle><manvolnum>1</manvolnum></citerefentry>).
+                                Must contain an equal sign.
+                                </para></listitem>
+                        </varlistentry>
+                </variablelist>
+        </refsect1>
+
+        <refsect1>
+                <title>Exit status</title>
+                <para>On success, 0 is returned; otherwise, a non-zero failure
+                code is returned. Not finding any matching coredumps is treated
+                as failure.
+                </para>
+        </refsect1>
+
+        <refsect1>
+                <title>See Also</title>
+                <para>
+                        <citerefentry><refentrytitle>systemd-journald.service</refentrytitle><manvolnum>8</manvolnum></citerefentry>,
+                        <citerefentry><refentrytitle>gdb</refentrytitle><manvolnum>1</manvolnum></citerefentry>
+                </para>
+        </refsect1>
+
+</refentry>
index 094494bc28f14f95950e5a9737dc8f626a6d6742..9ccf1e48a48eb1a947b47ff5c78dc27691f08cb8 100644 (file)
@@ -1,5 +1,5 @@
 '\" t
-.TH "CRYPTTAB" "5" "" "systemd 214" "crypttab"
+.TH "CRYPTTAB" "5" "" "systemd 215" "crypttab"
 .\" -----------------------------------------------------------------
 .\" * Define some portability stuff
 .\" -----------------------------------------------------------------
@@ -58,12 +58,12 @@ may prevent boot completion if the system does not have enough entropy to genera
 .PP
 The fourth field, if present, is a comma\-delimited list of options\&. The following options are recognized:
 .PP
-\fIdiscard\fR
+\fBdiscard\fR
 .RS 4
 Allow discard requests to be passed through the encrypted block device\&. This improves performance on SSD storage but has security implications\&.
 .RE
 .PP
-\fIcipher=\fR
+\fBcipher=\fR
 .RS 4
 Specifies the cipher to use\&. See
 \fBcryptsetup\fR(8)
@@ -71,149 +71,149 @@ for possible values and the default value of this option\&. A cipher with unpred
 "aes\-cbc\-essiv:sha256", is recommended\&.
 .RE
 .PP
-\fIhash=\fR
+\fBhash=\fR
 .RS 4
 Specifies the hash to use for password hashing\&. See
 \fBcryptsetup\fR(8)
 for possible values and the default value of this option\&.
 .RE
 .PP
-\fIkeyfile\-offset=\fR
+\fBkeyfile\-offset=\fR
 .RS 4
 Specifies the number of bytes to skip at the start of the key file\&. See
 \fBcryptsetup\fR(8)
 for possible values and the default value of this option\&.
 .RE
 .PP
-\fIkeyfile\-size=\fR
+\fBkeyfile\-size=\fR
 .RS 4
 Specifies the maximum number of bytes to read from the key file\&. See
 \fBcryptsetup\fR(8)
 for possible values and the default value of this option\&. This option is ignored in plain encryption mode, as the key file size is then given by the key size\&.
 .RE
 .PP
-\fIkey\-slot=\fR
+\fBkey\-slot=\fR
 .RS 4
 Specifies the key slot to compare the passphrase or key against\&. If the key slot does not match the given passphrase or key, but another would, the setup of the device will fail regardless\&. This option implies
-\fIluks\fR\&. See
+\fBluks\fR\&. See
 \fBcryptsetup\fR(8)
 for possible values\&. The default is to try all key slots in sequential order\&.
 .RE
 .PP
-\fIluks\fR
+\fBluks\fR
 .RS 4
 Force LUKS mode\&. When this mode is used, the following options are ignored since they are provided by the LUKS header on the device:
-\fIcipher=\fR,
-\fIhash=\fR,
-\fIsize=\fR\&.
+\fBcipher=\fR,
+\fBhash=\fR,
+\fBsize=\fR\&.
 .RE
 .PP
-\fInoauto\fR
+\fBnoauto\fR
 .RS 4
 This device will not be automatically unlocked on boot\&.
 .RE
 .PP
-\fInofail\fR
+\fBnofail\fR
 .RS 4
 The system will not wait for the device to show up and be unlocked at boot, and not fail the boot if it does not show up\&.
 .RE
 .PP
-\fIplain\fR
+\fBplain\fR
 .RS 4
 Force plain encryption mode\&.
 .RE
 .PP
-\fIread\-only\fR, \fIreadonly\fR
+\fBread\-only\fR, \fBreadonly\fR
 .RS 4
 Set up the encrypted block device in read\-only mode\&.
 .RE
 .PP
-\fIsize=\fR
+\fBsize=\fR
 .RS 4
 Specifies the key size in bits\&. See
 \fBcryptsetup\fR(8)
 for possible values and the default value of this option\&.
 .RE
 .PP
-\fIswap\fR
+\fBswap\fR
 .RS 4
 The encrypted block device will be used as a swap device, and will be formatted accordingly after setting up the encrypted block device, with
 \fBmkswap\fR(8)\&. This option implies
-\fIplain\fR\&.
+\fBplain\fR\&.
 .sp
 WARNING: Using the
-\fIswap\fR
+\fBswap\fR
 option will destroy the contents of the named partition during every boot, so make sure the underlying block device is specified correctly\&.
 .RE
 .PP
-\fItcrypt\fR
+\fBtcrypt\fR
 .RS 4
 Use TrueCrypt encryption mode\&. When this mode is used, the following options are ignored since they are provided by the TrueCrypt header on the device or do not apply:
-\fIcipher=\fR,
-\fIhash=\fR,
-\fIkeyfile\-offset=\fR,
-\fIkeyfile\-size=\fR,
-\fIsize=\fR\&.
+\fBcipher=\fR,
+\fBhash=\fR,
+\fBkeyfile\-offset=\fR,
+\fBkeyfile\-size=\fR,
+\fBsize=\fR\&.
 .sp
 When this mode is used, the passphrase is read from the key file given in the third field\&. Only the first line of this file is read, excluding the new line character\&.
 .sp
 Note that the TrueCrypt format uses both passphrase and key files to derive a password for the volume\&. Therefore, the passphrase and all key files need to be provided\&. Use
-\fItcrypt\-keyfile=\fR
+\fBtcrypt\-keyfile=\fR
 to provide the absolute path to all key files\&. When using an empty passphrase in combination with one or more key files, use
 "/dev/null"
 as the password file in the third field\&.
 .RE
 .PP
-\fItcrypt\-hidden\fR
+\fBtcrypt\-hidden\fR
 .RS 4
 Use the hidden TrueCrypt volume\&. This option implies
-\fItcrypt\fR\&.
+\fBtcrypt\fR\&.
 .sp
 This will map the hidden volume that is inside of the volume provided in the second field\&. Please note that there is no protection for the hidden volume if the outer volume is mounted instead\&. See
 \fBcryptsetup\fR(8)
 for more information on this limitation\&.
 .RE
 .PP
-\fItcrypt\-keyfile=\fR
+\fBtcrypt\-keyfile=\fR
 .RS 4
 Specifies the absolute path to a key file to use for a TrueCrypt volume\&. This implies
-\fItcrypt\fR
+\fBtcrypt\fR
 and can be used more than once to provide several key files\&.
 .sp
 See the entry for
-\fItcrypt\fR
+\fBtcrypt\fR
 on the behavior of the passphrase and key files when using TrueCrypt encryption mode\&.
 .RE
 .PP
-\fItcrypt\-system\fR
+\fBtcrypt\-system\fR
 .RS 4
 Use TrueCrypt in system encryption mode\&. This option implies
-\fItcrypt\fR\&.
+\fBtcrypt\fR\&.
 .RE
 .PP
-\fItimeout=\fR
+\fBtimeout=\fR
 .RS 4
 Specifies the timeout for querying for a password\&. If no unit is specified, seconds is used\&. Supported units are s, ms, us, min, h, d\&. A timeout of 0 waits indefinitely (which is the default)\&.
 .RE
 .PP
-\fItmp\fR
+\fBtmp\fR
 .RS 4
 The encrypted block device will be prepared for using it as
 /tmp; it will be formatted using
 \fBmke2fs\fR(8)\&. This option implies
-\fIplain\fR\&.
+\fBplain\fR\&.
 .sp
 WARNING: Using the
-\fItmp\fR
+\fBtmp\fR
 option will destroy the contents of the named partition during every boot, so make sure the underlying block device is specified correctly\&.
 .RE
 .PP
-\fItries=\fR
+\fBtries=\fR
 .RS 4
 Specifies the maximum number of times the user is queried for a password\&. The default is 3\&. If set to 0, the user is queried for a password indefinitely\&.
 .RE
 .PP
-\fIverify\fR
+\fBverify\fR
 .RS 4
 If the encryption password is read from console, it has to be entered twice to prevent typos\&.
 .RE
@@ -233,7 +233,7 @@ Set up four encrypted block devices\&. One using LUKS for normal storage, anothe
 luks       UUID=2505567a\-9e27\-4efe\-a4d5\-15ad146c258b
 swap       /dev/sda7       /dev/urandom             swap
 truecrypt  /dev/sda2       /etc/container_password  tcrypt
-hidden     /mnt/tc_hidden  /null                    tcrypt\-hidden,tcrypt\-keyfile=/etc/keyfile
+hidden     /mnt/tc_hidden  /dev/null                tcrypt\-hidden,tcrypt\-keyfile=/etc/keyfile
 .fi
 .if n \{\
 .RE
index b5109ea22c7b74bb2178a99daf086629b1c61083..0e873011fce0742f3ae7d7d22be97f6970d979c1 100644 (file)
@@ -19,7 +19,7 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="crypttab"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>crypttab — Configuration for encrypted block devices</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><p><code class="filename">/etc/crypttab</code></p></div><div class="refsect1"><a name="idm214191735008"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p>The <code class="filename">/etc/crypttab</code> file
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="crypttab"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>crypttab — Configuration for encrypted block devices</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><p><code class="filename">/etc/crypttab</code></p></div><div class="refsect1"><a name="idm214179029408"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p>The <code class="filename">/etc/crypttab</code> file
                 describes encrypted block devices that are set up
                 during system boot.</p><p>Empty lines and lines starting with the "<code class="literal">#</code>"
                 character are ignored.  Each of the remaining lines
                 completion if the system does not have enough entropy
                 to generate a truly random encryption key.</p><p>The fourth field, if present, is a
                 comma-delimited list of options.  The following
-                options are recognized:</p><div class="variablelist"><dl class="variablelist"><dt id="discard"><span class="term"><code class="varname">discard</code></span><a class="headerlink" title="Permalink to this term" href="#discard">¶</a></dt><dd><p>Allow discard requests to be
+                options are recognized:</p><div class="variablelist"><dl class="variablelist"><dt id="discard"><span class="term"><code class="option">discard</code></span><a class="headerlink" title="Permalink to this term" href="#discard">¶</a></dt><dd><p>Allow discard requests to be
                                 passed through the encrypted block device. This
                                 improves performance on SSD storage but has
-                                security implications.</p></dd><dt id="cipher="><span class="term"><code class="varname">cipher=</code></span><a class="headerlink" title="Permalink to this term" href="#cipher=">¶</a></dt><dd><p>Specifies the cipher to use. See
+                                security implications.</p></dd><dt id="cipher="><span class="term"><code class="option">cipher=</code></span><a class="headerlink" title="Permalink to this term" href="#cipher=">¶</a></dt><dd><p>Specifies the cipher to use. See
                                 <a href="cryptsetup.html"><span class="citerefentry"><span class="refentrytitle">cryptsetup</span>(8)</span></a>
                                 for possible values and the default value of
                                 this option. A cipher with unpredictable IV
                                 values, such as "<code class="literal">aes-cbc-essiv:sha256</code>",
-                                is recommended.</p></dd><dt id="hash="><span class="term"><code class="varname">hash=</code></span><a class="headerlink" title="Permalink to this term" href="#hash=">¶</a></dt><dd><p>Specifies the hash to use for
+                                is recommended.</p></dd><dt id="hash="><span class="term"><code class="option">hash=</code></span><a class="headerlink" title="Permalink to this term" href="#hash=">¶</a></dt><dd><p>Specifies the hash to use for
                                 password hashing. See
                                 <a href="cryptsetup.html"><span class="citerefentry"><span class="refentrytitle">cryptsetup</span>(8)</span></a>
                                 for possible values and the default value of
-                                this option.</p></dd><dt id="keyfile-offset="><span class="term"><code class="varname">keyfile-offset=</code></span><a class="headerlink" title="Permalink to this term" href="#keyfile-offset=">¶</a></dt><dd><p>Specifies the number of bytes to
+                                this option.</p></dd><dt id="keyfile-offset="><span class="term"><code class="option">keyfile-offset=</code></span><a class="headerlink" title="Permalink to this term" href="#keyfile-offset=">¶</a></dt><dd><p>Specifies the number of bytes to
                                 skip at the start of the key file. See
                                 <a href="cryptsetup.html"><span class="citerefentry"><span class="refentrytitle">cryptsetup</span>(8)</span></a>
                                 for possible values and the default value of
-                                this option.</p></dd><dt id="keyfile-size="><span class="term"><code class="varname">keyfile-size=</code></span><a class="headerlink" title="Permalink to this term" href="#keyfile-size=">¶</a></dt><dd><p>Specifies the maximum number
+                                this option.</p></dd><dt id="keyfile-size="><span class="term"><code class="option">keyfile-size=</code></span><a class="headerlink" title="Permalink to this term" href="#keyfile-size=">¶</a></dt><dd><p>Specifies the maximum number
                                 of bytes to read from the key file. See
                                 <a href="cryptsetup.html"><span class="citerefentry"><span class="refentrytitle">cryptsetup</span>(8)</span></a>
                                 for possible values and the default value of
                                 this option. This option is ignored in plain
                                 encryption mode, as the key file size is then
-                                given by the key size.</p></dd><dt id="key-slot="><span class="term"><code class="varname">key-slot=</code></span><a class="headerlink" title="Permalink to this term" href="#key-slot=">¶</a></dt><dd><p>Specifies the key slot to
+                                given by the key size.</p></dd><dt id="key-slot="><span class="term"><code class="option">key-slot=</code></span><a class="headerlink" title="Permalink to this term" href="#key-slot=">¶</a></dt><dd><p>Specifies the key slot to
                                 compare the passphrase or key against.
                                 If the key slot does not match the given
                                 passphrase or key, but another would, the
                                 setup of the device will fail regardless.
-                                This option implies <code class="varname">luks</code>. See
+                                This option implies <code class="option">luks</code>. See
                                 <a href="cryptsetup.html"><span class="citerefentry"><span class="refentrytitle">cryptsetup</span>(8)</span></a>
                                 for possible values. The default is to try
-                                all key slots in sequential order.</p></dd><dt id="luks"><span class="term"><code class="varname">luks</code></span><a class="headerlink" title="Permalink to this term" href="#luks">¶</a></dt><dd><p>Force LUKS mode. When this mode
+                                all key slots in sequential order.</p></dd><dt id="luks"><span class="term"><code class="option">luks</code></span><a class="headerlink" title="Permalink to this term" href="#luks">¶</a></dt><dd><p>Force LUKS mode. When this mode
                                 is used, the following options are ignored since
                                 they are provided by the LUKS header on the
-                                device: <code class="varname">cipher=</code>,
-                                <code class="varname">hash=</code>,
-                                <code class="varname">size=</code>.</p></dd><dt id="noauto"><span class="term"><code class="varname">noauto</code></span><a class="headerlink" title="Permalink to this term" href="#noauto">¶</a></dt><dd><p>This device will not be
-                                automatically unlocked on boot.</p></dd><dt id="nofail"><span class="term"><code class="varname">nofail</code></span><a class="headerlink" title="Permalink to this term" href="#nofail">¶</a></dt><dd><p>The system will not wait for the
+                                device: <code class="option">cipher=</code>,
+                                <code class="option">hash=</code>,
+                                <code class="option">size=</code>.</p></dd><dt id="noauto"><span class="term"><code class="option">noauto</code></span><a class="headerlink" title="Permalink to this term" href="#noauto">¶</a></dt><dd><p>This device will not be
+                                automatically unlocked on boot.</p></dd><dt id="nofail"><span class="term"><code class="option">nofail</code></span><a class="headerlink" title="Permalink to this term" href="#nofail">¶</a></dt><dd><p>The system will not wait for the
                                 device to show up and be unlocked at boot, and
-                                not fail the boot if it does not show up.</p></dd><dt id="plain"><span class="term"><code class="varname">plain</code></span><a class="headerlink" title="Permalink to this term" href="#plain">¶</a></dt><dd><p>Force plain encryption mode.</p></dd><dt id="read-only"><span class="term"><code class="varname">read-only</code>, </span><span class="term"><code class="varname">readonly</code></span><a class="headerlink" title="Permalink to this term" href="#read-only">¶</a></dt><dd><p>Set up the encrypted block
-                                device in read-only mode.</p></dd><dt id="size="><span class="term"><code class="varname">size=</code></span><a class="headerlink" title="Permalink to this term" href="#size=">¶</a></dt><dd><p>Specifies the key size
+                                not fail the boot if it does not show up.</p></dd><dt id="plain"><span class="term"><code class="option">plain</code></span><a class="headerlink" title="Permalink to this term" href="#plain">¶</a></dt><dd><p>Force plain encryption mode.</p></dd><dt id="read-only"><span class="term"><code class="option">read-only</code>, </span><span class="term"><code class="option">readonly</code></span><a class="headerlink" title="Permalink to this term" href="#read-only">¶</a></dt><dd><p>Set up the encrypted block
+                                device in read-only mode.</p></dd><dt id="size="><span class="term"><code class="option">size=</code></span><a class="headerlink" title="Permalink to this term" href="#size=">¶</a></dt><dd><p>Specifies the key size
                                 in bits. See
                                 <a href="cryptsetup.html"><span class="citerefentry"><span class="refentrytitle">cryptsetup</span>(8)</span></a>
                                 for possible values and the default value of
-                                this option.</p></dd><dt id="swap"><span class="term"><code class="varname">swap</code></span><a class="headerlink" title="Permalink to this term" href="#swap">¶</a></dt><dd><p>The encrypted block device will
+                                this option.</p></dd><dt id="swap"><span class="term"><code class="option">swap</code></span><a class="headerlink" title="Permalink to this term" href="#swap">¶</a></dt><dd><p>The encrypted block device will
                                 be used as a swap device, and will be formatted
                                 accordingly after setting up the encrypted
                                 block device, with
                                 <a href="mkswap.html"><span class="citerefentry"><span class="refentrytitle">mkswap</span>(8)</span></a>.
-                                This option implies <code class="varname">plain</code>.</p><p>WARNING: Using the <code class="varname">swap</code>
+                                This option implies <code class="option">plain</code>.</p><p>WARNING: Using the <code class="option">swap</code>
                                 option will destroy the contents of the named
                                 partition during every boot, so make sure the
-                                underlying block device is specified correctly.</p></dd><dt id="tcrypt"><span class="term"><code class="varname">tcrypt</code></span><a class="headerlink" title="Permalink to this term" href="#tcrypt">¶</a></dt><dd><p>Use TrueCrypt encryption mode.
+                                underlying block device is specified correctly.</p></dd><dt id="tcrypt"><span class="term"><code class="option">tcrypt</code></span><a class="headerlink" title="Permalink to this term" href="#tcrypt">¶</a></dt><dd><p>Use TrueCrypt encryption mode.
                                 When this mode is used, the following options are
                                 ignored since they are provided by the TrueCrypt
                                 header on the device or do not apply:
-                                <code class="varname">cipher=</code>,
-                                <code class="varname">hash=</code>,
-                                <code class="varname">keyfile-offset=</code>,
-                                <code class="varname">keyfile-size=</code>,
-                                <code class="varname">size=</code>.</p><p>When this mode is used, the passphrase is
+                                <code class="option">cipher=</code>,
+                                <code class="option">hash=</code>,
+                                <code class="option">keyfile-offset=</code>,
+                                <code class="option">keyfile-size=</code>,
+                                <code class="option">size=</code>.</p><p>When this mode is used, the passphrase is
                                 read from the key file given in the third field.
                                 Only the first line of this file is read,
                                 excluding the new line character.</p><p>Note that the TrueCrypt format uses both
                                 passphrase and key files to derive a password
                                 for the volume. Therefore, the passphrase and
                                 all key files need to be provided. Use
-                                <code class="varname">tcrypt-keyfile=</code> to provide
+                                <code class="option">tcrypt-keyfile=</code> to provide
                                 the absolute path to all key files. When using
                                 an empty passphrase in combination with one or
                                 more key files, use "<code class="literal">/dev/null</code>"
-                                as the password file in the third field.</p></dd><dt id="tcrypt-hidden"><span class="term"><code class="varname">tcrypt-hidden</code></span><a class="headerlink" title="Permalink to this term" href="#tcrypt-hidden">¶</a></dt><dd><p>Use the hidden TrueCrypt volume.
-                                This option implies <code class="varname">tcrypt</code>.</p><p>This will map the hidden volume that is
+                                as the password file in the third field.</p></dd><dt id="tcrypt-hidden"><span class="term"><code class="option">tcrypt-hidden</code></span><a class="headerlink" title="Permalink to this term" href="#tcrypt-hidden">¶</a></dt><dd><p>Use the hidden TrueCrypt volume.
+                                This option implies <code class="option">tcrypt</code>.</p><p>This will map the hidden volume that is
                                 inside of the volume provided in the second
                                 field. Please note that there is no protection
                                 for the hidden volume if the outer volume is
                                 mounted instead. See
                                 <a href="cryptsetup.html"><span class="citerefentry"><span class="refentrytitle">cryptsetup</span>(8)</span></a>
-                                for more information on this limitation.</p></dd><dt id="tcrypt-keyfile="><span class="term"><code class="varname">tcrypt-keyfile=</code></span><a class="headerlink" title="Permalink to this term" href="#tcrypt-keyfile=">¶</a></dt><dd><p>Specifies the absolute path to a
+                                for more information on this limitation.</p></dd><dt id="tcrypt-keyfile="><span class="term"><code class="option">tcrypt-keyfile=</code></span><a class="headerlink" title="Permalink to this term" href="#tcrypt-keyfile=">¶</a></dt><dd><p>Specifies the absolute path to a
                                 key file to use for a TrueCrypt volume. This
-                                implies <code class="varname">tcrypt</code> and can be
+                                implies <code class="option">tcrypt</code> and can be
                                 used more than once to provide several key
-                                files.</p><p>See the entry for <code class="varname">tcrypt</code>
+                                files.</p><p>See the entry for <code class="option">tcrypt</code>
                                 on the behavior of the passphrase and key files
-                                when using TrueCrypt encryption mode.</p></dd><dt id="tcrypt-system"><span class="term"><code class="varname">tcrypt-system</code></span><a class="headerlink" title="Permalink to this term" href="#tcrypt-system">¶</a></dt><dd><p>Use TrueCrypt in system
+                                when using TrueCrypt encryption mode.</p></dd><dt id="tcrypt-system"><span class="term"><code class="option">tcrypt-system</code></span><a class="headerlink" title="Permalink to this term" href="#tcrypt-system">¶</a></dt><dd><p>Use TrueCrypt in system
                                 encryption mode. This option implies
-                                <code class="varname">tcrypt</code>.</p></dd><dt id="timeout="><span class="term"><code class="varname">timeout=</code></span><a class="headerlink" title="Permalink to this term" href="#timeout=">¶</a></dt><dd><p>Specifies the timeout for
+                                <code class="option">tcrypt</code>.</p></dd><dt id="timeout="><span class="term"><code class="option">timeout=</code></span><a class="headerlink" title="Permalink to this term" href="#timeout=">¶</a></dt><dd><p>Specifies the timeout for
                                 querying for a password. If no unit is
                                 specified, seconds is used. Supported units are
                                 s, ms, us, min, h, d. A timeout of 0 waits
-                                indefinitely (which is the default).</p></dd><dt id="tmp"><span class="term"><code class="varname">tmp</code></span><a class="headerlink" title="Permalink to this term" href="#tmp">¶</a></dt><dd><p>The encrypted block device will
+                                indefinitely (which is the default).</p></dd><dt id="tmp"><span class="term"><code class="option">tmp</code></span><a class="headerlink" title="Permalink to this term" href="#tmp">¶</a></dt><dd><p>The encrypted block device will
                                 be prepared for using it as <code class="filename">/tmp</code>;
                                 it will be formatted using
                                 <a href="mke2fs.html"><span class="citerefentry"><span class="refentrytitle">mke2fs</span>(8)</span></a>.
-                                This option implies <code class="varname">plain</code>.</p><p>WARNING: Using the <code class="varname">tmp</code>
+                                This option implies <code class="option">plain</code>.</p><p>WARNING: Using the <code class="option">tmp</code>
                                 option will destroy the contents of the named
                                 partition during every boot, so make sure the
-                                underlying block device is specified correctly.</p></dd><dt id="tries="><span class="term"><code class="varname">tries=</code></span><a class="headerlink" title="Permalink to this term" href="#tries=">¶</a></dt><dd><p>Specifies the maximum number of
+                                underlying block device is specified correctly.</p></dd><dt id="tries="><span class="term"><code class="option">tries=</code></span><a class="headerlink" title="Permalink to this term" href="#tries=">¶</a></dt><dd><p>Specifies the maximum number of
                                 times the user is queried for a password.
                                 The default is 3. If set to 0, the user is
-                                queried for a password indefinitely.</p></dd><dt id="verify"><span class="term"><code class="varname">verify</code></span><a class="headerlink" title="Permalink to this term" href="#verify">¶</a></dt><dd><p> If the encryption password is
+                                queried for a password indefinitely.</p></dd><dt id="verify"><span class="term"><code class="option">verify</code></span><a class="headerlink" title="Permalink to this term" href="#verify">¶</a></dt><dd><p> If the encryption password is
                                 read from console, it has to be entered twice to
                                 prevent typos.</p></dd></dl></div><p>At early boot and when the system manager
                 configuration is reloaded, this file is translated into
                 native systemd units
-                by <a href="systemd-cryptsetup-generator.html"><span class="citerefentry"><span class="refentrytitle">systemd-cryptsetup-generator</span>(8)</span></a>.</p></div><div class="refsect1"><a name="idm214194879488"></a><h2 id="Example">Example<a class="headerlink" title="Permalink to this headline" href="#Example">¶</a></h2><div class="example"><a name="idm214194878816"></a><p class="title"><b>Example 1. /etc/crypttab example</b></p><div class="example-contents"><p>Set up four encrypted block devices. One using
+                by <a href="systemd-cryptsetup-generator.html"><span class="citerefentry"><span class="refentrytitle">systemd-cryptsetup-generator</span>(8)</span></a>.</p></div><div class="refsect1"><a name="idm214174457600"></a><h2 id="Example">Example<a class="headerlink" title="Permalink to this headline" href="#Example">¶</a></h2><div class="example"><a name="idm214174456960"></a><p class="title"><b>Example 1. /etc/crypttab example</b></p><div class="example-contents"><p>Set up four encrypted block devices. One using
                         LUKS for normal storage, another one for usage as a swap
                         device and two TrueCrypt volumes.</p><pre class="programlisting">luks       UUID=2505567a-9e27-4efe-a4d5-15ad146c258b
 swap       /dev/sda7       /dev/urandom             swap
 truecrypt  /dev/sda2       /etc/container_password  tcrypt
-hidden     /mnt/tc_hidden  /null                    tcrypt-hidden,tcrypt-keyfile=/etc/keyfile</pre></div></div><br class="example-break"></div><div class="refsect1"><a name="idm214193239680"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+hidden     /mnt/tc_hidden  /dev/null                tcrypt-hidden,tcrypt-keyfile=/etc/keyfile</pre></div></div><br class="example-break"></div><div class="refsect1"><a name="idm214174454576"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
                         <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
                         <a href="systemd-cryptsetup@.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-cryptsetup@.service</span>(8)</span></a>,
                         <a href="systemd-cryptsetup-generator.html"><span class="citerefentry"><span class="refentrytitle">systemd-cryptsetup-generator</span>(8)</span></a>,
index 668e51dc0628ee25da1bcf5362111a7873e96ff2..9dbf1546b1b9c85b25ad6a8c0542c6b1da7f7543 100644 (file)
                 comma-delimited list of options.  The following
                 options are recognized:</para>
 
-                <variablelist class='crypttab-options'>
+                <variablelist class='fstab-options'>
 
                         <varlistentry>
-                                <term><varname>discard</varname></term>
+                                <term><option>discard</option></term>
 
                                 <listitem><para>Allow discard requests to be
                                 passed through the encrypted block device. This
                         </varlistentry>
 
                         <varlistentry>
-                                <term><varname>cipher=</varname></term>
+                                <term><option>cipher=</option></term>
 
                                 <listitem><para>Specifies the cipher to use. See
                                 <citerefentry><refentrytitle>cryptsetup</refentrytitle><manvolnum>8</manvolnum></citerefentry>
                         </varlistentry>
 
                         <varlistentry>
-                                <term><varname>hash=</varname></term>
+                                <term><option>hash=</option></term>
 
                                 <listitem><para>Specifies the hash to use for
                                 password hashing. See
                         </varlistentry>
 
                         <varlistentry>
-                                <term><varname>keyfile-offset=</varname></term>
+                                <term><option>keyfile-offset=</option></term>
 
                                 <listitem><para>Specifies the number of bytes to
                                 skip at the start of the key file. See
                         </varlistentry>
 
                         <varlistentry>
-                                <term><varname>keyfile-size=</varname></term>
+                                <term><option>keyfile-size=</option></term>
 
                                 <listitem><para>Specifies the maximum number
                                 of bytes to read from the key file. See
                         </varlistentry>
 
                         <varlistentry>
-                                <term><varname>key-slot=</varname></term>
+                                <term><option>key-slot=</option></term>
 
                                 <listitem><para>Specifies the key slot to
                                 compare the passphrase or key against.
                                 If the key slot does not match the given
                                 passphrase or key, but another would, the
                                 setup of the device will fail regardless.
-                                This option implies <varname>luks</varname>. See
+                                This option implies <option>luks</option>. See
                                 <citerefentry><refentrytitle>cryptsetup</refentrytitle><manvolnum>8</manvolnum></citerefentry>
                                 for possible values. The default is to try
                                 all key slots in sequential order.</para></listitem>
                         </varlistentry>
 
                         <varlistentry>
-                                <term><varname>luks</varname></term>
+                                <term><option>luks</option></term>
 
                                 <listitem><para>Force LUKS mode. When this mode
                                 is used, the following options are ignored since
                                 they are provided by the LUKS header on the
-                                device: <varname>cipher=</varname>,
-                                <varname>hash=</varname>,
-                                <varname>size=</varname>.</para></listitem>
+                                device: <option>cipher=</option>,
+                                <option>hash=</option>,
+                                <option>size=</option>.</para></listitem>
                         </varlistentry>
 
                         <varlistentry>
-                                <term><varname>noauto</varname></term>
+                                <term><option>noauto</option></term>
 
                                 <listitem><para>This device will not be
                                 automatically unlocked on boot.</para></listitem>
                         </varlistentry>
 
                         <varlistentry>
-                                <term><varname>nofail</varname></term>
+                                <term><option>nofail</option></term>
 
                                 <listitem><para>The system will not wait for the
                                 device to show up and be unlocked at boot, and
                         </varlistentry>
 
                         <varlistentry>
-                                <term><varname>plain</varname></term>
+                                <term><option>plain</option></term>
 
                                 <listitem><para>Force plain encryption mode.</para></listitem>
                         </varlistentry>
 
                         <varlistentry>
-                                <term><varname>read-only</varname></term><term><varname>readonly</varname></term>
+                                <term><option>read-only</option></term><term><option>readonly</option></term>
 
                                 <listitem><para>Set up the encrypted block
                                 device in read-only mode.</para></listitem>
                         </varlistentry>
 
                         <varlistentry>
-                                <term><varname>size=</varname></term>
+                                <term><option>size=</option></term>
 
                                 <listitem><para>Specifies the key size
                                 in bits. See
                         </varlistentry>
 
                         <varlistentry>
-                                <term><varname>swap</varname></term>
+                                <term><option>swap</option></term>
 
                                 <listitem><para>The encrypted block device will
                                 be used as a swap device, and will be formatted
                                 accordingly after setting up the encrypted
                                 block device, with
                                 <citerefentry><refentrytitle>mkswap</refentrytitle><manvolnum>8</manvolnum></citerefentry>.
-                                This option implies <varname>plain</varname>.</para>
+                                This option implies <option>plain</option>.</para>
 
-                                <para>WARNING: Using the <varname>swap</varname>
+                                <para>WARNING: Using the <option>swap</option>
                                 option will destroy the contents of the named
                                 partition during every boot, so make sure the
                                 underlying block device is specified correctly.</para></listitem>
                         </varlistentry>
 
                         <varlistentry>
-                                <term><varname>tcrypt</varname></term>
+                                <term><option>tcrypt</option></term>
 
                                 <listitem><para>Use TrueCrypt encryption mode.
                                 When this mode is used, the following options are
                                 ignored since they are provided by the TrueCrypt
                                 header on the device or do not apply:
-                                <varname>cipher=</varname>,
-                                <varname>hash=</varname>,
-                                <varname>keyfile-offset=</varname>,
-                                <varname>keyfile-size=</varname>,
-                                <varname>size=</varname>.</para>
+                                <option>cipher=</option>,
+                                <option>hash=</option>,
+                                <option>keyfile-offset=</option>,
+                                <option>keyfile-size=</option>,
+                                <option>size=</option>.</para>
 
                                 <para>When this mode is used, the passphrase is
                                 read from the key file given in the third field.
                                 passphrase and key files to derive a password
                                 for the volume. Therefore, the passphrase and
                                 all key files need to be provided. Use
-                                <varname>tcrypt-keyfile=</varname> to provide
+                                <option>tcrypt-keyfile=</option> to provide
                                 the absolute path to all key files. When using
                                 an empty passphrase in combination with one or
                                 more key files, use <literal>/dev/null</literal>
                         </varlistentry>
 
                         <varlistentry>
-                                <term><varname>tcrypt-hidden</varname></term>
+                                <term><option>tcrypt-hidden</option></term>
 
                                 <listitem><para>Use the hidden TrueCrypt volume.
-                                This option implies <varname>tcrypt</varname>.</para>
+                                This option implies <option>tcrypt</option>.</para>
 
                                 <para>This will map the hidden volume that is
                                 inside of the volume provided in the second
                         </varlistentry>
 
                         <varlistentry>
-                                <term><varname>tcrypt-keyfile=</varname></term>
+                                <term><option>tcrypt-keyfile=</option></term>
 
                                 <listitem><para>Specifies the absolute path to a
                                 key file to use for a TrueCrypt volume. This
-                                implies <varname>tcrypt</varname> and can be
+                                implies <option>tcrypt</option> and can be
                                 used more than once to provide several key
                                 files.</para>
 
-                                <para>See the entry for <varname>tcrypt</varname>
+                                <para>See the entry for <option>tcrypt</option>
                                 on the behavior of the passphrase and key files
                                 when using TrueCrypt encryption mode.</para></listitem>
                         </varlistentry>
 
                         <varlistentry>
-                                <term><varname>tcrypt-system</varname></term>
+                                <term><option>tcrypt-system</option></term>
 
                                 <listitem><para>Use TrueCrypt in system
                                 encryption mode. This option implies
-                                <varname>tcrypt</varname>.</para></listitem>
+                                <option>tcrypt</option>.</para></listitem>
                         </varlistentry>
 
                         <varlistentry>
-                                <term><varname>timeout=</varname></term>
+                                <term><option>timeout=</option></term>
 
                                 <listitem><para>Specifies the timeout for
                                 querying for a password. If no unit is
                         </varlistentry>
 
                         <varlistentry>
-                                <term><varname>tmp</varname></term>
+                                <term><option>tmp</option></term>
 
                                 <listitem><para>The encrypted block device will
                                 be prepared for using it as <filename>/tmp</filename>;
                                 it will be formatted using
                                 <citerefentry><refentrytitle>mke2fs</refentrytitle><manvolnum>8</manvolnum></citerefentry>.
-                                This option implies <varname>plain</varname>.</para>
+                                This option implies <option>plain</option>.</para>
 
-                                <para>WARNING: Using the <varname>tmp</varname>
+                                <para>WARNING: Using the <option>tmp</option>
                                 option will destroy the contents of the named
                                 partition during every boot, so make sure the
                                 underlying block device is specified correctly.</para></listitem>
                         </varlistentry>
 
                         <varlistentry>
-                                <term><varname>tries=</varname></term>
+                                <term><option>tries=</option></term>
 
                                 <listitem><para>Specifies the maximum number of
                                 times the user is queried for a password.
                         </varlistentry>
 
                         <varlistentry>
-                                <term><varname>verify</varname></term>
+                                <term><option>verify</option></term>
 
                                 <listitem><para> If the encryption password is
                                 read from console, it has to be entered twice to
                         <programlisting>luks       UUID=2505567a-9e27-4efe-a4d5-15ad146c258b
 swap       /dev/sda7       /dev/urandom             swap
 truecrypt  /dev/sda2       /etc/container_password  tcrypt
-hidden     /mnt/tc_hidden  /null                    tcrypt-hidden,tcrypt-keyfile=/etc/keyfile</programlisting>
+hidden     /mnt/tc_hidden  /dev/null                tcrypt-hidden,tcrypt-keyfile=/etc/keyfile</programlisting>
                 </example>
         </refsect1>
 
index 0bdcb19195b925cd0faf052d67c0102834e87064..91ec24700e92cf589848f2b904bcef041ce8a1dc 100644 (file)
@@ -1,5 +1,5 @@
 '\" t
-.TH "DAEMON" "7" "" "systemd 214" "daemon"
+.TH "DAEMON" "7" "" "systemd 215" "daemon"
 .\" -----------------------------------------------------------------
 .\" * Define some portability stuff
 .\" -----------------------------------------------------------------
@@ -362,10 +362,7 @@ Instead of using the
 call to log directly to the system syslog service, a new\-style daemon may choose to simply log to standard error via
 \fBfprintf()\fR, which is then forwarded to syslog by the init system\&. If log priorities are necessary, these can be encoded by prefixing individual log lines with strings like "<4>" (for log priority 4 "WARNING" in the syslog priority scheme), following a similar style as the Linux kernel\*(Aqs
 \fBprintk()\fR
-priority system\&. In fact, using this style of logging also enables the init system to optionally direct all application logging to the kernel log buffer (kmsg), as accessible via
-\fBdmesg\fR(1)\&. This kind of logging may be enabled by setting
-\fIStandardError=syslog\fR
-in the service unit file\&. For details, see
+priority system\&. For details, see
 \fBsd-daemon\fR(3)
 and
 \fBsystemd.exec\fR(5)\&.
@@ -783,6 +780,10 @@ Write and install a systemd unit file for the service (and the sockets if socket
 .\}
 If the daemon exposes interfaces via D\-Bus, write and install a D\-Bus activation file for the service, see above for details\&.
 .RE
+.SH "PLACING DAEMON DATA"
+.PP
+It is recommended to follow the general guidelines for placing package files, as discussed in
+\fBfile-hierarchy\fR(7)\&.
 .SH "SEE ALSO"
 .PP
 \fBsystemd\fR(1),
@@ -790,7 +791,8 @@ If the daemon exposes interfaces via D\-Bus, write and install a D\-Bus activati
 \fBsd_listen_fds\fR(3),
 \fBsd_notify\fR(3),
 \fBdaemon\fR(3),
-\fBsystemd.service\fR(5)
+\fBsystemd.service\fR(5),
+\fBfile-hierarchy\fR(7)
 .SH "NOTES"
 .IP " 1." 4
 LSB recommendations for SysV init scripts
index e17fdb59721fe8d84e2b1130f50188fba5795666..07e1ec50dc65c5f1d7afa0fe9aff3fb81b3bcba3 100644 (file)
@@ -19,7 +19,7 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="daemon"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>daemon — Writing and packaging system daemons</p></div><div class="refsect1"><a name="idm214176733072"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p>A daemon is a service process that runs in the
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="daemon"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>daemon — Writing and packaging system daemons</p></div><div class="refsect1"><a name="idm214179512176"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p>A daemon is a service process that runs in the
                 background and supervises the system or provides
                 functionality to other processes. Traditionally,
                 daemons are implemented following a scheme originating
@@ -29,7 +29,7 @@
                 <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>. This
                 manual page covers both schemes, and in
                 particular includes recommendations for daemons that
-                shall be included in the systemd init system.</p><div class="refsect2"><a name="idm214172947136"></a><h3 id="SysV Daemons">SysV Daemons<a class="headerlink" title="Permalink to this headline" href="#SysV%20Daemons">¶</a></h3><p>When a traditional SysV daemon
+                shall be included in the systemd init system.</p><div class="refsect2"><a name="idm214177063248"></a><h3 id="SysV Daemons">SysV Daemons<a class="headerlink" title="Permalink to this headline" href="#SysV%20Daemons">¶</a></h3><p>When a traditional SysV daemon
                         starts, it should execute the following steps
                         as part of the initialization. Note that these
                         steps are unnecessary for new-style daemons (see below),
                         behavior optional and configurable via a
                         command line argument to ease debugging as
                         well as to simplify integration into systems
-                        using systemd.</p></div><div class="refsect2"><a name="idm214176819824"></a><h3 id="New-Style Daemons">New-Style Daemons<a class="headerlink" title="Permalink to this headline" href="#New-Style%20Daemons">¶</a></h3><p>Modern services for Linux should be
+                        using systemd.</p></div><div class="refsect2"><a name="idm214175728384"></a><h3 id="New-Style Daemons">New-Style Daemons<a class="headerlink" title="Permalink to this headline" href="#New-Style%20Daemons">¶</a></h3><p>Modern services for Linux should be
                         implemented as new-style daemons. This makes it
                         easier to supervise and control them at
                         runtime and simplifies their
                                 via the
                                 <a href="sd_notify.html"><span class="citerefentry"><span class="refentrytitle">sd_notify</span>(3)</span></a>
                                 interface.</p></li><li class="listitem"><p>Instead of using the
-                                <code class="function">syslog()</code> call to log directly to the
-                                system syslog service, a new-style daemon may
-                                choose to simply log to standard error via
-                                <code class="function">fprintf()</code>, which is then forwarded to
-                                syslog by the init system. If log
-                                priorities are necessary, these can be
-                                encoded by prefixing individual log
-                                lines with strings like "&lt;4&gt;"
-                                (for log priority 4 "WARNING" in the
-                                syslog priority scheme), following a
-                                similar style as the Linux kernel's
-                                <code class="function">printk()</code> priority system. In fact,
-                                using this style of logging also
-                                enables the init system to optionally
-                                direct all application logging to the
-                                kernel log buffer (kmsg), as
-                                accessible via
-                                <a href="dmesg.html"><span class="citerefentry"><span class="refentrytitle">dmesg</span>(1)</span></a>. This
-                                kind of logging may be enabled by
-                                setting
-                                <code class="varname">StandardError=syslog</code>
-                                in the service unit file. For details,
-                                see
+                                <code class="function">syslog()</code> call to
+                                log directly to the system syslog
+                                service, a new-style daemon may choose
+                                to simply log to standard error via
+                                <code class="function">fprintf()</code>, which
+                                is then forwarded to syslog by the
+                                init system. If log priorities are
+                                necessary, these can be encoded by
+                                prefixing individual log lines with
+                                strings like "&lt;4&gt;" (for log
+                                priority 4 "WARNING" in the syslog
+                                priority scheme), following a similar
+                                style as the Linux kernel's
+                                <code class="function">printk()</code> priority
+                                system. For details, see
                                 <a href="sd-daemon.html"><span class="citerefentry"><span class="refentrytitle">sd-daemon</span>(3)</span></a>
                                 and
                                 <a href="systemd.exec.html"><span class="citerefentry"><span class="refentrytitle">systemd.exec</span>(5)</span></a>.</p></li></ol></div><p>These recommendations are similar but
                         not identical to the <a class="ulink" href="https://developer.apple.com/library/mac/documentation/MacOSX/Conceptual/BPSystemStartup/Chapters/CreatingLaunchdJobs.html" target="_top">Apple
-                        MacOS X Daemon Requirements</a>.</p></div></div><div class="refsect1"><a name="idm214171871376"></a><h2 id="Activation">Activation<a class="headerlink" title="Permalink to this headline" href="#Activation">¶</a></h2><p>New-style init systems provide multiple
+                        MacOS X Daemon Requirements</a>.</p></div></div><div class="refsect1"><a name="idm214178358368"></a><h2 id="Activation">Activation<a class="headerlink" title="Permalink to this headline" href="#Activation">¶</a></h2><p>New-style init systems provide multiple
                 additional mechanisms to activate services, as
                 detailed below. It is common that services are
                 configured to be activated via more than one mechanism
                 request is lost because client requests will be queued
                 by the bus system (in case of D-Bus) or the kernel (in
                 case of sockets) until the activation is
-                completed.</p><div class="refsect2"><a name="idm214171868144"></a><h3 id="Activation on Boot">Activation on Boot<a class="headerlink" title="Permalink to this headline" href="#Activation%20on%20Boot">¶</a></h3><p>Old-style daemons are usually activated
+                completed.</p><div class="refsect2"><a name="idm214177474608"></a><h3 id="Activation on Boot">Activation on Boot<a class="headerlink" title="Permalink to this headline" href="#Activation%20on%20Boot">¶</a></h3><p>Old-style daemons are usually activated
                         exclusively on boot (and manually by the
                         administrator) via SysV init scripts, as
                         detailed in the <a class="ulink" href="http://refspecs.linuxbase.org/LSB_3.1.1/LSB-Core-generic/LSB-Core-generic/iniscrptact.html" target="_top">LSB
                         for details about the
                         <code class="filename">.wants/</code> directories, and
                         <a href="systemd.special.html"><span class="citerefentry"><span class="refentrytitle">systemd.special</span>(7)</span></a>
-                        for details about the two boot targets.</p></div><div class="refsect2"><a name="idm214171860432"></a><h3 id="Socket-Based Activation">Socket-Based Activation<a class="headerlink" title="Permalink to this headline" href="#Socket-Based%20Activation">¶</a></h3><p>In order to maximize the possible
+                        for details about the two boot targets.</p></div><div class="refsect2"><a name="idm214175963792"></a><h3 id="Socket-Based Activation">Socket-Based Activation<a class="headerlink" title="Permalink to this headline" href="#Socket-Based%20Activation">¶</a></h3><p>In order to maximize the possible
                         parallelization and robustness and simplify
                         configuration and development, it is
                         recommended for all new-style daemons that
                         example from
                         <code class="filename">multi-user.target</code> or
                         suchlike) when one is installed in
-                        <code class="filename">sockets.target</code>.</p></div><div class="refsect2"><a name="idm214171846960"></a><h3 id="Bus-Based Activation">Bus-Based Activation<a class="headerlink" title="Permalink to this headline" href="#Bus-Based%20Activation">¶</a></h3><p>When the D-Bus IPC system is used for
+                        <code class="filename">sockets.target</code>.</p></div><div class="refsect2"><a name="idm214176756752"></a><h3 id="Bus-Based Activation">Bus-Based Activation<a class="headerlink" title="Permalink to this headline" href="#Bus-Based%20Activation">¶</a></h3><p>When the D-Bus IPC system is used for
                         communication with clients, new-style daemons
                         should employ bus activation so that they are
                         automatically activated when a client
                         <code class="filename">rtkit-daemon.service</code>. This
                         is needed to make sure that the daemon is
                         started in a race-free fashion when activated
-                        via multiple mechanisms simultaneously.</p></div><div class="refsect2"><a name="idm214171842480"></a><h3 id="Device-Based Activation">Device-Based Activation<a class="headerlink" title="Permalink to this headline" href="#Device-Based%20Activation">¶</a></h3><p>Often, daemons that manage a particular
+                        via multiple mechanisms simultaneously.</p></div><div class="refsect2"><a name="idm214178044384"></a><h3 id="Device-Based Activation">Device-Based Activation<a class="headerlink" title="Permalink to this headline" href="#Device-Based%20Activation">¶</a></h3><p>Often, daemons that manage a particular
                         type of hardware should be activated only when
                         the hardware of the respective kind is plugged
                         in or otherwise becomes available. In a
                         <span class="command"><strong>enable</strong></span> of
                         <a href="systemctl.html"><span class="citerefentry"><span class="refentrytitle">systemctl</span>(1)</span></a>
                         instead of manipulating the udev
-                        ruleset.</p></div><div class="refsect2"><a name="idm214176892432"></a><h3 id="Path-Based Activation">Path-Based Activation<a class="headerlink" title="Permalink to this headline" href="#Path-Based%20Activation">¶</a></h3><p>Often, runtime of daemons processing
+                        ruleset.</p></div><div class="refsect2"><a name="idm214178026080"></a><h3 id="Path-Based Activation">Path-Based Activation<a class="headerlink" title="Permalink to this headline" href="#Path-Based%20Activation">¶</a></h3><p>Often, runtime of daemons processing
                         spool files or directories (such as a printing
                         system) can be delayed until these file system
                         objects change state, or become
                         path-based activation configured in
                         <code class="filename">.path</code> units, as outlined
                         in
-                        <a href="systemd.path.html"><span class="citerefentry"><span class="refentrytitle">systemd.path</span>(5)</span></a>.</p></div><div class="refsect2"><a name="idm214171821840"></a><h3 id="Timer-Based Activation">Timer-Based Activation<a class="headerlink" title="Permalink to this headline" href="#Timer-Based%20Activation">¶</a></h3><p>Some daemons that implement clean-up
+                        <a href="systemd.path.html"><span class="citerefentry"><span class="refentrytitle">systemd.path</span>(5)</span></a>.</p></div><div class="refsect2"><a name="idm214176776224"></a><h3 id="Timer-Based Activation">Timer-Based Activation<a class="headerlink" title="Permalink to this headline" href="#Timer-Based%20Activation">¶</a></h3><p>Some daemons that implement clean-up
                         jobs that are intended to be executed in
                         regular intervals benefit from timer-based
                         activation. In systemd, this is implemented
                         via <code class="filename">.timer</code> units, as
                         described in
-                        <a href="systemd.timer.html"><span class="citerefentry"><span class="refentrytitle">systemd.timer</span>(5)</span></a>.</p></div><div class="refsect2"><a name="idm214171818912"></a><h3 id="Other Forms of Activation">Other Forms of Activation<a class="headerlink" title="Permalink to this headline" href="#Other%20Forms%20of%20Activation">¶</a></h3><p>Other forms of activation have been
+                        <a href="systemd.timer.html"><span class="citerefentry"><span class="refentrytitle">systemd.timer</span>(5)</span></a>.</p></div><div class="refsect2"><a name="idm214176252752"></a><h3 id="Other Forms of Activation">Other Forms of Activation<a class="headerlink" title="Permalink to this headline" href="#Other%20Forms%20of%20Activation">¶</a></h3><p>Other forms of activation have been
                         suggested and implemented in some
                         systems. However, there are often simpler or
                         better alternatives, or they can be put
                         activation to schedule background jobs during
                         runtime and with minimal impact on the system,
                         and remove it from the boot phase
-                        itself.</p></div></div><div class="refsect1"><a name="idm214171812272"></a><h2 id="Integration with Systemd">Integration with Systemd<a class="headerlink" title="Permalink to this headline" href="#Integration%20with%20Systemd">¶</a></h2><div class="refsect2"><a name="idm214171811632"></a><h3 id="Writing Systemd Unit Files">Writing Systemd Unit Files<a class="headerlink" title="Permalink to this headline" href="#Writing%20Systemd%20Unit%20Files">¶</a></h3><p>When writing systemd unit files, it is
+                        itself.</p></div></div><div class="refsect1"><a name="idm214176372608"></a><h2 id="Integration with Systemd">Integration with Systemd<a class="headerlink" title="Permalink to this headline" href="#Integration%20with%20Systemd">¶</a></h2><div class="refsect2"><a name="idm214178809840"></a><h3 id="Writing Systemd Unit Files">Writing Systemd Unit Files<a class="headerlink" title="Permalink to this headline" href="#Writing%20Systemd%20Unit%20Files">¶</a></h3><p>When writing systemd unit files, it is
                         recommended to consider the following
                         suggestions:</p><div class="orderedlist"><ol class="orderedlist" type="1"><li class="listitem"><p>If possible, do not use
                                 the <code class="varname">Type=forking</code>
                                 your service file
                                 <code class="filename">foo.service</code>, for
                                 a hypothetical program
-                                <code class="filename">foo</code>.</p></li></ol></div></div><div class="refsect2"><a name="idm214171796080"></a><h3 id="Installing Systemd Service Files">Installing Systemd Service Files<a class="headerlink" title="Permalink to this headline" href="#Installing%20Systemd%20Service%20Files">¶</a></h3><p>At the build installation time
+                                <code class="filename">foo</code>.</p></li></ol></div></div><div class="refsect2"><a name="idm214177358624"></a><h3 id="Installing Systemd Service Files">Installing Systemd Service Files<a class="headerlink" title="Permalink to this headline" href="#Installing%20Systemd%20Service%20Files">¶</a></h3><p>At the build installation time
                         (e.g. <span class="command"><strong>make install</strong></span> during
                         package build), packages are recommended to
                         install their systemd unit files in the
@@ -639,7 +631,7 @@ fi</pre><p>Where 0.47.11-1 is the first package
                         specific to Fedora which can be used to check
                         whether a SysV init script is enabled. Other
                         operating systems will have to use different
-                        commands here.</p></div></div><div class="refsect1"><a name="idm214171768368"></a><h2 id="Porting Existing Daemons">Porting Existing Daemons<a class="headerlink" title="Permalink to this headline" href="#Porting%20Existing%20Daemons">¶</a></h2><p>Since new-style init systems such as systemd are
+                        commands here.</p></div></div><div class="refsect1"><a name="idm214178311488"></a><h2 id="Porting Existing Daemons">Porting Existing Daemons<a class="headerlink" title="Permalink to this headline" href="#Porting%20Existing%20Daemons">¶</a></h2><p>Since new-style init systems such as systemd are
                 compatible with traditional SysV init systems, it is
                 not strictly necessary to port existing daemons to the
                 new style. However, doing so offers additional
@@ -684,11 +676,14 @@ fi</pre><p>Where 0.47.11-1 is the first package
                         details.</p></li><li class="listitem"><p>If the daemon exposes
                         interfaces via D-Bus, write and install a
                         D-Bus activation file for the service, see
-                        above for details.</p></li></ol></div></div><div class="refsect1"><a name="idm214171757872"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+                        above for details.</p></li></ol></div></div><div class="refsect1"><a name="idm214180581568"></a><h2 id="Placing Daemon Data">Placing Daemon Data<a class="headerlink" title="Permalink to this headline" href="#Placing%20Daemon%20Data">¶</a></h2><p>It is recommended to follow the general
+                guidelines for placing package files, as discussed in
+                <a href="file-hierarchy.html"><span class="citerefentry"><span class="refentrytitle">file-hierarchy</span>(7)</span></a>.</p></div><div class="refsect1"><a name="idm214180579440"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
                         <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
                         <a href="sd-daemon.html"><span class="citerefentry"><span class="refentrytitle">sd-daemon</span>(3)</span></a>,
                         <a href="sd_listen_fds.html"><span class="citerefentry"><span class="refentrytitle">sd_listen_fds</span>(3)</span></a>,
                         <a href="sd_notify.html"><span class="citerefentry"><span class="refentrytitle">sd_notify</span>(3)</span></a>,
                         <a href="daemon.html"><span class="citerefentry"><span class="refentrytitle">daemon</span>(3)</span></a>,
-                        <a href="systemd.service.html"><span class="citerefentry"><span class="refentrytitle">systemd.service</span>(5)</span></a>
+                        <a href="systemd.service.html"><span class="citerefentry"><span class="refentrytitle">systemd.service</span>(5)</span></a>,
+                        <a href="file-hierarchy.html"><span class="citerefentry"><span class="refentrytitle">file-hierarchy</span>(7)</span></a>
                 </p></div></div></body></html>
index 0085ad34faa51e1df2e6cb3e50502b1d6a9612d9..ddd5cf29247f4712af99a5df430f69309a09acff 100644 (file)
                                 interface.</para></listitem>
 
                                 <listitem><para>Instead of using the
-                                <function>syslog()</function> call to log directly to the
-                                system syslog service, a new-style daemon may
-                                choose to simply log to standard error via
-                                <function>fprintf()</function>, which is then forwarded to
-                                syslog by the init system. If log
-                                priorities are necessary, these can be
-                                encoded by prefixing individual log
-                                lines with strings like "&lt;4&gt;"
-                                (for log priority 4 "WARNING" in the
-                                syslog priority scheme), following a
-                                similar style as the Linux kernel's
-                                <function>printk()</function> priority system. In fact,
-                                using this style of logging also
-                                enables the init system to optionally
-                                direct all application logging to the
-                                kernel log buffer (kmsg), as
-                                accessible via
-                                <citerefentry><refentrytitle>dmesg</refentrytitle><manvolnum>1</manvolnum></citerefentry>. This
-                                kind of logging may be enabled by
-                                setting
-                                <varname>StandardError=syslog</varname>
-                                in the service unit file. For details,
-                                see
+                                <function>syslog()</function> call to
+                                log directly to the system syslog
+                                service, a new-style daemon may choose
+                                to simply log to standard error via
+                                <function>fprintf()</function>, which
+                                is then forwarded to syslog by the
+                                init system. If log priorities are
+                                necessary, these can be encoded by
+                                prefixing individual log lines with
+                                strings like "&lt;4&gt;" (for log
+                                priority 4 "WARNING" in the syslog
+                                priority scheme), following a similar
+                                style as the Linux kernel's
+                                <function>printk()</function> priority
+                                system. For details, see
                                 <citerefentry><refentrytitle>sd-daemon</refentrytitle><manvolnum>3</manvolnum></citerefentry>
                                 and
                                 <citerefentry><refentrytitle>systemd.exec</refentrytitle><manvolnum>5</manvolnum></citerefentry>.</para></listitem>
@@ -940,6 +932,14 @@ fi</programlisting>
                 </orderedlist>
         </refsect1>
 
+        <refsect1>
+                <title>Placing Daemon Data</title>
+
+                <para>It is recommended to follow the general
+                guidelines for placing package files, as discussed in
+                <citerefentry><refentrytitle>file-hierarchy</refentrytitle><manvolnum>7</manvolnum></citerefentry>.</para>
+        </refsect1>
+
         <refsect1>
                 <title>See Also</title>
                 <para>
@@ -948,7 +948,8 @@ fi</programlisting>
                         <citerefentry><refentrytitle>sd_listen_fds</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
                         <citerefentry><refentrytitle>sd_notify</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
                         <citerefentry><refentrytitle>daemon</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
-                        <citerefentry><refentrytitle>systemd.service</refentrytitle><manvolnum>5</manvolnum></citerefentry>
+                        <citerefentry><refentrytitle>systemd.service</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
+                        <citerefentry><refentrytitle>file-hierarchy</refentrytitle><manvolnum>7</manvolnum></citerefentry>
                 </para>
         </refsect1>
 
diff --git a/man/file-hierarchy.7 b/man/file-hierarchy.7
new file mode 100644 (file)
index 0000000..f97c8e5
--- /dev/null
@@ -0,0 +1,637 @@
+'\" t
+.TH "FILE\-HIERARCHY" "7" "" "systemd 215" "file-hierarchy"
+.\" -----------------------------------------------------------------
+.\" * Define some portability stuff
+.\" -----------------------------------------------------------------
+.\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+.\" http://bugs.debian.org/507673
+.\" http://lists.gnu.org/archive/html/groff/2009-02/msg00013.html
+.\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+.ie \n(.g .ds Aq \(aq
+.el       .ds Aq '
+.\" -----------------------------------------------------------------
+.\" * set default formatting
+.\" -----------------------------------------------------------------
+.\" disable hyphenation
+.nh
+.\" disable justification (adjust text to left margin only)
+.ad l
+.\" -----------------------------------------------------------------
+.\" * MAIN CONTENT STARTS HERE *
+.\" -----------------------------------------------------------------
+.SH "NAME"
+file-hierarchy \- File system hierarchy overview
+.SH "DESCRIPTION"
+.PP
+Operating systems using the
+\fBsystemd\fR(1)
+system and service manager are organized based on a file system hierarchy inspired by UNIX, more specifically the hierarchy described in the
+\m[blue]\fBFile System Hierarchy\fR\m[]\&\s-2\u[1]\d\s+2
+specification and
+\fBhier\fR(7)\&. This manual page describes a more minimal, modernized subset of these specifications that defines more strictly the suggestions and restrictions systemd makes on the file system hierarchy\&.
+.PP
+Many of the paths described here are queriable with the
+\fBsystemd-path\fR(1)
+tool\&.
+.SH "GENERAL STRUCTURE"
+.PP
+/
+.RS 4
+The file system root\&. Usually writable, but this is not required\&. Possibly a temporary file system ("tmpfs")\&. Not shared with other hosts (unless read\-only)\&.
+.RE
+.PP
+/boot
+.RS 4
+The boot partition used for bringing up the system\&. On EFI systems this is possibly the EFI System Partition, also see
+\fBsystemd-efi-boot-generator\fR(8)\&. This directory is usually strictly local to the host, and should be considered read\-only, except when a new kernel or boot loader is installed\&. This directory only exists on systems that run on physical or emulated hardware that requires boot loaders\&.
+.RE
+.PP
+/etc
+.RS 4
+System\-specific configuration\&. This directory may or may not be read\-only\&. Frequently, this directory is pre\-populated with vendor\-supplied configuration files, but applications should not make assumptions about this directory being fully populated or populated at all, and should fall back to defaults if configuration is missing\&.
+.RE
+.PP
+/home
+.RS 4
+The location for normal user\*(Aqs home directories\&. Possibly shared with other systems, and never read\-only\&. This directory should only be used for normal users, never for system users\&. This directory and possibly the directories contained within it might only become available or writable in late boot or even only after user authentication\&. This directory might be placed on limited\-functionality network file systems, hence applications should not assume the full set of file API is available on this directory\&. Applications should generally not reference this directory directly, but via the per\-user
+\fI$HOME\fR
+environment variable, or via the home directory field of the user database\&.
+.RE
+.PP
+/root
+.RS 4
+The home directory of the root user\&. The root user\*(Aqs home directory is located outside of
+/home
+in order to make sure the root user may log in even without
+/home
+being available and mounted\&.
+.RE
+.PP
+/srv
+.RS 4
+The place to store general server payload, managed by the administrator\&. No restrictions are made how this directory is organized internally\&. Generally writable, and possibly shared among systems\&. This directory might become available or writable only very late during boot\&.
+.RE
+.PP
+/tmp
+.RS 4
+The place for small temporary files\&. This directory is usually mounted as a
+"tmpfs"
+instance, and should hence not be used for larger files\&. (Use
+/var/tmp
+for larger files\&.) Since the directory is accessible to other users of the system it is essential that this directory is only written to with the
+\fBmkstemp\fR(3),
+\fBmkdtemp\fR(3)
+and related calls\&. This directory is usually flushed at boot\-up\&. Also, files that are not accessed within a certain time are usually automatically deleted\&. If applications find the environment variable
+\fI$TMPDIR\fR
+set they should prefer using the directory specified in it over directly referencing
+/tmp
+(see
+\fBenviron\fR(7)
+for details)\&.
+.RE
+.SH "RUNTIME DATA"
+.PP
+/run
+.RS 4
+A
+"tmpfs"
+file system for system packages to place runtime data in\&. This directory is flushed on boot, and generally writable for privileged programs only\&. Always writable\&.
+.RE
+.PP
+/run/log
+.RS 4
+Runtime system logs\&. System components may place private logs in this directory\&. Always writable, even when
+/var/log
+might not be accessible yet\&.
+.RE
+.PP
+/run/user
+.RS 4
+Contains per\-user runtime directories, each usually individually mounted
+"tmpfs"
+instances\&. Always writable, flushed at each reboot and when the user logs out\&. User code should not reference this directory directly, but via the
+\fI$XDG_RUNTIME_DIR\fR
+environment variable, as documented in the
+\m[blue]\fBXDG Base Directory Specification\fR\m[]\&\s-2\u[2]\d\s+2\&.
+.RE
+.SH "VENDOR-SUPPLIED OPERATING SYSTEM RESOURCES"
+.PP
+/usr
+.RS 4
+Vendor\-supplied operating system resources\&. Usually read\-only, but this is not required\&. Possibly shared between multiple hosts\&. This directory should not be modified by the administrator, except when installing or removing vendor\-supplied packages\&.
+.RE
+.PP
+/usr/bin
+.RS 4
+Binaries and executables for user commands, that shall appear in the
+\fI$PATH\fR
+search path\&. It is recommended not to place binaries in this directory that are not useful for invocation from a shell (such as daemon binaries); these should be placed in a subdirectory of
+/usr/lib
+instead\&.
+.RE
+.PP
+/usr/include
+.RS 4
+C and C++ API header files of system libraries\&.
+.RE
+.PP
+/usr/lib
+.RS 4
+Static, private vendor data that is compatible with all architectures (though not necessarily architecture\-independent)\&. Note that this includes internal executables or other binaries that are not regularly invoked from a shell\&. Such binaries may be for any architecture supported by the system\&. Do not place public libraries in this directory, use
+\fI$libdir\fR
+(see below), instead\&.
+.RE
+.PP
+/usr/lib/\fIarch\-id\fR
+.RS 4
+Location for placing dynamic libraries, also called
+\fI$libdir\fR\&. The architecture identifier to use is defined on
+\m[blue]\fBMultiarch Architecture Specifiers (Tuples)\fR\m[]\&\s-2\u[3]\d\s+2
+list\&. Legacy locations of
+\fI$libdir\fR
+are
+/usr/lib,
+/usr/lib64\&. This directory should not be used for package\-specific data, unless this data is architecture\-dependent, too\&. To query
+\fI$libdir\fR
+for the primary architecture of the system, invoke:
+.sp
+.if n \{\
+.RS 4
+.\}
+.nf
+# pkg\-config \-\-variable=libdir systemd
+.fi
+.if n \{\
+.RE
+.\}
+.sp
+or
+.sp
+.if n \{\
+.RS 4
+.\}
+.nf
+# systemd\-path system\-library\-arch
+.fi
+.if n \{\
+.RE
+.\}
+.sp
+.RE
+.PP
+/usr/share
+.RS 4
+Resources shared between multiple packages, such as documentation, man pages, time zone information, fonts and other resources\&. Usually, the precise location and format of files stored below this directory is subject to specifications that ensure interoperability\&.
+.RE
+.PP
+/usr/share/doc
+.RS 4
+Documentation for the operating system or system packages\&.
+.RE
+.PP
+/usr/share/factory/etc
+.RS 4
+Repository for vendor\-supplied default configuration files\&. This directory should be populated with pristine vendor versions of all configuration files that may be placed in
+/etc\&. This is useful to compare the local configuration of a system with vendor defaults and to populate the local configuration with defaults\&.
+.RE
+.PP
+/usr/share/factory/var
+.RS 4
+Similar to
+/usr/share/factory/etc
+but for vendor versions of files in the variable, persistent data directory
+/var\&.
+.RE
+.SH "PERSISTENT VARIABLE SYSTEM DATA"
+.PP
+/var
+.RS 4
+Persistent, variable system data\&. Must be writable\&. This directory might be pre\-populated with vendor\-supplied data, but applications should be able to reconstruct necessary files and directories in this subhierarchy should they be missing, as the system might start up without this directory being populated\&. Persistency is recommended, but optional, to support ephemeral systems\&. This directory might become available or writable only very late during boot\&. Components that are required to operate during early boot hence shall not unconditionally rely on this directory\&.
+.RE
+.PP
+/var/cache
+.RS 4
+Persistent system cache data\&. System components may place non\-essential data in this directory\&. Flushing this directory should have no effect on operation of programs, except for increased runtimes necessary to rebuild these caches\&.
+.RE
+.PP
+/var/lib
+.RS 4
+Persistent system data\&. System components may place private data in this directory\&.
+.RE
+.PP
+/var/log
+.RS 4
+Persistent system logs\&. System components may place private logs in this directory, though it is recommended to do most logging via the
+\fBsyslog\fR(3)
+and
+\fBsd_journal_print\fR(3)
+calls\&.
+.RE
+.PP
+/var/spool
+.RS 4
+Persistent system spool data, such as printer or mail queues\&.
+.RE
+.PP
+/var/tmp
+.RS 4
+The place for larger and persistent temporary files\&. In contrast to
+/tmp
+this directory is usually mounted from a persistent physical file system and can thus accept larger files\&. (Use
+/tmp
+for smaller files\&.) This directory is generally not flushed at boot\-up, but time\-based cleanup of files that have not been accessed for a certain time is applied\&. The same security restrictions as with
+/tmp
+apply, and hence only
+\fBmkstemp\fR(3),
+\fBmkdtemp\fR(3)
+or similar calls should be used to make use of this directory\&. If applications find the environment variable
+\fI$TMPDIR\fR
+set they should prefer using the directory specified in it over directly referencing
+/var/tmp
+(see
+\fBenviron\fR(7)
+for details)\&.
+.RE
+.SH "VIRTUAL KERNEL AND API FILE SYSTEMS"
+.PP
+/dev
+.RS 4
+The root directory for device nodes\&. Usually this directory is mounted as a
+"devtmpfs"
+instance, but might be of a different type in sandboxed/containerized setups\&. This directory is managed jointly by the kernel and
+\fBsystemd-udevd\fR(8), and should not be written to by other components\&. A number of special purpose virtual file systems might be mounted below this directory\&.
+.RE
+.PP
+/dev/shm
+.RS 4
+Place for POSIX shared memory segments, as created via
+\fBshm_open\fR(3)\&. This directory is flushed on boot, and is a
+"tmpfs"
+file system\&. Since all users have write access to this directory, special care should be taken to avoid name clashes and vulnerabilities\&. For normal users, shared memory segments in this directory are usually deleted when the user logs out\&. Usually it is a better idea to use memory mapped files in
+/run
+(for system programs) or
+\fI$XDG_RUNTIME_DIR\fR
+(for user programs) instead of POSIX shared memory segments, since those directories are not world\-writable and hence not vulnerable to security\-sensitive name clashes\&.
+.RE
+.PP
+/proc
+.RS 4
+A virtual kernel file system exposing the process list and other functionality\&. This file system is mostly an API to interface with the kernel and not a place where normal files may be stored\&. For details, see
+\fBproc\fR(5)\&. A number of special purpose virtual file systems might be mounted below this directory\&.
+.RE
+.PP
+/proc/sys
+.RS 4
+A hierarchy below
+/proc
+that exposes a number of kernel tunables\&. The primary way to configure the settings in this API file tree is via
+\fBsysctl.d\fR(5)
+files\&. In sandboxed/containerized setups this directory is generally mounted read\-only\&.
+.RE
+.PP
+/sys
+.RS 4
+A virtual kernel file system exposing discovered devices and other functionality\&. This file system is mostly an API to interface with the kernel and not a place where normal files may be stored\&. In sandboxed/containerized setups this directory is generally mounted read\-only\&. A number of special purpose virtual file systems might be mounted below this directory\&.
+.RE
+.SH "COMPATIBILITY SYMLINKS"
+.PP
+/bin, /sbin, /usr/sbin
+.RS 4
+These compatibility symlinks point to
+/usr/bin, ensuring that scripts and binaries referencing these legacy paths correctly find their binaries\&.
+.RE
+.PP
+/lib
+.RS 4
+This compatibility symlink points to
+/usr/lib, ensuring that programs referencing this legacy path correctly find their resources\&.
+.RE
+.PP
+/lib64
+.RS 4
+On some architecture ABIs this compatibility symlink points to
+\fI$libdir\fR, ensuring that binaries referencing this legacy path correctly find their dynamic loader\&. This symlink only exists on architectures whose ABI places the dynamic loader in this path\&.
+.RE
+.PP
+/var/run
+.RS 4
+This compatibility symlink points to
+/run, ensuring that programs referencing this legacy path correctly find their runtime data\&.
+.RE
+.SH "HOME DIRECTORY"
+.PP
+User applications may want to place files and directories in the user\*(Aqs home directory\&. They should follow the following basic structure\&. Note that some of these directories are also standardized (though more weakly) by the
+\m[blue]\fBXDG Base Directory Specification\fR\m[]\&\s-2\u[2]\d\s+2\&. Additional locations for high\-level user resources are defined by
+\m[blue]\fBxdg\-user\-dirs\fR\m[]\&\s-2\u[4]\d\s+2\&.
+.PP
+~/\&.cache
+.RS 4
+Persistent user cache data\&. User programs may place non\-essential data in this directory\&. Flushing this directory should have no effect on operation of programs, except for increased runtimes necessary to rebuild these caches\&. If an application finds
+\fI$XDG_CACHE_HOME\fR
+set is should use the directory specified in it instead of this directory\&.
+.RE
+.PP
+~/\&.config
+.RS 4
+Application configuration and state\&. When a new user is created this directory will be empty or not exist at all\&. Applications should fall back to defaults should their configuration or state in this directory be missing\&. If an application finds
+\fI$XDG_CONFIG_HOME\fR
+set is should use the directory specified in it instead of this directory\&.
+.RE
+.PP
+~/\&.local/bin
+.RS 4
+Executables that shall appear in the user\*(Aqs
+\fI$PATH\fR
+search path\&. It is recommended not to place executables in this directory that are not useful for invocation from a shell; these should be placed in a subdirectory of
+~/\&.local/lib
+instead\&. Care should be taken when placing architecture\-dependent binaries in this place which might be problematic if the home directory is shared between multiple hosts with different architectures\&.
+.RE
+.PP
+~/\&.local/lib
+.RS 4
+Static, private vendor data that is compatible with all architectures\&.
+.RE
+.PP
+~/\&.local/lib/\fIarch\-id\fR
+.RS 4
+Location for placing public dynamic libraries\&. The architecture identifier to use, is defined on
+\m[blue]\fBMultiarch Architecture Specifiers (Tuples)\fR\m[]\&\s-2\u[3]\d\s+2
+list\&.
+.RE
+.PP
+~/\&.local/share
+.RS 4
+Resources shared between multiple packages, such as fonts or artwork\&. Usually, the precise location and format of files stored below this directory is subject to specifications that ensure interoperability\&. If an application finds
+\fI$XDG_DATA_HOME\fR
+set is should use the directory specified in it instead of this directory\&.
+.RE
+.SH "UNPRIVILEGED WRITE ACCESS"
+.PP
+Unprivileged processes generally lack write access to most of the hierarchy\&.
+.PP
+The exceptions for normal users are
+/tmp,
+/var/tmp,
+/dev/shm, as well as the home directory
+\fI$HOME\fR
+(usually found below
+/home) and the runtime directory
+\fI$XDG_RUNTIME_DIR\fR
+(found below
+/run/user) of the user, which are all writable\&.
+.PP
+For unprivileged system processes only
+/tmp,
+/var/tmp
+and
+/dev/shm
+are writable\&. If an unprivileged system process needs a private, writable directory in
+/var
+or
+/run, it is recommended to either create it before dropping privileges in the daemon code, to create it via
+\fBtmpfiles.d\fR(5)
+fragments during boot, or via the
+\fIRuntimeDirectory=\fR
+directive of service units (see
+\fBsystemd.unit\fR(5)
+for details)\&.
+.SH "NODE TYPES"
+.PP
+Unix file systems support different types of file nodes, including regular files, directories, symlinks, character and block device nodes, sockets and FIFOs\&.
+.PP
+It is strongly recommended that
+/dev
+is the only location below which device nodes shall be placed\&. Similar,
+/run
+shall be the only location to place sockets and FIFOs\&. Regular files, directories and symlinks may be used in all directories\&.
+.SH "SYSTEM PACKAGES"
+.PP
+Developers of system packages should follow strict rules when placing their own files in the file system\&. The following table lists recommended locations for specific types of files supplied by the vendor\&.
+.sp
+.it 1 an-trap
+.nr an-no-space-flag 1
+.nr an-break-flag 1
+.br
+.B Table\ \&1.\ \&System Package Vendor Files Locations
+.TS
+allbox tab(:);
+lB lB.
+T{
+Directory
+T}:T{
+Purpose
+T}
+.T&
+l l
+l l
+l l
+l l
+l l.
+T{
+/usr/bin
+T}:T{
+Package executables that shall appear in the \fI$PATH\fR executable search path, compiled for any of the supported architectures compatible with the operating system\&. It is not recommended to place internal binaries or binaries that are not commonly invoked from the shell in this directory, such as daemon binaries\&. As this directory is shared with most other packages of the system special care should be taken to pick unique names for files placed here, that are unlikely to clash with other package\*(Aqs files\&.
+T}
+T{
+/usr/lib/\fIarch\-id\fR
+T}:T{
+Public shared libraries of the package\&. As above, be careful with using too generic names, and pick unique names for your libraries to place here to avoid name clashes\&.
+T}
+T{
+/usr/lib/\fIpackage\fR
+T}:T{
+Private, static vendor resources of the package, including private binaries and libraries, or any other kind of read\-only vendor data\&.
+T}
+T{
+/usr/lib/\fIarch\-id\fR/\fIpackage\fR
+T}:T{
+Private other vendor resources of the package that are architecture\-specific and cannot be shared between architectures\&. Note that this generally does not include private executables since binaries of a specific architecture may be freely invoked from any other supported system architecture\&.
+T}
+T{
+/usr/include/\fIpackage\fR
+T}:T{
+Public C/C++ APIs of public shared libraries of the package\&.
+T}
+.TE
+.sp 1
+.PP
+Additional static vendor files may be installed in the
+/usr/share
+hierarchy, to the locations defined by the various relevant specifications\&.
+.PP
+During runtime and for local configuration and state additional directories are defined:
+.sp
+.it 1 an-trap
+.nr an-no-space-flag 1
+.nr an-break-flag 1
+.br
+.B Table\ \&2.\ \&System Package Variable Files Locations
+.TS
+allbox tab(:);
+lB lB.
+T{
+Directory
+T}:T{
+Purpose
+T}
+.T&
+l l
+l l
+l l
+l l
+l l
+l l
+l l.
+T{
+/etc/\fIpackage\fR
+T}:T{
+System\-specific configuration for the package\&. It is recommended to default to safe fallbacks if this configuration is missing, if this is possible\&. Alternatively, a \fBtmpfiles.d\fR(5) fragment may be used to copy or symlink the necessary files and directories from /usr/share/factory during boot, via the "L" or "C" directives\&.
+T}
+T{
+/run/\fIpackage\fR
+T}:T{
+Runtime data for the package\&. Packages must be able to create the necessary subdirectories in this tree on their own, since the directory is flushed automatically on boot\&. Alternatively, a \fBtmpfiles.d\fR(5) fragment may be used to create the necessary directories during boot\&. Alternatively, the \fIRuntimeDirectory=\fR directive of service units may be used (see \fBsystemd.unit\fR(5) for details\&.)
+T}
+T{
+/run/log/\fIpackage\fR
+T}:T{
+Runtime log data for the package\&. As above, the package needs to make sure to create this directory if necessary, as it will be flushed on every boot\&.
+T}
+T{
+/var/cache/\fIpackage\fR
+T}:T{
+Persistent cache data of the package\&. If this directory is flushed the application should work correctly on next invocation, though possibly slowed down due to the need to rebuild any local cache files\&. The application must be capable of recreating this directory should it be missing and necessary\&.
+T}
+T{
+/var/lib/\fIpackage\fR
+T}:T{
+Persistent private data of the package\&. This is the primary place to put persistent data that does not fall into the other categories listed\&. Packages should be able to create the necessary subdirectories in this tree on their own, since the directory might be missing on boot\&. Alternatively, a \fBtmpfiles.d\fR(5) fragment may be used to create the necessary directories during boot\&.
+T}
+T{
+/var/log/\fIpackage\fR
+T}:T{
+Persistent log data of the package\&. As above, the package should make sure to create this directory if necessary, as it might be missing\&.
+T}
+T{
+/var/spool/\fIpackage\fR
+T}:T{
+Persistent spool/queue data of the package\&. As above, the package should make sure to create this directory if necessary, as it might be missing\&.
+T}
+.TE
+.sp 1
+.SH "USER PACKAGES"
+.PP
+Programs running in user context should follow strict rules when placing their own files in the user\*(Aqs home directory\&. The following table lists recommended locations in the home directory for specific types of files supplied by the vendor if the application is installed in the home directory\&. (Note however, that user applications installed system\-wide should follow the rules outlined above regarding placing vendor files\&.)
+.sp
+.it 1 an-trap
+.nr an-no-space-flag 1
+.nr an-break-flag 1
+.br
+.B Table\ \&3.\ \&User Package Vendor File Locations
+.TS
+allbox tab(:);
+lB lB.
+T{
+Directory
+T}:T{
+Purpose
+T}
+.T&
+l l
+l l
+l l
+l l.
+T{
+~/\&.local/bin
+T}:T{
+Package executables that shall appear in the \fI$PATH\fR executable search path\&. It is not recommended to place internal executables or executables that are not commonly invoked from the shell in this directory, such as daemon executables\&. As this directory is shared with most other packages of the user special care should be taken to pick unique names for files placed here, that are unlikely to clash with other package\*(Aqs files\&.
+T}
+T{
+~/\&.local/lib/\fIarch\-id\fR
+T}:T{
+Public shared libraries of the package\&. As above, be careful with using too generic names, and pick unique names for your libraries to place here to avoid name clashes\&.
+T}
+T{
+~/\&.local/lib/\fIpackage\fR
+T}:T{
+Private, static vendor resources of the package, compatible wih any architecture, or any other kind of read\-only vendor data\&.
+T}
+T{
+~/\&.local/lib/\fIarch\-id\fR/\fIpackage\fR
+T}:T{
+Private other vendor resources of the package that are architecture\-specific and cannot be shared between architectures\&.
+T}
+.TE
+.sp 1
+.PP
+Additional static vendor files may be installed in the
+~/\&.local/share
+hierarchy, to the locations defined by the various relevant specifications\&.
+.PP
+During runtime and for local configuration and state additional directories are defined:
+.sp
+.it 1 an-trap
+.nr an-no-space-flag 1
+.nr an-break-flag 1
+.br
+.B Table\ \&4.\ \&User Package Variable File Locations
+.TS
+allbox tab(:);
+lB lB.
+T{
+Directory
+T}:T{
+Purpose
+T}
+.T&
+l l
+l l
+l l.
+T{
+~/\&.config/\fIpackage\fR
+T}:T{
+User\-specific configuration and state for the package\&. It is required to default to safe fallbacks if this configuration is missing\&.
+T}
+T{
+\fI$XDG_RUNTIME_DIR\fR/\fIpackage\fR
+T}:T{
+User runtime data for the package\&.
+T}
+T{
+~/\&.cache/\fIpackage\fR
+T}:T{
+Persistent cache data of the package\&. If this directory is flushed the application should work correctly on next invocation, though possibly slowed down due to the need to rebuild any local cache files\&. The application must be capable of recreating this directory should it be missing and necessary\&.
+T}
+.TE
+.sp 1
+.SH "SEE ALSO"
+.PP
+\fBsystemd\fR(1),
+\fBhier\fR(7),
+\fBsystemd-path\fR(1),
+\fBsystemd-efi-boot-generator\fR(8),
+\fBsysctl.d\fR(5),
+\fBtmpfiles.d\fR(5),
+\fBpkg-config\fR(1),
+\fBsystemd.unit\fR(5)
+.SH "NOTES"
+.IP " 1." 4
+File System Hierarchy
+.RS 4
+\%http://refspecs.linuxfoundation.org/FHS_2.3/fhs-2.3.html
+.RE
+.IP " 2." 4
+XDG Base Directory Specification
+.RS 4
+\%http://standards.freedesktop.org/basedir-spec/basedir-spec-latest.html
+.RE
+.IP " 3." 4
+Multiarch Architecture Specifiers (Tuples)
+.RS 4
+\%https://wiki.debian.org/Multiarch/Tuples
+.RE
+.IP " 4." 4
+xdg-user-dirs
+.RS 4
+\%http://www.freedesktop.org/wiki/Software/xdg-user-dirs/
+.RE
diff --git a/man/file-hierarchy.html b/man/file-hierarchy.html
new file mode 100644 (file)
index 0000000..d8853e3
--- /dev/null
@@ -0,0 +1,483 @@
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>file-hierarchy</title><meta name="generator" content="DocBook XSL Stylesheets V1.78.1"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><style>
+    a.headerlink {
+      color: #c60f0f;
+      font-size: 0.8em;
+      padding: 0 4px 0 4px;
+      text-decoration: none;
+      visibility: hidden;
+    }
+
+    a.headerlink:hover {
+      background-color: #c60f0f;
+      color: white;
+    }
+
+    h1:hover > a.headerlink, h2:hover > a.headerlink, h3:hover > a.headerlink, dt:hover > a.headerlink {
+      visibility: visible;
+    }
+  </style><a href="index.html">Index </a>·
+  <a href="systemd.directives.html">Directives </a>·
+  <a href="../python-systemd/index.html">Python </a>·
+  <a href="../libudev/index.html">libudev </a>·
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="file-hierarchy"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>file-hierarchy — File system hierarchy overview</p></div><div class="refsect1"><a name="idm214174576496"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p>Operating systems using the
+                <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>
+                system and service manager are organized based on a
+                file system hierarchy inspired by UNIX, more
+                specifically the hierarchy described in the <a class="ulink" href="http://refspecs.linuxfoundation.org/FHS_2.3/fhs-2.3.html" target="_top">File
+                System Hierarchy</a> specification and
+                <a href="hier.html"><span class="citerefentry"><span class="refentrytitle">hier</span>(7)</span></a>. This
+                manual page describes a more minimal, modernized
+                subset of these specifications that defines more
+                strictly the suggestions and restrictions systemd
+                makes on the file system hierarchy.</p><p>Many of the paths described here are queriable
+                with the
+                <a href="systemd-path.html"><span class="citerefentry"><span class="refentrytitle">systemd-path</span>(1)</span></a>
+                tool.</p></div><div class="refsect1"><a name="idm214173152608"></a><h2 id="General Structure">General Structure<a class="headerlink" title="Permalink to this headline" href="#General%20Structure">¶</a></h2><div class="variablelist"><dl class="variablelist"><dt id="/"><span class="term"><code class="filename">/</code></span><a class="headerlink" title="Permalink to this term" href="#/">¶</a></dt><dd><p>The file system
+                                root. Usually writable, but this is
+                                not required. Possibly a temporary
+                                file system ("<code class="literal">tmpfs</code>"). Not shared with
+                                other hosts (unless read-only).
+                                </p></dd><dt id="/boot"><span class="term"><code class="filename">/boot</code></span><a class="headerlink" title="Permalink to this term" href="#/boot">¶</a></dt><dd><p>The boot partition
+                                used for bringing up the system. On
+                                EFI systems this is possibly the EFI
+                                System Partition, also see
+                                <a href="systemd-efi-boot-generator.html"><span class="citerefentry"><span class="refentrytitle">systemd-efi-boot-generator</span>(8)</span></a>. This
+                                directory is usually strictly local
+                                to the host, and should be considered
+                                read-only, except when a new kernel or
+                                boot loader is installed. This
+                                directory only exists on systems that
+                                run on physical or emulated hardware
+                                that requires boot
+                                loaders.</p></dd><dt id="/etc"><span class="term"><code class="filename">/etc</code></span><a class="headerlink" title="Permalink to this term" href="#/etc">¶</a></dt><dd><p>System-specific
+                                configuration. This directory may or
+                                may not be read-only. Frequently, this
+                                directory is pre-populated with
+                                vendor-supplied configuration files,
+                                but applications should not make
+                                assumptions about this directory
+                                being fully populated or populated at
+                                all, and should fall back to defaults
+                                if configuration is missing.</p></dd><dt id="/home"><span class="term"><code class="filename">/home</code></span><a class="headerlink" title="Permalink to this term" href="#/home">¶</a></dt><dd><p>The location for
+                                normal user's home
+                                directories. Possibly shared with
+                                other systems, and never
+                                read-only. This directory should only
+                                be used for normal users, never for
+                                system users. This directory and
+                                possibly the directories contained
+                                within it might only become available
+                                or writable in late boot or even only
+                                after user authentication. This directory
+                                might be placed on limited-functionality
+                                network file systems, hence
+                                applications should not assume the
+                                full set of file API is available on
+                                this directory. Applications should
+                                generally not reference this directory
+                                directly, but via the per-user
+                                <code class="varname">$HOME</code> environment
+                                variable, or via the home directory
+                                field of the user
+                                database.</p></dd><dt id="/root"><span class="term"><code class="filename">/root</code></span><a class="headerlink" title="Permalink to this term" href="#/root">¶</a></dt><dd><p>The home directory of
+                                the root user. The root user's home
+                                directory is located outside of
+                                <code class="filename">/home</code> in order to
+                                make sure the root user may log in
+                                even without <code class="filename">/home</code>
+                                being available and
+                                mounted.</p></dd><dt id="/srv"><span class="term"><code class="filename">/srv</code></span><a class="headerlink" title="Permalink to this term" href="#/srv">¶</a></dt><dd><p>The place to store
+                                general server payload, managed by the
+                                administrator. No restrictions are
+                                made how this directory is organized
+                                internally. Generally writable, and
+                                possibly shared among systems. This
+                                directory might become available or
+                                writable only very late during
+                                boot.</p></dd><dt id="/tmp"><span class="term"><code class="filename">/tmp</code></span><a class="headerlink" title="Permalink to this term" href="#/tmp">¶</a></dt><dd><p>The place for small
+                                temporary files. This directory is
+                                usually mounted as
+                                a "<code class="literal">tmpfs</code>" instance, and
+                                should hence not be used for larger
+                                files. (Use
+                                <code class="filename">/var/tmp</code> for
+                                larger files.) Since the directory is
+                                accessible to other users of the
+                                system it is essential that this
+                                directory is only written to with the
+                                <a href="mkstemp.html"><span class="citerefentry"><span class="refentrytitle">mkstemp</span>(3)</span></a>,
+                                <a href="mkdtemp.html"><span class="citerefentry"><span class="refentrytitle">mkdtemp</span>(3)</span></a>
+                                and related calls. This directory is
+                                usually flushed at boot-up. Also,
+                                files that are not accessed within a
+                                certain time are usually automatically
+                                deleted. If applications find the
+                                environment variable
+                                <code class="varname">$TMPDIR</code> set they
+                                should prefer using the directory
+                                specified in it over directly
+                                referencing
+                                <code class="filename">/tmp</code> (see <a href="environ.html"><span class="citerefentry"><span class="refentrytitle">environ</span>(7)</span></a> for details).</p></dd></dl></div></div><div class="refsect1"><a name="idm214170719280"></a><h2 id="Runtime Data">Runtime Data<a class="headerlink" title="Permalink to this headline" href="#Runtime%20Data">¶</a></h2><div class="variablelist"><dl class="variablelist"><dt id="/run"><span class="term"><code class="filename">/run</code></span><a class="headerlink" title="Permalink to this term" href="#/run">¶</a></dt><dd><p>A
+                                "<code class="literal">tmpfs</code>" file system
+                                for system packages to place runtime
+                                data in. This directory is flushed on
+                                boot, and generally writable for
+                                privileged programs
+                                only. Always writable.</p></dd><dt id="/run/log"><span class="term"><code class="filename">/run/log</code></span><a class="headerlink" title="Permalink to this term" href="#/run/log">¶</a></dt><dd><p>Runtime system
+                                logs. System components may place
+                                private logs in this directory. Always
+                                writable, even when
+                                <code class="filename">/var/log</code> might
+                                not be accessible
+                                yet.</p></dd><dt id="/run/user"><span class="term"><code class="filename">/run/user</code></span><a class="headerlink" title="Permalink to this term" href="#/run/user">¶</a></dt><dd><p>Contains per-user
+                                runtime directories, each usually
+                                individually mounted
+                                "<code class="literal">tmpfs</code>"
+                                instances. Always writable, flushed at
+                                each reboot and when the user logs
+                                out. User code should not reference
+                                this directory directly, but via the
+                                <code class="varname">$XDG_RUNTIME_DIR</code>
+                                environment variable, as documented in
+                                the <a class="ulink" href="http://standards.freedesktop.org/basedir-spec/basedir-spec-latest.html" target="_top">XDG
+                                Base Directory
+                                Specification</a>.</p></dd></dl></div></div><div class="refsect1"><a name="idm214174010496"></a><h2 id="Vendor-supplied Operating System Resources">Vendor-supplied Operating System Resources<a class="headerlink" title="Permalink to this headline" href="#Vendor-supplied%20Operating%20System%20Resources">¶</a></h2><div class="variablelist"><dl class="variablelist"><dt id="/usr"><span class="term"><code class="filename">/usr</code></span><a class="headerlink" title="Permalink to this term" href="#/usr">¶</a></dt><dd><p>Vendor-supplied
+                                operating system resources. Usually
+                                read-only, but this is not
+                                required. Possibly shared between
+                                multiple hosts. This directory should
+                                not be modified by the administrator,
+                                except when installing or removing
+                                vendor-supplied
+                                packages.</p></dd><dt id="/usr/bin"><span class="term"><code class="filename">/usr/bin</code></span><a class="headerlink" title="Permalink to this term" href="#/usr/bin">¶</a></dt><dd><p>Binaries and
+                                executables for user commands, that
+                                shall appear in the
+                                <code class="varname">$PATH</code> search
+                                path. It is recommended not to place
+                                binaries in this directory that are
+                                not useful for invocation from a shell
+                                (such as daemon binaries); these
+                                should be placed in a subdirectory of
+                                <code class="filename">/usr/lib</code>
+                                instead.</p></dd><dt id="/usr/include"><span class="term"><code class="filename">/usr/include</code></span><a class="headerlink" title="Permalink to this term" href="#/usr/include">¶</a></dt><dd><p>C and C++ API header
+                                files of system
+                                libraries.</p></dd><dt id="/usr/lib"><span class="term"><code class="filename">/usr/lib</code></span><a class="headerlink" title="Permalink to this term" href="#/usr/lib">¶</a></dt><dd><p>Static, private vendor
+                                data that is compatible with all
+                                architectures (though not necessarily
+                                architecture-independent). Note that
+                                this includes internal executables or
+                                other binaries that are not regularly
+                                invoked from a shell. Such binaries
+                                may be for any architecture supported
+                                by the system. Do not place public
+                                libraries in this directory, use
+                                <code class="varname">$libdir</code> (see
+                                below), instead.</p></dd><dt id="/usr/lib/arch-id"><span class="term"><code class="filename">/usr/lib/<em class="replaceable"><code>arch-id</code></em></code></span><a class="headerlink" title="Permalink to this term" href="#/usr/lib/arch-id">¶</a></dt><dd><p>Location for placing
+                                dynamic libraries, also called <code class="varname">$libdir</code>.
+                                The architecture identifier to use is defined on <a class="ulink" href="https://wiki.debian.org/Multiarch/Tuples" target="_top">Multiarch Architecture Specifiers (Tuples)</a>
+                                list. Legacy locations of <code class="varname">$libdir</code> are
+                                <code class="filename">/usr/lib</code>,
+                                <code class="filename">/usr/lib64</code>.
+                                This directory should not
+                                be used for package-specific data,
+                                unless this data is
+                                architecture-dependent, too. To query
+                                <code class="varname">$libdir</code> for the
+                                primary architecture of the system,
+                                invoke:
+                                </p><pre class="programlisting"># pkg-config --variable=libdir systemd</pre><p> or
+                                </p><pre class="programlisting"># systemd-path system-library-arch</pre><p>
+                                </p></dd><dt id="/usr/share"><span class="term"><code class="filename">/usr/share</code></span><a class="headerlink" title="Permalink to this term" href="#/usr/share">¶</a></dt><dd><p>Resources shared
+                                between multiple packages, such as
+                                documentation, man pages, time zone
+                                information, fonts and other
+                                resources. Usually, the precise
+                                location and format of files stored
+                                below this directory is subject to
+                                specifications that ensure
+                                interoperability.</p></dd><dt id="/usr/share/doc"><span class="term"><code class="filename">/usr/share/doc</code></span><a class="headerlink" title="Permalink to this term" href="#/usr/share/doc">¶</a></dt><dd><p>Documentation for the
+                                operating system or system
+                                packages.</p></dd><dt id="/usr/share/factory/etc"><span class="term"><code class="filename">/usr/share/factory/etc</code></span><a class="headerlink" title="Permalink to this term" href="#/usr/share/factory/etc">¶</a></dt><dd><p>Repository for
+                                vendor-supplied default configuration
+                                files. This directory should be
+                                populated with pristine vendor versions
+                                of all configuration files that may be
+                                placed in
+                                <code class="filename">/etc</code>. This is
+                                useful to compare the local
+                                configuration of a system with vendor
+                                defaults and to populate the local
+                                configuration with
+                                defaults.</p></dd><dt id="/usr/share/factory/var"><span class="term"><code class="filename">/usr/share/factory/var</code></span><a class="headerlink" title="Permalink to this term" href="#/usr/share/factory/var">¶</a></dt><dd><p>Similar to
+                                <code class="filename">/usr/share/factory/etc</code>
+                                but for vendor versions of files in
+                                the variable, persistent data
+                                directory
+                                <code class="filename">/var</code>.</p></dd></dl></div></div><div class="refsect1"><a name="idm214171094480"></a><h2 id="Persistent Variable System Data">Persistent Variable System Data<a class="headerlink" title="Permalink to this headline" href="#Persistent%20Variable%20System%20Data">¶</a></h2><div class="variablelist"><dl class="variablelist"><dt id="/var"><span class="term"><code class="filename">/var</code></span><a class="headerlink" title="Permalink to this term" href="#/var">¶</a></dt><dd><p>Persistent, variable
+                                system data. Must be writable. This
+                                directory might be pre-populated with
+                                vendor-supplied data, but applications
+                                should be able to reconstruct
+                                necessary files and directories in
+                                this subhierarchy should they be
+                                missing, as the system might start up
+                                without this directory being
+                                populated. Persistency is recommended,
+                                but optional, to support ephemeral
+                                systems. This directory might become
+                                available or writable only very late
+                                during boot. Components that are
+                                required to operate during early boot
+                                hence shall not unconditionally rely
+                                on this directory.</p></dd><dt id="/var/cache"><span class="term"><code class="filename">/var/cache</code></span><a class="headerlink" title="Permalink to this term" href="#/var/cache">¶</a></dt><dd><p>Persistent system
+                                cache data. System components may
+                                place non-essential data in this
+                                directory. Flushing this directory
+                                should have no effect on operation of
+                                programs, except for increased
+                                runtimes necessary to rebuild these
+                                caches.</p></dd><dt id="/var/lib"><span class="term"><code class="filename">/var/lib</code></span><a class="headerlink" title="Permalink to this term" href="#/var/lib">¶</a></dt><dd><p>Persistent system
+                                data. System components may
+                                place private data in this
+                                directory.</p></dd><dt id="/var/log"><span class="term"><code class="filename">/var/log</code></span><a class="headerlink" title="Permalink to this term" href="#/var/log">¶</a></dt><dd><p>Persistent system
+                                logs. System components may place
+                                private logs in this directory, though
+                                it is recommended to do most logging
+                                via the
+                                <a href="syslog.html"><span class="citerefentry"><span class="refentrytitle">syslog</span>(3)</span></a>
+                                and
+                                <a href="sd_journal_print.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_print</span>(3)</span></a>
+                                calls.</p></dd><dt id="/var/spool"><span class="term"><code class="filename">/var/spool</code></span><a class="headerlink" title="Permalink to this term" href="#/var/spool">¶</a></dt><dd><p>Persistent system
+                                spool data, such as printer or mail
+                                queues.</p></dd><dt id="/var/tmp"><span class="term"><code class="filename">/var/tmp</code></span><a class="headerlink" title="Permalink to this term" href="#/var/tmp">¶</a></dt><dd><p>The place for larger
+                                and persistent temporary files. In
+                                contrast to <code class="filename">/tmp</code>
+                                this directory is usually mounted from
+                                a persistent physical file system and
+                                can thus accept larger files. (Use
+                                <code class="filename">/tmp</code> for smaller
+                                files.) This directory is generally
+                                not flushed at boot-up, but time-based
+                                cleanup of files that have not been
+                                accessed for a certain time is
+                                applied. The same security
+                                restrictions as with
+                                <code class="filename">/tmp</code> apply, and
+                                hence only
+                                <a href="mkstemp.html"><span class="citerefentry"><span class="refentrytitle">mkstemp</span>(3)</span></a>,
+                                <a href="mkdtemp.html"><span class="citerefentry"><span class="refentrytitle">mkdtemp</span>(3)</span></a>
+                                or similar calls should be used to
+                                make use of this directory. If
+                                applications find the environment
+                                variable <code class="varname">$TMPDIR</code>
+                                set they should prefer using the
+                                directory specified in it over
+                                directly referencing
+                                <code class="filename">/var/tmp</code> (see <a href="environ.html"><span class="citerefentry"><span class="refentrytitle">environ</span>(7)</span></a> for details).
+                                </p></dd></dl></div></div><div class="refsect1"><a name="idm214172285296"></a><h2 id="Virtual Kernel and API File Systems">Virtual Kernel and API File Systems<a class="headerlink" title="Permalink to this headline" href="#Virtual%20Kernel%20and%20API%20File%20Systems">¶</a></h2><div class="variablelist"><dl class="variablelist"><dt id="/dev"><span class="term"><code class="filename">/dev</code></span><a class="headerlink" title="Permalink to this term" href="#/dev">¶</a></dt><dd><p>The root directory for
+                                device nodes. Usually this directory
+                                is mounted as a
+                                "<code class="literal">devtmpfs</code>" instance,
+                                but might be of a different type in
+                                sandboxed/containerized setups. This
+                                directory is managed jointly by the
+                                kernel and
+                                <a href="systemd-udevd.html"><span class="citerefentry"><span class="refentrytitle">systemd-udevd</span>(8)</span></a>,
+                                and should not be written to by other
+                                components. A number of special
+                                purpose virtual file systems might be
+                                mounted below this
+                                directory.</p></dd><dt id="/dev/shm"><span class="term"><code class="filename">/dev/shm</code></span><a class="headerlink" title="Permalink to this term" href="#/dev/shm">¶</a></dt><dd><p>Place for POSIX shared
+                                memory segments, as created via
+                                <a href="shm_open.html"><span class="citerefentry"><span class="refentrytitle">shm_open</span>(3)</span></a>. This
+                                directory is flushed on boot, and is a
+                                "<code class="literal">tmpfs</code>" file
+                                system. Since all users have write
+                                access to this directory, special care
+                                should be taken to avoid name clashes
+                                and vulnerabilities. For normal users,
+                                shared memory segments in this
+                                directory are usually deleted when the
+                                user logs out. Usually it is a better
+                                idea to use memory mapped files in
+                                <code class="filename">/run</code> (for system
+                                programs) or
+                                <code class="varname">$XDG_RUNTIME_DIR</code>
+                                (for user programs) instead of POSIX
+                                shared memory segments, since those
+                                directories are not world-writable and
+                                hence not vulnerable to
+                                security-sensitive name
+                                clashes.</p></dd><dt id="/proc"><span class="term"><code class="filename">/proc</code></span><a class="headerlink" title="Permalink to this term" href="#/proc">¶</a></dt><dd><p>A virtual kernel file
+                                system exposing the process list and
+                                other functionality. This file system
+                                is mostly an API to interface with the
+                                kernel and not a place where normal
+                                files may be stored. For details, see
+                                <a href="proc.html"><span class="citerefentry"><span class="refentrytitle">proc</span>(5)</span></a>. A
+                                number of special purpose virtual file
+                                systems might be mounted below this
+                                directory.</p></dd><dt id="/proc/sys"><span class="term"><code class="filename">/proc/sys</code></span><a class="headerlink" title="Permalink to this term" href="#/proc/sys">¶</a></dt><dd><p>A hierarchy below
+                                <code class="filename">/proc</code> that
+                                exposes a number of kernel
+                                tunables. The primary way to configure
+                                the settings in this API file tree is
+                                via
+                                <a href="sysctl.d.html"><span class="citerefentry"><span class="refentrytitle">sysctl.d</span>(5)</span></a>
+                                files. In sandboxed/containerized
+                                setups this directory is generally
+                                mounted read-only.</p></dd><dt id="/sys"><span class="term"><code class="filename">/sys</code></span><a class="headerlink" title="Permalink to this term" href="#/sys">¶</a></dt><dd><p>A virtual kernel file
+                                system exposing discovered devices and
+                                other functionality. This file system
+                                is mostly an API to interface with the
+                                kernel and not a place where normal
+                                files may be stored. In
+                                sandboxed/containerized setups this
+                                directory is generally mounted
+                                read-only. A number of special purpose
+                                virtual file systems might be mounted
+                                below this
+                                directory.</p></dd></dl></div></div><div class="refsect1"><a name="idm214170710752"></a><h2 id="Compatibility Symlinks">Compatibility Symlinks<a class="headerlink" title="Permalink to this headline" href="#Compatibility%20Symlinks">¶</a></h2><div class="variablelist"><dl class="variablelist"><dt id="/bin"><span class="term"><code class="filename">/bin</code>, </span><span class="term"><code class="filename">/sbin</code>, </span><span class="term"><code class="filename">/usr/sbin</code></span><a class="headerlink" title="Permalink to this term" href="#/bin">¶</a></dt><dd><p>These compatibility
+                                symlinks point to
+                                <code class="filename">/usr/bin</code>,
+                                ensuring that scripts and binaries
+                                referencing these legacy paths
+                                correctly find their binaries.</p></dd><dt id="/lib"><span class="term"><code class="filename">/lib</code></span><a class="headerlink" title="Permalink to this term" href="#/lib">¶</a></dt><dd><p>This compatibility
+                                symlink points to
+                                <code class="filename">/usr/lib</code>,
+                                ensuring that programs referencing
+                                this legacy path correctly find
+                                their resources.</p></dd><dt id="/lib64"><span class="term"><code class="filename">/lib64</code></span><a class="headerlink" title="Permalink to this term" href="#/lib64">¶</a></dt><dd><p>On some architecture
+                                ABIs this compatibility symlink points
+                                to <code class="varname">$libdir</code>,
+                                ensuring that binaries referencing
+                                this legacy path correctly find their
+                                dynamic loader. This symlink only
+                                exists on architectures whose ABI
+                                places the dynamic loader in this
+                                path.</p></dd><dt id="/var/run"><span class="term"><code class="filename">/var/run</code></span><a class="headerlink" title="Permalink to this term" href="#/var/run">¶</a></dt><dd><p>This compatibility
+                                symlink points to
+                                <code class="filename">/run</code>, ensuring
+                                that programs referencing this legacy
+                                path correctly find their runtime
+                                data.</p></dd></dl></div></div><div class="refsect1"><a name="idm214172491616"></a><h2 id="Home Directory">Home Directory<a class="headerlink" title="Permalink to this headline" href="#Home%20Directory">¶</a></h2><p>User applications may want to place files and
+                directories in the user's home directory. They should
+                follow the following basic structure. Note that some
+                of these directories are also standardized (though
+                more weakly) by the <a class="ulink" href="http://standards.freedesktop.org/basedir-spec/basedir-spec-latest.html" target="_top">XDG
+                Base Directory Specification</a>. Additional
+                locations for high-level user resources are defined by
+                <a class="ulink" href="http://www.freedesktop.org/wiki/Software/xdg-user-dirs/" target="_top">xdg-user-dirs</a>.</p><div class="variablelist"><dl class="variablelist"><dt id="~/.cache"><span class="term"><code class="filename">~/.cache</code></span><a class="headerlink" title="Permalink to this term" href="#~/.cache">¶</a></dt><dd><p>Persistent user cache
+                                data. User programs may place
+                                non-essential data in this
+                                directory. Flushing this directory
+                                should have no effect on operation of
+                                programs, except for increased
+                                runtimes necessary to rebuild these
+                                caches. If an application finds
+                                <code class="varname">$XDG_CACHE_HOME</code> set
+                                is should use the directory specified
+                                in it instead of this
+                                directory.</p></dd><dt id="~/.config"><span class="term"><code class="filename">~/.config</code></span><a class="headerlink" title="Permalink to this term" href="#~/.config">¶</a></dt><dd><p>Application
+                                configuration and state. When a new
+                                user is created this directory will be
+                                empty or not exist at
+                                all. Applications should fall back to
+                                defaults should their configuration or
+                                state in this directory be missing. If
+                                an application finds
+                                <code class="varname">$XDG_CONFIG_HOME</code> set
+                                is should use the directory specified
+                                in it instead of this
+                                directory.</p></dd><dt id="~/.local/bin"><span class="term"><code class="filename">~/.local/bin</code></span><a class="headerlink" title="Permalink to this term" href="#~/.local/bin">¶</a></dt><dd><p>Executables that shall
+                                appear in the user's
+                                <code class="varname">$PATH</code> search
+                                path. It is recommended not to place
+                                executables in this directory that are
+                                not useful for invocation from a
+                                shell; these should be placed in a
+                                subdirectory of
+                                <code class="filename">~/.local/lib</code>
+                                instead. Care should be taken when
+                                placing architecture-dependent
+                                binaries in this place which might be
+                                problematic if the home directory is
+                                shared between multiple hosts with
+                                different
+                                architectures.</p></dd><dt id="~/.local/lib"><span class="term"><code class="filename">~/.local/lib</code></span><a class="headerlink" title="Permalink to this term" href="#~/.local/lib">¶</a></dt><dd><p>Static, private vendor
+                                data that is compatible with all
+                                architectures.</p></dd><dt id="~/.local/lib/arch-id"><span class="term"><code class="filename">~/.local/lib/<em class="replaceable"><code>arch-id</code></em></code></span><a class="headerlink" title="Permalink to this term" href="#~/.local/lib/arch-id">¶</a></dt><dd><p>Location for placing
+                                public dynamic libraries. The architecture
+                                identifier to use, is defined on <a class="ulink" href="https://wiki.debian.org/Multiarch/Tuples" target="_top">Multiarch Architecture Specifiers (Tuples)</a>
+                                list.</p></dd><dt id="~/.local/share"><span class="term"><code class="filename">~/.local/share</code></span><a class="headerlink" title="Permalink to this term" href="#~/.local/share">¶</a></dt><dd><p>Resources shared
+                                between multiple packages, such as
+                                fonts or artwork. Usually, the precise
+                                location and format of files stored
+                                below this directory is subject to
+                                specifications that ensure
+                                interoperability. If
+                                an application finds
+                                <code class="varname">$XDG_DATA_HOME</code> set
+                                is should use the directory specified
+                                in it instead of this
+                                directory.</p></dd></dl></div></div><div class="refsect1"><a name="idm214175546688"></a><h2 id="Unprivileged Write Access">Unprivileged Write Access<a class="headerlink" title="Permalink to this headline" href="#Unprivileged%20Write%20Access">¶</a></h2><p>Unprivileged processes generally lack
+                write access to most of the hierarchy.</p><p>The exceptions for normal users are
+                <code class="filename">/tmp</code>,
+                <code class="filename">/var/tmp</code>,
+                <code class="filename">/dev/shm</code>, as well as the home
+                directory <code class="varname">$HOME</code> (usually found
+                below <code class="filename">/home</code>) and the runtime
+                directory <code class="varname">$XDG_RUNTIME_DIR</code> (found
+                below <code class="filename">/run/user</code>) of the
+                user, which are all writable.</p><p>For unprivileged system processes only
+                <code class="filename">/tmp</code>,
+                <code class="filename">/var/tmp</code> and
+                <code class="filename">/dev/shm</code> are writable. If an
+                unprivileged system process needs a private, writable
+                directory in <code class="filename">/var</code> or
+                <code class="filename">/run</code>, it is recommended to either
+                create it before dropping privileges in the daemon
+                code, to create it via
+                <a href="tmpfiles.d.html"><span class="citerefentry"><span class="refentrytitle">tmpfiles.d</span>(5)</span></a>
+                fragments during boot, or via the
+                <code class="varname">RuntimeDirectory=</code> directive of
+                service units (see
+                <a href="systemd.unit.html"><span class="citerefentry"><span class="refentrytitle">systemd.unit</span>(5)</span></a>
+                for details).</p></div><div class="refsect1"><a name="idm214173794992"></a><h2 id="Node Types">Node Types<a class="headerlink" title="Permalink to this headline" href="#Node%20Types">¶</a></h2><p>Unix file systems support different types of file
+                nodes, including regular files, directories, symlinks,
+                character and block device nodes, sockets and FIFOs.</p><p>It is strongly recommended that
+                <code class="filename">/dev</code> is the only location below
+                which device nodes shall be placed. Similar,
+                <code class="filename">/run</code> shall be the only location
+                to place sockets and FIFOs. Regular files,
+                directories and symlinks may be used in all
+                directories.</p></div><div class="refsect1"><a name="idm214173791552"></a><h2 id="System Packages">System Packages<a class="headerlink" title="Permalink to this headline" href="#System%20Packages">¶</a></h2><p>Developers of system packages should follow
+                strict rules when placing their own files in the file
+                system. The following table lists recommended
+                locations for specific types of files supplied by the
+                vendor.</p><div class="table"><a name="idm214173790208"></a><p class="title"><b>Table 1. System Package Vendor Files Locations</b></p><div class="table-contents"><table summary="System Package Vendor Files Locations" border="1"><colgroup><col align="left" class="directory"><col align="left" class="purpose"></colgroup><thead><tr><th align="left">Directory</th><th align="left">Purpose</th></tr></thead><tbody><tr><td align="left"><code class="filename">/usr/bin</code></td><td align="left">Package executables that shall appear in the <code class="varname">$PATH</code> executable search path, compiled for any of the supported architectures compatible with the operating system. It is not recommended to place internal binaries or binaries that are not commonly invoked from the shell in this directory, such as daemon binaries. As this directory is shared with most other packages of the system special care should be taken to pick unique names for files placed here, that are unlikely to clash with other package's files.</td></tr><tr><td align="left"><code class="filename">/usr/lib/<em class="replaceable"><code>arch-id</code></em></code></td><td align="left">Public shared libraries of the package. As above, be careful with using too generic names, and pick unique names for your libraries to place here to avoid name clashes.</td></tr><tr><td align="left"><code class="filename">/usr/lib/<em class="replaceable"><code>package</code></em></code></td><td align="left">Private, static vendor resources of the package, including private binaries and libraries, or any other kind of read-only vendor data.</td></tr><tr><td align="left"><code class="filename">/usr/lib/<em class="replaceable"><code>arch-id</code></em>/<em class="replaceable"><code>package</code></em></code></td><td align="left">Private other vendor resources of the package that are architecture-specific and cannot be shared between architectures. Note that this generally does not include private executables since binaries of a specific architecture may be freely invoked from any other supported system architecture.</td></tr><tr><td align="left"><code class="filename">/usr/include/<em class="replaceable"><code>package</code></em></code></td><td align="left">Public C/C++ APIs of public shared libraries of the package.</td></tr></tbody></table></div></div><br class="table-break"><p>Additional static vendor files may be installed
+                in the <code class="filename">/usr/share</code> hierarchy, to
+                the locations defined by the various relevant
+                specifications.</p><p>During runtime and for local configuration and
+                state additional directories are defined:</p><div class="table"><a name="idm214173772160"></a><p class="title"><b>Table 2. System Package Variable Files Locations</b></p><div class="table-contents"><table summary="System Package Variable Files Locations" border="1"><colgroup><col align="left" class="directory"><col align="left" class="purpose"></colgroup><thead><tr><th align="left">Directory</th><th align="left">Purpose</th></tr></thead><tbody><tr><td align="left"><code class="filename">/etc/<em class="replaceable"><code>package</code></em></code></td><td align="left">System-specific configuration for the package. It is recommended to default to safe fallbacks if this configuration is missing, if this is possible. Alternatively, a <a href="tmpfiles.d.html"><span class="citerefentry"><span class="refentrytitle">tmpfiles.d</span>(5)</span></a> fragment may be used to copy or symlink the necessary files and directories from <code class="filename">/usr/share/factory</code> during boot, via the "<code class="literal">L</code>" or "<code class="literal">C</code>" directives.</td></tr><tr><td align="left"><code class="filename">/run/<em class="replaceable"><code>package</code></em></code></td><td align="left">Runtime data for the package. Packages must be able to create the necessary subdirectories in this tree on their own, since the directory is flushed automatically on boot. Alternatively, a <a href="tmpfiles.d.html"><span class="citerefentry"><span class="refentrytitle">tmpfiles.d</span>(5)</span></a> fragment may be used to create the necessary directories during boot. Alternatively, the <code class="varname">RuntimeDirectory=</code> directive of service units may be used (see <a href="systemd.unit.html"><span class="citerefentry"><span class="refentrytitle">systemd.unit</span>(5)</span></a> for details.)</td></tr><tr><td align="left"><code class="filename">/run/log/<em class="replaceable"><code>package</code></em></code></td><td align="left">Runtime log data for the package. As above, the package needs to make sure to create this directory if necessary, as it will be flushed on every boot.</td></tr><tr><td align="left"><code class="filename">/var/cache/<em class="replaceable"><code>package</code></em></code></td><td align="left">Persistent cache data of the package. If this directory is flushed the application should work correctly on next invocation, though possibly slowed down due to the need to rebuild any local cache files. The application must be capable of recreating this directory should it be missing and necessary.</td></tr><tr><td align="left"><code class="filename">/var/lib/<em class="replaceable"><code>package</code></em></code></td><td align="left">Persistent private data of the package. This is the primary place to put persistent data that does not fall into the other categories listed. Packages should be able to create the necessary subdirectories in this tree on their own, since the directory might be missing on boot. Alternatively, a <a href="tmpfiles.d.html"><span class="citerefentry"><span class="refentrytitle">tmpfiles.d</span>(5)</span></a> fragment may be used to create the necessary directories during boot.</td></tr><tr><td align="left"><code class="filename">/var/log/<em class="replaceable"><code>package</code></em></code></td><td align="left">Persistent log data of the package. As above, the package should make sure to create this directory if necessary, as it might be missing.</td></tr><tr><td align="left"><code class="filename">/var/spool/<em class="replaceable"><code>package</code></em></code></td><td align="left">Persistent spool/queue data of the package. As above, the package should make sure to create this directory if necessary, as it might be missing.</td></tr></tbody></table></div></div><br class="table-break"></div><div class="refsect1"><a name="idm214173746304"></a><h2 id="User Packages">User Packages<a class="headerlink" title="Permalink to this headline" href="#User%20Packages">¶</a></h2><p>Programs running in user context should follow
+                strict rules when placing their own files in the
+                user's home directory. The following table lists
+                recommended locations in the home directory for
+                specific types of files supplied by the vendor if the
+                application is installed in the home directory. (Note
+                however, that user applications installed system-wide
+                should follow the rules outlined above regarding
+                placing vendor files.)</p><div class="table"><a name="idm214173744672"></a><p class="title"><b>Table 3. User Package Vendor File Locations</b></p><div class="table-contents"><table summary="User Package Vendor File Locations" border="1"><colgroup><col align="left" class="directory"><col align="left" class="purpose"></colgroup><thead><tr><th align="left">Directory</th><th align="left">Purpose</th></tr></thead><tbody><tr><td align="left"><code class="filename">~/.local/bin</code></td><td align="left">Package executables that shall appear in the <code class="varname">$PATH</code> executable search path. It is not recommended to place internal executables or executables that are not commonly invoked from the shell in this directory, such as daemon executables. As this directory is shared with most other packages of the user special care should be taken to pick unique names for files placed here, that are unlikely to clash with other package's files.</td></tr><tr><td align="left"><code class="filename">~/.local/lib/<em class="replaceable"><code>arch-id</code></em></code></td><td align="left">Public shared libraries of the package. As above, be careful with using too generic names, and pick unique names for your libraries to place here to avoid name clashes.</td></tr><tr><td align="left"><code class="filename">~/.local/lib/<em class="replaceable"><code>package</code></em></code></td><td align="left">Private, static vendor resources of the package, compatible wih any architecture, or any other kind of read-only vendor data.</td></tr><tr><td align="left"><code class="filename">~/.local/lib/<em class="replaceable"><code>arch-id</code></em>/<em class="replaceable"><code>package</code></em></code></td><td align="left">Private other vendor resources of the package that are architecture-specific and cannot be shared between architectures.</td></tr></tbody></table></div></div><br class="table-break"><p>Additional static vendor files may be installed
+                in the <code class="filename">~/.local/share</code> hierarchy,
+                to the locations defined by the various relevant
+                specifications.</p><p>During runtime and for local configuration and
+                state additional directories are defined:</p><div class="table"><a name="idm214173728816"></a><p class="title"><b>Table 4. User Package Variable File Locations</b></p><div class="table-contents"><table summary="User Package Variable File Locations" border="1"><colgroup><col align="left" class="directory"><col align="left" class="purpose"></colgroup><thead><tr><th align="left">Directory</th><th align="left">Purpose</th></tr></thead><tbody><tr><td align="left"><code class="filename">~/.config/<em class="replaceable"><code>package</code></em></code></td><td align="left">User-specific configuration and state for the package. It is required to default to safe fallbacks if this configuration is missing.</td></tr><tr><td align="left"><code class="filename"><code class="varname">$XDG_RUNTIME_DIR</code>/<em class="replaceable"><code>package</code></em></code></td><td align="left">User runtime data for the package.</td></tr><tr><td align="left"><code class="filename">~/.cache/<em class="replaceable"><code>package</code></em></code></td><td align="left">Persistent cache data of the package. If this directory is flushed the application should work correctly on next invocation, though possibly slowed down due to the need to rebuild any local cache files. The application must be capable of recreating this directory should it be missing and necessary.</td></tr></tbody></table></div></div><br class="table-break"></div><div class="refsect1"><a name="idm214173717072"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+                        <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
+                        <a href="hier.html"><span class="citerefentry"><span class="refentrytitle">hier</span>(7)</span></a>,
+                        <a href="systemd-path.html"><span class="citerefentry"><span class="refentrytitle">systemd-path</span>(1)</span></a>,
+                        <a href="systemd-efi-boot-generator.html"><span class="citerefentry"><span class="refentrytitle">systemd-efi-boot-generator</span>(8)</span></a>,
+                        <a href="sysctl.d.html"><span class="citerefentry"><span class="refentrytitle">sysctl.d</span>(5)</span></a>,
+                        <a href="tmpfiles.d.html"><span class="citerefentry"><span class="refentrytitle">tmpfiles.d</span>(5)</span></a>,
+                        <a href="pkg-config.html"><span class="citerefentry"><span class="refentrytitle">pkg-config</span>(1)</span></a>,
+                        <a href="systemd.unit.html"><span class="citerefentry"><span class="refentrytitle">systemd.unit</span>(5)</span></a>
+                </p></div></div></body></html>
diff --git a/man/file-hierarchy.xml b/man/file-hierarchy.xml
new file mode 100644 (file)
index 0000000..ed6e0e9
--- /dev/null
@@ -0,0 +1,975 @@
+<?xml version='1.0'?> <!--*-nxml-*-->
+<!DOCTYPE refentry PUBLIC "-//OASIS//DTD DocBook XML V4.2//EN"
+        "http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd">
+
+<!--
+  This file is part of systemd.
+
+  Copyright 2014 Lennart Poettering
+
+  systemd is free software; you can redistribute it and/or modify it
+  under the terms of the GNU Lesser General Public License as published by
+  the Free Software Foundation; either version 2.1 of the License, or
+  (at your option) any later version.
+
+  systemd is distributed in the hope that it will be useful, but
+  WITHOUT ANY WARRANTY; without even the implied warranty of
+  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+  Lesser General Public License for more details.
+
+  You should have received a copy of the GNU Lesser General Public License
+  along with systemd; If not, see <http://www.gnu.org/licenses/>.
+-->
+
+<refentry id="file-hierarchy">
+
+        <refentryinfo>
+                <title>file-hierarchy</title>
+                <productname>systemd</productname>
+
+                <authorgroup>
+                        <author>
+                                <contrib>Developer</contrib>
+                                <firstname>Lennart</firstname>
+                                <surname>Poettering</surname>
+                                <email>lennart@poettering.net</email>
+                        </author>
+                </authorgroup>
+        </refentryinfo>
+
+        <refmeta>
+                <refentrytitle>file-hierarchy</refentrytitle>
+                <manvolnum>7</manvolnum>
+        </refmeta>
+
+        <refnamediv>
+                <refname>file-hierarchy</refname>
+                <refpurpose>File system hierarchy overview</refpurpose>
+        </refnamediv>
+
+        <refsect1>
+                <title>Description</title>
+
+                <para>Operating systems using the
+                <citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry>
+                system and service manager are organized based on a
+                file system hierarchy inspired by UNIX, more
+                specifically the hierarchy described in the <ulink
+                url="http://refspecs.linuxfoundation.org/FHS_2.3/fhs-2.3.html">File
+                System Hierarchy</ulink> specification and
+                <citerefentry><refentrytitle>hier</refentrytitle><manvolnum>7</manvolnum></citerefentry>. This
+                manual page describes a more minimal, modernized
+                subset of these specifications that defines more
+                strictly the suggestions and restrictions systemd
+                makes on the file system hierarchy.</para>
+
+                <para>Many of the paths described here are queriable
+                with the
+                <citerefentry><refentrytitle>systemd-path</refentrytitle><manvolnum>1</manvolnum></citerefentry>
+                tool.</para>
+        </refsect1>
+
+        <refsect1>
+                <title>General Structure</title>
+
+                <variablelist>
+                        <varlistentry>
+                                <term><filename>/</filename></term>
+                                <listitem><para>The file system
+                                root. Usually writable, but this is
+                                not required. Possibly a temporary
+                                file system (<literal>tmpfs</literal>). Not shared with
+                                other hosts (unless read-only).
+                                </para></listitem>
+                        </varlistentry>
+
+                        <varlistentry>
+                                <term><filename>/boot</filename></term>
+                                <listitem><para>The boot partition
+                                used for bringing up the system. On
+                                EFI systems this is possibly the EFI
+                                System Partition, also see
+                                <citerefentry><refentrytitle>systemd-efi-boot-generator</refentrytitle><manvolnum>8</manvolnum></citerefentry>. This
+                                directory is usually strictly local
+                                to the host, and should be considered
+                                read-only, except when a new kernel or
+                                boot loader is installed. This
+                                directory only exists on systems that
+                                run on physical or emulated hardware
+                                that requires boot
+                                loaders.</para></listitem>
+                        </varlistentry>
+
+                        <varlistentry>
+                                <term><filename>/etc</filename></term>
+                                <listitem><para>System-specific
+                                configuration. This directory may or
+                                may not be read-only. Frequently, this
+                                directory is pre-populated with
+                                vendor-supplied configuration files,
+                                but applications should not make
+                                assumptions about this directory
+                                being fully populated or populated at
+                                all, and should fall back to defaults
+                                if configuration is missing.</para></listitem>
+                        </varlistentry>
+
+                        <varlistentry>
+                                <term><filename>/home</filename></term>
+                                <listitem><para>The location for
+                                normal user's home
+                                directories. Possibly shared with
+                                other systems, and never
+                                read-only. This directory should only
+                                be used for normal users, never for
+                                system users. This directory and
+                                possibly the directories contained
+                                within it might only become available
+                                or writable in late boot or even only
+                                after user authentication. This directory
+                                might be placed on limited-functionality
+                                network file systems, hence
+                                applications should not assume the
+                                full set of file API is available on
+                                this directory. Applications should
+                                generally not reference this directory
+                                directly, but via the per-user
+                                <varname>$HOME</varname> environment
+                                variable, or via the home directory
+                                field of the user
+                                database.</para></listitem>
+                        </varlistentry>
+
+                        <varlistentry>
+                                <term><filename>/root</filename></term>
+                                <listitem><para>The home directory of
+                                the root user. The root user's home
+                                directory is located outside of
+                                <filename>/home</filename> in order to
+                                make sure the root user may log in
+                                even without <filename>/home</filename>
+                                being available and
+                                mounted.</para></listitem>
+                        </varlistentry>
+
+                        <varlistentry>
+                                <term><filename>/srv</filename></term>
+                                <listitem><para>The place to store
+                                general server payload, managed by the
+                                administrator. No restrictions are
+                                made how this directory is organized
+                                internally. Generally writable, and
+                                possibly shared among systems. This
+                                directory might become available or
+                                writable only very late during
+                                boot.</para></listitem>
+                        </varlistentry>
+
+                        <varlistentry>
+                                <term><filename>/tmp</filename></term>
+                                <listitem><para>The place for small
+                                temporary files. This directory is
+                                usually mounted as
+                                a <literal>tmpfs</literal> instance, and
+                                should hence not be used for larger
+                                files. (Use
+                                <filename>/var/tmp</filename> for
+                                larger files.) Since the directory is
+                                accessible to other users of the
+                                system it is essential that this
+                                directory is only written to with the
+                                <citerefentry><refentrytitle>mkstemp</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
+                                <citerefentry><refentrytitle>mkdtemp</refentrytitle><manvolnum>3</manvolnum></citerefentry>
+                                and related calls. This directory is
+                                usually flushed at boot-up. Also,
+                                files that are not accessed within a
+                                certain time are usually automatically
+                                deleted. If applications find the
+                                environment variable
+                                <varname>$TMPDIR</varname> set they
+                                should prefer using the directory
+                                specified in it over directly
+                                referencing
+                                <filename>/tmp</filename> (see <citerefentry><refentrytitle>environ</refentrytitle><manvolnum>7</manvolnum></citerefentry> for details).</para></listitem>
+                        </varlistentry>
+
+                </variablelist>
+        </refsect1>
+
+        <refsect1>
+                <title>Runtime Data</title>
+
+                <variablelist>
+                        <varlistentry>
+                                <term><filename>/run</filename></term>
+                                <listitem><para>A
+                                <literal>tmpfs</literal> file system
+                                for system packages to place runtime
+                                data in. This directory is flushed on
+                                boot, and generally writable for
+                                privileged programs
+                                only. Always writable.</para></listitem>
+                        </varlistentry>
+
+                        <varlistentry>
+                                <term><filename>/run/log</filename></term>
+                                <listitem><para>Runtime system
+                                logs. System components may place
+                                private logs in this directory. Always
+                                writable, even when
+                                <filename>/var/log</filename> might
+                                not be accessible
+                                yet.</para></listitem>
+                        </varlistentry>
+
+                        <varlistentry>
+                                <term><filename>/run/user</filename></term>
+                                <listitem><para>Contains per-user
+                                runtime directories, each usually
+                                individually mounted
+                                <literal>tmpfs</literal>
+                                instances. Always writable, flushed at
+                                each reboot and when the user logs
+                                out. User code should not reference
+                                this directory directly, but via the
+                                <varname>$XDG_RUNTIME_DIR</varname>
+                                environment variable, as documented in
+                                the <ulink
+                                url="http://standards.freedesktop.org/basedir-spec/basedir-spec-latest.html">XDG
+                                Base Directory
+                                Specification</ulink>.</para></listitem>
+                        </varlistentry>
+                </variablelist>
+        </refsect1>
+
+        <refsect1>
+                <title>Vendor-supplied Operating System Resources</title>
+
+                <variablelist>
+
+                        <varlistentry>
+                                <term><filename>/usr</filename></term>
+                                <listitem><para>Vendor-supplied
+                                operating system resources. Usually
+                                read-only, but this is not
+                                required. Possibly shared between
+                                multiple hosts. This directory should
+                                not be modified by the administrator,
+                                except when installing or removing
+                                vendor-supplied
+                                packages.</para></listitem>
+                        </varlistentry>
+
+                        <varlistentry>
+                                <term><filename>/usr/bin</filename></term>
+                                <listitem><para>Binaries and
+                                executables for user commands, that
+                                shall appear in the
+                                <varname>$PATH</varname> search
+                                path. It is recommended not to place
+                                binaries in this directory that are
+                                not useful for invocation from a shell
+                                (such as daemon binaries); these
+                                should be placed in a subdirectory of
+                                <filename>/usr/lib</filename>
+                                instead.</para></listitem>
+                        </varlistentry>
+
+                        <varlistentry>
+                                <term><filename>/usr/include</filename></term>
+                                <listitem><para>C and C++ API header
+                                files of system
+                                libraries.</para></listitem>
+                        </varlistentry>
+
+                        <varlistentry>
+                                <term><filename>/usr/lib</filename></term>
+                                <listitem><para>Static, private vendor
+                                data that is compatible with all
+                                architectures (though not necessarily
+                                architecture-independent). Note that
+                                this includes internal executables or
+                                other binaries that are not regularly
+                                invoked from a shell. Such binaries
+                                may be for any architecture supported
+                                by the system. Do not place public
+                                libraries in this directory, use
+                                <varname>$libdir</varname> (see
+                                below), instead.</para></listitem>
+                        </varlistentry>
+
+                        <varlistentry>
+                                <term><filename>/usr/lib/<replaceable>arch-id</replaceable></filename></term>
+                                <listitem><para>Location for placing
+                                dynamic libraries, also called <varname>$libdir</varname>.
+                                The architecture identifier to use is defined on <ulink
+                                url="https://wiki.debian.org/Multiarch/Tuples">Multiarch Architecture Specifiers (Tuples)</ulink>
+                                list. Legacy locations of <varname>$libdir</varname> are
+                                <filename>/usr/lib</filename>,
+                                <filename>/usr/lib64</filename>.
+                                This directory should not
+                                be used for package-specific data,
+                                unless this data is
+                                architecture-dependent, too. To query
+                                <varname>$libdir</varname> for the
+                                primary architecture of the system,
+                                invoke:
+                                <programlisting># pkg-config --variable=libdir systemd</programlisting> or
+                                <programlisting># systemd-path system-library-arch</programlisting>
+                                </para></listitem>
+
+                        </varlistentry>
+
+                        <varlistentry>
+                                <term><filename>/usr/share</filename></term>
+                                <listitem><para>Resources shared
+                                between multiple packages, such as
+                                documentation, man pages, time zone
+                                information, fonts and other
+                                resources. Usually, the precise
+                                location and format of files stored
+                                below this directory is subject to
+                                specifications that ensure
+                                interoperability.</para></listitem>
+                        </varlistentry>
+
+                        <varlistentry>
+                                <term><filename>/usr/share/doc</filename></term>
+                                <listitem><para>Documentation for the
+                                operating system or system
+                                packages.</para></listitem>
+                        </varlistentry>
+
+                        <varlistentry>
+                                <term><filename>/usr/share/factory/etc</filename></term>
+                                <listitem><para>Repository for
+                                vendor-supplied default configuration
+                                files. This directory should be
+                                populated with pristine vendor versions
+                                of all configuration files that may be
+                                placed in
+                                <filename>/etc</filename>. This is
+                                useful to compare the local
+                                configuration of a system with vendor
+                                defaults and to populate the local
+                                configuration with
+                                defaults.</para></listitem>
+                        </varlistentry>
+
+                        <varlistentry>
+                                <term><filename>/usr/share/factory/var</filename></term>
+
+                                <listitem><para>Similar to
+                                <filename>/usr/share/factory/etc</filename>
+                                but for vendor versions of files in
+                                the variable, persistent data
+                                directory
+                                <filename>/var</filename>.</para></listitem>
+
+                        </varlistentry>
+                </variablelist>
+        </refsect1>
+
+        <refsect1>
+                <title>Persistent Variable System Data</title>
+
+                <variablelist>
+                        <varlistentry>
+                                <term><filename>/var</filename></term>
+                                <listitem><para>Persistent, variable
+                                system data. Must be writable. This
+                                directory might be pre-populated with
+                                vendor-supplied data, but applications
+                                should be able to reconstruct
+                                necessary files and directories in
+                                this subhierarchy should they be
+                                missing, as the system might start up
+                                without this directory being
+                                populated. Persistency is recommended,
+                                but optional, to support ephemeral
+                                systems. This directory might become
+                                available or writable only very late
+                                during boot. Components that are
+                                required to operate during early boot
+                                hence shall not unconditionally rely
+                                on this directory.</para></listitem>
+                        </varlistentry>
+
+                        <varlistentry>
+                                <term><filename>/var/cache</filename></term>
+                                <listitem><para>Persistent system
+                                cache data. System components may
+                                place non-essential data in this
+                                directory. Flushing this directory
+                                should have no effect on operation of
+                                programs, except for increased
+                                runtimes necessary to rebuild these
+                                caches.</para></listitem>
+                        </varlistentry>
+
+                        <varlistentry>
+                                <term><filename>/var/lib</filename></term>
+                                <listitem><para>Persistent system
+                                data. System components may
+                                place private data in this
+                                directory.</para></listitem>
+                        </varlistentry>
+
+                        <varlistentry>
+                                <term><filename>/var/log</filename></term>
+                                <listitem><para>Persistent system
+                                logs. System components may place
+                                private logs in this directory, though
+                                it is recommended to do most logging
+                                via the
+                                <citerefentry><refentrytitle>syslog</refentrytitle><manvolnum>3</manvolnum></citerefentry>
+                                and
+                                <citerefentry><refentrytitle>sd_journal_print</refentrytitle><manvolnum>3</manvolnum></citerefentry>
+                                calls.</para></listitem>
+                        </varlistentry>
+
+                        <varlistentry>
+                                <term><filename>/var/spool</filename></term>
+                                <listitem><para>Persistent system
+                                spool data, such as printer or mail
+                                queues.</para></listitem>
+                        </varlistentry>
+
+                        <varlistentry>
+                                <term><filename>/var/tmp</filename></term>
+                                <listitem><para>The place for larger
+                                and persistent temporary files. In
+                                contrast to <filename>/tmp</filename>
+                                this directory is usually mounted from
+                                a persistent physical file system and
+                                can thus accept larger files. (Use
+                                <filename>/tmp</filename> for smaller
+                                files.) This directory is generally
+                                not flushed at boot-up, but time-based
+                                cleanup of files that have not been
+                                accessed for a certain time is
+                                applied. The same security
+                                restrictions as with
+                                <filename>/tmp</filename> apply, and
+                                hence only
+                                <citerefentry><refentrytitle>mkstemp</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
+                                <citerefentry><refentrytitle>mkdtemp</refentrytitle><manvolnum>3</manvolnum></citerefentry>
+                                or similar calls should be used to
+                                make use of this directory. If
+                                applications find the environment
+                                variable <varname>$TMPDIR</varname>
+                                set they should prefer using the
+                                directory specified in it over
+                                directly referencing
+                                <filename>/var/tmp</filename> (see <citerefentry><refentrytitle>environ</refentrytitle><manvolnum>7</manvolnum></citerefentry> for details).
+                                </para></listitem>
+                        </varlistentry>
+
+                </variablelist>
+        </refsect1>
+
+        <refsect1>
+                <title>Virtual Kernel and API File Systems</title>
+
+                <variablelist>
+                        <varlistentry>
+                                <term><filename>/dev</filename></term>
+                                <listitem><para>The root directory for
+                                device nodes. Usually this directory
+                                is mounted as a
+                                <literal>devtmpfs</literal> instance,
+                                but might be of a different type in
+                                sandboxed/containerized setups. This
+                                directory is managed jointly by the
+                                kernel and
+                                <citerefentry><refentrytitle>systemd-udevd</refentrytitle><manvolnum>8</manvolnum></citerefentry>,
+                                and should not be written to by other
+                                components. A number of special
+                                purpose virtual file systems might be
+                                mounted below this
+                                directory.</para></listitem>
+                        </varlistentry>
+
+                        <varlistentry>
+                                <term><filename>/dev/shm</filename></term>
+                                <listitem><para>Place for POSIX shared
+                                memory segments, as created via
+                                <citerefentry><refentrytitle>shm_open</refentrytitle><manvolnum>3</manvolnum></citerefentry>. This
+                                directory is flushed on boot, and is a
+                                <literal>tmpfs</literal> file
+                                system. Since all users have write
+                                access to this directory, special care
+                                should be taken to avoid name clashes
+                                and vulnerabilities. For normal users,
+                                shared memory segments in this
+                                directory are usually deleted when the
+                                user logs out. Usually it is a better
+                                idea to use memory mapped files in
+                                <filename>/run</filename> (for system
+                                programs) or
+                                <varname>$XDG_RUNTIME_DIR</varname>
+                                (for user programs) instead of POSIX
+                                shared memory segments, since those
+                                directories are not world-writable and
+                                hence not vulnerable to
+                                security-sensitive name
+                                clashes.</para></listitem>
+                        </varlistentry>
+
+                        <varlistentry>
+                                <term><filename>/proc</filename></term>
+                                <listitem><para>A virtual kernel file
+                                system exposing the process list and
+                                other functionality. This file system
+                                is mostly an API to interface with the
+                                kernel and not a place where normal
+                                files may be stored. For details, see
+                                <citerefentry><refentrytitle>proc</refentrytitle><manvolnum>5</manvolnum></citerefentry>. A
+                                number of special purpose virtual file
+                                systems might be mounted below this
+                                directory.</para></listitem>
+                        </varlistentry>
+
+                        <varlistentry>
+                                <term><filename>/proc/sys</filename></term>
+                                <listitem><para>A hierarchy below
+                                <filename>/proc</filename> that
+                                exposes a number of kernel
+                                tunables. The primary way to configure
+                                the settings in this API file tree is
+                                via
+                                <citerefentry><refentrytitle>sysctl.d</refentrytitle><manvolnum>5</manvolnum></citerefentry>
+                                files. In sandboxed/containerized
+                                setups this directory is generally
+                                mounted read-only.</para></listitem>
+                        </varlistentry>
+
+                        <varlistentry>
+                                <term><filename>/sys</filename></term>
+                                <listitem><para>A virtual kernel file
+                                system exposing discovered devices and
+                                other functionality. This file system
+                                is mostly an API to interface with the
+                                kernel and not a place where normal
+                                files may be stored. In
+                                sandboxed/containerized setups this
+                                directory is generally mounted
+                                read-only. A number of special purpose
+                                virtual file systems might be mounted
+                                below this
+                                directory.</para></listitem>
+                        </varlistentry>
+
+
+                </variablelist>
+        </refsect1>
+
+        <refsect1>
+                <title>Compatibility Symlinks</title>
+
+                <variablelist>
+                        <varlistentry>
+                                <term><filename>/bin</filename></term>
+                                <term><filename>/sbin</filename></term>
+                                <term><filename>/usr/sbin</filename></term>
+
+                                <listitem><para>These compatibility
+                                symlinks point to
+                                <filename>/usr/bin</filename>,
+                                ensuring that scripts and binaries
+                                referencing these legacy paths
+                                correctly find their binaries.</para></listitem>
+                        </varlistentry>
+
+                        <varlistentry>
+                                <term><filename>/lib</filename></term>
+
+                                <listitem><para>This compatibility
+                                symlink points to
+                                <filename>/usr/lib</filename>,
+                                ensuring that programs referencing
+                                this legacy path correctly find
+                                their resources.</para></listitem>
+                        </varlistentry>
+
+                        <varlistentry>
+                                <term><filename>/lib64</filename></term>
+
+                                <listitem><para>On some architecture
+                                ABIs this compatibility symlink points
+                                to <varname>$libdir</varname>,
+                                ensuring that binaries referencing
+                                this legacy path correctly find their
+                                dynamic loader. This symlink only
+                                exists on architectures whose ABI
+                                places the dynamic loader in this
+                                path.</para></listitem>
+                        </varlistentry>
+
+                        <varlistentry>
+                                <term><filename>/var/run</filename></term>
+
+                                <listitem><para>This compatibility
+                                symlink points to
+                                <filename>/run</filename>, ensuring
+                                that programs referencing this legacy
+                                path correctly find their runtime
+                                data.</para></listitem>
+                        </varlistentry>
+
+                </variablelist>
+        </refsect1>
+
+        <refsect1>
+                <title>Home Directory</title>
+
+                <para>User applications may want to place files and
+                directories in the user's home directory. They should
+                follow the following basic structure. Note that some
+                of these directories are also standardized (though
+                more weakly) by the <ulink
+                url="http://standards.freedesktop.org/basedir-spec/basedir-spec-latest.html">XDG
+                Base Directory Specification</ulink>. Additional
+                locations for high-level user resources are defined by
+                <ulink
+                url="http://www.freedesktop.org/wiki/Software/xdg-user-dirs/">xdg-user-dirs</ulink>.</para>
+
+                <variablelist>
+                        <varlistentry>
+                                <term><filename>~/.cache</filename></term>
+
+                                <listitem><para>Persistent user cache
+                                data. User programs may place
+                                non-essential data in this
+                                directory. Flushing this directory
+                                should have no effect on operation of
+                                programs, except for increased
+                                runtimes necessary to rebuild these
+                                caches. If an application finds
+                                <varname>$XDG_CACHE_HOME</varname> set
+                                is should use the directory specified
+                                in it instead of this
+                                directory.</para></listitem>
+                        </varlistentry>
+
+                        <varlistentry>
+                                <term><filename>~/.config</filename></term>
+
+                                <listitem><para>Application
+                                configuration and state. When a new
+                                user is created this directory will be
+                                empty or not exist at
+                                all. Applications should fall back to
+                                defaults should their configuration or
+                                state in this directory be missing. If
+                                an application finds
+                                <varname>$XDG_CONFIG_HOME</varname> set
+                                is should use the directory specified
+                                in it instead of this
+                                directory.</para></listitem>
+                        </varlistentry>
+
+                        <varlistentry>
+                                <term><filename>~/.local/bin</filename></term>
+
+                                <listitem><para>Executables that shall
+                                appear in the user's
+                                <varname>$PATH</varname> search
+                                path. It is recommended not to place
+                                executables in this directory that are
+                                not useful for invocation from a
+                                shell; these should be placed in a
+                                subdirectory of
+                                <filename>~/.local/lib</filename>
+                                instead. Care should be taken when
+                                placing architecture-dependent
+                                binaries in this place which might be
+                                problematic if the home directory is
+                                shared between multiple hosts with
+                                different
+                                architectures.</para></listitem>
+                        </varlistentry>
+
+                        <varlistentry>
+                                <term><filename>~/.local/lib</filename></term>
+
+                                <listitem><para>Static, private vendor
+                                data that is compatible with all
+                                architectures.</para></listitem>
+                        </varlistentry>
+
+                        <varlistentry>
+                                <term><filename>~/.local/lib/<replaceable>arch-id</replaceable></filename></term>
+
+                                <listitem><para>Location for placing
+                                public dynamic libraries. The architecture
+                                identifier to use, is defined on <ulink
+                                url="https://wiki.debian.org/Multiarch/Tuples">Multiarch Architecture Specifiers (Tuples)</ulink>
+                                list.</para></listitem>
+                        </varlistentry>
+
+                        <varlistentry>
+                                <term><filename>~/.local/share</filename></term>
+
+                                <listitem><para>Resources shared
+                                between multiple packages, such as
+                                fonts or artwork. Usually, the precise
+                                location and format of files stored
+                                below this directory is subject to
+                                specifications that ensure
+                                interoperability. If
+                                an application finds
+                                <varname>$XDG_DATA_HOME</varname> set
+                                is should use the directory specified
+                                in it instead of this
+                                directory.</para></listitem>
+                        </varlistentry>
+
+                </variablelist>
+        </refsect1>
+
+
+        <refsect1>
+                <title>Unprivileged Write Access</title>
+
+                <para>Unprivileged processes generally lack
+                write access to most of the hierarchy.</para>
+
+                <para>The exceptions for normal users are
+                <filename>/tmp</filename>,
+                <filename>/var/tmp</filename>,
+                <filename>/dev/shm</filename>, as well as the home
+                directory <varname>$HOME</varname> (usually found
+                below <filename>/home</filename>) and the runtime
+                directory <varname>$XDG_RUNTIME_DIR</varname> (found
+                below <filename>/run/user</filename>) of the
+                user, which are all writable.</para>
+
+                <para>For unprivileged system processes only
+                <filename>/tmp</filename>,
+                <filename>/var/tmp</filename> and
+                <filename>/dev/shm</filename> are writable. If an
+                unprivileged system process needs a private, writable
+                directory in <filename>/var</filename> or
+                <filename>/run</filename>, it is recommended to either
+                create it before dropping privileges in the daemon
+                code, to create it via
+                <citerefentry><refentrytitle>tmpfiles.d</refentrytitle><manvolnum>5</manvolnum></citerefentry>
+                fragments during boot, or via the
+                <varname>RuntimeDirectory=</varname> directive of
+                service units (see
+                <citerefentry><refentrytitle>systemd.unit</refentrytitle><manvolnum>5</manvolnum></citerefentry>
+                for details).</para>
+        </refsect1>
+
+        <refsect1>
+                <title>Node Types</title>
+
+                <para>Unix file systems support different types of file
+                nodes, including regular files, directories, symlinks,
+                character and block device nodes, sockets and FIFOs.</para>
+
+                <para>It is strongly recommended that
+                <filename>/dev</filename> is the only location below
+                which device nodes shall be placed. Similar,
+                <filename>/run</filename> shall be the only location
+                to place sockets and FIFOs. Regular files,
+                directories and symlinks may be used in all
+                directories.</para>
+        </refsect1>
+
+        <refsect1>
+                <title>System Packages</title>
+
+                <para>Developers of system packages should follow
+                strict rules when placing their own files in the file
+                system. The following table lists recommended
+                locations for specific types of files supplied by the
+                vendor.</para>
+
+                <table>
+                  <title>System Package Vendor Files Locations</title>
+                  <tgroup cols='2' align='left' colsep='1' rowsep='1'>
+                    <colspec colname="directory" />
+                    <colspec colname="purpose" />
+                    <thead>
+                      <row>
+                        <entry>Directory</entry>
+                        <entry>Purpose</entry>
+                      </row>
+                    </thead>
+                    <tbody>
+                      <row>
+                        <entry><filename>/usr/bin</filename></entry>
+                        <entry>Package executables that shall appear in the <varname>$PATH</varname> executable search path, compiled for any of the supported architectures compatible with the operating system. It is not recommended to place internal binaries or binaries that are not commonly invoked from the shell in this directory, such as daemon binaries. As this directory is shared with most other packages of the system special care should be taken to pick unique names for files placed here, that are unlikely to clash with other package's files.</entry>
+                      </row>
+                      <row>
+                        <entry><filename>/usr/lib/<replaceable>arch-id</replaceable></filename></entry>
+                        <entry>Public shared libraries of the package. As above, be careful with using too generic names, and pick unique names for your libraries to place here to avoid name clashes.</entry>
+                      </row>
+                      <row>
+                        <entry><filename>/usr/lib/<replaceable>package</replaceable></filename></entry>
+                        <entry>Private, static vendor resources of the package, including private binaries and libraries, or any other kind of read-only vendor data.</entry>
+                      </row>
+                      <row>
+                        <entry><filename>/usr/lib/<replaceable>arch-id</replaceable>/<replaceable>package</replaceable></filename></entry>
+                        <entry>Private other vendor resources of the package that are architecture-specific and cannot be shared between architectures. Note that this generally does not include private executables since binaries of a specific architecture may be freely invoked from any other supported system architecture.</entry>
+                      </row>
+                      <row>
+                        <entry><filename>/usr/include/<replaceable>package</replaceable></filename></entry>
+                        <entry>Public C/C++ APIs of public shared libraries of the package.</entry>
+                      </row>
+                    </tbody>
+                  </tgroup>
+                </table>
+
+                <para>Additional static vendor files may be installed
+                in the <filename>/usr/share</filename> hierarchy, to
+                the locations defined by the various relevant
+                specifications.</para>
+
+                <para>During runtime and for local configuration and
+                state additional directories are defined:</para>
+
+                <table>
+                  <title>System Package Variable Files Locations</title>
+                  <tgroup cols='2' align='left' colsep='1' rowsep='1'>
+                    <colspec colname="directory" />
+                    <colspec colname="purpose" />
+                    <thead>
+                      <row>
+                        <entry>Directory</entry>
+                        <entry>Purpose</entry>
+                      </row>
+                    </thead>
+                    <tbody>
+                      <row>
+                        <entry><filename>/etc/<replaceable>package</replaceable></filename></entry>
+                        <entry>System-specific configuration for the package. It is recommended to default to safe fallbacks if this configuration is missing, if this is possible. Alternatively, a <citerefentry><refentrytitle>tmpfiles.d</refentrytitle><manvolnum>5</manvolnum></citerefentry> fragment may be used to copy or symlink the necessary files and directories from <filename>/usr/share/factory</filename> during boot, via the <literal>L</literal> or <literal>C</literal> directives.</entry>
+                      </row>
+                      <row>
+                        <entry><filename>/run/<replaceable>package</replaceable></filename></entry>
+                        <entry>Runtime data for the package. Packages must be able to create the necessary subdirectories in this tree on their own, since the directory is flushed automatically on boot. Alternatively, a <citerefentry><refentrytitle>tmpfiles.d</refentrytitle><manvolnum>5</manvolnum></citerefentry> fragment may be used to create the necessary directories during boot. Alternatively, the <varname>RuntimeDirectory=</varname> directive of service units may be used (see <citerefentry><refentrytitle>systemd.unit</refentrytitle><manvolnum>5</manvolnum></citerefentry> for details.)</entry>
+                      </row>
+                      <row>
+                        <entry><filename>/run/log/<replaceable>package</replaceable></filename></entry>
+                        <entry>Runtime log data for the package. As above, the package needs to make sure to create this directory if necessary, as it will be flushed on every boot.</entry>
+                      </row>
+                      <row>
+                        <entry><filename>/var/cache/<replaceable>package</replaceable></filename></entry>
+                        <entry>Persistent cache data of the package. If this directory is flushed the application should work correctly on next invocation, though possibly slowed down due to the need to rebuild any local cache files. The application must be capable of recreating this directory should it be missing and necessary.</entry>
+                      </row>
+                      <row>
+                        <entry><filename>/var/lib/<replaceable>package</replaceable></filename></entry>
+                        <entry>Persistent private data of the package. This is the primary place to put persistent data that does not fall into the other categories listed. Packages should be able to create the necessary subdirectories in this tree on their own, since the directory might be missing on boot. Alternatively, a <citerefentry><refentrytitle>tmpfiles.d</refentrytitle><manvolnum>5</manvolnum></citerefentry> fragment may be used to create the necessary directories during boot.</entry>
+                      </row>
+                      <row>
+                        <entry><filename>/var/log/<replaceable>package</replaceable></filename></entry>
+                        <entry>Persistent log data of the package. As above, the package should make sure to create this directory if necessary, as it might be missing.</entry>
+                      </row>
+                      <row>
+                        <entry><filename>/var/spool/<replaceable>package</replaceable></filename></entry>
+                        <entry>Persistent spool/queue data of the package. As above, the package should make sure to create this directory if necessary, as it might be missing.</entry>
+                      </row>
+                    </tbody>
+                  </tgroup>
+                </table>
+        </refsect1>
+
+        <refsect1>
+                <title>User Packages</title>
+
+                <para>Programs running in user context should follow
+                strict rules when placing their own files in the
+                user's home directory. The following table lists
+                recommended locations in the home directory for
+                specific types of files supplied by the vendor if the
+                application is installed in the home directory. (Note
+                however, that user applications installed system-wide
+                should follow the rules outlined above regarding
+                placing vendor files.)</para>
+
+                <table>
+                  <title>User Package Vendor File Locations</title>
+                  <tgroup cols='2' align='left' colsep='1' rowsep='1'>
+                    <colspec colname="directory" />
+                    <colspec colname="purpose" />
+                    <thead>
+                      <row>
+                        <entry>Directory</entry>
+                        <entry>Purpose</entry>
+                      </row>
+                    </thead>
+                    <tbody>
+                      <row>
+                        <entry><filename>~/.local/bin</filename></entry>
+                        <entry>Package executables that shall appear in the <varname>$PATH</varname> executable search path. It is not recommended to place internal executables or executables that are not commonly invoked from the shell in this directory, such as daemon executables. As this directory is shared with most other packages of the user special care should be taken to pick unique names for files placed here, that are unlikely to clash with other package's files.</entry>
+                      </row>
+                      <row>
+                        <entry><filename>~/.local/lib/<replaceable>arch-id</replaceable></filename></entry>
+                        <entry>Public shared libraries of the package. As above, be careful with using too generic names, and pick unique names for your libraries to place here to avoid name clashes.</entry>
+                      </row>
+                      <row>
+                        <entry><filename>~/.local/lib/<replaceable>package</replaceable></filename></entry>
+                        <entry>Private, static vendor resources of the package, compatible wih any architecture, or any other kind of read-only vendor data.</entry>
+                      </row>
+                      <row>
+                        <entry><filename>~/.local/lib/<replaceable>arch-id</replaceable>/<replaceable>package</replaceable></filename></entry>
+                        <entry>Private other vendor resources of the package that are architecture-specific and cannot be shared between architectures.</entry>
+                      </row>
+                    </tbody>
+                  </tgroup>
+                </table>
+
+                <para>Additional static vendor files may be installed
+                in the <filename>~/.local/share</filename> hierarchy,
+                to the locations defined by the various relevant
+                specifications.</para>
+
+                <para>During runtime and for local configuration and
+                state additional directories are defined:</para>
+
+                <table>
+                  <title>User Package Variable File Locations</title>
+                  <tgroup cols='2' align='left' colsep='1' rowsep='1'>
+                    <colspec colname="directory" />
+                    <colspec colname="purpose" />
+                    <thead>
+                      <row>
+                        <entry>Directory</entry>
+                        <entry>Purpose</entry>
+                      </row>
+                    </thead>
+                    <tbody>
+                      <row>
+                        <entry><filename>~/.config/<replaceable>package</replaceable></filename></entry>
+                        <entry>User-specific configuration and state for the package. It is required to default to safe fallbacks if this configuration is missing.</entry>
+                      </row>
+                      <row>
+                        <entry><filename><varname>$XDG_RUNTIME_DIR</varname>/<replaceable>package</replaceable></filename></entry>
+                        <entry>User runtime data for the package.</entry>
+                      </row>
+                      <row>
+                        <entry><filename>~/.cache/<replaceable>package</replaceable></filename></entry>
+                        <entry>Persistent cache data of the package. If this directory is flushed the application should work correctly on next invocation, though possibly slowed down due to the need to rebuild any local cache files. The application must be capable of recreating this directory should it be missing and necessary.</entry>
+                      </row>
+                    </tbody>
+                  </tgroup>
+                </table>
+        </refsect1>
+
+        <refsect1>
+                <title>See Also</title>
+                <para>
+                        <citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
+                        <citerefentry><refentrytitle>hier</refentrytitle><manvolnum>7</manvolnum></citerefentry>,
+                        <citerefentry><refentrytitle>systemd-path</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
+                        <citerefentry><refentrytitle>systemd-efi-boot-generator</refentrytitle><manvolnum>8</manvolnum></citerefentry>,
+                        <citerefentry><refentrytitle>sysctl.d</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
+                        <citerefentry><refentrytitle>tmpfiles.d</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
+                        <citerefentry><refentrytitle>pkg-config</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
+                        <citerefentry><refentrytitle>systemd.unit</refentrytitle><manvolnum>5</manvolnum></citerefentry>
+                </para>
+        </refsect1>
+
+</refentry>
index c9ab93827695a2580a8ff07a480aff6d071b8e90..676ed9574d0bc31aa0995e56b1d9ed8e54ae825e 100644 (file)
@@ -1,5 +1,5 @@
 '\" t
-.TH "HALT" "8" "" "systemd 214" "halt"
+.TH "HALT" "8" "" "systemd 215" "halt"
 .\" -----------------------------------------------------------------
 .\" * Define some portability stuff
 .\" -----------------------------------------------------------------
index 73dc205e37a7d7839145aafa5a407ad4401ab55f..642c4567ec43dcf3a81c891f55a20411cb69dc12 100644 (file)
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="halt"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>halt, poweroff, reboot — Halt, power-off or reboot the machine</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="cmdsynopsis"><p><code class="command">halt [OPTIONS...]</code> </p></div><div class="cmdsynopsis"><p><code class="command">poweroff [OPTIONS...]</code> </p></div><div class="cmdsynopsis"><p><code class="command">reboot [OPTIONS...]</code> </p></div></div><div class="refsect1"><a name="idm214181158752"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><span class="command"><strong>halt</strong></span>,
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="halt"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>halt, poweroff, reboot — Halt, power-off or reboot the machine</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="cmdsynopsis"><p><code class="command">halt [OPTIONS...]</code> </p></div><div class="cmdsynopsis"><p><code class="command">poweroff [OPTIONS...]</code> </p></div><div class="cmdsynopsis"><p><code class="command">reboot [OPTIONS...]</code> </p></div></div><div class="refsect1"><a name="idm214185642768"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><span class="command"><strong>halt</strong></span>,
                 <span class="command"><strong>poweroff</strong></span>, <span class="command"><strong>reboot</strong></span>
                 may be used to halt, power-off or reboot the
-                machine.</p></div><div class="refsect1"><a name="idm214181155552"></a><h2 id="Options">Options<a class="headerlink" title="Permalink to this headline" href="#Options">¶</a></h2><p>The following options are understood:</p><div class="variablelist"><dl class="variablelist"><dt id="--help"><span class="term"><code class="option">--help</code></span><a class="headerlink" title="Permalink to this term" href="#--help">¶</a></dt><dd><p><a name="help-text"></a>Print a short help text and exit.
+                machine.</p></div><div class="refsect1"><a name="idm214186089440"></a><h2 id="Options">Options<a class="headerlink" title="Permalink to this headline" href="#Options">¶</a></h2><p>The following options are understood:</p><div class="variablelist"><dl class="variablelist"><dt id="--help"><span class="term"><code class="option">--help</code></span><a class="headerlink" title="Permalink to this term" href="#--help">¶</a></dt><dd><p><a name="help-text"></a>Print a short help text and exit.
     </p></dd><dt id="--halt"><span class="term"><code class="option">--halt</code></span><a class="headerlink" title="Permalink to this term" href="#--halt">¶</a></dt><dd><p>Halt the machine,
                                 regardless of which one of the three
                                 commands is invoked.</p></dd><dt id="-p"><span class="term"><code class="option">-p</code>, </span><span class="term"><code class="option">--poweroff</code></span><a class="headerlink" title="Permalink to this term" href="#-p">¶</a></dt><dd><p>Power-off the machine,
@@ -36,9 +36,9 @@
                                 power-off, reboot.</p></dd><dt id="-d"><span class="term"><code class="option">-d</code>, </span><span class="term"><code class="option">--no-wtmp</code></span><a class="headerlink" title="Permalink to this term" href="#-d">¶</a></dt><dd><p>Do not write wtmp
                                 shutdown entry.</p></dd><dt id="--no-wall"><span class="term"><code class="option">--no-wall</code></span><a class="headerlink" title="Permalink to this term" href="#--no-wall">¶</a></dt><dd><p>Do not send wall
                                 message before
-                                halt, power-off, reboot.</p></dd></dl></div></div><div class="refsect1"><a name="idm214185040240"></a><h2 id="Exit status">Exit status<a class="headerlink" title="Permalink to this headline" href="#Exit%20status">¶</a></h2><p>On success, 0 is returned, a non-zero failure
-                code otherwise.</p></div><div class="refsect1"><a name="idm214185039056"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p>These are legacy commands available for
-                compatibility only.</p></div><div class="refsect1"><a name="idm214185037776"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+                                halt, power-off, reboot.</p></dd></dl></div></div><div class="refsect1"><a name="idm214183375264"></a><h2 id="Exit status">Exit status<a class="headerlink" title="Permalink to this headline" href="#Exit%20status">¶</a></h2><p>On success, 0 is returned, a non-zero failure
+                code otherwise.</p></div><div class="refsect1"><a name="idm214184284480"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p>These are legacy commands available for
+                compatibility only.</p></div><div class="refsect1"><a name="idm214184877296"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
                         <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
                         <a href="systemctl.html"><span class="citerefentry"><span class="refentrytitle">systemctl</span>(1)</span></a>,
                         <a href="shutdown.html"><span class="citerefentry"><span class="refentrytitle">shutdown</span>(8)</span></a>,
index d74fd2fcb0ca160c857acc1173e95b08e3ba5a7a..c8cf1e6ffcd2a4b36f628e44a65740ec0543b0e7 100644 (file)
@@ -1,5 +1,5 @@
 '\" t
-.TH "HOSTNAME" "5" "" "systemd 214" "hostname"
+.TH "HOSTNAME" "5" "" "systemd 215" "hostname"
 .\" -----------------------------------------------------------------
 .\" * Define some portability stuff
 .\" -----------------------------------------------------------------
index e860c24153d532e64cb896e25e1fe757999ee746..faacc62cec7366ebeb853dc0b29279c8b5d61aaa 100644 (file)
@@ -19,7 +19,7 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="hostname"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>hostname — Local hostname configuration file</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><p><code class="filename">/etc/hostname</code></p></div><div class="refsect1"><a name="idm214180664576"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p>The <code class="filename">/etc/hostname</code> file
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="hostname"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>hostname — Local hostname configuration file</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><p><code class="filename">/etc/hostname</code></p></div><div class="refsect1"><a name="idm214180092048"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p>The <code class="filename">/etc/hostname</code> file
                 configures the name of the local system that is set
                 during boot using the
                 <a href="sethostname.html"><span class="citerefentry"><span class="refentrytitle">sethostname</span>(2)</span></a>
@@ -35,9 +35,9 @@
                 of the hostname as well, however only as fallback.</p><p>You may use
                 <a href="hostnamectl.html"><span class="citerefentry"><span class="refentrytitle">hostnamectl</span>(1)</span></a>
                 to change the value of this file from the command
-                line.</p></div><div class="refsect1"><a name="idm214180659472"></a><h2 id="History">History<a class="headerlink" title="Permalink to this headline" href="#History">¶</a></h2><p>The simple configuration file format of
+                line.</p></div><div class="refsect1"><a name="idm214181007760"></a><h2 id="History">History<a class="headerlink" title="Permalink to this headline" href="#History">¶</a></h2><p>The simple configuration file format of
                 <code class="filename">/etc/hostname</code> originates from
-                Debian GNU/Linux.</p></div><div class="refsect1"><a name="idm214180657712"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+                Debian GNU/Linux.</p></div><div class="refsect1"><a name="idm214180591920"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
                           <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
                           <a href="sethostname.html"><span class="citerefentry"><span class="refentrytitle">sethostname</span>(2)</span></a>,
                           <a href="hostname.html"><span class="citerefentry"><span class="refentrytitle">hostname</span>(1)</span></a>,
index e7e9079f0a43561025b1318c11c1aad711552fa0..16454eb88287cb7814214e6e144bb185df674d43 100644 (file)
@@ -1,5 +1,5 @@
 '\" t
-.TH "HOSTNAMECTL" "1" "" "systemd 214" "hostnamectl"
+.TH "HOSTNAMECTL" "1" "" "systemd 215" "hostnamectl"
 .\" -----------------------------------------------------------------
 .\" * Define some portability stuff
 .\" -----------------------------------------------------------------
@@ -29,7 +29,7 @@ hostnamectl \- Control the system hostname
 \fBhostnamectl\fR
 may be used to query and change the system hostname and related settings\&.
 .PP
-This tool distinguishes three different hostnames: the high\-level "pretty" hostname which might include all kinds of special characters (e\&.g\&. "Lennart\*(Aqs Laptop"), the static hostname which is used to initialize the kernel hostname at boot (e\&.g\&. "lennarts\-laptop"), and the transient hostname which is a default received from network configuration\&. If a static hostname is set, and is valid (something other than localhost) then the transient hostname is not used\&.
+This tool distinguishes three different hostnames: the high\-level "pretty" hostname which might include all kinds of special characters (e\&.g\&. "Lennart\*(Aqs Laptop"), the static hostname which is used to initialize the kernel hostname at boot (e\&.g\&. "lennarts\-laptop"), and the transient hostname which is a default received from network configuration\&. If a static hostname is set, and is valid (something other than localhost), then the transient hostname is not used\&.
 .PP
 Note that the pretty hostname has little restrictions on the characters used, while the static and transient hostnames are limited to the usually accepted characters of Internet domain names\&.
 .PP
@@ -67,8 +67,10 @@ If used with
 .PP
 \fB\-H\fR, \fB\-\-host=\fR
 .RS 4
-Execute the operation remotely\&. Specify a hostname, or username and hostname separated by
-"@", to connect to\&. This will use SSH to talk to the remote machine manager instance\&.
+Execute the operation remotely\&. Specify a hostname, or a username and hostname separated by
+"@", to connect to\&. The hostname may optionally be suffixed by a container name, separated by
+":", which connects directly to a specific container on the specified host\&. This will use SSH to talk to the remote machine manager instance\&. Container names may be enumerated with
+\fBmachinectl \-H \fR\fB\fIHOST\fR\fR\&.
 .RE
 .PP
 \fB\-h\fR, \fB\-\-help\fR
index 7f03ce91aa59470618ae82ad00f249ab14cb767d..65440d530a4ef675515200af8116d989ae8ce087 100644 (file)
@@ -19,7 +19,7 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="hostnamectl"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>hostnamectl — Control the system hostname</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="cmdsynopsis"><p><code class="command">hostnamectl</code>  [OPTIONS...] {COMMAND}</p></div></div><div class="refsect1"><a name="idm214193019328"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><span class="command"><strong>hostnamectl</strong></span> may be used to
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="hostnamectl"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>hostnamectl — Control the system hostname</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="cmdsynopsis"><p><code class="command">hostnamectl</code>  [OPTIONS...] {COMMAND}</p></div></div><div class="refsect1"><a name="idm214197136464"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><span class="command"><strong>hostnamectl</strong></span> may be used to
                 query and change the system hostname and related
                 settings.</p><p>This tool distinguishes three different
                 hostnames: the high-level "pretty" hostname which
@@ -29,7 +29,7 @@
                 (e.g. "lennarts-laptop"), and the transient hostname
                 which is a default received from network configuration.
                 If a static hostname is set, and is valid (something other
-                than localhost) then the transient hostname is not used.</p><p>Note that the pretty hostname has little
+                than localhost), then the transient hostname is not used.</p><p>Note that the pretty hostname has little
                 restrictions on the characters used, while the static
                 and transient hostnames are limited to the usually
                 accepted characters of Internet domain names.</p><p>The static hostname is stored in
@@ -38,7 +38,7 @@
                 for more information. The pretty hostname, chassis
                 type, and icon name are stored in
                 <code class="filename">/etc/machine-info</code>, see
-                <a href="machine-id.html"><span class="citerefentry"><span class="refentrytitle">machine-id</span>(5)</span></a>.</p></div><div class="refsect1"><a name="idm214189203776"></a><h2 id="Options">Options<a class="headerlink" title="Permalink to this headline" href="#Options">¶</a></h2><p>The following options are understood:</p><div class="variablelist"><dl class="variablelist"><dt id="--no-ask-password"><span class="term"><code class="option">--no-ask-password</code></span><a class="headerlink" title="Permalink to this term" href="#--no-ask-password">¶</a></dt><dd><p>Do not query the user
+                <a href="machine-id.html"><span class="citerefentry"><span class="refentrytitle">machine-id</span>(5)</span></a>.</p></div><div class="refsect1"><a name="idm214193390992"></a><h2 id="Options">Options<a class="headerlink" title="Permalink to this headline" href="#Options">¶</a></h2><p>The following options are understood:</p><div class="variablelist"><dl class="variablelist"><dt id="--no-ask-password"><span class="term"><code class="option">--no-ask-password</code></span><a class="headerlink" title="Permalink to this term" href="#--no-ask-password">¶</a></dt><dd><p>Do not query the user
                                 for authentication for privileged
                                 operations.</p></dd><dt id="-P"><span class="term"><code class="option">-P</code>, </span><span class="term"><code class="option">--privileged</code></span><a class="headerlink" title="Permalink to this term" href="#-P">¶</a></dt><dd><p>Acquire privileges via PolicyKit
                                 before executing the operation.</p></dd><dt id="--static"><span class="term"><code class="option">--static</code>, </span><span class="term"><code class="option">--transient</code>, </span><span class="term"><code class="option">--pretty</code></span><a class="headerlink" title="Permalink to this term" href="#--static">¶</a></dt><dd><p>If
                                 updated. When more than one of those
                                 options is used, all the specified
                                 hostnames will be updated.
-                                </p></dd><dt id="-H"><span class="term"><code class="option">-H</code>, </span><span class="term"><code class="option">--host=</code></span><a class="headerlink" title="Permalink to this term" href="#-H">¶</a></dt><dd><p><a name="host-text"></a>Execute the operation remotely. Specify a hostname, or
+                                </p></dd><dt id="-H"><span class="term"><code class="option">-H</code>, </span><span class="term"><code class="option">--host=</code></span><a class="headerlink" title="Permalink to this term" href="#-H">¶</a></dt><dd><p><a name="host-text"></a>Execute the operation remotely. Specify a hostname, or a
       username and hostname separated by "<code class="literal">@</code>", to
-      connect to. This will use SSH to talk to the remote machine
-      manager instance.</p></dd><dt id="-h"><span class="term"><code class="option">-h</code>, </span><span class="term"><code class="option">--help</code></span><a class="headerlink" title="Permalink to this term" href="#-h">¶</a></dt><dd><p><a name="help-text"></a>Print a short help text and exit.
+      connect to. The hostname may optionally be suffixed by a
+      container name, separated by "<code class="literal">:</code>", which
+      connects directly to a specific container on the specified
+      host. This will use SSH to talk to the remote machine manager
+      instance. Container names may be enumerated with
+      <span class="command"><strong>machinectl -H
+      <em class="replaceable"><code>HOST</code></em></strong></span>.</p></dd><dt id="-h"><span class="term"><code class="option">-h</code>, </span><span class="term"><code class="option">--help</code></span><a class="headerlink" title="Permalink to this term" href="#-h">¶</a></dt><dd><p><a name="help-text"></a>Print a short help text and exit.
     </p></dd><dt id="--version"><span class="term"><code class="option">--version</code></span><a class="headerlink" title="Permalink to this term" href="#--version">¶</a></dt><dd><p><a name="version-text"></a>Print a short version string and exit.</p></dd></dl></div><p>The following commands are understood:</p><div class="variablelist"><dl class="variablelist"><dt id="status"><span class="term"><span class="command"><strong>status</strong></span></span><a class="headerlink" title="Permalink to this term" href="#status">¶</a></dt><dd><p>Show current system
                                 hostname and related
                                 information.</p></dd><dt id="set-hostname [NAME]"><span class="term"><span class="command"><strong>set-hostname [NAME]</strong></span></span><a class="headerlink" title="Permalink to this term" href="#set-hostname%20%5BNAME%5D">¶</a></dt><dd><p>Set the system
                                 reset the chassis type to the default
                                 value which is determined from the
                                 firmware and possibly other
-                                parameters.</p></dd></dl></div></div><div class="refsect1"><a name="idm214193117216"></a><h2 id="Exit status">Exit status<a class="headerlink" title="Permalink to this headline" href="#Exit%20status">¶</a></h2><p>On success, 0 is returned, a non-zero failure
-                code otherwise.</p></div><div class="refsect1"><a name="idm214193116032"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+                                parameters.</p></dd></dl></div></div><div class="refsect1"><a name="idm214197252416"></a><h2 id="Exit status">Exit status<a class="headerlink" title="Permalink to this headline" href="#Exit%20status">¶</a></h2><p>On success, 0 is returned, a non-zero failure
+                code otherwise.</p></div><div class="refsect1"><a name="idm214197251232"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
                         <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
                         <a href="hostname.html"><span class="citerefentry"><span class="refentrytitle">hostname</span>(1)</span></a>,
                         <a href="hostname.html"><span class="citerefentry"><span class="refentrytitle">hostname</span>(5)</span></a>,
index a11f2215d94515ab0b5973d5106bc9ed23400476..71973fde912748ecc819e458e522ffe2cea82f47 100644 (file)
@@ -71,7 +71,7 @@
                 (e.g. "lennarts-laptop"), and the transient hostname
                 which is a default received from network configuration.
                 If a static hostname is set, and is valid (something other
-                than localhost) then the transient hostname is not used.</para>
+                than localhost), then the transient hostname is not used.</para>
 
                 <para>Note that the pretty hostname has little
                 restrictions on the characters used, while the static
index 61c1f5efb40f9e4e715193f7699d14d6099b2aef..6a68e816d6fbcef0bf1297fa2bf5ef944b566bdd 100644 (file)
@@ -19,6 +19,6 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="systemd.index"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>systemd.index — List all manpages from the systemd project</p></div><div class="refsect1"><a name="idm214190002240"></a><h2 id="B">B<a class="headerlink" title="Permalink to this headline" href="#B">¶</a></h2><p><a href="binfmt.d.html"><span class="citerefentry"><span class="refentrytitle">binfmt.d</span>(5)</span></a> -- Configure additional binary formats for executables at boot<br><a href="bootchart.conf.html"><span class="citerefentry"><span class="refentrytitle">bootchart.conf</span>(5)</span></a> -- Boot performance analysis graphing tool configuration file<br><a href="bootctl.html"><span class="citerefentry"><span class="refentrytitle">bootctl</span>(1)</span></a> -- Control the firmware and boot manager settings<br><a href="bootup.html"><span class="citerefentry"><span class="refentrytitle">bootup</span>(7)</span></a> -- System bootup process<br><a href="busctl.html"><span class="citerefentry"><span class="refentrytitle">busctl</span>(1)</span></a> -- Introspect the bus<br></p></div><div class="refsect1"><a name="idm214189997248"></a><h2 id="C">C<a class="headerlink" title="Permalink to this headline" href="#C">¶</a></h2><p><a href="crypttab.html"><span class="citerefentry"><span class="refentrytitle">crypttab</span>(5)</span></a> -- Configuration for encrypted block devices<br></p></div><div class="refsect1"><a name="idm214189995840"></a><h2 id="D">D<a class="headerlink" title="Permalink to this headline" href="#D">¶</a></h2><p><a href="daemon.html"><span class="citerefentry"><span class="refentrytitle">daemon</span>(7)</span></a> -- Writing and packaging system daemons<br></p></div><div class="refsect1"><a name="idm214189994432"></a><h2 id="H">H<a class="headerlink" title="Permalink to this headline" href="#H">¶</a></h2><p><a href="halt.html"><span class="citerefentry"><span class="refentrytitle">halt</span>(8)</span></a> -- Halt, power-off or reboot the machine<br><a href="hostname.html"><span class="citerefentry"><span class="refentrytitle">hostname</span>(5)</span></a> -- Local hostname configuration file<br><a href="hostnamectl.html"><span class="citerefentry"><span class="refentrytitle">hostnamectl</span>(1)</span></a> -- Control the system hostname<br></p></div><div class="refsect1"><a name="idm214189991232"></a><h2 id="I">I<a class="headerlink" title="Permalink to this headline" href="#I">¶</a></h2><p><a href="init.html"><span class="citerefentry"><span class="refentrytitle">init</span>(1)</span></a> -- systemd system and service manager<br></p></div><div class="refsect1"><a name="idm214189989824"></a><h2 id="J">J<a class="headerlink" title="Permalink to this headline" href="#J">¶</a></h2><p><a href="journalctl.html"><span class="citerefentry"><span class="refentrytitle">journalctl</span>(1)</span></a> -- Query the systemd journal<br><a href="journald.conf.html"><span class="citerefentry"><span class="refentrytitle">journald.conf</span>(5)</span></a> -- Journal service configuration file<br></p></div><div class="refsect1"><a name="idm214189987520"></a><h2 id="K">K<a class="headerlink" title="Permalink to this headline" href="#K">¶</a></h2><p><a href="kernel-command-line.html"><span class="citerefentry"><span class="refentrytitle">kernel-command-line</span>(7)</span></a> -- Kernel command line parameters<br><a href="kernel-install.html"><span class="citerefentry"><span class="refentrytitle">kernel-install</span>(8)</span></a> -- Add and remove kernel and initramfs images to and from /boot<br></p></div><div class="refsect1"><a name="idm214189985216"></a><h2 id="L">L<a class="headerlink" title="Permalink to this headline" href="#L">¶</a></h2><p><a href="locale.conf.html"><span class="citerefentry"><span class="refentrytitle">locale.conf</span>(5)</span></a> -- Configuration file for locale settings<br><a href="localectl.html"><span class="citerefentry"><span class="refentrytitle">localectl</span>(1)</span></a> -- Control the system locale and keyboard layout settings<br><a href="localtime.html"><span class="citerefentry"><span class="refentrytitle">localtime</span>(5)</span></a> -- Local timezone configuration file<br><a href="loginctl.html"><span class="citerefentry"><span class="refentrytitle">loginctl</span>(1)</span></a> -- Control the systemd login manager<br><a href="logind.conf.html"><span class="citerefentry"><span class="refentrytitle">logind.conf</span>(5)</span></a> -- Login manager configuration file<br></p></div><div class="refsect1"><a name="idm214189959600"></a><h2 id="M">M<a class="headerlink" title="Permalink to this headline" href="#M">¶</a></h2><p><a href="machine-id.html"><span class="citerefentry"><span class="refentrytitle">machine-id</span>(5)</span></a> -- Local machine ID configuration file<br><a href="machine-info.html"><span class="citerefentry"><span class="refentrytitle">machine-info</span>(5)</span></a> -- Local machine information file<br><a href="machinectl.html"><span class="citerefentry"><span class="refentrytitle">machinectl</span>(1)</span></a> -- Control the systemd machine manager<br><a href="modules-load.d.html"><span class="citerefentry"><span class="refentrytitle">modules-load.d</span>(5)</span></a> -- Configure kernel modules to load at boot<br></p></div><div class="refsect1"><a name="idm214189955504"></a><h2 id="N">N<a class="headerlink" title="Permalink to this headline" href="#N">¶</a></h2><p><a href="nss-myhostname.html"><span class="citerefentry"><span class="refentrytitle">nss-myhostname</span>(8)</span></a> -- Provide hostname resolution for the locally configured system hostname.<br></p></div><div class="refsect1"><a name="idm214189954096"></a><h2 id="O">O<a class="headerlink" title="Permalink to this headline" href="#O">¶</a></h2><p><a href="os-release.html"><span class="citerefentry"><span class="refentrytitle">os-release</span>(5)</span></a> -- Operating system identification<br></p></div><div class="refsect1"><a name="idm214189952688"></a><h2 id="P">P<a class="headerlink" title="Permalink to this headline" href="#P">¶</a></h2><p><a href="pam_systemd.html"><span class="citerefentry"><span class="refentrytitle">pam_systemd</span>(8)</span></a> -- Register user sessions in the systemd login manager<br><a href="poweroff.html"><span class="citerefentry"><span class="refentrytitle">poweroff</span>(8)</span></a> -- Halt, power-off or reboot the machine<br></p></div><div class="refsect1"><a name="idm214189950384"></a><h2 id="R">R<a class="headerlink" title="Permalink to this headline" href="#R">¶</a></h2><p><a href="reboot.html"><span class="citerefentry"><span class="refentrytitle">reboot</span>(8)</span></a> -- Halt, power-off or reboot the machine<br><a href="resolved.conf.html"><span class="citerefentry"><span class="refentrytitle">resolved.conf</span>(5)</span></a> -- Network Name Resolution configuration file<br><a href="runlevel.html"><span class="citerefentry"><span class="refentrytitle">runlevel</span>(8)</span></a> -- Print previous and current SysV runlevel<br></p></div><div class="refsect1"><a name="idm214189947184"></a><h2 id="S">S<a class="headerlink" title="Permalink to this headline" href="#S">¶</a></h2><p><a href="sd-daemon.html"><span class="citerefentry"><span class="refentrytitle">sd-daemon</span>(3)</span></a> -- APIs for new-style daemons<br><a href="sd-id128.html"><span class="citerefentry"><span class="refentrytitle">sd-id128</span>(3)</span></a> -- APIs for processing 128-bit IDs<br><a href="sd-journal.html"><span class="citerefentry"><span class="refentrytitle">sd-journal</span>(3)</span></a> -- APIs for submitting and querying log entries to and from the journal<br><a href="sd-login.html"><span class="citerefentry"><span class="refentrytitle">sd-login</span>(3)</span></a> -- APIs for tracking logins<br><a href="sd-readahead.html"><span class="citerefentry"><span class="refentrytitle">sd-readahead</span>(3)</span></a> -- Reference implementation of APIs for controlling boot-time read-ahead<br><a href="SD_ALERT.html"><span class="citerefentry"><span class="refentrytitle">SD_ALERT</span>(3)</span></a> -- APIs for new-style daemons<br><a href="sd_booted.html"><span class="citerefentry"><span class="refentrytitle">sd_booted</span>(3)</span></a> -- Test whether the system is running the systemd init system<br><a href="sd_bus_creds_get_audit_login_uid.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_creds_get_audit_login_uid</span>(3)</span></a> -- Retrieve fields from a credentials object<br><a href="sd_bus_creds_get_audit_session_id.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_creds_get_audit_session_id</span>(3)</span></a> -- Retrieve fields from a credentials object<br><a href="sd_bus_creds_get_cgroup.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_creds_get_cgroup</span>(3)</span></a> -- Retrieve fields from a credentials object<br><a href="sd_bus_creds_get_cmdline.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_creds_get_cmdline</span>(3)</span></a> -- Retrieve fields from a credentials object<br><a href="sd_bus_creds_get_comm.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_creds_get_comm</span>(3)</span></a> -- Retrieve fields from a credentials object<br><a href="sd_bus_creds_get_exe.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_creds_get_exe</span>(3)</span></a> -- Retrieve fields from a credentials object<br><a href="sd_bus_creds_get_gid.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_creds_get_gid</span>(3)</span></a> -- Retrieve fields from a credentials object<br><a href="sd_bus_creds_get_mask.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_creds_get_mask</span>(3)</span></a> -- Retrieve credentials object for the specified PID<br><a href="sd_bus_creds_get_owner_uid.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_creds_get_owner_uid</span>(3)</span></a> -- Retrieve fields from a credentials object<br><a href="sd_bus_creds_get_pid.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_creds_get_pid</span>(3)</span></a> -- Retrieve fields from a credentials object<br><a href="sd_bus_creds_get_pid_starttime.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_creds_get_pid_starttime</span>(3)</span></a> -- Retrieve fields from a credentials object<br><a href="sd_bus_creds_get_selinux_context.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_creds_get_selinux_context</span>(3)</span></a> -- Retrieve fields from a credentials object<br><a href="sd_bus_creds_get_session.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_creds_get_session</span>(3)</span></a> -- Retrieve fields from a credentials object<br><a href="sd_bus_creds_get_slice.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_creds_get_slice</span>(3)</span></a> -- Retrieve fields from a credentials object<br><a href="sd_bus_creds_get_tid.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_creds_get_tid</span>(3)</span></a> -- Retrieve fields from a credentials object<br><a href="sd_bus_creds_get_tid_comm.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_creds_get_tid_comm</span>(3)</span></a> -- Retrieve fields from a credentials object<br><a href="sd_bus_creds_get_uid.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_creds_get_uid</span>(3)</span></a> -- Retrieve fields from a credentials object<br><a href="sd_bus_creds_get_unique_name.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_creds_get_unique_name</span>(3)</span></a> -- Retrieve fields from a credentials object<br><a href="sd_bus_creds_get_unit.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_creds_get_unit</span>(3)</span></a> -- Retrieve fields from a credentials object<br><a href="sd_bus_creds_get_user_unit.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_creds_get_user_unit</span>(3)</span></a> -- Retrieve fields from a credentials object<br><a href="sd_bus_creds_get_well_known_names.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_creds_get_well_known_names</span>(3)</span></a> -- Retrieve fields from a credentials object<br><a href="sd_bus_creds_has_bounding_cap.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_creds_has_bounding_cap</span>(3)</span></a> -- Retrieve fields from a credentials object<br><a href="sd_bus_creds_has_effective_cap.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_creds_has_effective_cap</span>(3)</span></a> -- Retrieve fields from a credentials object<br><a href="sd_bus_creds_has_inheritable_cap.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_creds_has_inheritable_cap</span>(3)</span></a> -- Retrieve fields from a credentials object<br><a href="sd_bus_creds_has_permitted_cap.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_creds_has_permitted_cap</span>(3)</span></a> -- Retrieve fields from a credentials object<br><a href="sd_bus_creds_new_from_pid.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_creds_new_from_pid</span>(3)</span></a> -- Retrieve credentials object for the specified PID<br><a href="sd_bus_creds_ref.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_creds_ref</span>(3)</span></a> -- Retrieve credentials object for the specified PID<br><a href="sd_bus_creds_unref.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_creds_unref</span>(3)</span></a> -- Retrieve credentials object for the specified PID<br><a href="sd_bus_default_system.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_default_system</span>(3)</span></a> -- Open a connection to the system or user bus<br><a href="sd_bus_default_user.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_default_user</span>(3)</span></a> -- Open a connection to the system or user bus<br><a href="sd_bus_error.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_error</span>(3)</span></a> -- sd-bus error handling<br><a href="sd_bus_error_copy.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_error_copy</span>(3)</span></a> -- sd-bus error handling<br><a href="sd_bus_error_free.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_error_free</span>(3)</span></a> -- sd-bus error handling<br><a href="sd_bus_error_get_errno.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_error_get_errno</span>(3)</span></a> -- sd-bus error handling<br><a href="sd_bus_error_has_name.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_error_has_name</span>(3)</span></a> -- sd-bus error handling<br><a href="sd_bus_error_is_set.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_error_is_set</span>(3)</span></a> -- sd-bus error handling<br><a href="sd_bus_error_set.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_error_set</span>(3)</span></a> -- sd-bus error handling<br><a href="sd_bus_error_set_const.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_error_set_const</span>(3)</span></a> -- sd-bus error handling<br><a href="sd_bus_error_set_errno.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_error_set_errno</span>(3)</span></a> -- sd-bus error handling<br><a href="sd_bus_error_set_errnof.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_error_set_errnof</span>(3)</span></a> -- sd-bus error handling<br><a href="sd_bus_message_append.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_message_append</span>(3)</span></a> -- Attach parts of message based on a format string<br><a href="sd_bus_message_append_array.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_message_append_array</span>(3)</span></a> -- Attach an array of items to a message<br><a href="sd_bus_message_append_array_iovec.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_message_append_array_iovec</span>(3)</span></a> -- Attach an array of items to a message<br><a href="sd_bus_message_append_array_memfd.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_message_append_array_memfd</span>(3)</span></a> -- Attach an array of items to a message<br><a href="sd_bus_message_append_array_space.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_message_append_array_space</span>(3)</span></a> -- Attach an array of items to a message<br><a href="sd_bus_message_append_basic.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_message_append_basic</span>(3)</span></a> -- Attach a single part to a message<br><a href="sd_bus_message_append_string_iovec.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_message_append_string_iovec</span>(3)</span></a> -- Attach a string to a message<br><a href="sd_bus_message_append_string_memfd.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_message_append_string_memfd</span>(3)</span></a> -- Attach a string to a message<br><a href="sd_bus_message_append_string_space.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_message_append_string_space</span>(3)</span></a> -- Attach a string to a message<br><a href="sd_bus_message_append_strv.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_message_append_strv</span>(3)</span></a> -- Attach an array of strings to a message<br><a href="sd_bus_message_get_cookie.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_message_get_cookie</span>(3)</span></a> -- Returns the transaction cookie of a message<br><a href="sd_bus_message_get_monotonic_usec.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_message_get_monotonic_usec</span>(3)</span></a> -- Retrieve the sender timestamps and sequence number of a message<br><a href="sd_bus_message_get_realtime_usec.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_message_get_realtime_usec</span>(3)</span></a> -- Retrieve the sender timestamps and sequence number of a message<br><a href="sd_bus_message_get_reply_cookie.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_message_get_reply_cookie</span>(3)</span></a> -- Returns the transaction cookie of a message<br><a href="sd_bus_message_get_seqnum.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_message_get_seqnum</span>(3)</span></a> -- Retrieve the sender timestamps and sequence number of a message<br><a href="sd_bus_negotiate_creds.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_negotiate_creds</span>(3)</span></a> -- Control feature negotiation on bus connections<br><a href="sd_bus_negotiate_fds.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_negotiate_fds</span>(3)</span></a> -- Control feature negotiation on bus connections<br><a href="sd_bus_negotiate_timestamps.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_negotiate_timestamps</span>(3)</span></a> -- Control feature negotiation on bus connections<br><a href="sd_bus_new.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_new</span>(3)</span></a> -- Create a new bus object and create or destroy references to it<br><a href="sd_bus_open_system.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_open_system</span>(3)</span></a> -- Open a connection to the system or user bus<br><a href="sd_bus_open_system_container.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_open_system_container</span>(3)</span></a> -- Open a connection to the system or user bus<br><a href="sd_bus_open_system_remote.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_open_system_remote</span>(3)</span></a> -- Open a connection to the system or user bus<br><a href="sd_bus_open_user.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_open_user</span>(3)</span></a> -- Open a connection to the system or user bus<br><a href="sd_bus_path_decode.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_path_decode</span>(3)</span></a> -- Convert an external identifier into an object path and back<br><a href="sd_bus_path_encode.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_path_encode</span>(3)</span></a> -- Convert an external identifier into an object path and back<br><a href="sd_bus_ref.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_ref</span>(3)</span></a> -- Create a new bus object and create or destroy references to it<br><a href="sd_bus_release_name.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_release_name</span>(3)</span></a> -- Request or release a well-known name on a bus<br><a href="sd_bus_request_name.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_request_name</span>(3)</span></a> -- Request or release a well-known name on a bus<br><a href="sd_bus_unref.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_unref</span>(3)</span></a> -- Create a new bus object and create or destroy references to it<br><a href="SD_CRIT.html"><span class="citerefentry"><span class="refentrytitle">SD_CRIT</span>(3)</span></a> -- APIs for new-style daemons<br><a href="SD_DEBUG.html"><span class="citerefentry"><span class="refentrytitle">SD_DEBUG</span>(3)</span></a> -- APIs for new-style daemons<br><a href="SD_EMERG.html"><span class="citerefentry"><span class="refentrytitle">SD_EMERG</span>(3)</span></a> -- APIs for new-style daemons<br><a href="SD_ERR.html"><span class="citerefentry"><span class="refentrytitle">SD_ERR</span>(3)</span></a> -- APIs for new-style daemons<br><a href="sd_event_add_time.html"><span class="citerefentry"><span class="refentrytitle">sd_event_add_time</span>(3)</span></a> -- Add a timer event source to an event loop<br><a href="sd_event_default.html"><span class="citerefentry"><span class="refentrytitle">sd_event_default</span>(3)</span></a> -- Acquire and release an event loop object<br><a href="sd_event_new.html"><span class="citerefentry"><span class="refentrytitle">sd_event_new</span>(3)</span></a> -- Acquire and release an event loop object<br><a href="sd_event_ref.html"><span class="citerefentry"><span class="refentrytitle">sd_event_ref</span>(3)</span></a> -- Acquire and release an event loop object<br><a href="sd_event_source_get_time.html"><span class="citerefentry"><span class="refentrytitle">sd_event_source_get_time</span>(3)</span></a> -- Add a timer event source to an event loop<br><a href="sd_event_source_get_time_accuracy.html"><span class="citerefentry"><span class="refentrytitle">sd_event_source_get_time_accuracy</span>(3)</span></a> -- Add a timer event source to an event loop<br><a href="sd_event_source_get_time_clock.html"><span class="citerefentry"><span class="refentrytitle">sd_event_source_get_time_clock</span>(3)</span></a> -- Add a timer event source to an event loop<br><a href="sd_event_source_set_time.html"><span class="citerefentry"><span class="refentrytitle">sd_event_source_set_time</span>(3)</span></a> -- Add a timer event source to an event loop<br><a href="sd_event_source_set_time_accuracy.html"><span class="citerefentry"><span class="refentrytitle">sd_event_source_set_time_accuracy</span>(3)</span></a> -- Add a timer event source to an event loop<br><a href="sd_event_unref.html"><span class="citerefentry"><span class="refentrytitle">sd_event_unref</span>(3)</span></a> -- Acquire and release an event loop object<br><a href="sd_get_machine_names.html"><span class="citerefentry"><span class="refentrytitle">sd_get_machine_names</span>(3)</span></a> -- Determine available seats, sessions, logged in users and virtual machines/containers<br><a href="sd_get_seats.html"><span class="citerefentry"><span class="refentrytitle">sd_get_seats</span>(3)</span></a> -- Determine available seats, sessions, logged in users and virtual machines/containers<br><a href="sd_get_sessions.html"><span class="citerefentry"><span class="refentrytitle">sd_get_sessions</span>(3)</span></a> -- Determine available seats, sessions, logged in users and virtual machines/containers<br><a href="sd_get_uids.html"><span class="citerefentry"><span class="refentrytitle">sd_get_uids</span>(3)</span></a> -- Determine available seats, sessions, logged in users and virtual machines/containers<br><a href="SD_ID128_CONST_STR.html"><span class="citerefentry"><span class="refentrytitle">SD_ID128_CONST_STR</span>(3)</span></a> -- APIs for processing 128-bit IDs<br><a href="sd_id128_equal.html"><span class="citerefentry"><span class="refentrytitle">sd_id128_equal</span>(3)</span></a> -- APIs for processing 128-bit IDs<br><a href="SD_ID128_FORMAT_STR.html"><span class="citerefentry"><span class="refentrytitle">SD_ID128_FORMAT_STR</span>(3)</span></a> -- APIs for processing 128-bit IDs<br><a href="SD_ID128_FORMAT_VAL.html"><span class="citerefentry"><span class="refentrytitle">SD_ID128_FORMAT_VAL</span>(3)</span></a> -- APIs for processing 128-bit IDs<br><a href="sd_id128_from_string.html"><span class="citerefentry"><span class="refentrytitle">sd_id128_from_string</span>(3)</span></a> -- Format or parse 128-bit IDs as strings<br><a href="sd_id128_get_boot.html"><span class="citerefentry"><span class="refentrytitle">sd_id128_get_boot</span>(3)</span></a> -- Retrieve 128-bit IDs<br><a href="sd_id128_get_machine.html"><span class="citerefentry"><span class="refentrytitle">sd_id128_get_machine</span>(3)</span></a> -- Retrieve 128-bit IDs<br><a href="SD_ID128_MAKE.html"><span class="citerefentry"><span class="refentrytitle">SD_ID128_MAKE</span>(3)</span></a> -- APIs for processing 128-bit IDs<br><a href="sd_id128_randomize.html"><span class="citerefentry"><span class="refentrytitle">sd_id128_randomize</span>(3)</span></a> -- Generate 128-bit IDs<br><a href="sd_id128_t.html"><span class="citerefentry"><span class="refentrytitle">sd_id128_t</span>(3)</span></a> -- APIs for processing 128-bit IDs<br><a href="sd_id128_to_string.html"><span class="citerefentry"><span class="refentrytitle">sd_id128_to_string</span>(3)</span></a> -- Format or parse 128-bit IDs as strings<br><a href="SD_INFO.html"><span class="citerefentry"><span class="refentrytitle">SD_INFO</span>(3)</span></a> -- APIs for new-style daemons<br><a href="sd_is_fifo.html"><span class="citerefentry"><span class="refentrytitle">sd_is_fifo</span>(3)</span></a> -- Check the type of a file descriptor<br><a href="sd_is_mq.html"><span class="citerefentry"><span class="refentrytitle">sd_is_mq</span>(3)</span></a> -- Check the type of a file descriptor<br><a href="sd_is_socket.html"><span class="citerefentry"><span class="refentrytitle">sd_is_socket</span>(3)</span></a> -- Check the type of a file descriptor<br><a href="sd_is_socket_inet.html"><span class="citerefentry"><span class="refentrytitle">sd_is_socket_inet</span>(3)</span></a> -- Check the type of a file descriptor<br><a href="sd_is_socket_unix.html"><span class="citerefentry"><span class="refentrytitle">sd_is_socket_unix</span>(3)</span></a> -- Check the type of a file descriptor<br><a href="sd_is_special.html"><span class="citerefentry"><span class="refentrytitle">sd_is_special</span>(3)</span></a> -- Check the type of a file descriptor<br><a href="sd_journal.html"><span class="citerefentry"><span class="refentrytitle">sd_journal</span>(3)</span></a> -- Open the system journal for reading<br><a href="sd_journal_add_conjunction.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_add_conjunction</span>(3)</span></a> -- Add or remove entry matches<br><a href="sd_journal_add_disjunction.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_add_disjunction</span>(3)</span></a> -- Add or remove entry matches<br><a href="sd_journal_add_match.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_add_match</span>(3)</span></a> -- Add or remove entry matches<br><a href="SD_JOURNAL_APPEND.html"><span class="citerefentry"><span class="refentrytitle">SD_JOURNAL_APPEND</span>(3)</span></a> -- Journal change notification interface<br><a href="sd_journal_close.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_close</span>(3)</span></a> -- Open the system journal for reading<br><a href="SD_JOURNAL_CURRENT_USER.html"><span class="citerefentry"><span class="refentrytitle">SD_JOURNAL_CURRENT_USER</span>(3)</span></a> -- Open the system journal for reading<br><a href="sd_journal_enumerate_data.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_enumerate_data</span>(3)</span></a> -- Read data fields from the current journal entry<br><a href="sd_journal_enumerate_unique.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_enumerate_unique</span>(3)</span></a> -- Read unique data fields from the journal<br><a href="sd_journal_flush_matches.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_flush_matches</span>(3)</span></a> -- Add or remove entry matches<br><a href="SD_JOURNAL_FOREACH.html"><span class="citerefentry"><span class="refentrytitle">SD_JOURNAL_FOREACH</span>(3)</span></a> -- Advance or set back the read pointer in the journal<br><a href="SD_JOURNAL_FOREACH_BACKWARDS.html"><span class="citerefentry"><span class="refentrytitle">SD_JOURNAL_FOREACH_BACKWARDS</span>(3)</span></a> -- Advance or set back the read pointer in the journal<br><a href="SD_JOURNAL_FOREACH_DATA.html"><span class="citerefentry"><span class="refentrytitle">SD_JOURNAL_FOREACH_DATA</span>(3)</span></a> -- Read data fields from the current journal entry<br><a href="SD_JOURNAL_FOREACH_UNIQUE.html"><span class="citerefentry"><span class="refentrytitle">SD_JOURNAL_FOREACH_UNIQUE</span>(3)</span></a> -- Read unique data fields from the journal<br><a href="sd_journal_get_catalog.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_get_catalog</span>(3)</span></a> -- Retrieve message catalog entry<br><a href="sd_journal_get_catalog_for_message_id.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_get_catalog_for_message_id</span>(3)</span></a> -- Retrieve message catalog entry<br><a href="sd_journal_get_cursor.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_get_cursor</span>(3)</span></a> -- Get cursor string for or test cursor string against the current journal entry<br><a href="sd_journal_get_cutoff_monotonic_usec.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_get_cutoff_monotonic_usec</span>(3)</span></a> -- Read cut-off timestamps from the current journal entry<br><a href="sd_journal_get_cutoff_realtime_usec.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_get_cutoff_realtime_usec</span>(3)</span></a> -- Read cut-off timestamps from the current journal entry<br><a href="sd_journal_get_data.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_get_data</span>(3)</span></a> -- Read data fields from the current journal entry<br><a href="sd_journal_get_data_threshold.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_get_data_threshold</span>(3)</span></a> -- Read data fields from the current journal entry<br><a href="sd_journal_get_events.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_get_events</span>(3)</span></a> -- Journal change notification interface<br><a href="sd_journal_get_fd.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_get_fd</span>(3)</span></a> -- Journal change notification interface<br><a href="sd_journal_get_monotonic_usec.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_get_monotonic_usec</span>(3)</span></a> -- Read timestamps from the current journal entry<br><a href="sd_journal_get_realtime_usec.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_get_realtime_usec</span>(3)</span></a> -- Read timestamps from the current journal entry<br><a href="sd_journal_get_timeout.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_get_timeout</span>(3)</span></a> -- Journal change notification interface<br><a href="sd_journal_get_usage.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_get_usage</span>(3)</span></a> -- Journal disk usage<br><a href="SD_JOURNAL_INVALIDATE.html"><span class="citerefentry"><span class="refentrytitle">SD_JOURNAL_INVALIDATE</span>(3)</span></a> -- Journal change notification interface<br><a href="SD_JOURNAL_LOCAL_ONLY.html"><span class="citerefentry"><span class="refentrytitle">SD_JOURNAL_LOCAL_ONLY</span>(3)</span></a> -- Open the system journal for reading<br><a href="sd_journal_next.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_next</span>(3)</span></a> -- Advance or set back the read pointer in the journal<br><a href="sd_journal_next_skip.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_next_skip</span>(3)</span></a> -- Advance or set back the read pointer in the journal<br><a href="SD_JOURNAL_NOP.html"><span class="citerefentry"><span class="refentrytitle">SD_JOURNAL_NOP</span>(3)</span></a> -- Journal change notification interface<br><a href="sd_journal_open.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_open</span>(3)</span></a> -- Open the system journal for reading<br><a href="sd_journal_open_container.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_open_container</span>(3)</span></a> -- Open the system journal for reading<br><a href="sd_journal_open_directory.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_open_directory</span>(3)</span></a> -- Open the system journal for reading<br><a href="sd_journal_open_files.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_open_files</span>(3)</span></a> -- Open the system journal for reading<br><a href="sd_journal_perror.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_perror</span>(3)</span></a> -- Submit log entries to the journal<br><a href="sd_journal_previous.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_previous</span>(3)</span></a> -- Advance or set back the read pointer in the journal<br><a href="sd_journal_previous_skip.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_previous_skip</span>(3)</span></a> -- Advance or set back the read pointer in the journal<br><a href="sd_journal_print.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_print</span>(3)</span></a> -- Submit log entries to the journal<br><a href="sd_journal_printv.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_printv</span>(3)</span></a> -- Submit log entries to the journal<br><a href="sd_journal_process.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_process</span>(3)</span></a> -- Journal change notification interface<br><a href="sd_journal_query_unique.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_query_unique</span>(3)</span></a> -- Read unique data fields from the journal<br><a href="sd_journal_reliable_fd.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_reliable_fd</span>(3)</span></a> -- Journal change notification interface<br><a href="sd_journal_restart_data.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_restart_data</span>(3)</span></a> -- Read data fields from the current journal entry<br><a href="sd_journal_restart_unique.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_restart_unique</span>(3)</span></a> -- Read unique data fields from the journal<br><a href="SD_JOURNAL_RUNTIME_ONLY.html"><span class="citerefentry"><span class="refentrytitle">SD_JOURNAL_RUNTIME_ONLY</span>(3)</span></a> -- Open the system journal for reading<br><a href="sd_journal_seek_cursor.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_seek_cursor</span>(3)</span></a> -- Seek to a position in the journal<br><a href="sd_journal_seek_head.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_seek_head</span>(3)</span></a> -- Seek to a position in the journal<br><a href="sd_journal_seek_monotonic_usec.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_seek_monotonic_usec</span>(3)</span></a> -- Seek to a position in the journal<br><a href="sd_journal_seek_realtime_usec.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_seek_realtime_usec</span>(3)</span></a> -- Seek to a position in the journal<br><a href="sd_journal_seek_tail.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_seek_tail</span>(3)</span></a> -- Seek to a position in the journal<br><a href="sd_journal_send.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_send</span>(3)</span></a> -- Submit log entries to the journal<br><a href="sd_journal_sendv.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_sendv</span>(3)</span></a> -- Submit log entries to the journal<br><a href="sd_journal_set_data_threshold.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_set_data_threshold</span>(3)</span></a> -- Read data fields from the current journal entry<br><a href="sd_journal_stream_fd.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_stream_fd</span>(3)</span></a> -- Create log stream file descriptor to the journal<br><a href="SD_JOURNAL_SUPPRESS_LOCATION.html"><span class="citerefentry"><span class="refentrytitle">SD_JOURNAL_SUPPRESS_LOCATION</span>(3)</span></a> -- Submit log entries to the journal<br><a href="SD_JOURNAL_SYSTEM.html"><span class="citerefentry"><span class="refentrytitle">SD_JOURNAL_SYSTEM</span>(3)</span></a> -- Open the system journal for reading<br><a href="sd_journal_test_cursor.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_test_cursor</span>(3)</span></a> -- Get cursor string for or test cursor string against the current journal entry<br><a href="sd_journal_wait.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_wait</span>(3)</span></a> -- Journal change notification interface<br><a href="sd_listen_fds.html"><span class="citerefentry"><span class="refentrytitle">sd_listen_fds</span>(3)</span></a> -- Check for file descriptors passed by the system manager<br><a href="SD_LISTEN_FDS_START.html"><span class="citerefentry"><span class="refentrytitle">SD_LISTEN_FDS_START</span>(3)</span></a> -- Check for file descriptors passed by the system manager<br><a href="sd_login_monitor.html"><span class="citerefentry"><span class="refentrytitle">sd_login_monitor</span>(3)</span></a> -- Monitor login sessions, seats, users and virtual machines/containers<br><a href="sd_login_monitor_flush.html"><span class="citerefentry"><span class="refentrytitle">sd_login_monitor_flush</span>(3)</span></a> -- Monitor login sessions, seats, users and virtual machines/containers<br><a href="sd_login_monitor_get_events.html"><span class="citerefentry"><span class="refentrytitle">sd_login_monitor_get_events</span>(3)</span></a> -- Monitor login sessions, seats, users and virtual machines/containers<br><a href="sd_login_monitor_get_fd.html"><span class="citerefentry"><span class="refentrytitle">sd_login_monitor_get_fd</span>(3)</span></a> -- Monitor login sessions, seats, users and virtual machines/containers<br><a href="sd_login_monitor_get_timeout.html"><span class="citerefentry"><span class="refentrytitle">sd_login_monitor_get_timeout</span>(3)</span></a> -- Monitor login sessions, seats, users and virtual machines/containers<br><a href="sd_login_monitor_new.html"><span class="citerefentry"><span class="refentrytitle">sd_login_monitor_new</span>(3)</span></a> -- Monitor login sessions, seats, users and virtual machines/containers<br><a href="sd_login_monitor_unref.html"><span class="citerefentry"><span class="refentrytitle">sd_login_monitor_unref</span>(3)</span></a> -- Monitor login sessions, seats, users and virtual machines/containers<br><a href="SD_NOTICE.html"><span class="citerefentry"><span class="refentrytitle">SD_NOTICE</span>(3)</span></a> -- APIs for new-style daemons<br><a href="sd_notify.html"><span class="citerefentry"><span class="refentrytitle">sd_notify</span>(3)</span></a> -- Notify service manager about start-up completion and other daemon status changes<br><a href="sd_notifyf.html"><span class="citerefentry"><span class="refentrytitle">sd_notifyf</span>(3)</span></a> -- Notify service manager about start-up completion and other daemon status changes<br><a href="sd_peer_get_machine_name.html"><span class="citerefentry"><span class="refentrytitle">sd_peer_get_machine_name</span>(3)</span></a> -- Determine session, service, owner of a session, container/VM or slice of a specific PID or socket peer<br><a href="sd_peer_get_owner_uid.html"><span class="citerefentry"><span class="refentrytitle">sd_peer_get_owner_uid</span>(3)</span></a> -- Determine session, service, owner of a session, container/VM or slice of a specific PID or socket peer<br><a href="sd_peer_get_session.html"><span class="citerefentry"><span class="refentrytitle">sd_peer_get_session</span>(3)</span></a> -- Determine session, service, owner of a session, container/VM or slice of a specific PID or socket peer<br><a href="sd_peer_get_slice.html"><span class="citerefentry"><span class="refentrytitle">sd_peer_get_slice</span>(3)</span></a> -- Determine session, service, owner of a session, container/VM or slice of a specific PID or socket peer<br><a href="sd_peer_get_unit.html"><span class="citerefentry"><span class="refentrytitle">sd_peer_get_unit</span>(3)</span></a> -- Determine session, service, owner of a session, container/VM or slice of a specific PID or socket peer<br><a href="sd_peer_get_user_unit.html"><span class="citerefentry"><span class="refentrytitle">sd_peer_get_user_unit</span>(3)</span></a> -- Determine session, service, owner of a session, container/VM or slice of a specific PID or socket peer<br><a href="sd_pid_get_machine_name.html"><span class="citerefentry"><span class="refentrytitle">sd_pid_get_machine_name</span>(3)</span></a> -- Determine session, service, owner of a session, container/VM or slice of a specific PID or socket peer<br><a href="sd_pid_get_owner_uid.html"><span class="citerefentry"><span class="refentrytitle">sd_pid_get_owner_uid</span>(3)</span></a> -- Determine session, service, owner of a session, container/VM or slice of a specific PID or socket peer<br><a href="sd_pid_get_session.html"><span class="citerefentry"><span class="refentrytitle">sd_pid_get_session</span>(3)</span></a> -- Determine session, service, owner of a session, container/VM or slice of a specific PID or socket peer<br><a href="sd_pid_get_slice.html"><span class="citerefentry"><span class="refentrytitle">sd_pid_get_slice</span>(3)</span></a> -- Determine session, service, owner of a session, container/VM or slice of a specific PID or socket peer<br><a href="sd_pid_get_unit.html"><span class="citerefentry"><span class="refentrytitle">sd_pid_get_unit</span>(3)</span></a> -- Determine session, service, owner of a session, container/VM or slice of a specific PID or socket peer<br><a href="sd_pid_get_user_unit.html"><span class="citerefentry"><span class="refentrytitle">sd_pid_get_user_unit</span>(3)</span></a> -- Determine session, service, owner of a session, container/VM or slice of a specific PID or socket peer<br><a href="sd_readahead.html"><span class="citerefentry"><span class="refentrytitle">sd_readahead</span>(3)</span></a> -- Control ongoing disk boot-time read-ahead operations<br><a href="sd_seat_can_graphical.html"><span class="citerefentry"><span class="refentrytitle">sd_seat_can_graphical</span>(3)</span></a> -- Determine state of a specific seat<br><a href="sd_seat_can_multi_session.html"><span class="citerefentry"><span class="refentrytitle">sd_seat_can_multi_session</span>(3)</span></a> -- Determine state of a specific seat<br><a href="sd_seat_can_tty.html"><span class="citerefentry"><span class="refentrytitle">sd_seat_can_tty</span>(3)</span></a> -- Determine state of a specific seat<br><a href="sd_seat_get_active.html"><span class="citerefentry"><span class="refentrytitle">sd_seat_get_active</span>(3)</span></a> -- Determine state of a specific seat<br><a href="sd_seat_get_sessions.html"><span class="citerefentry"><span class="refentrytitle">sd_seat_get_sessions</span>(3)</span></a> -- Determine state of a specific seat<br><a href="sd_session_get_class.html"><span class="citerefentry"><span class="refentrytitle">sd_session_get_class</span>(3)</span></a> -- Determine state of a specific session<br><a href="sd_session_get_display.html"><span class="citerefentry"><span class="refentrytitle">sd_session_get_display</span>(3)</span></a> -- Determine state of a specific session<br><a href="sd_session_get_remote_host.html"><span class="citerefentry"><span class="refentrytitle">sd_session_get_remote_host</span>(3)</span></a> -- Determine state of a specific session<br><a href="sd_session_get_remote_user.html"><span class="citerefentry"><span class="refentrytitle">sd_session_get_remote_user</span>(3)</span></a> -- Determine state of a specific session<br><a href="sd_session_get_seat.html"><span class="citerefentry"><span class="refentrytitle">sd_session_get_seat</span>(3)</span></a> -- Determine state of a specific session<br><a href="sd_session_get_service.html"><span class="citerefentry"><span class="refentrytitle">sd_session_get_service</span>(3)</span></a> -- Determine state of a specific session<br><a href="sd_session_get_state.html"><span class="citerefentry"><span class="refentrytitle">sd_session_get_state</span>(3)</span></a> -- Determine state of a specific session<br><a href="sd_session_get_tty.html"><span class="citerefentry"><span class="refentrytitle">sd_session_get_tty</span>(3)</span></a> -- Determine state of a specific session<br><a href="sd_session_get_type.html"><span class="citerefentry"><span class="refentrytitle">sd_session_get_type</span>(3)</span></a> -- Determine state of a specific session<br><a href="sd_session_get_uid.html"><span class="citerefentry"><span class="refentrytitle">sd_session_get_uid</span>(3)</span></a> -- Determine state of a specific session<br><a href="sd_session_get_vt.html"><span class="citerefentry"><span class="refentrytitle">sd_session_get_vt</span>(3)</span></a> -- Determine state of a specific session<br><a href="sd_session_is_active.html"><span class="citerefentry"><span class="refentrytitle">sd_session_is_active</span>(3)</span></a> -- Determine state of a specific session<br><a href="sd_session_is_remote.html"><span class="citerefentry"><span class="refentrytitle">sd_session_is_remote</span>(3)</span></a> -- Determine state of a specific session<br><a href="sd_uid_get_display.html"><span class="citerefentry"><span class="refentrytitle">sd_uid_get_display</span>(3)</span></a> -- Determine login state of a specific Unix user ID<br><a href="sd_uid_get_seats.html"><span class="citerefentry"><span class="refentrytitle">sd_uid_get_seats</span>(3)</span></a> -- Determine login state of a specific Unix user ID<br><a href="sd_uid_get_sessions.html"><span class="citerefentry"><span class="refentrytitle">sd_uid_get_sessions</span>(3)</span></a> -- Determine login state of a specific Unix user ID<br><a href="sd_uid_get_state.html"><span class="citerefentry"><span class="refentrytitle">sd_uid_get_state</span>(3)</span></a> -- Determine login state of a specific Unix user ID<br><a href="sd_uid_is_on_seat.html"><span class="citerefentry"><span class="refentrytitle">sd_uid_is_on_seat</span>(3)</span></a> -- Determine login state of a specific Unix user ID<br><a href="SD_WARNING.html"><span class="citerefentry"><span class="refentrytitle">SD_WARNING</span>(3)</span></a> -- APIs for new-style daemons<br><a href="sd_watchdog_enabled.html"><span class="citerefentry"><span class="refentrytitle">sd_watchdog_enabled</span>(3)</span></a> -- Check whether the service manager expects watchdog keep-alive notifications from a service<br><a href="shutdown.html"><span class="citerefentry"><span class="refentrytitle">shutdown</span>(8)</span></a> -- Halt, power-off or reboot the machine<br><a href="sysctl.d.html"><span class="citerefentry"><span class="refentrytitle">sysctl.d</span>(5)</span></a> -- Configure kernel parameters at boot<br><a href="systemctl.html"><span class="citerefentry"><span class="refentrytitle">systemctl</span>(1)</span></a> -- Control the systemd system and service manager<br><a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a> -- systemd system and service manager<br><a href="systemd-activate.html"><span class="citerefentry"><span class="refentrytitle">systemd-activate</span>(8)</span></a> -- Test socket activation of daemons<br><a href="systemd-analyze.html"><span class="citerefentry"><span class="refentrytitle">systemd-analyze</span>(1)</span></a> -- Analyze system boot-up performance<br><a href="systemd-ask-password.html"><span class="citerefentry"><span class="refentrytitle">systemd-ask-password</span>(1)</span></a> -- Query the user for a system password<br><a href="systemd-ask-password-console.path.html"><span class="citerefentry"><span class="refentrytitle">systemd-ask-password-console.path</span>(8)</span></a> -- Query the user for system passwords on the console and via wall<br><a href="systemd-ask-password-console.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-ask-password-console.service</span>(8)</span></a> -- Query the user for system passwords on the console and via wall<br><a href="systemd-ask-password-wall.path.html"><span class="citerefentry"><span class="refentrytitle">systemd-ask-password-wall.path</span>(8)</span></a> -- Query the user for system passwords on the console and via wall<br><a href="systemd-ask-password-wall.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-ask-password-wall.service</span>(8)</span></a> -- Query the user for system passwords on the console and via wall<br><a href="systemd-backlight.html"><span class="citerefentry"><span class="refentrytitle">systemd-backlight</span>(8)</span></a> -- Load and save the display backlight brightness at boot and shutdown<br><a href="systemd-backlight@.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-backlight@.service</span>(8)</span></a> -- Load and save the display backlight brightness at boot and shutdown<br><a href="systemd-binfmt.html"><span class="citerefentry"><span class="refentrytitle">systemd-binfmt</span>(8)</span></a> -- Configure additional binary formats for executables at boot<br><a href="systemd-binfmt.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-binfmt.service</span>(8)</span></a> -- Configure additional binary formats for executables at boot<br><a href="systemd-bootchart.html"><span class="citerefentry"><span class="refentrytitle">systemd-bootchart</span>(1)</span></a> -- Boot performance graphing tool<br><a href="systemd-bus-proxyd.html"><span class="citerefentry"><span class="refentrytitle">systemd-bus-proxyd</span>(8)</span></a> -- Connect STDIO or a socket to a given bus address<br><a href="systemd-bus-proxyd.socket.html"><span class="citerefentry"><span class="refentrytitle">systemd-bus-proxyd.socket</span>(8)</span></a> -- Proxy classic D-Bus clients to kdbus<br><a href="systemd-bus-proxyd@.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-bus-proxyd@.service</span>(8)</span></a> -- Proxy classic D-Bus clients to kdbus<br><a href="systemd-cat.html"><span class="citerefentry"><span class="refentrytitle">systemd-cat</span>(1)</span></a> -- Connect a pipeline or program's output with the journal<br><a href="systemd-cgls.html"><span class="citerefentry"><span class="refentrytitle">systemd-cgls</span>(1)</span></a> -- Recursively show control group contents<br><a href="systemd-cgtop.html"><span class="citerefentry"><span class="refentrytitle">systemd-cgtop</span>(1)</span></a> -- Show top control groups by their resource usage<br><a href="systemd-coredumpctl.html"><span class="citerefentry"><span class="refentrytitle">systemd-coredumpctl</span>(1)</span></a> -- Retrieve coredumps from the journal<br><a href="systemd-cryptsetup.html"><span class="citerefentry"><span class="refentrytitle">systemd-cryptsetup</span>(8)</span></a> -- Full disk decryption logic<br><a href="systemd-cryptsetup-generator.html"><span class="citerefentry"><span class="refentrytitle">systemd-cryptsetup-generator</span>(8)</span></a> -- Unit generator for<br><a href="systemd-cryptsetup@.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-cryptsetup@.service</span>(8)</span></a> -- Full disk decryption logic<br><a href="systemd-delta.html"><span class="citerefentry"><span class="refentrytitle">systemd-delta</span>(1)</span></a> -- Find overridden configuration files<br><a href="systemd-detect-virt.html"><span class="citerefentry"><span class="refentrytitle">systemd-detect-virt</span>(1)</span></a> -- Detect execution in a virtualized environment<br><a href="systemd-efi-boot-generator.html"><span class="citerefentry"><span class="refentrytitle">systemd-efi-boot-generator</span>(8)</span></a> -- Generator for automatically mounting the EFI System Partition used by the current boot to<br><a href="systemd-fsck.html"><span class="citerefentry"><span class="refentrytitle">systemd-fsck</span>(8)</span></a> -- File system checker logic<br><a href="systemd-fsck-root.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-fsck-root.service</span>(8)</span></a> -- File system checker logic<br><a href="systemd-fsck@.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-fsck@.service</span>(8)</span></a> -- File system checker logic<br><a href="systemd-fstab-generator.html"><span class="citerefentry"><span class="refentrytitle">systemd-fstab-generator</span>(8)</span></a> -- Unit generator for /etc/fstab<br><a href="systemd-getty-generator.html"><span class="citerefentry"><span class="refentrytitle">systemd-getty-generator</span>(8)</span></a> -- Generator for enabling getty instances on the console<br><a href="systemd-gpt-auto-generator.html"><span class="citerefentry"><span class="refentrytitle">systemd-gpt-auto-generator</span>(8)</span></a> -- Generator for automatically discovering and mounting root,<br><a href="systemd-halt.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-halt.service</span>(8)</span></a> -- System shutdown logic<br><a href="systemd-hibernate.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-hibernate.service</span>(8)</span></a> -- System sleep state logic<br><a href="systemd-hostnamed.html"><span class="citerefentry"><span class="refentrytitle">systemd-hostnamed</span>(8)</span></a> -- Host name bus mechanism<br><a href="systemd-hostnamed.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-hostnamed.service</span>(8)</span></a> -- Host name bus mechanism<br><a href="systemd-hybrid-sleep.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-hybrid-sleep.service</span>(8)</span></a> -- System sleep state logic<br><a href="systemd-inhibit.html"><span class="citerefentry"><span class="refentrytitle">systemd-inhibit</span>(1)</span></a> -- Execute a program with an inhibition lock taken<br><a href="systemd-initctl.html"><span class="citerefentry"><span class="refentrytitle">systemd-initctl</span>(8)</span></a> -- /dev/initctl compatibility<br><a href="systemd-initctl.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-initctl.service</span>(8)</span></a> -- /dev/initctl compatibility<br><a href="systemd-initctl.socket.html"><span class="citerefentry"><span class="refentrytitle">systemd-initctl.socket</span>(8)</span></a> -- /dev/initctl compatibility<br><a href="systemd-journal-gatewayd.html"><span class="citerefentry"><span class="refentrytitle">systemd-journal-gatewayd</span>(8)</span></a> -- HTTP server for journal events<br><a href="systemd-journal-gatewayd.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-journal-gatewayd.service</span>(8)</span></a> -- HTTP server for journal events<br><a href="systemd-journal-gatewayd.socket.html"><span class="citerefentry"><span class="refentrytitle">systemd-journal-gatewayd.socket</span>(8)</span></a> -- HTTP server for journal events<br><a href="systemd-journal-remote.html"><span class="citerefentry"><span class="refentrytitle">systemd-journal-remote</span>(8)</span></a> -- Stream journal messages over the network<br><a href="systemd-journald.html"><span class="citerefentry"><span class="refentrytitle">systemd-journald</span>(8)</span></a> -- Journal service<br><a href="systemd-journald-dev-log.socket.html"><span class="citerefentry"><span class="refentrytitle">systemd-journald-dev-log.socket</span>(8)</span></a> -- Journal service<br><a href="systemd-journald.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-journald.service</span>(8)</span></a> -- Journal service<br><a href="systemd-journald.socket.html"><span class="citerefentry"><span class="refentrytitle">systemd-journald.socket</span>(8)</span></a> -- Journal service<br><a href="systemd-kexec.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-kexec.service</span>(8)</span></a> -- System shutdown logic<br><a href="systemd-localed.html"><span class="citerefentry"><span class="refentrytitle">systemd-localed</span>(8)</span></a> -- Locale bus mechanism<br><a href="systemd-localed.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-localed.service</span>(8)</span></a> -- Locale bus mechanism<br><a href="systemd-logind.html"><span class="citerefentry"><span class="refentrytitle">systemd-logind</span>(8)</span></a> -- Login manager<br><a href="systemd-logind.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-logind.service</span>(8)</span></a> -- Login manager<br><a href="systemd-machine-id-setup.html"><span class="citerefentry"><span class="refentrytitle">systemd-machine-id-setup</span>(1)</span></a> -- Initialize the machine ID in /etc/machine-id<br><a href="systemd-machined.html"><span class="citerefentry"><span class="refentrytitle">systemd-machined</span>(8)</span></a> -- Virtual machine and container registration manager<br><a href="systemd-machined.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-machined.service</span>(8)</span></a> -- Virtual machine and container registration manager<br><a href="systemd-modules-load.html"><span class="citerefentry"><span class="refentrytitle">systemd-modules-load</span>(8)</span></a> -- Configure kernel modules to load at boot<br><a href="systemd-modules-load.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-modules-load.service</span>(8)</span></a> -- Configure kernel modules to load at boot<br><a href="systemd-networkd.html"><span class="citerefentry"><span class="refentrytitle">systemd-networkd</span>(8)</span></a> -- Network manager<br><a href="systemd-networkd-wait-online.html"><span class="citerefentry"><span class="refentrytitle">systemd-networkd-wait-online</span>(8)</span></a> -- Wait for network to come online<br><a href="systemd-networkd-wait-online.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-networkd-wait-online.service</span>(8)</span></a> -- Wait for network to come online<br><a href="systemd-networkd.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-networkd.service</span>(8)</span></a> -- Network manager<br><a href="systemd-notify.html"><span class="citerefentry"><span class="refentrytitle">systemd-notify</span>(1)</span></a> -- Notify service manager about start-up completion and other daemon status changes<br><a href="systemd-nspawn.html"><span class="citerefentry"><span class="refentrytitle">systemd-nspawn</span>(1)</span></a> -- Spawn a namespace container for debugging, testing and building<br><a href="systemd-poweroff.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-poweroff.service</span>(8)</span></a> -- System shutdown logic<br><a href="systemd-quotacheck.html"><span class="citerefentry"><span class="refentrytitle">systemd-quotacheck</span>(8)</span></a> -- File system quota checker logic<br><a href="systemd-quotacheck.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-quotacheck.service</span>(8)</span></a> -- File system quota checker logic<br><a href="systemd-random-seed.html"><span class="citerefentry"><span class="refentrytitle">systemd-random-seed</span>(8)</span></a> -- Load and save the system random seed at boot and shutdown<br><a href="systemd-random-seed.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-random-seed.service</span>(8)</span></a> -- Load and save the system random seed at boot and shutdown<br><a href="systemd-readahead.html"><span class="citerefentry"><span class="refentrytitle">systemd-readahead</span>(8)</span></a> -- Disk read ahead logic<br><a href="systemd-readahead-collect.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-readahead-collect.service</span>(8)</span></a> -- Disk read ahead logic<br><a href="systemd-readahead-done.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-readahead-done.service</span>(8)</span></a> -- Disk read ahead logic<br><a href="systemd-readahead-done.timer.html"><span class="citerefentry"><span class="refentrytitle">systemd-readahead-done.timer</span>(8)</span></a> -- Disk read ahead logic<br><a href="systemd-readahead-replay.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-readahead-replay.service</span>(8)</span></a> -- Disk read ahead logic<br><a href="systemd-reboot.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-reboot.service</span>(8)</span></a> -- System shutdown logic<br><a href="systemd-remount-fs.html"><span class="citerefentry"><span class="refentrytitle">systemd-remount-fs</span>(8)</span></a> -- Remount root and kernel file systems<br><a href="systemd-remount-fs.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-remount-fs.service</span>(8)</span></a> -- Remount root and kernel file systems<br><a href="systemd-resolved.html"><span class="citerefentry"><span class="refentrytitle">systemd-resolved</span>(8)</span></a> -- Network Name Resolution manager<br><a href="systemd-resolved.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-resolved.service</span>(8)</span></a> -- Network Name Resolution manager<br><a href="systemd-rfkill.html"><span class="citerefentry"><span class="refentrytitle">systemd-rfkill</span>(8)</span></a> -- Load and save the RF kill switch state at boot and shutdown<br><a href="systemd-rfkill@.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-rfkill@.service</span>(8)</span></a> -- Load and save the RF kill switch state at boot and shutdown<br><a href="systemd-run.html"><span class="citerefentry"><span class="refentrytitle">systemd-run</span>(1)</span></a> -- Run programs in transient scope or service units<br><a href="systemd-shutdown.html"><span class="citerefentry"><span class="refentrytitle">systemd-shutdown</span>(8)</span></a> -- System shutdown logic<br><a href="systemd-shutdownd.html"><span class="citerefentry"><span class="refentrytitle">systemd-shutdownd</span>(8)</span></a> -- Scheduled shutdown service<br><a href="systemd-shutdownd.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-shutdownd.service</span>(8)</span></a> -- Scheduled shutdown service<br><a href="systemd-shutdownd.socket.html"><span class="citerefentry"><span class="refentrytitle">systemd-shutdownd.socket</span>(8)</span></a> -- Scheduled shutdown service<br><a href="systemd-sleep.html"><span class="citerefentry"><span class="refentrytitle">systemd-sleep</span>(8)</span></a> -- System sleep state logic<br><a href="systemd-sleep.conf.html"><span class="citerefentry"><span class="refentrytitle">systemd-sleep.conf</span>(5)</span></a> -- Suspend and hibernation configuration file<br><a href="systemd-socket-proxyd.html"><span class="citerefentry"><span class="refentrytitle">systemd-socket-proxyd</span>(8)</span></a> -- Bidirectionally proxy local sockets to another (possibly remote) socket.<br><a href="systemd-suspend.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-suspend.service</span>(8)</span></a> -- System sleep state logic<br><a href="systemd-sysctl.html"><span class="citerefentry"><span class="refentrytitle">systemd-sysctl</span>(8)</span></a> -- Configure kernel parameters at boot<br><a href="systemd-sysctl.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-sysctl.service</span>(8)</span></a> -- Configure kernel parameters at boot<br><a href="systemd-system-update-generator.html"><span class="citerefentry"><span class="refentrytitle">systemd-system-update-generator</span>(8)</span></a> -- Generator for redirecting boot to offline update mode<br><a href="systemd-system.conf.html"><span class="citerefentry"><span class="refentrytitle">systemd-system.conf</span>(5)</span></a> -- System and session service manager configuration file<br><a href="systemd-timedated.html"><span class="citerefentry"><span class="refentrytitle">systemd-timedated</span>(8)</span></a> -- Time and date bus mechanism<br><a href="systemd-timedated.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-timedated.service</span>(8)</span></a> -- Time and date bus mechanism<br><a href="systemd-timesyncd.html"><span class="citerefentry"><span class="refentrytitle">systemd-timesyncd</span>(8)</span></a> -- Network Time Synchronization<br><a href="systemd-timesyncd.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-timesyncd.service</span>(8)</span></a> -- Network Time Synchronization<br><a href="systemd-tmpfiles.html"><span class="citerefentry"><span class="refentrytitle">systemd-tmpfiles</span>(8)</span></a> -- Creates, deletes and cleans up volatile and temporary files and directories<br><a href="systemd-tmpfiles-clean.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-tmpfiles-clean.service</span>(8)</span></a> -- Creates, deletes and cleans up volatile and temporary files and directories<br><a href="systemd-tmpfiles-clean.timer.html"><span class="citerefentry"><span class="refentrytitle">systemd-tmpfiles-clean.timer</span>(8)</span></a> -- Creates, deletes and cleans up volatile and temporary files and directories<br><a href="systemd-tmpfiles-setup-dev.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-tmpfiles-setup-dev.service</span>(8)</span></a> -- Creates, deletes and cleans up volatile and temporary files and directories<br><a href="systemd-tmpfiles-setup.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-tmpfiles-setup.service</span>(8)</span></a> -- Creates, deletes and cleans up volatile and temporary files and directories<br><a href="systemd-tty-ask-password-agent.html"><span class="citerefentry"><span class="refentrytitle">systemd-tty-ask-password-agent</span>(1)</span></a> -- List or process pending systemd password requests<br><a href="systemd-udevd.html"><span class="citerefentry"><span class="refentrytitle">systemd-udevd</span>(8)</span></a> -- Device event managing daemon<br><a href="systemd-udevd-control.socket.html"><span class="citerefentry"><span class="refentrytitle">systemd-udevd-control.socket</span>(8)</span></a> -- Device event managing daemon<br><a href="systemd-udevd-kernel.socket.html"><span class="citerefentry"><span class="refentrytitle">systemd-udevd-kernel.socket</span>(8)</span></a> -- Device event managing daemon<br><a href="systemd-udevd.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-udevd.service</span>(8)</span></a> -- Device event managing daemon<br><a href="systemd-update-utmp.html"><span class="citerefentry"><span class="refentrytitle">systemd-update-utmp</span>(8)</span></a> -- Write audit and utmp updates at bootup, runlevel changes and shutdown<br><a href="systemd-update-utmp-runlevel.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-update-utmp-runlevel.service</span>(8)</span></a> -- Write audit and utmp updates at bootup, runlevel changes and shutdown<br><a href="systemd-update-utmp.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-update-utmp.service</span>(8)</span></a> -- Write audit and utmp updates at bootup, runlevel changes and shutdown<br><a href="systemd-user-sessions.html"><span class="citerefentry"><span class="refentrytitle">systemd-user-sessions</span>(8)</span></a> -- Permit user logins after boot, prohibit user logins at shutdown<br><a href="systemd-user-sessions.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-user-sessions.service</span>(8)</span></a> -- Permit user logins after boot, prohibit user logins at shutdown<br><a href="systemd-user.conf.html"><span class="citerefentry"><span class="refentrytitle">systemd-user.conf</span>(5)</span></a> -- System and session service manager configuration file<br><a href="systemd-vconsole-setup.html"><span class="citerefentry"><span class="refentrytitle">systemd-vconsole-setup</span>(8)</span></a> -- Configure the virtual console at boot<br><a href="systemd-vconsole-setup.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-vconsole-setup.service</span>(8)</span></a> -- Configure the virtual console at boot<br><a href="systemd.automount.html"><span class="citerefentry"><span class="refentrytitle">systemd.automount</span>(5)</span></a> -- Automount unit configuration<br><a href="systemd.device.html"><span class="citerefentry"><span class="refentrytitle">systemd.device</span>(5)</span></a> -- Device unit configuration<br><a href="systemd.directives.html"><span class="citerefentry"><span class="refentrytitle">systemd.directives</span>(7)</span></a> -- Index of configuration directives<br><a href="systemd.exec.html"><span class="citerefentry"><span class="refentrytitle">systemd.exec</span>(5)</span></a> -- Execution environment configuration<br><a href="systemd.journal-fields.html"><span class="citerefentry"><span class="refentrytitle">systemd.journal-fields</span>(7)</span></a> -- Special journal fields<br><a href="systemd.kill.html"><span class="citerefentry"><span class="refentrytitle">systemd.kill</span>(5)</span></a> -- Process killing procedure configuration<br><a href="systemd.link.html"><span class="citerefentry"><span class="refentrytitle">systemd.link</span>(5)</span></a> -- Network device configuration<br><a href="systemd.mount.html"><span class="citerefentry"><span class="refentrytitle">systemd.mount</span>(5)</span></a> -- Mount unit configuration<br><a href="systemd.netdev.html"><span class="citerefentry"><span class="refentrytitle">systemd.netdev</span>(5)</span></a> -- Virtual Network Device configuration<br><a href="systemd.network.html"><span class="citerefentry"><span class="refentrytitle">systemd.network</span>(5)</span></a> -- Network configuration<br><a href="systemd.path.html"><span class="citerefentry"><span class="refentrytitle">systemd.path</span>(5)</span></a> -- Path unit configuration<br><a href="systemd.preset.html"><span class="citerefentry"><span class="refentrytitle">systemd.preset</span>(5)</span></a> -- Service enablement presets<br><a href="systemd.resource-control.html"><span class="citerefentry"><span class="refentrytitle">systemd.resource-control</span>(5)</span></a> -- Resource control unit settings<br><a href="systemd.scope.html"><span class="citerefentry"><span class="refentrytitle">systemd.scope</span>(5)</span></a> -- Scope unit configuration<br><a href="systemd.service.html"><span class="citerefentry"><span class="refentrytitle">systemd.service</span>(5)</span></a> -- Service unit configuration<br><a href="systemd.slice.html"><span class="citerefentry"><span class="refentrytitle">systemd.slice</span>(5)</span></a> -- Slice unit configuration<br><a href="systemd.snapshot.html"><span class="citerefentry"><span class="refentrytitle">systemd.snapshot</span>(5)</span></a> -- Snapshot unit configuration<br><a href="systemd.socket.html"><span class="citerefentry"><span class="refentrytitle">systemd.socket</span>(5)</span></a> -- Socket unit configuration<br><a href="systemd.special.html"><span class="citerefentry"><span class="refentrytitle">systemd.special</span>(7)</span></a> -- Special systemd units<br><a href="systemd.swap.html"><span class="citerefentry"><span class="refentrytitle">systemd.swap</span>(5)</span></a> -- Swap unit configuration<br><a href="systemd.target.html"><span class="citerefentry"><span class="refentrytitle">systemd.target</span>(5)</span></a> -- Target unit configuration<br><a href="systemd.time.html"><span class="citerefentry"><span class="refentrytitle">systemd.time</span>(7)</span></a> -- Time and date specifications<br><a href="systemd.timer.html"><span class="citerefentry"><span class="refentrytitle">systemd.timer</span>(5)</span></a> -- Timer unit configuration<br><a href="systemd.unit.html"><span class="citerefentry"><span class="refentrytitle">systemd.unit</span>(5)</span></a> -- Unit configuration<br></p></div><div class="refsect1"><a name="idm214189595360"></a><h2 id="T">T<a class="headerlink" title="Permalink to this headline" href="#T">¶</a></h2><p><a href="telinit.html"><span class="citerefentry"><span class="refentrytitle">telinit</span>(8)</span></a> -- Change SysV runlevel<br><a href="timedatectl.html"><span class="citerefentry"><span class="refentrytitle">timedatectl</span>(1)</span></a> -- Control the system time and date<br><a href="tmpfiles.d.html"><span class="citerefentry"><span class="refentrytitle">tmpfiles.d</span>(5)</span></a> -- Configuration for creation, deletion and cleaning of volatile and temporary files<br></p></div><div class="refsect1"><a name="idm214189591968"></a><h2 id="U">U<a class="headerlink" title="Permalink to this headline" href="#U">¶</a></h2><p><a href="udev.html"><span class="citerefentry"><span class="refentrytitle">udev</span>(7)</span></a> -- Dynamic device management<br><a href="udevadm.html"><span class="citerefentry"><span class="refentrytitle">udevadm</span>(8)</span></a> -- udev management tool<br></p></div><div class="refsect1"><a name="idm214189589568"></a><h2 id="V">V<a class="headerlink" title="Permalink to this headline" href="#V">¶</a></h2><p><a href="vconsole.conf.html"><span class="citerefentry"><span class="refentrytitle">vconsole.conf</span>(5)</span></a> -- Configuration file for the virtual console<br></p></div><div class="refsect1"><a name="idm214189588096"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="systemd.index"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>systemd.index — List all manpages from the systemd project</p></div><div class="refsect1"><a name="idm214175805536"></a><h2 id="B">B<a class="headerlink" title="Permalink to this headline" href="#B">¶</a></h2><p><a href="binfmt.d.html"><span class="citerefentry"><span class="refentrytitle">binfmt.d</span>(5)</span></a> -- Configure additional binary formats for executables at boot<br><a href="bootchart.conf.html"><span class="citerefentry"><span class="refentrytitle">bootchart.conf</span>(5)</span></a> -- Boot performance analysis graphing tool configuration file<br><a href="bootctl.html"><span class="citerefentry"><span class="refentrytitle">bootctl</span>(1)</span></a> -- Control the firmware and boot manager settings<br><a href="bootup.html"><span class="citerefentry"><span class="refentrytitle">bootup</span>(7)</span></a> -- System bootup process<br><a href="busctl.html"><span class="citerefentry"><span class="refentrytitle">busctl</span>(1)</span></a> -- Introspect the bus<br></p></div><div class="refsect1"><a name="idm214175800544"></a><h2 id="C">C<a class="headerlink" title="Permalink to this headline" href="#C">¶</a></h2><p><a href="coredump.conf.html"><span class="citerefentry"><span class="refentrytitle">coredump.conf</span>(5)</span></a> -- Coredump storage configuration file<br><a href="coredumpctl.html"><span class="citerefentry"><span class="refentrytitle">coredumpctl</span>(1)</span></a> -- Retrieve coredumps from the journal<br><a href="crypttab.html"><span class="citerefentry"><span class="refentrytitle">crypttab</span>(5)</span></a> -- Configuration for encrypted block devices<br></p></div><div class="refsect1"><a name="idm214175797344"></a><h2 id="D">D<a class="headerlink" title="Permalink to this headline" href="#D">¶</a></h2><p><a href="daemon.html"><span class="citerefentry"><span class="refentrytitle">daemon</span>(7)</span></a> -- Writing and packaging system daemons<br></p></div><div class="refsect1"><a name="idm214175795936"></a><h2 id="F">F<a class="headerlink" title="Permalink to this headline" href="#F">¶</a></h2><p><a href="file-hierarchy.html"><span class="citerefentry"><span class="refentrytitle">file-hierarchy</span>(7)</span></a> -- File system hierarchy overview<br></p></div><div class="refsect1"><a name="idm214175794528"></a><h2 id="H">H<a class="headerlink" title="Permalink to this headline" href="#H">¶</a></h2><p><a href="halt.html"><span class="citerefentry"><span class="refentrytitle">halt</span>(8)</span></a> -- Halt, power-off or reboot the machine<br><a href="hostname.html"><span class="citerefentry"><span class="refentrytitle">hostname</span>(5)</span></a> -- Local hostname configuration file<br><a href="hostnamectl.html"><span class="citerefentry"><span class="refentrytitle">hostnamectl</span>(1)</span></a> -- Control the system hostname<br></p></div><div class="refsect1"><a name="idm214175791328"></a><h2 id="I">I<a class="headerlink" title="Permalink to this headline" href="#I">¶</a></h2><p><a href="init.html"><span class="citerefentry"><span class="refentrytitle">init</span>(1)</span></a> -- systemd system and service manager<br></p></div><div class="refsect1"><a name="idm214175789920"></a><h2 id="J">J<a class="headerlink" title="Permalink to this headline" href="#J">¶</a></h2><p><a href="journalctl.html"><span class="citerefentry"><span class="refentrytitle">journalctl</span>(1)</span></a> -- Query the systemd journal<br><a href="journald.conf.html"><span class="citerefentry"><span class="refentrytitle">journald.conf</span>(5)</span></a> -- Journal service configuration file<br></p></div><div class="refsect1"><a name="idm214175855872"></a><h2 id="K">K<a class="headerlink" title="Permalink to this headline" href="#K">¶</a></h2><p><a href="kernel-command-line.html"><span class="citerefentry"><span class="refentrytitle">kernel-command-line</span>(7)</span></a> -- Kernel command line parameters<br><a href="kernel-install.html"><span class="citerefentry"><span class="refentrytitle">kernel-install</span>(8)</span></a> -- Add and remove kernel and initramfs images to and from /boot<br></p></div><div class="refsect1"><a name="idm214175764816"></a><h2 id="L">L<a class="headerlink" title="Permalink to this headline" href="#L">¶</a></h2><p><a href="locale.conf.html"><span class="citerefentry"><span class="refentrytitle">locale.conf</span>(5)</span></a> -- Configuration file for locale settings<br><a href="localectl.html"><span class="citerefentry"><span class="refentrytitle">localectl</span>(1)</span></a> -- Control the system locale and keyboard layout settings<br><a href="localtime.html"><span class="citerefentry"><span class="refentrytitle">localtime</span>(5)</span></a> -- Local timezone configuration file<br><a href="loginctl.html"><span class="citerefentry"><span class="refentrytitle">loginctl</span>(1)</span></a> -- Control the systemd login manager<br><a href="logind.conf.html"><span class="citerefentry"><span class="refentrytitle">logind.conf</span>(5)</span></a> -- Login manager configuration file<br></p></div><div class="refsect1"><a name="idm214175759824"></a><h2 id="M">M<a class="headerlink" title="Permalink to this headline" href="#M">¶</a></h2><p><a href="machine-id.html"><span class="citerefentry"><span class="refentrytitle">machine-id</span>(5)</span></a> -- Local machine ID configuration file<br><a href="machine-info.html"><span class="citerefentry"><span class="refentrytitle">machine-info</span>(5)</span></a> -- Local machine information file<br><a href="machinectl.html"><span class="citerefentry"><span class="refentrytitle">machinectl</span>(1)</span></a> -- Control the systemd machine manager<br><a href="modules-load.d.html"><span class="citerefentry"><span class="refentrytitle">modules-load.d</span>(5)</span></a> -- Configure kernel modules to load at boot<br></p></div><div class="refsect1"><a name="idm214175755728"></a><h2 id="N">N<a class="headerlink" title="Permalink to this headline" href="#N">¶</a></h2><p><a href="nss-myhostname.html"><span class="citerefentry"><span class="refentrytitle">nss-myhostname</span>(8)</span></a> -- Provide hostname resolution for the locally configured system hostname.<br></p></div><div class="refsect1"><a name="idm214175754320"></a><h2 id="O">O<a class="headerlink" title="Permalink to this headline" href="#O">¶</a></h2><p><a href="os-release.html"><span class="citerefentry"><span class="refentrytitle">os-release</span>(5)</span></a> -- Operating system identification<br></p></div><div class="refsect1"><a name="idm214175752912"></a><h2 id="P">P<a class="headerlink" title="Permalink to this headline" href="#P">¶</a></h2><p><a href="pam_systemd.html"><span class="citerefentry"><span class="refentrytitle">pam_systemd</span>(8)</span></a> -- Register user sessions in the systemd login manager<br><a href="poweroff.html"><span class="citerefentry"><span class="refentrytitle">poweroff</span>(8)</span></a> -- Halt, power-off or reboot the machine<br></p></div><div class="refsect1"><a name="idm214175750608"></a><h2 id="R">R<a class="headerlink" title="Permalink to this headline" href="#R">¶</a></h2><p><a href="reboot.html"><span class="citerefentry"><span class="refentrytitle">reboot</span>(8)</span></a> -- Halt, power-off or reboot the machine<br><a href="resolved.conf.html"><span class="citerefentry"><span class="refentrytitle">resolved.conf</span>(5)</span></a> -- Network Name Resolution configuration file<br><a href="runlevel.html"><span class="citerefentry"><span class="refentrytitle">runlevel</span>(8)</span></a> -- Print previous and current SysV runlevel<br></p></div><div class="refsect1"><a name="idm214175747408"></a><h2 id="S">S<a class="headerlink" title="Permalink to this headline" href="#S">¶</a></h2><p><a href="sd-daemon.html"><span class="citerefentry"><span class="refentrytitle">sd-daemon</span>(3)</span></a> -- APIs for new-style daemons<br><a href="sd-id128.html"><span class="citerefentry"><span class="refentrytitle">sd-id128</span>(3)</span></a> -- APIs for processing 128-bit IDs<br><a href="sd-journal.html"><span class="citerefentry"><span class="refentrytitle">sd-journal</span>(3)</span></a> -- APIs for submitting and querying log entries to and from the journal<br><a href="sd-login.html"><span class="citerefentry"><span class="refentrytitle">sd-login</span>(3)</span></a> -- APIs for tracking logins<br><a href="sd-readahead.html"><span class="citerefentry"><span class="refentrytitle">sd-readahead</span>(3)</span></a> -- Reference implementation of APIs for controlling boot-time read-ahead<br><a href="SD_ALERT.html"><span class="citerefentry"><span class="refentrytitle">SD_ALERT</span>(3)</span></a> -- APIs for new-style daemons<br><a href="sd_booted.html"><span class="citerefentry"><span class="refentrytitle">sd_booted</span>(3)</span></a> -- Test whether the system is running the systemd init system<br><a href="sd_bus_creds_get_audit_login_uid.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_creds_get_audit_login_uid</span>(3)</span></a> -- Retrieve fields from a credentials object<br><a href="sd_bus_creds_get_audit_session_id.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_creds_get_audit_session_id</span>(3)</span></a> -- Retrieve fields from a credentials object<br><a href="sd_bus_creds_get_cgroup.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_creds_get_cgroup</span>(3)</span></a> -- Retrieve fields from a credentials object<br><a href="sd_bus_creds_get_cmdline.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_creds_get_cmdline</span>(3)</span></a> -- Retrieve fields from a credentials object<br><a href="sd_bus_creds_get_comm.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_creds_get_comm</span>(3)</span></a> -- Retrieve fields from a credentials object<br><a href="sd_bus_creds_get_exe.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_creds_get_exe</span>(3)</span></a> -- Retrieve fields from a credentials object<br><a href="sd_bus_creds_get_gid.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_creds_get_gid</span>(3)</span></a> -- Retrieve fields from a credentials object<br><a href="sd_bus_creds_get_mask.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_creds_get_mask</span>(3)</span></a> -- Retrieve credentials object for the specified PID<br><a href="sd_bus_creds_get_owner_uid.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_creds_get_owner_uid</span>(3)</span></a> -- Retrieve fields from a credentials object<br><a href="sd_bus_creds_get_pid.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_creds_get_pid</span>(3)</span></a> -- Retrieve fields from a credentials object<br><a href="sd_bus_creds_get_pid_starttime.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_creds_get_pid_starttime</span>(3)</span></a> -- Retrieve fields from a credentials object<br><a href="sd_bus_creds_get_selinux_context.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_creds_get_selinux_context</span>(3)</span></a> -- Retrieve fields from a credentials object<br><a href="sd_bus_creds_get_session.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_creds_get_session</span>(3)</span></a> -- Retrieve fields from a credentials object<br><a href="sd_bus_creds_get_slice.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_creds_get_slice</span>(3)</span></a> -- Retrieve fields from a credentials object<br><a href="sd_bus_creds_get_tid.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_creds_get_tid</span>(3)</span></a> -- Retrieve fields from a credentials object<br><a href="sd_bus_creds_get_tid_comm.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_creds_get_tid_comm</span>(3)</span></a> -- Retrieve fields from a credentials object<br><a href="sd_bus_creds_get_uid.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_creds_get_uid</span>(3)</span></a> -- Retrieve fields from a credentials object<br><a href="sd_bus_creds_get_unique_name.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_creds_get_unique_name</span>(3)</span></a> -- Retrieve fields from a credentials object<br><a href="sd_bus_creds_get_unit.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_creds_get_unit</span>(3)</span></a> -- Retrieve fields from a credentials object<br><a href="sd_bus_creds_get_user_unit.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_creds_get_user_unit</span>(3)</span></a> -- Retrieve fields from a credentials object<br><a href="sd_bus_creds_get_well_known_names.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_creds_get_well_known_names</span>(3)</span></a> -- Retrieve fields from a credentials object<br><a href="sd_bus_creds_has_bounding_cap.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_creds_has_bounding_cap</span>(3)</span></a> -- Retrieve fields from a credentials object<br><a href="sd_bus_creds_has_effective_cap.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_creds_has_effective_cap</span>(3)</span></a> -- Retrieve fields from a credentials object<br><a href="sd_bus_creds_has_inheritable_cap.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_creds_has_inheritable_cap</span>(3)</span></a> -- Retrieve fields from a credentials object<br><a href="sd_bus_creds_has_permitted_cap.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_creds_has_permitted_cap</span>(3)</span></a> -- Retrieve fields from a credentials object<br><a href="sd_bus_creds_new_from_pid.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_creds_new_from_pid</span>(3)</span></a> -- Retrieve credentials object for the specified PID<br><a href="sd_bus_creds_ref.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_creds_ref</span>(3)</span></a> -- Retrieve credentials object for the specified PID<br><a href="sd_bus_creds_unref.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_creds_unref</span>(3)</span></a> -- Retrieve credentials object for the specified PID<br><a href="sd_bus_default_system.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_default_system</span>(3)</span></a> -- Open a connection to the system or user bus<br><a href="sd_bus_default_user.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_default_user</span>(3)</span></a> -- Open a connection to the system or user bus<br><a href="sd_bus_error.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_error</span>(3)</span></a> -- sd-bus error handling<br><a href="sd_bus_error_copy.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_error_copy</span>(3)</span></a> -- sd-bus error handling<br><a href="sd_bus_error_free.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_error_free</span>(3)</span></a> -- sd-bus error handling<br><a href="sd_bus_error_get_errno.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_error_get_errno</span>(3)</span></a> -- sd-bus error handling<br><a href="sd_bus_error_has_name.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_error_has_name</span>(3)</span></a> -- sd-bus error handling<br><a href="sd_bus_error_is_set.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_error_is_set</span>(3)</span></a> -- sd-bus error handling<br><a href="sd_bus_error_set.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_error_set</span>(3)</span></a> -- sd-bus error handling<br><a href="sd_bus_error_set_const.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_error_set_const</span>(3)</span></a> -- sd-bus error handling<br><a href="sd_bus_error_set_errno.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_error_set_errno</span>(3)</span></a> -- sd-bus error handling<br><a href="sd_bus_error_set_errnof.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_error_set_errnof</span>(3)</span></a> -- sd-bus error handling<br><a href="sd_bus_message_append.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_message_append</span>(3)</span></a> -- Attach parts of message based on a format string<br><a href="sd_bus_message_append_array.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_message_append_array</span>(3)</span></a> -- Attach an array of items to a message<br><a href="sd_bus_message_append_array_iovec.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_message_append_array_iovec</span>(3)</span></a> -- Attach an array of items to a message<br><a href="sd_bus_message_append_array_memfd.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_message_append_array_memfd</span>(3)</span></a> -- Attach an array of items to a message<br><a href="sd_bus_message_append_array_space.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_message_append_array_space</span>(3)</span></a> -- Attach an array of items to a message<br><a href="sd_bus_message_append_basic.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_message_append_basic</span>(3)</span></a> -- Attach a single part to a message<br><a href="sd_bus_message_append_string_iovec.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_message_append_string_iovec</span>(3)</span></a> -- Attach a string to a message<br><a href="sd_bus_message_append_string_memfd.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_message_append_string_memfd</span>(3)</span></a> -- Attach a string to a message<br><a href="sd_bus_message_append_string_space.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_message_append_string_space</span>(3)</span></a> -- Attach a string to a message<br><a href="sd_bus_message_append_strv.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_message_append_strv</span>(3)</span></a> -- Attach an array of strings to a message<br><a href="sd_bus_message_get_cookie.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_message_get_cookie</span>(3)</span></a> -- Returns the transaction cookie of a message<br><a href="sd_bus_message_get_monotonic_usec.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_message_get_monotonic_usec</span>(3)</span></a> -- Retrieve the sender timestamps and sequence number of a message<br><a href="sd_bus_message_get_realtime_usec.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_message_get_realtime_usec</span>(3)</span></a> -- Retrieve the sender timestamps and sequence number of a message<br><a href="sd_bus_message_get_reply_cookie.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_message_get_reply_cookie</span>(3)</span></a> -- Returns the transaction cookie of a message<br><a href="sd_bus_message_get_seqnum.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_message_get_seqnum</span>(3)</span></a> -- Retrieve the sender timestamps and sequence number of a message<br><a href="sd_bus_negotiate_creds.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_negotiate_creds</span>(3)</span></a> -- Control feature negotiation on bus connections<br><a href="sd_bus_negotiate_fds.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_negotiate_fds</span>(3)</span></a> -- Control feature negotiation on bus connections<br><a href="sd_bus_negotiate_timestamps.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_negotiate_timestamps</span>(3)</span></a> -- Control feature negotiation on bus connections<br><a href="sd_bus_new.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_new</span>(3)</span></a> -- Create a new bus object and create or destroy references to it<br><a href="sd_bus_open_system.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_open_system</span>(3)</span></a> -- Open a connection to the system or user bus<br><a href="sd_bus_open_system_container.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_open_system_container</span>(3)</span></a> -- Open a connection to the system or user bus<br><a href="sd_bus_open_system_remote.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_open_system_remote</span>(3)</span></a> -- Open a connection to the system or user bus<br><a href="sd_bus_open_user.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_open_user</span>(3)</span></a> -- Open a connection to the system or user bus<br><a href="sd_bus_path_decode.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_path_decode</span>(3)</span></a> -- Convert an external identifier into an object path and back<br><a href="sd_bus_path_encode.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_path_encode</span>(3)</span></a> -- Convert an external identifier into an object path and back<br><a href="sd_bus_ref.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_ref</span>(3)</span></a> -- Create a new bus object and create or destroy references to it<br><a href="sd_bus_release_name.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_release_name</span>(3)</span></a> -- Request or release a well-known name on a bus<br><a href="sd_bus_request_name.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_request_name</span>(3)</span></a> -- Request or release a well-known name on a bus<br><a href="sd_bus_unref.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_unref</span>(3)</span></a> -- Create a new bus object and create or destroy references to it<br><a href="SD_CRIT.html"><span class="citerefentry"><span class="refentrytitle">SD_CRIT</span>(3)</span></a> -- APIs for new-style daemons<br><a href="SD_DEBUG.html"><span class="citerefentry"><span class="refentrytitle">SD_DEBUG</span>(3)</span></a> -- APIs for new-style daemons<br><a href="SD_EMERG.html"><span class="citerefentry"><span class="refentrytitle">SD_EMERG</span>(3)</span></a> -- APIs for new-style daemons<br><a href="SD_ERR.html"><span class="citerefentry"><span class="refentrytitle">SD_ERR</span>(3)</span></a> -- APIs for new-style daemons<br><a href="sd_event_add_time.html"><span class="citerefentry"><span class="refentrytitle">sd_event_add_time</span>(3)</span></a> -- Add a timer event source to an event loop<br><a href="sd_event_default.html"><span class="citerefentry"><span class="refentrytitle">sd_event_default</span>(3)</span></a> -- Acquire and release an event loop object<br><a href="sd_event_new.html"><span class="citerefentry"><span class="refentrytitle">sd_event_new</span>(3)</span></a> -- Acquire and release an event loop object<br><a href="sd_event_ref.html"><span class="citerefentry"><span class="refentrytitle">sd_event_ref</span>(3)</span></a> -- Acquire and release an event loop object<br><a href="sd_event_source_get_time.html"><span class="citerefentry"><span class="refentrytitle">sd_event_source_get_time</span>(3)</span></a> -- Add a timer event source to an event loop<br><a href="sd_event_source_get_time_accuracy.html"><span class="citerefentry"><span class="refentrytitle">sd_event_source_get_time_accuracy</span>(3)</span></a> -- Add a timer event source to an event loop<br><a href="sd_event_source_get_time_clock.html"><span class="citerefentry"><span class="refentrytitle">sd_event_source_get_time_clock</span>(3)</span></a> -- Add a timer event source to an event loop<br><a href="sd_event_source_set_time.html"><span class="citerefentry"><span class="refentrytitle">sd_event_source_set_time</span>(3)</span></a> -- Add a timer event source to an event loop<br><a href="sd_event_source_set_time_accuracy.html"><span class="citerefentry"><span class="refentrytitle">sd_event_source_set_time_accuracy</span>(3)</span></a> -- Add a timer event source to an event loop<br><a href="sd_event_unref.html"><span class="citerefentry"><span class="refentrytitle">sd_event_unref</span>(3)</span></a> -- Acquire and release an event loop object<br><a href="sd_get_machine_names.html"><span class="citerefentry"><span class="refentrytitle">sd_get_machine_names</span>(3)</span></a> -- Determine available seats, sessions, logged in users and virtual machines/containers<br><a href="sd_get_seats.html"><span class="citerefentry"><span class="refentrytitle">sd_get_seats</span>(3)</span></a> -- Determine available seats, sessions, logged in users and virtual machines/containers<br><a href="sd_get_sessions.html"><span class="citerefentry"><span class="refentrytitle">sd_get_sessions</span>(3)</span></a> -- Determine available seats, sessions, logged in users and virtual machines/containers<br><a href="sd_get_uids.html"><span class="citerefentry"><span class="refentrytitle">sd_get_uids</span>(3)</span></a> -- Determine available seats, sessions, logged in users and virtual machines/containers<br><a href="SD_ID128_CONST_STR.html"><span class="citerefentry"><span class="refentrytitle">SD_ID128_CONST_STR</span>(3)</span></a> -- APIs for processing 128-bit IDs<br><a href="sd_id128_equal.html"><span class="citerefentry"><span class="refentrytitle">sd_id128_equal</span>(3)</span></a> -- APIs for processing 128-bit IDs<br><a href="SD_ID128_FORMAT_STR.html"><span class="citerefentry"><span class="refentrytitle">SD_ID128_FORMAT_STR</span>(3)</span></a> -- APIs for processing 128-bit IDs<br><a href="SD_ID128_FORMAT_VAL.html"><span class="citerefentry"><span class="refentrytitle">SD_ID128_FORMAT_VAL</span>(3)</span></a> -- APIs for processing 128-bit IDs<br><a href="sd_id128_from_string.html"><span class="citerefentry"><span class="refentrytitle">sd_id128_from_string</span>(3)</span></a> -- Format or parse 128-bit IDs as strings<br><a href="sd_id128_get_boot.html"><span class="citerefentry"><span class="refentrytitle">sd_id128_get_boot</span>(3)</span></a> -- Retrieve 128-bit IDs<br><a href="sd_id128_get_machine.html"><span class="citerefentry"><span class="refentrytitle">sd_id128_get_machine</span>(3)</span></a> -- Retrieve 128-bit IDs<br><a href="SD_ID128_MAKE.html"><span class="citerefentry"><span class="refentrytitle">SD_ID128_MAKE</span>(3)</span></a> -- APIs for processing 128-bit IDs<br><a href="sd_id128_randomize.html"><span class="citerefentry"><span class="refentrytitle">sd_id128_randomize</span>(3)</span></a> -- Generate 128-bit IDs<br><a href="sd_id128_t.html"><span class="citerefentry"><span class="refentrytitle">sd_id128_t</span>(3)</span></a> -- APIs for processing 128-bit IDs<br><a href="sd_id128_to_string.html"><span class="citerefentry"><span class="refentrytitle">sd_id128_to_string</span>(3)</span></a> -- Format or parse 128-bit IDs as strings<br><a href="SD_INFO.html"><span class="citerefentry"><span class="refentrytitle">SD_INFO</span>(3)</span></a> -- APIs for new-style daemons<br><a href="sd_is_fifo.html"><span class="citerefentry"><span class="refentrytitle">sd_is_fifo</span>(3)</span></a> -- Check the type of a file descriptor<br><a href="sd_is_mq.html"><span class="citerefentry"><span class="refentrytitle">sd_is_mq</span>(3)</span></a> -- Check the type of a file descriptor<br><a href="sd_is_socket.html"><span class="citerefentry"><span class="refentrytitle">sd_is_socket</span>(3)</span></a> -- Check the type of a file descriptor<br><a href="sd_is_socket_inet.html"><span class="citerefentry"><span class="refentrytitle">sd_is_socket_inet</span>(3)</span></a> -- Check the type of a file descriptor<br><a href="sd_is_socket_unix.html"><span class="citerefentry"><span class="refentrytitle">sd_is_socket_unix</span>(3)</span></a> -- Check the type of a file descriptor<br><a href="sd_is_special.html"><span class="citerefentry"><span class="refentrytitle">sd_is_special</span>(3)</span></a> -- Check the type of a file descriptor<br><a href="sd_journal.html"><span class="citerefentry"><span class="refentrytitle">sd_journal</span>(3)</span></a> -- Open the system journal for reading<br><a href="sd_journal_add_conjunction.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_add_conjunction</span>(3)</span></a> -- Add or remove entry matches<br><a href="sd_journal_add_disjunction.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_add_disjunction</span>(3)</span></a> -- Add or remove entry matches<br><a href="sd_journal_add_match.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_add_match</span>(3)</span></a> -- Add or remove entry matches<br><a href="SD_JOURNAL_APPEND.html"><span class="citerefentry"><span class="refentrytitle">SD_JOURNAL_APPEND</span>(3)</span></a> -- Journal change notification interface<br><a href="sd_journal_close.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_close</span>(3)</span></a> -- Open the system journal for reading<br><a href="SD_JOURNAL_CURRENT_USER.html"><span class="citerefentry"><span class="refentrytitle">SD_JOURNAL_CURRENT_USER</span>(3)</span></a> -- Open the system journal for reading<br><a href="sd_journal_enumerate_data.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_enumerate_data</span>(3)</span></a> -- Read data fields from the current journal entry<br><a href="sd_journal_enumerate_unique.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_enumerate_unique</span>(3)</span></a> -- Read unique data fields from the journal<br><a href="sd_journal_flush_matches.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_flush_matches</span>(3)</span></a> -- Add or remove entry matches<br><a href="SD_JOURNAL_FOREACH.html"><span class="citerefentry"><span class="refentrytitle">SD_JOURNAL_FOREACH</span>(3)</span></a> -- Advance or set back the read pointer in the journal<br><a href="SD_JOURNAL_FOREACH_BACKWARDS.html"><span class="citerefentry"><span class="refentrytitle">SD_JOURNAL_FOREACH_BACKWARDS</span>(3)</span></a> -- Advance or set back the read pointer in the journal<br><a href="SD_JOURNAL_FOREACH_DATA.html"><span class="citerefentry"><span class="refentrytitle">SD_JOURNAL_FOREACH_DATA</span>(3)</span></a> -- Read data fields from the current journal entry<br><a href="SD_JOURNAL_FOREACH_UNIQUE.html"><span class="citerefentry"><span class="refentrytitle">SD_JOURNAL_FOREACH_UNIQUE</span>(3)</span></a> -- Read unique data fields from the journal<br><a href="sd_journal_get_catalog.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_get_catalog</span>(3)</span></a> -- Retrieve message catalog entry<br><a href="sd_journal_get_catalog_for_message_id.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_get_catalog_for_message_id</span>(3)</span></a> -- Retrieve message catalog entry<br><a href="sd_journal_get_cursor.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_get_cursor</span>(3)</span></a> -- Get cursor string for or test cursor string against the current journal entry<br><a href="sd_journal_get_cutoff_monotonic_usec.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_get_cutoff_monotonic_usec</span>(3)</span></a> -- Read cut-off timestamps from the current journal entry<br><a href="sd_journal_get_cutoff_realtime_usec.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_get_cutoff_realtime_usec</span>(3)</span></a> -- Read cut-off timestamps from the current journal entry<br><a href="sd_journal_get_data.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_get_data</span>(3)</span></a> -- Read data fields from the current journal entry<br><a href="sd_journal_get_data_threshold.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_get_data_threshold</span>(3)</span></a> -- Read data fields from the current journal entry<br><a href="sd_journal_get_events.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_get_events</span>(3)</span></a> -- Journal change notification interface<br><a href="sd_journal_get_fd.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_get_fd</span>(3)</span></a> -- Journal change notification interface<br><a href="sd_journal_get_monotonic_usec.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_get_monotonic_usec</span>(3)</span></a> -- Read timestamps from the current journal entry<br><a href="sd_journal_get_realtime_usec.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_get_realtime_usec</span>(3)</span></a> -- Read timestamps from the current journal entry<br><a href="sd_journal_get_timeout.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_get_timeout</span>(3)</span></a> -- Journal change notification interface<br><a href="sd_journal_get_usage.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_get_usage</span>(3)</span></a> -- Journal disk usage<br><a href="SD_JOURNAL_INVALIDATE.html"><span class="citerefentry"><span class="refentrytitle">SD_JOURNAL_INVALIDATE</span>(3)</span></a> -- Journal change notification interface<br><a href="SD_JOURNAL_LOCAL_ONLY.html"><span class="citerefentry"><span class="refentrytitle">SD_JOURNAL_LOCAL_ONLY</span>(3)</span></a> -- Open the system journal for reading<br><a href="sd_journal_next.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_next</span>(3)</span></a> -- Advance or set back the read pointer in the journal<br><a href="sd_journal_next_skip.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_next_skip</span>(3)</span></a> -- Advance or set back the read pointer in the journal<br><a href="SD_JOURNAL_NOP.html"><span class="citerefentry"><span class="refentrytitle">SD_JOURNAL_NOP</span>(3)</span></a> -- Journal change notification interface<br><a href="sd_journal_open.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_open</span>(3)</span></a> -- Open the system journal for reading<br><a href="sd_journal_open_container.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_open_container</span>(3)</span></a> -- Open the system journal for reading<br><a href="sd_journal_open_directory.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_open_directory</span>(3)</span></a> -- Open the system journal for reading<br><a href="sd_journal_open_files.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_open_files</span>(3)</span></a> -- Open the system journal for reading<br><a href="sd_journal_perror.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_perror</span>(3)</span></a> -- Submit log entries to the journal<br><a href="sd_journal_previous.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_previous</span>(3)</span></a> -- Advance or set back the read pointer in the journal<br><a href="sd_journal_previous_skip.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_previous_skip</span>(3)</span></a> -- Advance or set back the read pointer in the journal<br><a href="sd_journal_print.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_print</span>(3)</span></a> -- Submit log entries to the journal<br><a href="sd_journal_printv.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_printv</span>(3)</span></a> -- Submit log entries to the journal<br><a href="sd_journal_process.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_process</span>(3)</span></a> -- Journal change notification interface<br><a href="sd_journal_query_unique.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_query_unique</span>(3)</span></a> -- Read unique data fields from the journal<br><a href="sd_journal_reliable_fd.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_reliable_fd</span>(3)</span></a> -- Journal change notification interface<br><a href="sd_journal_restart_data.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_restart_data</span>(3)</span></a> -- Read data fields from the current journal entry<br><a href="sd_journal_restart_unique.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_restart_unique</span>(3)</span></a> -- Read unique data fields from the journal<br><a href="SD_JOURNAL_RUNTIME_ONLY.html"><span class="citerefentry"><span class="refentrytitle">SD_JOURNAL_RUNTIME_ONLY</span>(3)</span></a> -- Open the system journal for reading<br><a href="sd_journal_seek_cursor.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_seek_cursor</span>(3)</span></a> -- Seek to a position in the journal<br><a href="sd_journal_seek_head.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_seek_head</span>(3)</span></a> -- Seek to a position in the journal<br><a href="sd_journal_seek_monotonic_usec.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_seek_monotonic_usec</span>(3)</span></a> -- Seek to a position in the journal<br><a href="sd_journal_seek_realtime_usec.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_seek_realtime_usec</span>(3)</span></a> -- Seek to a position in the journal<br><a href="sd_journal_seek_tail.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_seek_tail</span>(3)</span></a> -- Seek to a position in the journal<br><a href="sd_journal_send.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_send</span>(3)</span></a> -- Submit log entries to the journal<br><a href="sd_journal_sendv.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_sendv</span>(3)</span></a> -- Submit log entries to the journal<br><a href="sd_journal_set_data_threshold.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_set_data_threshold</span>(3)</span></a> -- Read data fields from the current journal entry<br><a href="sd_journal_stream_fd.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_stream_fd</span>(3)</span></a> -- Create log stream file descriptor to the journal<br><a href="SD_JOURNAL_SUPPRESS_LOCATION.html"><span class="citerefentry"><span class="refentrytitle">SD_JOURNAL_SUPPRESS_LOCATION</span>(3)</span></a> -- Submit log entries to the journal<br><a href="SD_JOURNAL_SYSTEM.html"><span class="citerefentry"><span class="refentrytitle">SD_JOURNAL_SYSTEM</span>(3)</span></a> -- Open the system journal for reading<br><a href="sd_journal_test_cursor.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_test_cursor</span>(3)</span></a> -- Get cursor string for or test cursor string against the current journal entry<br><a href="sd_journal_wait.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_wait</span>(3)</span></a> -- Journal change notification interface<br><a href="sd_listen_fds.html"><span class="citerefentry"><span class="refentrytitle">sd_listen_fds</span>(3)</span></a> -- Check for file descriptors passed by the system manager<br><a href="SD_LISTEN_FDS_START.html"><span class="citerefentry"><span class="refentrytitle">SD_LISTEN_FDS_START</span>(3)</span></a> -- Check for file descriptors passed by the system manager<br><a href="sd_login_monitor.html"><span class="citerefentry"><span class="refentrytitle">sd_login_monitor</span>(3)</span></a> -- Monitor login sessions, seats, users and virtual machines/containers<br><a href="sd_login_monitor_flush.html"><span class="citerefentry"><span class="refentrytitle">sd_login_monitor_flush</span>(3)</span></a> -- Monitor login sessions, seats, users and virtual machines/containers<br><a href="sd_login_monitor_get_events.html"><span class="citerefentry"><span class="refentrytitle">sd_login_monitor_get_events</span>(3)</span></a> -- Monitor login sessions, seats, users and virtual machines/containers<br><a href="sd_login_monitor_get_fd.html"><span class="citerefentry"><span class="refentrytitle">sd_login_monitor_get_fd</span>(3)</span></a> -- Monitor login sessions, seats, users and virtual machines/containers<br><a href="sd_login_monitor_get_timeout.html"><span class="citerefentry"><span class="refentrytitle">sd_login_monitor_get_timeout</span>(3)</span></a> -- Monitor login sessions, seats, users and virtual machines/containers<br><a href="sd_login_monitor_new.html"><span class="citerefentry"><span class="refentrytitle">sd_login_monitor_new</span>(3)</span></a> -- Monitor login sessions, seats, users and virtual machines/containers<br><a href="sd_login_monitor_unref.html"><span class="citerefentry"><span class="refentrytitle">sd_login_monitor_unref</span>(3)</span></a> -- Monitor login sessions, seats, users and virtual machines/containers<br><a href="SD_NOTICE.html"><span class="citerefentry"><span class="refentrytitle">SD_NOTICE</span>(3)</span></a> -- APIs for new-style daemons<br><a href="sd_notify.html"><span class="citerefentry"><span class="refentrytitle">sd_notify</span>(3)</span></a> -- Notify service manager about start-up completion and other daemon status changes<br><a href="sd_notifyf.html"><span class="citerefentry"><span class="refentrytitle">sd_notifyf</span>(3)</span></a> -- Notify service manager about start-up completion and other daemon status changes<br><a href="sd_peer_get_machine_name.html"><span class="citerefentry"><span class="refentrytitle">sd_peer_get_machine_name</span>(3)</span></a> -- Determine session, service, owner of a session, container/VM or slice of a specific PID or socket peer<br><a href="sd_peer_get_owner_uid.html"><span class="citerefentry"><span class="refentrytitle">sd_peer_get_owner_uid</span>(3)</span></a> -- Determine session, service, owner of a session, container/VM or slice of a specific PID or socket peer<br><a href="sd_peer_get_session.html"><span class="citerefentry"><span class="refentrytitle">sd_peer_get_session</span>(3)</span></a> -- Determine session, service, owner of a session, container/VM or slice of a specific PID or socket peer<br><a href="sd_peer_get_slice.html"><span class="citerefentry"><span class="refentrytitle">sd_peer_get_slice</span>(3)</span></a> -- Determine session, service, owner of a session, container/VM or slice of a specific PID or socket peer<br><a href="sd_peer_get_unit.html"><span class="citerefentry"><span class="refentrytitle">sd_peer_get_unit</span>(3)</span></a> -- Determine session, service, owner of a session, container/VM or slice of a specific PID or socket peer<br><a href="sd_peer_get_user_unit.html"><span class="citerefentry"><span class="refentrytitle">sd_peer_get_user_unit</span>(3)</span></a> -- Determine session, service, owner of a session, container/VM or slice of a specific PID or socket peer<br><a href="sd_pid_get_machine_name.html"><span class="citerefentry"><span class="refentrytitle">sd_pid_get_machine_name</span>(3)</span></a> -- Determine session, service, owner of a session, container/VM or slice of a specific PID or socket peer<br><a href="sd_pid_get_owner_uid.html"><span class="citerefentry"><span class="refentrytitle">sd_pid_get_owner_uid</span>(3)</span></a> -- Determine session, service, owner of a session, container/VM or slice of a specific PID or socket peer<br><a href="sd_pid_get_session.html"><span class="citerefentry"><span class="refentrytitle">sd_pid_get_session</span>(3)</span></a> -- Determine session, service, owner of a session, container/VM or slice of a specific PID or socket peer<br><a href="sd_pid_get_slice.html"><span class="citerefentry"><span class="refentrytitle">sd_pid_get_slice</span>(3)</span></a> -- Determine session, service, owner of a session, container/VM or slice of a specific PID or socket peer<br><a href="sd_pid_get_unit.html"><span class="citerefentry"><span class="refentrytitle">sd_pid_get_unit</span>(3)</span></a> -- Determine session, service, owner of a session, container/VM or slice of a specific PID or socket peer<br><a href="sd_pid_get_user_unit.html"><span class="citerefentry"><span class="refentrytitle">sd_pid_get_user_unit</span>(3)</span></a> -- Determine session, service, owner of a session, container/VM or slice of a specific PID or socket peer<br><a href="sd_readahead.html"><span class="citerefentry"><span class="refentrytitle">sd_readahead</span>(3)</span></a> -- Control ongoing disk boot-time read-ahead operations<br><a href="sd_seat_can_graphical.html"><span class="citerefentry"><span class="refentrytitle">sd_seat_can_graphical</span>(3)</span></a> -- Determine state of a specific seat<br><a href="sd_seat_can_multi_session.html"><span class="citerefentry"><span class="refentrytitle">sd_seat_can_multi_session</span>(3)</span></a> -- Determine state of a specific seat<br><a href="sd_seat_can_tty.html"><span class="citerefentry"><span class="refentrytitle">sd_seat_can_tty</span>(3)</span></a> -- Determine state of a specific seat<br><a href="sd_seat_get_active.html"><span class="citerefentry"><span class="refentrytitle">sd_seat_get_active</span>(3)</span></a> -- Determine state of a specific seat<br><a href="sd_seat_get_sessions.html"><span class="citerefentry"><span class="refentrytitle">sd_seat_get_sessions</span>(3)</span></a> -- Determine state of a specific seat<br><a href="sd_session_get_class.html"><span class="citerefentry"><span class="refentrytitle">sd_session_get_class</span>(3)</span></a> -- Determine state of a specific session<br><a href="sd_session_get_display.html"><span class="citerefentry"><span class="refentrytitle">sd_session_get_display</span>(3)</span></a> -- Determine state of a specific session<br><a href="sd_session_get_remote_host.html"><span class="citerefentry"><span class="refentrytitle">sd_session_get_remote_host</span>(3)</span></a> -- Determine state of a specific session<br><a href="sd_session_get_remote_user.html"><span class="citerefentry"><span class="refentrytitle">sd_session_get_remote_user</span>(3)</span></a> -- Determine state of a specific session<br><a href="sd_session_get_seat.html"><span class="citerefentry"><span class="refentrytitle">sd_session_get_seat</span>(3)</span></a> -- Determine state of a specific session<br><a href="sd_session_get_service.html"><span class="citerefentry"><span class="refentrytitle">sd_session_get_service</span>(3)</span></a> -- Determine state of a specific session<br><a href="sd_session_get_state.html"><span class="citerefentry"><span class="refentrytitle">sd_session_get_state</span>(3)</span></a> -- Determine state of a specific session<br><a href="sd_session_get_tty.html"><span class="citerefentry"><span class="refentrytitle">sd_session_get_tty</span>(3)</span></a> -- Determine state of a specific session<br><a href="sd_session_get_type.html"><span class="citerefentry"><span class="refentrytitle">sd_session_get_type</span>(3)</span></a> -- Determine state of a specific session<br><a href="sd_session_get_uid.html"><span class="citerefentry"><span class="refentrytitle">sd_session_get_uid</span>(3)</span></a> -- Determine state of a specific session<br><a href="sd_session_get_vt.html"><span class="citerefentry"><span class="refentrytitle">sd_session_get_vt</span>(3)</span></a> -- Determine state of a specific session<br><a href="sd_session_is_active.html"><span class="citerefentry"><span class="refentrytitle">sd_session_is_active</span>(3)</span></a> -- Determine state of a specific session<br><a href="sd_session_is_remote.html"><span class="citerefentry"><span class="refentrytitle">sd_session_is_remote</span>(3)</span></a> -- Determine state of a specific session<br><a href="sd_uid_get_display.html"><span class="citerefentry"><span class="refentrytitle">sd_uid_get_display</span>(3)</span></a> -- Determine login state of a specific Unix user ID<br><a href="sd_uid_get_seats.html"><span class="citerefentry"><span class="refentrytitle">sd_uid_get_seats</span>(3)</span></a> -- Determine login state of a specific Unix user ID<br><a href="sd_uid_get_sessions.html"><span class="citerefentry"><span class="refentrytitle">sd_uid_get_sessions</span>(3)</span></a> -- Determine login state of a specific Unix user ID<br><a href="sd_uid_get_state.html"><span class="citerefentry"><span class="refentrytitle">sd_uid_get_state</span>(3)</span></a> -- Determine login state of a specific Unix user ID<br><a href="sd_uid_is_on_seat.html"><span class="citerefentry"><span class="refentrytitle">sd_uid_is_on_seat</span>(3)</span></a> -- Determine login state of a specific Unix user ID<br><a href="SD_WARNING.html"><span class="citerefentry"><span class="refentrytitle">SD_WARNING</span>(3)</span></a> -- APIs for new-style daemons<br><a href="sd_watchdog_enabled.html"><span class="citerefentry"><span class="refentrytitle">sd_watchdog_enabled</span>(3)</span></a> -- Check whether the service manager expects watchdog keep-alive notifications from a service<br><a href="shutdown.html"><span class="citerefentry"><span class="refentrytitle">shutdown</span>(8)</span></a> -- Halt, power-off or reboot the machine<br><a href="sysctl.d.html"><span class="citerefentry"><span class="refentrytitle">sysctl.d</span>(5)</span></a> -- Configure kernel parameters at boot<br><a href="systemctl.html"><span class="citerefentry"><span class="refentrytitle">systemctl</span>(1)</span></a> -- Control the systemd system and service manager<br><a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a> -- systemd system and service manager<br><a href="systemd-activate.html"><span class="citerefentry"><span class="refentrytitle">systemd-activate</span>(8)</span></a> -- Test socket activation of daemons<br><a href="systemd-analyze.html"><span class="citerefentry"><span class="refentrytitle">systemd-analyze</span>(1)</span></a> -- Analyze system boot-up performance<br><a href="systemd-ask-password.html"><span class="citerefentry"><span class="refentrytitle">systemd-ask-password</span>(1)</span></a> -- Query the user for a system password<br><a href="systemd-ask-password-console.path.html"><span class="citerefentry"><span class="refentrytitle">systemd-ask-password-console.path</span>(8)</span></a> -- Query the user for system passwords on the console and via wall<br><a href="systemd-ask-password-console.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-ask-password-console.service</span>(8)</span></a> -- Query the user for system passwords on the console and via wall<br><a href="systemd-ask-password-wall.path.html"><span class="citerefentry"><span class="refentrytitle">systemd-ask-password-wall.path</span>(8)</span></a> -- Query the user for system passwords on the console and via wall<br><a href="systemd-ask-password-wall.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-ask-password-wall.service</span>(8)</span></a> -- Query the user for system passwords on the console and via wall<br><a href="systemd-backlight.html"><span class="citerefentry"><span class="refentrytitle">systemd-backlight</span>(8)</span></a> -- Load and save the display backlight brightness at boot and shutdown<br><a href="systemd-backlight@.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-backlight@.service</span>(8)</span></a> -- Load and save the display backlight brightness at boot and shutdown<br><a href="systemd-binfmt.html"><span class="citerefentry"><span class="refentrytitle">systemd-binfmt</span>(8)</span></a> -- Configure additional binary formats for executables at boot<br><a href="systemd-binfmt.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-binfmt.service</span>(8)</span></a> -- Configure additional binary formats for executables at boot<br><a href="systemd-bootchart.html"><span class="citerefentry"><span class="refentrytitle">systemd-bootchart</span>(1)</span></a> -- Boot performance graphing tool<br><a href="systemd-bus-proxyd.html"><span class="citerefentry"><span class="refentrytitle">systemd-bus-proxyd</span>(8)</span></a> -- Connect STDIO or a socket to a given bus address<br><a href="systemd-bus-proxyd.socket.html"><span class="citerefentry"><span class="refentrytitle">systemd-bus-proxyd.socket</span>(8)</span></a> -- Proxy classic D-Bus clients to kdbus<br><a href="systemd-bus-proxyd@.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-bus-proxyd@.service</span>(8)</span></a> -- Proxy classic D-Bus clients to kdbus<br><a href="systemd-cat.html"><span class="citerefentry"><span class="refentrytitle">systemd-cat</span>(1)</span></a> -- Connect a pipeline or program's output with the journal<br><a href="systemd-cgls.html"><span class="citerefentry"><span class="refentrytitle">systemd-cgls</span>(1)</span></a> -- Recursively show control group contents<br><a href="systemd-cgtop.html"><span class="citerefentry"><span class="refentrytitle">systemd-cgtop</span>(1)</span></a> -- Show top control groups by their resource usage<br><a href="systemd-cryptsetup.html"><span class="citerefentry"><span class="refentrytitle">systemd-cryptsetup</span>(8)</span></a> -- Full disk decryption logic<br><a href="systemd-cryptsetup-generator.html"><span class="citerefentry"><span class="refentrytitle">systemd-cryptsetup-generator</span>(8)</span></a> -- Unit generator for<br><a href="systemd-cryptsetup@.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-cryptsetup@.service</span>(8)</span></a> -- Full disk decryption logic<br><a href="systemd-debug-generator.html"><span class="citerefentry"><span class="refentrytitle">systemd-debug-generator</span>(8)</span></a> -- Generator for enabling a runtime debug shell and masking specific units at boot<br><a href="systemd-delta.html"><span class="citerefentry"><span class="refentrytitle">systemd-delta</span>(1)</span></a> -- Find overridden configuration files<br><a href="systemd-detect-virt.html"><span class="citerefentry"><span class="refentrytitle">systemd-detect-virt</span>(1)</span></a> -- Detect execution in a virtualized environment<br><a href="systemd-efi-boot-generator.html"><span class="citerefentry"><span class="refentrytitle">systemd-efi-boot-generator</span>(8)</span></a> -- Generator for automatically mounting the EFI System Partition used by the current boot to<br><a href="systemd-fsck.html"><span class="citerefentry"><span class="refentrytitle">systemd-fsck</span>(8)</span></a> -- File system checker logic<br><a href="systemd-fsck-root.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-fsck-root.service</span>(8)</span></a> -- File system checker logic<br><a href="systemd-fsck@.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-fsck@.service</span>(8)</span></a> -- File system checker logic<br><a href="systemd-fstab-generator.html"><span class="citerefentry"><span class="refentrytitle">systemd-fstab-generator</span>(8)</span></a> -- Unit generator for /etc/fstab<br><a href="systemd-getty-generator.html"><span class="citerefentry"><span class="refentrytitle">systemd-getty-generator</span>(8)</span></a> -- Generator for enabling getty instances on the console<br><a href="systemd-gpt-auto-generator.html"><span class="citerefentry"><span class="refentrytitle">systemd-gpt-auto-generator</span>(8)</span></a> -- Generator for automatically discovering and mounting root,<br><a href="systemd-halt.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-halt.service</span>(8)</span></a> -- System shutdown logic<br><a href="systemd-hibernate.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-hibernate.service</span>(8)</span></a> -- System sleep state logic<br><a href="systemd-hostnamed.html"><span class="citerefentry"><span class="refentrytitle">systemd-hostnamed</span>(8)</span></a> -- Host name bus mechanism<br><a href="systemd-hostnamed.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-hostnamed.service</span>(8)</span></a> -- Host name bus mechanism<br><a href="systemd-hybrid-sleep.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-hybrid-sleep.service</span>(8)</span></a> -- System sleep state logic<br><a href="systemd-inhibit.html"><span class="citerefentry"><span class="refentrytitle">systemd-inhibit</span>(1)</span></a> -- Execute a program with an inhibition lock taken<br><a href="systemd-initctl.html"><span class="citerefentry"><span class="refentrytitle">systemd-initctl</span>(8)</span></a> -- /dev/initctl compatibility<br><a href="systemd-initctl.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-initctl.service</span>(8)</span></a> -- /dev/initctl compatibility<br><a href="systemd-initctl.socket.html"><span class="citerefentry"><span class="refentrytitle">systemd-initctl.socket</span>(8)</span></a> -- /dev/initctl compatibility<br><a href="systemd-journal-gatewayd.html"><span class="citerefentry"><span class="refentrytitle">systemd-journal-gatewayd</span>(8)</span></a> -- HTTP server for journal events<br><a href="systemd-journal-gatewayd.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-journal-gatewayd.service</span>(8)</span></a> -- HTTP server for journal events<br><a href="systemd-journal-gatewayd.socket.html"><span class="citerefentry"><span class="refentrytitle">systemd-journal-gatewayd.socket</span>(8)</span></a> -- HTTP server for journal events<br><a href="systemd-journal-remote.html"><span class="citerefentry"><span class="refentrytitle">systemd-journal-remote</span>(8)</span></a> -- Stream journal messages over the network<br><a href="systemd-journald.html"><span class="citerefentry"><span class="refentrytitle">systemd-journald</span>(8)</span></a> -- Journal service<br><a href="systemd-journald-dev-log.socket.html"><span class="citerefentry"><span class="refentrytitle">systemd-journald-dev-log.socket</span>(8)</span></a> -- Journal service<br><a href="systemd-journald.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-journald.service</span>(8)</span></a> -- Journal service<br><a href="systemd-journald.socket.html"><span class="citerefentry"><span class="refentrytitle">systemd-journald.socket</span>(8)</span></a> -- Journal service<br><a href="systemd-kexec.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-kexec.service</span>(8)</span></a> -- System shutdown logic<br><a href="systemd-localed.html"><span class="citerefentry"><span class="refentrytitle">systemd-localed</span>(8)</span></a> -- Locale bus mechanism<br><a href="systemd-localed.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-localed.service</span>(8)</span></a> -- Locale bus mechanism<br><a href="systemd-logind.html"><span class="citerefentry"><span class="refentrytitle">systemd-logind</span>(8)</span></a> -- Login manager<br><a href="systemd-logind.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-logind.service</span>(8)</span></a> -- Login manager<br><a href="systemd-machine-id-setup.html"><span class="citerefentry"><span class="refentrytitle">systemd-machine-id-setup</span>(1)</span></a> -- Initialize the machine ID in /etc/machine-id<br><a href="systemd-machined.html"><span class="citerefentry"><span class="refentrytitle">systemd-machined</span>(8)</span></a> -- Virtual machine and container registration manager<br><a href="systemd-machined.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-machined.service</span>(8)</span></a> -- Virtual machine and container registration manager<br><a href="systemd-modules-load.html"><span class="citerefentry"><span class="refentrytitle">systemd-modules-load</span>(8)</span></a> -- Configure kernel modules to load at boot<br><a href="systemd-modules-load.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-modules-load.service</span>(8)</span></a> -- Configure kernel modules to load at boot<br><a href="systemd-networkd.html"><span class="citerefentry"><span class="refentrytitle">systemd-networkd</span>(8)</span></a> -- Network manager<br><a href="systemd-networkd-wait-online.html"><span class="citerefentry"><span class="refentrytitle">systemd-networkd-wait-online</span>(8)</span></a> -- Wait for network to come online<br><a href="systemd-networkd-wait-online.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-networkd-wait-online.service</span>(8)</span></a> -- Wait for network to come online<br><a href="systemd-networkd.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-networkd.service</span>(8)</span></a> -- Network manager<br><a href="systemd-notify.html"><span class="citerefentry"><span class="refentrytitle">systemd-notify</span>(1)</span></a> -- Notify service manager about start-up completion and other daemon status changes<br><a href="systemd-nspawn.html"><span class="citerefentry"><span class="refentrytitle">systemd-nspawn</span>(1)</span></a> -- Spawn a namespace container for debugging, testing and building<br><a href="systemd-path.html"><span class="citerefentry"><span class="refentrytitle">systemd-path</span>(1)</span></a> -- List and query system and user paths<br><a href="systemd-poweroff.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-poweroff.service</span>(8)</span></a> -- System shutdown logic<br><a href="systemd-quotacheck.html"><span class="citerefentry"><span class="refentrytitle">systemd-quotacheck</span>(8)</span></a> -- File system quota checker logic<br><a href="systemd-quotacheck.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-quotacheck.service</span>(8)</span></a> -- File system quota checker logic<br><a href="systemd-random-seed.html"><span class="citerefentry"><span class="refentrytitle">systemd-random-seed</span>(8)</span></a> -- Load and save the system random seed at boot and shutdown<br><a href="systemd-random-seed.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-random-seed.service</span>(8)</span></a> -- Load and save the system random seed at boot and shutdown<br><a href="systemd-readahead.html"><span class="citerefentry"><span class="refentrytitle">systemd-readahead</span>(8)</span></a> -- Disk read ahead logic<br><a href="systemd-readahead-collect.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-readahead-collect.service</span>(8)</span></a> -- Disk read ahead logic<br><a href="systemd-readahead-done.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-readahead-done.service</span>(8)</span></a> -- Disk read ahead logic<br><a href="systemd-readahead-done.timer.html"><span class="citerefentry"><span class="refentrytitle">systemd-readahead-done.timer</span>(8)</span></a> -- Disk read ahead logic<br><a href="systemd-readahead-replay.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-readahead-replay.service</span>(8)</span></a> -- Disk read ahead logic<br><a href="systemd-reboot.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-reboot.service</span>(8)</span></a> -- System shutdown logic<br><a href="systemd-remount-fs.html"><span class="citerefentry"><span class="refentrytitle">systemd-remount-fs</span>(8)</span></a> -- Remount root and kernel file systems<br><a href="systemd-remount-fs.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-remount-fs.service</span>(8)</span></a> -- Remount root and kernel file systems<br><a href="systemd-resolved.html"><span class="citerefentry"><span class="refentrytitle">systemd-resolved</span>(8)</span></a> -- Network Name Resolution manager<br><a href="systemd-resolved.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-resolved.service</span>(8)</span></a> -- Network Name Resolution manager<br><a href="systemd-rfkill.html"><span class="citerefentry"><span class="refentrytitle">systemd-rfkill</span>(8)</span></a> -- Load and save the RF kill switch state at boot and shutdown<br><a href="systemd-rfkill@.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-rfkill@.service</span>(8)</span></a> -- Load and save the RF kill switch state at boot and shutdown<br><a href="systemd-run.html"><span class="citerefentry"><span class="refentrytitle">systemd-run</span>(1)</span></a> -- Run programs in transient scope or service units<br><a href="systemd-shutdown.html"><span class="citerefentry"><span class="refentrytitle">systemd-shutdown</span>(8)</span></a> -- System shutdown logic<br><a href="systemd-shutdownd.html"><span class="citerefentry"><span class="refentrytitle">systemd-shutdownd</span>(8)</span></a> -- Scheduled shutdown service<br><a href="systemd-shutdownd.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-shutdownd.service</span>(8)</span></a> -- Scheduled shutdown service<br><a href="systemd-shutdownd.socket.html"><span class="citerefentry"><span class="refentrytitle">systemd-shutdownd.socket</span>(8)</span></a> -- Scheduled shutdown service<br><a href="systemd-sleep.html"><span class="citerefentry"><span class="refentrytitle">systemd-sleep</span>(8)</span></a> -- System sleep state logic<br><a href="systemd-sleep.conf.html"><span class="citerefentry"><span class="refentrytitle">systemd-sleep.conf</span>(5)</span></a> -- Suspend and hibernation configuration file<br><a href="systemd-socket-proxyd.html"><span class="citerefentry"><span class="refentrytitle">systemd-socket-proxyd</span>(8)</span></a> -- Bidirectionally proxy local sockets to another (possibly remote) socket.<br><a href="systemd-suspend.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-suspend.service</span>(8)</span></a> -- System sleep state logic<br><a href="systemd-sysctl.html"><span class="citerefentry"><span class="refentrytitle">systemd-sysctl</span>(8)</span></a> -- Configure kernel parameters at boot<br><a href="systemd-sysctl.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-sysctl.service</span>(8)</span></a> -- Configure kernel parameters at boot<br><a href="systemd-system-update-generator.html"><span class="citerefentry"><span class="refentrytitle">systemd-system-update-generator</span>(8)</span></a> -- Generator for redirecting boot to offline update mode<br><a href="systemd-system.conf.html"><span class="citerefentry"><span class="refentrytitle">systemd-system.conf</span>(5)</span></a> -- System and session service manager configuration file<br><a href="systemd-sysusers.html"><span class="citerefentry"><span class="refentrytitle">systemd-sysusers</span>(8)</span></a> -- Allocate system users and groups<br><a href="systemd-sysusers.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-sysusers.service</span>(8)</span></a> -- Allocate system users and groups<br><a href="systemd-timedated.html"><span class="citerefentry"><span class="refentrytitle">systemd-timedated</span>(8)</span></a> -- Time and date bus mechanism<br><a href="systemd-timedated.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-timedated.service</span>(8)</span></a> -- Time and date bus mechanism<br><a href="systemd-timesyncd.html"><span class="citerefentry"><span class="refentrytitle">systemd-timesyncd</span>(8)</span></a> -- Network Time Synchronization<br><a href="systemd-timesyncd.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-timesyncd.service</span>(8)</span></a> -- Network Time Synchronization<br><a href="systemd-tmpfiles.html"><span class="citerefentry"><span class="refentrytitle">systemd-tmpfiles</span>(8)</span></a> -- Creates, deletes and cleans up volatile and temporary files and directories<br><a href="systemd-tmpfiles-clean.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-tmpfiles-clean.service</span>(8)</span></a> -- Creates, deletes and cleans up volatile and temporary files and directories<br><a href="systemd-tmpfiles-clean.timer.html"><span class="citerefentry"><span class="refentrytitle">systemd-tmpfiles-clean.timer</span>(8)</span></a> -- Creates, deletes and cleans up volatile and temporary files and directories<br><a href="systemd-tmpfiles-setup-dev.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-tmpfiles-setup-dev.service</span>(8)</span></a> -- Creates, deletes and cleans up volatile and temporary files and directories<br><a href="systemd-tmpfiles-setup.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-tmpfiles-setup.service</span>(8)</span></a> -- Creates, deletes and cleans up volatile and temporary files and directories<br><a href="systemd-tty-ask-password-agent.html"><span class="citerefentry"><span class="refentrytitle">systemd-tty-ask-password-agent</span>(1)</span></a> -- List or process pending systemd password requests<br><a href="systemd-udevd.html"><span class="citerefentry"><span class="refentrytitle">systemd-udevd</span>(8)</span></a> -- Device event managing daemon<br><a href="systemd-udevd-control.socket.html"><span class="citerefentry"><span class="refentrytitle">systemd-udevd-control.socket</span>(8)</span></a> -- Device event managing daemon<br><a href="systemd-udevd-kernel.socket.html"><span class="citerefentry"><span class="refentrytitle">systemd-udevd-kernel.socket</span>(8)</span></a> -- Device event managing daemon<br><a href="systemd-udevd.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-udevd.service</span>(8)</span></a> -- Device event managing daemon<br><a href="systemd-update-done.html"><span class="citerefentry"><span class="refentrytitle">systemd-update-done</span>(8)</span></a> -- Mark<br><a href="systemd-update-done.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-update-done.service</span>(8)</span></a> -- Mark<br><a href="systemd-update-utmp.html"><span class="citerefentry"><span class="refentrytitle">systemd-update-utmp</span>(8)</span></a> -- Write audit and utmp updates at bootup, runlevel changes and shutdown<br><a href="systemd-update-utmp-runlevel.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-update-utmp-runlevel.service</span>(8)</span></a> -- Write audit and utmp updates at bootup, runlevel changes and shutdown<br><a href="systemd-update-utmp.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-update-utmp.service</span>(8)</span></a> -- Write audit and utmp updates at bootup, runlevel changes and shutdown<br><a href="systemd-user-sessions.html"><span class="citerefentry"><span class="refentrytitle">systemd-user-sessions</span>(8)</span></a> -- Permit user logins after boot, prohibit user logins at shutdown<br><a href="systemd-user-sessions.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-user-sessions.service</span>(8)</span></a> -- Permit user logins after boot, prohibit user logins at shutdown<br><a href="systemd-user.conf.html"><span class="citerefentry"><span class="refentrytitle">systemd-user.conf</span>(5)</span></a> -- System and session service manager configuration file<br><a href="systemd-vconsole-setup.html"><span class="citerefentry"><span class="refentrytitle">systemd-vconsole-setup</span>(8)</span></a> -- Configure the virtual console at boot<br><a href="systemd-vconsole-setup.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-vconsole-setup.service</span>(8)</span></a> -- Configure the virtual console at boot<br><a href="systemd.automount.html"><span class="citerefentry"><span class="refentrytitle">systemd.automount</span>(5)</span></a> -- Automount unit configuration<br><a href="systemd.device.html"><span class="citerefentry"><span class="refentrytitle">systemd.device</span>(5)</span></a> -- Device unit configuration<br><a href="systemd.directives.html"><span class="citerefentry"><span class="refentrytitle">systemd.directives</span>(7)</span></a> -- Index of configuration directives<br><a href="systemd.exec.html"><span class="citerefentry"><span class="refentrytitle">systemd.exec</span>(5)</span></a> -- Execution environment configuration<br><a href="systemd.journal-fields.html"><span class="citerefentry"><span class="refentrytitle">systemd.journal-fields</span>(7)</span></a> -- Special journal fields<br><a href="systemd.kill.html"><span class="citerefentry"><span class="refentrytitle">systemd.kill</span>(5)</span></a> -- Process killing procedure configuration<br><a href="systemd.link.html"><span class="citerefentry"><span class="refentrytitle">systemd.link</span>(5)</span></a> -- Network device configuration<br><a href="systemd.mount.html"><span class="citerefentry"><span class="refentrytitle">systemd.mount</span>(5)</span></a> -- Mount unit configuration<br><a href="systemd.netdev.html"><span class="citerefentry"><span class="refentrytitle">systemd.netdev</span>(5)</span></a> -- Virtual Network Device configuration<br><a href="systemd.network.html"><span class="citerefentry"><span class="refentrytitle">systemd.network</span>(5)</span></a> -- Network configuration<br><a href="systemd.path.html"><span class="citerefentry"><span class="refentrytitle">systemd.path</span>(5)</span></a> -- Path unit configuration<br><a href="systemd.preset.html"><span class="citerefentry"><span class="refentrytitle">systemd.preset</span>(5)</span></a> -- Service enablement presets<br><a href="systemd.resource-control.html"><span class="citerefentry"><span class="refentrytitle">systemd.resource-control</span>(5)</span></a> -- Resource control unit settings<br><a href="systemd.scope.html"><span class="citerefentry"><span class="refentrytitle">systemd.scope</span>(5)</span></a> -- Scope unit configuration<br><a href="systemd.service.html"><span class="citerefentry"><span class="refentrytitle">systemd.service</span>(5)</span></a> -- Service unit configuration<br><a href="systemd.slice.html"><span class="citerefentry"><span class="refentrytitle">systemd.slice</span>(5)</span></a> -- Slice unit configuration<br><a href="systemd.snapshot.html"><span class="citerefentry"><span class="refentrytitle">systemd.snapshot</span>(5)</span></a> -- Snapshot unit configuration<br><a href="systemd.socket.html"><span class="citerefentry"><span class="refentrytitle">systemd.socket</span>(5)</span></a> -- Socket unit configuration<br><a href="systemd.special.html"><span class="citerefentry"><span class="refentrytitle">systemd.special</span>(7)</span></a> -- Special systemd units<br><a href="systemd.swap.html"><span class="citerefentry"><span class="refentrytitle">systemd.swap</span>(5)</span></a> -- Swap unit configuration<br><a href="systemd.target.html"><span class="citerefentry"><span class="refentrytitle">systemd.target</span>(5)</span></a> -- Target unit configuration<br><a href="systemd.time.html"><span class="citerefentry"><span class="refentrytitle">systemd.time</span>(7)</span></a> -- Time and date specifications<br><a href="systemd.timer.html"><span class="citerefentry"><span class="refentrytitle">systemd.timer</span>(5)</span></a> -- Timer unit configuration<br><a href="systemd.unit.html"><span class="citerefentry"><span class="refentrytitle">systemd.unit</span>(5)</span></a> -- Unit configuration<br><a href="sysusers.d.html"><span class="citerefentry"><span class="refentrytitle">sysusers.d</span>(5)</span></a> -- Declarative allocation of system users and groups<br></p></div><div class="refsect1"><a name="idm214175387472"></a><h2 id="T">T<a class="headerlink" title="Permalink to this headline" href="#T">¶</a></h2><p><a href="telinit.html"><span class="citerefentry"><span class="refentrytitle">telinit</span>(8)</span></a> -- Change SysV runlevel<br><a href="timedatectl.html"><span class="citerefentry"><span class="refentrytitle">timedatectl</span>(1)</span></a> -- Control the system time and date<br><a href="tmpfiles.d.html"><span class="citerefentry"><span class="refentrytitle">tmpfiles.d</span>(5)</span></a> -- Configuration for creation, deletion and cleaning of volatile and temporary files<br></p></div><div class="refsect1"><a name="idm214175383984"></a><h2 id="U">U<a class="headerlink" title="Permalink to this headline" href="#U">¶</a></h2><p><a href="udev.html"><span class="citerefentry"><span class="refentrytitle">udev</span>(7)</span></a> -- Dynamic device management<br><a href="udevadm.html"><span class="citerefentry"><span class="refentrytitle">udevadm</span>(8)</span></a> -- udev management tool<br></p></div><div class="refsect1"><a name="idm214175381520"></a><h2 id="V">V<a class="headerlink" title="Permalink to this headline" href="#V">¶</a></h2><p><a href="vconsole.conf.html"><span class="citerefentry"><span class="refentrytitle">vconsole.conf</span>(5)</span></a> -- Configuration file for the virtual console<br></p></div><div class="refsect1"><a name="idm214175380016"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
       <a href="systemd.directives.html"><span class="citerefentry"><span class="refentrytitle">systemd.directives</span>(7)</span></a>
-    </p><p><a name="counts"></a>This index contains 403 entries, referring to 173 individual manual pages.</p></div></div></body></html>
+    </p><p><a name="counts"></a>This index contains 412 entries, referring to 180 individual manual pages.</p></div></div></body></html>
index df7a66963280201db08a1aff766bbeb1c35738d6..df28bba8ae6ef44a4d4517cf28ef676816573fc3 100644 (file)
@@ -19,7 +19,7 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="systemd"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>systemd, init — systemd system and service manager</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="cmdsynopsis"><p><code class="command">systemd [OPTIONS...]</code> </p></div><div class="cmdsynopsis"><p><code class="command">init [OPTIONS...]  {COMMAND}</code> </p></div></div><div class="refsect1"><a name="idm214185400592"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p>systemd is a system and service manager for
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="systemd"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>systemd, init — systemd system and service manager</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="cmdsynopsis"><p><code class="command">systemd [OPTIONS...]</code> </p></div><div class="cmdsynopsis"><p><code class="command">init [OPTIONS...]  {COMMAND}</code> </p></div></div><div class="refsect1"><a name="idm214189898832"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p>systemd is a system and service manager for
                 Linux operating systems. When run as first process on
                 boot (as PID 1), it acts as init system that brings
                 up and maintains userspace services.</p><p>For compatibility with SysV, if systemd is called
@@ -34,7 +34,7 @@
                 <code class="filename">system.conf</code>, otherwise
                 <code class="filename">user.conf</code>. See
                 <a href="systemd-system.conf.html"><span class="citerefentry"><span class="refentrytitle">systemd-system.conf</span>(5)</span></a>
-                for more information.</p></div><div class="refsect1"><a name="idm214185392096"></a><h2 id="Options">Options<a class="headerlink" title="Permalink to this headline" href="#Options">¶</a></h2><p>The following options are understood:</p><div class="variablelist"><dl class="variablelist"><dt id="--test"><span class="term"><code class="option">--test</code></span><a class="headerlink" title="Permalink to this term" href="#--test">¶</a></dt><dd><p>Determine startup
+                for more information.</p></div><div class="refsect1"><a name="idm214188084384"></a><h2 id="Options">Options<a class="headerlink" title="Permalink to this headline" href="#Options">¶</a></h2><p>The following options are understood:</p><div class="variablelist"><dl class="variablelist"><dt id="--test"><span class="term"><code class="option">--test</code></span><a class="headerlink" title="Permalink to this term" href="#--test">¶</a></dt><dd><p>Determine startup
                                 sequence, dump it and exit. This is an
                                 option useful for debugging
                                 only.</p></dd><dt id="--dump-configuration-items"><span class="term"><code class="option">--dump-configuration-items</code></span><a class="headerlink" title="Permalink to this term" href="#--dump-configuration-items">¶</a></dt><dd><p>Dump understood unit
                                 <code class="option">--default-standard-error=</code>
                                 to
                                 <code class="option">inherit</code>.</p></dd><dt id="-h"><span class="term"><code class="option">-h</code>, </span><span class="term"><code class="option">--help</code></span><a class="headerlink" title="Permalink to this term" href="#-h">¶</a></dt><dd><p><a name="help-text"></a>Print a short help text and exit.
-    </p></dd><dt id="--version"><span class="term"><code class="option">--version</code></span><a class="headerlink" title="Permalink to this term" href="#--version">¶</a></dt><dd><p><a name="version-text"></a>Print a short version string and exit.</p></dd></dl></div></div><div class="refsect1"><a name="idm214186942512"></a><h2 id="Concepts">Concepts<a class="headerlink" title="Permalink to this headline" href="#Concepts">¶</a></h2><p>systemd provides a dependency system between
+    </p></dd><dt id="--version"><span class="term"><code class="option">--version</code></span><a class="headerlink" title="Permalink to this term" href="#--version">¶</a></dt><dd><p><a name="version-text"></a>Print a short version string and exit.</p></dd></dl></div></div><div class="refsect1"><a name="idm214189143952"></a><h2 id="Concepts">Concepts<a class="headerlink" title="Permalink to this headline" href="#Concepts">¶</a></h2><p>systemd provides a dependency system between
                 various entities called "units" of 12 different
                 types. Units encapsulate various objects that are
                 relevant for system boot-up and maintenance. The
                 or initrd environment should implement the
                 <a class="ulink" href="http://www.freedesktop.org/wiki/Software/systemd/ContainerInterface" target="_top">Container
                 Interface</a> or <a class="ulink" href="http://www.freedesktop.org/wiki/Software/systemd/InitrdInterface" target="_top">initrd
-                Interface</a> specifications, respectively.</p></div><div class="refsect1"><a name="idm214182266208"></a><h2 id="Directories">Directories<a class="headerlink" title="Permalink to this headline" href="#Directories">¶</a></h2><div class="variablelist"><dl class="variablelist"><dt id="System unit directories"><span class="term">System unit directories</span><a class="headerlink" title="Permalink to this term" href="#System%20unit%20directories">¶</a></dt><dd><p>The systemd system
+                Interface</a> specifications, respectively.</p></div><div class="refsect1"><a name="idm214189453632"></a><h2 id="Directories">Directories<a class="headerlink" title="Permalink to this headline" href="#Directories">¶</a></h2><div class="variablelist"><dl class="variablelist"><dt id="System unit directories"><span class="term">System unit directories</span><a class="headerlink" title="Permalink to this term" href="#System%20unit%20directories">¶</a></dt><dd><p>The systemd system
                                 manager reads unit configuration from
                                 various directories. Packages that
                                 want to install unit files shall place
                                 unit with a native unit configuration
                                 file cannot be started by activating it
                                 in the SysV runlevel link
-                                farm.</p></dd></dl></div></div><div class="refsect1"><a name="idm214182243984"></a><h2 id="Signals">Signals<a class="headerlink" title="Permalink to this headline" href="#Signals">¶</a></h2><div class="variablelist"><dl class="variablelist"><dt id="SIGTERM"><span class="term"><code class="constant">SIGTERM</code></span><a class="headerlink" title="Permalink to this term" href="#SIGTERM">¶</a></dt><dd><p>Upon receiving this
+                                farm.</p></dd></dl></div></div><div class="refsect1"><a name="idm214189693872"></a><h2 id="Signals">Signals<a class="headerlink" title="Permalink to this headline" href="#Signals">¶</a></h2><div class="variablelist"><dl class="variablelist"><dt id="SIGTERM"><span class="term"><code class="constant">SIGTERM</code></span><a class="headerlink" title="Permalink to this term" href="#SIGTERM">¶</a></dt><dd><p>Upon receiving this
                                 signal the systemd system manager
                                 serializes its state, reexecutes
                                 itself and deserializes the saved
                                 <code class="varname">systemd.log_target=syslog-or-kmsg</code>
                                 on <code class="constant">SIGRTMIN+29</code>) on
                                 the kernel command
-                                line.</p></dd></dl></div></div><div class="refsect1"><a name="idm214182175312"></a><h2 id="Environment">Environment<a class="headerlink" title="Permalink to this headline" href="#Environment">¶</a></h2><div class="variablelist"><dl class="variablelist"><dt id="$SYSTEMD_LOG_LEVEL"><span class="term"><code class="varname">$SYSTEMD_LOG_LEVEL</code></span><a class="headerlink" title="Permalink to this term" href="#%24SYSTEMD_LOG_LEVEL">¶</a></dt><dd><p>systemd reads the
+                                line.</p></dd></dl></div></div><div class="refsect1"><a name="idm214191284560"></a><h2 id="Environment">Environment<a class="headerlink" title="Permalink to this headline" href="#Environment">¶</a></h2><div class="variablelist"><dl class="variablelist"><dt id="$SYSTEMD_LOG_LEVEL"><span class="term"><code class="varname">$SYSTEMD_LOG_LEVEL</code></span><a class="headerlink" title="Permalink to this term" href="#%24SYSTEMD_LOG_LEVEL">¶</a></dt><dd><p>systemd reads the
                                 log level from this environment
                                 variable. This can be overridden with
                                 <code class="option">--log-level=</code>.</p></dd><dt id="$SYSTEMD_LOG_TARGET"><span class="term"><code class="varname">$SYSTEMD_LOG_TARGET</code></span><a class="headerlink" title="Permalink to this term" href="#%24SYSTEMD_LOG_TARGET">¶</a></dt><dd><p>systemd reads the
                                 start-up completion notification. See
                                 <a href="sd_notify.html"><span class="citerefentry"><span class="refentrytitle">sd_notify</span>(3)</span></a>
                                 for more information.
-                                </p></dd></dl></div></div><div class="refsect1"><a name="idm214182151888"></a><h2 id="Kernel Command Line">Kernel Command Line<a class="headerlink" title="Permalink to this headline" href="#Kernel%20Command%20Line">¶</a></h2><p>When run as system instance systemd parses a
+                                </p></dd></dl></div></div><div class="refsect1"><a name="idm214191260432"></a><h2 id="Kernel Command Line">Kernel Command Line<a class="headerlink" title="Permalink to this headline" href="#Kernel%20Command%20Line">¶</a></h2><p>When run as system instance systemd parses a
                 number of kernel command line
-                arguments<a href="#ftn.idm214182150864" class="footnote" name="idm214182150864"><sup class="footnote">[1]</sup></a>:</p><div class="variablelist"><dl class="variablelist"><dt id="systemd.unit="><span class="term"><code class="varname">systemd.unit=</code>, </span><span class="term"><code class="varname">rd.systemd.unit=</code></span><a class="headerlink" title="Permalink to this term" href="#systemd.unit=">¶</a></dt><dd><p>Overrides the unit to
+                arguments<a href="#ftn.idm214191259376" class="footnote" name="idm214191259376"><sup class="footnote">[1]</sup></a>:</p><div class="variablelist"><dl class="variablelist"><dt id="systemd.unit="><span class="term"><code class="varname">systemd.unit=</code>, </span><span class="term"><code class="varname">rd.systemd.unit=</code></span><a class="headerlink" title="Permalink to this term" href="#systemd.unit=">¶</a></dt><dd><p>Overrides the unit to
                                 activate on boot. Defaults to
                                 <code class="filename">default.target</code>. This
                                 may be used to temporarily boot into a
                                 </p></dd></dl></div><p>For other kernel command line parameters
                 understood by components of the core OS, please refer
                 to
-                <a href="kernel-command-line.html"><span class="citerefentry"><span class="refentrytitle">kernel-command-line</span>(7)</span></a>.</p></div><div class="refsect1"><a name="idm214182090736"></a><h2 id="Sockets and FIFOs">Sockets and FIFOs<a class="headerlink" title="Permalink to this headline" href="#Sockets%20and%20FIFOs">¶</a></h2><div class="variablelist"><dl class="variablelist"><dt id="/run/systemd/notify"><span class="term"><code class="filename">/run/systemd/notify</code></span><a class="headerlink" title="Permalink to this term" href="#/run/systemd/notify">¶</a></dt><dd><p>Daemon status
+                <a href="kernel-command-line.html"><span class="citerefentry"><span class="refentrytitle">kernel-command-line</span>(7)</span></a>.</p></div><div class="refsect1"><a name="idm214187977552"></a><h2 id="Sockets and FIFOs">Sockets and FIFOs<a class="headerlink" title="Permalink to this headline" href="#Sockets%20and%20FIFOs">¶</a></h2><div class="variablelist"><dl class="variablelist"><dt id="/run/systemd/notify"><span class="term"><code class="filename">/run/systemd/notify</code></span><a class="headerlink" title="Permalink to this term" href="#/run/systemd/notify">¶</a></dt><dd><p>Daemon status
                                 notification socket. This is an
                                 <code class="constant">AF_UNIX</code> datagram socket and is used to
                                 implement the daemon notification
                                 unit. This is a named pipe in the file
                                 system. This interface is obsolete and
                                 should not be used in new
-                                applications.</p></dd></dl></div></div><div class="refsect1"><a name="idm214182077552"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+                                applications.</p></dd></dl></div></div><div class="refsect1"><a name="idm214187964368"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
                         The <a class="ulink" href="http://www.freedesktop.org/wiki/Software/systemd/" target="_top">systemd Homepage</a>,
                         <a href="systemd-system.conf.html"><span class="citerefentry"><span class="refentrytitle">systemd-system.conf</span>(5)</span></a>,
                         <a href="locale.conf.html"><span class="citerefentry"><span class="refentrytitle">locale.conf</span>(5)</span></a>,
                         <a href="kernel-command-line.html"><span class="citerefentry"><span class="refentrytitle">kernel-command-line</span>(7)</span></a>,
                         <a href="bootup.html"><span class="citerefentry"><span class="refentrytitle">bootup</span>(7)</span></a>,
                         <a href="systemd.directives.html"><span class="citerefentry"><span class="refentrytitle">systemd.directives</span>(7)</span></a>
-                </p></div><div class="footnotes"><br><hr style="width:100; text-align:left;margin-left: 0"><div id="ftn.idm214182150864" class="footnote"><p><a href="#idm214182150864" class="para"><sup class="para">[1] </sup></a>If run inside a Linux
+                </p></div><div class="footnotes"><br><hr style="width:100; text-align:left;margin-left: 0"><div id="ftn.idm214191259376" class="footnote"><p><a href="#idm214191259376" class="para"><sup class="para">[1] </sup></a>If run inside a Linux
                 container these arguments may be passed as command
                 line arguments to systemd itself, next to any of the
                 command line options listed in the Options section
index f4f1de7cb01548adecb7ad57f7add659b4ab80bb..3aa50af611faea761fd013a5729578c57f234b12 100644 (file)
@@ -1,5 +1,5 @@
 '\" t
-.TH "JOURNALCTL" "1" "" "systemd 214" "journalctl"
+.TH "JOURNALCTL" "1" "" "systemd 215" "journalctl"
 .\" -----------------------------------------------------------------
 .\" * Define some portability stuff
 .\" -----------------------------------------------------------------
index b77816b7ec0366a95175174088d2f49bc1f148a0..47cc0a8a11b46e899bc07c0c7be670dbd2e13524 100644 (file)
@@ -19,7 +19,7 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="journalctl"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>journalctl — Query the systemd journal</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="cmdsynopsis"><p><code class="command">journalctl</code>  [OPTIONS...] [MATCHES...]</p></div></div><div class="refsect1"><a name="idm214199609344"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><span class="command"><strong>journalctl</strong></span> may be used to
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="journalctl"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>journalctl — Query the systemd journal</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="cmdsynopsis"><p><code class="command">journalctl</code>  [OPTIONS...] [MATCHES...]</p></div></div><div class="refsect1"><a name="idm214192081472"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><span class="command"><strong>journalctl</strong></span> may be used to
                 query the contents of the
                 <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>
                 journal as written by
@@ -67,7 +67,7 @@
                 according to priority: lines of level ERROR and higher
                 are colored red; lines of level NOTICE and higher are
                 highlighted; other lines are displayed normally.
-                </p></div><div class="refsect1"><a name="idm214203547184"></a><h2 id="Options">Options<a class="headerlink" title="Permalink to this headline" href="#Options">¶</a></h2><p>The following options are understood:</p><div class="variablelist"><dl class="variablelist"><dt id="--no-full"><span class="term"><code class="option">--no-full</code>, </span><span class="term"><code class="option">--full</code>, </span><span class="term"><code class="option">-l</code></span><a class="headerlink" title="Permalink to this term" href="#--no-full">¶</a></dt><dd><p>Ellipsize fields when
+                </p></div><div class="refsect1"><a name="idm214193028176"></a><h2 id="Options">Options<a class="headerlink" title="Permalink to this headline" href="#Options">¶</a></h2><p>The following options are understood:</p><div class="variablelist"><dl class="variablelist"><dt id="--no-full"><span class="term"><code class="option">--no-full</code>, </span><span class="term"><code class="option">--full</code>, </span><span class="term"><code class="option">-l</code></span><a class="headerlink" title="Permalink to this term" href="#--no-full">¶</a></dt><dd><p>Ellipsize fields when
                                 they do not fit in available columns.
                                 The default is to show full fields,
                                 allowing them to wrap or be truncated
                                 verification key to use for the
                                 <code class="option">--verify</code>
                                 operation.</p></dd><dt id="-h"><span class="term"><code class="option">-h</code>, </span><span class="term"><code class="option">--help</code></span><a class="headerlink" title="Permalink to this term" href="#-h">¶</a></dt><dd><p><a name="help-text"></a>Print a short help text and exit.
-    </p></dd><dt id="--version"><span class="term"><code class="option">--version</code></span><a class="headerlink" title="Permalink to this term" href="#--version">¶</a></dt><dd><p><a name="version-text"></a>Print a short version string and exit.</p></dd><dt id="--no-pager"><span class="term"><code class="option">--no-pager</code></span><a class="headerlink" title="Permalink to this term" href="#--no-pager">¶</a></dt><dd><p>Do not pipe output into a pager.</p></dd></dl></div></div><div class="refsect1"><a name="idm214198407696"></a><h2 id="Exit status">Exit status<a class="headerlink" title="Permalink to this headline" href="#Exit%20status">¶</a></h2><p>On success, 0 is returned; otherwise, a non-zero
-                failure code is returned.</p></div><div class="refsect1"><a name="idm214190017776"></a><h2 id="Environment">Environment<a class="headerlink" title="Permalink to this headline" href="#Environment">¶</a></h2><div class="variablelist"><dl class="variablelist"><dt id="$SYSTEMD_PAGER"><span class="term"><code class="varname">$SYSTEMD_PAGER</code></span><a class="headerlink" title="Permalink to this term" href="#%24SYSTEMD_PAGER">¶</a></dt><dd><p>Pager to use when
+    </p></dd><dt id="--version"><span class="term"><code class="option">--version</code></span><a class="headerlink" title="Permalink to this term" href="#--version">¶</a></dt><dd><p><a name="version-text"></a>Print a short version string and exit.</p></dd><dt id="--no-pager"><span class="term"><code class="option">--no-pager</code></span><a class="headerlink" title="Permalink to this term" href="#--no-pager">¶</a></dt><dd><p>Do not pipe output into a pager.</p></dd></dl></div></div><div class="refsect1"><a name="idm214193157888"></a><h2 id="Exit status">Exit status<a class="headerlink" title="Permalink to this headline" href="#Exit%20status">¶</a></h2><p>On success, 0 is returned; otherwise, a non-zero
+                failure code is returned.</p></div><div class="refsect1"><a name="idm214181682304"></a><h2 id="Environment">Environment<a class="headerlink" title="Permalink to this headline" href="#Environment">¶</a></h2><div class="variablelist"><dl class="variablelist"><dt id="$SYSTEMD_PAGER"><span class="term"><code class="varname">$SYSTEMD_PAGER</code></span><a class="headerlink" title="Permalink to this term" href="#%24SYSTEMD_PAGER">¶</a></dt><dd><p>Pager to use when
                         <code class="option">--no-pager</code> is not given;
                         overrides <code class="varname">$PAGER</code>.  Setting
                         this to an empty string or the value
                         <code class="option">--no-pager</code>.</p></dd><dt id="$SYSTEMD_LESS"><span class="term"><code class="varname">$SYSTEMD_LESS</code></span><a class="headerlink" title="Permalink to this term" href="#%24SYSTEMD_LESS">¶</a></dt><dd><p>Override the default
                         options passed to
                         <span class="command"><strong>less</strong></span>
-                        ("<code class="literal">FRSXMK</code>").</p></dd></dl></div></div><div class="refsect1"><a name="idm214198405936"></a><h2 id="Examples">Examples<a class="headerlink" title="Permalink to this headline" href="#Examples">¶</a></h2><p>Without arguments, all collected logs are shown
+                        ("<code class="literal">FRSXMK</code>").</p></dd></dl></div></div><div class="refsect1"><a name="idm214193156064"></a><h2 id="Examples">Examples<a class="headerlink" title="Permalink to this headline" href="#Examples">¶</a></h2><p>Without arguments, all collected logs are shown
                 unfiltered:</p><pre class="programlisting">journalctl</pre><p>With one match specified, all entries with a field matching the expression are shown:</p><pre class="programlisting">journalctl _SYSTEMD_UNIT=avahi-daemon.service</pre><p>If two different fields are matched, only entries matching both expressions at the same time are shown:</p><pre class="programlisting">journalctl _SYSTEMD_UNIT=avahi-daemon.service _PID=28097</pre><p>If two matches refer to the same field, all entries matching either expression are shown:</p><pre class="programlisting">journalctl _SYSTEMD_UNIT=avahi-daemon.service _SYSTEMD_UNIT=dbus.service</pre><p>If the separator "<code class="literal">+</code>" is used,
                 two expressions may be combined in a logical OR. The
                 following will show all messages from the Avahi
                 service process with the PID 28097 plus all messages
                 from the D-Bus service (from any of its
-                processes):</p><pre class="programlisting">journalctl _SYSTEMD_UNIT=avahi-daemon.service _PID=28097 + _SYSTEMD_UNIT=dbus.service</pre><p>Show all logs generated by the D-Bus executable:</p><pre class="programlisting">journalctl /usr/bin/dbus-daemon</pre><p>Show all logs of the kernel device node <code class="filename">/dev/sda</code>:</p><pre class="programlisting">journalctl /dev/sda</pre><p>Show all kernel logs from previous boot:</p><pre class="programlisting">journalctl -k -b -1</pre></div><div class="refsect1"><a name="idm214198394704"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+                processes):</p><pre class="programlisting">journalctl _SYSTEMD_UNIT=avahi-daemon.service _PID=28097 + _SYSTEMD_UNIT=dbus.service</pre><p>Show all logs generated by the D-Bus executable:</p><pre class="programlisting">journalctl /usr/bin/dbus-daemon</pre><p>Show all logs of the kernel device node <code class="filename">/dev/sda</code>:</p><pre class="programlisting">journalctl /dev/sda</pre><p>Show all kernel logs from previous boot:</p><pre class="programlisting">journalctl -k -b -1</pre></div><div class="refsect1"><a name="idm214193144192"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
                         <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
                         <a href="systemd-journald.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-journald.service</span>(8)</span></a>,
                         <a href="systemctl.html"><span class="citerefentry"><span class="refentrytitle">systemctl</span>(1)</span></a>,
index 3b2a3ad3051eea488adcc280ce6727fde79c9831..c5fc1e11d5a2efeed4f5bb1167c9910af0033311 100644 (file)
@@ -1,5 +1,5 @@
 '\" t
-.TH "JOURNALD\&.CONF" "5" "" "systemd 214" "journald.conf"
+.TH "JOURNALD\&.CONF" "5" "" "systemd 215" "journald.conf"
 .\" -----------------------------------------------------------------
 .\" * Define some portability stuff
 .\" -----------------------------------------------------------------
@@ -79,14 +79,14 @@ by G\&. A\&. Marson and B\&. Poettering (doi:10\&.1007/978\-3\-642\-40203\-6_7)
 \fISplitMode=\fR
 .RS 4
 Controls whether to split up journal files per user\&. One of
-"login",
-"uid"
+"uid",
+"login"
 and
 "none"\&. If
-"login", each logged\-in user will get his own journal files, but systemd user IDs will log into the system journal\&. If
-"uid", any user ID will get his own journal files regardless of whether it belongs to a system service or refers to a real logged in user\&. If
+"uid", all users will get each their own journal files regardless of whether they possess a login session or not, however system users will log into the system journal\&. If
+"login", actually logged\-in users will get each their own journal files, but users without login session and system users will log into the system journal\&. If
 "none", journal files are not split up by user and all messages are instead stored in the single system journal\&. Note that splitting up journal files by user is only available for journals stored persistently\&. If journals are stored on volatile storage (see above), only a single journal file for all user IDs is kept\&. Defaults to
-"login"\&.
+"uid"\&.
 .RE
 .PP
 \fIRateLimitInterval=\fR, \fIRateLimitBurst=\fR
index 33088e9250af0784a99e2cf3f8c02cc1bee424b7..66cfa1c1543d074a5af6da4abcd881f4bd1efb66 100644 (file)
@@ -19,9 +19,9 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="journald.conf"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>journald.conf — Journal service configuration file</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><p><code class="filename">/etc/systemd/journald.conf</code></p></div><div class="refsect1"><a name="idm214187471616"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p>This file configures various parameters of the
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="journald.conf"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>journald.conf — Journal service configuration file</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><p><code class="filename">/etc/systemd/journald.conf</code></p></div><div class="refsect1"><a name="idm214198630544"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p>This file configures various parameters of the
                 systemd journal service,
-                <a href="systemd-journald.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-journald.service</span>(8)</span></a>.</p></div><div class="refsect1"><a name="idm214187469440"></a><h2 id="Options">Options<a class="headerlink" title="Permalink to this headline" href="#Options">¶</a></h2><p>All options are configured in the
+                <a href="systemd-journald.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-journald.service</span>(8)</span></a>.</p></div><div class="refsect1"><a name="idm214200500944"></a><h2 id="Options">Options<a class="headerlink" title="Permalink to this headline" href="#Options">¶</a></h2><p>All options are configured in the
                 "<code class="literal">[Journal]</code>" section:</p><div class="variablelist"><dl class="variablelist"><dt id="Storage="><span class="term"><code class="varname">Storage=</code></span><a class="headerlink" title="Permalink to this term" href="#Storage=">¶</a></dt><dd><p>Controls where to
                                 store journal data. One of
                                 "<code class="literal">volatile</code>",
                                 and may be used to protect journal files
                                 from unnoticed alteration.</p></dd><dt id="SplitMode="><span class="term"><code class="varname">SplitMode=</code></span><a class="headerlink" title="Permalink to this term" href="#SplitMode=">¶</a></dt><dd><p>Controls whether to
                                 split up journal files per user. One
-                                of "<code class="literal">login</code>",
-                                "<code class="literal">uid</code>" and
-                                "<code class="literal">none</code>". If
-                                "<code class="literal">login</code>", each logged-in
-                                user will get his own journal
-                                files, but systemd user IDs will log
-                                into the system journal. If
-                                "<code class="literal">uid</code>", any user ID
-                                will get his own journal files
-                                regardless of whether it belongs to a
-                                system service or refers to a real
-                                logged in user. If
+                                of "<code class="literal">uid</code>",
+                                "<code class="literal">login</code>" and
+                                "<code class="literal">none</code>".  If
+                                "<code class="literal">uid</code>", all users will
+                                get each their own journal files
+                                regardless of whether they possess a
+                                login session or not, however system
+                                users will log into the system
+                                journal. If "<code class="literal">login</code>",
+                                actually logged-in users will get each
+                                their own journal files, but users
+                                without login session and system users
+                                will log into the system journal. If
                                 "<code class="literal">none</code>", journal files
                                 are not split up by user and all
-                                messages are instead stored in the single
-                                system journal. Note that splitting
-                                up journal files by user is only
-                                available for journals stored
+                                messages are instead stored in the
+                                single system journal. Note that
+                                splitting up journal files by user is
+                                only available for journals stored
                                 persistently. If journals are stored
-                                on volatile storage (see above), only a
-                                single journal file for all user IDs
+                                on volatile storage (see above), only
+                                single journal file for all user IDs
                                 is kept. Defaults to
-                                "<code class="literal">login</code>".</p></dd><dt id="RateLimitInterval="><span class="term"><code class="varname">RateLimitInterval=</code>, </span><span class="term"><code class="varname">RateLimitBurst=</code></span><a class="headerlink" title="Permalink to this term" href="#RateLimitInterval=">¶</a></dt><dd><p>Configures the rate
+                                "<code class="literal">uid</code>".</p></dd><dt id="RateLimitInterval="><span class="term"><code class="varname">RateLimitInterval=</code>, </span><span class="term"><code class="varname">RateLimitBurst=</code></span><a class="headerlink" title="Permalink to this term" href="#RateLimitInterval=">¶</a></dt><dd><p>Configures the rate
                                 limiting that is applied to all
                                 messages generated on the system. If,
                                 in the time interval defined by
                                 to use if
                                 <code class="varname">ForwardToConsole=yes</code>
                                 is used. Defaults to
-                                <code class="filename">/dev/console</code>.</p></dd></dl></div></div><div class="refsect1"><a name="idm214186341472"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+                                <code class="filename">/dev/console</code>.</p></dd></dl></div></div><div class="refsect1"><a name="idm214200261392"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
                           <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
                           <a href="systemd-journald.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-journald.service</span>(8)</span></a>,
                           <a href="journalctl.html"><span class="citerefentry"><span class="refentrytitle">journalctl</span>(1)</span></a>,
index 5cd09a217ef710ddc7641e85f99f0188a5f1e97a..046609e401d6e09a9370b006104429db1acf83ef 100644 (file)
 
                                 <listitem><para>Controls whether to
                                 split up journal files per user. One
-                                of <literal>login</literal>,
-                                <literal>uid</literal> and
-                                <literal>none</literal>. If
-                                <literal>login</literal>, each logged-in
-                                user will get his own journal
-                                files, but systemd user IDs will log
-                                into the system journal. If
-                                <literal>uid</literal>, any user ID
-                                will get his own journal files
-                                regardless of whether it belongs to a
-                                system service or refers to a real
-                                logged in user. If
+                                of <literal>uid</literal>,
+                                <literal>login</literal> and
+                                <literal>none</literal>.  If
+                                <literal>uid</literal>, all users will
+                                get each their own journal files
+                                regardless of whether they possess a
+                                login session or not, however system
+                                users will log into the system
+                                journal. If <literal>login</literal>,
+                                actually logged-in users will get each
+                                their own journal files, but users
+                                without login session and system users
+                                will log into the system journal. If
                                 <literal>none</literal>, journal files
                                 are not split up by user and all
-                                messages are instead stored in the single
-                                system journal. Note that splitting
-                                up journal files by user is only
-                                available for journals stored
+                                messages are instead stored in the
+                                single system journal. Note that
+                                splitting up journal files by user is
+                                only available for journals stored
                                 persistently. If journals are stored
-                                on volatile storage (see above), only a
-                                single journal file for all user IDs
+                                on volatile storage (see above), only
+                                single journal file for all user IDs
                                 is kept. Defaults to
-                                <literal>login</literal>.</para></listitem>
+                                <literal>uid</literal>.</para></listitem>
                         </varlistentry>
 
                         <varlistentry>
index c51ec62d28342e1ddbac1f78de7ed29650bc57d5..27bd8ef4786f199dfa906b7b1d7e2fe3ce70b03f 100644 (file)
@@ -1,5 +1,5 @@
 '\" t
-.TH "KERNEL\-COMMAND\-LINE" "7" "" "systemd 214" "kernel-command-line"
+.TH "KERNEL\-COMMAND\-LINE" "7" "" "systemd 215" "kernel-command-line"
 .\" -----------------------------------------------------------------
 .\" * Define some portability stuff
 .\" -----------------------------------------------------------------
@@ -43,6 +43,12 @@ Parameters understood by the system and service manager to control system behavi
 \fBsystemd\fR(1)\&.
 .RE
 .PP
+\fIsystemd\&.mask=\fR, \fIsystemd\&.wants=\fR, \fIsystemd\&.debug\-shell\fR
+.RS 4
+Additional parameters understood by
+\fBsystemd-debug-generator\fR(8), to mask or start specific units at boot, or invoke a debug shell on tty9\&.
+.RE
+.PP
 \fIsystemd\&.restore_state=\fR
 .RS 4
 This parameter is understood by several system tools to control whether or not they should restore system state from the previous boot\&. For details, see
@@ -75,15 +81,9 @@ Parameters understood by the system and service manager to control locale and la
 \fBsystemd\fR(1)\&.
 .RE
 .PP
-\fIfsck\&.mode=\fR
-.RS 4
-Parameter understood by the file system checker services\&. For details, see
-\fBsystemd-fsck@.service\fR(8)\&.
-.RE
-.PP
-\fIfsck\&.repair=\fR
+\fIfsck\&.mode=\fR, \fIfsck\&.repair=\fR
 .RS 4
-Parameter understood by the file system checker services\&. For details, see
+Parameters understood by the file system checker services\&. For details, see
 \fBsystemd-fsck@.service\fR(8)\&.
 .RE
 .PP
@@ -131,6 +131,18 @@ logic at boot\&. For details, see
 \fBsystemd-fstab-generator\fR(8)\&.
 .RE
 .PP
+\fIroot=\fR, \fIrootfstype=\fR, \fIrootfsflags=\fR, \fIro\fR, \fIrw\fR
+.RS 4
+Configures the root file system and its file system type and mount options, as well as whether it shall be mounted read\-only or read\-writable initially\&. For details, see
+\fBsystemd-fstab-generator\fR(8)\&.
+.RE
+.PP
+\fIsystemd\&.gpt_auto=\fR, \fIrd\&.systemd\&.gpt_auto=\fR
+.RS 4
+Configures whether GPT based partition auto\-discovery shall be attempted\&. For details, see
+\fBsystemd-gpt-auto-generator\fR(8)\&.
+.RE
+.PP
 \fImodules\-load=\fR, \fIrd\&.modules\-load=\fR
 .RS 4
 Load a specific kernel module early at boot\&. For details, see
@@ -141,6 +153,7 @@ Load a specific kernel module early at boot\&. For details, see
 \fBsystemd\fR(1),
 \fBbootparam\fR(7),
 \fBdracut.cmdline\fR(7),
+\fBsystemd-debug-generator\fR(8),
 \fBsystemd-fsck@.service\fR(8),
 \fBsystemd-quotacheck.service\fR(8),
 \fBsystemd-journald.service\fR(8),
@@ -149,7 +162,10 @@ Load a specific kernel module early at boot\&. For details, see
 \fBplymouth\fR(8),
 \fBsystemd-cryptsetup-generator\fR(8),
 \fBsystemd-fstab-generator\fR(8),
-\fBsystemd-modules-load.service\fR(8)\fBsystemd-backlight@.service\fR(8)\fBsystemd-rfkill@.service\fR(8)
+\fBsystemd-gpt-auto-generator\fR(8),
+\fBsystemd-modules-load.service\fR(8),
+\fBsystemd-backlight@.service\fR(8),
+\fBsystemd-rfkill@.service\fR(8)
 .SH "NOTES"
 .IP " 1." 4
 kernel-parameters.txt
index e1d3595b4df4b095941f6ac98bf586b53eb9be5e..5cf5955defc01e2a678d36672e228dd90b8ffeb9 100644 (file)
@@ -19,7 +19,7 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="kernel-command-line"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>kernel-command-line — Kernel command line parameters</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><p><code class="filename">/proc/cmdline</code></p></div><div class="refsect1"><a name="idm214191637456"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p>The kernel, the initial RAM disk (initrd) and
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="kernel-command-line"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>kernel-command-line — Kernel command line parameters</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><p><code class="filename">/proc/cmdline</code></p></div><div class="refsect1"><a name="idm214185265888"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p>The kernel, the initial RAM disk (initrd) and
                 basic userspace functionality may be configured at boot via
                 kernel command line arguments.</p><p>For command line parameters understood by the
                 kernel, please see <a class="ulink" href="https://www.kernel.org/doc/Documentation/kernel-parameters.txt" target="_top"><code class="filename">kernel-parameters.txt</code></a>
                 initial RAM disk, please see
                 <a href="dracut.cmdline.html"><span class="citerefentry"><span class="refentrytitle">dracut.cmdline</span>(7)</span></a>,
                 or the documentation of the specific initrd
-                implementation of your installation.</p></div><div class="refsect1"><a name="idm214191632352"></a><h2 id="Core OS Command Line Arguments">Core OS Command Line Arguments<a class="headerlink" title="Permalink to this headline" href="#Core%20OS%20Command%20Line%20Arguments">¶</a></h2><div class="variablelist"><dl class="variablelist"><dt id="systemd.unit="><span class="term"><code class="varname">systemd.unit=</code>, </span><span class="term"><code class="varname">rd.systemd.unit=</code>, </span><span class="term"><code class="varname">systemd.dump_core=</code>, </span><span class="term"><code class="varname">systemd.crash_shell=</code>, </span><span class="term"><code class="varname">systemd.crash_chvt=</code>, </span><span class="term"><code class="varname">systemd.confirm_spawn=</code>, </span><span class="term"><code class="varname">systemd.show_status=</code>, </span><span class="term"><code class="varname">systemd.log_target=</code>, </span><span class="term"><code class="varname">systemd.log_level=</code>, </span><span class="term"><code class="varname">systemd.log_color=</code>, </span><span class="term"><code class="varname">systemd.log_location=</code>, </span><span class="term"><code class="varname">systemd.default_standard_output=</code>, </span><span class="term"><code class="varname">systemd.default_standard_error=</code>, </span><span class="term"><code class="varname">systemd.setenv=</code></span><a class="headerlink" title="Permalink to this term" href="#systemd.unit=">¶</a></dt><dd><p>Parameters understood by
+                implementation of your installation.</p></div><div class="refsect1"><a name="idm214183797568"></a><h2 id="Core OS Command Line Arguments">Core OS Command Line Arguments<a class="headerlink" title="Permalink to this headline" href="#Core%20OS%20Command%20Line%20Arguments">¶</a></h2><div class="variablelist"><dl class="variablelist"><dt id="systemd.unit="><span class="term"><code class="varname">systemd.unit=</code>, </span><span class="term"><code class="varname">rd.systemd.unit=</code>, </span><span class="term"><code class="varname">systemd.dump_core=</code>, </span><span class="term"><code class="varname">systemd.crash_shell=</code>, </span><span class="term"><code class="varname">systemd.crash_chvt=</code>, </span><span class="term"><code class="varname">systemd.confirm_spawn=</code>, </span><span class="term"><code class="varname">systemd.show_status=</code>, </span><span class="term"><code class="varname">systemd.log_target=</code>, </span><span class="term"><code class="varname">systemd.log_level=</code>, </span><span class="term"><code class="varname">systemd.log_color=</code>, </span><span class="term"><code class="varname">systemd.log_location=</code>, </span><span class="term"><code class="varname">systemd.default_standard_output=</code>, </span><span class="term"><code class="varname">systemd.default_standard_error=</code>, </span><span class="term"><code class="varname">systemd.setenv=</code></span><a class="headerlink" title="Permalink to this term" href="#systemd.unit=">¶</a></dt><dd><p>Parameters understood by
                                         the system and service manager
                                         to control system behavior. For details, see
-                                        <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>.</p></dd><dt id="systemd.restore_state="><span class="term"><code class="varname">systemd.restore_state=</code></span><a class="headerlink" title="Permalink to this term" href="#systemd.restore_state=">¶</a></dt><dd><p>This parameter is understood by
+                                        <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>.</p></dd><dt id="systemd.mask="><span class="term"><code class="varname">systemd.mask=</code>, </span><span class="term"><code class="varname">systemd.wants=</code>, </span><span class="term"><code class="varname">systemd.debug-shell</code></span><a class="headerlink" title="Permalink to this term" href="#systemd.mask=">¶</a></dt><dd><p>Additional parameters
+                                        understood by
+                                        <a href="systemd-debug-generator.html"><span class="citerefentry"><span class="refentrytitle">systemd-debug-generator</span>(8)</span></a>,
+                                        to mask or start specific
+                                        units at boot, or invoke a
+                                        debug shell on tty9.</p></dd><dt id="systemd.restore_state="><span class="term"><code class="varname">systemd.restore_state=</code></span><a class="headerlink" title="Permalink to this term" href="#systemd.restore_state=">¶</a></dt><dd><p>This parameter is understood by
                                         several system tools to control
                                         whether or not they should restore
                                         system state from the previous boot.
                                         the system and service manager
                                         to control locale and language
                                         settings. For details, see
-                                        <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>.</p></dd><dt id="fsck.mode="><span class="term"><code class="varname">fsck.mode=</code></span><a class="headerlink" title="Permalink to this term" href="#fsck.mode=">¶</a></dt><dd><p>Parameter understood by
-                                        the file system checker
-                                        services. For details, see
-                                        <a href="systemd-fsck@.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-fsck@.service</span>(8)</span></a>.</p></dd><dt id="fsck.repair="><span class="term"><code class="varname">fsck.repair=</code></span><a class="headerlink" title="Permalink to this term" href="#fsck.repair=">¶</a></dt><dd><p>Parameter understood by
+                                        <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>.</p></dd><dt id="fsck.mode="><span class="term"><code class="varname">fsck.mode=</code>, </span><span class="term"><code class="varname">fsck.repair=</code></span><a class="headerlink" title="Permalink to this term" href="#fsck.mode=">¶</a></dt><dd><p>Parameters understood by
                                         the file system checker
                                         services. For details, see
                                         <a href="systemd-fsck@.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-fsck@.service</span>(8)</span></a>.</p></dd><dt id="quotacheck.mode="><span class="term"><code class="varname">quotacheck.mode=</code></span><a class="headerlink" title="Permalink to this term" href="#quotacheck.mode=">¶</a></dt><dd><p>Parameter understood by
                                         <a href="systemd-cryptsetup-generator.html"><span class="citerefentry"><span class="refentrytitle">systemd-cryptsetup-generator</span>(8)</span></a>.</p></dd><dt id="fstab="><span class="term"><code class="varname">fstab=</code>, </span><span class="term"><code class="varname">rd.fstab=</code></span><a class="headerlink" title="Permalink to this term" href="#fstab=">¶</a></dt><dd><p>Configures the
                                         <code class="filename">/etc/fstab</code>
                                         logic at boot. For details, see
-                                        <a href="systemd-fstab-generator.html"><span class="citerefentry"><span class="refentrytitle">systemd-fstab-generator</span>(8)</span></a>.</p></dd><dt id="modules-load="><span class="term"><code class="varname">modules-load=</code>, </span><span class="term"><code class="varname">rd.modules-load=</code></span><a class="headerlink" title="Permalink to this term" href="#modules-load=">¶</a></dt><dd><p>Load a specific kernel
+                                        <a href="systemd-fstab-generator.html"><span class="citerefentry"><span class="refentrytitle">systemd-fstab-generator</span>(8)</span></a>.</p></dd><dt id="root="><span class="term"><code class="varname">root=</code>, </span><span class="term"><code class="varname">rootfstype=</code>, </span><span class="term"><code class="varname">rootfsflags=</code>, </span><span class="term"><code class="varname">ro</code>, </span><span class="term"><code class="varname">rw</code></span><a class="headerlink" title="Permalink to this term" href="#root=">¶</a></dt><dd><p>Configures the root file
+                                        system and its file system
+                                        type and mount options, as
+                                        well as whether it shall be
+                                        mounted read-only or
+                                        read-writable initially. For
+                                        details, see
+                                        <a href="systemd-fstab-generator.html"><span class="citerefentry"><span class="refentrytitle">systemd-fstab-generator</span>(8)</span></a>.</p></dd><dt id="systemd.gpt_auto="><span class="term"><code class="varname">systemd.gpt_auto=</code>, </span><span class="term"><code class="varname">rd.systemd.gpt_auto=</code></span><a class="headerlink" title="Permalink to this term" href="#systemd.gpt_auto=">¶</a></dt><dd><p>Configures whether GPT
+                                        based partition auto-discovery
+                                        shall be attempted. For
+                                        details, see
+                                        <a href="systemd-gpt-auto-generator.html"><span class="citerefentry"><span class="refentrytitle">systemd-gpt-auto-generator</span>(8)</span></a>.</p></dd><dt id="modules-load="><span class="term"><code class="varname">modules-load=</code>, </span><span class="term"><code class="varname">rd.modules-load=</code></span><a class="headerlink" title="Permalink to this term" href="#modules-load=">¶</a></dt><dd><p>Load a specific kernel
                                         module early at boot. For
                                         details, see
-                                        <a href="systemd-modules-load.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-modules-load.service</span>(8)</span></a>.</p></dd></dl></div></div><div class="refsect1"><a name="idm214190534208"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+                                        <a href="systemd-modules-load.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-modules-load.service</span>(8)</span></a>.</p></dd></dl></div></div><div class="refsect1"><a name="idm214184989504"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
                           <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
                           <a href="bootparam.html"><span class="citerefentry"><span class="refentrytitle">bootparam</span>(7)</span></a>,
                           <a href="dracut.cmdline.html"><span class="citerefentry"><span class="refentrytitle">dracut.cmdline</span>(7)</span></a>,
+                          <a href="systemd-debug-generator.html"><span class="citerefentry"><span class="refentrytitle">systemd-debug-generator</span>(8)</span></a>,
                           <a href="systemd-fsck@.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-fsck@.service</span>(8)</span></a>,
                           <a href="systemd-quotacheck.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-quotacheck.service</span>(8)</span></a>,
                           <a href="systemd-journald.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-journald.service</span>(8)</span></a>,
                           <a href="plymouth.html"><span class="citerefentry"><span class="refentrytitle">plymouth</span>(8)</span></a>,
                           <a href="systemd-cryptsetup-generator.html"><span class="citerefentry"><span class="refentrytitle">systemd-cryptsetup-generator</span>(8)</span></a>,
                           <a href="systemd-fstab-generator.html"><span class="citerefentry"><span class="refentrytitle">systemd-fstab-generator</span>(8)</span></a>,
-                          <a href="systemd-modules-load.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-modules-load.service</span>(8)</span></a>
-                          <a href="systemd-backlight@.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-backlight@.service</span>(8)</span></a>
+                          <a href="systemd-gpt-auto-generator.html"><span class="citerefentry"><span class="refentrytitle">systemd-gpt-auto-generator</span>(8)</span></a>,
+                          <a href="systemd-modules-load.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-modules-load.service</span>(8)</span></a>,
+                          <a href="systemd-backlight@.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-backlight@.service</span>(8)</span></a>,
                           <a href="systemd-rfkill@.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-rfkill@.service</span>(8)</span></a>
                   </p></div></div></body></html>
index a276b7141d292b9a152aa5263814de2c0f4ffeda..f244bfcb5794e33af20776883c680d52f1914625 100644 (file)
                                 </listitem>
                         </varlistentry>
 
+                        <varlistentry>
+                                <term><varname>systemd.mask=</varname></term>
+                                <term><varname>systemd.wants=</varname></term>
+                                <term><varname>systemd.debug-shell</varname></term>
+                                <listitem>
+                                        <para>Additional parameters
+                                        understood by
+                                        <citerefentry><refentrytitle>systemd-debug-generator</refentrytitle><manvolnum>8</manvolnum></citerefentry>,
+                                        to mask or start specific
+                                        units at boot, or invoke a
+                                        debug shell on tty9.</para>
+                                </listitem>
+                        </varlistentry>
+
                         <varlistentry>
                                 <term><varname>systemd.restore_state=</varname></term>
                                 <listitem>
 
                         <varlistentry>
                                 <term><varname>fsck.mode=</varname></term>
-
-                                <listitem>
-                                        <para>Parameter understood by
-                                        the file system checker
-                                        services. For details, see
-                                        <citerefentry><refentrytitle>systemd-fsck@.service</refentrytitle><manvolnum>8</manvolnum></citerefentry>.</para>
-                                </listitem>
-                        </varlistentry>
-
-                        <varlistentry>
                                 <term><varname>fsck.repair=</varname></term>
 
                                 <listitem>
-                                        <para>Parameter understood by
+                                        <para>Parameters understood by
                                         the file system checker
                                         services. For details, see
                                         <citerefentry><refentrytitle>systemd-fsck@.service</refentrytitle><manvolnum>8</manvolnum></citerefentry>.</para>
                                 </listitem>
                         </varlistentry>
 
+                        <varlistentry>
+                                <term><varname>root=</varname></term>
+                                <term><varname>rootfstype=</varname></term>
+                                <term><varname>rootfsflags=</varname></term>
+                                <term><varname>ro</varname></term>
+                                <term><varname>rw</varname></term>
+
+                                <listitem>
+                                        <para>Configures the root file
+                                        system and its file system
+                                        type and mount options, as
+                                        well as whether it shall be
+                                        mounted read-only or
+                                        read-writable initially. For
+                                        details, see
+                                        <citerefentry><refentrytitle>systemd-fstab-generator</refentrytitle><manvolnum>8</manvolnum></citerefentry>.</para>
+                                </listitem>
+                        </varlistentry>
+
+                        <varlistentry>
+                                <term><varname>systemd.gpt_auto=</varname></term>
+                                <term><varname>rd.systemd.gpt_auto=</varname></term>
+
+                                <listitem>
+                                        <para>Configures whether GPT
+                                        based partition auto-discovery
+                                        shall be attempted. For
+                                        details, see
+                                        <citerefentry><refentrytitle>systemd-gpt-auto-generator</refentrytitle><manvolnum>8</manvolnum></citerefentry>.</para>
+                                </listitem>
+                        </varlistentry>
+
                         <varlistentry>
                                 <term><varname>modules-load=</varname></term>
                                 <term><varname>rd.modules-load=</varname></term>
                           <citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
                           <citerefentry><refentrytitle>bootparam</refentrytitle><manvolnum>7</manvolnum></citerefentry>,
                           <citerefentry><refentrytitle>dracut.cmdline</refentrytitle><manvolnum>7</manvolnum></citerefentry>,
+                          <citerefentry><refentrytitle>systemd-debug-generator</refentrytitle><manvolnum>8</manvolnum></citerefentry>,
                           <citerefentry><refentrytitle>systemd-fsck@.service</refentrytitle><manvolnum>8</manvolnum></citerefentry>,
                           <citerefentry><refentrytitle>systemd-quotacheck.service</refentrytitle><manvolnum>8</manvolnum></citerefentry>,
                           <citerefentry><refentrytitle>systemd-journald.service</refentrytitle><manvolnum>8</manvolnum></citerefentry>,
                           <citerefentry><refentrytitle>plymouth</refentrytitle><manvolnum>8</manvolnum></citerefentry>,
                           <citerefentry><refentrytitle>systemd-cryptsetup-generator</refentrytitle><manvolnum>8</manvolnum></citerefentry>,
                           <citerefentry><refentrytitle>systemd-fstab-generator</refentrytitle><manvolnum>8</manvolnum></citerefentry>,
-                          <citerefentry><refentrytitle>systemd-modules-load.service</refentrytitle><manvolnum>8</manvolnum></citerefentry>
-                          <citerefentry><refentrytitle>systemd-backlight@.service</refentrytitle><manvolnum>8</manvolnum></citerefentry>
+                          <citerefentry><refentrytitle>systemd-gpt-auto-generator</refentrytitle><manvolnum>8</manvolnum></citerefentry>,
+                          <citerefentry><refentrytitle>systemd-modules-load.service</refentrytitle><manvolnum>8</manvolnum></citerefentry>,
+                          <citerefentry><refentrytitle>systemd-backlight@.service</refentrytitle><manvolnum>8</manvolnum></citerefentry>,
                           <citerefentry><refentrytitle>systemd-rfkill@.service</refentrytitle><manvolnum>8</manvolnum></citerefentry>
                   </para>
         </refsect1>
index 00ef2c4035d6325d82cbb7e2d3e0893294d2e585..b6d2c74e0cbae2eebbc3f917e2b21d1c3c759885 100644 (file)
@@ -1,5 +1,5 @@
 '\" t
-.TH "KERNEL\-INSTALL" "8" "" "systemd 214" "kernel-install"
+.TH "KERNEL\-INSTALL" "8" "" "systemd 215" "kernel-install"
 .\" -----------------------------------------------------------------
 .\" * Define some portability stuff
 .\" -----------------------------------------------------------------
@@ -81,7 +81,10 @@ to
 /boot/loader/entries/\fIMACHINE\-ID\fR\-\fIKERNEL\-VERSION\fR\&.conf\&. The title of the entry is the
 \fIPRETTY_NAME\fR
 parameter specified in
-/etc/os\-release, or "Linux
+/etc/os\-release
+or
+/usr/lib/os\-release
+(if the former is missing), or "Linux
 \fIKERNEL\-VERSION\fR", if unset\&. If the file
 initrd
 is found next to the
@@ -142,7 +145,7 @@ The content of the file specifies the machine identification
 \fIMACHINE\-ID\fR\&.
 .RE
 .PP
-/etc/os\-release
+/etc/os\-release /usr/lib/os\-release
 .RS 4
 The content of the file specifies the operating system title
 \fIPRETTY_NAME\fR\&.
index 90c0722c6de2c8b156a12d3f10a899b08763e734..14fe088ae3a7d3d90b01cd2fca7c3b2f501edaf6 100644 (file)
@@ -19,7 +19,7 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="kernel-install"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>kernel-install — Add and remove kernel and initramfs images to and from /boot</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="cmdsynopsis"><p><code class="command">kernel-install</code>   COMMAND   <em class="replaceable"><code>KERNEL-VERSION</code></em>  [<em class="replaceable"><code>KERNEL-IMAGE</code></em>]</p></div></div><div class="refsect1"><a name="idm214197470224"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p>
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="kernel-install"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>kernel-install — Add and remove kernel and initramfs images to and from /boot</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="cmdsynopsis"><p><code class="command">kernel-install</code>   COMMAND   <em class="replaceable"><code>KERNEL-VERSION</code></em>  [<em class="replaceable"><code>KERNEL-IMAGE</code></em>]</p></div></div><div class="refsect1"><a name="idm214177157904"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p>
       <span class="command"><strong>kernel-install</strong></span> is used to install and remove kernel and
       initramfs images to and from <code class="filename">/boot</code>.
     </p><p><span class="command"><strong>kernel-install</strong></span> will execute the files
     executables with a local file if needed; a symbolic link in <code class="filename">/etc/kernel/install.d/</code>
     with the same name as an executable in <code class="filename">/usr/lib/kernel/install.d/</code>,
     pointing to /dev/null, disables the executable entirely. Executables must have the
-    extension "<code class="literal">.install</code>"; other extensions are ignored.</p></div><div class="refsect1"><a name="idm214197461328"></a><h2 id="Commands">Commands<a class="headerlink" title="Permalink to this headline" href="#Commands">¶</a></h2><p>The following commands are understood:</p><div class="variablelist"><dl class="variablelist"><dt id="add KERNEL-VERSION KERNEL-IMAGE"><span class="term"><span class="command"><strong>add <em class="replaceable"><code>KERNEL-VERSION</code></em> <em class="replaceable"><code>KERNEL-IMAGE</code></em></strong></span></span><a class="headerlink" title="Permalink to this term" href="#add%20KERNEL-VERSION%20KERNEL-IMAGE">¶</a></dt><dd><p><span class="command"><strong>kernel-install</strong></span> creates the directory
+    extension "<code class="literal">.install</code>"; other extensions are ignored.</p></div><div class="refsect1"><a name="idm214178545168"></a><h2 id="Commands">Commands<a class="headerlink" title="Permalink to this headline" href="#Commands">¶</a></h2><p>The following commands are understood:</p><div class="variablelist"><dl class="variablelist"><dt id="add KERNEL-VERSION KERNEL-IMAGE"><span class="term"><span class="command"><strong>add <em class="replaceable"><code>KERNEL-VERSION</code></em> <em class="replaceable"><code>KERNEL-IMAGE</code></em></strong></span></span><a class="headerlink" title="Permalink to this term" href="#add%20KERNEL-VERSION%20KERNEL-IMAGE">¶</a></dt><dd><p><span class="command"><strong>kernel-install</strong></span> creates the directory
           <code class="filename">/boot/<em class="replaceable"><code>MACHINE-ID</code></em>/<em class="replaceable"><code>KERNEL-VERSION</code></em>/</code>
           and calls every executable
           <code class="filename">/usr/lib/kernel/install.d/*.install</code> and
           <code class="filename">/etc/kernel/install.d/*.install</code> with
           the arguments
           </p><pre class="programlisting">add <em class="replaceable"><code>KERNEL-VERSION</code></em> <code class="filename">/boot/<em class="replaceable"><code>MACHINE-ID</code></em>/<em class="replaceable"><code>KERNEL-VERSION</code></em>/</code></pre><p>
-          </p><p>The kernel-install plugin <code class="filename">50-depmod.install</code> runs depmod for the <em class="replaceable"><code>KERNEL-VERSION</code></em>.</p><p>The kernel-install plugin <code class="filename">90-loaderentry.install</code> copies
+          </p><p>The kernel-install plugin <code class="filename">50-depmod.install</code> runs depmod for the <em class="replaceable"><code>KERNEL-VERSION</code></em>.</p><p>The kernel-install plugin
+          <code class="filename">90-loaderentry.install</code> copies
           <em class="replaceable"><code>KERNEL-IMAGE</code></em> to
           <code class="filename">/boot/<em class="replaceable"><code>MACHINE-ID</code></em>/<em class="replaceable"><code>KERNEL-VERSION</code></em>/linux</code>.
-          It also creates a boot loader entry according to the boot loader specification in
+          It also creates a boot loader entry according to the boot
+          loader specification in
           <code class="filename">/boot/loader/entries/<em class="replaceable"><code>MACHINE-ID</code></em>-<em class="replaceable"><code>KERNEL-VERSION</code></em>.conf</code>.
-          The title of the entry is the <em class="replaceable"><code>PRETTY_NAME</code></em> parameter specified in <code class="filename">/etc/os-release</code>,
-          or "Linux <em class="replaceable"><code>KERNEL-VERSION</code></em>", if unset.
-          If the file <code class="filename">initrd</code> is found next to the
+          The title of the entry is the
+          <em class="replaceable"><code>PRETTY_NAME</code></em> parameter specified
+          in <code class="filename">/etc/os-release</code> or
+          <code class="filename">/usr/lib/os-release</code> (if the former is
+          missing), or "Linux
+          <em class="replaceable"><code>KERNEL-VERSION</code></em>", if unset.  If
+          the file <code class="filename">initrd</code> is found next to the
           <code class="filename">linux</code> file, the initrd will be added to
           the configuration.</p></dd><dt id="remove KERNEL-VERSION"><span class="term"><span class="command"><strong>remove <em class="replaceable"><code>KERNEL-VERSION</code></em></strong></span></span><a class="headerlink" title="Permalink to this term" href="#remove%20KERNEL-VERSION">¶</a></dt><dd><p>Calls every executable <code class="filename">/usr/lib/kernel/install.d/*.install</code>
           and <code class="filename">/etc/kernel/install.d/*.install</code> with the arguments
           </p><pre class="programlisting">remove <em class="replaceable"><code>KERNEL-VERSION</code></em> <code class="filename">/boot/<em class="replaceable"><code>MACHINE-ID</code></em>/<em class="replaceable"><code>KERNEL-VERSION</code></em>/</code></pre><p>
           </p><p><span class="command"><strong>kernel-install</strong></span> removes the entire directory
           <code class="filename">/boot/<em class="replaceable"><code>MACHINE-ID</code></em>/<em class="replaceable"><code>KERNEL-VERSION</code></em>/</code> afterwards.</p><p>The kernel-install plugin <code class="filename">90-loaderentry.install</code> removes the file
-          <code class="filename">/boot/loader/entries/<em class="replaceable"><code>MACHINE-ID</code></em>-<em class="replaceable"><code>KERNEL-VERSION</code></em>.conf</code>.</p></dd></dl></div></div><div class="refsect1"><a name="idm214201375872"></a><h2 id="Exit status">Exit status<a class="headerlink" title="Permalink to this headline" href="#Exit%20status">¶</a></h2><p>If every executable returns with 0, 0 is returned, a non-zero failure code otherwise.</p></div><div class="refsect1"><a name="idm214201374688"></a><h2 id="Files">Files<a class="headerlink" title="Permalink to this headline" href="#Files">¶</a></h2><div class="variablelist"><dl class="variablelist"><dt id="
+          <code class="filename">/boot/loader/entries/<em class="replaceable"><code>MACHINE-ID</code></em>-<em class="replaceable"><code>KERNEL-VERSION</code></em>.conf</code>.</p></dd></dl></div></div><div class="refsect1"><a name="idm214176177616"></a><h2 id="Exit status">Exit status<a class="headerlink" title="Permalink to this headline" href="#Exit%20status">¶</a></h2><p>If every executable returns with 0, 0 is returned, a non-zero failure code otherwise.</p></div><div class="refsect1"><a name="idm214178783696"></a><h2 id="Files">Files<a class="headerlink" title="Permalink to this headline" href="#Files">¶</a></h2><div class="variablelist"><dl class="variablelist"><dt id="
           /usr/lib/kernel/install.d/*.install
           /etc/kernel/install.d/*.install
         "><span class="term">
           <code class="filename">/etc/machine-id</code>
         </span><a class="headerlink" title="Permalink to this term" href="#%0A%20%20%20%20%20%20%20%20%20%20/etc/machine-id%0A%20%20%20%20%20%20%20%20">¶</a></dt><dd><p>The content of the file specifies the machine identification <em class="replaceable"><code>MACHINE-ID</code></em>.</p></dd><dt id="
           /etc/os-release
+          /usr/lib/os-release
         "><span class="term">
           <code class="filename">/etc/os-release</code>
-        </span><a class="headerlink" title="Permalink to this term" href="#%0A%20%20%20%20%20%20%20%20%20%20/etc/os-release%0A%20%20%20%20%20%20%20%20">¶</a></dt><dd><p>The content of the file specifies the operating system title <em class="replaceable"><code>PRETTY_NAME</code></em>.</p></dd></dl></div></div><div class="refsect1"><a name="idm214196394944"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+          <code class="filename">/usr/lib/os-release</code>
+        </span><a class="headerlink" title="Permalink to this term" href="#%0A%20%20%20%20%20%20%20%20%20%20/etc/os-release%0A%20%20%20%20%20%20%20%20%20%20/usr/lib/os-release%0A%20%20%20%20%20%20%20%20">¶</a></dt><dd><p>The content of the file specifies the operating system title <em class="replaceable"><code>PRETTY_NAME</code></em>.</p></dd></dl></div></div><div class="refsect1"><a name="idm214176828720"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
       <a href="machine-id.html"><span class="citerefentry"><span class="refentrytitle">machine-id</span>(5)</span></a>,
       <a href="os-release.html"><span class="citerefentry"><span class="refentrytitle">os-release</span>(5)</span></a>,
       <a class="ulink" href="http://www.freedesktop.org/wiki/Specifications/BootLoaderSpec" target="_top">Boot loader specification</a>
index 3612b7d934b88a4b9e887c4138bc2098e6af3323..178ad1d2bd22a2c2739ec753dd77a06161124b9f 100644 (file)
@@ -95,14 +95,20 @@ along with systemd; If not, see <http://www.gnu.org/licenses/>.
 
           <para>The kernel-install plugin <filename>50-depmod.install</filename> runs depmod for the <replaceable>KERNEL-VERSION</replaceable>.</para>
 
-          <para>The kernel-install plugin <filename>90-loaderentry.install</filename> copies
+          <para>The kernel-install plugin
+          <filename>90-loaderentry.install</filename> copies
           <replaceable>KERNEL-IMAGE</replaceable> to
           <filename>/boot/<replaceable>MACHINE-ID</replaceable>/<replaceable>KERNEL-VERSION</replaceable>/linux</filename>.
-          It also creates a boot loader entry according to the boot loader specification in
+          It also creates a boot loader entry according to the boot
+          loader specification in
           <filename>/boot/loader/entries/<replaceable>MACHINE-ID</replaceable>-<replaceable>KERNEL-VERSION</replaceable>.conf</filename>.
-          The title of the entry is the <replaceable>PRETTY_NAME</replaceable> parameter specified in <filename>/etc/os-release</filename>,
-          or "Linux <replaceable>KERNEL-VERSION</replaceable>", if unset.
-          If the file <filename>initrd</filename> is found next to the
+          The title of the entry is the
+          <replaceable>PRETTY_NAME</replaceable> parameter specified
+          in <filename>/etc/os-release</filename> or
+          <filename>/usr/lib/os-release</filename> (if the former is
+          missing), or "Linux
+          <replaceable>KERNEL-VERSION</replaceable>", if unset.  If
+          the file <filename>initrd</filename> is found next to the
           <filename>linux</filename> file, the initrd will be added to
           the configuration.</para>
         </listitem>
@@ -165,6 +171,7 @@ along with systemd; If not, see <http://www.gnu.org/licenses/>.
       <varlistentry>
         <term>
           <filename>/etc/os-release</filename>
+          <filename>/usr/lib/os-release</filename>
         </term>
           <listitem>
             <para>The content of the file specifies the operating system title <replaceable>PRETTY_NAME</replaceable>.</para>
index cbe3cfa3f84630dbc1b20d3e558dbcffc41831e4..16aedcafe2a206757d92bd8d7acfe81acd76ef2a 100644 (file)
@@ -1,5 +1,5 @@
 '\" t
-.TH "LOCALE\&.CONF" "5" "" "systemd 214" "locale.conf"
+.TH "LOCALE\&.CONF" "5" "" "systemd 215" "locale.conf"
 .\" -----------------------------------------------------------------
 .\" * Define some portability stuff
 .\" -----------------------------------------------------------------
index a6939428dfa517c954df65308c3282fea10f3655..9bf5d7e8bc17a6b8dd26750ec31dbf521fb236c3 100644 (file)
@@ -19,7 +19,7 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="locale.conf"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>locale.conf — Configuration file for locale settings</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><p><code class="filename">/etc/locale.conf</code></p></div><div class="refsect1"><a name="idm214185472736"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p>The <code class="filename">/etc/locale.conf</code> file
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="locale.conf"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>locale.conf — Configuration file for locale settings</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><p><code class="filename">/etc/locale.conf</code></p></div><div class="refsect1"><a name="idm214178491184"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p>The <code class="filename">/etc/locale.conf</code> file
                 configures system-wide locale settings. It is read at
                 early-boot by
                 <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>.</p><p>The basic file format of
@@ -52,7 +52,7 @@
                 individual users.</p><p>Depending on the operating system, other
                 configuration files might be checked for locale
                 configuration as well, however only as
-                fallback.</p></div><div class="refsect1"><a name="idm214185459872"></a><h2 id="Options">Options<a class="headerlink" title="Permalink to this headline" href="#Options">¶</a></h2><p>The following locale settings may be set using
+                fallback.</p></div><div class="refsect1"><a name="idm214179144976"></a><h2 id="Options">Options<a class="headerlink" title="Permalink to this headline" href="#Options">¶</a></h2><p>The following locale settings may be set using
                 <code class="filename">/etc/locale.conf</code>:
                 <code class="varname">LANG=</code>,
                 <code class="varname">LANGUAGE=</code>,
@@ -71,8 +71,8 @@
                 <code class="varname">LC_ALL</code> may not be configured in
                 this file. For details about the meaning and semantics
                 of these settings, refer to
-                <a href="locale.html"><span class="citerefentry"><span class="refentrytitle">locale</span>(7)</span></a>.</p></div><div class="refsect1"><a name="idm214189403152"></a><h2 id="Example">Example<a class="headerlink" title="Permalink to this headline" href="#Example">¶</a></h2><div class="example"><a name="idm214189402480"></a><p class="title"><b>Example 1. German locale with English messages</b></p><div class="example-contents"><p><code class="filename">/etc/locale.conf</code>:</p><pre class="programlisting">LANG=de_DE.UTF-8
-LC_MESSAGES=en_US.UTF-8</pre></div></div><br class="example-break"></div><div class="refsect1"><a name="idm214189399888"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+                <a href="locale.html"><span class="citerefentry"><span class="refentrytitle">locale</span>(7)</span></a>.</p></div><div class="refsect1"><a name="idm214181208976"></a><h2 id="Example">Example<a class="headerlink" title="Permalink to this headline" href="#Example">¶</a></h2><div class="example"><a name="idm214179536720"></a><p class="title"><b>Example 1. German locale with English messages</b></p><div class="example-contents"><p><code class="filename">/etc/locale.conf</code>:</p><pre class="programlisting">LANG=de_DE.UTF-8
+LC_MESSAGES=en_US.UTF-8</pre></div></div><br class="example-break"></div><div class="refsect1"><a name="idm214180959888"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
                           <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
                           <a href="locale.html"><span class="citerefentry"><span class="refentrytitle">locale</span>(7)</span></a>,
                           <a href="systemd-localed.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-localed.service</span>(8)</span></a>
index e76fa21ae2e6200e742ae71f4f5581df20022405..39ab23cffed313f81150695e2eafe76c7be09a10 100644 (file)
@@ -1,5 +1,5 @@
 '\" t
-.TH "LOCALECTL" "1" "" "systemd 214" "localectl"
+.TH "LOCALECTL" "1" "" "systemd 215" "localectl"
 .\" -----------------------------------------------------------------
 .\" * Define some portability stuff
 .\" -----------------------------------------------------------------
@@ -57,8 +57,10 @@ is invoked and this option is passed, then the keymap will not be converted from
 .PP
 \fB\-H\fR, \fB\-\-host=\fR
 .RS 4
-Execute the operation remotely\&. Specify a hostname, or username and hostname separated by
-"@", to connect to\&. This will use SSH to talk to the remote machine manager instance\&.
+Execute the operation remotely\&. Specify a hostname, or a username and hostname separated by
+"@", to connect to\&. The hostname may optionally be suffixed by a container name, separated by
+":", which connects directly to a specific container on the specified host\&. This will use SSH to talk to the remote machine manager instance\&. Container names may be enumerated with
+\fBmachinectl \-H \fR\fB\fIHOST\fR\fR\&.
 .RE
 .PP
 \fB\-h\fR, \fB\-\-help\fR
index 73049792ac0e57d87f5f828a4c627676c4f4de96..6d12bb0980628b8c71575ca1cfba0ed60746cc20 100644 (file)
@@ -19,7 +19,7 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="localectl"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>localectl — Control the system locale and keyboard layout settings</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="cmdsynopsis"><p><code class="command">localectl</code>  [OPTIONS...] {COMMAND}</p></div></div><div class="refsect1"><a name="idm214170531264"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><span class="command"><strong>localectl</strong></span> may be used to
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="localectl"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>localectl — Control the system locale and keyboard layout settings</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="cmdsynopsis"><p><code class="command">localectl</code>  [OPTIONS...] {COMMAND}</p></div></div><div class="refsect1"><a name="idm214196021920"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><span class="command"><strong>localectl</strong></span> may be used to
                 query and change the system locale and keyboard layout
                 settings.</p><p>The system locale controls the language settings
                 of system services and of the UI before the user logs
@@ -28,7 +28,7 @@
                 layout used on the text console and of the graphical
                 UI before the user logs in, such as the display
                 manager, as well as the default for users after
-                login.</p></div><div class="refsect1"><a name="idm214170528112"></a><h2 id="Options">Options<a class="headerlink" title="Permalink to this headline" href="#Options">¶</a></h2><p>The following options are understood:</p><div class="variablelist"><dl class="variablelist"><dt id="--no-ask-password"><span class="term"><code class="option">--no-ask-password</code></span><a class="headerlink" title="Permalink to this term" href="#--no-ask-password">¶</a></dt><dd><p>Do not query the user
+                login.</p></div><div class="refsect1"><a name="idm214196018768"></a><h2 id="Options">Options<a class="headerlink" title="Permalink to this headline" href="#Options">¶</a></h2><p>The following options are understood:</p><div class="variablelist"><dl class="variablelist"><dt id="--no-ask-password"><span class="term"><code class="option">--no-ask-password</code></span><a class="headerlink" title="Permalink to this term" href="#--no-ask-password">¶</a></dt><dd><p>Do not query the user
                                 for authentication for privileged
                                 operations.</p></dd><dt id="-P"><span class="term"><code class="option">-P</code>, </span><span class="term"><code class="option">--privileged</code></span><a class="headerlink" title="Permalink to this term" href="#-P">¶</a></dt><dd><p>Acquire privileges via PolicyKit
                                 before executing the operation.</p></dd><dt id="--no-convert"><span class="term"><code class="option">--no-convert</code></span><a class="headerlink" title="Permalink to this term" href="#--no-convert">¶</a></dt><dd><p>If
                                 invoked and this option is passed, then
                                 the keymap will not be converted from
                                 the console to X11, or X11 to console,
-                                respectively.</p></dd><dt id="-H"><span class="term"><code class="option">-H</code>, </span><span class="term"><code class="option">--host=</code></span><a class="headerlink" title="Permalink to this term" href="#-H">¶</a></dt><dd><p><a name="host-text"></a>Execute the operation remotely. Specify a hostname, or
+                                respectively.</p></dd><dt id="-H"><span class="term"><code class="option">-H</code>, </span><span class="term"><code class="option">--host=</code></span><a class="headerlink" title="Permalink to this term" href="#-H">¶</a></dt><dd><p><a name="host-text"></a>Execute the operation remotely. Specify a hostname, or a
       username and hostname separated by "<code class="literal">@</code>", to
-      connect to. This will use SSH to talk to the remote machine
-      manager instance.</p></dd><dt id="-h"><span class="term"><code class="option">-h</code>, </span><span class="term"><code class="option">--help</code></span><a class="headerlink" title="Permalink to this term" href="#-h">¶</a></dt><dd><p><a name="help-text"></a>Print a short help text and exit.
+      connect to. The hostname may optionally be suffixed by a
+      container name, separated by "<code class="literal">:</code>", which
+      connects directly to a specific container on the specified
+      host. This will use SSH to talk to the remote machine manager
+      instance. Container names may be enumerated with
+      <span class="command"><strong>machinectl -H
+      <em class="replaceable"><code>HOST</code></em></strong></span>.</p></dd><dt id="-h"><span class="term"><code class="option">-h</code>, </span><span class="term"><code class="option">--help</code></span><a class="headerlink" title="Permalink to this term" href="#-h">¶</a></dt><dd><p><a name="help-text"></a>Print a short help text and exit.
     </p></dd><dt id="--version"><span class="term"><code class="option">--version</code></span><a class="headerlink" title="Permalink to this term" href="#--version">¶</a></dt><dd><p><a name="version-text"></a>Print a short version string and exit.</p></dd><dt id="--no-pager"><span class="term"><code class="option">--no-pager</code></span><a class="headerlink" title="Permalink to this term" href="#--no-pager">¶</a></dt><dd><p>Do not pipe output into a pager.</p></dd></dl></div><p>The following commands are understood:</p><div class="variablelist"><dl class="variablelist"><dt id="status"><span class="term"><span class="command"><strong>status</strong></span></span><a class="headerlink" title="Permalink to this term" href="#status">¶</a></dt><dd><p>Show current settings
                                 of the system locale and keyboard
                                 mapping.</p></dd><dt id="set-locale LOCALE..."><span class="term"><span class="command"><strong>set-locale LOCALE...</strong></span></span><a class="headerlink" title="Permalink to this term" href="#set-locale%20LOCALE...">¶</a></dt><dd><p>Set the system
@@ -93,8 +98,8 @@
                                 optionally takes a layout parameter to
                                 limit the output to the variants
                                 suitable for the specific
-                                layout.</p></dd></dl></div></div><div class="refsect1"><a name="idm214174436688"></a><h2 id="Exit status">Exit status<a class="headerlink" title="Permalink to this headline" href="#Exit%20status">¶</a></h2><p>On success, 0 is returned, a non-zero failure
-                code otherwise.</p></div><div class="refsect1"><a name="idm214159534976"></a><h2 id="Environment">Environment<a class="headerlink" title="Permalink to this headline" href="#Environment">¶</a></h2><div class="variablelist"><dl class="variablelist"><dt id="$SYSTEMD_PAGER"><span class="term"><code class="varname">$SYSTEMD_PAGER</code></span><a class="headerlink" title="Permalink to this term" href="#%24SYSTEMD_PAGER">¶</a></dt><dd><p>Pager to use when
+                                layout.</p></dd></dl></div></div><div class="refsect1"><a name="idm214199874560"></a><h2 id="Exit status">Exit status<a class="headerlink" title="Permalink to this headline" href="#Exit%20status">¶</a></h2><p>On success, 0 is returned, a non-zero failure
+                code otherwise.</p></div><div class="refsect1"><a name="idm214186560208"></a><h2 id="Environment">Environment<a class="headerlink" title="Permalink to this headline" href="#Environment">¶</a></h2><div class="variablelist"><dl class="variablelist"><dt id="$SYSTEMD_PAGER"><span class="term"><code class="varname">$SYSTEMD_PAGER</code></span><a class="headerlink" title="Permalink to this term" href="#%24SYSTEMD_PAGER">¶</a></dt><dd><p>Pager to use when
                         <code class="option">--no-pager</code> is not given;
                         overrides <code class="varname">$PAGER</code>.  Setting
                         this to an empty string or the value
                         <code class="option">--no-pager</code>.</p></dd><dt id="$SYSTEMD_LESS"><span class="term"><code class="varname">$SYSTEMD_LESS</code></span><a class="headerlink" title="Permalink to this term" href="#%24SYSTEMD_LESS">¶</a></dt><dd><p>Override the default
                         options passed to
                         <span class="command"><strong>less</strong></span>
-                        ("<code class="literal">FRSXMK</code>").</p></dd></dl></div></div><div class="refsect1"><a name="idm214174434976"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+                        ("<code class="literal">FRSXMK</code>").</p></dd></dl></div></div><div class="refsect1"><a name="idm214199872848"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
                         <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
                         <a href="locale.html"><span class="citerefentry"><span class="refentrytitle">locale</span>(7)</span></a>,
                         <a href="locale.conf.html"><span class="citerefentry"><span class="refentrytitle">locale.conf</span>(5)</span></a>,
index 80410af6063a1b3e9d6ec8eaae541e82a07bcd55..e7cae5632c2f8a7b492baf1eed418eda8773bfa9 100644 (file)
@@ -1,5 +1,5 @@
 '\" t
-.TH "LOCALTIME" "5" "" "systemd 214" "localtime"
+.TH "LOCALTIME" "5" "" "systemd 215" "localtime"
 .\" -----------------------------------------------------------------
 .\" * Define some portability stuff
 .\" -----------------------------------------------------------------
index 518dfc9781ad602491a5f0e9c3880d301b68148e..d01dbf249a806efa98a0aa23023731dfb64fde03 100644 (file)
@@ -19,7 +19,7 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="localtime"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>localtime — Local timezone configuration file</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><p><code class="filename">/etc/localtime</code> -&gt; <code class="filename">../usr/share/zoneinfo/…</code></p></div><div class="refsect1"><a name="idm214182246256"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p>The <code class="filename">/etc/localtime</code> file
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="localtime"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>localtime — Local timezone configuration file</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><p><code class="filename">/etc/localtime</code> -&gt; <code class="filename">../usr/share/zoneinfo/…</code></p></div><div class="refsect1"><a name="idm214172654304"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p>The <code class="filename">/etc/localtime</code> file
                 configures the system-wide timezone of the local
                 system that is used by applications for presentation
                 to the user. It should be an absolute or relative
@@ -38,7 +38,7 @@
                 <a href="environ.html"><span class="citerefentry"><span class="refentrytitle">environ</span>(7)</span></a>.</p><p>You may use
                 <a href="timedatectl.html"><span class="citerefentry"><span class="refentrytitle">timedatectl</span>(1)</span></a>
                 to change the settings of this file from the command
-                line.</p></div><div class="refsect1"><a name="idm214182237088"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+                line.</p></div><div class="refsect1"><a name="idm214173999696"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
                           <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
                           <a href="tzset.html"><span class="citerefentry"><span class="refentrytitle">tzset</span>(3)</span></a>,
                           <a href="localtime.html"><span class="citerefentry"><span class="refentrytitle">localtime</span>(3)</span></a>,
index 1ff910f5ad073075cbc923f4598b44f8a604be2e..8cd248e320010f49f71ed3ee92f5d2cf0af38685 100644 (file)
@@ -1,5 +1,5 @@
 '\" t
-.TH "LOGINCTL" "1" "" "systemd 214" "loginctl"
+.TH "LOGINCTL" "1" "" "systemd 215" "loginctl"
 .\" -----------------------------------------------------------------
 .\" * Define some portability stuff
 .\" -----------------------------------------------------------------
@@ -86,8 +86,10 @@ or
 .PP
 \fB\-H\fR, \fB\-\-host=\fR
 .RS 4
-Execute the operation remotely\&. Specify a hostname, or username and hostname separated by
-"@", to connect to\&. This will use SSH to talk to the remote machine manager instance\&.
+Execute the operation remotely\&. Specify a hostname, or a username and hostname separated by
+"@", to connect to\&. The hostname may optionally be suffixed by a container name, separated by
+":", which connects directly to a specific container on the specified host\&. This will use SSH to talk to the remote machine manager instance\&. Container names may be enumerated with
+\fBmachinectl \-H \fR\fB\fIHOST\fR\fR\&.
 .RE
 .PP
 \fB\-M\fR, \fB\-\-machine=\fR
index 25686e2a580e78414fa103e965a8fb98d77ae2af..27c6b587ad8fa1bc0fc378cb46b9f4541711fbc2 100644 (file)
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="loginctl"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>loginctl — Control the systemd login manager</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="cmdsynopsis"><p><code class="command">loginctl</code>  [OPTIONS...] {COMMAND} [NAME...]</p></div></div><div class="refsect1"><a name="idm214183535024"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><span class="command"><strong>loginctl</strong></span> may be used to
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="loginctl"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>loginctl — Control the systemd login manager</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="cmdsynopsis"><p><code class="command">loginctl</code>  [OPTIONS...] {COMMAND} [NAME...]</p></div></div><div class="refsect1"><a name="idm214184892112"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><span class="command"><strong>loginctl</strong></span> may be used to
                 introspect and control the state of the
                 <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>
-                login manager <a href="systemd-logind.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-logind.service</span>(8)</span></a>.</p></div><div class="refsect1"><a name="idm214183531520"></a><h2 id="Options">Options<a class="headerlink" title="Permalink to this headline" href="#Options">¶</a></h2><p>The following options are understood:</p><div class="variablelist"><dl class="variablelist"><dt id="--no-legend"><span class="term"><code class="option">--no-legend</code></span><a class="headerlink" title="Permalink to this term" href="#--no-legend">¶</a></dt><dd><p>Do not print the legend,
+                login manager <a href="systemd-logind.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-logind.service</span>(8)</span></a>.</p></div><div class="refsect1"><a name="idm214184888608"></a><h2 id="Options">Options<a class="headerlink" title="Permalink to this headline" href="#Options">¶</a></h2><p>The following options are understood:</p><div class="variablelist"><dl class="variablelist"><dt id="--no-legend"><span class="term"><code class="option">--no-legend</code></span><a class="headerlink" title="Permalink to this term" href="#--no-legend">¶</a></dt><dd><p>Do not print the legend,
                                         i.e. the column headers and
                                         the footer.</p></dd><dt id="--no-ask-password"><span class="term"><code class="option">--no-ask-password</code></span><a class="headerlink" title="Permalink to this term" href="#--no-ask-password">¶</a></dt><dd><p>Do not query the user
                                 for authentication for privileged
                                 <code class="constant">SIGINT</code> or
                                 <code class="constant">SIGSTOP</code>. If
                                 omitted, defaults to
-                                <code class="constant">SIGTERM</code>.</p></dd><dt id="-H"><span class="term"><code class="option">-H</code>, </span><span class="term"><code class="option">--host=</code></span><a class="headerlink" title="Permalink to this term" href="#-H">¶</a></dt><dd><p><a name="host-text"></a>Execute the operation remotely. Specify a hostname, or
+                                <code class="constant">SIGTERM</code>.</p></dd><dt id="-H"><span class="term"><code class="option">-H</code>, </span><span class="term"><code class="option">--host=</code></span><a class="headerlink" title="Permalink to this term" href="#-H">¶</a></dt><dd><p><a name="host-text"></a>Execute the operation remotely. Specify a hostname, or a
       username and hostname separated by "<code class="literal">@</code>", to
-      connect to. This will use SSH to talk to the remote machine
-      manager instance.</p></dd><dt id="-M"><span class="term"><code class="option">-M</code>, </span><span class="term"><code class="option">--machine=</code></span><a class="headerlink" title="Permalink to this term" href="#-M">¶</a></dt><dd><p><a name="machine-text"></a>Execute operation on a local container. Specify a
+      connect to. The hostname may optionally be suffixed by a
+      container name, separated by "<code class="literal">:</code>", which
+      connects directly to a specific container on the specified
+      host. This will use SSH to talk to the remote machine manager
+      instance. Container names may be enumerated with
+      <span class="command"><strong>machinectl -H
+      <em class="replaceable"><code>HOST</code></em></strong></span>.</p></dd><dt id="-M"><span class="term"><code class="option">-M</code>, </span><span class="term"><code class="option">--machine=</code></span><a class="headerlink" title="Permalink to this term" href="#-M">¶</a></dt><dd><p><a name="machine-text"></a>Execute operation on a local container. Specify a
       container name to connect to.</p></dd><dt id="-h"><span class="term"><code class="option">-h</code>, </span><span class="term"><code class="option">--help</code></span><a class="headerlink" title="Permalink to this term" href="#-h">¶</a></dt><dd><p><a name="help-text"></a>Print a short help text and exit.
     </p></dd><dt id="--version"><span class="term"><code class="option">--version</code></span><a class="headerlink" title="Permalink to this term" href="#--version">¶</a></dt><dd><p><a name="version-text"></a>Print a short version string and exit.</p></dd><dt id="--no-pager"><span class="term"><code class="option">--no-pager</code></span><a class="headerlink" title="Permalink to this term" href="#--no-pager">¶</a></dt><dd><p>Do not pipe output into a pager.</p></dd></dl></div><p>The following commands are understood:</p><div class="variablelist"><dl class="variablelist"><dt id="list-sessions"><span class="term"><span class="command"><strong>list-sessions</strong></span></span><a class="headerlink" title="Permalink to this term" href="#list-sessions">¶</a></dt><dd><p>List current sessions.</p></dd><dt id="session-status ID..."><span class="term"><span class="command"><strong>session-status</strong></span> <em class="replaceable"><code>ID</code></em>...</span><a class="headerlink" title="Permalink to this term" href="#session-status%20ID...">¶</a></dt><dd><p>Show terse runtime
                                 status information about one or more
                                 sessions on a seat. This kills all
                                 processes of all sessions on the seat
                                 and deallocates all runtime resources
-                                attached to them.</p></dd></dl></div></div><div class="refsect1"><a name="idm214182411776"></a><h2 id="Exit status">Exit status<a class="headerlink" title="Permalink to this headline" href="#Exit%20status">¶</a></h2><p>On success, 0 is returned, a non-zero failure
-                code otherwise.</p></div><div class="refsect1"><a name="idm214168340064"></a><h2 id="Environment">Environment<a class="headerlink" title="Permalink to this headline" href="#Environment">¶</a></h2><div class="variablelist"><dl class="variablelist"><dt id="$SYSTEMD_PAGER"><span class="term"><code class="varname">$SYSTEMD_PAGER</code></span><a class="headerlink" title="Permalink to this term" href="#%24SYSTEMD_PAGER">¶</a></dt><dd><p>Pager to use when
+                                attached to them.</p></dd></dl></div></div><div class="refsect1"><a name="idm214183768240"></a><h2 id="Exit status">Exit status<a class="headerlink" title="Permalink to this headline" href="#Exit%20status">¶</a></h2><p>On success, 0 is returned, a non-zero failure
+                code otherwise.</p></div><div class="refsect1"><a name="idm214172220528"></a><h2 id="Environment">Environment<a class="headerlink" title="Permalink to this headline" href="#Environment">¶</a></h2><div class="variablelist"><dl class="variablelist"><dt id="$SYSTEMD_PAGER"><span class="term"><code class="varname">$SYSTEMD_PAGER</code></span><a class="headerlink" title="Permalink to this term" href="#%24SYSTEMD_PAGER">¶</a></dt><dd><p>Pager to use when
                         <code class="option">--no-pager</code> is not given;
                         overrides <code class="varname">$PAGER</code>.  Setting
                         this to an empty string or the value
                         <code class="option">--no-pager</code>.</p></dd><dt id="$SYSTEMD_LESS"><span class="term"><code class="varname">$SYSTEMD_LESS</code></span><a class="headerlink" title="Permalink to this term" href="#%24SYSTEMD_LESS">¶</a></dt><dd><p>Override the default
                         options passed to
                         <span class="command"><strong>less</strong></span>
-                        ("<code class="literal">FRSXMK</code>").</p></dd></dl></div></div><div class="refsect1"><a name="idm214182410128"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+                        ("<code class="literal">FRSXMK</code>").</p></dd></dl></div></div><div class="refsect1"><a name="idm214183766592"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
                         <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
                         <a href="systemctl.html"><span class="citerefentry"><span class="refentrytitle">systemctl</span>(1)</span></a>,
                         <a href="systemd-logind.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-logind.service</span>(8)</span></a>,
index d1878dd2827eb13f7ad8b7e58714a8f91b805dbc..13f1254950398f86c4aaa1ba6fb2353bcfbe346b 100644 (file)
@@ -1,5 +1,5 @@
 '\" t
-.TH "LOGIND\&.CONF" "5" "" "systemd 214" "logind.conf"
+.TH "LOGIND\&.CONF" "5" "" "systemd 215" "logind.conf"
 .\" -----------------------------------------------------------------
 .\" * Define some portability stuff
 .\" -----------------------------------------------------------------
index 1055a36a4af6f59fc462d19be396245c82089012..92d84a204cf090f080e171f5d182994756abe239 100644 (file)
@@ -19,7 +19,7 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="logind.conf"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>logind.conf — Login manager configuration file</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><p><code class="filename">/etc/systemd/logind.conf</code></p></div><div class="refsect1"><a name="idm214188150608"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p>This file configures various parameters of the systemd login manager, <a href="systemd-logind.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-logind.service</span>(8)</span></a>.</p></div><div class="refsect1"><a name="idm214188148624"></a><h2 id="Options">Options<a class="headerlink" title="Permalink to this headline" href="#Options">¶</a></h2><p>All options are configured in the
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="logind.conf"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>logind.conf — Login manager configuration file</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><p><code class="filename">/etc/systemd/logind.conf</code></p></div><div class="refsect1"><a name="idm214189817760"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p>This file configures various parameters of the systemd login manager, <a href="systemd-logind.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-logind.service</span>(8)</span></a>.</p></div><div class="refsect1"><a name="idm214189815776"></a><h2 id="Options">Options<a class="headerlink" title="Permalink to this headline" href="#Options">¶</a></h2><p>All options are configured in the
                 "<code class="literal">[Login]</code>" section:</p><div class="variablelist"><dl class="variablelist"><dt id="NAutoVTs="><span class="term"><code class="varname">NAutoVTs=</code></span><a class="headerlink" title="Permalink to this term" href="#NAutoVTs=">¶</a></dt><dd><p>Takes a positive
                                 integer. Configures how many virtual
                                 terminals (VTs) to allocate by default
                                 objects of the root user are excluded
                                 from the effect of this
                                 setting. Defaults to
-                                "<code class="literal">yes</code>".</p></dd></dl></div></div><div class="refsect1"><a name="idm214187057552"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+                                "<code class="literal">yes</code>".</p></dd></dl></div></div><div class="refsect1"><a name="idm214188723664"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
                           <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
                           <a href="systemd-logind.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-logind.service</span>(8)</span></a>,
                           <a href="loginctl.html"><span class="citerefentry"><span class="refentrytitle">loginctl</span>(1)</span></a>,
index f58cfc0ecbccf04235941817942d90f32407980a..43ae6265d547fe2e3303e0db51b6533e49621dad 100644 (file)
@@ -1,5 +1,5 @@
 '\" t
-.TH "MACHINE\-ID" "5" "" "systemd 214" "machine-id"
+.TH "MACHINE\-ID" "5" "" "systemd 215" "machine-id"
 .\" -----------------------------------------------------------------
 .\" * Define some portability stuff
 .\" -----------------------------------------------------------------
index 624237dc3699e2b91fde47f36962acec9da88dff..8a549da3d554bcbfa40b4651ed005c31d007dc3a 100644 (file)
@@ -19,7 +19,7 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="machine-id"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>machine-id — Local machine ID configuration file</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><p><code class="filename">/etc/machine-id</code></p></div><div class="refsect1"><a name="idm214179250912"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p>The <code class="filename">/etc/machine-id</code> file
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="machine-id"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>machine-id — Local machine ID configuration file</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><p><code class="filename">/etc/machine-id</code></p></div><div class="refsect1"><a name="idm214174731056"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p>The <code class="filename">/etc/machine-id</code> file
                 contains the unique machine ID of the local system
                 that is set during installation. The machine ID is a
                 single newline-terminated, hexadecimal, 32-character,
@@ -40,7 +40,7 @@
                 call that POSIX specifies.</p><p>The
                 <a href="systemd-machine-id-setup.html"><span class="citerefentry"><span class="refentrytitle">systemd-machine-id-setup</span>(1)</span></a>
                 tool may be used by installer tools to initialize the
-                machine ID at install time.</p></div><div class="refsect1"><a name="idm214179244048"></a><h2 id="Relation to OSF UUIDs">Relation to OSF UUIDs<a class="headerlink" title="Permalink to this headline" href="#Relation%20to%20OSF%20UUIDs">¶</a></h2><p>Note that the machine ID historically is not an
+                machine ID at install time.</p></div><div class="refsect1"><a name="idm214175404608"></a><h2 id="Relation to OSF UUIDs">Relation to OSF UUIDs<a class="headerlink" title="Permalink to this headline" href="#Relation%20to%20OSF%20UUIDs">¶</a></h2><p>Note that the machine ID historically is not an
                 OSF UUID as defined by <a class="ulink" href="https://tools.ietf.org/html/rfc4122" target="_top">RFC
                 4122</a>, nor a Microsoft GUID; however, starting with
                 systemd v30, newly generated machine IDs do
@@ -55,12 +55,12 @@ id[6] = (id[6] &amp; 0x0F) | 0x40;
 id[8] = (id[8] &amp; 0x3F) | 0x80;</pre><p>(This code is inspired by
                 "<code class="literal">generate_random_uuid()</code>" of
                 <code class="filename">drivers/char/random.c</code> from the
-                Linux kernel sources.)</p></div><div class="refsect1"><a name="idm214179237872"></a><h2 id="History">History<a class="headerlink" title="Permalink to this headline" href="#History">¶</a></h2><p>The simple configuration file format of
+                Linux kernel sources.)</p></div><div class="refsect1"><a name="idm214178157136"></a><h2 id="History">History<a class="headerlink" title="Permalink to this headline" href="#History">¶</a></h2><p>The simple configuration file format of
                 <code class="filename">/etc/machine-id</code> originates in the
                 <code class="filename">/var/lib/dbus/machine-id</code> file
                 introduced by D-Bus. In fact, this latter file might be a
                 symlink to
-                <code class="varname">/etc/machine-id</code>.</p></div><div class="refsect1"><a name="idm214183187600"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+                <code class="varname">/etc/machine-id</code>.</p></div><div class="refsect1"><a name="idm214177106384"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
                           <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
                           <a href="systemd-machine-id-setup.html"><span class="citerefentry"><span class="refentrytitle">systemd-machine-id-setup</span>(1)</span></a>,
                           <a href="gethostid.html"><span class="citerefentry"><span class="refentrytitle">gethostid</span>(3)</span></a>,
index 3a48831fe5f9bf1c00db331ce23c0846b2f5ba6f..83dbd85df55056f719dae12410e70fcc36f8f9f1 100644 (file)
@@ -1,5 +1,5 @@
 '\" t
-.TH "MACHINE\-INFO" "5" "" "systemd 214" "machine-info"
+.TH "MACHINE\-INFO" "5" "" "systemd 215" "machine-info"
 .\" -----------------------------------------------------------------
 .\" * Define some portability stuff
 .\" -----------------------------------------------------------------
index dc9922bd7bc37d33b14d8f82becb8a0f2e574efd..892ce23726663e5405b9bf26975d25e27fe75452 100644 (file)
@@ -19,7 +19,7 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="machine-info"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>machine-info — Local machine information file</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><p><code class="filename">/etc/machine-info</code></p></div><div class="refsect1"><a name="idm214166856416"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p>The <code class="filename">/etc/machine-info</code> file
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="machine-info"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>machine-info — Local machine information file</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><p><code class="filename">/etc/machine-info</code></p></div><div class="refsect1"><a name="idm214171081520"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p>The <code class="filename">/etc/machine-info</code> file
                 contains machine metadata.</p><p>The basic file format of
                 <code class="filename">machine-info</code> is a
                 newline-separated list of environment-like
@@ -35,7 +35,7 @@
                 information as well, however only as fallback.</p><p>You may use
                 <a href="hostnamectl.html"><span class="citerefentry"><span class="refentrytitle">hostnamectl</span>(1)</span></a>
                 to change the settings of this file from the command
-                line.</p></div><div class="refsect1"><a name="idm214166850016"></a><h2 id="Options">Options<a class="headerlink" title="Permalink to this headline" href="#Options">¶</a></h2><p>The following machine metadata parameters may
+                line.</p></div><div class="refsect1"><a name="idm214172421232"></a><h2 id="Options">Options<a class="headerlink" title="Permalink to this headline" href="#Options">¶</a></h2><p>The following machine metadata parameters may
                 be set using
                 <code class="filename">/etc/machine-info</code>:</p><div class="variablelist"><dl class="variablelist"><dt id="PRETTY_HOSTNAME="><span class="term"><code class="varname">PRETTY_HOSTNAME=</code></span><a class="headerlink" title="Permalink to this term" href="#PRETTY_HOSTNAME=">¶</a></dt><dd><p>A pretty
                                 human-readable UTF-8 machine identifier
@@ -84,9 +84,9 @@
                                 override misdetected configuration or
                                 to manually configure the chassis type
                                 where automatic detection is not
-                                available.</p></dd></dl></div></div><div class="refsect1"><a name="idm214170784528"></a><h2 id="Example">Example<a class="headerlink" title="Permalink to this headline" href="#Example">¶</a></h2><pre class="programlisting">PRETTY_HOSTNAME="Lennart's Tablet"
+                                available.</p></dd></dl></div></div><div class="refsect1"><a name="idm214172682608"></a><h2 id="Example">Example<a class="headerlink" title="Permalink to this headline" href="#Example">¶</a></h2><pre class="programlisting">PRETTY_HOSTNAME="Lennart's Tablet"
 ICON_NAME=computer-tablet
-CHASSIS=tablet</pre></div><div class="refsect1"><a name="idm214170783072"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+CHASSIS=tablet</pre></div><div class="refsect1"><a name="idm214171513408"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
                           <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
                           <a href="os-release.html"><span class="citerefentry"><span class="refentrytitle">os-release</span>(5)</span></a>,
                           <a href="hostname.html"><span class="citerefentry"><span class="refentrytitle">hostname</span>(5)</span></a>,
index fab8abd8998bbeb72545032c3107f4d6b0e98a48..d532a6e016b25ff718140e275293b32db9fe4d80 100644 (file)
@@ -1,5 +1,5 @@
 '\" t
-.TH "MACHINECTL" "1" "" "systemd 214" "machinectl"
+.TH "MACHINECTL" "1" "" "systemd 215" "machinectl"
 .\" -----------------------------------------------------------------
 .\" * Define some portability stuff
 .\" -----------------------------------------------------------------
@@ -79,8 +79,10 @@ Do not print the legend, i\&.e\&. the column headers and the footer\&.
 .PP
 \fB\-H\fR, \fB\-\-host=\fR
 .RS 4
-Execute the operation remotely\&. Specify a hostname, or username and hostname separated by
-"@", to connect to\&. This will use SSH to talk to the remote machine manager instance\&.
+Execute the operation remotely\&. Specify a hostname, or a username and hostname separated by
+"@", to connect to\&. The hostname may optionally be suffixed by a container name, separated by
+":", which connects directly to a specific container on the specified host\&. This will use SSH to talk to the remote machine manager instance\&. Container names may be enumerated with
+\fBmachinectl \-H \fR\fB\fIHOST\fR\fR\&.
 .RE
 .PP
 \fB\-M\fR, \fB\-\-machine=\fR
index 12a61de482b6b0eb527d34153ff757f9464236c7..876486cc426977a496a65459a1e44bce36850f62 100644 (file)
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="machinectl"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>machinectl — Control the systemd machine manager</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="cmdsynopsis"><p><code class="command">machinectl</code>  [OPTIONS...] {COMMAND} [NAME...]</p></div></div><div class="refsect1"><a name="idm214188302768"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><span class="command"><strong>machinectl</strong></span> may be used to
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="machinectl"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>machinectl — Control the systemd machine manager</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="cmdsynopsis"><p><code class="command">machinectl</code>  [OPTIONS...] {COMMAND} [NAME...]</p></div></div><div class="refsect1"><a name="idm214179067312"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><span class="command"><strong>machinectl</strong></span> may be used to
                 introspect and control the state of the
                 <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>
-                virtual machine and container registration manager <a href="systemd-machined.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-machined.service</span>(8)</span></a>.</p></div><div class="refsect1"><a name="idm214188299296"></a><h2 id="Options">Options<a class="headerlink" title="Permalink to this headline" href="#Options">¶</a></h2><p>The following options are understood:</p><div class="variablelist"><dl class="variablelist"><dt id="-p"><span class="term"><code class="option">-p</code>, </span><span class="term"><code class="option">--property=</code></span><a class="headerlink" title="Permalink to this term" href="#-p">¶</a></dt><dd><p>When showing
+                virtual machine and container registration manager <a href="systemd-machined.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-machined.service</span>(8)</span></a>.</p></div><div class="refsect1"><a name="idm214179063888"></a><h2 id="Options">Options<a class="headerlink" title="Permalink to this headline" href="#Options">¶</a></h2><p>The following options are understood:</p><div class="variablelist"><dl class="variablelist"><dt id="-p"><span class="term"><code class="option">-p</code>, </span><span class="term"><code class="option">--property=</code></span><a class="headerlink" title="Permalink to this term" href="#-p">¶</a></dt><dd><p>When showing
                                 machine properties, limit the
                                 output to certain properties as
                                 specified by the argument. If not
                                 omitted, defaults to
                                 <code class="constant">SIGTERM</code>.</p></dd><dt id="--no-legend"><span class="term"><code class="option">--no-legend</code></span><a class="headerlink" title="Permalink to this term" href="#--no-legend">¶</a></dt><dd><p>Do not print the legend,
                                         i.e. the column headers and the
-                                        footer.</p></dd><dt id="-H"><span class="term"><code class="option">-H</code>, </span><span class="term"><code class="option">--host=</code></span><a class="headerlink" title="Permalink to this term" href="#-H">¶</a></dt><dd><p><a name="host-text"></a>Execute the operation remotely. Specify a hostname, or
+                                        footer.</p></dd><dt id="-H"><span class="term"><code class="option">-H</code>, </span><span class="term"><code class="option">--host=</code></span><a class="headerlink" title="Permalink to this term" href="#-H">¶</a></dt><dd><p><a name="host-text"></a>Execute the operation remotely. Specify a hostname, or a
       username and hostname separated by "<code class="literal">@</code>", to
-      connect to. This will use SSH to talk to the remote machine
-      manager instance.</p></dd><dt id="-M"><span class="term"><code class="option">-M</code>, </span><span class="term"><code class="option">--machine=</code></span><a class="headerlink" title="Permalink to this term" href="#-M">¶</a></dt><dd><p><a name="machine-text"></a>Execute operation on a local container. Specify a
+      connect to. The hostname may optionally be suffixed by a
+      container name, separated by "<code class="literal">:</code>", which
+      connects directly to a specific container on the specified
+      host. This will use SSH to talk to the remote machine manager
+      instance. Container names may be enumerated with
+      <span class="command"><strong>machinectl -H
+      <em class="replaceable"><code>HOST</code></em></strong></span>.</p></dd><dt id="-M"><span class="term"><code class="option">-M</code>, </span><span class="term"><code class="option">--machine=</code></span><a class="headerlink" title="Permalink to this term" href="#-M">¶</a></dt><dd><p><a name="machine-text"></a>Execute operation on a local container. Specify a
       container name to connect to.</p></dd><dt id="-h"><span class="term"><code class="option">-h</code>, </span><span class="term"><code class="option">--help</code></span><a class="headerlink" title="Permalink to this term" href="#-h">¶</a></dt><dd><p><a name="help-text"></a>Print a short help text and exit.
     </p></dd><dt id="--version"><span class="term"><code class="option">--version</code></span><a class="headerlink" title="Permalink to this term" href="#--version">¶</a></dt><dd><p><a name="version-text"></a>Print a short version string and exit.</p></dd><dt id="--no-pager"><span class="term"><code class="option">--no-pager</code></span><a class="headerlink" title="Permalink to this term" href="#--no-pager">¶</a></dt><dd><p>Do not pipe output into a pager.</p></dd></dl></div><p>The following commands are understood:</p><div class="variablelist"><dl class="variablelist"><dt id="list"><span class="term"><span class="command"><strong>list</strong></span></span><a class="headerlink" title="Permalink to this term" href="#list">¶</a></dt><dd><p>List currently running
                                 virtual machines and containers.
                                 processes of the virtual machine or
                                 container and deallocates all
                                 resources attached to that
-                                instance.</p></dd></dl></div></div><div class="refsect1"><a name="idm214187229008"></a><h2 id="Exit status">Exit status<a class="headerlink" title="Permalink to this headline" href="#Exit%20status">¶</a></h2><p>On success, 0 is returned, a non-zero failure
-                code otherwise.</p></div><div class="refsect1"><a name="idm214173152624"></a><h2 id="Environment">Environment<a class="headerlink" title="Permalink to this headline" href="#Environment">¶</a></h2><div class="variablelist"><dl class="variablelist"><dt id="$SYSTEMD_PAGER"><span class="term"><code class="varname">$SYSTEMD_PAGER</code></span><a class="headerlink" title="Permalink to this term" href="#%24SYSTEMD_PAGER">¶</a></dt><dd><p>Pager to use when
+                                instance.</p></dd></dl></div></div><div class="refsect1"><a name="idm214177992512"></a><h2 id="Exit status">Exit status<a class="headerlink" title="Permalink to this headline" href="#Exit%20status">¶</a></h2><p>On success, 0 is returned, a non-zero failure
+                code otherwise.</p></div><div class="refsect1"><a name="idm214164915280"></a><h2 id="Environment">Environment<a class="headerlink" title="Permalink to this headline" href="#Environment">¶</a></h2><div class="variablelist"><dl class="variablelist"><dt id="$SYSTEMD_PAGER"><span class="term"><code class="varname">$SYSTEMD_PAGER</code></span><a class="headerlink" title="Permalink to this term" href="#%24SYSTEMD_PAGER">¶</a></dt><dd><p>Pager to use when
                         <code class="option">--no-pager</code> is not given;
                         overrides <code class="varname">$PAGER</code>.  Setting
                         this to an empty string or the value
                         <code class="option">--no-pager</code>.</p></dd><dt id="$SYSTEMD_LESS"><span class="term"><code class="varname">$SYSTEMD_LESS</code></span><a class="headerlink" title="Permalink to this term" href="#%24SYSTEMD_LESS">¶</a></dt><dd><p>Override the default
                         options passed to
                         <span class="command"><strong>less</strong></span>
-                        ("<code class="literal">FRSXMK</code>").</p></dd></dl></div></div><div class="refsect1"><a name="idm214187227360"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+                        ("<code class="literal">FRSXMK</code>").</p></dd></dl></div></div><div class="refsect1"><a name="idm214177990864"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
                         <a href="systemd-machined.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-machined.service</span>(8)</span></a>,
                         <a href="systemd-nspawn.html"><span class="citerefentry"><span class="refentrytitle">systemd-nspawn</span>(1)</span></a>,
                         <a href="systemd.special.html"><span class="citerefentry"><span class="refentrytitle">systemd.special</span>(7)</span></a>
index 0e2669fd2b7344a09b603daa014d8f31060d6883..08be1f350dc01ce98a7809e3f0c1a56b8173c097 100644 (file)
@@ -1,5 +1,5 @@
 '\" t
-.TH "MODULES\-LOAD\&.D" "5" "" "systemd 214" "modules-load.d"
+.TH "MODULES\-LOAD\&.D" "5" "" "systemd 215" "modules-load.d"
 .\" -----------------------------------------------------------------
 .\" * Define some portability stuff
 .\" -----------------------------------------------------------------
index bfe0e97c68981312e2c6d481a8db85d7a1a70bb7..307cd6ff614f768082653c2499a21f0af1b382d1 100644 (file)
@@ -19,7 +19,7 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="modules-load.d"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>modules-load.d — Configure kernel modules to load at boot</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><p><code class="filename">/etc/modules-load.d/*.conf</code></p><p><code class="filename">/run/modules-load.d/*.conf</code></p><p><code class="filename">/usr/lib/modules-load.d/*.conf</code></p></div><div class="refsect1"><a name="idm214167144544"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><a href="systemd-modules-load.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-modules-load.service</span>(8)</span></a>
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="modules-load.d"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>modules-load.d — Configure kernel modules to load at boot</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><p><code class="filename">/etc/modules-load.d/*.conf</code></p><p><code class="filename">/run/modules-load.d/*.conf</code></p><p><code class="filename">/usr/lib/modules-load.d/*.conf</code></p></div><div class="refsect1"><a name="idm214196413376"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><a href="systemd-modules-load.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-modules-load.service</span>(8)</span></a>
                 reads files from the above directories which contain
                 kernel modules to load during boot in a static list.
                 Each configuration file is named in the style of
@@ -29,7 +29,7 @@
                 or similar triggers encoded in the kernel modules
                 themselves instead of static configuration like
                 this. In fact, most modern kernel modules are prepared
-                for automatic loading already.</p></div><div class="refsect1"><a name="idm214169154336"></a><h2 id="Configuration Format">Configuration Format<a class="headerlink" title="Permalink to this headline" href="#Configuration%20Format">¶</a></h2><p>The configuration files should simply contain a
+                for automatic loading already.</p></div><div class="refsect1"><a name="idm214196437360"></a><h2 id="Configuration Format">Configuration Format<a class="headerlink" title="Permalink to this headline" href="#Configuration%20Format">¶</a></h2><p>The configuration files should simply contain a
                 list of kernel module names to load, separated by
                 newlines. Empty lines and lines whose first
                 non-whitespace character is # or ; are ignored.</p><p>Each configuration file shall be named in the
@@ -49,8 +49,8 @@
                 recommended way is to place a symlink to
                 <code class="filename">/dev/null</code> in
                 <code class="filename">/etc/modules-load.d/</code> bearing the
-                same filename.</p></div><div class="refsect1"><a name="idm214168350784"></a><h2 id="Example">Example<a class="headerlink" title="Permalink to this headline" href="#Example">¶</a></h2><div class="example"><a name="idm214167504096"></a><p class="title"><b>Example 1. /etc/modules-load.d/virtio-net.conf example:</b></p><div class="example-contents"><pre class="programlisting"># Load virtio-net.ko at boot
-virtio-net</pre></div></div><br class="example-break"></div><div class="refsect1"><a name="idm214166218944"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+                same filename.</p></div><div class="refsect1"><a name="idm214192640896"></a><h2 id="Example">Example<a class="headerlink" title="Permalink to this headline" href="#Example">¶</a></h2><div class="example"><a name="idm214192640224"></a><p class="title"><b>Example 1. /etc/modules-load.d/virtio-net.conf example:</b></p><div class="example-contents"><pre class="programlisting"># Load virtio-net.ko at boot
+virtio-net</pre></div></div><br class="example-break"></div><div class="refsect1"><a name="idm214192638576"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
                         <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
                         <a href="systemd-modules-load.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-modules-load.service</span>(8)</span></a>,
                         <a href="systemd-delta.html"><span class="citerefentry"><span class="refentrytitle">systemd-delta</span>(1)</span></a>,
index 4148a5eb0933149a95320bd5b5320208a0dc6bb8..c7624bdef2c67b4c9d73fd3f5ba52028bfd980f8 100644 (file)
@@ -1,5 +1,5 @@
 '\" t
-.TH "NSS\-MYHOSTNAME" "8" "" "systemd 214" "nss-myhostname"
+.TH "NSS\-MYHOSTNAME" "8" "" "systemd 215" "nss-myhostname"
 .\" -----------------------------------------------------------------
 .\" * Define some portability stuff
 .\" -----------------------------------------------------------------
index 3631fc1938b96ab5773596aea68acca74abc8d36..1279ff698d04bdeaea886b8d599e3fc4069f6893 100644 (file)
@@ -19,8 +19,8 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="nss-myhostname"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>nss-myhostname — Provide hostname resolution for the locally
-                configured system hostname.</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><p><code class="filename">nss-myhostname.la</code></p></div><div class="refsect1"><a name="idm214169666368"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><span class="command"><strong>nss-myhostname</strong></span> is a plugin for the GNU Name Service Switch
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="nss-myhostname"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>nss-myhostname — Provide hostname resolution for the locally
+                configured system hostname.</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><p><code class="filename">nss-myhostname.la</code></p></div><div class="refsect1"><a name="idm214168515296"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><span class="command"><strong>nss-myhostname</strong></span> is a plugin for the GNU Name Service Switch
                 (NSS) functionality of the GNU C Library (<span class="command"><strong>glibc</strong></span>)
                 providing hostname resolution for the locally configured system
                 hostname as returned by
@@ -40,7 +40,7 @@
                 <code class="filename">/etc/nsswitch.conf</code></p><p>It is recommended to put <code class="option">myhostname</code>
                 last in the <code class="filename">nsswitch.conf</code> line to make
                 sure that this mapping is only used as fallback, and any DNS
-                or <code class="filename">/etc/hosts</code> based mapping takes precedence.</p></div><div class="refsect1"><a name="idm214172285328"></a><h2 id="Example">Example<a class="headerlink" title="Permalink to this headline" href="#Example">¶</a></h2><pre class="programlisting"># /etc/nsswitch.conf
+                or <code class="filename">/etc/hosts</code> based mapping takes precedence.</p></div><div class="refsect1"><a name="idm214168875728"></a><h2 id="Example">Example<a class="headerlink" title="Permalink to this headline" href="#Example">¶</a></h2><pre class="programlisting"># /etc/nsswitch.conf
 
 passwd:         compat
 group:          compat
@@ -60,7 +60,7 @@ netgroup:       nis</pre><p>To test, use <span class="command"><strong>glibc</st
 ::1             RAW
 127.0.0.2       STREAM
 127.0.0.2       DGRAM
-127.0.0.2       RAW</pre><p>In this case the local hostname is <code class="varname">omega</code>.</p></div><div class="refsect1"><a name="idm214169187392"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+127.0.0.2       RAW</pre><p>In this case the local hostname is <code class="varname">omega</code>.</p></div><div class="refsect1"><a name="idm214168869968"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
                         <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
                         <a href="systemd-logind.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-logind.service</span>(8)</span></a>,
                         <a href="logind.conf.html"><span class="citerefentry"><span class="refentrytitle">logind.conf</span>(5)</span></a>,
index 11336d060e6d30957da3b199fc624438210f15f8..4e291acc12e8d2c3029b88f86c5fffa16de86011 100644 (file)
@@ -1,5 +1,5 @@
 '\" t
-.TH "OS\-RELEASE" "5" "" "systemd 214" "os-release"
+.TH "OS\-RELEASE" "5" "" "systemd 215" "os-release"
 .\" -----------------------------------------------------------------
 .\" * Define some portability stuff
 .\" -----------------------------------------------------------------
@@ -24,33 +24,52 @@ os-release \- Operating system identification
 .SH "SYNOPSIS"
 .PP
 /etc/os\-release
+.PP
+/usr/lib/os\-release
 .SH "DESCRIPTION"
 .PP
 The
 /etc/os\-release
-file contains operating system identification data\&.
+and
+/usr/lib/os\-release
+files contain operating system identification data\&.
 .PP
 The basic file format of
 os\-release
 is a newline\-separated list of environment\-like shell\-compatible variable assignments\&. It is possible to source the configuration from shell scripts, however, beyond mere variable assignments, no shell features are supported (this means variable expansion is explicitly not supported), allowing applications to read the file without implementing a shell compatible execution engine\&. Variable assignment values should be enclosed in double or single quotes if they include spaces, semicolons or other special characters outside of A\-Z, a\-z, 0\-9\&. All strings should be in UTF\-8 format, and non\-printable characters should not be used\&. If double or single quotes or backslashes are to be used within variable assignments, they should be escaped with backslashes, following shell style\&. It is not supported to concatenate multiple individually quoted strings\&. Lines beginning with "#" shall be ignored as comments\&.
 .PP
+The file
 /etc/os\-release
-contains data that is defined by the operating system vendor and should not be changed by the administrator\&.
+takes precedence over
+/usr/lib/os\-release\&. Applications should check for the former, and exclusively use its data if it exists, and only fall back to
+/usr/lib/os\-release
+if it is missing\&. Applications should not read data from both files at the same time\&.
+/usr/lib/os\-release
+is the recommended place to store OS release information as part of vendor trees\&. Frequently,
+/etc/os\-release
+is simply a symlink to
+/usr/lib/os\-release, to provide compatibility with applications only looking at
+/etc\&.
+.PP
+os\-release
+contains data that is defined by the operating system vendor and should generally not be changed by the administrator\&.
 .PP
 As this file only encodes names and identifiers it should not be localized\&.
 .PP
-The file
+The
 /etc/os\-release
-might be a symlink to another file, but it is important that the file is available from earliest boot on, and hence must be located on the root file system\&.
+and
+/usr/lib/os\-release
+files might be symlinks to other files, but it is important that the file is available from earliest boot on, and hence must be located on the root file system\&.
 .PP
 For a longer rationale for
-/etc/os\-release
+os\-release
 please refer to the
 \m[blue]\fBAnnouncement of /etc/os\-release\fR\m[]\&\s-2\u[1]\d\s+2\&.
 .SH "OPTIONS"
 .PP
 The following OS identifications parameters may be set using
-/etc/os\-release:
+os\-release:
 .PP
 \fINAME=\fR
 .RS 4
index 9f75684e6e6821b03f9c986da33175b0c25ac74a..66e434706ce9b06874192bec53459e2513ed240d 100644 (file)
@@ -19,8 +19,9 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="os-release"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>os-release — Operating system identification</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><p><code class="filename">/etc/os-release</code></p></div><div class="refsect1"><a name="idm214197115488"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p>The <code class="filename">/etc/os-release</code> file
-                contains operating system identification data.</p><p>The basic file format of
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="os-release"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>os-release — Operating system identification</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><p><code class="filename">/etc/os-release</code></p><p><code class="filename">/usr/lib/os-release</code></p></div><div class="refsect1"><a name="idm214179437424"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p>The <code class="filename">/etc/os-release</code> and
+                <code class="filename">/usr/lib/os-release</code> files contain
+                operating system identification data.</p><p>The basic file format of
                 <code class="filename">os-release</code> is a newline-separated
                 list of environment-like shell-compatible variable
                 assignments. It is possible to source the
                 backslashes, following shell style. It is not
                 supported to concatenate multiple individually quoted
                 strings. Lines beginning with "#" shall be ignored as
-                comments.</p><p><code class="filename">/etc/os-release</code> contains
-                data that is defined by the operating system vendor
-                and should not be changed by the administrator.</p><p>As this file only encodes names and identifiers
-                it should not be localized.</p><p>The file <code class="filename">/etc/os-release</code> might
-                be a symlink to another file, but it is important that
+                comments.</p><p>The file <code class="filename">/etc/os-release</code>
+                takes precedence over
+                <code class="filename">/usr/lib/os-release</code>. Applications
+                should check for the former, and exclusively use its
+                data if it exists, and only fall back to
+                <code class="filename">/usr/lib/os-release</code> if it is
+                missing. Applications should not read data from both
+                files at the same
+                time. <code class="filename">/usr/lib/os-release</code> is the
+                recommended place to store OS release information as
+                part of vendor trees. Frequently,
+                <code class="filename">/etc/os-release</code> is simply a
+                symlink to <code class="filename">/usr/lib/os-release</code>,
+                to provide compatibility with applications only
+                looking at <code class="filename">/etc</code>.</p><p><code class="filename">os-release</code> contains data
+                that is defined by the operating system vendor and
+                should generally not be changed by the
+                administrator.</p><p>As this file only encodes names and identifiers
+                it should not be localized.</p><p>The <code class="filename">/etc/os-release</code> and
+                <code class="filename">/usr/lib/os-release</code> files might
+                be symlinks to other files, but it is important that
                 the file is available from earliest boot on, and hence
                 must be located on the root file system.</p><p>For a longer rationale for
-                <code class="filename">/etc/os-release</code> please refer to
-                the <a class="ulink" href="http://0pointer.de/blog/projects/os-release" target="_top">Announcement of <code class="filename">/etc/os-release</code></a>.</p></div><div class="refsect1"><a name="idm214193343184"></a><h2 id="Options">Options<a class="headerlink" title="Permalink to this headline" href="#Options">¶</a></h2><p>The following OS identifications parameters may be set using
-                <code class="filename">/etc/os-release</code>:</p><div class="variablelist"><dl class="variablelist"><dt id="NAME="><span class="term"><code class="varname">NAME=</code></span><a class="headerlink" title="Permalink to this term" href="#NAME=">¶</a></dt><dd><p>A string identifying
+                <code class="filename">os-release</code> please refer to
+                the <a class="ulink" href="http://0pointer.de/blog/projects/os-release" target="_top">Announcement of <code class="filename">/etc/os-release</code></a>.</p></div><div class="refsect1"><a name="idm214177858128"></a><h2 id="Options">Options<a class="headerlink" title="Permalink to this headline" href="#Options">¶</a></h2><p>The following OS identifications parameters may be set using
+                <code class="filename">os-release</code>:</p><div class="variablelist"><dl class="variablelist"><dt id="NAME="><span class="term"><code class="varname">NAME=</code></span><a class="headerlink" title="Permalink to this term" href="#NAME=">¶</a></dt><dd><p>A string identifying
                                 the operating system, without a
                                 version component, and suitable for
                                 presentation to the user. If not set,
                 recommended to prefix new fields with an OS specific
                 name in order to avoid name clashes. Applications
                 reading this file must ignore unknown fields. Example:
-                "<code class="literal">DEBIAN_BTS="debbugs://bugs.debian.org/"</code>"</p></div><div class="refsect1"><a name="idm214197237872"></a><h2 id="Example">Example<a class="headerlink" title="Permalink to this headline" href="#Example">¶</a></h2><pre class="programlisting">NAME=Fedora
+                "<code class="literal">DEBIAN_BTS="debbugs://bugs.debian.org/"</code>"</p></div><div class="refsect1"><a name="idm214178429520"></a><h2 id="Example">Example<a class="headerlink" title="Permalink to this headline" href="#Example">¶</a></h2><pre class="programlisting">NAME=Fedora
 VERSION="17 (Beefy Miracle)"
 ID=fedora
 VERSION_ID=17
@@ -223,7 +240,7 @@ PRETTY_NAME="Fedora 17 (Beefy Miracle)"
 ANSI_COLOR="0;34"
 CPE_NAME="cpe:/o:fedoraproject:fedora:17"
 HOME_URL="https://fedoraproject.org/"
-BUG_REPORT_URL="https://bugzilla.redhat.com/"</pre></div><div class="refsect1"><a name="idm214192556976"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+BUG_REPORT_URL="https://bugzilla.redhat.com/"</pre></div><div class="refsect1"><a name="idm214180118832"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
                           <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
                           <a href="lsb_release.html"><span class="citerefentry"><span class="refentrytitle">lsb_release</span>(1)</span></a>,
                           <a href="hostname.html"><span class="citerefentry"><span class="refentrytitle">hostname</span>(5)</span></a>,
index c1dd62f7156d2c1c978eab7229d522d0681cf565..4e02f800b63d19cc9c754eb5c35df7a258796596 100644 (file)
 
         <refsynopsisdiv>
                 <para><filename>/etc/os-release</filename></para>
+                <para><filename>/usr/lib/os-release</filename></para>
         </refsynopsisdiv>
 
         <refsect1>
                 <title>Description</title>
 
-                <para>The <filename>/etc/os-release</filename> file
-                contains operating system identification data.</para>
+                <para>The <filename>/etc/os-release</filename> and
+                <filename>/usr/lib/os-release</filename> files contain
+                operating system identification data.</para>
 
                 <para>The basic file format of
                 <filename>os-release</filename> is a newline-separated
                 strings. Lines beginning with "#" shall be ignored as
                 comments.</para>
 
-                <para><filename>/etc/os-release</filename> contains
-                data that is defined by the operating system vendor
-                and should not be changed by the administrator.</para>
+                <para>The file <filename>/etc/os-release</filename>
+                takes precedence over
+                <filename>/usr/lib/os-release</filename>. Applications
+                should check for the former, and exclusively use its
+                data if it exists, and only fall back to
+                <filename>/usr/lib/os-release</filename> if it is
+                missing. Applications should not read data from both
+                files at the same
+                time. <filename>/usr/lib/os-release</filename> is the
+                recommended place to store OS release information as
+                part of vendor trees. Frequently,
+                <filename>/etc/os-release</filename> is simply a
+                symlink to <filename>/usr/lib/os-release</filename>,
+                to provide compatibility with applications only
+                looking at <filename>/etc</filename>.</para>
+
+                <para><filename>os-release</filename> contains data
+                that is defined by the operating system vendor and
+                should generally not be changed by the
+                administrator.</para>
 
                 <para>As this file only encodes names and identifiers
                 it should not be localized.</para>
 
-                <para>The file <filename>/etc/os-release</filename> might
-                be a symlink to another file, but it is important that
+                <para>The <filename>/etc/os-release</filename> and
+                <filename>/usr/lib/os-release</filename> files might
+                be symlinks to other files, but it is important that
                 the file is available from earliest boot on, and hence
                 must be located on the root file system.</para>
 
                 <para>For a longer rationale for
-                <filename>/etc/os-release</filename> please refer to
+                <filename>os-release</filename> please refer to
                 the <ulink
                 url="http://0pointer.de/blog/projects/os-release">Announcement of <filename>/etc/os-release</filename></ulink>.</para>
         </refsect1>
                 <title>Options</title>
 
                 <para>The following OS identifications parameters may be set using
-                <filename>/etc/os-release</filename>:</para>
+                <filename>os-release</filename>:</para>
 
                 <variablelist>
 
index fa88e212fc03d3665c7a4a64fe8e532c1da488cf..dfc8a115a13610e3337b23dc2362c03f1ac24867 100644 (file)
@@ -1,5 +1,5 @@
 '\" t
-.TH "PAM_SYSTEMD" "8" "" "systemd 214" "pam_systemd"
+.TH "PAM_SYSTEMD" "8" "" "systemd 215" "pam_systemd"
 .\" -----------------------------------------------------------------
 .\" * Define some portability stuff
 .\" -----------------------------------------------------------------
index c8de9307cdd38acaf8ab6c814be38251950b3024..1639a14c82aa6f1e992f4fdcac0b07733e498157 100644 (file)
@@ -19,7 +19,7 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="pam_systemd"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>pam_systemd — Register user sessions in the systemd login manager</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><p><code class="filename">pam_systemd.so</code></p></div><div class="refsect1"><a name="idm214179808064"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><span class="command"><strong>pam_systemd</strong></span> registers user
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="pam_systemd"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>pam_systemd — Register user sessions in the systemd login manager</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><p><code class="filename">pam_systemd.so</code></p></div><div class="refsect1"><a name="idm214186414816"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><span class="command"><strong>pam_systemd</strong></span> registers user
                 sessions with the systemd login manager
                 <a href="systemd-logind.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-logind.service</span>(8)</span></a>,
                 and hence the systemd control group hierarchy.</p><p>On login, this module ensures the following:</p><div class="orderedlist"><ol class="orderedlist" type="1"><li class="listitem"><p>If it does not exist yet, the
@@ -55,7 +55,7 @@
                         and all its contents are removed,
                         too.</p></li></ol></div><p>If the system was not booted up with systemd as
                 init system, this module does nothing and immediately
-                returns PAM_SUCCESS.</p></div><div class="refsect1"><a name="idm214181847936"></a><h2 id="Options">Options<a class="headerlink" title="Permalink to this headline" href="#Options">¶</a></h2><p>The following options are understood:</p><div class="variablelist"><dl class="variablelist"><dt id="class="><span class="term"><code class="option">class=</code></span><a class="headerlink" title="Permalink to this term" href="#class=">¶</a></dt><dd><p>Takes a string
+                returns PAM_SUCCESS.</p></div><div class="refsect1"><a name="idm214186772272"></a><h2 id="Options">Options<a class="headerlink" title="Permalink to this headline" href="#Options">¶</a></h2><p>The following options are understood:</p><div class="variablelist"><dl class="variablelist"><dt id="class="><span class="term"><code class="option">class=</code></span><a class="headerlink" title="Permalink to this term" href="#class=">¶</a></dt><dd><p>Takes a string
                                 argument which sets the session class.
                                 The XDG_SESSION_CLASS environmental variable
                                 takes precedence. One of
@@ -78,7 +78,7 @@
                                 boolean argument. If yes or without
                                 the argument, the module will log
                                 debugging information as it
-                                operates.</p></dd></dl></div></div><div class="refsect1"><a name="idm214180105728"></a><h2 id="Module Types Provided">Module Types Provided<a class="headerlink" title="Permalink to this headline" href="#Module%20Types%20Provided">¶</a></h2><p>Only <code class="option">session</code> is provided.</p></div><div class="refsect1"><a name="idm214180104064"></a><h2 id="Environment">Environment<a class="headerlink" title="Permalink to this headline" href="#Environment">¶</a></h2><p>The following environment variables are set for the processes of the user's session:</p><div class="variablelist"><dl class="variablelist"><dt id="$XDG_SESSION_ID"><span class="term"><code class="varname">$XDG_SESSION_ID</code></span><a class="headerlink" title="Permalink to this term" href="#%24XDG_SESSION_ID">¶</a></dt><dd><p>A session identifier,
+                                operates.</p></dd></dl></div></div><div class="refsect1"><a name="idm214190661408"></a><h2 id="Module Types Provided">Module Types Provided<a class="headerlink" title="Permalink to this headline" href="#Module%20Types%20Provided">¶</a></h2><p>Only <code class="option">session</code> is provided.</p></div><div class="refsect1"><a name="idm214190659744"></a><h2 id="Environment">Environment<a class="headerlink" title="Permalink to this headline" href="#Environment">¶</a></h2><p>The following environment variables are set for the processes of the user's session:</p><div class="variablelist"><dl class="variablelist"><dt id="$XDG_SESSION_ID"><span class="term"><code class="varname">$XDG_SESSION_ID</code></span><a class="headerlink" title="Permalink to this term" href="#%24XDG_SESSION_ID">¶</a></dt><dd><p>A session identifier,
                                 suitable to be used in filenames. The
                                 string itself should be considered
                                 opaque, although often it is just the
                                 session shall be registered for, if
                                 any. (Only applies to seats with a VT
                                 available, such as
-                                "<code class="literal">seat0</code>")</p></dd></dl></div></div><div class="refsect1"><a name="idm214183970688"></a><h2 id="Example">Example<a class="headerlink" title="Permalink to this headline" href="#Example">¶</a></h2><pre class="programlisting">#%PAM-1.0
+                                "<code class="literal">seat0</code>")</p></dd></dl></div></div><div class="refsect1"><a name="idm214190629472"></a><h2 id="Example">Example<a class="headerlink" title="Permalink to this headline" href="#Example">¶</a></h2><pre class="programlisting">#%PAM-1.0
 auth       required     pam_unix.so
 auth       required     pam_nologin.so
 account    required     pam_unix.so
 password   required     pam_unix.so
 session    required     pam_unix.so
 session    required     pam_loginuid.so
-session    required     pam_systemd.so</pre></div><div class="refsect1"><a name="idm214183968944"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+session    required     pam_systemd.so</pre></div><div class="refsect1"><a name="idm214190627728"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
                         <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
                         <a href="systemd-logind.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-logind.service</span>(8)</span></a>,
                         <a href="logind.conf.html"><span class="citerefentry"><span class="refentrytitle">logind.conf</span>(5)</span></a>,
index 73dc205e37a7d7839145aafa5a407ad4401ab55f..642c4567ec43dcf3a81c891f55a20411cb69dc12 100644 (file)
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="halt"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>halt, poweroff, reboot — Halt, power-off or reboot the machine</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="cmdsynopsis"><p><code class="command">halt [OPTIONS...]</code> </p></div><div class="cmdsynopsis"><p><code class="command">poweroff [OPTIONS...]</code> </p></div><div class="cmdsynopsis"><p><code class="command">reboot [OPTIONS...]</code> </p></div></div><div class="refsect1"><a name="idm214181158752"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><span class="command"><strong>halt</strong></span>,
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="halt"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>halt, poweroff, reboot — Halt, power-off or reboot the machine</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="cmdsynopsis"><p><code class="command">halt [OPTIONS...]</code> </p></div><div class="cmdsynopsis"><p><code class="command">poweroff [OPTIONS...]</code> </p></div><div class="cmdsynopsis"><p><code class="command">reboot [OPTIONS...]</code> </p></div></div><div class="refsect1"><a name="idm214185642768"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><span class="command"><strong>halt</strong></span>,
                 <span class="command"><strong>poweroff</strong></span>, <span class="command"><strong>reboot</strong></span>
                 may be used to halt, power-off or reboot the
-                machine.</p></div><div class="refsect1"><a name="idm214181155552"></a><h2 id="Options">Options<a class="headerlink" title="Permalink to this headline" href="#Options">¶</a></h2><p>The following options are understood:</p><div class="variablelist"><dl class="variablelist"><dt id="--help"><span class="term"><code class="option">--help</code></span><a class="headerlink" title="Permalink to this term" href="#--help">¶</a></dt><dd><p><a name="help-text"></a>Print a short help text and exit.
+                machine.</p></div><div class="refsect1"><a name="idm214186089440"></a><h2 id="Options">Options<a class="headerlink" title="Permalink to this headline" href="#Options">¶</a></h2><p>The following options are understood:</p><div class="variablelist"><dl class="variablelist"><dt id="--help"><span class="term"><code class="option">--help</code></span><a class="headerlink" title="Permalink to this term" href="#--help">¶</a></dt><dd><p><a name="help-text"></a>Print a short help text and exit.
     </p></dd><dt id="--halt"><span class="term"><code class="option">--halt</code></span><a class="headerlink" title="Permalink to this term" href="#--halt">¶</a></dt><dd><p>Halt the machine,
                                 regardless of which one of the three
                                 commands is invoked.</p></dd><dt id="-p"><span class="term"><code class="option">-p</code>, </span><span class="term"><code class="option">--poweroff</code></span><a class="headerlink" title="Permalink to this term" href="#-p">¶</a></dt><dd><p>Power-off the machine,
@@ -36,9 +36,9 @@
                                 power-off, reboot.</p></dd><dt id="-d"><span class="term"><code class="option">-d</code>, </span><span class="term"><code class="option">--no-wtmp</code></span><a class="headerlink" title="Permalink to this term" href="#-d">¶</a></dt><dd><p>Do not write wtmp
                                 shutdown entry.</p></dd><dt id="--no-wall"><span class="term"><code class="option">--no-wall</code></span><a class="headerlink" title="Permalink to this term" href="#--no-wall">¶</a></dt><dd><p>Do not send wall
                                 message before
-                                halt, power-off, reboot.</p></dd></dl></div></div><div class="refsect1"><a name="idm214185040240"></a><h2 id="Exit status">Exit status<a class="headerlink" title="Permalink to this headline" href="#Exit%20status">¶</a></h2><p>On success, 0 is returned, a non-zero failure
-                code otherwise.</p></div><div class="refsect1"><a name="idm214185039056"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p>These are legacy commands available for
-                compatibility only.</p></div><div class="refsect1"><a name="idm214185037776"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+                                halt, power-off, reboot.</p></dd></dl></div></div><div class="refsect1"><a name="idm214183375264"></a><h2 id="Exit status">Exit status<a class="headerlink" title="Permalink to this headline" href="#Exit%20status">¶</a></h2><p>On success, 0 is returned, a non-zero failure
+                code otherwise.</p></div><div class="refsect1"><a name="idm214184284480"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p>These are legacy commands available for
+                compatibility only.</p></div><div class="refsect1"><a name="idm214184877296"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
                         <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
                         <a href="systemctl.html"><span class="citerefentry"><span class="refentrytitle">systemctl</span>(1)</span></a>,
                         <a href="shutdown.html"><span class="citerefentry"><span class="refentrytitle">shutdown</span>(8)</span></a>,
index 73dc205e37a7d7839145aafa5a407ad4401ab55f..642c4567ec43dcf3a81c891f55a20411cb69dc12 100644 (file)
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="halt"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>halt, poweroff, reboot — Halt, power-off or reboot the machine</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="cmdsynopsis"><p><code class="command">halt [OPTIONS...]</code> </p></div><div class="cmdsynopsis"><p><code class="command">poweroff [OPTIONS...]</code> </p></div><div class="cmdsynopsis"><p><code class="command">reboot [OPTIONS...]</code> </p></div></div><div class="refsect1"><a name="idm214181158752"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><span class="command"><strong>halt</strong></span>,
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="halt"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>halt, poweroff, reboot — Halt, power-off or reboot the machine</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="cmdsynopsis"><p><code class="command">halt [OPTIONS...]</code> </p></div><div class="cmdsynopsis"><p><code class="command">poweroff [OPTIONS...]</code> </p></div><div class="cmdsynopsis"><p><code class="command">reboot [OPTIONS...]</code> </p></div></div><div class="refsect1"><a name="idm214185642768"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><span class="command"><strong>halt</strong></span>,
                 <span class="command"><strong>poweroff</strong></span>, <span class="command"><strong>reboot</strong></span>
                 may be used to halt, power-off or reboot the
-                machine.</p></div><div class="refsect1"><a name="idm214181155552"></a><h2 id="Options">Options<a class="headerlink" title="Permalink to this headline" href="#Options">¶</a></h2><p>The following options are understood:</p><div class="variablelist"><dl class="variablelist"><dt id="--help"><span class="term"><code class="option">--help</code></span><a class="headerlink" title="Permalink to this term" href="#--help">¶</a></dt><dd><p><a name="help-text"></a>Print a short help text and exit.
+                machine.</p></div><div class="refsect1"><a name="idm214186089440"></a><h2 id="Options">Options<a class="headerlink" title="Permalink to this headline" href="#Options">¶</a></h2><p>The following options are understood:</p><div class="variablelist"><dl class="variablelist"><dt id="--help"><span class="term"><code class="option">--help</code></span><a class="headerlink" title="Permalink to this term" href="#--help">¶</a></dt><dd><p><a name="help-text"></a>Print a short help text and exit.
     </p></dd><dt id="--halt"><span class="term"><code class="option">--halt</code></span><a class="headerlink" title="Permalink to this term" href="#--halt">¶</a></dt><dd><p>Halt the machine,
                                 regardless of which one of the three
                                 commands is invoked.</p></dd><dt id="-p"><span class="term"><code class="option">-p</code>, </span><span class="term"><code class="option">--poweroff</code></span><a class="headerlink" title="Permalink to this term" href="#-p">¶</a></dt><dd><p>Power-off the machine,
@@ -36,9 +36,9 @@
                                 power-off, reboot.</p></dd><dt id="-d"><span class="term"><code class="option">-d</code>, </span><span class="term"><code class="option">--no-wtmp</code></span><a class="headerlink" title="Permalink to this term" href="#-d">¶</a></dt><dd><p>Do not write wtmp
                                 shutdown entry.</p></dd><dt id="--no-wall"><span class="term"><code class="option">--no-wall</code></span><a class="headerlink" title="Permalink to this term" href="#--no-wall">¶</a></dt><dd><p>Do not send wall
                                 message before
-                                halt, power-off, reboot.</p></dd></dl></div></div><div class="refsect1"><a name="idm214185040240"></a><h2 id="Exit status">Exit status<a class="headerlink" title="Permalink to this headline" href="#Exit%20status">¶</a></h2><p>On success, 0 is returned, a non-zero failure
-                code otherwise.</p></div><div class="refsect1"><a name="idm214185039056"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p>These are legacy commands available for
-                compatibility only.</p></div><div class="refsect1"><a name="idm214185037776"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+                                halt, power-off, reboot.</p></dd></dl></div></div><div class="refsect1"><a name="idm214183375264"></a><h2 id="Exit status">Exit status<a class="headerlink" title="Permalink to this headline" href="#Exit%20status">¶</a></h2><p>On success, 0 is returned, a non-zero failure
+                code otherwise.</p></div><div class="refsect1"><a name="idm214184284480"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p>These are legacy commands available for
+                compatibility only.</p></div><div class="refsect1"><a name="idm214184877296"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
                         <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
                         <a href="systemctl.html"><span class="citerefentry"><span class="refentrytitle">systemctl</span>(1)</span></a>,
                         <a href="shutdown.html"><span class="citerefentry"><span class="refentrytitle">shutdown</span>(8)</span></a>,
index 3d7a320f7cf817e0cc1379ae7926c8497e3f9207..9b8813b709cd2d6207bd80a8473276a73a18458b 100644 (file)
@@ -1,5 +1,5 @@
 '\" t
-.TH "RESOLVED\&.CONF" "5" "" "systemd 214" "resolved.conf"
+.TH "RESOLVED\&.CONF" "5" "" "systemd 215" "resolved.conf"
 .\" -----------------------------------------------------------------
 .\" * Define some portability stuff
 .\" -----------------------------------------------------------------
index de4483724e1d2d7c1b3fea46f2febf7aacb3bd37..4145a8942b86b663b5b681fbb90c1cec5ac07339 100644 (file)
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="resolved.conf"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>resolved.conf — Network Name Resolution configuration file</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><p><code class="filename">/etc/systemd/resolved.conf</code></p></div><div class="refsect1"><a name="idm214199390896"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p>When starting, systemd-resolved will read the
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="resolved.conf"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>resolved.conf — Network Name Resolution configuration file</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><p><code class="filename">/etc/systemd/resolved.conf</code></p></div><div class="refsect1"><a name="idm214193517248"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p>When starting, systemd-resolved will read the
                 configuration file <code class="filename">resolved.conf</code>.
                 This configuration file determines the fallback DNS
-                servers.</p></div><div class="refsect1"><a name="idm214199434720"></a><h2 id="Options">Options<a class="headerlink" title="Permalink to this headline" href="#Options">¶</a></h2><div class="variablelist"><dl class="variablelist"><dt id="DNS="><span class="term"><code class="varname">DNS=</code></span><a class="headerlink" title="Permalink to this term" href="#DNS=">¶</a></dt><dd><p>A space separated list of IPv4 and IPv6
+                servers.</p></div><div class="refsect1"><a name="idm214193515264"></a><h2 id="Options">Options<a class="headerlink" title="Permalink to this headline" href="#Options">¶</a></h2><div class="variablelist"><dl class="variablelist"><dt id="DNS="><span class="term"><code class="varname">DNS=</code></span><a class="headerlink" title="Permalink to this term" href="#DNS=">¶</a></dt><dd><p>A space separated list of IPv4 and IPv6
                                 addresses to be used as the fallback DNS servers. Note that
                                 the servers obtained from
                                 <a href="systemd-networkd.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-networkd.service</span>(8)</span></a>
                                 take precedence. If this option is not given, a compiled-in
-                                list of DNS servers is used instead.</p></dd></dl></div></div><div class="refsect1"><a name="idm214200712624"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+                                list of DNS servers is used instead.</p></dd></dl></div></div><div class="refsect1"><a name="idm214193511040"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
                         <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
                         <a href="systemd-resolved.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-resolved.service</span>(8)</span></a>,
                         <a href="systemd-networkd.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-networkd.service</span>(8)</span></a>
index c6b406b46bce19e2011d2d1365cdefeb4d005f7e..e67fc9e9e056a57ed0a5174b012070161b29c3f0 100644 (file)
@@ -1,5 +1,5 @@
 '\" t
-.TH "RUNLEVEL" "8" "" "systemd 214" "runlevel"
+.TH "RUNLEVEL" "8" "" "systemd 215" "runlevel"
 .\" -----------------------------------------------------------------
 .\" * Define some portability stuff
 .\" -----------------------------------------------------------------
index 04f3791039d743e447472a94f8dcebcc0dc360cd..77ba0d47f30105fab5fa810abc24db02da4bede9 100644 (file)
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="runlevel"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>runlevel — Print previous and current SysV runlevel</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="cmdsynopsis"><p><code class="command">runlevel [options...]</code> </p></div></div><div class="refsect1"><a name="idm214188970640"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><span class="command"><strong>runlevel</strong></span> prints the previous
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="runlevel"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>runlevel — Print previous and current SysV runlevel</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="cmdsynopsis"><p><code class="command">runlevel [options...]</code> </p></div></div><div class="refsect1"><a name="idm214176626512"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><span class="command"><strong>runlevel</strong></span> prints the previous
                 and current SysV runlevel if they are known.</p><p>The two runlevel characters are separated by a
                 single space character. If a runlevel cannot be
                 determined, N is printed instead. If neither can be
                 determined, the word "unknown" is printed.</p><p>Unless overridden in the environment, this will
                 check the utmp database for recent runlevel
-                changes.</p></div><div class="refsect1"><a name="idm214189040672"></a><h2 id="Options">Options<a class="headerlink" title="Permalink to this headline" href="#Options">¶</a></h2><p>The following option is understood:</p><div class="variablelist"><dl class="variablelist"><dt id="--help"><span class="term"><code class="option">--help</code></span><a class="headerlink" title="Permalink to this term" href="#--help">¶</a></dt><dd><p><a name="help-text"></a>Print a short help text and exit.
-    </p></dd></dl></div></div><div class="refsect1"><a name="idm214185202112"></a><h2 id="Exit status">Exit status<a class="headerlink" title="Permalink to this headline" href="#Exit%20status">¶</a></h2><p>If one or both runlevels could be determined, 0
-                is returned, a non-zero failure code otherwise.</p></div><div class="refsect1"><a name="idm214185200800"></a><h2 id="Environment">Environment<a class="headerlink" title="Permalink to this headline" href="#Environment">¶</a></h2><div class="variablelist"><dl class="variablelist"><dt id="$RUNLEVEL"><span class="term"><code class="varname">$RUNLEVEL</code></span><a class="headerlink" title="Permalink to this term" href="#%24RUNLEVEL">¶</a></dt><dd><p>If
+                changes.</p></div><div class="refsect1"><a name="idm214176674096"></a><h2 id="Options">Options<a class="headerlink" title="Permalink to this headline" href="#Options">¶</a></h2><p>The following option is understood:</p><div class="variablelist"><dl class="variablelist"><dt id="--help"><span class="term"><code class="option">--help</code></span><a class="headerlink" title="Permalink to this term" href="#--help">¶</a></dt><dd><p><a name="help-text"></a>Print a short help text and exit.
+    </p></dd></dl></div></div><div class="refsect1"><a name="idm214177014880"></a><h2 id="Exit status">Exit status<a class="headerlink" title="Permalink to this headline" href="#Exit%20status">¶</a></h2><p>If one or both runlevels could be determined, 0
+                is returned, a non-zero failure code otherwise.</p></div><div class="refsect1"><a name="idm214175648864"></a><h2 id="Environment">Environment<a class="headerlink" title="Permalink to this headline" href="#Environment">¶</a></h2><div class="variablelist"><dl class="variablelist"><dt id="$RUNLEVEL"><span class="term"><code class="varname">$RUNLEVEL</code></span><a class="headerlink" title="Permalink to this term" href="#%24RUNLEVEL">¶</a></dt><dd><p>If
                                 <code class="varname">$RUNLEVEL</code> is set,
                                 <span class="command"><strong>runlevel</strong></span> will print
                                 this value as current runlevel and
                                 <code class="varname">$PREVLEVEL</code> is set,
                                 <span class="command"><strong>runlevel</strong></span> will print
                                 this value as previous runlevel and
-                                ignore utmp.</p></dd></dl></div></div><div class="refsect1"><a name="idm214185193872"></a><h2 id="Files">Files<a class="headerlink" title="Permalink to this headline" href="#Files">¶</a></h2><div class="variablelist"><dl class="variablelist"><dt id="/var/run/utmp"><span class="term"><code class="filename">/var/run/utmp</code></span><a class="headerlink" title="Permalink to this term" href="#/var/run/utmp">¶</a></dt><dd><p>The utmp database
+                                ignore utmp.</p></dd></dl></div></div><div class="refsect1"><a name="idm214175394208"></a><h2 id="Files">Files<a class="headerlink" title="Permalink to this headline" href="#Files">¶</a></h2><div class="variablelist"><dl class="variablelist"><dt id="/var/run/utmp"><span class="term"><code class="filename">/var/run/utmp</code></span><a class="headerlink" title="Permalink to this term" href="#/var/run/utmp">¶</a></dt><dd><p>The utmp database
                                 <span class="command"><strong>runlevel</strong></span> reads the
                                 previous and current runlevel
-                                from.</p></dd></dl></div></div><div class="refsect1"><a name="idm214185190160"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p>This is a legacy command available for compatibility
+                                from.</p></dd></dl></div></div><div class="refsect1"><a name="idm214175832096"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p>This is a legacy command available for compatibility
                 only. It should not be used anymore, as the concept of
-                runlevels is obsolete.</p></div><div class="refsect1"><a name="idm214185188800"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+                runlevels is obsolete.</p></div><div class="refsect1"><a name="idm214176267456"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
                         <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
                         <a href="systemctl.html"><span class="citerefentry"><span class="refentrytitle">systemctl</span>(1)</span></a>
                 </p></div></div></body></html>
index ed0cca386b0d948d289f72c303f8da3c4ddb4c55..8c8a0a466ca7d363a326d26e7e55769836140f15 100644 (file)
@@ -1,5 +1,5 @@
 '\" t
-.TH "SD\-DAEMON" "3" "" "systemd 214" "sd-daemon"
+.TH "SD\-DAEMON" "3" "" "systemd 215" "sd-daemon"
 .\" -----------------------------------------------------------------
 .\" * Define some portability stuff
 .\" -----------------------------------------------------------------
index 63792bb2d1dd6c7fd3cc2a2b41a991b49f0f2b7d..afc020f8340b843665afa6649182dcb875af6d39 100644 (file)
@@ -19,8 +19,8 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="sd-daemon"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd-daemon, SD_EMERG, SD_ALERT, SD_CRIT, SD_ERR, SD_WARNING, SD_NOTICE, SD_INFO, SD_DEBUG — APIs for
-                new-style daemons</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-daemon.h&gt;</pre></div><div class="cmdsynopsis"><p><code class="command">pkg-config --cflags --libs libsystemd</code> </p></div></div><div class="refsect1"><a name="idm214188016064"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="filename">sd-daemon.h</code> provide APIs
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="sd-daemon"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd-daemon, SD_EMERG, SD_ALERT, SD_CRIT, SD_ERR, SD_WARNING, SD_NOTICE, SD_INFO, SD_DEBUG — APIs for
+                new-style daemons</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-daemon.h&gt;</pre></div><div class="cmdsynopsis"><p><code class="command">pkg-config --cflags --libs libsystemd</code> </p></div></div><div class="refsect1"><a name="idm214195900512"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="filename">sd-daemon.h</code> provide APIs
                 for new-style daemons, as implemented by the
                 <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>
                 init system.</p><p>See
                 log level system. To use these prefixes simply prefix
                 every line with one of these strings. A line that is
                 not prefixed will be logged at the default log level
-                SD_INFO.</p><div class="example"><a name="idm214184167584"></a><p class="title"><b>Example 1. Hello World</b></p><div class="example-contents"><p>A daemon may log with the log level
-                        NOTICE by issuing this call:</p><pre class="programlisting">fprintf(stderr, SD_NOTICE "Hello World!\n");</pre></div></div><br class="example-break"></div><div class="refsect1"><a name="idm214180497360"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p><a name="pkgconfig-text"></a>These APIs are implemented as a shared
+                SD_INFO.</p><div class="example"><a name="idm214195045552"></a><p class="title"><b>Example 1. Hello World</b></p><div class="example-contents"><p>A daemon may log with the log level
+                        NOTICE by issuing this call:</p><pre class="programlisting">fprintf(stderr, SD_NOTICE "Hello World!\n");</pre></div></div><br class="example-break"></div><div class="refsect1"><a name="idm214192388800"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p><a name="pkgconfig-text"></a>These APIs are implemented as a shared
   library, which can be compiled and linked to with the
   <code class="constant">libsystemd</code> <a href="pkg-config.html"><span class="citerefentry"><span class="refentrytitle">pkg-config</span>(1)</span></a>
-  file.</p></div><div class="refsect1"><a name="idm214184164912"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+  file.</p></div><div class="refsect1"><a name="idm214193723968"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
                         <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
                         <a href="sd_listen_fds.html"><span class="citerefentry"><span class="refentrytitle">sd_listen_fds</span>(3)</span></a>,
                         <a href="sd_notify.html"><span class="citerefentry"><span class="refentrytitle">sd_notify</span>(3)</span></a>,
index a5ca7e1adef449e7d6836c5c5c623e56f9e38982..6528c6454258987d7229a60643b66958ac9928d8 100644 (file)
@@ -1,5 +1,5 @@
 '\" t
-.TH "SD\-ID128" "3" "" "systemd 214" "sd-id128"
+.TH "SD\-ID128" "3" "" "systemd 215" "sd-id128"
 .\" -----------------------------------------------------------------
 .\" * Define some portability stuff
 .\" -----------------------------------------------------------------
index 1ee8026bcb2e97706bfeabcb93213cf766f1c272..913e12f3247b208f1463c5ef1193713668dee8cd 100644 (file)
@@ -19,7 +19,7 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="sd-id128"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd-id128, sd_id128_t, SD_ID128_MAKE, SD_ID128_CONST_STR, SD_ID128_FORMAT_STR, SD_ID128_FORMAT_VAL, sd_id128_equal — APIs for processing 128-bit IDs</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-id128.h&gt;</pre></div><div class="cmdsynopsis"><p><code class="command">pkg-config --cflags --libs libsystemd</code> </p></div></div><div class="refsect1"><a name="idm214203487536"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="filename">sd-id128.h</code> provides APIs to
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="sd-id128"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd-id128, sd_id128_t, SD_ID128_MAKE, SD_ID128_CONST_STR, SD_ID128_FORMAT_STR, SD_ID128_FORMAT_VAL, sd_id128_equal — APIs for processing 128-bit IDs</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-id128.h&gt;</pre></div><div class="cmdsynopsis"><p><code class="command">pkg-config --cflags --libs libsystemd</code> </p></div></div><div class="refsect1"><a name="idm214191197712"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="filename">sd-id128.h</code> provides APIs to
                 process and generate 128-bit ID values. The 128-bit ID
                 values processed and generated by these APIs are a
                 generalization of OSF UUIDs as defined by <a class="ulink" href="https://tools.ietf.org/html/rfc4122" target="_top">RFC
 }</pre><p>Note that new, randomized IDs may be generated
                 with
                 <a href="journalctl.html"><span class="citerefentry"><span class="refentrytitle">journalctl</span>(1)</span></a>'s
-                <code class="option">--new-id</code> option.</p></div><div class="refsect1"><a name="idm214194742784"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p><a name="pkgconfig-text"></a>These APIs are implemented as a shared
+                <code class="option">--new-id</code> option.</p></div><div class="refsect1"><a name="idm214187744304"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p><a name="pkgconfig-text"></a>These APIs are implemented as a shared
   library, which can be compiled and linked to with the
   <code class="constant">libsystemd</code> <a href="pkg-config.html"><span class="citerefentry"><span class="refentrytitle">pkg-config</span>(1)</span></a>
-  file.</p></div><div class="refsect1"><a name="idm214203585552"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+  file.</p></div><div class="refsect1"><a name="idm214191643840"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
                         <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
                         <a href="sd_id128_to_string.html"><span class="citerefentry"><span class="refentrytitle">sd_id128_to_string</span>(3)</span></a>,
                         <a href="sd_id128_randomize.html"><span class="citerefentry"><span class="refentrytitle">sd_id128_randomize</span>(3)</span></a>,
index fe506605dd08a959cbf0b5a085c107e08434cda4..c22e1c8e24371dc78db59e935323bec5cef74b15 100644 (file)
@@ -1,5 +1,5 @@
 '\" t
-.TH "SD\-JOURNAL" "3" "" "systemd 214" "sd-journal"
+.TH "SD\-JOURNAL" "3" "" "systemd 215" "sd-journal"
 .\" -----------------------------------------------------------------
 .\" * Define some portability stuff
 .\" -----------------------------------------------------------------
index a5c8ce73b32188a1edc833cb38ece15781d402b9..9996b3c094104133165685b8452bb81ee88c60e5 100644 (file)
@@ -19,7 +19,7 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="sd-journal"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd-journal — APIs for submitting and querying log entries to and from the journal</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-journal.h&gt;</pre></div><div class="cmdsynopsis"><p><code class="command">pkg-config --cflags --libs libsystemd</code> </p></div></div><div class="refsect1"><a name="idm214191669744"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="filename">sd-journal.h</code> provides APIs
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="sd-journal"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd-journal — APIs for submitting and querying log entries to and from the journal</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-journal.h&gt;</pre></div><div class="cmdsynopsis"><p><code class="command">pkg-config --cflags --libs libsystemd</code> </p></div></div><div class="refsect1"><a name="idm214191623984"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="filename">sd-journal.h</code> provides APIs
                 to submit and query log entries. The APIs exposed act
                 both as client for the
                 <a href="systemd-journald.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-journald.service</span>(8)</span></a>
                 tool. Command line access for querying entries from
                 the journal is available with the
                 <a href="journalctl.html"><span class="citerefentry"><span class="refentrytitle">journalctl</span>(1)</span></a>
-                tool.</p></div><div class="refsect1"><a name="idm214184959616"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p><a name="pkgconfig-text"></a>These APIs are implemented as a shared
+                tool.</p></div><div class="refsect1"><a name="idm214186032880"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p><a name="pkgconfig-text"></a>These APIs are implemented as a shared
   library, which can be compiled and linked to with the
   <code class="constant">libsystemd</code> <a href="pkg-config.html"><span class="citerefentry"><span class="refentrytitle">pkg-config</span>(1)</span></a>
-  file.</p></div><div class="refsect1"><a name="idm214187890512"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+  file.</p></div><div class="refsect1"><a name="idm214189468928"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
                         <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
                         <a href="sd_journal_print.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_print</span>(3)</span></a>,
                         <a href="sd_journal_stream_fd.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_stream_fd</span>(3)</span></a>,
index eb3e4542a2fc45a51c6c65335c89f883a25abe78..aa8f657d3f2650b7bffab44fb5eea9ead0c19c70 100644 (file)
@@ -1,5 +1,5 @@
 '\" t
-.TH "SD\-LOGIN" "3" "" "systemd 214" "sd-login"
+.TH "SD\-LOGIN" "3" "" "systemd 215" "sd-login"
 .\" -----------------------------------------------------------------
 .\" * Define some portability stuff
 .\" -----------------------------------------------------------------
index dc79c60b93d1c3db84311423e9374c33dd9ca875..7d2aa1c1a582f9747ce738d4cd014bb22beab8f6 100644 (file)
@@ -19,8 +19,8 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="sd-login"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd-login — APIs for
-                tracking logins</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-login.h&gt;</pre></div><div class="cmdsynopsis"><p><code class="command">pkg-config --cflags --libs libsystemd</code> </p></div></div><div class="refsect1"><a name="idm214168176976"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="filename">sd-login.h</code> provides APIs to
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="sd-login"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd-login — APIs for
+                tracking logins</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-login.h&gt;</pre></div><div class="cmdsynopsis"><p><code class="command">pkg-config --cflags --libs libsystemd</code> </p></div></div><div class="refsect1"><a name="idm214203511616"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="filename">sd-login.h</code> provides APIs to
                 introspect and monitor seat, login session and user
                 status information on the local system. </p><p>See <a class="ulink" href="http://www.freedesktop.org/wiki/Software/systemd/multiseat" target="_top">Multi-Seat
                 on Linux</a> for an introduction into multi-seat
                 <a href="sd_get_seats.html"><span class="citerefentry"><span class="refentrytitle">sd_get_seats</span>(3)</span></a>,
                 <a href="sd_login_monitor_new.html"><span class="citerefentry"><span class="refentrytitle">sd_login_monitor_new</span>(3)</span></a>
                 for more information about the functions
-                implemented.</p></div><div class="refsect1"><a name="idm214161987024"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p><a name="pkgconfig-text"></a>These APIs are implemented as a shared
+                implemented.</p></div><div class="refsect1"><a name="idm214195679696"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p><a name="pkgconfig-text"></a>These APIs are implemented as a shared
   library, which can be compiled and linked to with the
   <code class="constant">libsystemd</code> <a href="pkg-config.html"><span class="citerefentry"><span class="refentrytitle">pkg-config</span>(1)</span></a>
-  file.</p></div><div class="refsect1"><a name="idm214170782064"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+  file.</p></div><div class="refsect1"><a name="idm214199735312"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
                         <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
                         <a href="sd_pid_get_session.html"><span class="citerefentry"><span class="refentrytitle">sd_pid_get_session</span>(3)</span></a>,
                         <a href="sd_uid_get_state.html"><span class="citerefentry"><span class="refentrytitle">sd_uid_get_state</span>(3)</span></a>,
index 9ef75202b95d2c74c2ce92c3d225226c92dd810f..d26ddb3f75ac25c38676bd4e833d293c7034f6bb 100644 (file)
@@ -1,5 +1,5 @@
 '\" t
-.TH "SD\-READAHEAD" "3" "" "systemd 214" "sd-readahead"
+.TH "SD\-READAHEAD" "3" "" "systemd 215" "sd-readahead"
 .\" -----------------------------------------------------------------
 .\" * Define some portability stuff
 .\" -----------------------------------------------------------------
index b3ee4c97791969fa8e9f51c6fd7e56f5c8e06359..b44f8d03390e98cb61e5d89397cf3c66784a3f7a 100644 (file)
@@ -19,8 +19,8 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="sd-readahead"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd-readahead — Reference implementation of APIs for
-                controlling boot-time read-ahead</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include "sd-readahead.h"</pre></div></div><div class="refsect1"><a name="idm214181857840"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="filename">sd-readahead.c</code> and
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="sd-readahead"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd-readahead — Reference implementation of APIs for
+                controlling boot-time read-ahead</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include "sd-readahead.h"</pre></div></div><div class="refsect1"><a name="idm214198772224"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="filename">sd-readahead.c</code> and
                 <code class="filename">sd-readahead.h</code> provide a
                 reference implementation for APIs for controlling boot-time
                 read-ahead, as implemented by the read-ahead subsystem
@@ -29,7 +29,7 @@
                 init system.</p><p>See
                 <a href="sd_readahead.html"><span class="citerefentry"><span class="refentrytitle">sd_readahead</span>(3)</span></a>
                 for more information about the function
-                implemented.</p></div><div class="refsect1"><a name="idm214184615472"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p>This interface is provided by the reference
+                implemented.</p></div><div class="refsect1"><a name="idm214198767552"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p>This interface is provided by the reference
                 implementation of APIs for controlling boot-time
                 read-ahead and distributed with the systemd
                 package. The algorithms it implements are simple, and
@@ -51,7 +51,7 @@
                 NOPs when -DDISABLE_SYSTEMD is set during
                 compilation. In addition, if
                 <code class="filename">sd-readhead.c</code> is compiled on
-                non-Linux systems it becomes NOPs.</p></div><div class="refsect1"><a name="idm214180855536"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+                non-Linux systems it becomes NOPs.</p></div><div class="refsect1"><a name="idm214198760976"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
                         <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
                         <a href="sd_readahead.html"><span class="citerefentry"><span class="refentrytitle">sd_readahead</span>(3)</span></a>,
                         <a href="sd-daemon.html"><span class="citerefentry"><span class="refentrytitle">sd-daemon</span>(3)</span></a>
index 55f7540c217facd757d0f290085387f6722376be..e4dea9b7e53aeec4fe79cbc26a237953cbec21ae 100644 (file)
@@ -1,5 +1,5 @@
 '\" t
-.TH "SD_BOOTED" "3" "" "systemd 214" "sd_booted"
+.TH "SD_BOOTED" "3" "" "systemd 215" "sd_booted"
 .\" -----------------------------------------------------------------
 .\" * Define some portability stuff
 .\" -----------------------------------------------------------------
index 19c9422ec26a656b4852f31570b3cd4819d23813..b55961a442faeb9af0d1749143ac03b367bcba33 100644 (file)
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="sd_booted"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_booted — Test whether the system is running the systemd init system</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-daemon.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_booted</b>(</code></td><td>void<code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214192992288"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_booted()</code> checks whether
-                the system was booted up using the systemd init system.</p></div><div class="refsect1"><a name="idm214193063568"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>On failure, this call returns a negative
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="sd_booted"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_booted — Test whether the system is running the systemd init system</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-daemon.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_booted</b>(</code></td><td>void<code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214187764176"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_booted()</code> checks whether
+                the system was booted up using the systemd init system.</p></div><div class="refsect1"><a name="idm214187730160"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>On failure, this call returns a negative
                 errno-style error code. If the system was booted up
                 with systemd as init system, this call returns a
-                positive return value, zero otherwise.</p></div><div class="refsect1"><a name="idm214193062144"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p><a name="pkgconfig-text"></a>These APIs are implemented as a shared
+                positive return value, zero otherwise.</p></div><div class="refsect1"><a name="idm214186466608"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p><a name="pkgconfig-text"></a>These APIs are implemented as a shared
   library, which can be compiled and linked to with the
   <code class="constant">libsystemd</code> <a href="pkg-config.html"><span class="citerefentry"><span class="refentrytitle">pkg-config</span>(1)</span></a>
   file.</p><p>Internally, this function checks whether the
                 directory <code class="filename">/run/systemd/system/</code>
                 exists. A simple check like this can also be
                 implemented trivially in shell or any other
-                language.</p></div><div class="refsect1"><a name="idm214189224128"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+                language.</p></div><div class="refsect1"><a name="idm214186988832"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
                         <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
                         <a href="sd-daemon.html"><span class="citerefentry"><span class="refentrytitle">sd-daemon</span>(3)</span></a>
                 </p></div></div></body></html>
index 4782ce6e05c82e1c452d8e659c088efbb67310ce..f9e3ba706bb0e6c41ca884ddb153b37772245621 100644 (file)
@@ -19,7 +19,7 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="sd_bus_creds_get_pid"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_bus_creds_get_pid, sd_bus_creds_get_pid_starttime, sd_bus_creds_get_tid, sd_bus_creds_get_uid, sd_bus_creds_get_gid, sd_bus_creds_get_comm, sd_bus_creds_get_tid_comm, sd_bus_creds_get_exe, sd_bus_creds_get_cmdline, sd_bus_creds_get_cgroup, sd_bus_creds_get_unit, sd_bus_creds_get_user_unit, sd_bus_creds_get_slice, sd_bus_creds_get_session, sd_bus_creds_get_owner_uid, sd_bus_creds_has_effective_cap, sd_bus_creds_has_permitted_cap, sd_bus_creds_has_inheritable_cap, sd_bus_creds_has_bounding_cap, sd_bus_creds_get_selinux_context, sd_bus_creds_get_audit_session_id, sd_bus_creds_get_audit_login_uid, sd_bus_creds_get_unique_name, sd_bus_creds_get_well_known_names — Retrieve fields from a credentials object</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-bus.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_pid</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>pid_t *<var class="pdparam">pid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_pid_starttime</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>uint64_t *<var class="pdparam">usec</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_tid</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>pid_t *<var class="pdparam">tid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_pid</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>uid_t *<var class="pdparam">uid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_gid</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>gid_t *<var class="pdparam">gid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_comm</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">comm</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_tid_comm</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">comm</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_exe</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">exe</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_cmdline</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>char ***<var class="pdparam">cmdline</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_cgroup</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">cgroup</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_unit</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">unit</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_user_unit</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">unit</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_slice</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">slice</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_session</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">slice</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_owner_uid</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>uid_t *<var class="pdparam">uid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_has_effective_cap</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">capability</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_has_permitted_cap</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">capability</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_has_inheritable_cap</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">capability</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_has_bounding_cap</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">capability</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_selinux_context</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">context</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_audit_session_id</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>uint32_t *<var class="pdparam">sessionid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_audit_login_uid</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>uid_t *<var class="pdparam">loginuid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_unique_name</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">name</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_well_known_names</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>char ***<var class="pdparam">name</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214179373600"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p>These functions return information from an
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="sd_bus_creds_get_pid"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_bus_creds_get_pid, sd_bus_creds_get_pid_starttime, sd_bus_creds_get_tid, sd_bus_creds_get_uid, sd_bus_creds_get_gid, sd_bus_creds_get_comm, sd_bus_creds_get_tid_comm, sd_bus_creds_get_exe, sd_bus_creds_get_cmdline, sd_bus_creds_get_cgroup, sd_bus_creds_get_unit, sd_bus_creds_get_user_unit, sd_bus_creds_get_slice, sd_bus_creds_get_session, sd_bus_creds_get_owner_uid, sd_bus_creds_has_effective_cap, sd_bus_creds_has_permitted_cap, sd_bus_creds_has_inheritable_cap, sd_bus_creds_has_bounding_cap, sd_bus_creds_get_selinux_context, sd_bus_creds_get_audit_session_id, sd_bus_creds_get_audit_login_uid, sd_bus_creds_get_unique_name, sd_bus_creds_get_well_known_names — Retrieve fields from a credentials object</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-bus.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_pid</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>pid_t *<var class="pdparam">pid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_pid_starttime</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>uint64_t *<var class="pdparam">usec</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_tid</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>pid_t *<var class="pdparam">tid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_pid</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>uid_t *<var class="pdparam">uid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_gid</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>gid_t *<var class="pdparam">gid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_comm</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">comm</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_tid_comm</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">comm</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_exe</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">exe</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_cmdline</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>char ***<var class="pdparam">cmdline</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_cgroup</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">cgroup</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_unit</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">unit</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_user_unit</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">unit</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_slice</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">slice</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_session</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">slice</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_owner_uid</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>uid_t *<var class="pdparam">uid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_has_effective_cap</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">capability</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_has_permitted_cap</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">capability</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_has_inheritable_cap</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">capability</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_has_bounding_cap</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">capability</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_selinux_context</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">context</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_audit_session_id</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>uint32_t *<var class="pdparam">sessionid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_audit_login_uid</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>uid_t *<var class="pdparam">loginuid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_unique_name</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">name</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_well_known_names</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>char ***<var class="pdparam">name</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214195952656"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p>These functions return information from an
     <em class="parameter"><code>sd_bus_creds</code></em> object. It may be created with
     <a href="sd_bus_creds_new_from_pid.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_creds_new_from_pid</span>(3)</span></a>,
     in which case it will describe the specified process, or it may be
     of strings. Each invidividual string is NUL-terminated, and the
     array is NULL-terminated as a whole. It will be valid as long as
     <em class="parameter"><code>c</code></em> remains valid, and should not be freed or
-    modified by the caller.</p></div><div class="refsect1"><a name="idm214179328320"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>On success, these calls return 0 or a positive integer. On
+    modified by the caller.</p></div><div class="refsect1"><a name="idm214195728128"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>On success, these calls return 0 or a positive integer. On
     failure, these calls return a negative errno-style error code.
-    </p></div><div class="refsect1"><a name="idm214179327024"></a><h2 id="Errors">Errors<a class="headerlink" title="Permalink to this headline" href="#Errors">¶</a></h2><p>Returned errors may indicate the following problems:</p><div class="variablelist"><dl class="variablelist"><dt id="-ENODATA"><span class="term"><code class="varname">-ENODATA</code></span><a class="headerlink" title="Permalink to this term" href="#-ENODATA">¶</a></dt><dd><p>Given field is not available in
+    </p></div><div class="refsect1"><a name="idm214195726800"></a><h2 id="Errors">Errors<a class="headerlink" title="Permalink to this headline" href="#Errors">¶</a></h2><p>Returned errors may indicate the following problems:</p><div class="variablelist"><dl class="variablelist"><dt id="-ENODATA"><span class="term"><code class="varname">-ENODATA</code></span><a class="headerlink" title="Permalink to this term" href="#-ENODATA">¶</a></dt><dd><p>Given field is not available in
         <em class="parameter"><code>c</code></em>.</p></dd><dt id="-ENOENT"><span class="term"><code class="varname">-ENOENT</code></span><a class="headerlink" title="Permalink to this term" href="#-ENOENT">¶</a></dt><dd><p>Given field is not specified for the sender.
         This will be returned by <code class="function">sd_bus_get_unit</code>,
         <code class="function">sd_bus_get_user_unit</code>,
         slice, logind session, or a systemd user session.</p></dd><dt id="-ENXIO"><span class="term"><code class="varname">-ENXIO</code></span><a class="headerlink" title="Permalink to this term" href="#-ENXIO">¶</a></dt><dd><p>An error occured in parsing cgroup paths.
         <code class="filename">libsystemd</code> might be out of sync with
         the running systemd version.</p></dd><dt id="-EINVAL"><span class="term"><code class="varname">-EINVAL</code></span><a class="headerlink" title="Permalink to this term" href="#-EINVAL">¶</a></dt><dd><p>Specified pointer parameter is <code class="constant">NULL</code>.
-        </p></dd><dt id="-ENOMEM"><span class="term"><code class="varname">-ENOMEM</code></span><a class="headerlink" title="Permalink to this term" href="#-ENOMEM">¶</a></dt><dd><p>Memory allocation failed.</p></dd></dl></div></div><div class="refsect1"><a name="idm214179313104"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p><code class="function">sd_bus_open_user()</code> and other functions
+        </p></dd><dt id="-ENOMEM"><span class="term"><code class="varname">-ENOMEM</code></span><a class="headerlink" title="Permalink to this term" href="#-ENOMEM">¶</a></dt><dd><p>Memory allocation failed.</p></dd></dl></div></div><div class="refsect1"><a name="idm214199611568"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p><code class="function">sd_bus_open_user()</code> and other functions
     described here are available as a shared library, which can be
     compiled and linked to with the
     <code class="constant">libsystemd</code> <a href="pkg-config.html"><span class="citerefentry"><span class="refentrytitle">pkg-config</span>(1)</span></a>
-    file.</p></div><div class="refsect1"><a name="idm214179310160"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+    file.</p></div><div class="refsect1"><a name="idm214199608400"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
       <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
       <a href="sd-bus.html"><span class="citerefentry"><span class="refentrytitle">sd-bus</span>(3)</span></a>,
       <a href="credentials.html"><span class="citerefentry"><span class="refentrytitle">credentials</span>(7)</span></a>,
index 4782ce6e05c82e1c452d8e659c088efbb67310ce..f9e3ba706bb0e6c41ca884ddb153b37772245621 100644 (file)
@@ -19,7 +19,7 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="sd_bus_creds_get_pid"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_bus_creds_get_pid, sd_bus_creds_get_pid_starttime, sd_bus_creds_get_tid, sd_bus_creds_get_uid, sd_bus_creds_get_gid, sd_bus_creds_get_comm, sd_bus_creds_get_tid_comm, sd_bus_creds_get_exe, sd_bus_creds_get_cmdline, sd_bus_creds_get_cgroup, sd_bus_creds_get_unit, sd_bus_creds_get_user_unit, sd_bus_creds_get_slice, sd_bus_creds_get_session, sd_bus_creds_get_owner_uid, sd_bus_creds_has_effective_cap, sd_bus_creds_has_permitted_cap, sd_bus_creds_has_inheritable_cap, sd_bus_creds_has_bounding_cap, sd_bus_creds_get_selinux_context, sd_bus_creds_get_audit_session_id, sd_bus_creds_get_audit_login_uid, sd_bus_creds_get_unique_name, sd_bus_creds_get_well_known_names — Retrieve fields from a credentials object</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-bus.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_pid</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>pid_t *<var class="pdparam">pid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_pid_starttime</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>uint64_t *<var class="pdparam">usec</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_tid</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>pid_t *<var class="pdparam">tid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_pid</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>uid_t *<var class="pdparam">uid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_gid</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>gid_t *<var class="pdparam">gid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_comm</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">comm</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_tid_comm</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">comm</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_exe</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">exe</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_cmdline</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>char ***<var class="pdparam">cmdline</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_cgroup</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">cgroup</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_unit</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">unit</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_user_unit</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">unit</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_slice</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">slice</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_session</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">slice</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_owner_uid</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>uid_t *<var class="pdparam">uid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_has_effective_cap</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">capability</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_has_permitted_cap</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">capability</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_has_inheritable_cap</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">capability</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_has_bounding_cap</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">capability</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_selinux_context</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">context</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_audit_session_id</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>uint32_t *<var class="pdparam">sessionid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_audit_login_uid</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>uid_t *<var class="pdparam">loginuid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_unique_name</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">name</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_well_known_names</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>char ***<var class="pdparam">name</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214179373600"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p>These functions return information from an
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="sd_bus_creds_get_pid"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_bus_creds_get_pid, sd_bus_creds_get_pid_starttime, sd_bus_creds_get_tid, sd_bus_creds_get_uid, sd_bus_creds_get_gid, sd_bus_creds_get_comm, sd_bus_creds_get_tid_comm, sd_bus_creds_get_exe, sd_bus_creds_get_cmdline, sd_bus_creds_get_cgroup, sd_bus_creds_get_unit, sd_bus_creds_get_user_unit, sd_bus_creds_get_slice, sd_bus_creds_get_session, sd_bus_creds_get_owner_uid, sd_bus_creds_has_effective_cap, sd_bus_creds_has_permitted_cap, sd_bus_creds_has_inheritable_cap, sd_bus_creds_has_bounding_cap, sd_bus_creds_get_selinux_context, sd_bus_creds_get_audit_session_id, sd_bus_creds_get_audit_login_uid, sd_bus_creds_get_unique_name, sd_bus_creds_get_well_known_names — Retrieve fields from a credentials object</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-bus.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_pid</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>pid_t *<var class="pdparam">pid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_pid_starttime</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>uint64_t *<var class="pdparam">usec</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_tid</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>pid_t *<var class="pdparam">tid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_pid</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>uid_t *<var class="pdparam">uid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_gid</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>gid_t *<var class="pdparam">gid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_comm</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">comm</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_tid_comm</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">comm</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_exe</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">exe</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_cmdline</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>char ***<var class="pdparam">cmdline</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_cgroup</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">cgroup</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_unit</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">unit</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_user_unit</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">unit</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_slice</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">slice</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_session</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">slice</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_owner_uid</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>uid_t *<var class="pdparam">uid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_has_effective_cap</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">capability</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_has_permitted_cap</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">capability</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_has_inheritable_cap</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">capability</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_has_bounding_cap</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">capability</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_selinux_context</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">context</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_audit_session_id</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>uint32_t *<var class="pdparam">sessionid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_audit_login_uid</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>uid_t *<var class="pdparam">loginuid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_unique_name</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">name</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_well_known_names</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>char ***<var class="pdparam">name</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214195952656"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p>These functions return information from an
     <em class="parameter"><code>sd_bus_creds</code></em> object. It may be created with
     <a href="sd_bus_creds_new_from_pid.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_creds_new_from_pid</span>(3)</span></a>,
     in which case it will describe the specified process, or it may be
     of strings. Each invidividual string is NUL-terminated, and the
     array is NULL-terminated as a whole. It will be valid as long as
     <em class="parameter"><code>c</code></em> remains valid, and should not be freed or
-    modified by the caller.</p></div><div class="refsect1"><a name="idm214179328320"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>On success, these calls return 0 or a positive integer. On
+    modified by the caller.</p></div><div class="refsect1"><a name="idm214195728128"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>On success, these calls return 0 or a positive integer. On
     failure, these calls return a negative errno-style error code.
-    </p></div><div class="refsect1"><a name="idm214179327024"></a><h2 id="Errors">Errors<a class="headerlink" title="Permalink to this headline" href="#Errors">¶</a></h2><p>Returned errors may indicate the following problems:</p><div class="variablelist"><dl class="variablelist"><dt id="-ENODATA"><span class="term"><code class="varname">-ENODATA</code></span><a class="headerlink" title="Permalink to this term" href="#-ENODATA">¶</a></dt><dd><p>Given field is not available in
+    </p></div><div class="refsect1"><a name="idm214195726800"></a><h2 id="Errors">Errors<a class="headerlink" title="Permalink to this headline" href="#Errors">¶</a></h2><p>Returned errors may indicate the following problems:</p><div class="variablelist"><dl class="variablelist"><dt id="-ENODATA"><span class="term"><code class="varname">-ENODATA</code></span><a class="headerlink" title="Permalink to this term" href="#-ENODATA">¶</a></dt><dd><p>Given field is not available in
         <em class="parameter"><code>c</code></em>.</p></dd><dt id="-ENOENT"><span class="term"><code class="varname">-ENOENT</code></span><a class="headerlink" title="Permalink to this term" href="#-ENOENT">¶</a></dt><dd><p>Given field is not specified for the sender.
         This will be returned by <code class="function">sd_bus_get_unit</code>,
         <code class="function">sd_bus_get_user_unit</code>,
         slice, logind session, or a systemd user session.</p></dd><dt id="-ENXIO"><span class="term"><code class="varname">-ENXIO</code></span><a class="headerlink" title="Permalink to this term" href="#-ENXIO">¶</a></dt><dd><p>An error occured in parsing cgroup paths.
         <code class="filename">libsystemd</code> might be out of sync with
         the running systemd version.</p></dd><dt id="-EINVAL"><span class="term"><code class="varname">-EINVAL</code></span><a class="headerlink" title="Permalink to this term" href="#-EINVAL">¶</a></dt><dd><p>Specified pointer parameter is <code class="constant">NULL</code>.
-        </p></dd><dt id="-ENOMEM"><span class="term"><code class="varname">-ENOMEM</code></span><a class="headerlink" title="Permalink to this term" href="#-ENOMEM">¶</a></dt><dd><p>Memory allocation failed.</p></dd></dl></div></div><div class="refsect1"><a name="idm214179313104"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p><code class="function">sd_bus_open_user()</code> and other functions
+        </p></dd><dt id="-ENOMEM"><span class="term"><code class="varname">-ENOMEM</code></span><a class="headerlink" title="Permalink to this term" href="#-ENOMEM">¶</a></dt><dd><p>Memory allocation failed.</p></dd></dl></div></div><div class="refsect1"><a name="idm214199611568"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p><code class="function">sd_bus_open_user()</code> and other functions
     described here are available as a shared library, which can be
     compiled and linked to with the
     <code class="constant">libsystemd</code> <a href="pkg-config.html"><span class="citerefentry"><span class="refentrytitle">pkg-config</span>(1)</span></a>
-    file.</p></div><div class="refsect1"><a name="idm214179310160"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+    file.</p></div><div class="refsect1"><a name="idm214199608400"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
       <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
       <a href="sd-bus.html"><span class="citerefentry"><span class="refentrytitle">sd-bus</span>(3)</span></a>,
       <a href="credentials.html"><span class="citerefentry"><span class="refentrytitle">credentials</span>(7)</span></a>,
index 4782ce6e05c82e1c452d8e659c088efbb67310ce..f9e3ba706bb0e6c41ca884ddb153b37772245621 100644 (file)
@@ -19,7 +19,7 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="sd_bus_creds_get_pid"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_bus_creds_get_pid, sd_bus_creds_get_pid_starttime, sd_bus_creds_get_tid, sd_bus_creds_get_uid, sd_bus_creds_get_gid, sd_bus_creds_get_comm, sd_bus_creds_get_tid_comm, sd_bus_creds_get_exe, sd_bus_creds_get_cmdline, sd_bus_creds_get_cgroup, sd_bus_creds_get_unit, sd_bus_creds_get_user_unit, sd_bus_creds_get_slice, sd_bus_creds_get_session, sd_bus_creds_get_owner_uid, sd_bus_creds_has_effective_cap, sd_bus_creds_has_permitted_cap, sd_bus_creds_has_inheritable_cap, sd_bus_creds_has_bounding_cap, sd_bus_creds_get_selinux_context, sd_bus_creds_get_audit_session_id, sd_bus_creds_get_audit_login_uid, sd_bus_creds_get_unique_name, sd_bus_creds_get_well_known_names — Retrieve fields from a credentials object</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-bus.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_pid</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>pid_t *<var class="pdparam">pid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_pid_starttime</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>uint64_t *<var class="pdparam">usec</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_tid</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>pid_t *<var class="pdparam">tid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_pid</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>uid_t *<var class="pdparam">uid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_gid</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>gid_t *<var class="pdparam">gid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_comm</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">comm</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_tid_comm</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">comm</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_exe</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">exe</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_cmdline</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>char ***<var class="pdparam">cmdline</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_cgroup</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">cgroup</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_unit</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">unit</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_user_unit</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">unit</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_slice</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">slice</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_session</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">slice</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_owner_uid</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>uid_t *<var class="pdparam">uid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_has_effective_cap</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">capability</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_has_permitted_cap</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">capability</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_has_inheritable_cap</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">capability</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_has_bounding_cap</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">capability</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_selinux_context</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">context</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_audit_session_id</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>uint32_t *<var class="pdparam">sessionid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_audit_login_uid</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>uid_t *<var class="pdparam">loginuid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_unique_name</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">name</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_well_known_names</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>char ***<var class="pdparam">name</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214179373600"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p>These functions return information from an
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="sd_bus_creds_get_pid"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_bus_creds_get_pid, sd_bus_creds_get_pid_starttime, sd_bus_creds_get_tid, sd_bus_creds_get_uid, sd_bus_creds_get_gid, sd_bus_creds_get_comm, sd_bus_creds_get_tid_comm, sd_bus_creds_get_exe, sd_bus_creds_get_cmdline, sd_bus_creds_get_cgroup, sd_bus_creds_get_unit, sd_bus_creds_get_user_unit, sd_bus_creds_get_slice, sd_bus_creds_get_session, sd_bus_creds_get_owner_uid, sd_bus_creds_has_effective_cap, sd_bus_creds_has_permitted_cap, sd_bus_creds_has_inheritable_cap, sd_bus_creds_has_bounding_cap, sd_bus_creds_get_selinux_context, sd_bus_creds_get_audit_session_id, sd_bus_creds_get_audit_login_uid, sd_bus_creds_get_unique_name, sd_bus_creds_get_well_known_names — Retrieve fields from a credentials object</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-bus.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_pid</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>pid_t *<var class="pdparam">pid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_pid_starttime</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>uint64_t *<var class="pdparam">usec</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_tid</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>pid_t *<var class="pdparam">tid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_pid</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>uid_t *<var class="pdparam">uid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_gid</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>gid_t *<var class="pdparam">gid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_comm</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">comm</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_tid_comm</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">comm</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_exe</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">exe</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_cmdline</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>char ***<var class="pdparam">cmdline</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_cgroup</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">cgroup</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_unit</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">unit</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_user_unit</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">unit</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_slice</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">slice</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_session</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">slice</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_owner_uid</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>uid_t *<var class="pdparam">uid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_has_effective_cap</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">capability</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_has_permitted_cap</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">capability</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_has_inheritable_cap</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">capability</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_has_bounding_cap</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">capability</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_selinux_context</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">context</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_audit_session_id</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>uint32_t *<var class="pdparam">sessionid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_audit_login_uid</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>uid_t *<var class="pdparam">loginuid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_unique_name</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">name</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_well_known_names</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>char ***<var class="pdparam">name</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214195952656"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p>These functions return information from an
     <em class="parameter"><code>sd_bus_creds</code></em> object. It may be created with
     <a href="sd_bus_creds_new_from_pid.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_creds_new_from_pid</span>(3)</span></a>,
     in which case it will describe the specified process, or it may be
     of strings. Each invidividual string is NUL-terminated, and the
     array is NULL-terminated as a whole. It will be valid as long as
     <em class="parameter"><code>c</code></em> remains valid, and should not be freed or
-    modified by the caller.</p></div><div class="refsect1"><a name="idm214179328320"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>On success, these calls return 0 or a positive integer. On
+    modified by the caller.</p></div><div class="refsect1"><a name="idm214195728128"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>On success, these calls return 0 or a positive integer. On
     failure, these calls return a negative errno-style error code.
-    </p></div><div class="refsect1"><a name="idm214179327024"></a><h2 id="Errors">Errors<a class="headerlink" title="Permalink to this headline" href="#Errors">¶</a></h2><p>Returned errors may indicate the following problems:</p><div class="variablelist"><dl class="variablelist"><dt id="-ENODATA"><span class="term"><code class="varname">-ENODATA</code></span><a class="headerlink" title="Permalink to this term" href="#-ENODATA">¶</a></dt><dd><p>Given field is not available in
+    </p></div><div class="refsect1"><a name="idm214195726800"></a><h2 id="Errors">Errors<a class="headerlink" title="Permalink to this headline" href="#Errors">¶</a></h2><p>Returned errors may indicate the following problems:</p><div class="variablelist"><dl class="variablelist"><dt id="-ENODATA"><span class="term"><code class="varname">-ENODATA</code></span><a class="headerlink" title="Permalink to this term" href="#-ENODATA">¶</a></dt><dd><p>Given field is not available in
         <em class="parameter"><code>c</code></em>.</p></dd><dt id="-ENOENT"><span class="term"><code class="varname">-ENOENT</code></span><a class="headerlink" title="Permalink to this term" href="#-ENOENT">¶</a></dt><dd><p>Given field is not specified for the sender.
         This will be returned by <code class="function">sd_bus_get_unit</code>,
         <code class="function">sd_bus_get_user_unit</code>,
         slice, logind session, or a systemd user session.</p></dd><dt id="-ENXIO"><span class="term"><code class="varname">-ENXIO</code></span><a class="headerlink" title="Permalink to this term" href="#-ENXIO">¶</a></dt><dd><p>An error occured in parsing cgroup paths.
         <code class="filename">libsystemd</code> might be out of sync with
         the running systemd version.</p></dd><dt id="-EINVAL"><span class="term"><code class="varname">-EINVAL</code></span><a class="headerlink" title="Permalink to this term" href="#-EINVAL">¶</a></dt><dd><p>Specified pointer parameter is <code class="constant">NULL</code>.
-        </p></dd><dt id="-ENOMEM"><span class="term"><code class="varname">-ENOMEM</code></span><a class="headerlink" title="Permalink to this term" href="#-ENOMEM">¶</a></dt><dd><p>Memory allocation failed.</p></dd></dl></div></div><div class="refsect1"><a name="idm214179313104"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p><code class="function">sd_bus_open_user()</code> and other functions
+        </p></dd><dt id="-ENOMEM"><span class="term"><code class="varname">-ENOMEM</code></span><a class="headerlink" title="Permalink to this term" href="#-ENOMEM">¶</a></dt><dd><p>Memory allocation failed.</p></dd></dl></div></div><div class="refsect1"><a name="idm214199611568"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p><code class="function">sd_bus_open_user()</code> and other functions
     described here are available as a shared library, which can be
     compiled and linked to with the
     <code class="constant">libsystemd</code> <a href="pkg-config.html"><span class="citerefentry"><span class="refentrytitle">pkg-config</span>(1)</span></a>
-    file.</p></div><div class="refsect1"><a name="idm214179310160"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+    file.</p></div><div class="refsect1"><a name="idm214199608400"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
       <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
       <a href="sd-bus.html"><span class="citerefentry"><span class="refentrytitle">sd-bus</span>(3)</span></a>,
       <a href="credentials.html"><span class="citerefentry"><span class="refentrytitle">credentials</span>(7)</span></a>,
index 4782ce6e05c82e1c452d8e659c088efbb67310ce..f9e3ba706bb0e6c41ca884ddb153b37772245621 100644 (file)
@@ -19,7 +19,7 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="sd_bus_creds_get_pid"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_bus_creds_get_pid, sd_bus_creds_get_pid_starttime, sd_bus_creds_get_tid, sd_bus_creds_get_uid, sd_bus_creds_get_gid, sd_bus_creds_get_comm, sd_bus_creds_get_tid_comm, sd_bus_creds_get_exe, sd_bus_creds_get_cmdline, sd_bus_creds_get_cgroup, sd_bus_creds_get_unit, sd_bus_creds_get_user_unit, sd_bus_creds_get_slice, sd_bus_creds_get_session, sd_bus_creds_get_owner_uid, sd_bus_creds_has_effective_cap, sd_bus_creds_has_permitted_cap, sd_bus_creds_has_inheritable_cap, sd_bus_creds_has_bounding_cap, sd_bus_creds_get_selinux_context, sd_bus_creds_get_audit_session_id, sd_bus_creds_get_audit_login_uid, sd_bus_creds_get_unique_name, sd_bus_creds_get_well_known_names — Retrieve fields from a credentials object</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-bus.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_pid</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>pid_t *<var class="pdparam">pid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_pid_starttime</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>uint64_t *<var class="pdparam">usec</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_tid</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>pid_t *<var class="pdparam">tid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_pid</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>uid_t *<var class="pdparam">uid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_gid</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>gid_t *<var class="pdparam">gid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_comm</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">comm</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_tid_comm</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">comm</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_exe</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">exe</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_cmdline</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>char ***<var class="pdparam">cmdline</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_cgroup</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">cgroup</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_unit</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">unit</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_user_unit</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">unit</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_slice</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">slice</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_session</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">slice</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_owner_uid</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>uid_t *<var class="pdparam">uid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_has_effective_cap</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">capability</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_has_permitted_cap</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">capability</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_has_inheritable_cap</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">capability</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_has_bounding_cap</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">capability</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_selinux_context</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">context</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_audit_session_id</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>uint32_t *<var class="pdparam">sessionid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_audit_login_uid</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>uid_t *<var class="pdparam">loginuid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_unique_name</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">name</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_well_known_names</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>char ***<var class="pdparam">name</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214179373600"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p>These functions return information from an
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="sd_bus_creds_get_pid"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_bus_creds_get_pid, sd_bus_creds_get_pid_starttime, sd_bus_creds_get_tid, sd_bus_creds_get_uid, sd_bus_creds_get_gid, sd_bus_creds_get_comm, sd_bus_creds_get_tid_comm, sd_bus_creds_get_exe, sd_bus_creds_get_cmdline, sd_bus_creds_get_cgroup, sd_bus_creds_get_unit, sd_bus_creds_get_user_unit, sd_bus_creds_get_slice, sd_bus_creds_get_session, sd_bus_creds_get_owner_uid, sd_bus_creds_has_effective_cap, sd_bus_creds_has_permitted_cap, sd_bus_creds_has_inheritable_cap, sd_bus_creds_has_bounding_cap, sd_bus_creds_get_selinux_context, sd_bus_creds_get_audit_session_id, sd_bus_creds_get_audit_login_uid, sd_bus_creds_get_unique_name, sd_bus_creds_get_well_known_names — Retrieve fields from a credentials object</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-bus.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_pid</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>pid_t *<var class="pdparam">pid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_pid_starttime</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>uint64_t *<var class="pdparam">usec</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_tid</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>pid_t *<var class="pdparam">tid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_pid</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>uid_t *<var class="pdparam">uid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_gid</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>gid_t *<var class="pdparam">gid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_comm</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">comm</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_tid_comm</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">comm</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_exe</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">exe</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_cmdline</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>char ***<var class="pdparam">cmdline</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_cgroup</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">cgroup</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_unit</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">unit</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_user_unit</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">unit</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_slice</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">slice</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_session</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">slice</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_owner_uid</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>uid_t *<var class="pdparam">uid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_has_effective_cap</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">capability</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_has_permitted_cap</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">capability</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_has_inheritable_cap</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">capability</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_has_bounding_cap</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">capability</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_selinux_context</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">context</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_audit_session_id</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>uint32_t *<var class="pdparam">sessionid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_audit_login_uid</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>uid_t *<var class="pdparam">loginuid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_unique_name</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">name</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_well_known_names</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>char ***<var class="pdparam">name</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214195952656"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p>These functions return information from an
     <em class="parameter"><code>sd_bus_creds</code></em> object. It may be created with
     <a href="sd_bus_creds_new_from_pid.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_creds_new_from_pid</span>(3)</span></a>,
     in which case it will describe the specified process, or it may be
     of strings. Each invidividual string is NUL-terminated, and the
     array is NULL-terminated as a whole. It will be valid as long as
     <em class="parameter"><code>c</code></em> remains valid, and should not be freed or
-    modified by the caller.</p></div><div class="refsect1"><a name="idm214179328320"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>On success, these calls return 0 or a positive integer. On
+    modified by the caller.</p></div><div class="refsect1"><a name="idm214195728128"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>On success, these calls return 0 or a positive integer. On
     failure, these calls return a negative errno-style error code.
-    </p></div><div class="refsect1"><a name="idm214179327024"></a><h2 id="Errors">Errors<a class="headerlink" title="Permalink to this headline" href="#Errors">¶</a></h2><p>Returned errors may indicate the following problems:</p><div class="variablelist"><dl class="variablelist"><dt id="-ENODATA"><span class="term"><code class="varname">-ENODATA</code></span><a class="headerlink" title="Permalink to this term" href="#-ENODATA">¶</a></dt><dd><p>Given field is not available in
+    </p></div><div class="refsect1"><a name="idm214195726800"></a><h2 id="Errors">Errors<a class="headerlink" title="Permalink to this headline" href="#Errors">¶</a></h2><p>Returned errors may indicate the following problems:</p><div class="variablelist"><dl class="variablelist"><dt id="-ENODATA"><span class="term"><code class="varname">-ENODATA</code></span><a class="headerlink" title="Permalink to this term" href="#-ENODATA">¶</a></dt><dd><p>Given field is not available in
         <em class="parameter"><code>c</code></em>.</p></dd><dt id="-ENOENT"><span class="term"><code class="varname">-ENOENT</code></span><a class="headerlink" title="Permalink to this term" href="#-ENOENT">¶</a></dt><dd><p>Given field is not specified for the sender.
         This will be returned by <code class="function">sd_bus_get_unit</code>,
         <code class="function">sd_bus_get_user_unit</code>,
         slice, logind session, or a systemd user session.</p></dd><dt id="-ENXIO"><span class="term"><code class="varname">-ENXIO</code></span><a class="headerlink" title="Permalink to this term" href="#-ENXIO">¶</a></dt><dd><p>An error occured in parsing cgroup paths.
         <code class="filename">libsystemd</code> might be out of sync with
         the running systemd version.</p></dd><dt id="-EINVAL"><span class="term"><code class="varname">-EINVAL</code></span><a class="headerlink" title="Permalink to this term" href="#-EINVAL">¶</a></dt><dd><p>Specified pointer parameter is <code class="constant">NULL</code>.
-        </p></dd><dt id="-ENOMEM"><span class="term"><code class="varname">-ENOMEM</code></span><a class="headerlink" title="Permalink to this term" href="#-ENOMEM">¶</a></dt><dd><p>Memory allocation failed.</p></dd></dl></div></div><div class="refsect1"><a name="idm214179313104"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p><code class="function">sd_bus_open_user()</code> and other functions
+        </p></dd><dt id="-ENOMEM"><span class="term"><code class="varname">-ENOMEM</code></span><a class="headerlink" title="Permalink to this term" href="#-ENOMEM">¶</a></dt><dd><p>Memory allocation failed.</p></dd></dl></div></div><div class="refsect1"><a name="idm214199611568"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p><code class="function">sd_bus_open_user()</code> and other functions
     described here are available as a shared library, which can be
     compiled and linked to with the
     <code class="constant">libsystemd</code> <a href="pkg-config.html"><span class="citerefentry"><span class="refentrytitle">pkg-config</span>(1)</span></a>
-    file.</p></div><div class="refsect1"><a name="idm214179310160"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+    file.</p></div><div class="refsect1"><a name="idm214199608400"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
       <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
       <a href="sd-bus.html"><span class="citerefentry"><span class="refentrytitle">sd-bus</span>(3)</span></a>,
       <a href="credentials.html"><span class="citerefentry"><span class="refentrytitle">credentials</span>(7)</span></a>,
index 4782ce6e05c82e1c452d8e659c088efbb67310ce..f9e3ba706bb0e6c41ca884ddb153b37772245621 100644 (file)
@@ -19,7 +19,7 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="sd_bus_creds_get_pid"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_bus_creds_get_pid, sd_bus_creds_get_pid_starttime, sd_bus_creds_get_tid, sd_bus_creds_get_uid, sd_bus_creds_get_gid, sd_bus_creds_get_comm, sd_bus_creds_get_tid_comm, sd_bus_creds_get_exe, sd_bus_creds_get_cmdline, sd_bus_creds_get_cgroup, sd_bus_creds_get_unit, sd_bus_creds_get_user_unit, sd_bus_creds_get_slice, sd_bus_creds_get_session, sd_bus_creds_get_owner_uid, sd_bus_creds_has_effective_cap, sd_bus_creds_has_permitted_cap, sd_bus_creds_has_inheritable_cap, sd_bus_creds_has_bounding_cap, sd_bus_creds_get_selinux_context, sd_bus_creds_get_audit_session_id, sd_bus_creds_get_audit_login_uid, sd_bus_creds_get_unique_name, sd_bus_creds_get_well_known_names — Retrieve fields from a credentials object</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-bus.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_pid</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>pid_t *<var class="pdparam">pid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_pid_starttime</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>uint64_t *<var class="pdparam">usec</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_tid</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>pid_t *<var class="pdparam">tid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_pid</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>uid_t *<var class="pdparam">uid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_gid</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>gid_t *<var class="pdparam">gid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_comm</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">comm</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_tid_comm</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">comm</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_exe</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">exe</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_cmdline</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>char ***<var class="pdparam">cmdline</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_cgroup</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">cgroup</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_unit</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">unit</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_user_unit</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">unit</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_slice</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">slice</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_session</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">slice</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_owner_uid</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>uid_t *<var class="pdparam">uid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_has_effective_cap</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">capability</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_has_permitted_cap</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">capability</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_has_inheritable_cap</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">capability</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_has_bounding_cap</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">capability</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_selinux_context</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">context</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_audit_session_id</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>uint32_t *<var class="pdparam">sessionid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_audit_login_uid</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>uid_t *<var class="pdparam">loginuid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_unique_name</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">name</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_well_known_names</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>char ***<var class="pdparam">name</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214179373600"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p>These functions return information from an
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="sd_bus_creds_get_pid"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_bus_creds_get_pid, sd_bus_creds_get_pid_starttime, sd_bus_creds_get_tid, sd_bus_creds_get_uid, sd_bus_creds_get_gid, sd_bus_creds_get_comm, sd_bus_creds_get_tid_comm, sd_bus_creds_get_exe, sd_bus_creds_get_cmdline, sd_bus_creds_get_cgroup, sd_bus_creds_get_unit, sd_bus_creds_get_user_unit, sd_bus_creds_get_slice, sd_bus_creds_get_session, sd_bus_creds_get_owner_uid, sd_bus_creds_has_effective_cap, sd_bus_creds_has_permitted_cap, sd_bus_creds_has_inheritable_cap, sd_bus_creds_has_bounding_cap, sd_bus_creds_get_selinux_context, sd_bus_creds_get_audit_session_id, sd_bus_creds_get_audit_login_uid, sd_bus_creds_get_unique_name, sd_bus_creds_get_well_known_names — Retrieve fields from a credentials object</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-bus.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_pid</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>pid_t *<var class="pdparam">pid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_pid_starttime</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>uint64_t *<var class="pdparam">usec</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_tid</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>pid_t *<var class="pdparam">tid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_pid</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>uid_t *<var class="pdparam">uid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_gid</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>gid_t *<var class="pdparam">gid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_comm</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">comm</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_tid_comm</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">comm</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_exe</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">exe</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_cmdline</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>char ***<var class="pdparam">cmdline</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_cgroup</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">cgroup</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_unit</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">unit</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_user_unit</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">unit</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_slice</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">slice</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_session</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">slice</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_owner_uid</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>uid_t *<var class="pdparam">uid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_has_effective_cap</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">capability</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_has_permitted_cap</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">capability</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_has_inheritable_cap</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">capability</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_has_bounding_cap</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">capability</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_selinux_context</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">context</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_audit_session_id</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>uint32_t *<var class="pdparam">sessionid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_audit_login_uid</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>uid_t *<var class="pdparam">loginuid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_unique_name</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">name</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_well_known_names</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>char ***<var class="pdparam">name</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214195952656"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p>These functions return information from an
     <em class="parameter"><code>sd_bus_creds</code></em> object. It may be created with
     <a href="sd_bus_creds_new_from_pid.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_creds_new_from_pid</span>(3)</span></a>,
     in which case it will describe the specified process, or it may be
     of strings. Each invidividual string is NUL-terminated, and the
     array is NULL-terminated as a whole. It will be valid as long as
     <em class="parameter"><code>c</code></em> remains valid, and should not be freed or
-    modified by the caller.</p></div><div class="refsect1"><a name="idm214179328320"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>On success, these calls return 0 or a positive integer. On
+    modified by the caller.</p></div><div class="refsect1"><a name="idm214195728128"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>On success, these calls return 0 or a positive integer. On
     failure, these calls return a negative errno-style error code.
-    </p></div><div class="refsect1"><a name="idm214179327024"></a><h2 id="Errors">Errors<a class="headerlink" title="Permalink to this headline" href="#Errors">¶</a></h2><p>Returned errors may indicate the following problems:</p><div class="variablelist"><dl class="variablelist"><dt id="-ENODATA"><span class="term"><code class="varname">-ENODATA</code></span><a class="headerlink" title="Permalink to this term" href="#-ENODATA">¶</a></dt><dd><p>Given field is not available in
+    </p></div><div class="refsect1"><a name="idm214195726800"></a><h2 id="Errors">Errors<a class="headerlink" title="Permalink to this headline" href="#Errors">¶</a></h2><p>Returned errors may indicate the following problems:</p><div class="variablelist"><dl class="variablelist"><dt id="-ENODATA"><span class="term"><code class="varname">-ENODATA</code></span><a class="headerlink" title="Permalink to this term" href="#-ENODATA">¶</a></dt><dd><p>Given field is not available in
         <em class="parameter"><code>c</code></em>.</p></dd><dt id="-ENOENT"><span class="term"><code class="varname">-ENOENT</code></span><a class="headerlink" title="Permalink to this term" href="#-ENOENT">¶</a></dt><dd><p>Given field is not specified for the sender.
         This will be returned by <code class="function">sd_bus_get_unit</code>,
         <code class="function">sd_bus_get_user_unit</code>,
         slice, logind session, or a systemd user session.</p></dd><dt id="-ENXIO"><span class="term"><code class="varname">-ENXIO</code></span><a class="headerlink" title="Permalink to this term" href="#-ENXIO">¶</a></dt><dd><p>An error occured in parsing cgroup paths.
         <code class="filename">libsystemd</code> might be out of sync with
         the running systemd version.</p></dd><dt id="-EINVAL"><span class="term"><code class="varname">-EINVAL</code></span><a class="headerlink" title="Permalink to this term" href="#-EINVAL">¶</a></dt><dd><p>Specified pointer parameter is <code class="constant">NULL</code>.
-        </p></dd><dt id="-ENOMEM"><span class="term"><code class="varname">-ENOMEM</code></span><a class="headerlink" title="Permalink to this term" href="#-ENOMEM">¶</a></dt><dd><p>Memory allocation failed.</p></dd></dl></div></div><div class="refsect1"><a name="idm214179313104"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p><code class="function">sd_bus_open_user()</code> and other functions
+        </p></dd><dt id="-ENOMEM"><span class="term"><code class="varname">-ENOMEM</code></span><a class="headerlink" title="Permalink to this term" href="#-ENOMEM">¶</a></dt><dd><p>Memory allocation failed.</p></dd></dl></div></div><div class="refsect1"><a name="idm214199611568"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p><code class="function">sd_bus_open_user()</code> and other functions
     described here are available as a shared library, which can be
     compiled and linked to with the
     <code class="constant">libsystemd</code> <a href="pkg-config.html"><span class="citerefentry"><span class="refentrytitle">pkg-config</span>(1)</span></a>
-    file.</p></div><div class="refsect1"><a name="idm214179310160"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+    file.</p></div><div class="refsect1"><a name="idm214199608400"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
       <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
       <a href="sd-bus.html"><span class="citerefentry"><span class="refentrytitle">sd-bus</span>(3)</span></a>,
       <a href="credentials.html"><span class="citerefentry"><span class="refentrytitle">credentials</span>(7)</span></a>,
index 4782ce6e05c82e1c452d8e659c088efbb67310ce..f9e3ba706bb0e6c41ca884ddb153b37772245621 100644 (file)
@@ -19,7 +19,7 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="sd_bus_creds_get_pid"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_bus_creds_get_pid, sd_bus_creds_get_pid_starttime, sd_bus_creds_get_tid, sd_bus_creds_get_uid, sd_bus_creds_get_gid, sd_bus_creds_get_comm, sd_bus_creds_get_tid_comm, sd_bus_creds_get_exe, sd_bus_creds_get_cmdline, sd_bus_creds_get_cgroup, sd_bus_creds_get_unit, sd_bus_creds_get_user_unit, sd_bus_creds_get_slice, sd_bus_creds_get_session, sd_bus_creds_get_owner_uid, sd_bus_creds_has_effective_cap, sd_bus_creds_has_permitted_cap, sd_bus_creds_has_inheritable_cap, sd_bus_creds_has_bounding_cap, sd_bus_creds_get_selinux_context, sd_bus_creds_get_audit_session_id, sd_bus_creds_get_audit_login_uid, sd_bus_creds_get_unique_name, sd_bus_creds_get_well_known_names — Retrieve fields from a credentials object</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-bus.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_pid</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>pid_t *<var class="pdparam">pid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_pid_starttime</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>uint64_t *<var class="pdparam">usec</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_tid</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>pid_t *<var class="pdparam">tid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_pid</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>uid_t *<var class="pdparam">uid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_gid</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>gid_t *<var class="pdparam">gid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_comm</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">comm</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_tid_comm</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">comm</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_exe</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">exe</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_cmdline</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>char ***<var class="pdparam">cmdline</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_cgroup</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">cgroup</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_unit</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">unit</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_user_unit</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">unit</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_slice</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">slice</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_session</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">slice</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_owner_uid</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>uid_t *<var class="pdparam">uid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_has_effective_cap</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">capability</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_has_permitted_cap</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">capability</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_has_inheritable_cap</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">capability</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_has_bounding_cap</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">capability</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_selinux_context</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">context</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_audit_session_id</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>uint32_t *<var class="pdparam">sessionid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_audit_login_uid</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>uid_t *<var class="pdparam">loginuid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_unique_name</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">name</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_well_known_names</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>char ***<var class="pdparam">name</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214179373600"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p>These functions return information from an
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="sd_bus_creds_get_pid"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_bus_creds_get_pid, sd_bus_creds_get_pid_starttime, sd_bus_creds_get_tid, sd_bus_creds_get_uid, sd_bus_creds_get_gid, sd_bus_creds_get_comm, sd_bus_creds_get_tid_comm, sd_bus_creds_get_exe, sd_bus_creds_get_cmdline, sd_bus_creds_get_cgroup, sd_bus_creds_get_unit, sd_bus_creds_get_user_unit, sd_bus_creds_get_slice, sd_bus_creds_get_session, sd_bus_creds_get_owner_uid, sd_bus_creds_has_effective_cap, sd_bus_creds_has_permitted_cap, sd_bus_creds_has_inheritable_cap, sd_bus_creds_has_bounding_cap, sd_bus_creds_get_selinux_context, sd_bus_creds_get_audit_session_id, sd_bus_creds_get_audit_login_uid, sd_bus_creds_get_unique_name, sd_bus_creds_get_well_known_names — Retrieve fields from a credentials object</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-bus.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_pid</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>pid_t *<var class="pdparam">pid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_pid_starttime</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>uint64_t *<var class="pdparam">usec</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_tid</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>pid_t *<var class="pdparam">tid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_pid</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>uid_t *<var class="pdparam">uid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_gid</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>gid_t *<var class="pdparam">gid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_comm</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">comm</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_tid_comm</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">comm</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_exe</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">exe</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_cmdline</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>char ***<var class="pdparam">cmdline</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_cgroup</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">cgroup</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_unit</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">unit</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_user_unit</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">unit</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_slice</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">slice</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_session</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">slice</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_owner_uid</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>uid_t *<var class="pdparam">uid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_has_effective_cap</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">capability</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_has_permitted_cap</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">capability</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_has_inheritable_cap</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">capability</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_has_bounding_cap</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">capability</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_selinux_context</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">context</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_audit_session_id</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>uint32_t *<var class="pdparam">sessionid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_audit_login_uid</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>uid_t *<var class="pdparam">loginuid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_unique_name</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">name</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_well_known_names</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>char ***<var class="pdparam">name</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214195952656"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p>These functions return information from an
     <em class="parameter"><code>sd_bus_creds</code></em> object. It may be created with
     <a href="sd_bus_creds_new_from_pid.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_creds_new_from_pid</span>(3)</span></a>,
     in which case it will describe the specified process, or it may be
     of strings. Each invidividual string is NUL-terminated, and the
     array is NULL-terminated as a whole. It will be valid as long as
     <em class="parameter"><code>c</code></em> remains valid, and should not be freed or
-    modified by the caller.</p></div><div class="refsect1"><a name="idm214179328320"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>On success, these calls return 0 or a positive integer. On
+    modified by the caller.</p></div><div class="refsect1"><a name="idm214195728128"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>On success, these calls return 0 or a positive integer. On
     failure, these calls return a negative errno-style error code.
-    </p></div><div class="refsect1"><a name="idm214179327024"></a><h2 id="Errors">Errors<a class="headerlink" title="Permalink to this headline" href="#Errors">¶</a></h2><p>Returned errors may indicate the following problems:</p><div class="variablelist"><dl class="variablelist"><dt id="-ENODATA"><span class="term"><code class="varname">-ENODATA</code></span><a class="headerlink" title="Permalink to this term" href="#-ENODATA">¶</a></dt><dd><p>Given field is not available in
+    </p></div><div class="refsect1"><a name="idm214195726800"></a><h2 id="Errors">Errors<a class="headerlink" title="Permalink to this headline" href="#Errors">¶</a></h2><p>Returned errors may indicate the following problems:</p><div class="variablelist"><dl class="variablelist"><dt id="-ENODATA"><span class="term"><code class="varname">-ENODATA</code></span><a class="headerlink" title="Permalink to this term" href="#-ENODATA">¶</a></dt><dd><p>Given field is not available in
         <em class="parameter"><code>c</code></em>.</p></dd><dt id="-ENOENT"><span class="term"><code class="varname">-ENOENT</code></span><a class="headerlink" title="Permalink to this term" href="#-ENOENT">¶</a></dt><dd><p>Given field is not specified for the sender.
         This will be returned by <code class="function">sd_bus_get_unit</code>,
         <code class="function">sd_bus_get_user_unit</code>,
         slice, logind session, or a systemd user session.</p></dd><dt id="-ENXIO"><span class="term"><code class="varname">-ENXIO</code></span><a class="headerlink" title="Permalink to this term" href="#-ENXIO">¶</a></dt><dd><p>An error occured in parsing cgroup paths.
         <code class="filename">libsystemd</code> might be out of sync with
         the running systemd version.</p></dd><dt id="-EINVAL"><span class="term"><code class="varname">-EINVAL</code></span><a class="headerlink" title="Permalink to this term" href="#-EINVAL">¶</a></dt><dd><p>Specified pointer parameter is <code class="constant">NULL</code>.
-        </p></dd><dt id="-ENOMEM"><span class="term"><code class="varname">-ENOMEM</code></span><a class="headerlink" title="Permalink to this term" href="#-ENOMEM">¶</a></dt><dd><p>Memory allocation failed.</p></dd></dl></div></div><div class="refsect1"><a name="idm214179313104"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p><code class="function">sd_bus_open_user()</code> and other functions
+        </p></dd><dt id="-ENOMEM"><span class="term"><code class="varname">-ENOMEM</code></span><a class="headerlink" title="Permalink to this term" href="#-ENOMEM">¶</a></dt><dd><p>Memory allocation failed.</p></dd></dl></div></div><div class="refsect1"><a name="idm214199611568"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p><code class="function">sd_bus_open_user()</code> and other functions
     described here are available as a shared library, which can be
     compiled and linked to with the
     <code class="constant">libsystemd</code> <a href="pkg-config.html"><span class="citerefentry"><span class="refentrytitle">pkg-config</span>(1)</span></a>
-    file.</p></div><div class="refsect1"><a name="idm214179310160"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+    file.</p></div><div class="refsect1"><a name="idm214199608400"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
       <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
       <a href="sd-bus.html"><span class="citerefentry"><span class="refentrytitle">sd-bus</span>(3)</span></a>,
       <a href="credentials.html"><span class="citerefentry"><span class="refentrytitle">credentials</span>(7)</span></a>,
index 4782ce6e05c82e1c452d8e659c088efbb67310ce..f9e3ba706bb0e6c41ca884ddb153b37772245621 100644 (file)
@@ -19,7 +19,7 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="sd_bus_creds_get_pid"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_bus_creds_get_pid, sd_bus_creds_get_pid_starttime, sd_bus_creds_get_tid, sd_bus_creds_get_uid, sd_bus_creds_get_gid, sd_bus_creds_get_comm, sd_bus_creds_get_tid_comm, sd_bus_creds_get_exe, sd_bus_creds_get_cmdline, sd_bus_creds_get_cgroup, sd_bus_creds_get_unit, sd_bus_creds_get_user_unit, sd_bus_creds_get_slice, sd_bus_creds_get_session, sd_bus_creds_get_owner_uid, sd_bus_creds_has_effective_cap, sd_bus_creds_has_permitted_cap, sd_bus_creds_has_inheritable_cap, sd_bus_creds_has_bounding_cap, sd_bus_creds_get_selinux_context, sd_bus_creds_get_audit_session_id, sd_bus_creds_get_audit_login_uid, sd_bus_creds_get_unique_name, sd_bus_creds_get_well_known_names — Retrieve fields from a credentials object</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-bus.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_pid</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>pid_t *<var class="pdparam">pid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_pid_starttime</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>uint64_t *<var class="pdparam">usec</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_tid</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>pid_t *<var class="pdparam">tid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_pid</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>uid_t *<var class="pdparam">uid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_gid</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>gid_t *<var class="pdparam">gid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_comm</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">comm</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_tid_comm</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">comm</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_exe</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">exe</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_cmdline</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>char ***<var class="pdparam">cmdline</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_cgroup</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">cgroup</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_unit</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">unit</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_user_unit</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">unit</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_slice</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">slice</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_session</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">slice</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_owner_uid</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>uid_t *<var class="pdparam">uid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_has_effective_cap</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">capability</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_has_permitted_cap</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">capability</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_has_inheritable_cap</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">capability</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_has_bounding_cap</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">capability</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_selinux_context</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">context</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_audit_session_id</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>uint32_t *<var class="pdparam">sessionid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_audit_login_uid</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>uid_t *<var class="pdparam">loginuid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_unique_name</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">name</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_well_known_names</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>char ***<var class="pdparam">name</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214179373600"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p>These functions return information from an
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="sd_bus_creds_get_pid"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_bus_creds_get_pid, sd_bus_creds_get_pid_starttime, sd_bus_creds_get_tid, sd_bus_creds_get_uid, sd_bus_creds_get_gid, sd_bus_creds_get_comm, sd_bus_creds_get_tid_comm, sd_bus_creds_get_exe, sd_bus_creds_get_cmdline, sd_bus_creds_get_cgroup, sd_bus_creds_get_unit, sd_bus_creds_get_user_unit, sd_bus_creds_get_slice, sd_bus_creds_get_session, sd_bus_creds_get_owner_uid, sd_bus_creds_has_effective_cap, sd_bus_creds_has_permitted_cap, sd_bus_creds_has_inheritable_cap, sd_bus_creds_has_bounding_cap, sd_bus_creds_get_selinux_context, sd_bus_creds_get_audit_session_id, sd_bus_creds_get_audit_login_uid, sd_bus_creds_get_unique_name, sd_bus_creds_get_well_known_names — Retrieve fields from a credentials object</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-bus.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_pid</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>pid_t *<var class="pdparam">pid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_pid_starttime</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>uint64_t *<var class="pdparam">usec</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_tid</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>pid_t *<var class="pdparam">tid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_pid</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>uid_t *<var class="pdparam">uid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_gid</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>gid_t *<var class="pdparam">gid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_comm</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">comm</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_tid_comm</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">comm</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_exe</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">exe</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_cmdline</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>char ***<var class="pdparam">cmdline</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_cgroup</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">cgroup</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_unit</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">unit</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_user_unit</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">unit</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_slice</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">slice</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_session</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">slice</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_owner_uid</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>uid_t *<var class="pdparam">uid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_has_effective_cap</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">capability</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_has_permitted_cap</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">capability</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_has_inheritable_cap</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">capability</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_has_bounding_cap</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">capability</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_selinux_context</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">context</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_audit_session_id</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>uint32_t *<var class="pdparam">sessionid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_audit_login_uid</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>uid_t *<var class="pdparam">loginuid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_unique_name</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">name</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_well_known_names</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>char ***<var class="pdparam">name</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214195952656"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p>These functions return information from an
     <em class="parameter"><code>sd_bus_creds</code></em> object. It may be created with
     <a href="sd_bus_creds_new_from_pid.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_creds_new_from_pid</span>(3)</span></a>,
     in which case it will describe the specified process, or it may be
     of strings. Each invidividual string is NUL-terminated, and the
     array is NULL-terminated as a whole. It will be valid as long as
     <em class="parameter"><code>c</code></em> remains valid, and should not be freed or
-    modified by the caller.</p></div><div class="refsect1"><a name="idm214179328320"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>On success, these calls return 0 or a positive integer. On
+    modified by the caller.</p></div><div class="refsect1"><a name="idm214195728128"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>On success, these calls return 0 or a positive integer. On
     failure, these calls return a negative errno-style error code.
-    </p></div><div class="refsect1"><a name="idm214179327024"></a><h2 id="Errors">Errors<a class="headerlink" title="Permalink to this headline" href="#Errors">¶</a></h2><p>Returned errors may indicate the following problems:</p><div class="variablelist"><dl class="variablelist"><dt id="-ENODATA"><span class="term"><code class="varname">-ENODATA</code></span><a class="headerlink" title="Permalink to this term" href="#-ENODATA">¶</a></dt><dd><p>Given field is not available in
+    </p></div><div class="refsect1"><a name="idm214195726800"></a><h2 id="Errors">Errors<a class="headerlink" title="Permalink to this headline" href="#Errors">¶</a></h2><p>Returned errors may indicate the following problems:</p><div class="variablelist"><dl class="variablelist"><dt id="-ENODATA"><span class="term"><code class="varname">-ENODATA</code></span><a class="headerlink" title="Permalink to this term" href="#-ENODATA">¶</a></dt><dd><p>Given field is not available in
         <em class="parameter"><code>c</code></em>.</p></dd><dt id="-ENOENT"><span class="term"><code class="varname">-ENOENT</code></span><a class="headerlink" title="Permalink to this term" href="#-ENOENT">¶</a></dt><dd><p>Given field is not specified for the sender.
         This will be returned by <code class="function">sd_bus_get_unit</code>,
         <code class="function">sd_bus_get_user_unit</code>,
         slice, logind session, or a systemd user session.</p></dd><dt id="-ENXIO"><span class="term"><code class="varname">-ENXIO</code></span><a class="headerlink" title="Permalink to this term" href="#-ENXIO">¶</a></dt><dd><p>An error occured in parsing cgroup paths.
         <code class="filename">libsystemd</code> might be out of sync with
         the running systemd version.</p></dd><dt id="-EINVAL"><span class="term"><code class="varname">-EINVAL</code></span><a class="headerlink" title="Permalink to this term" href="#-EINVAL">¶</a></dt><dd><p>Specified pointer parameter is <code class="constant">NULL</code>.
-        </p></dd><dt id="-ENOMEM"><span class="term"><code class="varname">-ENOMEM</code></span><a class="headerlink" title="Permalink to this term" href="#-ENOMEM">¶</a></dt><dd><p>Memory allocation failed.</p></dd></dl></div></div><div class="refsect1"><a name="idm214179313104"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p><code class="function">sd_bus_open_user()</code> and other functions
+        </p></dd><dt id="-ENOMEM"><span class="term"><code class="varname">-ENOMEM</code></span><a class="headerlink" title="Permalink to this term" href="#-ENOMEM">¶</a></dt><dd><p>Memory allocation failed.</p></dd></dl></div></div><div class="refsect1"><a name="idm214199611568"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p><code class="function">sd_bus_open_user()</code> and other functions
     described here are available as a shared library, which can be
     compiled and linked to with the
     <code class="constant">libsystemd</code> <a href="pkg-config.html"><span class="citerefentry"><span class="refentrytitle">pkg-config</span>(1)</span></a>
-    file.</p></div><div class="refsect1"><a name="idm214179310160"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+    file.</p></div><div class="refsect1"><a name="idm214199608400"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
       <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
       <a href="sd-bus.html"><span class="citerefentry"><span class="refentrytitle">sd-bus</span>(3)</span></a>,
       <a href="credentials.html"><span class="citerefentry"><span class="refentrytitle">credentials</span>(7)</span></a>,
index de250c0f6a53b8fb94eea39b858b153f173507c0..b5a8a645f199d4dbc676ae2a155882a67b0a03b6 100644 (file)
@@ -19,7 +19,7 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="sd_bus_creds_new_from_pid"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_bus_creds_new_from_pid, sd_bus_creds_get_mask, sd_bus_creds_ref, sd_bus_creds_unref — Retrieve credentials object for the specified PID</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-bus.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_new_from_pid</b>(</code></td><td>pid_t <var class="pdparam">pid</var>, </td></tr><tr><td> </td><td>uint64_t <var class="pdparam">creds_mask</var>, </td></tr><tr><td> </td><td>sd_bus_creds **<var class="pdparam">ret</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">uint64_t <b class="fsfunc">sd_bus_creds_get_mask</b>(</code></td><td>const sd_bus_creds *<var class="pdparam">c</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">sd_bus_creds *<b class="fsfunc">sd_bus_creds_ref</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">sd_bus_creds *<b class="fsfunc">sd_bus_creds_unref</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div><p>
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="sd_bus_creds_new_from_pid"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_bus_creds_new_from_pid, sd_bus_creds_get_mask, sd_bus_creds_ref, sd_bus_creds_unref — Retrieve credentials object for the specified PID</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-bus.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_new_from_pid</b>(</code></td><td>pid_t <var class="pdparam">pid</var>, </td></tr><tr><td> </td><td>uint64_t <var class="pdparam">creds_mask</var>, </td></tr><tr><td> </td><td>sd_bus_creds **<var class="pdparam">ret</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">uint64_t <b class="fsfunc">sd_bus_creds_get_mask</b>(</code></td><td>const sd_bus_creds *<var class="pdparam">c</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">sd_bus_creds *<b class="fsfunc">sd_bus_creds_ref</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">sd_bus_creds *<b class="fsfunc">sd_bus_creds_unref</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div><p>
       <code class="constant">SD_BUS_CREDS_PID</code>,
       <code class="constant">SD_BUS_CREDS_PID_STARTTIME</code>,
       <code class="constant">SD_BUS_CREDS_TID</code>,
@@ -45,7 +45,7 @@
       <code class="constant">SD_BUS_CREDS_UNIQUE_NAME</code>,
       <code class="constant">SD_BUS_CREDS_WELL_KNOWN_NAMES</code>,
       <code class="constant">_SD_BUS_CREDS_ALL</code>
-    </p></div><div class="refsect1"><a name="idm214173440304"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_bus_creds_new_from_pid()</code> creates a new
+    </p></div><div class="refsect1"><a name="idm214194089696"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_bus_creds_new_from_pid()</code> creates a new
     credentials object and fills it with information about the process
     <em class="parameter"><code>pid</code></em>. This pointer to this object will
     be stored in <em class="parameter"><code>ret</code></em> pointer.</p><p>The information that will be stored is determined by
     <em class="parameter"><code>c</code></em> cannot be used anymore, so futher
     calls to <code class="function">sd_bus_creds_ref(c)</code> or
     <code class="function">sd_bus_creds_unref(c)</code> are illegal.</p><p><code class="function">sd_bus_creds_unref</code> destroys a reference
-    to <em class="parameter"><code>c</code></em>.</p></div><div class="refsect1"><a name="idm214173406800"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>On success, <code class="function">sd_bus_creds_new_from_pid()</code>
+    to <em class="parameter"><code>c</code></em>.</p></div><div class="refsect1"><a name="idm214195301216"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>On success, <code class="function">sd_bus_creds_new_from_pid()</code>
     returns 0 or a positive integer. On failure, it returns a negative
     errno-style error code.</p><p><code class="function">sd_bus_creds_get_mask()</code> returns the
     mask of successfully acquired fields.</p><p><code class="function">sd_bus_creds_ref</code> always returns the
     argument.</p><p><code class="function">sd_bus_creds_unref</code> always returns
-    <code class="constant">NULL</code>.</p></div><div class="refsect1"><a name="idm214173401440"></a><h2 id="Reference ownership">Reference ownership<a class="headerlink" title="Permalink to this headline" href="#Reference%20ownership">¶</a></h2><p>Function <code class="function">sd_bus_creds_new_from_pid()</code>
+    <code class="constant">NULL</code>.</p></div><div class="refsect1"><a name="idm214195571728"></a><h2 id="Reference ownership">Reference ownership<a class="headerlink" title="Permalink to this headline" href="#Reference%20ownership">¶</a></h2><p>Function <code class="function">sd_bus_creds_new_from_pid()</code>
     creates a new object and the caller owns the sole reference. When
     not needed anymore, this reference should be destroyed with
     <a href="sd_bus_creds_unref.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_creds_unref</span>(3)</span></a>.
-    </p></div><div class="refsect1"><a name="idm214173398528"></a><h2 id="Errors">Errors<a class="headerlink" title="Permalink to this headline" href="#Errors">¶</a></h2><p>Returned errors may indicate the following problems:</p><div class="variablelist"><dl class="variablelist"><dt id="-ESRCH"><span class="term"><code class="varname">-ESRCH</code></span><a class="headerlink" title="Permalink to this term" href="#-ESRCH">¶</a></dt><dd><p>Specified <em class="parameter"><code>pid</code></em> could not
+    </p></div><div class="refsect1"><a name="idm214194091024"></a><h2 id="Errors">Errors<a class="headerlink" title="Permalink to this headline" href="#Errors">¶</a></h2><p>Returned errors may indicate the following problems:</p><div class="variablelist"><dl class="variablelist"><dt id="-ESRCH"><span class="term"><code class="varname">-ESRCH</code></span><a class="headerlink" title="Permalink to this term" href="#-ESRCH">¶</a></dt><dd><p>Specified <em class="parameter"><code>pid</code></em> could not
         be found.</p></dd><dt id="-EINVAL"><span class="term"><code class="varname">-EINVAL</code></span><a class="headerlink" title="Permalink to this term" href="#-EINVAL">¶</a></dt><dd><p>Specified parameter is invalid
         (<code class="constant">NULL</code> in case of output
-        parameters).</p></dd><dt id="-ENOMEM"><span class="term"><code class="varname">-ENOMEM</code></span><a class="headerlink" title="Permalink to this term" href="#-ENOMEM">¶</a></dt><dd><p>Memory allocation failed.</p></dd></dl></div></div><div class="refsect1"><a name="idm214168765600"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p><code class="function">sd_bus_creds_new_from_pid()</code> is
+        parameters).</p></dd><dt id="-ENOMEM"><span class="term"><code class="varname">-ENOMEM</code></span><a class="headerlink" title="Permalink to this term" href="#-ENOMEM">¶</a></dt><dd><p>Memory allocation failed.</p></dd></dl></div></div><div class="refsect1"><a name="idm214194042464"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p><code class="function">sd_bus_creds_new_from_pid()</code> is
     available as a shared library, which can be compiled and linked to
     with the
     <code class="constant">libsystemd</code> <a href="pkg-config.html"><span class="citerefentry"><span class="refentrytitle">pkg-config</span>(1)</span></a>
-    file.</p></div><div class="refsect1"><a name="idm214168762688"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+    file.</p></div><div class="refsect1"><a name="idm214195915504"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
       <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
       <a href="sd-bus.html"><span class="citerefentry"><span class="refentrytitle">sd-bus</span>(3)</span></a>,
       <a href="sd_bus_creds_ref.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_creds_ref</span>(3)</span></a>,
index 4782ce6e05c82e1c452d8e659c088efbb67310ce..f9e3ba706bb0e6c41ca884ddb153b37772245621 100644 (file)
@@ -19,7 +19,7 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="sd_bus_creds_get_pid"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_bus_creds_get_pid, sd_bus_creds_get_pid_starttime, sd_bus_creds_get_tid, sd_bus_creds_get_uid, sd_bus_creds_get_gid, sd_bus_creds_get_comm, sd_bus_creds_get_tid_comm, sd_bus_creds_get_exe, sd_bus_creds_get_cmdline, sd_bus_creds_get_cgroup, sd_bus_creds_get_unit, sd_bus_creds_get_user_unit, sd_bus_creds_get_slice, sd_bus_creds_get_session, sd_bus_creds_get_owner_uid, sd_bus_creds_has_effective_cap, sd_bus_creds_has_permitted_cap, sd_bus_creds_has_inheritable_cap, sd_bus_creds_has_bounding_cap, sd_bus_creds_get_selinux_context, sd_bus_creds_get_audit_session_id, sd_bus_creds_get_audit_login_uid, sd_bus_creds_get_unique_name, sd_bus_creds_get_well_known_names — Retrieve fields from a credentials object</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-bus.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_pid</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>pid_t *<var class="pdparam">pid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_pid_starttime</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>uint64_t *<var class="pdparam">usec</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_tid</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>pid_t *<var class="pdparam">tid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_pid</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>uid_t *<var class="pdparam">uid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_gid</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>gid_t *<var class="pdparam">gid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_comm</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">comm</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_tid_comm</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">comm</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_exe</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">exe</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_cmdline</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>char ***<var class="pdparam">cmdline</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_cgroup</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">cgroup</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_unit</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">unit</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_user_unit</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">unit</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_slice</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">slice</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_session</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">slice</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_owner_uid</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>uid_t *<var class="pdparam">uid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_has_effective_cap</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">capability</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_has_permitted_cap</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">capability</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_has_inheritable_cap</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">capability</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_has_bounding_cap</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">capability</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_selinux_context</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">context</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_audit_session_id</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>uint32_t *<var class="pdparam">sessionid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_audit_login_uid</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>uid_t *<var class="pdparam">loginuid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_unique_name</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">name</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_well_known_names</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>char ***<var class="pdparam">name</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214179373600"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p>These functions return information from an
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="sd_bus_creds_get_pid"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_bus_creds_get_pid, sd_bus_creds_get_pid_starttime, sd_bus_creds_get_tid, sd_bus_creds_get_uid, sd_bus_creds_get_gid, sd_bus_creds_get_comm, sd_bus_creds_get_tid_comm, sd_bus_creds_get_exe, sd_bus_creds_get_cmdline, sd_bus_creds_get_cgroup, sd_bus_creds_get_unit, sd_bus_creds_get_user_unit, sd_bus_creds_get_slice, sd_bus_creds_get_session, sd_bus_creds_get_owner_uid, sd_bus_creds_has_effective_cap, sd_bus_creds_has_permitted_cap, sd_bus_creds_has_inheritable_cap, sd_bus_creds_has_bounding_cap, sd_bus_creds_get_selinux_context, sd_bus_creds_get_audit_session_id, sd_bus_creds_get_audit_login_uid, sd_bus_creds_get_unique_name, sd_bus_creds_get_well_known_names — Retrieve fields from a credentials object</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-bus.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_pid</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>pid_t *<var class="pdparam">pid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_pid_starttime</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>uint64_t *<var class="pdparam">usec</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_tid</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>pid_t *<var class="pdparam">tid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_pid</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>uid_t *<var class="pdparam">uid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_gid</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>gid_t *<var class="pdparam">gid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_comm</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">comm</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_tid_comm</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">comm</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_exe</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">exe</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_cmdline</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>char ***<var class="pdparam">cmdline</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_cgroup</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">cgroup</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_unit</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">unit</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_user_unit</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">unit</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_slice</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">slice</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_session</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">slice</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_owner_uid</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>uid_t *<var class="pdparam">uid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_has_effective_cap</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">capability</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_has_permitted_cap</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">capability</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_has_inheritable_cap</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">capability</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_has_bounding_cap</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">capability</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_selinux_context</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">context</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_audit_session_id</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>uint32_t *<var class="pdparam">sessionid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_audit_login_uid</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>uid_t *<var class="pdparam">loginuid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_unique_name</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">name</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_well_known_names</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>char ***<var class="pdparam">name</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214195952656"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p>These functions return information from an
     <em class="parameter"><code>sd_bus_creds</code></em> object. It may be created with
     <a href="sd_bus_creds_new_from_pid.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_creds_new_from_pid</span>(3)</span></a>,
     in which case it will describe the specified process, or it may be
     of strings. Each invidividual string is NUL-terminated, and the
     array is NULL-terminated as a whole. It will be valid as long as
     <em class="parameter"><code>c</code></em> remains valid, and should not be freed or
-    modified by the caller.</p></div><div class="refsect1"><a name="idm214179328320"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>On success, these calls return 0 or a positive integer. On
+    modified by the caller.</p></div><div class="refsect1"><a name="idm214195728128"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>On success, these calls return 0 or a positive integer. On
     failure, these calls return a negative errno-style error code.
-    </p></div><div class="refsect1"><a name="idm214179327024"></a><h2 id="Errors">Errors<a class="headerlink" title="Permalink to this headline" href="#Errors">¶</a></h2><p>Returned errors may indicate the following problems:</p><div class="variablelist"><dl class="variablelist"><dt id="-ENODATA"><span class="term"><code class="varname">-ENODATA</code></span><a class="headerlink" title="Permalink to this term" href="#-ENODATA">¶</a></dt><dd><p>Given field is not available in
+    </p></div><div class="refsect1"><a name="idm214195726800"></a><h2 id="Errors">Errors<a class="headerlink" title="Permalink to this headline" href="#Errors">¶</a></h2><p>Returned errors may indicate the following problems:</p><div class="variablelist"><dl class="variablelist"><dt id="-ENODATA"><span class="term"><code class="varname">-ENODATA</code></span><a class="headerlink" title="Permalink to this term" href="#-ENODATA">¶</a></dt><dd><p>Given field is not available in
         <em class="parameter"><code>c</code></em>.</p></dd><dt id="-ENOENT"><span class="term"><code class="varname">-ENOENT</code></span><a class="headerlink" title="Permalink to this term" href="#-ENOENT">¶</a></dt><dd><p>Given field is not specified for the sender.
         This will be returned by <code class="function">sd_bus_get_unit</code>,
         <code class="function">sd_bus_get_user_unit</code>,
         slice, logind session, or a systemd user session.</p></dd><dt id="-ENXIO"><span class="term"><code class="varname">-ENXIO</code></span><a class="headerlink" title="Permalink to this term" href="#-ENXIO">¶</a></dt><dd><p>An error occured in parsing cgroup paths.
         <code class="filename">libsystemd</code> might be out of sync with
         the running systemd version.</p></dd><dt id="-EINVAL"><span class="term"><code class="varname">-EINVAL</code></span><a class="headerlink" title="Permalink to this term" href="#-EINVAL">¶</a></dt><dd><p>Specified pointer parameter is <code class="constant">NULL</code>.
-        </p></dd><dt id="-ENOMEM"><span class="term"><code class="varname">-ENOMEM</code></span><a class="headerlink" title="Permalink to this term" href="#-ENOMEM">¶</a></dt><dd><p>Memory allocation failed.</p></dd></dl></div></div><div class="refsect1"><a name="idm214179313104"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p><code class="function">sd_bus_open_user()</code> and other functions
+        </p></dd><dt id="-ENOMEM"><span class="term"><code class="varname">-ENOMEM</code></span><a class="headerlink" title="Permalink to this term" href="#-ENOMEM">¶</a></dt><dd><p>Memory allocation failed.</p></dd></dl></div></div><div class="refsect1"><a name="idm214199611568"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p><code class="function">sd_bus_open_user()</code> and other functions
     described here are available as a shared library, which can be
     compiled and linked to with the
     <code class="constant">libsystemd</code> <a href="pkg-config.html"><span class="citerefentry"><span class="refentrytitle">pkg-config</span>(1)</span></a>
-    file.</p></div><div class="refsect1"><a name="idm214179310160"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+    file.</p></div><div class="refsect1"><a name="idm214199608400"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
       <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
       <a href="sd-bus.html"><span class="citerefentry"><span class="refentrytitle">sd-bus</span>(3)</span></a>,
       <a href="credentials.html"><span class="citerefentry"><span class="refentrytitle">credentials</span>(7)</span></a>,
index a3e73cc89071cb258cd7ed56b295af9e523af0fe..669f0024e2d7fb18ab5da6175380971cb1f4c524 100644 (file)
@@ -1,5 +1,5 @@
 '\" t
-.TH "SD_BUS_CREDS_GET_PID" "3" "" "systemd 214" "sd_bus_creds_get_pid"
+.TH "SD_BUS_CREDS_GET_PID" "3" "" "systemd 215" "sd_bus_creds_get_pid"
 .\" -----------------------------------------------------------------
 .\" * Define some portability stuff
 .\" -----------------------------------------------------------------
index 4782ce6e05c82e1c452d8e659c088efbb67310ce..f9e3ba706bb0e6c41ca884ddb153b37772245621 100644 (file)
@@ -19,7 +19,7 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="sd_bus_creds_get_pid"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_bus_creds_get_pid, sd_bus_creds_get_pid_starttime, sd_bus_creds_get_tid, sd_bus_creds_get_uid, sd_bus_creds_get_gid, sd_bus_creds_get_comm, sd_bus_creds_get_tid_comm, sd_bus_creds_get_exe, sd_bus_creds_get_cmdline, sd_bus_creds_get_cgroup, sd_bus_creds_get_unit, sd_bus_creds_get_user_unit, sd_bus_creds_get_slice, sd_bus_creds_get_session, sd_bus_creds_get_owner_uid, sd_bus_creds_has_effective_cap, sd_bus_creds_has_permitted_cap, sd_bus_creds_has_inheritable_cap, sd_bus_creds_has_bounding_cap, sd_bus_creds_get_selinux_context, sd_bus_creds_get_audit_session_id, sd_bus_creds_get_audit_login_uid, sd_bus_creds_get_unique_name, sd_bus_creds_get_well_known_names — Retrieve fields from a credentials object</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-bus.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_pid</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>pid_t *<var class="pdparam">pid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_pid_starttime</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>uint64_t *<var class="pdparam">usec</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_tid</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>pid_t *<var class="pdparam">tid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_pid</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>uid_t *<var class="pdparam">uid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_gid</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>gid_t *<var class="pdparam">gid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_comm</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">comm</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_tid_comm</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">comm</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_exe</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">exe</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_cmdline</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>char ***<var class="pdparam">cmdline</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_cgroup</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">cgroup</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_unit</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">unit</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_user_unit</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">unit</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_slice</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">slice</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_session</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">slice</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_owner_uid</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>uid_t *<var class="pdparam">uid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_has_effective_cap</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">capability</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_has_permitted_cap</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">capability</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_has_inheritable_cap</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">capability</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_has_bounding_cap</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">capability</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_selinux_context</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">context</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_audit_session_id</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>uint32_t *<var class="pdparam">sessionid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_audit_login_uid</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>uid_t *<var class="pdparam">loginuid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_unique_name</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">name</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_well_known_names</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>char ***<var class="pdparam">name</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214179373600"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p>These functions return information from an
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="sd_bus_creds_get_pid"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_bus_creds_get_pid, sd_bus_creds_get_pid_starttime, sd_bus_creds_get_tid, sd_bus_creds_get_uid, sd_bus_creds_get_gid, sd_bus_creds_get_comm, sd_bus_creds_get_tid_comm, sd_bus_creds_get_exe, sd_bus_creds_get_cmdline, sd_bus_creds_get_cgroup, sd_bus_creds_get_unit, sd_bus_creds_get_user_unit, sd_bus_creds_get_slice, sd_bus_creds_get_session, sd_bus_creds_get_owner_uid, sd_bus_creds_has_effective_cap, sd_bus_creds_has_permitted_cap, sd_bus_creds_has_inheritable_cap, sd_bus_creds_has_bounding_cap, sd_bus_creds_get_selinux_context, sd_bus_creds_get_audit_session_id, sd_bus_creds_get_audit_login_uid, sd_bus_creds_get_unique_name, sd_bus_creds_get_well_known_names — Retrieve fields from a credentials object</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-bus.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_pid</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>pid_t *<var class="pdparam">pid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_pid_starttime</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>uint64_t *<var class="pdparam">usec</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_tid</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>pid_t *<var class="pdparam">tid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_pid</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>uid_t *<var class="pdparam">uid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_gid</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>gid_t *<var class="pdparam">gid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_comm</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">comm</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_tid_comm</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">comm</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_exe</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">exe</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_cmdline</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>char ***<var class="pdparam">cmdline</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_cgroup</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">cgroup</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_unit</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">unit</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_user_unit</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">unit</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_slice</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">slice</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_session</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">slice</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_owner_uid</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>uid_t *<var class="pdparam">uid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_has_effective_cap</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">capability</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_has_permitted_cap</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">capability</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_has_inheritable_cap</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">capability</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_has_bounding_cap</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">capability</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_selinux_context</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">context</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_audit_session_id</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>uint32_t *<var class="pdparam">sessionid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_audit_login_uid</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>uid_t *<var class="pdparam">loginuid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_unique_name</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">name</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_well_known_names</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>char ***<var class="pdparam">name</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214195952656"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p>These functions return information from an
     <em class="parameter"><code>sd_bus_creds</code></em> object. It may be created with
     <a href="sd_bus_creds_new_from_pid.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_creds_new_from_pid</span>(3)</span></a>,
     in which case it will describe the specified process, or it may be
     of strings. Each invidividual string is NUL-terminated, and the
     array is NULL-terminated as a whole. It will be valid as long as
     <em class="parameter"><code>c</code></em> remains valid, and should not be freed or
-    modified by the caller.</p></div><div class="refsect1"><a name="idm214179328320"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>On success, these calls return 0 or a positive integer. On
+    modified by the caller.</p></div><div class="refsect1"><a name="idm214195728128"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>On success, these calls return 0 or a positive integer. On
     failure, these calls return a negative errno-style error code.
-    </p></div><div class="refsect1"><a name="idm214179327024"></a><h2 id="Errors">Errors<a class="headerlink" title="Permalink to this headline" href="#Errors">¶</a></h2><p>Returned errors may indicate the following problems:</p><div class="variablelist"><dl class="variablelist"><dt id="-ENODATA"><span class="term"><code class="varname">-ENODATA</code></span><a class="headerlink" title="Permalink to this term" href="#-ENODATA">¶</a></dt><dd><p>Given field is not available in
+    </p></div><div class="refsect1"><a name="idm214195726800"></a><h2 id="Errors">Errors<a class="headerlink" title="Permalink to this headline" href="#Errors">¶</a></h2><p>Returned errors may indicate the following problems:</p><div class="variablelist"><dl class="variablelist"><dt id="-ENODATA"><span class="term"><code class="varname">-ENODATA</code></span><a class="headerlink" title="Permalink to this term" href="#-ENODATA">¶</a></dt><dd><p>Given field is not available in
         <em class="parameter"><code>c</code></em>.</p></dd><dt id="-ENOENT"><span class="term"><code class="varname">-ENOENT</code></span><a class="headerlink" title="Permalink to this term" href="#-ENOENT">¶</a></dt><dd><p>Given field is not specified for the sender.
         This will be returned by <code class="function">sd_bus_get_unit</code>,
         <code class="function">sd_bus_get_user_unit</code>,
         slice, logind session, or a systemd user session.</p></dd><dt id="-ENXIO"><span class="term"><code class="varname">-ENXIO</code></span><a class="headerlink" title="Permalink to this term" href="#-ENXIO">¶</a></dt><dd><p>An error occured in parsing cgroup paths.
         <code class="filename">libsystemd</code> might be out of sync with
         the running systemd version.</p></dd><dt id="-EINVAL"><span class="term"><code class="varname">-EINVAL</code></span><a class="headerlink" title="Permalink to this term" href="#-EINVAL">¶</a></dt><dd><p>Specified pointer parameter is <code class="constant">NULL</code>.
-        </p></dd><dt id="-ENOMEM"><span class="term"><code class="varname">-ENOMEM</code></span><a class="headerlink" title="Permalink to this term" href="#-ENOMEM">¶</a></dt><dd><p>Memory allocation failed.</p></dd></dl></div></div><div class="refsect1"><a name="idm214179313104"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p><code class="function">sd_bus_open_user()</code> and other functions
+        </p></dd><dt id="-ENOMEM"><span class="term"><code class="varname">-ENOMEM</code></span><a class="headerlink" title="Permalink to this term" href="#-ENOMEM">¶</a></dt><dd><p>Memory allocation failed.</p></dd></dl></div></div><div class="refsect1"><a name="idm214199611568"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p><code class="function">sd_bus_open_user()</code> and other functions
     described here are available as a shared library, which can be
     compiled and linked to with the
     <code class="constant">libsystemd</code> <a href="pkg-config.html"><span class="citerefentry"><span class="refentrytitle">pkg-config</span>(1)</span></a>
-    file.</p></div><div class="refsect1"><a name="idm214179310160"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+    file.</p></div><div class="refsect1"><a name="idm214199608400"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
       <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
       <a href="sd-bus.html"><span class="citerefentry"><span class="refentrytitle">sd-bus</span>(3)</span></a>,
       <a href="credentials.html"><span class="citerefentry"><span class="refentrytitle">credentials</span>(7)</span></a>,
index 4782ce6e05c82e1c452d8e659c088efbb67310ce..f9e3ba706bb0e6c41ca884ddb153b37772245621 100644 (file)
@@ -19,7 +19,7 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="sd_bus_creds_get_pid"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_bus_creds_get_pid, sd_bus_creds_get_pid_starttime, sd_bus_creds_get_tid, sd_bus_creds_get_uid, sd_bus_creds_get_gid, sd_bus_creds_get_comm, sd_bus_creds_get_tid_comm, sd_bus_creds_get_exe, sd_bus_creds_get_cmdline, sd_bus_creds_get_cgroup, sd_bus_creds_get_unit, sd_bus_creds_get_user_unit, sd_bus_creds_get_slice, sd_bus_creds_get_session, sd_bus_creds_get_owner_uid, sd_bus_creds_has_effective_cap, sd_bus_creds_has_permitted_cap, sd_bus_creds_has_inheritable_cap, sd_bus_creds_has_bounding_cap, sd_bus_creds_get_selinux_context, sd_bus_creds_get_audit_session_id, sd_bus_creds_get_audit_login_uid, sd_bus_creds_get_unique_name, sd_bus_creds_get_well_known_names — Retrieve fields from a credentials object</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-bus.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_pid</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>pid_t *<var class="pdparam">pid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_pid_starttime</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>uint64_t *<var class="pdparam">usec</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_tid</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>pid_t *<var class="pdparam">tid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_pid</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>uid_t *<var class="pdparam">uid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_gid</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>gid_t *<var class="pdparam">gid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_comm</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">comm</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_tid_comm</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">comm</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_exe</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">exe</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_cmdline</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>char ***<var class="pdparam">cmdline</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_cgroup</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">cgroup</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_unit</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">unit</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_user_unit</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">unit</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_slice</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">slice</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_session</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">slice</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_owner_uid</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>uid_t *<var class="pdparam">uid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_has_effective_cap</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">capability</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_has_permitted_cap</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">capability</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_has_inheritable_cap</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">capability</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_has_bounding_cap</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">capability</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_selinux_context</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">context</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_audit_session_id</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>uint32_t *<var class="pdparam">sessionid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_audit_login_uid</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>uid_t *<var class="pdparam">loginuid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_unique_name</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">name</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_well_known_names</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>char ***<var class="pdparam">name</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214179373600"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p>These functions return information from an
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="sd_bus_creds_get_pid"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_bus_creds_get_pid, sd_bus_creds_get_pid_starttime, sd_bus_creds_get_tid, sd_bus_creds_get_uid, sd_bus_creds_get_gid, sd_bus_creds_get_comm, sd_bus_creds_get_tid_comm, sd_bus_creds_get_exe, sd_bus_creds_get_cmdline, sd_bus_creds_get_cgroup, sd_bus_creds_get_unit, sd_bus_creds_get_user_unit, sd_bus_creds_get_slice, sd_bus_creds_get_session, sd_bus_creds_get_owner_uid, sd_bus_creds_has_effective_cap, sd_bus_creds_has_permitted_cap, sd_bus_creds_has_inheritable_cap, sd_bus_creds_has_bounding_cap, sd_bus_creds_get_selinux_context, sd_bus_creds_get_audit_session_id, sd_bus_creds_get_audit_login_uid, sd_bus_creds_get_unique_name, sd_bus_creds_get_well_known_names — Retrieve fields from a credentials object</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-bus.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_pid</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>pid_t *<var class="pdparam">pid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_pid_starttime</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>uint64_t *<var class="pdparam">usec</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_tid</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>pid_t *<var class="pdparam">tid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_pid</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>uid_t *<var class="pdparam">uid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_gid</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>gid_t *<var class="pdparam">gid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_comm</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">comm</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_tid_comm</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">comm</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_exe</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">exe</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_cmdline</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>char ***<var class="pdparam">cmdline</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_cgroup</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">cgroup</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_unit</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">unit</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_user_unit</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">unit</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_slice</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">slice</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_session</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">slice</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_owner_uid</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>uid_t *<var class="pdparam">uid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_has_effective_cap</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">capability</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_has_permitted_cap</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">capability</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_has_inheritable_cap</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">capability</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_has_bounding_cap</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">capability</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_selinux_context</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">context</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_audit_session_id</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>uint32_t *<var class="pdparam">sessionid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_audit_login_uid</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>uid_t *<var class="pdparam">loginuid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_unique_name</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">name</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_well_known_names</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>char ***<var class="pdparam">name</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214195952656"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p>These functions return information from an
     <em class="parameter"><code>sd_bus_creds</code></em> object. It may be created with
     <a href="sd_bus_creds_new_from_pid.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_creds_new_from_pid</span>(3)</span></a>,
     in which case it will describe the specified process, or it may be
     of strings. Each invidividual string is NUL-terminated, and the
     array is NULL-terminated as a whole. It will be valid as long as
     <em class="parameter"><code>c</code></em> remains valid, and should not be freed or
-    modified by the caller.</p></div><div class="refsect1"><a name="idm214179328320"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>On success, these calls return 0 or a positive integer. On
+    modified by the caller.</p></div><div class="refsect1"><a name="idm214195728128"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>On success, these calls return 0 or a positive integer. On
     failure, these calls return a negative errno-style error code.
-    </p></div><div class="refsect1"><a name="idm214179327024"></a><h2 id="Errors">Errors<a class="headerlink" title="Permalink to this headline" href="#Errors">¶</a></h2><p>Returned errors may indicate the following problems:</p><div class="variablelist"><dl class="variablelist"><dt id="-ENODATA"><span class="term"><code class="varname">-ENODATA</code></span><a class="headerlink" title="Permalink to this term" href="#-ENODATA">¶</a></dt><dd><p>Given field is not available in
+    </p></div><div class="refsect1"><a name="idm214195726800"></a><h2 id="Errors">Errors<a class="headerlink" title="Permalink to this headline" href="#Errors">¶</a></h2><p>Returned errors may indicate the following problems:</p><div class="variablelist"><dl class="variablelist"><dt id="-ENODATA"><span class="term"><code class="varname">-ENODATA</code></span><a class="headerlink" title="Permalink to this term" href="#-ENODATA">¶</a></dt><dd><p>Given field is not available in
         <em class="parameter"><code>c</code></em>.</p></dd><dt id="-ENOENT"><span class="term"><code class="varname">-ENOENT</code></span><a class="headerlink" title="Permalink to this term" href="#-ENOENT">¶</a></dt><dd><p>Given field is not specified for the sender.
         This will be returned by <code class="function">sd_bus_get_unit</code>,
         <code class="function">sd_bus_get_user_unit</code>,
         slice, logind session, or a systemd user session.</p></dd><dt id="-ENXIO"><span class="term"><code class="varname">-ENXIO</code></span><a class="headerlink" title="Permalink to this term" href="#-ENXIO">¶</a></dt><dd><p>An error occured in parsing cgroup paths.
         <code class="filename">libsystemd</code> might be out of sync with
         the running systemd version.</p></dd><dt id="-EINVAL"><span class="term"><code class="varname">-EINVAL</code></span><a class="headerlink" title="Permalink to this term" href="#-EINVAL">¶</a></dt><dd><p>Specified pointer parameter is <code class="constant">NULL</code>.
-        </p></dd><dt id="-ENOMEM"><span class="term"><code class="varname">-ENOMEM</code></span><a class="headerlink" title="Permalink to this term" href="#-ENOMEM">¶</a></dt><dd><p>Memory allocation failed.</p></dd></dl></div></div><div class="refsect1"><a name="idm214179313104"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p><code class="function">sd_bus_open_user()</code> and other functions
+        </p></dd><dt id="-ENOMEM"><span class="term"><code class="varname">-ENOMEM</code></span><a class="headerlink" title="Permalink to this term" href="#-ENOMEM">¶</a></dt><dd><p>Memory allocation failed.</p></dd></dl></div></div><div class="refsect1"><a name="idm214199611568"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p><code class="function">sd_bus_open_user()</code> and other functions
     described here are available as a shared library, which can be
     compiled and linked to with the
     <code class="constant">libsystemd</code> <a href="pkg-config.html"><span class="citerefentry"><span class="refentrytitle">pkg-config</span>(1)</span></a>
-    file.</p></div><div class="refsect1"><a name="idm214179310160"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+    file.</p></div><div class="refsect1"><a name="idm214199608400"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
       <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
       <a href="sd-bus.html"><span class="citerefentry"><span class="refentrytitle">sd-bus</span>(3)</span></a>,
       <a href="credentials.html"><span class="citerefentry"><span class="refentrytitle">credentials</span>(7)</span></a>,
index 4782ce6e05c82e1c452d8e659c088efbb67310ce..f9e3ba706bb0e6c41ca884ddb153b37772245621 100644 (file)
@@ -19,7 +19,7 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="sd_bus_creds_get_pid"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_bus_creds_get_pid, sd_bus_creds_get_pid_starttime, sd_bus_creds_get_tid, sd_bus_creds_get_uid, sd_bus_creds_get_gid, sd_bus_creds_get_comm, sd_bus_creds_get_tid_comm, sd_bus_creds_get_exe, sd_bus_creds_get_cmdline, sd_bus_creds_get_cgroup, sd_bus_creds_get_unit, sd_bus_creds_get_user_unit, sd_bus_creds_get_slice, sd_bus_creds_get_session, sd_bus_creds_get_owner_uid, sd_bus_creds_has_effective_cap, sd_bus_creds_has_permitted_cap, sd_bus_creds_has_inheritable_cap, sd_bus_creds_has_bounding_cap, sd_bus_creds_get_selinux_context, sd_bus_creds_get_audit_session_id, sd_bus_creds_get_audit_login_uid, sd_bus_creds_get_unique_name, sd_bus_creds_get_well_known_names — Retrieve fields from a credentials object</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-bus.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_pid</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>pid_t *<var class="pdparam">pid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_pid_starttime</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>uint64_t *<var class="pdparam">usec</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_tid</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>pid_t *<var class="pdparam">tid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_pid</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>uid_t *<var class="pdparam">uid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_gid</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>gid_t *<var class="pdparam">gid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_comm</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">comm</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_tid_comm</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">comm</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_exe</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">exe</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_cmdline</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>char ***<var class="pdparam">cmdline</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_cgroup</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">cgroup</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_unit</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">unit</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_user_unit</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">unit</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_slice</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">slice</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_session</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">slice</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_owner_uid</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>uid_t *<var class="pdparam">uid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_has_effective_cap</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">capability</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_has_permitted_cap</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">capability</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_has_inheritable_cap</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">capability</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_has_bounding_cap</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">capability</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_selinux_context</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">context</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_audit_session_id</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>uint32_t *<var class="pdparam">sessionid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_audit_login_uid</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>uid_t *<var class="pdparam">loginuid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_unique_name</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">name</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_well_known_names</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>char ***<var class="pdparam">name</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214179373600"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p>These functions return information from an
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="sd_bus_creds_get_pid"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_bus_creds_get_pid, sd_bus_creds_get_pid_starttime, sd_bus_creds_get_tid, sd_bus_creds_get_uid, sd_bus_creds_get_gid, sd_bus_creds_get_comm, sd_bus_creds_get_tid_comm, sd_bus_creds_get_exe, sd_bus_creds_get_cmdline, sd_bus_creds_get_cgroup, sd_bus_creds_get_unit, sd_bus_creds_get_user_unit, sd_bus_creds_get_slice, sd_bus_creds_get_session, sd_bus_creds_get_owner_uid, sd_bus_creds_has_effective_cap, sd_bus_creds_has_permitted_cap, sd_bus_creds_has_inheritable_cap, sd_bus_creds_has_bounding_cap, sd_bus_creds_get_selinux_context, sd_bus_creds_get_audit_session_id, sd_bus_creds_get_audit_login_uid, sd_bus_creds_get_unique_name, sd_bus_creds_get_well_known_names — Retrieve fields from a credentials object</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-bus.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_pid</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>pid_t *<var class="pdparam">pid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_pid_starttime</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>uint64_t *<var class="pdparam">usec</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_tid</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>pid_t *<var class="pdparam">tid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_pid</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>uid_t *<var class="pdparam">uid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_gid</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>gid_t *<var class="pdparam">gid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_comm</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">comm</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_tid_comm</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">comm</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_exe</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">exe</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_cmdline</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>char ***<var class="pdparam">cmdline</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_cgroup</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">cgroup</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_unit</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">unit</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_user_unit</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">unit</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_slice</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">slice</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_session</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">slice</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_owner_uid</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>uid_t *<var class="pdparam">uid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_has_effective_cap</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">capability</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_has_permitted_cap</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">capability</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_has_inheritable_cap</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">capability</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_has_bounding_cap</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">capability</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_selinux_context</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">context</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_audit_session_id</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>uint32_t *<var class="pdparam">sessionid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_audit_login_uid</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>uid_t *<var class="pdparam">loginuid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_unique_name</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">name</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_well_known_names</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>char ***<var class="pdparam">name</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214195952656"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p>These functions return information from an
     <em class="parameter"><code>sd_bus_creds</code></em> object. It may be created with
     <a href="sd_bus_creds_new_from_pid.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_creds_new_from_pid</span>(3)</span></a>,
     in which case it will describe the specified process, or it may be
     of strings. Each invidividual string is NUL-terminated, and the
     array is NULL-terminated as a whole. It will be valid as long as
     <em class="parameter"><code>c</code></em> remains valid, and should not be freed or
-    modified by the caller.</p></div><div class="refsect1"><a name="idm214179328320"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>On success, these calls return 0 or a positive integer. On
+    modified by the caller.</p></div><div class="refsect1"><a name="idm214195728128"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>On success, these calls return 0 or a positive integer. On
     failure, these calls return a negative errno-style error code.
-    </p></div><div class="refsect1"><a name="idm214179327024"></a><h2 id="Errors">Errors<a class="headerlink" title="Permalink to this headline" href="#Errors">¶</a></h2><p>Returned errors may indicate the following problems:</p><div class="variablelist"><dl class="variablelist"><dt id="-ENODATA"><span class="term"><code class="varname">-ENODATA</code></span><a class="headerlink" title="Permalink to this term" href="#-ENODATA">¶</a></dt><dd><p>Given field is not available in
+    </p></div><div class="refsect1"><a name="idm214195726800"></a><h2 id="Errors">Errors<a class="headerlink" title="Permalink to this headline" href="#Errors">¶</a></h2><p>Returned errors may indicate the following problems:</p><div class="variablelist"><dl class="variablelist"><dt id="-ENODATA"><span class="term"><code class="varname">-ENODATA</code></span><a class="headerlink" title="Permalink to this term" href="#-ENODATA">¶</a></dt><dd><p>Given field is not available in
         <em class="parameter"><code>c</code></em>.</p></dd><dt id="-ENOENT"><span class="term"><code class="varname">-ENOENT</code></span><a class="headerlink" title="Permalink to this term" href="#-ENOENT">¶</a></dt><dd><p>Given field is not specified for the sender.
         This will be returned by <code class="function">sd_bus_get_unit</code>,
         <code class="function">sd_bus_get_user_unit</code>,
         slice, logind session, or a systemd user session.</p></dd><dt id="-ENXIO"><span class="term"><code class="varname">-ENXIO</code></span><a class="headerlink" title="Permalink to this term" href="#-ENXIO">¶</a></dt><dd><p>An error occured in parsing cgroup paths.
         <code class="filename">libsystemd</code> might be out of sync with
         the running systemd version.</p></dd><dt id="-EINVAL"><span class="term"><code class="varname">-EINVAL</code></span><a class="headerlink" title="Permalink to this term" href="#-EINVAL">¶</a></dt><dd><p>Specified pointer parameter is <code class="constant">NULL</code>.
-        </p></dd><dt id="-ENOMEM"><span class="term"><code class="varname">-ENOMEM</code></span><a class="headerlink" title="Permalink to this term" href="#-ENOMEM">¶</a></dt><dd><p>Memory allocation failed.</p></dd></dl></div></div><div class="refsect1"><a name="idm214179313104"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p><code class="function">sd_bus_open_user()</code> and other functions
+        </p></dd><dt id="-ENOMEM"><span class="term"><code class="varname">-ENOMEM</code></span><a class="headerlink" title="Permalink to this term" href="#-ENOMEM">¶</a></dt><dd><p>Memory allocation failed.</p></dd></dl></div></div><div class="refsect1"><a name="idm214199611568"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p><code class="function">sd_bus_open_user()</code> and other functions
     described here are available as a shared library, which can be
     compiled and linked to with the
     <code class="constant">libsystemd</code> <a href="pkg-config.html"><span class="citerefentry"><span class="refentrytitle">pkg-config</span>(1)</span></a>
-    file.</p></div><div class="refsect1"><a name="idm214179310160"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+    file.</p></div><div class="refsect1"><a name="idm214199608400"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
       <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
       <a href="sd-bus.html"><span class="citerefentry"><span class="refentrytitle">sd-bus</span>(3)</span></a>,
       <a href="credentials.html"><span class="citerefentry"><span class="refentrytitle">credentials</span>(7)</span></a>,
index 4782ce6e05c82e1c452d8e659c088efbb67310ce..f9e3ba706bb0e6c41ca884ddb153b37772245621 100644 (file)
@@ -19,7 +19,7 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="sd_bus_creds_get_pid"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_bus_creds_get_pid, sd_bus_creds_get_pid_starttime, sd_bus_creds_get_tid, sd_bus_creds_get_uid, sd_bus_creds_get_gid, sd_bus_creds_get_comm, sd_bus_creds_get_tid_comm, sd_bus_creds_get_exe, sd_bus_creds_get_cmdline, sd_bus_creds_get_cgroup, sd_bus_creds_get_unit, sd_bus_creds_get_user_unit, sd_bus_creds_get_slice, sd_bus_creds_get_session, sd_bus_creds_get_owner_uid, sd_bus_creds_has_effective_cap, sd_bus_creds_has_permitted_cap, sd_bus_creds_has_inheritable_cap, sd_bus_creds_has_bounding_cap, sd_bus_creds_get_selinux_context, sd_bus_creds_get_audit_session_id, sd_bus_creds_get_audit_login_uid, sd_bus_creds_get_unique_name, sd_bus_creds_get_well_known_names — Retrieve fields from a credentials object</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-bus.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_pid</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>pid_t *<var class="pdparam">pid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_pid_starttime</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>uint64_t *<var class="pdparam">usec</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_tid</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>pid_t *<var class="pdparam">tid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_pid</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>uid_t *<var class="pdparam">uid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_gid</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>gid_t *<var class="pdparam">gid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_comm</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">comm</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_tid_comm</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">comm</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_exe</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">exe</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_cmdline</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>char ***<var class="pdparam">cmdline</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_cgroup</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">cgroup</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_unit</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">unit</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_user_unit</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">unit</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_slice</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">slice</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_session</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">slice</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_owner_uid</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>uid_t *<var class="pdparam">uid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_has_effective_cap</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">capability</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_has_permitted_cap</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">capability</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_has_inheritable_cap</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">capability</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_has_bounding_cap</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">capability</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_selinux_context</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">context</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_audit_session_id</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>uint32_t *<var class="pdparam">sessionid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_audit_login_uid</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>uid_t *<var class="pdparam">loginuid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_unique_name</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">name</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_well_known_names</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>char ***<var class="pdparam">name</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214179373600"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p>These functions return information from an
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="sd_bus_creds_get_pid"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_bus_creds_get_pid, sd_bus_creds_get_pid_starttime, sd_bus_creds_get_tid, sd_bus_creds_get_uid, sd_bus_creds_get_gid, sd_bus_creds_get_comm, sd_bus_creds_get_tid_comm, sd_bus_creds_get_exe, sd_bus_creds_get_cmdline, sd_bus_creds_get_cgroup, sd_bus_creds_get_unit, sd_bus_creds_get_user_unit, sd_bus_creds_get_slice, sd_bus_creds_get_session, sd_bus_creds_get_owner_uid, sd_bus_creds_has_effective_cap, sd_bus_creds_has_permitted_cap, sd_bus_creds_has_inheritable_cap, sd_bus_creds_has_bounding_cap, sd_bus_creds_get_selinux_context, sd_bus_creds_get_audit_session_id, sd_bus_creds_get_audit_login_uid, sd_bus_creds_get_unique_name, sd_bus_creds_get_well_known_names — Retrieve fields from a credentials object</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-bus.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_pid</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>pid_t *<var class="pdparam">pid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_pid_starttime</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>uint64_t *<var class="pdparam">usec</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_tid</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>pid_t *<var class="pdparam">tid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_pid</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>uid_t *<var class="pdparam">uid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_gid</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>gid_t *<var class="pdparam">gid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_comm</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">comm</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_tid_comm</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">comm</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_exe</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">exe</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_cmdline</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>char ***<var class="pdparam">cmdline</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_cgroup</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">cgroup</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_unit</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">unit</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_user_unit</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">unit</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_slice</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">slice</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_session</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">slice</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_owner_uid</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>uid_t *<var class="pdparam">uid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_has_effective_cap</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">capability</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_has_permitted_cap</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">capability</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_has_inheritable_cap</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">capability</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_has_bounding_cap</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">capability</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_selinux_context</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">context</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_audit_session_id</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>uint32_t *<var class="pdparam">sessionid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_audit_login_uid</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>uid_t *<var class="pdparam">loginuid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_unique_name</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">name</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_well_known_names</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>char ***<var class="pdparam">name</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214195952656"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p>These functions return information from an
     <em class="parameter"><code>sd_bus_creds</code></em> object. It may be created with
     <a href="sd_bus_creds_new_from_pid.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_creds_new_from_pid</span>(3)</span></a>,
     in which case it will describe the specified process, or it may be
     of strings. Each invidividual string is NUL-terminated, and the
     array is NULL-terminated as a whole. It will be valid as long as
     <em class="parameter"><code>c</code></em> remains valid, and should not be freed or
-    modified by the caller.</p></div><div class="refsect1"><a name="idm214179328320"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>On success, these calls return 0 or a positive integer. On
+    modified by the caller.</p></div><div class="refsect1"><a name="idm214195728128"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>On success, these calls return 0 or a positive integer. On
     failure, these calls return a negative errno-style error code.
-    </p></div><div class="refsect1"><a name="idm214179327024"></a><h2 id="Errors">Errors<a class="headerlink" title="Permalink to this headline" href="#Errors">¶</a></h2><p>Returned errors may indicate the following problems:</p><div class="variablelist"><dl class="variablelist"><dt id="-ENODATA"><span class="term"><code class="varname">-ENODATA</code></span><a class="headerlink" title="Permalink to this term" href="#-ENODATA">¶</a></dt><dd><p>Given field is not available in
+    </p></div><div class="refsect1"><a name="idm214195726800"></a><h2 id="Errors">Errors<a class="headerlink" title="Permalink to this headline" href="#Errors">¶</a></h2><p>Returned errors may indicate the following problems:</p><div class="variablelist"><dl class="variablelist"><dt id="-ENODATA"><span class="term"><code class="varname">-ENODATA</code></span><a class="headerlink" title="Permalink to this term" href="#-ENODATA">¶</a></dt><dd><p>Given field is not available in
         <em class="parameter"><code>c</code></em>.</p></dd><dt id="-ENOENT"><span class="term"><code class="varname">-ENOENT</code></span><a class="headerlink" title="Permalink to this term" href="#-ENOENT">¶</a></dt><dd><p>Given field is not specified for the sender.
         This will be returned by <code class="function">sd_bus_get_unit</code>,
         <code class="function">sd_bus_get_user_unit</code>,
         slice, logind session, or a systemd user session.</p></dd><dt id="-ENXIO"><span class="term"><code class="varname">-ENXIO</code></span><a class="headerlink" title="Permalink to this term" href="#-ENXIO">¶</a></dt><dd><p>An error occured in parsing cgroup paths.
         <code class="filename">libsystemd</code> might be out of sync with
         the running systemd version.</p></dd><dt id="-EINVAL"><span class="term"><code class="varname">-EINVAL</code></span><a class="headerlink" title="Permalink to this term" href="#-EINVAL">¶</a></dt><dd><p>Specified pointer parameter is <code class="constant">NULL</code>.
-        </p></dd><dt id="-ENOMEM"><span class="term"><code class="varname">-ENOMEM</code></span><a class="headerlink" title="Permalink to this term" href="#-ENOMEM">¶</a></dt><dd><p>Memory allocation failed.</p></dd></dl></div></div><div class="refsect1"><a name="idm214179313104"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p><code class="function">sd_bus_open_user()</code> and other functions
+        </p></dd><dt id="-ENOMEM"><span class="term"><code class="varname">-ENOMEM</code></span><a class="headerlink" title="Permalink to this term" href="#-ENOMEM">¶</a></dt><dd><p>Memory allocation failed.</p></dd></dl></div></div><div class="refsect1"><a name="idm214199611568"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p><code class="function">sd_bus_open_user()</code> and other functions
     described here are available as a shared library, which can be
     compiled and linked to with the
     <code class="constant">libsystemd</code> <a href="pkg-config.html"><span class="citerefentry"><span class="refentrytitle">pkg-config</span>(1)</span></a>
-    file.</p></div><div class="refsect1"><a name="idm214179310160"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+    file.</p></div><div class="refsect1"><a name="idm214199608400"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
       <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
       <a href="sd-bus.html"><span class="citerefentry"><span class="refentrytitle">sd-bus</span>(3)</span></a>,
       <a href="credentials.html"><span class="citerefentry"><span class="refentrytitle">credentials</span>(7)</span></a>,
index 4782ce6e05c82e1c452d8e659c088efbb67310ce..f9e3ba706bb0e6c41ca884ddb153b37772245621 100644 (file)
@@ -19,7 +19,7 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="sd_bus_creds_get_pid"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_bus_creds_get_pid, sd_bus_creds_get_pid_starttime, sd_bus_creds_get_tid, sd_bus_creds_get_uid, sd_bus_creds_get_gid, sd_bus_creds_get_comm, sd_bus_creds_get_tid_comm, sd_bus_creds_get_exe, sd_bus_creds_get_cmdline, sd_bus_creds_get_cgroup, sd_bus_creds_get_unit, sd_bus_creds_get_user_unit, sd_bus_creds_get_slice, sd_bus_creds_get_session, sd_bus_creds_get_owner_uid, sd_bus_creds_has_effective_cap, sd_bus_creds_has_permitted_cap, sd_bus_creds_has_inheritable_cap, sd_bus_creds_has_bounding_cap, sd_bus_creds_get_selinux_context, sd_bus_creds_get_audit_session_id, sd_bus_creds_get_audit_login_uid, sd_bus_creds_get_unique_name, sd_bus_creds_get_well_known_names — Retrieve fields from a credentials object</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-bus.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_pid</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>pid_t *<var class="pdparam">pid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_pid_starttime</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>uint64_t *<var class="pdparam">usec</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_tid</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>pid_t *<var class="pdparam">tid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_pid</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>uid_t *<var class="pdparam">uid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_gid</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>gid_t *<var class="pdparam">gid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_comm</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">comm</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_tid_comm</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">comm</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_exe</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">exe</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_cmdline</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>char ***<var class="pdparam">cmdline</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_cgroup</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">cgroup</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_unit</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">unit</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_user_unit</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">unit</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_slice</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">slice</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_session</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">slice</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_owner_uid</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>uid_t *<var class="pdparam">uid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_has_effective_cap</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">capability</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_has_permitted_cap</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">capability</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_has_inheritable_cap</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">capability</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_has_bounding_cap</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">capability</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_selinux_context</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">context</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_audit_session_id</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>uint32_t *<var class="pdparam">sessionid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_audit_login_uid</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>uid_t *<var class="pdparam">loginuid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_unique_name</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">name</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_well_known_names</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>char ***<var class="pdparam">name</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214179373600"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p>These functions return information from an
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="sd_bus_creds_get_pid"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_bus_creds_get_pid, sd_bus_creds_get_pid_starttime, sd_bus_creds_get_tid, sd_bus_creds_get_uid, sd_bus_creds_get_gid, sd_bus_creds_get_comm, sd_bus_creds_get_tid_comm, sd_bus_creds_get_exe, sd_bus_creds_get_cmdline, sd_bus_creds_get_cgroup, sd_bus_creds_get_unit, sd_bus_creds_get_user_unit, sd_bus_creds_get_slice, sd_bus_creds_get_session, sd_bus_creds_get_owner_uid, sd_bus_creds_has_effective_cap, sd_bus_creds_has_permitted_cap, sd_bus_creds_has_inheritable_cap, sd_bus_creds_has_bounding_cap, sd_bus_creds_get_selinux_context, sd_bus_creds_get_audit_session_id, sd_bus_creds_get_audit_login_uid, sd_bus_creds_get_unique_name, sd_bus_creds_get_well_known_names — Retrieve fields from a credentials object</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-bus.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_pid</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>pid_t *<var class="pdparam">pid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_pid_starttime</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>uint64_t *<var class="pdparam">usec</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_tid</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>pid_t *<var class="pdparam">tid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_pid</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>uid_t *<var class="pdparam">uid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_gid</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>gid_t *<var class="pdparam">gid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_comm</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">comm</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_tid_comm</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">comm</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_exe</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">exe</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_cmdline</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>char ***<var class="pdparam">cmdline</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_cgroup</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">cgroup</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_unit</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">unit</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_user_unit</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">unit</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_slice</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">slice</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_session</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">slice</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_owner_uid</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>uid_t *<var class="pdparam">uid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_has_effective_cap</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">capability</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_has_permitted_cap</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">capability</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_has_inheritable_cap</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">capability</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_has_bounding_cap</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">capability</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_selinux_context</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">context</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_audit_session_id</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>uint32_t *<var class="pdparam">sessionid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_audit_login_uid</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>uid_t *<var class="pdparam">loginuid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_unique_name</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">name</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_well_known_names</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>char ***<var class="pdparam">name</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214195952656"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p>These functions return information from an
     <em class="parameter"><code>sd_bus_creds</code></em> object. It may be created with
     <a href="sd_bus_creds_new_from_pid.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_creds_new_from_pid</span>(3)</span></a>,
     in which case it will describe the specified process, or it may be
     of strings. Each invidividual string is NUL-terminated, and the
     array is NULL-terminated as a whole. It will be valid as long as
     <em class="parameter"><code>c</code></em> remains valid, and should not be freed or
-    modified by the caller.</p></div><div class="refsect1"><a name="idm214179328320"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>On success, these calls return 0 or a positive integer. On
+    modified by the caller.</p></div><div class="refsect1"><a name="idm214195728128"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>On success, these calls return 0 or a positive integer. On
     failure, these calls return a negative errno-style error code.
-    </p></div><div class="refsect1"><a name="idm214179327024"></a><h2 id="Errors">Errors<a class="headerlink" title="Permalink to this headline" href="#Errors">¶</a></h2><p>Returned errors may indicate the following problems:</p><div class="variablelist"><dl class="variablelist"><dt id="-ENODATA"><span class="term"><code class="varname">-ENODATA</code></span><a class="headerlink" title="Permalink to this term" href="#-ENODATA">¶</a></dt><dd><p>Given field is not available in
+    </p></div><div class="refsect1"><a name="idm214195726800"></a><h2 id="Errors">Errors<a class="headerlink" title="Permalink to this headline" href="#Errors">¶</a></h2><p>Returned errors may indicate the following problems:</p><div class="variablelist"><dl class="variablelist"><dt id="-ENODATA"><span class="term"><code class="varname">-ENODATA</code></span><a class="headerlink" title="Permalink to this term" href="#-ENODATA">¶</a></dt><dd><p>Given field is not available in
         <em class="parameter"><code>c</code></em>.</p></dd><dt id="-ENOENT"><span class="term"><code class="varname">-ENOENT</code></span><a class="headerlink" title="Permalink to this term" href="#-ENOENT">¶</a></dt><dd><p>Given field is not specified for the sender.
         This will be returned by <code class="function">sd_bus_get_unit</code>,
         <code class="function">sd_bus_get_user_unit</code>,
         slice, logind session, or a systemd user session.</p></dd><dt id="-ENXIO"><span class="term"><code class="varname">-ENXIO</code></span><a class="headerlink" title="Permalink to this term" href="#-ENXIO">¶</a></dt><dd><p>An error occured in parsing cgroup paths.
         <code class="filename">libsystemd</code> might be out of sync with
         the running systemd version.</p></dd><dt id="-EINVAL"><span class="term"><code class="varname">-EINVAL</code></span><a class="headerlink" title="Permalink to this term" href="#-EINVAL">¶</a></dt><dd><p>Specified pointer parameter is <code class="constant">NULL</code>.
-        </p></dd><dt id="-ENOMEM"><span class="term"><code class="varname">-ENOMEM</code></span><a class="headerlink" title="Permalink to this term" href="#-ENOMEM">¶</a></dt><dd><p>Memory allocation failed.</p></dd></dl></div></div><div class="refsect1"><a name="idm214179313104"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p><code class="function">sd_bus_open_user()</code> and other functions
+        </p></dd><dt id="-ENOMEM"><span class="term"><code class="varname">-ENOMEM</code></span><a class="headerlink" title="Permalink to this term" href="#-ENOMEM">¶</a></dt><dd><p>Memory allocation failed.</p></dd></dl></div></div><div class="refsect1"><a name="idm214199611568"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p><code class="function">sd_bus_open_user()</code> and other functions
     described here are available as a shared library, which can be
     compiled and linked to with the
     <code class="constant">libsystemd</code> <a href="pkg-config.html"><span class="citerefentry"><span class="refentrytitle">pkg-config</span>(1)</span></a>
-    file.</p></div><div class="refsect1"><a name="idm214179310160"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+    file.</p></div><div class="refsect1"><a name="idm214199608400"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
       <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
       <a href="sd-bus.html"><span class="citerefentry"><span class="refentrytitle">sd-bus</span>(3)</span></a>,
       <a href="credentials.html"><span class="citerefentry"><span class="refentrytitle">credentials</span>(7)</span></a>,
index 4782ce6e05c82e1c452d8e659c088efbb67310ce..f9e3ba706bb0e6c41ca884ddb153b37772245621 100644 (file)
@@ -19,7 +19,7 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="sd_bus_creds_get_pid"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_bus_creds_get_pid, sd_bus_creds_get_pid_starttime, sd_bus_creds_get_tid, sd_bus_creds_get_uid, sd_bus_creds_get_gid, sd_bus_creds_get_comm, sd_bus_creds_get_tid_comm, sd_bus_creds_get_exe, sd_bus_creds_get_cmdline, sd_bus_creds_get_cgroup, sd_bus_creds_get_unit, sd_bus_creds_get_user_unit, sd_bus_creds_get_slice, sd_bus_creds_get_session, sd_bus_creds_get_owner_uid, sd_bus_creds_has_effective_cap, sd_bus_creds_has_permitted_cap, sd_bus_creds_has_inheritable_cap, sd_bus_creds_has_bounding_cap, sd_bus_creds_get_selinux_context, sd_bus_creds_get_audit_session_id, sd_bus_creds_get_audit_login_uid, sd_bus_creds_get_unique_name, sd_bus_creds_get_well_known_names — Retrieve fields from a credentials object</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-bus.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_pid</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>pid_t *<var class="pdparam">pid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_pid_starttime</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>uint64_t *<var class="pdparam">usec</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_tid</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>pid_t *<var class="pdparam">tid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_pid</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>uid_t *<var class="pdparam">uid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_gid</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>gid_t *<var class="pdparam">gid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_comm</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">comm</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_tid_comm</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">comm</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_exe</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">exe</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_cmdline</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>char ***<var class="pdparam">cmdline</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_cgroup</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">cgroup</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_unit</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">unit</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_user_unit</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">unit</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_slice</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">slice</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_session</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">slice</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_owner_uid</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>uid_t *<var class="pdparam">uid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_has_effective_cap</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">capability</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_has_permitted_cap</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">capability</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_has_inheritable_cap</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">capability</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_has_bounding_cap</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">capability</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_selinux_context</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">context</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_audit_session_id</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>uint32_t *<var class="pdparam">sessionid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_audit_login_uid</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>uid_t *<var class="pdparam">loginuid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_unique_name</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">name</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_well_known_names</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>char ***<var class="pdparam">name</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214179373600"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p>These functions return information from an
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="sd_bus_creds_get_pid"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_bus_creds_get_pid, sd_bus_creds_get_pid_starttime, sd_bus_creds_get_tid, sd_bus_creds_get_uid, sd_bus_creds_get_gid, sd_bus_creds_get_comm, sd_bus_creds_get_tid_comm, sd_bus_creds_get_exe, sd_bus_creds_get_cmdline, sd_bus_creds_get_cgroup, sd_bus_creds_get_unit, sd_bus_creds_get_user_unit, sd_bus_creds_get_slice, sd_bus_creds_get_session, sd_bus_creds_get_owner_uid, sd_bus_creds_has_effective_cap, sd_bus_creds_has_permitted_cap, sd_bus_creds_has_inheritable_cap, sd_bus_creds_has_bounding_cap, sd_bus_creds_get_selinux_context, sd_bus_creds_get_audit_session_id, sd_bus_creds_get_audit_login_uid, sd_bus_creds_get_unique_name, sd_bus_creds_get_well_known_names — Retrieve fields from a credentials object</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-bus.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_pid</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>pid_t *<var class="pdparam">pid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_pid_starttime</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>uint64_t *<var class="pdparam">usec</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_tid</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>pid_t *<var class="pdparam">tid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_pid</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>uid_t *<var class="pdparam">uid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_gid</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>gid_t *<var class="pdparam">gid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_comm</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">comm</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_tid_comm</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">comm</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_exe</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">exe</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_cmdline</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>char ***<var class="pdparam">cmdline</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_cgroup</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">cgroup</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_unit</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">unit</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_user_unit</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">unit</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_slice</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">slice</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_session</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">slice</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_owner_uid</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>uid_t *<var class="pdparam">uid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_has_effective_cap</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">capability</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_has_permitted_cap</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">capability</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_has_inheritable_cap</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">capability</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_has_bounding_cap</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">capability</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_selinux_context</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">context</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_audit_session_id</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>uint32_t *<var class="pdparam">sessionid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_audit_login_uid</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>uid_t *<var class="pdparam">loginuid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_unique_name</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">name</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_well_known_names</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>char ***<var class="pdparam">name</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214195952656"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p>These functions return information from an
     <em class="parameter"><code>sd_bus_creds</code></em> object. It may be created with
     <a href="sd_bus_creds_new_from_pid.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_creds_new_from_pid</span>(3)</span></a>,
     in which case it will describe the specified process, or it may be
     of strings. Each invidividual string is NUL-terminated, and the
     array is NULL-terminated as a whole. It will be valid as long as
     <em class="parameter"><code>c</code></em> remains valid, and should not be freed or
-    modified by the caller.</p></div><div class="refsect1"><a name="idm214179328320"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>On success, these calls return 0 or a positive integer. On
+    modified by the caller.</p></div><div class="refsect1"><a name="idm214195728128"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>On success, these calls return 0 or a positive integer. On
     failure, these calls return a negative errno-style error code.
-    </p></div><div class="refsect1"><a name="idm214179327024"></a><h2 id="Errors">Errors<a class="headerlink" title="Permalink to this headline" href="#Errors">¶</a></h2><p>Returned errors may indicate the following problems:</p><div class="variablelist"><dl class="variablelist"><dt id="-ENODATA"><span class="term"><code class="varname">-ENODATA</code></span><a class="headerlink" title="Permalink to this term" href="#-ENODATA">¶</a></dt><dd><p>Given field is not available in
+    </p></div><div class="refsect1"><a name="idm214195726800"></a><h2 id="Errors">Errors<a class="headerlink" title="Permalink to this headline" href="#Errors">¶</a></h2><p>Returned errors may indicate the following problems:</p><div class="variablelist"><dl class="variablelist"><dt id="-ENODATA"><span class="term"><code class="varname">-ENODATA</code></span><a class="headerlink" title="Permalink to this term" href="#-ENODATA">¶</a></dt><dd><p>Given field is not available in
         <em class="parameter"><code>c</code></em>.</p></dd><dt id="-ENOENT"><span class="term"><code class="varname">-ENOENT</code></span><a class="headerlink" title="Permalink to this term" href="#-ENOENT">¶</a></dt><dd><p>Given field is not specified for the sender.
         This will be returned by <code class="function">sd_bus_get_unit</code>,
         <code class="function">sd_bus_get_user_unit</code>,
         slice, logind session, or a systemd user session.</p></dd><dt id="-ENXIO"><span class="term"><code class="varname">-ENXIO</code></span><a class="headerlink" title="Permalink to this term" href="#-ENXIO">¶</a></dt><dd><p>An error occured in parsing cgroup paths.
         <code class="filename">libsystemd</code> might be out of sync with
         the running systemd version.</p></dd><dt id="-EINVAL"><span class="term"><code class="varname">-EINVAL</code></span><a class="headerlink" title="Permalink to this term" href="#-EINVAL">¶</a></dt><dd><p>Specified pointer parameter is <code class="constant">NULL</code>.
-        </p></dd><dt id="-ENOMEM"><span class="term"><code class="varname">-ENOMEM</code></span><a class="headerlink" title="Permalink to this term" href="#-ENOMEM">¶</a></dt><dd><p>Memory allocation failed.</p></dd></dl></div></div><div class="refsect1"><a name="idm214179313104"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p><code class="function">sd_bus_open_user()</code> and other functions
+        </p></dd><dt id="-ENOMEM"><span class="term"><code class="varname">-ENOMEM</code></span><a class="headerlink" title="Permalink to this term" href="#-ENOMEM">¶</a></dt><dd><p>Memory allocation failed.</p></dd></dl></div></div><div class="refsect1"><a name="idm214199611568"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p><code class="function">sd_bus_open_user()</code> and other functions
     described here are available as a shared library, which can be
     compiled and linked to with the
     <code class="constant">libsystemd</code> <a href="pkg-config.html"><span class="citerefentry"><span class="refentrytitle">pkg-config</span>(1)</span></a>
-    file.</p></div><div class="refsect1"><a name="idm214179310160"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+    file.</p></div><div class="refsect1"><a name="idm214199608400"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
       <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
       <a href="sd-bus.html"><span class="citerefentry"><span class="refentrytitle">sd-bus</span>(3)</span></a>,
       <a href="credentials.html"><span class="citerefentry"><span class="refentrytitle">credentials</span>(7)</span></a>,
index 4782ce6e05c82e1c452d8e659c088efbb67310ce..f9e3ba706bb0e6c41ca884ddb153b37772245621 100644 (file)
@@ -19,7 +19,7 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="sd_bus_creds_get_pid"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_bus_creds_get_pid, sd_bus_creds_get_pid_starttime, sd_bus_creds_get_tid, sd_bus_creds_get_uid, sd_bus_creds_get_gid, sd_bus_creds_get_comm, sd_bus_creds_get_tid_comm, sd_bus_creds_get_exe, sd_bus_creds_get_cmdline, sd_bus_creds_get_cgroup, sd_bus_creds_get_unit, sd_bus_creds_get_user_unit, sd_bus_creds_get_slice, sd_bus_creds_get_session, sd_bus_creds_get_owner_uid, sd_bus_creds_has_effective_cap, sd_bus_creds_has_permitted_cap, sd_bus_creds_has_inheritable_cap, sd_bus_creds_has_bounding_cap, sd_bus_creds_get_selinux_context, sd_bus_creds_get_audit_session_id, sd_bus_creds_get_audit_login_uid, sd_bus_creds_get_unique_name, sd_bus_creds_get_well_known_names — Retrieve fields from a credentials object</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-bus.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_pid</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>pid_t *<var class="pdparam">pid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_pid_starttime</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>uint64_t *<var class="pdparam">usec</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_tid</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>pid_t *<var class="pdparam">tid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_pid</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>uid_t *<var class="pdparam">uid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_gid</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>gid_t *<var class="pdparam">gid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_comm</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">comm</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_tid_comm</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">comm</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_exe</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">exe</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_cmdline</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>char ***<var class="pdparam">cmdline</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_cgroup</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">cgroup</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_unit</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">unit</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_user_unit</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">unit</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_slice</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">slice</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_session</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">slice</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_owner_uid</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>uid_t *<var class="pdparam">uid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_has_effective_cap</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">capability</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_has_permitted_cap</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">capability</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_has_inheritable_cap</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">capability</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_has_bounding_cap</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">capability</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_selinux_context</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">context</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_audit_session_id</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>uint32_t *<var class="pdparam">sessionid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_audit_login_uid</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>uid_t *<var class="pdparam">loginuid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_unique_name</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">name</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_well_known_names</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>char ***<var class="pdparam">name</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214179373600"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p>These functions return information from an
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="sd_bus_creds_get_pid"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_bus_creds_get_pid, sd_bus_creds_get_pid_starttime, sd_bus_creds_get_tid, sd_bus_creds_get_uid, sd_bus_creds_get_gid, sd_bus_creds_get_comm, sd_bus_creds_get_tid_comm, sd_bus_creds_get_exe, sd_bus_creds_get_cmdline, sd_bus_creds_get_cgroup, sd_bus_creds_get_unit, sd_bus_creds_get_user_unit, sd_bus_creds_get_slice, sd_bus_creds_get_session, sd_bus_creds_get_owner_uid, sd_bus_creds_has_effective_cap, sd_bus_creds_has_permitted_cap, sd_bus_creds_has_inheritable_cap, sd_bus_creds_has_bounding_cap, sd_bus_creds_get_selinux_context, sd_bus_creds_get_audit_session_id, sd_bus_creds_get_audit_login_uid, sd_bus_creds_get_unique_name, sd_bus_creds_get_well_known_names — Retrieve fields from a credentials object</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-bus.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_pid</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>pid_t *<var class="pdparam">pid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_pid_starttime</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>uint64_t *<var class="pdparam">usec</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_tid</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>pid_t *<var class="pdparam">tid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_pid</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>uid_t *<var class="pdparam">uid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_gid</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>gid_t *<var class="pdparam">gid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_comm</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">comm</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_tid_comm</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">comm</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_exe</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">exe</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_cmdline</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>char ***<var class="pdparam">cmdline</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_cgroup</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">cgroup</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_unit</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">unit</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_user_unit</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">unit</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_slice</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">slice</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_session</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">slice</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_owner_uid</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>uid_t *<var class="pdparam">uid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_has_effective_cap</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">capability</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_has_permitted_cap</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">capability</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_has_inheritable_cap</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">capability</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_has_bounding_cap</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">capability</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_selinux_context</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">context</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_audit_session_id</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>uint32_t *<var class="pdparam">sessionid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_audit_login_uid</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>uid_t *<var class="pdparam">loginuid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_unique_name</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">name</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_well_known_names</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>char ***<var class="pdparam">name</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214195952656"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p>These functions return information from an
     <em class="parameter"><code>sd_bus_creds</code></em> object. It may be created with
     <a href="sd_bus_creds_new_from_pid.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_creds_new_from_pid</span>(3)</span></a>,
     in which case it will describe the specified process, or it may be
     of strings. Each invidividual string is NUL-terminated, and the
     array is NULL-terminated as a whole. It will be valid as long as
     <em class="parameter"><code>c</code></em> remains valid, and should not be freed or
-    modified by the caller.</p></div><div class="refsect1"><a name="idm214179328320"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>On success, these calls return 0 or a positive integer. On
+    modified by the caller.</p></div><div class="refsect1"><a name="idm214195728128"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>On success, these calls return 0 or a positive integer. On
     failure, these calls return a negative errno-style error code.
-    </p></div><div class="refsect1"><a name="idm214179327024"></a><h2 id="Errors">Errors<a class="headerlink" title="Permalink to this headline" href="#Errors">¶</a></h2><p>Returned errors may indicate the following problems:</p><div class="variablelist"><dl class="variablelist"><dt id="-ENODATA"><span class="term"><code class="varname">-ENODATA</code></span><a class="headerlink" title="Permalink to this term" href="#-ENODATA">¶</a></dt><dd><p>Given field is not available in
+    </p></div><div class="refsect1"><a name="idm214195726800"></a><h2 id="Errors">Errors<a class="headerlink" title="Permalink to this headline" href="#Errors">¶</a></h2><p>Returned errors may indicate the following problems:</p><div class="variablelist"><dl class="variablelist"><dt id="-ENODATA"><span class="term"><code class="varname">-ENODATA</code></span><a class="headerlink" title="Permalink to this term" href="#-ENODATA">¶</a></dt><dd><p>Given field is not available in
         <em class="parameter"><code>c</code></em>.</p></dd><dt id="-ENOENT"><span class="term"><code class="varname">-ENOENT</code></span><a class="headerlink" title="Permalink to this term" href="#-ENOENT">¶</a></dt><dd><p>Given field is not specified for the sender.
         This will be returned by <code class="function">sd_bus_get_unit</code>,
         <code class="function">sd_bus_get_user_unit</code>,
         slice, logind session, or a systemd user session.</p></dd><dt id="-ENXIO"><span class="term"><code class="varname">-ENXIO</code></span><a class="headerlink" title="Permalink to this term" href="#-ENXIO">¶</a></dt><dd><p>An error occured in parsing cgroup paths.
         <code class="filename">libsystemd</code> might be out of sync with
         the running systemd version.</p></dd><dt id="-EINVAL"><span class="term"><code class="varname">-EINVAL</code></span><a class="headerlink" title="Permalink to this term" href="#-EINVAL">¶</a></dt><dd><p>Specified pointer parameter is <code class="constant">NULL</code>.
-        </p></dd><dt id="-ENOMEM"><span class="term"><code class="varname">-ENOMEM</code></span><a class="headerlink" title="Permalink to this term" href="#-ENOMEM">¶</a></dt><dd><p>Memory allocation failed.</p></dd></dl></div></div><div class="refsect1"><a name="idm214179313104"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p><code class="function">sd_bus_open_user()</code> and other functions
+        </p></dd><dt id="-ENOMEM"><span class="term"><code class="varname">-ENOMEM</code></span><a class="headerlink" title="Permalink to this term" href="#-ENOMEM">¶</a></dt><dd><p>Memory allocation failed.</p></dd></dl></div></div><div class="refsect1"><a name="idm214199611568"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p><code class="function">sd_bus_open_user()</code> and other functions
     described here are available as a shared library, which can be
     compiled and linked to with the
     <code class="constant">libsystemd</code> <a href="pkg-config.html"><span class="citerefentry"><span class="refentrytitle">pkg-config</span>(1)</span></a>
-    file.</p></div><div class="refsect1"><a name="idm214179310160"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+    file.</p></div><div class="refsect1"><a name="idm214199608400"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
       <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
       <a href="sd-bus.html"><span class="citerefentry"><span class="refentrytitle">sd-bus</span>(3)</span></a>,
       <a href="credentials.html"><span class="citerefentry"><span class="refentrytitle">credentials</span>(7)</span></a>,
index 4782ce6e05c82e1c452d8e659c088efbb67310ce..f9e3ba706bb0e6c41ca884ddb153b37772245621 100644 (file)
@@ -19,7 +19,7 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="sd_bus_creds_get_pid"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_bus_creds_get_pid, sd_bus_creds_get_pid_starttime, sd_bus_creds_get_tid, sd_bus_creds_get_uid, sd_bus_creds_get_gid, sd_bus_creds_get_comm, sd_bus_creds_get_tid_comm, sd_bus_creds_get_exe, sd_bus_creds_get_cmdline, sd_bus_creds_get_cgroup, sd_bus_creds_get_unit, sd_bus_creds_get_user_unit, sd_bus_creds_get_slice, sd_bus_creds_get_session, sd_bus_creds_get_owner_uid, sd_bus_creds_has_effective_cap, sd_bus_creds_has_permitted_cap, sd_bus_creds_has_inheritable_cap, sd_bus_creds_has_bounding_cap, sd_bus_creds_get_selinux_context, sd_bus_creds_get_audit_session_id, sd_bus_creds_get_audit_login_uid, sd_bus_creds_get_unique_name, sd_bus_creds_get_well_known_names — Retrieve fields from a credentials object</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-bus.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_pid</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>pid_t *<var class="pdparam">pid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_pid_starttime</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>uint64_t *<var class="pdparam">usec</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_tid</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>pid_t *<var class="pdparam">tid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_pid</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>uid_t *<var class="pdparam">uid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_gid</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>gid_t *<var class="pdparam">gid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_comm</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">comm</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_tid_comm</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">comm</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_exe</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">exe</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_cmdline</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>char ***<var class="pdparam">cmdline</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_cgroup</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">cgroup</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_unit</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">unit</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_user_unit</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">unit</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_slice</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">slice</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_session</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">slice</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_owner_uid</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>uid_t *<var class="pdparam">uid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_has_effective_cap</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">capability</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_has_permitted_cap</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">capability</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_has_inheritable_cap</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">capability</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_has_bounding_cap</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">capability</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_selinux_context</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">context</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_audit_session_id</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>uint32_t *<var class="pdparam">sessionid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_audit_login_uid</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>uid_t *<var class="pdparam">loginuid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_unique_name</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">name</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_well_known_names</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>char ***<var class="pdparam">name</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214179373600"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p>These functions return information from an
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="sd_bus_creds_get_pid"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_bus_creds_get_pid, sd_bus_creds_get_pid_starttime, sd_bus_creds_get_tid, sd_bus_creds_get_uid, sd_bus_creds_get_gid, sd_bus_creds_get_comm, sd_bus_creds_get_tid_comm, sd_bus_creds_get_exe, sd_bus_creds_get_cmdline, sd_bus_creds_get_cgroup, sd_bus_creds_get_unit, sd_bus_creds_get_user_unit, sd_bus_creds_get_slice, sd_bus_creds_get_session, sd_bus_creds_get_owner_uid, sd_bus_creds_has_effective_cap, sd_bus_creds_has_permitted_cap, sd_bus_creds_has_inheritable_cap, sd_bus_creds_has_bounding_cap, sd_bus_creds_get_selinux_context, sd_bus_creds_get_audit_session_id, sd_bus_creds_get_audit_login_uid, sd_bus_creds_get_unique_name, sd_bus_creds_get_well_known_names — Retrieve fields from a credentials object</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-bus.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_pid</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>pid_t *<var class="pdparam">pid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_pid_starttime</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>uint64_t *<var class="pdparam">usec</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_tid</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>pid_t *<var class="pdparam">tid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_pid</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>uid_t *<var class="pdparam">uid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_gid</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>gid_t *<var class="pdparam">gid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_comm</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">comm</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_tid_comm</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">comm</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_exe</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">exe</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_cmdline</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>char ***<var class="pdparam">cmdline</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_cgroup</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">cgroup</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_unit</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">unit</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_user_unit</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">unit</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_slice</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">slice</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_session</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">slice</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_owner_uid</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>uid_t *<var class="pdparam">uid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_has_effective_cap</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">capability</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_has_permitted_cap</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">capability</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_has_inheritable_cap</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">capability</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_has_bounding_cap</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">capability</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_selinux_context</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">context</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_audit_session_id</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>uint32_t *<var class="pdparam">sessionid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_audit_login_uid</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>uid_t *<var class="pdparam">loginuid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_unique_name</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">name</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_well_known_names</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>char ***<var class="pdparam">name</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214195952656"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p>These functions return information from an
     <em class="parameter"><code>sd_bus_creds</code></em> object. It may be created with
     <a href="sd_bus_creds_new_from_pid.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_creds_new_from_pid</span>(3)</span></a>,
     in which case it will describe the specified process, or it may be
     of strings. Each invidividual string is NUL-terminated, and the
     array is NULL-terminated as a whole. It will be valid as long as
     <em class="parameter"><code>c</code></em> remains valid, and should not be freed or
-    modified by the caller.</p></div><div class="refsect1"><a name="idm214179328320"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>On success, these calls return 0 or a positive integer. On
+    modified by the caller.</p></div><div class="refsect1"><a name="idm214195728128"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>On success, these calls return 0 or a positive integer. On
     failure, these calls return a negative errno-style error code.
-    </p></div><div class="refsect1"><a name="idm214179327024"></a><h2 id="Errors">Errors<a class="headerlink" title="Permalink to this headline" href="#Errors">¶</a></h2><p>Returned errors may indicate the following problems:</p><div class="variablelist"><dl class="variablelist"><dt id="-ENODATA"><span class="term"><code class="varname">-ENODATA</code></span><a class="headerlink" title="Permalink to this term" href="#-ENODATA">¶</a></dt><dd><p>Given field is not available in
+    </p></div><div class="refsect1"><a name="idm214195726800"></a><h2 id="Errors">Errors<a class="headerlink" title="Permalink to this headline" href="#Errors">¶</a></h2><p>Returned errors may indicate the following problems:</p><div class="variablelist"><dl class="variablelist"><dt id="-ENODATA"><span class="term"><code class="varname">-ENODATA</code></span><a class="headerlink" title="Permalink to this term" href="#-ENODATA">¶</a></dt><dd><p>Given field is not available in
         <em class="parameter"><code>c</code></em>.</p></dd><dt id="-ENOENT"><span class="term"><code class="varname">-ENOENT</code></span><a class="headerlink" title="Permalink to this term" href="#-ENOENT">¶</a></dt><dd><p>Given field is not specified for the sender.
         This will be returned by <code class="function">sd_bus_get_unit</code>,
         <code class="function">sd_bus_get_user_unit</code>,
         slice, logind session, or a systemd user session.</p></dd><dt id="-ENXIO"><span class="term"><code class="varname">-ENXIO</code></span><a class="headerlink" title="Permalink to this term" href="#-ENXIO">¶</a></dt><dd><p>An error occured in parsing cgroup paths.
         <code class="filename">libsystemd</code> might be out of sync with
         the running systemd version.</p></dd><dt id="-EINVAL"><span class="term"><code class="varname">-EINVAL</code></span><a class="headerlink" title="Permalink to this term" href="#-EINVAL">¶</a></dt><dd><p>Specified pointer parameter is <code class="constant">NULL</code>.
-        </p></dd><dt id="-ENOMEM"><span class="term"><code class="varname">-ENOMEM</code></span><a class="headerlink" title="Permalink to this term" href="#-ENOMEM">¶</a></dt><dd><p>Memory allocation failed.</p></dd></dl></div></div><div class="refsect1"><a name="idm214179313104"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p><code class="function">sd_bus_open_user()</code> and other functions
+        </p></dd><dt id="-ENOMEM"><span class="term"><code class="varname">-ENOMEM</code></span><a class="headerlink" title="Permalink to this term" href="#-ENOMEM">¶</a></dt><dd><p>Memory allocation failed.</p></dd></dl></div></div><div class="refsect1"><a name="idm214199611568"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p><code class="function">sd_bus_open_user()</code> and other functions
     described here are available as a shared library, which can be
     compiled and linked to with the
     <code class="constant">libsystemd</code> <a href="pkg-config.html"><span class="citerefentry"><span class="refentrytitle">pkg-config</span>(1)</span></a>
-    file.</p></div><div class="refsect1"><a name="idm214179310160"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+    file.</p></div><div class="refsect1"><a name="idm214199608400"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
       <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
       <a href="sd-bus.html"><span class="citerefentry"><span class="refentrytitle">sd-bus</span>(3)</span></a>,
       <a href="credentials.html"><span class="citerefentry"><span class="refentrytitle">credentials</span>(7)</span></a>,
index 4782ce6e05c82e1c452d8e659c088efbb67310ce..f9e3ba706bb0e6c41ca884ddb153b37772245621 100644 (file)
@@ -19,7 +19,7 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="sd_bus_creds_get_pid"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_bus_creds_get_pid, sd_bus_creds_get_pid_starttime, sd_bus_creds_get_tid, sd_bus_creds_get_uid, sd_bus_creds_get_gid, sd_bus_creds_get_comm, sd_bus_creds_get_tid_comm, sd_bus_creds_get_exe, sd_bus_creds_get_cmdline, sd_bus_creds_get_cgroup, sd_bus_creds_get_unit, sd_bus_creds_get_user_unit, sd_bus_creds_get_slice, sd_bus_creds_get_session, sd_bus_creds_get_owner_uid, sd_bus_creds_has_effective_cap, sd_bus_creds_has_permitted_cap, sd_bus_creds_has_inheritable_cap, sd_bus_creds_has_bounding_cap, sd_bus_creds_get_selinux_context, sd_bus_creds_get_audit_session_id, sd_bus_creds_get_audit_login_uid, sd_bus_creds_get_unique_name, sd_bus_creds_get_well_known_names — Retrieve fields from a credentials object</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-bus.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_pid</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>pid_t *<var class="pdparam">pid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_pid_starttime</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>uint64_t *<var class="pdparam">usec</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_tid</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>pid_t *<var class="pdparam">tid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_pid</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>uid_t *<var class="pdparam">uid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_gid</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>gid_t *<var class="pdparam">gid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_comm</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">comm</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_tid_comm</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">comm</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_exe</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">exe</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_cmdline</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>char ***<var class="pdparam">cmdline</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_cgroup</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">cgroup</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_unit</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">unit</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_user_unit</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">unit</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_slice</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">slice</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_session</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">slice</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_owner_uid</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>uid_t *<var class="pdparam">uid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_has_effective_cap</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">capability</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_has_permitted_cap</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">capability</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_has_inheritable_cap</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">capability</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_has_bounding_cap</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">capability</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_selinux_context</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">context</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_audit_session_id</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>uint32_t *<var class="pdparam">sessionid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_audit_login_uid</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>uid_t *<var class="pdparam">loginuid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_unique_name</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">name</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_well_known_names</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>char ***<var class="pdparam">name</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214179373600"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p>These functions return information from an
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="sd_bus_creds_get_pid"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_bus_creds_get_pid, sd_bus_creds_get_pid_starttime, sd_bus_creds_get_tid, sd_bus_creds_get_uid, sd_bus_creds_get_gid, sd_bus_creds_get_comm, sd_bus_creds_get_tid_comm, sd_bus_creds_get_exe, sd_bus_creds_get_cmdline, sd_bus_creds_get_cgroup, sd_bus_creds_get_unit, sd_bus_creds_get_user_unit, sd_bus_creds_get_slice, sd_bus_creds_get_session, sd_bus_creds_get_owner_uid, sd_bus_creds_has_effective_cap, sd_bus_creds_has_permitted_cap, sd_bus_creds_has_inheritable_cap, sd_bus_creds_has_bounding_cap, sd_bus_creds_get_selinux_context, sd_bus_creds_get_audit_session_id, sd_bus_creds_get_audit_login_uid, sd_bus_creds_get_unique_name, sd_bus_creds_get_well_known_names — Retrieve fields from a credentials object</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-bus.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_pid</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>pid_t *<var class="pdparam">pid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_pid_starttime</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>uint64_t *<var class="pdparam">usec</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_tid</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>pid_t *<var class="pdparam">tid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_pid</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>uid_t *<var class="pdparam">uid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_gid</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>gid_t *<var class="pdparam">gid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_comm</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">comm</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_tid_comm</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">comm</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_exe</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">exe</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_cmdline</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>char ***<var class="pdparam">cmdline</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_cgroup</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">cgroup</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_unit</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">unit</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_user_unit</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">unit</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_slice</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">slice</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_session</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">slice</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_owner_uid</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>uid_t *<var class="pdparam">uid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_has_effective_cap</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">capability</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_has_permitted_cap</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">capability</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_has_inheritable_cap</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">capability</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_has_bounding_cap</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">capability</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_selinux_context</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">context</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_audit_session_id</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>uint32_t *<var class="pdparam">sessionid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_audit_login_uid</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>uid_t *<var class="pdparam">loginuid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_unique_name</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">name</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_well_known_names</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>char ***<var class="pdparam">name</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214195952656"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p>These functions return information from an
     <em class="parameter"><code>sd_bus_creds</code></em> object. It may be created with
     <a href="sd_bus_creds_new_from_pid.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_creds_new_from_pid</span>(3)</span></a>,
     in which case it will describe the specified process, or it may be
     of strings. Each invidividual string is NUL-terminated, and the
     array is NULL-terminated as a whole. It will be valid as long as
     <em class="parameter"><code>c</code></em> remains valid, and should not be freed or
-    modified by the caller.</p></div><div class="refsect1"><a name="idm214179328320"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>On success, these calls return 0 or a positive integer. On
+    modified by the caller.</p></div><div class="refsect1"><a name="idm214195728128"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>On success, these calls return 0 or a positive integer. On
     failure, these calls return a negative errno-style error code.
-    </p></div><div class="refsect1"><a name="idm214179327024"></a><h2 id="Errors">Errors<a class="headerlink" title="Permalink to this headline" href="#Errors">¶</a></h2><p>Returned errors may indicate the following problems:</p><div class="variablelist"><dl class="variablelist"><dt id="-ENODATA"><span class="term"><code class="varname">-ENODATA</code></span><a class="headerlink" title="Permalink to this term" href="#-ENODATA">¶</a></dt><dd><p>Given field is not available in
+    </p></div><div class="refsect1"><a name="idm214195726800"></a><h2 id="Errors">Errors<a class="headerlink" title="Permalink to this headline" href="#Errors">¶</a></h2><p>Returned errors may indicate the following problems:</p><div class="variablelist"><dl class="variablelist"><dt id="-ENODATA"><span class="term"><code class="varname">-ENODATA</code></span><a class="headerlink" title="Permalink to this term" href="#-ENODATA">¶</a></dt><dd><p>Given field is not available in
         <em class="parameter"><code>c</code></em>.</p></dd><dt id="-ENOENT"><span class="term"><code class="varname">-ENOENT</code></span><a class="headerlink" title="Permalink to this term" href="#-ENOENT">¶</a></dt><dd><p>Given field is not specified for the sender.
         This will be returned by <code class="function">sd_bus_get_unit</code>,
         <code class="function">sd_bus_get_user_unit</code>,
         slice, logind session, or a systemd user session.</p></dd><dt id="-ENXIO"><span class="term"><code class="varname">-ENXIO</code></span><a class="headerlink" title="Permalink to this term" href="#-ENXIO">¶</a></dt><dd><p>An error occured in parsing cgroup paths.
         <code class="filename">libsystemd</code> might be out of sync with
         the running systemd version.</p></dd><dt id="-EINVAL"><span class="term"><code class="varname">-EINVAL</code></span><a class="headerlink" title="Permalink to this term" href="#-EINVAL">¶</a></dt><dd><p>Specified pointer parameter is <code class="constant">NULL</code>.
-        </p></dd><dt id="-ENOMEM"><span class="term"><code class="varname">-ENOMEM</code></span><a class="headerlink" title="Permalink to this term" href="#-ENOMEM">¶</a></dt><dd><p>Memory allocation failed.</p></dd></dl></div></div><div class="refsect1"><a name="idm214179313104"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p><code class="function">sd_bus_open_user()</code> and other functions
+        </p></dd><dt id="-ENOMEM"><span class="term"><code class="varname">-ENOMEM</code></span><a class="headerlink" title="Permalink to this term" href="#-ENOMEM">¶</a></dt><dd><p>Memory allocation failed.</p></dd></dl></div></div><div class="refsect1"><a name="idm214199611568"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p><code class="function">sd_bus_open_user()</code> and other functions
     described here are available as a shared library, which can be
     compiled and linked to with the
     <code class="constant">libsystemd</code> <a href="pkg-config.html"><span class="citerefentry"><span class="refentrytitle">pkg-config</span>(1)</span></a>
-    file.</p></div><div class="refsect1"><a name="idm214179310160"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+    file.</p></div><div class="refsect1"><a name="idm214199608400"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
       <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
       <a href="sd-bus.html"><span class="citerefentry"><span class="refentrytitle">sd-bus</span>(3)</span></a>,
       <a href="credentials.html"><span class="citerefentry"><span class="refentrytitle">credentials</span>(7)</span></a>,
index 4782ce6e05c82e1c452d8e659c088efbb67310ce..f9e3ba706bb0e6c41ca884ddb153b37772245621 100644 (file)
@@ -19,7 +19,7 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="sd_bus_creds_get_pid"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_bus_creds_get_pid, sd_bus_creds_get_pid_starttime, sd_bus_creds_get_tid, sd_bus_creds_get_uid, sd_bus_creds_get_gid, sd_bus_creds_get_comm, sd_bus_creds_get_tid_comm, sd_bus_creds_get_exe, sd_bus_creds_get_cmdline, sd_bus_creds_get_cgroup, sd_bus_creds_get_unit, sd_bus_creds_get_user_unit, sd_bus_creds_get_slice, sd_bus_creds_get_session, sd_bus_creds_get_owner_uid, sd_bus_creds_has_effective_cap, sd_bus_creds_has_permitted_cap, sd_bus_creds_has_inheritable_cap, sd_bus_creds_has_bounding_cap, sd_bus_creds_get_selinux_context, sd_bus_creds_get_audit_session_id, sd_bus_creds_get_audit_login_uid, sd_bus_creds_get_unique_name, sd_bus_creds_get_well_known_names — Retrieve fields from a credentials object</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-bus.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_pid</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>pid_t *<var class="pdparam">pid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_pid_starttime</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>uint64_t *<var class="pdparam">usec</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_tid</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>pid_t *<var class="pdparam">tid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_pid</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>uid_t *<var class="pdparam">uid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_gid</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>gid_t *<var class="pdparam">gid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_comm</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">comm</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_tid_comm</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">comm</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_exe</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">exe</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_cmdline</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>char ***<var class="pdparam">cmdline</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_cgroup</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">cgroup</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_unit</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">unit</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_user_unit</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">unit</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_slice</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">slice</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_session</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">slice</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_owner_uid</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>uid_t *<var class="pdparam">uid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_has_effective_cap</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">capability</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_has_permitted_cap</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">capability</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_has_inheritable_cap</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">capability</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_has_bounding_cap</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">capability</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_selinux_context</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">context</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_audit_session_id</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>uint32_t *<var class="pdparam">sessionid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_audit_login_uid</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>uid_t *<var class="pdparam">loginuid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_unique_name</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">name</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_well_known_names</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>char ***<var class="pdparam">name</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214179373600"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p>These functions return information from an
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="sd_bus_creds_get_pid"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_bus_creds_get_pid, sd_bus_creds_get_pid_starttime, sd_bus_creds_get_tid, sd_bus_creds_get_uid, sd_bus_creds_get_gid, sd_bus_creds_get_comm, sd_bus_creds_get_tid_comm, sd_bus_creds_get_exe, sd_bus_creds_get_cmdline, sd_bus_creds_get_cgroup, sd_bus_creds_get_unit, sd_bus_creds_get_user_unit, sd_bus_creds_get_slice, sd_bus_creds_get_session, sd_bus_creds_get_owner_uid, sd_bus_creds_has_effective_cap, sd_bus_creds_has_permitted_cap, sd_bus_creds_has_inheritable_cap, sd_bus_creds_has_bounding_cap, sd_bus_creds_get_selinux_context, sd_bus_creds_get_audit_session_id, sd_bus_creds_get_audit_login_uid, sd_bus_creds_get_unique_name, sd_bus_creds_get_well_known_names — Retrieve fields from a credentials object</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-bus.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_pid</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>pid_t *<var class="pdparam">pid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_pid_starttime</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>uint64_t *<var class="pdparam">usec</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_tid</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>pid_t *<var class="pdparam">tid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_pid</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>uid_t *<var class="pdparam">uid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_gid</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>gid_t *<var class="pdparam">gid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_comm</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">comm</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_tid_comm</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">comm</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_exe</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">exe</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_cmdline</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>char ***<var class="pdparam">cmdline</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_cgroup</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">cgroup</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_unit</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">unit</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_user_unit</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">unit</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_slice</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">slice</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_session</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">slice</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_owner_uid</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>uid_t *<var class="pdparam">uid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_has_effective_cap</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">capability</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_has_permitted_cap</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">capability</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_has_inheritable_cap</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">capability</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_has_bounding_cap</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">capability</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_selinux_context</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">context</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_audit_session_id</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>uint32_t *<var class="pdparam">sessionid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_audit_login_uid</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>uid_t *<var class="pdparam">loginuid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_unique_name</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">name</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_well_known_names</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>char ***<var class="pdparam">name</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214195952656"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p>These functions return information from an
     <em class="parameter"><code>sd_bus_creds</code></em> object. It may be created with
     <a href="sd_bus_creds_new_from_pid.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_creds_new_from_pid</span>(3)</span></a>,
     in which case it will describe the specified process, or it may be
     of strings. Each invidividual string is NUL-terminated, and the
     array is NULL-terminated as a whole. It will be valid as long as
     <em class="parameter"><code>c</code></em> remains valid, and should not be freed or
-    modified by the caller.</p></div><div class="refsect1"><a name="idm214179328320"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>On success, these calls return 0 or a positive integer. On
+    modified by the caller.</p></div><div class="refsect1"><a name="idm214195728128"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>On success, these calls return 0 or a positive integer. On
     failure, these calls return a negative errno-style error code.
-    </p></div><div class="refsect1"><a name="idm214179327024"></a><h2 id="Errors">Errors<a class="headerlink" title="Permalink to this headline" href="#Errors">¶</a></h2><p>Returned errors may indicate the following problems:</p><div class="variablelist"><dl class="variablelist"><dt id="-ENODATA"><span class="term"><code class="varname">-ENODATA</code></span><a class="headerlink" title="Permalink to this term" href="#-ENODATA">¶</a></dt><dd><p>Given field is not available in
+    </p></div><div class="refsect1"><a name="idm214195726800"></a><h2 id="Errors">Errors<a class="headerlink" title="Permalink to this headline" href="#Errors">¶</a></h2><p>Returned errors may indicate the following problems:</p><div class="variablelist"><dl class="variablelist"><dt id="-ENODATA"><span class="term"><code class="varname">-ENODATA</code></span><a class="headerlink" title="Permalink to this term" href="#-ENODATA">¶</a></dt><dd><p>Given field is not available in
         <em class="parameter"><code>c</code></em>.</p></dd><dt id="-ENOENT"><span class="term"><code class="varname">-ENOENT</code></span><a class="headerlink" title="Permalink to this term" href="#-ENOENT">¶</a></dt><dd><p>Given field is not specified for the sender.
         This will be returned by <code class="function">sd_bus_get_unit</code>,
         <code class="function">sd_bus_get_user_unit</code>,
         slice, logind session, or a systemd user session.</p></dd><dt id="-ENXIO"><span class="term"><code class="varname">-ENXIO</code></span><a class="headerlink" title="Permalink to this term" href="#-ENXIO">¶</a></dt><dd><p>An error occured in parsing cgroup paths.
         <code class="filename">libsystemd</code> might be out of sync with
         the running systemd version.</p></dd><dt id="-EINVAL"><span class="term"><code class="varname">-EINVAL</code></span><a class="headerlink" title="Permalink to this term" href="#-EINVAL">¶</a></dt><dd><p>Specified pointer parameter is <code class="constant">NULL</code>.
-        </p></dd><dt id="-ENOMEM"><span class="term"><code class="varname">-ENOMEM</code></span><a class="headerlink" title="Permalink to this term" href="#-ENOMEM">¶</a></dt><dd><p>Memory allocation failed.</p></dd></dl></div></div><div class="refsect1"><a name="idm214179313104"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p><code class="function">sd_bus_open_user()</code> and other functions
+        </p></dd><dt id="-ENOMEM"><span class="term"><code class="varname">-ENOMEM</code></span><a class="headerlink" title="Permalink to this term" href="#-ENOMEM">¶</a></dt><dd><p>Memory allocation failed.</p></dd></dl></div></div><div class="refsect1"><a name="idm214199611568"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p><code class="function">sd_bus_open_user()</code> and other functions
     described here are available as a shared library, which can be
     compiled and linked to with the
     <code class="constant">libsystemd</code> <a href="pkg-config.html"><span class="citerefentry"><span class="refentrytitle">pkg-config</span>(1)</span></a>
-    file.</p></div><div class="refsect1"><a name="idm214179310160"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+    file.</p></div><div class="refsect1"><a name="idm214199608400"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
       <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
       <a href="sd-bus.html"><span class="citerefentry"><span class="refentrytitle">sd-bus</span>(3)</span></a>,
       <a href="credentials.html"><span class="citerefentry"><span class="refentrytitle">credentials</span>(7)</span></a>,
index 4782ce6e05c82e1c452d8e659c088efbb67310ce..f9e3ba706bb0e6c41ca884ddb153b37772245621 100644 (file)
@@ -19,7 +19,7 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="sd_bus_creds_get_pid"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_bus_creds_get_pid, sd_bus_creds_get_pid_starttime, sd_bus_creds_get_tid, sd_bus_creds_get_uid, sd_bus_creds_get_gid, sd_bus_creds_get_comm, sd_bus_creds_get_tid_comm, sd_bus_creds_get_exe, sd_bus_creds_get_cmdline, sd_bus_creds_get_cgroup, sd_bus_creds_get_unit, sd_bus_creds_get_user_unit, sd_bus_creds_get_slice, sd_bus_creds_get_session, sd_bus_creds_get_owner_uid, sd_bus_creds_has_effective_cap, sd_bus_creds_has_permitted_cap, sd_bus_creds_has_inheritable_cap, sd_bus_creds_has_bounding_cap, sd_bus_creds_get_selinux_context, sd_bus_creds_get_audit_session_id, sd_bus_creds_get_audit_login_uid, sd_bus_creds_get_unique_name, sd_bus_creds_get_well_known_names — Retrieve fields from a credentials object</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-bus.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_pid</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>pid_t *<var class="pdparam">pid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_pid_starttime</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>uint64_t *<var class="pdparam">usec</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_tid</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>pid_t *<var class="pdparam">tid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_pid</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>uid_t *<var class="pdparam">uid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_gid</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>gid_t *<var class="pdparam">gid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_comm</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">comm</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_tid_comm</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">comm</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_exe</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">exe</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_cmdline</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>char ***<var class="pdparam">cmdline</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_cgroup</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">cgroup</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_unit</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">unit</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_user_unit</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">unit</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_slice</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">slice</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_session</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">slice</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_owner_uid</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>uid_t *<var class="pdparam">uid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_has_effective_cap</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">capability</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_has_permitted_cap</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">capability</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_has_inheritable_cap</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">capability</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_has_bounding_cap</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">capability</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_selinux_context</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">context</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_audit_session_id</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>uint32_t *<var class="pdparam">sessionid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_audit_login_uid</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>uid_t *<var class="pdparam">loginuid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_unique_name</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">name</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_well_known_names</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>char ***<var class="pdparam">name</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214179373600"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p>These functions return information from an
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="sd_bus_creds_get_pid"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_bus_creds_get_pid, sd_bus_creds_get_pid_starttime, sd_bus_creds_get_tid, sd_bus_creds_get_uid, sd_bus_creds_get_gid, sd_bus_creds_get_comm, sd_bus_creds_get_tid_comm, sd_bus_creds_get_exe, sd_bus_creds_get_cmdline, sd_bus_creds_get_cgroup, sd_bus_creds_get_unit, sd_bus_creds_get_user_unit, sd_bus_creds_get_slice, sd_bus_creds_get_session, sd_bus_creds_get_owner_uid, sd_bus_creds_has_effective_cap, sd_bus_creds_has_permitted_cap, sd_bus_creds_has_inheritable_cap, sd_bus_creds_has_bounding_cap, sd_bus_creds_get_selinux_context, sd_bus_creds_get_audit_session_id, sd_bus_creds_get_audit_login_uid, sd_bus_creds_get_unique_name, sd_bus_creds_get_well_known_names — Retrieve fields from a credentials object</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-bus.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_pid</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>pid_t *<var class="pdparam">pid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_pid_starttime</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>uint64_t *<var class="pdparam">usec</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_tid</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>pid_t *<var class="pdparam">tid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_pid</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>uid_t *<var class="pdparam">uid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_gid</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>gid_t *<var class="pdparam">gid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_comm</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">comm</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_tid_comm</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">comm</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_exe</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">exe</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_cmdline</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>char ***<var class="pdparam">cmdline</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_cgroup</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">cgroup</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_unit</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">unit</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_user_unit</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">unit</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_slice</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">slice</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_session</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">slice</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_owner_uid</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>uid_t *<var class="pdparam">uid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_has_effective_cap</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">capability</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_has_permitted_cap</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">capability</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_has_inheritable_cap</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">capability</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_has_bounding_cap</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">capability</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_selinux_context</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">context</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_audit_session_id</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>uint32_t *<var class="pdparam">sessionid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_audit_login_uid</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>uid_t *<var class="pdparam">loginuid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_unique_name</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">name</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_well_known_names</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>char ***<var class="pdparam">name</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214195952656"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p>These functions return information from an
     <em class="parameter"><code>sd_bus_creds</code></em> object. It may be created with
     <a href="sd_bus_creds_new_from_pid.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_creds_new_from_pid</span>(3)</span></a>,
     in which case it will describe the specified process, or it may be
     of strings. Each invidividual string is NUL-terminated, and the
     array is NULL-terminated as a whole. It will be valid as long as
     <em class="parameter"><code>c</code></em> remains valid, and should not be freed or
-    modified by the caller.</p></div><div class="refsect1"><a name="idm214179328320"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>On success, these calls return 0 or a positive integer. On
+    modified by the caller.</p></div><div class="refsect1"><a name="idm214195728128"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>On success, these calls return 0 or a positive integer. On
     failure, these calls return a negative errno-style error code.
-    </p></div><div class="refsect1"><a name="idm214179327024"></a><h2 id="Errors">Errors<a class="headerlink" title="Permalink to this headline" href="#Errors">¶</a></h2><p>Returned errors may indicate the following problems:</p><div class="variablelist"><dl class="variablelist"><dt id="-ENODATA"><span class="term"><code class="varname">-ENODATA</code></span><a class="headerlink" title="Permalink to this term" href="#-ENODATA">¶</a></dt><dd><p>Given field is not available in
+    </p></div><div class="refsect1"><a name="idm214195726800"></a><h2 id="Errors">Errors<a class="headerlink" title="Permalink to this headline" href="#Errors">¶</a></h2><p>Returned errors may indicate the following problems:</p><div class="variablelist"><dl class="variablelist"><dt id="-ENODATA"><span class="term"><code class="varname">-ENODATA</code></span><a class="headerlink" title="Permalink to this term" href="#-ENODATA">¶</a></dt><dd><p>Given field is not available in
         <em class="parameter"><code>c</code></em>.</p></dd><dt id="-ENOENT"><span class="term"><code class="varname">-ENOENT</code></span><a class="headerlink" title="Permalink to this term" href="#-ENOENT">¶</a></dt><dd><p>Given field is not specified for the sender.
         This will be returned by <code class="function">sd_bus_get_unit</code>,
         <code class="function">sd_bus_get_user_unit</code>,
         slice, logind session, or a systemd user session.</p></dd><dt id="-ENXIO"><span class="term"><code class="varname">-ENXIO</code></span><a class="headerlink" title="Permalink to this term" href="#-ENXIO">¶</a></dt><dd><p>An error occured in parsing cgroup paths.
         <code class="filename">libsystemd</code> might be out of sync with
         the running systemd version.</p></dd><dt id="-EINVAL"><span class="term"><code class="varname">-EINVAL</code></span><a class="headerlink" title="Permalink to this term" href="#-EINVAL">¶</a></dt><dd><p>Specified pointer parameter is <code class="constant">NULL</code>.
-        </p></dd><dt id="-ENOMEM"><span class="term"><code class="varname">-ENOMEM</code></span><a class="headerlink" title="Permalink to this term" href="#-ENOMEM">¶</a></dt><dd><p>Memory allocation failed.</p></dd></dl></div></div><div class="refsect1"><a name="idm214179313104"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p><code class="function">sd_bus_open_user()</code> and other functions
+        </p></dd><dt id="-ENOMEM"><span class="term"><code class="varname">-ENOMEM</code></span><a class="headerlink" title="Permalink to this term" href="#-ENOMEM">¶</a></dt><dd><p>Memory allocation failed.</p></dd></dl></div></div><div class="refsect1"><a name="idm214199611568"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p><code class="function">sd_bus_open_user()</code> and other functions
     described here are available as a shared library, which can be
     compiled and linked to with the
     <code class="constant">libsystemd</code> <a href="pkg-config.html"><span class="citerefentry"><span class="refentrytitle">pkg-config</span>(1)</span></a>
-    file.</p></div><div class="refsect1"><a name="idm214179310160"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+    file.</p></div><div class="refsect1"><a name="idm214199608400"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
       <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
       <a href="sd-bus.html"><span class="citerefentry"><span class="refentrytitle">sd-bus</span>(3)</span></a>,
       <a href="credentials.html"><span class="citerefentry"><span class="refentrytitle">credentials</span>(7)</span></a>,
index 4782ce6e05c82e1c452d8e659c088efbb67310ce..f9e3ba706bb0e6c41ca884ddb153b37772245621 100644 (file)
@@ -19,7 +19,7 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="sd_bus_creds_get_pid"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_bus_creds_get_pid, sd_bus_creds_get_pid_starttime, sd_bus_creds_get_tid, sd_bus_creds_get_uid, sd_bus_creds_get_gid, sd_bus_creds_get_comm, sd_bus_creds_get_tid_comm, sd_bus_creds_get_exe, sd_bus_creds_get_cmdline, sd_bus_creds_get_cgroup, sd_bus_creds_get_unit, sd_bus_creds_get_user_unit, sd_bus_creds_get_slice, sd_bus_creds_get_session, sd_bus_creds_get_owner_uid, sd_bus_creds_has_effective_cap, sd_bus_creds_has_permitted_cap, sd_bus_creds_has_inheritable_cap, sd_bus_creds_has_bounding_cap, sd_bus_creds_get_selinux_context, sd_bus_creds_get_audit_session_id, sd_bus_creds_get_audit_login_uid, sd_bus_creds_get_unique_name, sd_bus_creds_get_well_known_names — Retrieve fields from a credentials object</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-bus.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_pid</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>pid_t *<var class="pdparam">pid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_pid_starttime</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>uint64_t *<var class="pdparam">usec</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_tid</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>pid_t *<var class="pdparam">tid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_pid</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>uid_t *<var class="pdparam">uid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_gid</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>gid_t *<var class="pdparam">gid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_comm</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">comm</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_tid_comm</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">comm</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_exe</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">exe</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_cmdline</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>char ***<var class="pdparam">cmdline</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_cgroup</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">cgroup</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_unit</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">unit</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_user_unit</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">unit</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_slice</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">slice</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_session</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">slice</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_owner_uid</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>uid_t *<var class="pdparam">uid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_has_effective_cap</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">capability</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_has_permitted_cap</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">capability</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_has_inheritable_cap</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">capability</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_has_bounding_cap</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">capability</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_selinux_context</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">context</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_audit_session_id</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>uint32_t *<var class="pdparam">sessionid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_audit_login_uid</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>uid_t *<var class="pdparam">loginuid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_unique_name</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">name</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_well_known_names</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>char ***<var class="pdparam">name</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214179373600"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p>These functions return information from an
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="sd_bus_creds_get_pid"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_bus_creds_get_pid, sd_bus_creds_get_pid_starttime, sd_bus_creds_get_tid, sd_bus_creds_get_uid, sd_bus_creds_get_gid, sd_bus_creds_get_comm, sd_bus_creds_get_tid_comm, sd_bus_creds_get_exe, sd_bus_creds_get_cmdline, sd_bus_creds_get_cgroup, sd_bus_creds_get_unit, sd_bus_creds_get_user_unit, sd_bus_creds_get_slice, sd_bus_creds_get_session, sd_bus_creds_get_owner_uid, sd_bus_creds_has_effective_cap, sd_bus_creds_has_permitted_cap, sd_bus_creds_has_inheritable_cap, sd_bus_creds_has_bounding_cap, sd_bus_creds_get_selinux_context, sd_bus_creds_get_audit_session_id, sd_bus_creds_get_audit_login_uid, sd_bus_creds_get_unique_name, sd_bus_creds_get_well_known_names — Retrieve fields from a credentials object</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-bus.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_pid</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>pid_t *<var class="pdparam">pid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_pid_starttime</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>uint64_t *<var class="pdparam">usec</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_tid</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>pid_t *<var class="pdparam">tid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_pid</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>uid_t *<var class="pdparam">uid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_gid</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>gid_t *<var class="pdparam">gid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_comm</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">comm</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_tid_comm</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">comm</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_exe</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">exe</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_cmdline</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>char ***<var class="pdparam">cmdline</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_cgroup</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">cgroup</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_unit</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">unit</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_user_unit</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">unit</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_slice</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">slice</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_session</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">slice</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_owner_uid</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>uid_t *<var class="pdparam">uid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_has_effective_cap</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">capability</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_has_permitted_cap</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">capability</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_has_inheritable_cap</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">capability</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_has_bounding_cap</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">capability</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_selinux_context</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">context</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_audit_session_id</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>uint32_t *<var class="pdparam">sessionid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_audit_login_uid</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>uid_t *<var class="pdparam">loginuid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_unique_name</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">name</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_well_known_names</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>char ***<var class="pdparam">name</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214195952656"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p>These functions return information from an
     <em class="parameter"><code>sd_bus_creds</code></em> object. It may be created with
     <a href="sd_bus_creds_new_from_pid.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_creds_new_from_pid</span>(3)</span></a>,
     in which case it will describe the specified process, or it may be
     of strings. Each invidividual string is NUL-terminated, and the
     array is NULL-terminated as a whole. It will be valid as long as
     <em class="parameter"><code>c</code></em> remains valid, and should not be freed or
-    modified by the caller.</p></div><div class="refsect1"><a name="idm214179328320"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>On success, these calls return 0 or a positive integer. On
+    modified by the caller.</p></div><div class="refsect1"><a name="idm214195728128"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>On success, these calls return 0 or a positive integer. On
     failure, these calls return a negative errno-style error code.
-    </p></div><div class="refsect1"><a name="idm214179327024"></a><h2 id="Errors">Errors<a class="headerlink" title="Permalink to this headline" href="#Errors">¶</a></h2><p>Returned errors may indicate the following problems:</p><div class="variablelist"><dl class="variablelist"><dt id="-ENODATA"><span class="term"><code class="varname">-ENODATA</code></span><a class="headerlink" title="Permalink to this term" href="#-ENODATA">¶</a></dt><dd><p>Given field is not available in
+    </p></div><div class="refsect1"><a name="idm214195726800"></a><h2 id="Errors">Errors<a class="headerlink" title="Permalink to this headline" href="#Errors">¶</a></h2><p>Returned errors may indicate the following problems:</p><div class="variablelist"><dl class="variablelist"><dt id="-ENODATA"><span class="term"><code class="varname">-ENODATA</code></span><a class="headerlink" title="Permalink to this term" href="#-ENODATA">¶</a></dt><dd><p>Given field is not available in
         <em class="parameter"><code>c</code></em>.</p></dd><dt id="-ENOENT"><span class="term"><code class="varname">-ENOENT</code></span><a class="headerlink" title="Permalink to this term" href="#-ENOENT">¶</a></dt><dd><p>Given field is not specified for the sender.
         This will be returned by <code class="function">sd_bus_get_unit</code>,
         <code class="function">sd_bus_get_user_unit</code>,
         slice, logind session, or a systemd user session.</p></dd><dt id="-ENXIO"><span class="term"><code class="varname">-ENXIO</code></span><a class="headerlink" title="Permalink to this term" href="#-ENXIO">¶</a></dt><dd><p>An error occured in parsing cgroup paths.
         <code class="filename">libsystemd</code> might be out of sync with
         the running systemd version.</p></dd><dt id="-EINVAL"><span class="term"><code class="varname">-EINVAL</code></span><a class="headerlink" title="Permalink to this term" href="#-EINVAL">¶</a></dt><dd><p>Specified pointer parameter is <code class="constant">NULL</code>.
-        </p></dd><dt id="-ENOMEM"><span class="term"><code class="varname">-ENOMEM</code></span><a class="headerlink" title="Permalink to this term" href="#-ENOMEM">¶</a></dt><dd><p>Memory allocation failed.</p></dd></dl></div></div><div class="refsect1"><a name="idm214179313104"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p><code class="function">sd_bus_open_user()</code> and other functions
+        </p></dd><dt id="-ENOMEM"><span class="term"><code class="varname">-ENOMEM</code></span><a class="headerlink" title="Permalink to this term" href="#-ENOMEM">¶</a></dt><dd><p>Memory allocation failed.</p></dd></dl></div></div><div class="refsect1"><a name="idm214199611568"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p><code class="function">sd_bus_open_user()</code> and other functions
     described here are available as a shared library, which can be
     compiled and linked to with the
     <code class="constant">libsystemd</code> <a href="pkg-config.html"><span class="citerefentry"><span class="refentrytitle">pkg-config</span>(1)</span></a>
-    file.</p></div><div class="refsect1"><a name="idm214179310160"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+    file.</p></div><div class="refsect1"><a name="idm214199608400"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
       <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
       <a href="sd-bus.html"><span class="citerefentry"><span class="refentrytitle">sd-bus</span>(3)</span></a>,
       <a href="credentials.html"><span class="citerefentry"><span class="refentrytitle">credentials</span>(7)</span></a>,
index 4782ce6e05c82e1c452d8e659c088efbb67310ce..f9e3ba706bb0e6c41ca884ddb153b37772245621 100644 (file)
@@ -19,7 +19,7 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="sd_bus_creds_get_pid"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_bus_creds_get_pid, sd_bus_creds_get_pid_starttime, sd_bus_creds_get_tid, sd_bus_creds_get_uid, sd_bus_creds_get_gid, sd_bus_creds_get_comm, sd_bus_creds_get_tid_comm, sd_bus_creds_get_exe, sd_bus_creds_get_cmdline, sd_bus_creds_get_cgroup, sd_bus_creds_get_unit, sd_bus_creds_get_user_unit, sd_bus_creds_get_slice, sd_bus_creds_get_session, sd_bus_creds_get_owner_uid, sd_bus_creds_has_effective_cap, sd_bus_creds_has_permitted_cap, sd_bus_creds_has_inheritable_cap, sd_bus_creds_has_bounding_cap, sd_bus_creds_get_selinux_context, sd_bus_creds_get_audit_session_id, sd_bus_creds_get_audit_login_uid, sd_bus_creds_get_unique_name, sd_bus_creds_get_well_known_names — Retrieve fields from a credentials object</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-bus.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_pid</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>pid_t *<var class="pdparam">pid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_pid_starttime</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>uint64_t *<var class="pdparam">usec</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_tid</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>pid_t *<var class="pdparam">tid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_pid</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>uid_t *<var class="pdparam">uid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_gid</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>gid_t *<var class="pdparam">gid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_comm</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">comm</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_tid_comm</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">comm</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_exe</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">exe</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_cmdline</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>char ***<var class="pdparam">cmdline</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_cgroup</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">cgroup</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_unit</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">unit</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_user_unit</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">unit</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_slice</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">slice</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_session</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">slice</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_owner_uid</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>uid_t *<var class="pdparam">uid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_has_effective_cap</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">capability</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_has_permitted_cap</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">capability</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_has_inheritable_cap</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">capability</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_has_bounding_cap</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">capability</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_selinux_context</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">context</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_audit_session_id</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>uint32_t *<var class="pdparam">sessionid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_audit_login_uid</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>uid_t *<var class="pdparam">loginuid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_unique_name</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">name</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_well_known_names</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>char ***<var class="pdparam">name</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214179373600"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p>These functions return information from an
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="sd_bus_creds_get_pid"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_bus_creds_get_pid, sd_bus_creds_get_pid_starttime, sd_bus_creds_get_tid, sd_bus_creds_get_uid, sd_bus_creds_get_gid, sd_bus_creds_get_comm, sd_bus_creds_get_tid_comm, sd_bus_creds_get_exe, sd_bus_creds_get_cmdline, sd_bus_creds_get_cgroup, sd_bus_creds_get_unit, sd_bus_creds_get_user_unit, sd_bus_creds_get_slice, sd_bus_creds_get_session, sd_bus_creds_get_owner_uid, sd_bus_creds_has_effective_cap, sd_bus_creds_has_permitted_cap, sd_bus_creds_has_inheritable_cap, sd_bus_creds_has_bounding_cap, sd_bus_creds_get_selinux_context, sd_bus_creds_get_audit_session_id, sd_bus_creds_get_audit_login_uid, sd_bus_creds_get_unique_name, sd_bus_creds_get_well_known_names — Retrieve fields from a credentials object</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-bus.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_pid</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>pid_t *<var class="pdparam">pid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_pid_starttime</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>uint64_t *<var class="pdparam">usec</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_tid</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>pid_t *<var class="pdparam">tid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_pid</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>uid_t *<var class="pdparam">uid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_gid</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>gid_t *<var class="pdparam">gid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_comm</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">comm</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_tid_comm</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">comm</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_exe</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">exe</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_cmdline</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>char ***<var class="pdparam">cmdline</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_cgroup</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">cgroup</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_unit</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">unit</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_user_unit</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">unit</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_slice</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">slice</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_session</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">slice</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_owner_uid</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>uid_t *<var class="pdparam">uid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_has_effective_cap</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">capability</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_has_permitted_cap</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">capability</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_has_inheritable_cap</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">capability</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_has_bounding_cap</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">capability</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_selinux_context</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">context</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_audit_session_id</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>uint32_t *<var class="pdparam">sessionid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_audit_login_uid</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>uid_t *<var class="pdparam">loginuid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_unique_name</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">name</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_well_known_names</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>char ***<var class="pdparam">name</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214195952656"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p>These functions return information from an
     <em class="parameter"><code>sd_bus_creds</code></em> object. It may be created with
     <a href="sd_bus_creds_new_from_pid.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_creds_new_from_pid</span>(3)</span></a>,
     in which case it will describe the specified process, or it may be
     of strings. Each invidividual string is NUL-terminated, and the
     array is NULL-terminated as a whole. It will be valid as long as
     <em class="parameter"><code>c</code></em> remains valid, and should not be freed or
-    modified by the caller.</p></div><div class="refsect1"><a name="idm214179328320"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>On success, these calls return 0 or a positive integer. On
+    modified by the caller.</p></div><div class="refsect1"><a name="idm214195728128"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>On success, these calls return 0 or a positive integer. On
     failure, these calls return a negative errno-style error code.
-    </p></div><div class="refsect1"><a name="idm214179327024"></a><h2 id="Errors">Errors<a class="headerlink" title="Permalink to this headline" href="#Errors">¶</a></h2><p>Returned errors may indicate the following problems:</p><div class="variablelist"><dl class="variablelist"><dt id="-ENODATA"><span class="term"><code class="varname">-ENODATA</code></span><a class="headerlink" title="Permalink to this term" href="#-ENODATA">¶</a></dt><dd><p>Given field is not available in
+    </p></div><div class="refsect1"><a name="idm214195726800"></a><h2 id="Errors">Errors<a class="headerlink" title="Permalink to this headline" href="#Errors">¶</a></h2><p>Returned errors may indicate the following problems:</p><div class="variablelist"><dl class="variablelist"><dt id="-ENODATA"><span class="term"><code class="varname">-ENODATA</code></span><a class="headerlink" title="Permalink to this term" href="#-ENODATA">¶</a></dt><dd><p>Given field is not available in
         <em class="parameter"><code>c</code></em>.</p></dd><dt id="-ENOENT"><span class="term"><code class="varname">-ENOENT</code></span><a class="headerlink" title="Permalink to this term" href="#-ENOENT">¶</a></dt><dd><p>Given field is not specified for the sender.
         This will be returned by <code class="function">sd_bus_get_unit</code>,
         <code class="function">sd_bus_get_user_unit</code>,
         slice, logind session, or a systemd user session.</p></dd><dt id="-ENXIO"><span class="term"><code class="varname">-ENXIO</code></span><a class="headerlink" title="Permalink to this term" href="#-ENXIO">¶</a></dt><dd><p>An error occured in parsing cgroup paths.
         <code class="filename">libsystemd</code> might be out of sync with
         the running systemd version.</p></dd><dt id="-EINVAL"><span class="term"><code class="varname">-EINVAL</code></span><a class="headerlink" title="Permalink to this term" href="#-EINVAL">¶</a></dt><dd><p>Specified pointer parameter is <code class="constant">NULL</code>.
-        </p></dd><dt id="-ENOMEM"><span class="term"><code class="varname">-ENOMEM</code></span><a class="headerlink" title="Permalink to this term" href="#-ENOMEM">¶</a></dt><dd><p>Memory allocation failed.</p></dd></dl></div></div><div class="refsect1"><a name="idm214179313104"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p><code class="function">sd_bus_open_user()</code> and other functions
+        </p></dd><dt id="-ENOMEM"><span class="term"><code class="varname">-ENOMEM</code></span><a class="headerlink" title="Permalink to this term" href="#-ENOMEM">¶</a></dt><dd><p>Memory allocation failed.</p></dd></dl></div></div><div class="refsect1"><a name="idm214199611568"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p><code class="function">sd_bus_open_user()</code> and other functions
     described here are available as a shared library, which can be
     compiled and linked to with the
     <code class="constant">libsystemd</code> <a href="pkg-config.html"><span class="citerefentry"><span class="refentrytitle">pkg-config</span>(1)</span></a>
-    file.</p></div><div class="refsect1"><a name="idm214179310160"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+    file.</p></div><div class="refsect1"><a name="idm214199608400"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
       <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
       <a href="sd-bus.html"><span class="citerefentry"><span class="refentrytitle">sd-bus</span>(3)</span></a>,
       <a href="credentials.html"><span class="citerefentry"><span class="refentrytitle">credentials</span>(7)</span></a>,
index 4782ce6e05c82e1c452d8e659c088efbb67310ce..f9e3ba706bb0e6c41ca884ddb153b37772245621 100644 (file)
@@ -19,7 +19,7 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="sd_bus_creds_get_pid"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_bus_creds_get_pid, sd_bus_creds_get_pid_starttime, sd_bus_creds_get_tid, sd_bus_creds_get_uid, sd_bus_creds_get_gid, sd_bus_creds_get_comm, sd_bus_creds_get_tid_comm, sd_bus_creds_get_exe, sd_bus_creds_get_cmdline, sd_bus_creds_get_cgroup, sd_bus_creds_get_unit, sd_bus_creds_get_user_unit, sd_bus_creds_get_slice, sd_bus_creds_get_session, sd_bus_creds_get_owner_uid, sd_bus_creds_has_effective_cap, sd_bus_creds_has_permitted_cap, sd_bus_creds_has_inheritable_cap, sd_bus_creds_has_bounding_cap, sd_bus_creds_get_selinux_context, sd_bus_creds_get_audit_session_id, sd_bus_creds_get_audit_login_uid, sd_bus_creds_get_unique_name, sd_bus_creds_get_well_known_names — Retrieve fields from a credentials object</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-bus.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_pid</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>pid_t *<var class="pdparam">pid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_pid_starttime</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>uint64_t *<var class="pdparam">usec</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_tid</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>pid_t *<var class="pdparam">tid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_pid</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>uid_t *<var class="pdparam">uid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_gid</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>gid_t *<var class="pdparam">gid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_comm</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">comm</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_tid_comm</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">comm</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_exe</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">exe</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_cmdline</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>char ***<var class="pdparam">cmdline</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_cgroup</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">cgroup</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_unit</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">unit</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_user_unit</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">unit</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_slice</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">slice</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_session</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">slice</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_owner_uid</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>uid_t *<var class="pdparam">uid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_has_effective_cap</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">capability</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_has_permitted_cap</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">capability</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_has_inheritable_cap</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">capability</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_has_bounding_cap</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">capability</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_selinux_context</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">context</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_audit_session_id</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>uint32_t *<var class="pdparam">sessionid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_audit_login_uid</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>uid_t *<var class="pdparam">loginuid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_unique_name</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">name</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_well_known_names</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>char ***<var class="pdparam">name</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214179373600"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p>These functions return information from an
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="sd_bus_creds_get_pid"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_bus_creds_get_pid, sd_bus_creds_get_pid_starttime, sd_bus_creds_get_tid, sd_bus_creds_get_uid, sd_bus_creds_get_gid, sd_bus_creds_get_comm, sd_bus_creds_get_tid_comm, sd_bus_creds_get_exe, sd_bus_creds_get_cmdline, sd_bus_creds_get_cgroup, sd_bus_creds_get_unit, sd_bus_creds_get_user_unit, sd_bus_creds_get_slice, sd_bus_creds_get_session, sd_bus_creds_get_owner_uid, sd_bus_creds_has_effective_cap, sd_bus_creds_has_permitted_cap, sd_bus_creds_has_inheritable_cap, sd_bus_creds_has_bounding_cap, sd_bus_creds_get_selinux_context, sd_bus_creds_get_audit_session_id, sd_bus_creds_get_audit_login_uid, sd_bus_creds_get_unique_name, sd_bus_creds_get_well_known_names — Retrieve fields from a credentials object</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-bus.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_pid</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>pid_t *<var class="pdparam">pid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_pid_starttime</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>uint64_t *<var class="pdparam">usec</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_tid</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>pid_t *<var class="pdparam">tid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_pid</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>uid_t *<var class="pdparam">uid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_gid</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>gid_t *<var class="pdparam">gid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_comm</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">comm</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_tid_comm</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">comm</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_exe</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">exe</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_cmdline</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>char ***<var class="pdparam">cmdline</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_cgroup</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">cgroup</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_unit</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">unit</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_user_unit</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">unit</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_slice</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">slice</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_session</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">slice</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_owner_uid</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>uid_t *<var class="pdparam">uid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_has_effective_cap</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">capability</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_has_permitted_cap</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">capability</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_has_inheritable_cap</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">capability</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_has_bounding_cap</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">capability</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_selinux_context</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">context</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_audit_session_id</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>uint32_t *<var class="pdparam">sessionid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_audit_login_uid</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>uid_t *<var class="pdparam">loginuid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_unique_name</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">name</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_well_known_names</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>char ***<var class="pdparam">name</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214195952656"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p>These functions return information from an
     <em class="parameter"><code>sd_bus_creds</code></em> object. It may be created with
     <a href="sd_bus_creds_new_from_pid.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_creds_new_from_pid</span>(3)</span></a>,
     in which case it will describe the specified process, or it may be
     of strings. Each invidividual string is NUL-terminated, and the
     array is NULL-terminated as a whole. It will be valid as long as
     <em class="parameter"><code>c</code></em> remains valid, and should not be freed or
-    modified by the caller.</p></div><div class="refsect1"><a name="idm214179328320"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>On success, these calls return 0 or a positive integer. On
+    modified by the caller.</p></div><div class="refsect1"><a name="idm214195728128"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>On success, these calls return 0 or a positive integer. On
     failure, these calls return a negative errno-style error code.
-    </p></div><div class="refsect1"><a name="idm214179327024"></a><h2 id="Errors">Errors<a class="headerlink" title="Permalink to this headline" href="#Errors">¶</a></h2><p>Returned errors may indicate the following problems:</p><div class="variablelist"><dl class="variablelist"><dt id="-ENODATA"><span class="term"><code class="varname">-ENODATA</code></span><a class="headerlink" title="Permalink to this term" href="#-ENODATA">¶</a></dt><dd><p>Given field is not available in
+    </p></div><div class="refsect1"><a name="idm214195726800"></a><h2 id="Errors">Errors<a class="headerlink" title="Permalink to this headline" href="#Errors">¶</a></h2><p>Returned errors may indicate the following problems:</p><div class="variablelist"><dl class="variablelist"><dt id="-ENODATA"><span class="term"><code class="varname">-ENODATA</code></span><a class="headerlink" title="Permalink to this term" href="#-ENODATA">¶</a></dt><dd><p>Given field is not available in
         <em class="parameter"><code>c</code></em>.</p></dd><dt id="-ENOENT"><span class="term"><code class="varname">-ENOENT</code></span><a class="headerlink" title="Permalink to this term" href="#-ENOENT">¶</a></dt><dd><p>Given field is not specified for the sender.
         This will be returned by <code class="function">sd_bus_get_unit</code>,
         <code class="function">sd_bus_get_user_unit</code>,
         slice, logind session, or a systemd user session.</p></dd><dt id="-ENXIO"><span class="term"><code class="varname">-ENXIO</code></span><a class="headerlink" title="Permalink to this term" href="#-ENXIO">¶</a></dt><dd><p>An error occured in parsing cgroup paths.
         <code class="filename">libsystemd</code> might be out of sync with
         the running systemd version.</p></dd><dt id="-EINVAL"><span class="term"><code class="varname">-EINVAL</code></span><a class="headerlink" title="Permalink to this term" href="#-EINVAL">¶</a></dt><dd><p>Specified pointer parameter is <code class="constant">NULL</code>.
-        </p></dd><dt id="-ENOMEM"><span class="term"><code class="varname">-ENOMEM</code></span><a class="headerlink" title="Permalink to this term" href="#-ENOMEM">¶</a></dt><dd><p>Memory allocation failed.</p></dd></dl></div></div><div class="refsect1"><a name="idm214179313104"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p><code class="function">sd_bus_open_user()</code> and other functions
+        </p></dd><dt id="-ENOMEM"><span class="term"><code class="varname">-ENOMEM</code></span><a class="headerlink" title="Permalink to this term" href="#-ENOMEM">¶</a></dt><dd><p>Memory allocation failed.</p></dd></dl></div></div><div class="refsect1"><a name="idm214199611568"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p><code class="function">sd_bus_open_user()</code> and other functions
     described here are available as a shared library, which can be
     compiled and linked to with the
     <code class="constant">libsystemd</code> <a href="pkg-config.html"><span class="citerefentry"><span class="refentrytitle">pkg-config</span>(1)</span></a>
-    file.</p></div><div class="refsect1"><a name="idm214179310160"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+    file.</p></div><div class="refsect1"><a name="idm214199608400"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
       <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
       <a href="sd-bus.html"><span class="citerefentry"><span class="refentrytitle">sd-bus</span>(3)</span></a>,
       <a href="credentials.html"><span class="citerefentry"><span class="refentrytitle">credentials</span>(7)</span></a>,
index 4782ce6e05c82e1c452d8e659c088efbb67310ce..f9e3ba706bb0e6c41ca884ddb153b37772245621 100644 (file)
@@ -19,7 +19,7 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="sd_bus_creds_get_pid"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_bus_creds_get_pid, sd_bus_creds_get_pid_starttime, sd_bus_creds_get_tid, sd_bus_creds_get_uid, sd_bus_creds_get_gid, sd_bus_creds_get_comm, sd_bus_creds_get_tid_comm, sd_bus_creds_get_exe, sd_bus_creds_get_cmdline, sd_bus_creds_get_cgroup, sd_bus_creds_get_unit, sd_bus_creds_get_user_unit, sd_bus_creds_get_slice, sd_bus_creds_get_session, sd_bus_creds_get_owner_uid, sd_bus_creds_has_effective_cap, sd_bus_creds_has_permitted_cap, sd_bus_creds_has_inheritable_cap, sd_bus_creds_has_bounding_cap, sd_bus_creds_get_selinux_context, sd_bus_creds_get_audit_session_id, sd_bus_creds_get_audit_login_uid, sd_bus_creds_get_unique_name, sd_bus_creds_get_well_known_names — Retrieve fields from a credentials object</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-bus.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_pid</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>pid_t *<var class="pdparam">pid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_pid_starttime</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>uint64_t *<var class="pdparam">usec</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_tid</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>pid_t *<var class="pdparam">tid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_pid</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>uid_t *<var class="pdparam">uid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_gid</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>gid_t *<var class="pdparam">gid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_comm</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">comm</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_tid_comm</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">comm</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_exe</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">exe</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_cmdline</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>char ***<var class="pdparam">cmdline</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_cgroup</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">cgroup</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_unit</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">unit</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_user_unit</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">unit</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_slice</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">slice</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_session</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">slice</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_owner_uid</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>uid_t *<var class="pdparam">uid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_has_effective_cap</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">capability</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_has_permitted_cap</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">capability</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_has_inheritable_cap</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">capability</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_has_bounding_cap</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">capability</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_selinux_context</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">context</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_audit_session_id</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>uint32_t *<var class="pdparam">sessionid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_audit_login_uid</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>uid_t *<var class="pdparam">loginuid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_unique_name</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">name</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_well_known_names</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>char ***<var class="pdparam">name</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214179373600"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p>These functions return information from an
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="sd_bus_creds_get_pid"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_bus_creds_get_pid, sd_bus_creds_get_pid_starttime, sd_bus_creds_get_tid, sd_bus_creds_get_uid, sd_bus_creds_get_gid, sd_bus_creds_get_comm, sd_bus_creds_get_tid_comm, sd_bus_creds_get_exe, sd_bus_creds_get_cmdline, sd_bus_creds_get_cgroup, sd_bus_creds_get_unit, sd_bus_creds_get_user_unit, sd_bus_creds_get_slice, sd_bus_creds_get_session, sd_bus_creds_get_owner_uid, sd_bus_creds_has_effective_cap, sd_bus_creds_has_permitted_cap, sd_bus_creds_has_inheritable_cap, sd_bus_creds_has_bounding_cap, sd_bus_creds_get_selinux_context, sd_bus_creds_get_audit_session_id, sd_bus_creds_get_audit_login_uid, sd_bus_creds_get_unique_name, sd_bus_creds_get_well_known_names — Retrieve fields from a credentials object</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-bus.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_pid</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>pid_t *<var class="pdparam">pid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_pid_starttime</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>uint64_t *<var class="pdparam">usec</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_tid</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>pid_t *<var class="pdparam">tid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_pid</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>uid_t *<var class="pdparam">uid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_gid</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>gid_t *<var class="pdparam">gid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_comm</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">comm</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_tid_comm</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">comm</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_exe</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">exe</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_cmdline</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>char ***<var class="pdparam">cmdline</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_cgroup</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">cgroup</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_unit</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">unit</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_user_unit</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">unit</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_slice</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">slice</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_session</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">slice</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_owner_uid</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>uid_t *<var class="pdparam">uid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_has_effective_cap</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">capability</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_has_permitted_cap</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">capability</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_has_inheritable_cap</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">capability</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_has_bounding_cap</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">capability</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_selinux_context</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">context</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_audit_session_id</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>uint32_t *<var class="pdparam">sessionid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_audit_login_uid</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>uid_t *<var class="pdparam">loginuid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_unique_name</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">name</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_well_known_names</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>char ***<var class="pdparam">name</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214195952656"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p>These functions return information from an
     <em class="parameter"><code>sd_bus_creds</code></em> object. It may be created with
     <a href="sd_bus_creds_new_from_pid.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_creds_new_from_pid</span>(3)</span></a>,
     in which case it will describe the specified process, or it may be
     of strings. Each invidividual string is NUL-terminated, and the
     array is NULL-terminated as a whole. It will be valid as long as
     <em class="parameter"><code>c</code></em> remains valid, and should not be freed or
-    modified by the caller.</p></div><div class="refsect1"><a name="idm214179328320"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>On success, these calls return 0 or a positive integer. On
+    modified by the caller.</p></div><div class="refsect1"><a name="idm214195728128"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>On success, these calls return 0 or a positive integer. On
     failure, these calls return a negative errno-style error code.
-    </p></div><div class="refsect1"><a name="idm214179327024"></a><h2 id="Errors">Errors<a class="headerlink" title="Permalink to this headline" href="#Errors">¶</a></h2><p>Returned errors may indicate the following problems:</p><div class="variablelist"><dl class="variablelist"><dt id="-ENODATA"><span class="term"><code class="varname">-ENODATA</code></span><a class="headerlink" title="Permalink to this term" href="#-ENODATA">¶</a></dt><dd><p>Given field is not available in
+    </p></div><div class="refsect1"><a name="idm214195726800"></a><h2 id="Errors">Errors<a class="headerlink" title="Permalink to this headline" href="#Errors">¶</a></h2><p>Returned errors may indicate the following problems:</p><div class="variablelist"><dl class="variablelist"><dt id="-ENODATA"><span class="term"><code class="varname">-ENODATA</code></span><a class="headerlink" title="Permalink to this term" href="#-ENODATA">¶</a></dt><dd><p>Given field is not available in
         <em class="parameter"><code>c</code></em>.</p></dd><dt id="-ENOENT"><span class="term"><code class="varname">-ENOENT</code></span><a class="headerlink" title="Permalink to this term" href="#-ENOENT">¶</a></dt><dd><p>Given field is not specified for the sender.
         This will be returned by <code class="function">sd_bus_get_unit</code>,
         <code class="function">sd_bus_get_user_unit</code>,
         slice, logind session, or a systemd user session.</p></dd><dt id="-ENXIO"><span class="term"><code class="varname">-ENXIO</code></span><a class="headerlink" title="Permalink to this term" href="#-ENXIO">¶</a></dt><dd><p>An error occured in parsing cgroup paths.
         <code class="filename">libsystemd</code> might be out of sync with
         the running systemd version.</p></dd><dt id="-EINVAL"><span class="term"><code class="varname">-EINVAL</code></span><a class="headerlink" title="Permalink to this term" href="#-EINVAL">¶</a></dt><dd><p>Specified pointer parameter is <code class="constant">NULL</code>.
-        </p></dd><dt id="-ENOMEM"><span class="term"><code class="varname">-ENOMEM</code></span><a class="headerlink" title="Permalink to this term" href="#-ENOMEM">¶</a></dt><dd><p>Memory allocation failed.</p></dd></dl></div></div><div class="refsect1"><a name="idm214179313104"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p><code class="function">sd_bus_open_user()</code> and other functions
+        </p></dd><dt id="-ENOMEM"><span class="term"><code class="varname">-ENOMEM</code></span><a class="headerlink" title="Permalink to this term" href="#-ENOMEM">¶</a></dt><dd><p>Memory allocation failed.</p></dd></dl></div></div><div class="refsect1"><a name="idm214199611568"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p><code class="function">sd_bus_open_user()</code> and other functions
     described here are available as a shared library, which can be
     compiled and linked to with the
     <code class="constant">libsystemd</code> <a href="pkg-config.html"><span class="citerefentry"><span class="refentrytitle">pkg-config</span>(1)</span></a>
-    file.</p></div><div class="refsect1"><a name="idm214179310160"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+    file.</p></div><div class="refsect1"><a name="idm214199608400"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
       <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
       <a href="sd-bus.html"><span class="citerefentry"><span class="refentrytitle">sd-bus</span>(3)</span></a>,
       <a href="credentials.html"><span class="citerefentry"><span class="refentrytitle">credentials</span>(7)</span></a>,
index 4782ce6e05c82e1c452d8e659c088efbb67310ce..f9e3ba706bb0e6c41ca884ddb153b37772245621 100644 (file)
@@ -19,7 +19,7 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="sd_bus_creds_get_pid"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_bus_creds_get_pid, sd_bus_creds_get_pid_starttime, sd_bus_creds_get_tid, sd_bus_creds_get_uid, sd_bus_creds_get_gid, sd_bus_creds_get_comm, sd_bus_creds_get_tid_comm, sd_bus_creds_get_exe, sd_bus_creds_get_cmdline, sd_bus_creds_get_cgroup, sd_bus_creds_get_unit, sd_bus_creds_get_user_unit, sd_bus_creds_get_slice, sd_bus_creds_get_session, sd_bus_creds_get_owner_uid, sd_bus_creds_has_effective_cap, sd_bus_creds_has_permitted_cap, sd_bus_creds_has_inheritable_cap, sd_bus_creds_has_bounding_cap, sd_bus_creds_get_selinux_context, sd_bus_creds_get_audit_session_id, sd_bus_creds_get_audit_login_uid, sd_bus_creds_get_unique_name, sd_bus_creds_get_well_known_names — Retrieve fields from a credentials object</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-bus.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_pid</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>pid_t *<var class="pdparam">pid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_pid_starttime</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>uint64_t *<var class="pdparam">usec</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_tid</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>pid_t *<var class="pdparam">tid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_pid</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>uid_t *<var class="pdparam">uid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_gid</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>gid_t *<var class="pdparam">gid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_comm</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">comm</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_tid_comm</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">comm</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_exe</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">exe</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_cmdline</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>char ***<var class="pdparam">cmdline</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_cgroup</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">cgroup</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_unit</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">unit</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_user_unit</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">unit</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_slice</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">slice</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_session</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">slice</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_owner_uid</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>uid_t *<var class="pdparam">uid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_has_effective_cap</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">capability</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_has_permitted_cap</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">capability</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_has_inheritable_cap</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">capability</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_has_bounding_cap</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">capability</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_selinux_context</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">context</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_audit_session_id</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>uint32_t *<var class="pdparam">sessionid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_audit_login_uid</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>uid_t *<var class="pdparam">loginuid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_unique_name</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">name</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_well_known_names</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>char ***<var class="pdparam">name</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214179373600"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p>These functions return information from an
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="sd_bus_creds_get_pid"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_bus_creds_get_pid, sd_bus_creds_get_pid_starttime, sd_bus_creds_get_tid, sd_bus_creds_get_uid, sd_bus_creds_get_gid, sd_bus_creds_get_comm, sd_bus_creds_get_tid_comm, sd_bus_creds_get_exe, sd_bus_creds_get_cmdline, sd_bus_creds_get_cgroup, sd_bus_creds_get_unit, sd_bus_creds_get_user_unit, sd_bus_creds_get_slice, sd_bus_creds_get_session, sd_bus_creds_get_owner_uid, sd_bus_creds_has_effective_cap, sd_bus_creds_has_permitted_cap, sd_bus_creds_has_inheritable_cap, sd_bus_creds_has_bounding_cap, sd_bus_creds_get_selinux_context, sd_bus_creds_get_audit_session_id, sd_bus_creds_get_audit_login_uid, sd_bus_creds_get_unique_name, sd_bus_creds_get_well_known_names — Retrieve fields from a credentials object</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-bus.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_pid</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>pid_t *<var class="pdparam">pid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_pid_starttime</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>uint64_t *<var class="pdparam">usec</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_tid</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>pid_t *<var class="pdparam">tid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_pid</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>uid_t *<var class="pdparam">uid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_gid</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>gid_t *<var class="pdparam">gid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_comm</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">comm</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_tid_comm</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">comm</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_exe</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">exe</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_cmdline</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>char ***<var class="pdparam">cmdline</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_cgroup</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">cgroup</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_unit</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">unit</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_user_unit</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">unit</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_slice</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">slice</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_session</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">slice</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_owner_uid</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>uid_t *<var class="pdparam">uid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_has_effective_cap</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">capability</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_has_permitted_cap</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">capability</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_has_inheritable_cap</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">capability</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_has_bounding_cap</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">capability</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_selinux_context</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">context</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_audit_session_id</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>uint32_t *<var class="pdparam">sessionid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_audit_login_uid</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>uid_t *<var class="pdparam">loginuid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_unique_name</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">name</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_get_well_known_names</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var>, </td></tr><tr><td> </td><td>char ***<var class="pdparam">name</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214195952656"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p>These functions return information from an
     <em class="parameter"><code>sd_bus_creds</code></em> object. It may be created with
     <a href="sd_bus_creds_new_from_pid.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_creds_new_from_pid</span>(3)</span></a>,
     in which case it will describe the specified process, or it may be
     of strings. Each invidividual string is NUL-terminated, and the
     array is NULL-terminated as a whole. It will be valid as long as
     <em class="parameter"><code>c</code></em> remains valid, and should not be freed or
-    modified by the caller.</p></div><div class="refsect1"><a name="idm214179328320"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>On success, these calls return 0 or a positive integer. On
+    modified by the caller.</p></div><div class="refsect1"><a name="idm214195728128"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>On success, these calls return 0 or a positive integer. On
     failure, these calls return a negative errno-style error code.
-    </p></div><div class="refsect1"><a name="idm214179327024"></a><h2 id="Errors">Errors<a class="headerlink" title="Permalink to this headline" href="#Errors">¶</a></h2><p>Returned errors may indicate the following problems:</p><div class="variablelist"><dl class="variablelist"><dt id="-ENODATA"><span class="term"><code class="varname">-ENODATA</code></span><a class="headerlink" title="Permalink to this term" href="#-ENODATA">¶</a></dt><dd><p>Given field is not available in
+    </p></div><div class="refsect1"><a name="idm214195726800"></a><h2 id="Errors">Errors<a class="headerlink" title="Permalink to this headline" href="#Errors">¶</a></h2><p>Returned errors may indicate the following problems:</p><div class="variablelist"><dl class="variablelist"><dt id="-ENODATA"><span class="term"><code class="varname">-ENODATA</code></span><a class="headerlink" title="Permalink to this term" href="#-ENODATA">¶</a></dt><dd><p>Given field is not available in
         <em class="parameter"><code>c</code></em>.</p></dd><dt id="-ENOENT"><span class="term"><code class="varname">-ENOENT</code></span><a class="headerlink" title="Permalink to this term" href="#-ENOENT">¶</a></dt><dd><p>Given field is not specified for the sender.
         This will be returned by <code class="function">sd_bus_get_unit</code>,
         <code class="function">sd_bus_get_user_unit</code>,
         slice, logind session, or a systemd user session.</p></dd><dt id="-ENXIO"><span class="term"><code class="varname">-ENXIO</code></span><a class="headerlink" title="Permalink to this term" href="#-ENXIO">¶</a></dt><dd><p>An error occured in parsing cgroup paths.
         <code class="filename">libsystemd</code> might be out of sync with
         the running systemd version.</p></dd><dt id="-EINVAL"><span class="term"><code class="varname">-EINVAL</code></span><a class="headerlink" title="Permalink to this term" href="#-EINVAL">¶</a></dt><dd><p>Specified pointer parameter is <code class="constant">NULL</code>.
-        </p></dd><dt id="-ENOMEM"><span class="term"><code class="varname">-ENOMEM</code></span><a class="headerlink" title="Permalink to this term" href="#-ENOMEM">¶</a></dt><dd><p>Memory allocation failed.</p></dd></dl></div></div><div class="refsect1"><a name="idm214179313104"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p><code class="function">sd_bus_open_user()</code> and other functions
+        </p></dd><dt id="-ENOMEM"><span class="term"><code class="varname">-ENOMEM</code></span><a class="headerlink" title="Permalink to this term" href="#-ENOMEM">¶</a></dt><dd><p>Memory allocation failed.</p></dd></dl></div></div><div class="refsect1"><a name="idm214199611568"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p><code class="function">sd_bus_open_user()</code> and other functions
     described here are available as a shared library, which can be
     compiled and linked to with the
     <code class="constant">libsystemd</code> <a href="pkg-config.html"><span class="citerefentry"><span class="refentrytitle">pkg-config</span>(1)</span></a>
-    file.</p></div><div class="refsect1"><a name="idm214179310160"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+    file.</p></div><div class="refsect1"><a name="idm214199608400"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
       <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
       <a href="sd-bus.html"><span class="citerefentry"><span class="refentrytitle">sd-bus</span>(3)</span></a>,
       <a href="credentials.html"><span class="citerefentry"><span class="refentrytitle">credentials</span>(7)</span></a>,
index 15241717442a29f09a7e279bc163670cf0eb86a5..5460d1099edc40e4ebbfdf13596dffaeb9c7c1f7 100644 (file)
@@ -1,5 +1,5 @@
 '\" t
-.TH "SD_BUS_CREDS_NEW_FROM_PID" "3" "" "systemd 214" "sd_bus_creds_new_from_pid"
+.TH "SD_BUS_CREDS_NEW_FROM_PID" "3" "" "systemd 215" "sd_bus_creds_new_from_pid"
 .\" -----------------------------------------------------------------
 .\" * Define some portability stuff
 .\" -----------------------------------------------------------------
index de250c0f6a53b8fb94eea39b858b153f173507c0..b5a8a645f199d4dbc676ae2a155882a67b0a03b6 100644 (file)
@@ -19,7 +19,7 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="sd_bus_creds_new_from_pid"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_bus_creds_new_from_pid, sd_bus_creds_get_mask, sd_bus_creds_ref, sd_bus_creds_unref — Retrieve credentials object for the specified PID</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-bus.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_new_from_pid</b>(</code></td><td>pid_t <var class="pdparam">pid</var>, </td></tr><tr><td> </td><td>uint64_t <var class="pdparam">creds_mask</var>, </td></tr><tr><td> </td><td>sd_bus_creds **<var class="pdparam">ret</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">uint64_t <b class="fsfunc">sd_bus_creds_get_mask</b>(</code></td><td>const sd_bus_creds *<var class="pdparam">c</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">sd_bus_creds *<b class="fsfunc">sd_bus_creds_ref</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">sd_bus_creds *<b class="fsfunc">sd_bus_creds_unref</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div><p>
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="sd_bus_creds_new_from_pid"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_bus_creds_new_from_pid, sd_bus_creds_get_mask, sd_bus_creds_ref, sd_bus_creds_unref — Retrieve credentials object for the specified PID</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-bus.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_new_from_pid</b>(</code></td><td>pid_t <var class="pdparam">pid</var>, </td></tr><tr><td> </td><td>uint64_t <var class="pdparam">creds_mask</var>, </td></tr><tr><td> </td><td>sd_bus_creds **<var class="pdparam">ret</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">uint64_t <b class="fsfunc">sd_bus_creds_get_mask</b>(</code></td><td>const sd_bus_creds *<var class="pdparam">c</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">sd_bus_creds *<b class="fsfunc">sd_bus_creds_ref</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">sd_bus_creds *<b class="fsfunc">sd_bus_creds_unref</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div><p>
       <code class="constant">SD_BUS_CREDS_PID</code>,
       <code class="constant">SD_BUS_CREDS_PID_STARTTIME</code>,
       <code class="constant">SD_BUS_CREDS_TID</code>,
@@ -45,7 +45,7 @@
       <code class="constant">SD_BUS_CREDS_UNIQUE_NAME</code>,
       <code class="constant">SD_BUS_CREDS_WELL_KNOWN_NAMES</code>,
       <code class="constant">_SD_BUS_CREDS_ALL</code>
-    </p></div><div class="refsect1"><a name="idm214173440304"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_bus_creds_new_from_pid()</code> creates a new
+    </p></div><div class="refsect1"><a name="idm214194089696"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_bus_creds_new_from_pid()</code> creates a new
     credentials object and fills it with information about the process
     <em class="parameter"><code>pid</code></em>. This pointer to this object will
     be stored in <em class="parameter"><code>ret</code></em> pointer.</p><p>The information that will be stored is determined by
     <em class="parameter"><code>c</code></em> cannot be used anymore, so futher
     calls to <code class="function">sd_bus_creds_ref(c)</code> or
     <code class="function">sd_bus_creds_unref(c)</code> are illegal.</p><p><code class="function">sd_bus_creds_unref</code> destroys a reference
-    to <em class="parameter"><code>c</code></em>.</p></div><div class="refsect1"><a name="idm214173406800"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>On success, <code class="function">sd_bus_creds_new_from_pid()</code>
+    to <em class="parameter"><code>c</code></em>.</p></div><div class="refsect1"><a name="idm214195301216"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>On success, <code class="function">sd_bus_creds_new_from_pid()</code>
     returns 0 or a positive integer. On failure, it returns a negative
     errno-style error code.</p><p><code class="function">sd_bus_creds_get_mask()</code> returns the
     mask of successfully acquired fields.</p><p><code class="function">sd_bus_creds_ref</code> always returns the
     argument.</p><p><code class="function">sd_bus_creds_unref</code> always returns
-    <code class="constant">NULL</code>.</p></div><div class="refsect1"><a name="idm214173401440"></a><h2 id="Reference ownership">Reference ownership<a class="headerlink" title="Permalink to this headline" href="#Reference%20ownership">¶</a></h2><p>Function <code class="function">sd_bus_creds_new_from_pid()</code>
+    <code class="constant">NULL</code>.</p></div><div class="refsect1"><a name="idm214195571728"></a><h2 id="Reference ownership">Reference ownership<a class="headerlink" title="Permalink to this headline" href="#Reference%20ownership">¶</a></h2><p>Function <code class="function">sd_bus_creds_new_from_pid()</code>
     creates a new object and the caller owns the sole reference. When
     not needed anymore, this reference should be destroyed with
     <a href="sd_bus_creds_unref.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_creds_unref</span>(3)</span></a>.
-    </p></div><div class="refsect1"><a name="idm214173398528"></a><h2 id="Errors">Errors<a class="headerlink" title="Permalink to this headline" href="#Errors">¶</a></h2><p>Returned errors may indicate the following problems:</p><div class="variablelist"><dl class="variablelist"><dt id="-ESRCH"><span class="term"><code class="varname">-ESRCH</code></span><a class="headerlink" title="Permalink to this term" href="#-ESRCH">¶</a></dt><dd><p>Specified <em class="parameter"><code>pid</code></em> could not
+    </p></div><div class="refsect1"><a name="idm214194091024"></a><h2 id="Errors">Errors<a class="headerlink" title="Permalink to this headline" href="#Errors">¶</a></h2><p>Returned errors may indicate the following problems:</p><div class="variablelist"><dl class="variablelist"><dt id="-ESRCH"><span class="term"><code class="varname">-ESRCH</code></span><a class="headerlink" title="Permalink to this term" href="#-ESRCH">¶</a></dt><dd><p>Specified <em class="parameter"><code>pid</code></em> could not
         be found.</p></dd><dt id="-EINVAL"><span class="term"><code class="varname">-EINVAL</code></span><a class="headerlink" title="Permalink to this term" href="#-EINVAL">¶</a></dt><dd><p>Specified parameter is invalid
         (<code class="constant">NULL</code> in case of output
-        parameters).</p></dd><dt id="-ENOMEM"><span class="term"><code class="varname">-ENOMEM</code></span><a class="headerlink" title="Permalink to this term" href="#-ENOMEM">¶</a></dt><dd><p>Memory allocation failed.</p></dd></dl></div></div><div class="refsect1"><a name="idm214168765600"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p><code class="function">sd_bus_creds_new_from_pid()</code> is
+        parameters).</p></dd><dt id="-ENOMEM"><span class="term"><code class="varname">-ENOMEM</code></span><a class="headerlink" title="Permalink to this term" href="#-ENOMEM">¶</a></dt><dd><p>Memory allocation failed.</p></dd></dl></div></div><div class="refsect1"><a name="idm214194042464"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p><code class="function">sd_bus_creds_new_from_pid()</code> is
     available as a shared library, which can be compiled and linked to
     with the
     <code class="constant">libsystemd</code> <a href="pkg-config.html"><span class="citerefentry"><span class="refentrytitle">pkg-config</span>(1)</span></a>
-    file.</p></div><div class="refsect1"><a name="idm214168762688"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+    file.</p></div><div class="refsect1"><a name="idm214195915504"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
       <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
       <a href="sd-bus.html"><span class="citerefentry"><span class="refentrytitle">sd-bus</span>(3)</span></a>,
       <a href="sd_bus_creds_ref.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_creds_ref</span>(3)</span></a>,
index de250c0f6a53b8fb94eea39b858b153f173507c0..b5a8a645f199d4dbc676ae2a155882a67b0a03b6 100644 (file)
@@ -19,7 +19,7 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="sd_bus_creds_new_from_pid"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_bus_creds_new_from_pid, sd_bus_creds_get_mask, sd_bus_creds_ref, sd_bus_creds_unref — Retrieve credentials object for the specified PID</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-bus.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_new_from_pid</b>(</code></td><td>pid_t <var class="pdparam">pid</var>, </td></tr><tr><td> </td><td>uint64_t <var class="pdparam">creds_mask</var>, </td></tr><tr><td> </td><td>sd_bus_creds **<var class="pdparam">ret</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">uint64_t <b class="fsfunc">sd_bus_creds_get_mask</b>(</code></td><td>const sd_bus_creds *<var class="pdparam">c</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">sd_bus_creds *<b class="fsfunc">sd_bus_creds_ref</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">sd_bus_creds *<b class="fsfunc">sd_bus_creds_unref</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div><p>
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="sd_bus_creds_new_from_pid"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_bus_creds_new_from_pid, sd_bus_creds_get_mask, sd_bus_creds_ref, sd_bus_creds_unref — Retrieve credentials object for the specified PID</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-bus.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_new_from_pid</b>(</code></td><td>pid_t <var class="pdparam">pid</var>, </td></tr><tr><td> </td><td>uint64_t <var class="pdparam">creds_mask</var>, </td></tr><tr><td> </td><td>sd_bus_creds **<var class="pdparam">ret</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">uint64_t <b class="fsfunc">sd_bus_creds_get_mask</b>(</code></td><td>const sd_bus_creds *<var class="pdparam">c</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">sd_bus_creds *<b class="fsfunc">sd_bus_creds_ref</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">sd_bus_creds *<b class="fsfunc">sd_bus_creds_unref</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div><p>
       <code class="constant">SD_BUS_CREDS_PID</code>,
       <code class="constant">SD_BUS_CREDS_PID_STARTTIME</code>,
       <code class="constant">SD_BUS_CREDS_TID</code>,
@@ -45,7 +45,7 @@
       <code class="constant">SD_BUS_CREDS_UNIQUE_NAME</code>,
       <code class="constant">SD_BUS_CREDS_WELL_KNOWN_NAMES</code>,
       <code class="constant">_SD_BUS_CREDS_ALL</code>
-    </p></div><div class="refsect1"><a name="idm214173440304"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_bus_creds_new_from_pid()</code> creates a new
+    </p></div><div class="refsect1"><a name="idm214194089696"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_bus_creds_new_from_pid()</code> creates a new
     credentials object and fills it with information about the process
     <em class="parameter"><code>pid</code></em>. This pointer to this object will
     be stored in <em class="parameter"><code>ret</code></em> pointer.</p><p>The information that will be stored is determined by
     <em class="parameter"><code>c</code></em> cannot be used anymore, so futher
     calls to <code class="function">sd_bus_creds_ref(c)</code> or
     <code class="function">sd_bus_creds_unref(c)</code> are illegal.</p><p><code class="function">sd_bus_creds_unref</code> destroys a reference
-    to <em class="parameter"><code>c</code></em>.</p></div><div class="refsect1"><a name="idm214173406800"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>On success, <code class="function">sd_bus_creds_new_from_pid()</code>
+    to <em class="parameter"><code>c</code></em>.</p></div><div class="refsect1"><a name="idm214195301216"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>On success, <code class="function">sd_bus_creds_new_from_pid()</code>
     returns 0 or a positive integer. On failure, it returns a negative
     errno-style error code.</p><p><code class="function">sd_bus_creds_get_mask()</code> returns the
     mask of successfully acquired fields.</p><p><code class="function">sd_bus_creds_ref</code> always returns the
     argument.</p><p><code class="function">sd_bus_creds_unref</code> always returns
-    <code class="constant">NULL</code>.</p></div><div class="refsect1"><a name="idm214173401440"></a><h2 id="Reference ownership">Reference ownership<a class="headerlink" title="Permalink to this headline" href="#Reference%20ownership">¶</a></h2><p>Function <code class="function">sd_bus_creds_new_from_pid()</code>
+    <code class="constant">NULL</code>.</p></div><div class="refsect1"><a name="idm214195571728"></a><h2 id="Reference ownership">Reference ownership<a class="headerlink" title="Permalink to this headline" href="#Reference%20ownership">¶</a></h2><p>Function <code class="function">sd_bus_creds_new_from_pid()</code>
     creates a new object and the caller owns the sole reference. When
     not needed anymore, this reference should be destroyed with
     <a href="sd_bus_creds_unref.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_creds_unref</span>(3)</span></a>.
-    </p></div><div class="refsect1"><a name="idm214173398528"></a><h2 id="Errors">Errors<a class="headerlink" title="Permalink to this headline" href="#Errors">¶</a></h2><p>Returned errors may indicate the following problems:</p><div class="variablelist"><dl class="variablelist"><dt id="-ESRCH"><span class="term"><code class="varname">-ESRCH</code></span><a class="headerlink" title="Permalink to this term" href="#-ESRCH">¶</a></dt><dd><p>Specified <em class="parameter"><code>pid</code></em> could not
+    </p></div><div class="refsect1"><a name="idm214194091024"></a><h2 id="Errors">Errors<a class="headerlink" title="Permalink to this headline" href="#Errors">¶</a></h2><p>Returned errors may indicate the following problems:</p><div class="variablelist"><dl class="variablelist"><dt id="-ESRCH"><span class="term"><code class="varname">-ESRCH</code></span><a class="headerlink" title="Permalink to this term" href="#-ESRCH">¶</a></dt><dd><p>Specified <em class="parameter"><code>pid</code></em> could not
         be found.</p></dd><dt id="-EINVAL"><span class="term"><code class="varname">-EINVAL</code></span><a class="headerlink" title="Permalink to this term" href="#-EINVAL">¶</a></dt><dd><p>Specified parameter is invalid
         (<code class="constant">NULL</code> in case of output
-        parameters).</p></dd><dt id="-ENOMEM"><span class="term"><code class="varname">-ENOMEM</code></span><a class="headerlink" title="Permalink to this term" href="#-ENOMEM">¶</a></dt><dd><p>Memory allocation failed.</p></dd></dl></div></div><div class="refsect1"><a name="idm214168765600"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p><code class="function">sd_bus_creds_new_from_pid()</code> is
+        parameters).</p></dd><dt id="-ENOMEM"><span class="term"><code class="varname">-ENOMEM</code></span><a class="headerlink" title="Permalink to this term" href="#-ENOMEM">¶</a></dt><dd><p>Memory allocation failed.</p></dd></dl></div></div><div class="refsect1"><a name="idm214194042464"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p><code class="function">sd_bus_creds_new_from_pid()</code> is
     available as a shared library, which can be compiled and linked to
     with the
     <code class="constant">libsystemd</code> <a href="pkg-config.html"><span class="citerefentry"><span class="refentrytitle">pkg-config</span>(1)</span></a>
-    file.</p></div><div class="refsect1"><a name="idm214168762688"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+    file.</p></div><div class="refsect1"><a name="idm214195915504"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
       <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
       <a href="sd-bus.html"><span class="citerefentry"><span class="refentrytitle">sd-bus</span>(3)</span></a>,
       <a href="sd_bus_creds_ref.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_creds_ref</span>(3)</span></a>,
index de250c0f6a53b8fb94eea39b858b153f173507c0..b5a8a645f199d4dbc676ae2a155882a67b0a03b6 100644 (file)
@@ -19,7 +19,7 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="sd_bus_creds_new_from_pid"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_bus_creds_new_from_pid, sd_bus_creds_get_mask, sd_bus_creds_ref, sd_bus_creds_unref — Retrieve credentials object for the specified PID</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-bus.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_new_from_pid</b>(</code></td><td>pid_t <var class="pdparam">pid</var>, </td></tr><tr><td> </td><td>uint64_t <var class="pdparam">creds_mask</var>, </td></tr><tr><td> </td><td>sd_bus_creds **<var class="pdparam">ret</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">uint64_t <b class="fsfunc">sd_bus_creds_get_mask</b>(</code></td><td>const sd_bus_creds *<var class="pdparam">c</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">sd_bus_creds *<b class="fsfunc">sd_bus_creds_ref</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">sd_bus_creds *<b class="fsfunc">sd_bus_creds_unref</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div><p>
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="sd_bus_creds_new_from_pid"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_bus_creds_new_from_pid, sd_bus_creds_get_mask, sd_bus_creds_ref, sd_bus_creds_unref — Retrieve credentials object for the specified PID</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-bus.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_creds_new_from_pid</b>(</code></td><td>pid_t <var class="pdparam">pid</var>, </td></tr><tr><td> </td><td>uint64_t <var class="pdparam">creds_mask</var>, </td></tr><tr><td> </td><td>sd_bus_creds **<var class="pdparam">ret</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">uint64_t <b class="fsfunc">sd_bus_creds_get_mask</b>(</code></td><td>const sd_bus_creds *<var class="pdparam">c</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">sd_bus_creds *<b class="fsfunc">sd_bus_creds_ref</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">sd_bus_creds *<b class="fsfunc">sd_bus_creds_unref</b>(</code></td><td>sd_bus_creds *<var class="pdparam">c</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div><p>
       <code class="constant">SD_BUS_CREDS_PID</code>,
       <code class="constant">SD_BUS_CREDS_PID_STARTTIME</code>,
       <code class="constant">SD_BUS_CREDS_TID</code>,
@@ -45,7 +45,7 @@
       <code class="constant">SD_BUS_CREDS_UNIQUE_NAME</code>,
       <code class="constant">SD_BUS_CREDS_WELL_KNOWN_NAMES</code>,
       <code class="constant">_SD_BUS_CREDS_ALL</code>
-    </p></div><div class="refsect1"><a name="idm214173440304"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_bus_creds_new_from_pid()</code> creates a new
+    </p></div><div class="refsect1"><a name="idm214194089696"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_bus_creds_new_from_pid()</code> creates a new
     credentials object and fills it with information about the process
     <em class="parameter"><code>pid</code></em>. This pointer to this object will
     be stored in <em class="parameter"><code>ret</code></em> pointer.</p><p>The information that will be stored is determined by
     <em class="parameter"><code>c</code></em> cannot be used anymore, so futher
     calls to <code class="function">sd_bus_creds_ref(c)</code> or
     <code class="function">sd_bus_creds_unref(c)</code> are illegal.</p><p><code class="function">sd_bus_creds_unref</code> destroys a reference
-    to <em class="parameter"><code>c</code></em>.</p></div><div class="refsect1"><a name="idm214173406800"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>On success, <code class="function">sd_bus_creds_new_from_pid()</code>
+    to <em class="parameter"><code>c</code></em>.</p></div><div class="refsect1"><a name="idm214195301216"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>On success, <code class="function">sd_bus_creds_new_from_pid()</code>
     returns 0 or a positive integer. On failure, it returns a negative
     errno-style error code.</p><p><code class="function">sd_bus_creds_get_mask()</code> returns the
     mask of successfully acquired fields.</p><p><code class="function">sd_bus_creds_ref</code> always returns the
     argument.</p><p><code class="function">sd_bus_creds_unref</code> always returns
-    <code class="constant">NULL</code>.</p></div><div class="refsect1"><a name="idm214173401440"></a><h2 id="Reference ownership">Reference ownership<a class="headerlink" title="Permalink to this headline" href="#Reference%20ownership">¶</a></h2><p>Function <code class="function">sd_bus_creds_new_from_pid()</code>
+    <code class="constant">NULL</code>.</p></div><div class="refsect1"><a name="idm214195571728"></a><h2 id="Reference ownership">Reference ownership<a class="headerlink" title="Permalink to this headline" href="#Reference%20ownership">¶</a></h2><p>Function <code class="function">sd_bus_creds_new_from_pid()</code>
     creates a new object and the caller owns the sole reference. When
     not needed anymore, this reference should be destroyed with
     <a href="sd_bus_creds_unref.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_creds_unref</span>(3)</span></a>.
-    </p></div><div class="refsect1"><a name="idm214173398528"></a><h2 id="Errors">Errors<a class="headerlink" title="Permalink to this headline" href="#Errors">¶</a></h2><p>Returned errors may indicate the following problems:</p><div class="variablelist"><dl class="variablelist"><dt id="-ESRCH"><span class="term"><code class="varname">-ESRCH</code></span><a class="headerlink" title="Permalink to this term" href="#-ESRCH">¶</a></dt><dd><p>Specified <em class="parameter"><code>pid</code></em> could not
+    </p></div><div class="refsect1"><a name="idm214194091024"></a><h2 id="Errors">Errors<a class="headerlink" title="Permalink to this headline" href="#Errors">¶</a></h2><p>Returned errors may indicate the following problems:</p><div class="variablelist"><dl class="variablelist"><dt id="-ESRCH"><span class="term"><code class="varname">-ESRCH</code></span><a class="headerlink" title="Permalink to this term" href="#-ESRCH">¶</a></dt><dd><p>Specified <em class="parameter"><code>pid</code></em> could not
         be found.</p></dd><dt id="-EINVAL"><span class="term"><code class="varname">-EINVAL</code></span><a class="headerlink" title="Permalink to this term" href="#-EINVAL">¶</a></dt><dd><p>Specified parameter is invalid
         (<code class="constant">NULL</code> in case of output
-        parameters).</p></dd><dt id="-ENOMEM"><span class="term"><code class="varname">-ENOMEM</code></span><a class="headerlink" title="Permalink to this term" href="#-ENOMEM">¶</a></dt><dd><p>Memory allocation failed.</p></dd></dl></div></div><div class="refsect1"><a name="idm214168765600"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p><code class="function">sd_bus_creds_new_from_pid()</code> is
+        parameters).</p></dd><dt id="-ENOMEM"><span class="term"><code class="varname">-ENOMEM</code></span><a class="headerlink" title="Permalink to this term" href="#-ENOMEM">¶</a></dt><dd><p>Memory allocation failed.</p></dd></dl></div></div><div class="refsect1"><a name="idm214194042464"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p><code class="function">sd_bus_creds_new_from_pid()</code> is
     available as a shared library, which can be compiled and linked to
     with the
     <code class="constant">libsystemd</code> <a href="pkg-config.html"><span class="citerefentry"><span class="refentrytitle">pkg-config</span>(1)</span></a>
-    file.</p></div><div class="refsect1"><a name="idm214168762688"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+    file.</p></div><div class="refsect1"><a name="idm214195915504"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
       <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
       <a href="sd-bus.html"><span class="citerefentry"><span class="refentrytitle">sd-bus</span>(3)</span></a>,
       <a href="sd_bus_creds_ref.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_creds_ref</span>(3)</span></a>,
index 0cca0e7d843c903b9f615ca1c09f4123f87daf53..751aa00ecd6d15316a70d836ed753cddc162564e 100644 (file)
@@ -19,7 +19,7 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="sd_bus_open_user"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_bus_open_user, sd_bus_open_system, sd_bus_open_system_remote, sd_bus_open_system_container, sd_bus_default_user, sd_bus_default_system — Open a connection to the system or user bus</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-bus.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_open_user</b>(</code></td><td>sd_bus **<var class="pdparam">bus</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_open_system</b>(</code></td><td>sd_bus **<var class="pdparam">bus</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_open_system_remote</b>(</code></td><td>const char *<var class="pdparam">host</var>, </td></tr><tr><td> </td><td>sd_bus **<var class="pdparam">bus</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_open_system_container</b>(</code></td><td>const char *<var class="pdparam">machine</var>, </td></tr><tr><td> </td><td>sd_bus **<var class="pdparam">bus</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_default_user</b>(</code></td><td>sd_bus **<var class="pdparam">bus</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_default_system</b>(</code></td><td>sd_bus **<var class="pdparam">bus</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214183470752"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_bus_open_user()</code> creates a new bus
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="sd_bus_open_user"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_bus_open_user, sd_bus_open_system, sd_bus_open_system_remote, sd_bus_open_system_container, sd_bus_default_user, sd_bus_default_system — Open a connection to the system or user bus</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-bus.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_open_user</b>(</code></td><td>sd_bus **<var class="pdparam">bus</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_open_system</b>(</code></td><td>sd_bus **<var class="pdparam">bus</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_open_system_remote</b>(</code></td><td>const char *<var class="pdparam">host</var>, </td></tr><tr><td> </td><td>sd_bus **<var class="pdparam">bus</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_open_system_container</b>(</code></td><td>const char *<var class="pdparam">machine</var>, </td></tr><tr><td> </td><td>sd_bus **<var class="pdparam">bus</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_default_user</b>(</code></td><td>sd_bus **<var class="pdparam">bus</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_default_system</b>(</code></td><td>sd_bus **<var class="pdparam">bus</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214201032336"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_bus_open_user()</code> creates a new bus
     object and opens a connection to the user bus.
     <code class="function">sd_bus_open_system()</code> does the same, but
     connects to the system bus.</p><p>If the <code class="varname">$DBUS_SESSION_BUS_ADDRESS</code> environment
@@ -48,9 +48,9 @@
     <code class="function">sd_bus_default_user()</code>, and subsequent
     invocations returns a reference to the same object.</p><p><code class="function">sd_bus_default_system()</code> is similar to
     <code class="function">sd_bus_default_user()</code>, but connects to the
-    system bus.</p></div><div class="refsect1"><a name="idm214182906832"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>On success, these calls return 0 or a positive
+    system bus.</p></div><div class="refsect1"><a name="idm214201008656"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>On success, these calls return 0 or a positive
     integer. On failure, these calls return a negative
-    errno-style error code.</p></div><div class="refsect1"><a name="idm214183176144"></a><h2 id="Reference ownership">Reference ownership<a class="headerlink" title="Permalink to this headline" href="#Reference%20ownership">¶</a></h2><p>Functions <code class="function">sd_bus_open_user()</code>,
+    errno-style error code.</p></div><div class="refsect1"><a name="idm214201007328"></a><h2 id="Reference ownership">Reference ownership<a class="headerlink" title="Permalink to this headline" href="#Reference%20ownership">¶</a></h2><p>Functions <code class="function">sd_bus_open_user()</code>,
     <code class="function">sd_bus_open_system()</code>,
     <code class="function">sd_bus_open_system_remote()</code>, and
     <code class="function">sd_bus_open_system_machine()</code> return a new
     <a href="sd_bus_unref.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_unref</span>(3)</span></a>.
     </p><p>The functions <code class="function">sd_bus_default_user()</code> and
     <code class="function">sd_bus_default_system()</code> do not create a new
-    reference.</p></div><div class="refsect1"><a name="idm214182582704"></a><h2 id="Errors">Errors<a class="headerlink" title="Permalink to this headline" href="#Errors">¶</a></h2><p>Returned errors may indicate the following problems:</p><div class="variablelist"><p>In addition, any further connection-related errors may be
+    reference.</p></div><div class="refsect1"><a name="idm214201000368"></a><h2 id="Errors">Errors<a class="headerlink" title="Permalink to this headline" href="#Errors">¶</a></h2><p>Returned errors may indicate the following problems:</p><div class="variablelist"><p>In addition, any further connection-related errors may be
       by returned. See <a href="sd_bus_send.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_send</span>(3)</span></a>.</p><dl class="variablelist"><dt id="-EINVAL"><span class="term"><code class="varname">-EINVAL</code></span><a class="headerlink" title="Permalink to this term" href="#-EINVAL">¶</a></dt><dd><p>Specified parameter is invalid
         (<code class="constant">NULL</code> in case of output
-        parameters).</p></dd><dt id="-ENOMEM"><span class="term"><code class="varname">-ENOMEM</code></span><a class="headerlink" title="Permalink to this term" href="#-ENOMEM">¶</a></dt><dd><p>Memory allocation failed.</p></dd></dl></div></div><div class="refsect1"><a name="idm214182889312"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p><code class="function">sd_bus_open_user()</code> and other functions
+        parameters).</p></dd><dt id="-ENOMEM"><span class="term"><code class="varname">-ENOMEM</code></span><a class="headerlink" title="Permalink to this term" href="#-ENOMEM">¶</a></dt><dd><p>Memory allocation failed.</p></dd></dl></div></div><div class="refsect1"><a name="idm214200994176"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p><code class="function">sd_bus_open_user()</code> and other functions
     described here are available as a shared library, which can be
     compiled and linked to with the
     <code class="constant">libsystemd</code> <a href="pkg-config.html"><span class="citerefentry"><span class="refentrytitle">pkg-config</span>(1)</span></a>
-    file.</p></div><div class="refsect1"><a name="idm214184093888"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+    file.</p></div><div class="refsect1"><a name="idm214200991008"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
       <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
       <a href="sd-bus.html"><span class="citerefentry"><span class="refentrytitle">sd-bus</span>(3)</span></a>,
       <a href="sd_bus_new.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_new</span>(3)</span></a>,
index 0cca0e7d843c903b9f615ca1c09f4123f87daf53..751aa00ecd6d15316a70d836ed753cddc162564e 100644 (file)
@@ -19,7 +19,7 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="sd_bus_open_user"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_bus_open_user, sd_bus_open_system, sd_bus_open_system_remote, sd_bus_open_system_container, sd_bus_default_user, sd_bus_default_system — Open a connection to the system or user bus</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-bus.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_open_user</b>(</code></td><td>sd_bus **<var class="pdparam">bus</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_open_system</b>(</code></td><td>sd_bus **<var class="pdparam">bus</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_open_system_remote</b>(</code></td><td>const char *<var class="pdparam">host</var>, </td></tr><tr><td> </td><td>sd_bus **<var class="pdparam">bus</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_open_system_container</b>(</code></td><td>const char *<var class="pdparam">machine</var>, </td></tr><tr><td> </td><td>sd_bus **<var class="pdparam">bus</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_default_user</b>(</code></td><td>sd_bus **<var class="pdparam">bus</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_default_system</b>(</code></td><td>sd_bus **<var class="pdparam">bus</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214183470752"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_bus_open_user()</code> creates a new bus
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="sd_bus_open_user"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_bus_open_user, sd_bus_open_system, sd_bus_open_system_remote, sd_bus_open_system_container, sd_bus_default_user, sd_bus_default_system — Open a connection to the system or user bus</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-bus.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_open_user</b>(</code></td><td>sd_bus **<var class="pdparam">bus</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_open_system</b>(</code></td><td>sd_bus **<var class="pdparam">bus</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_open_system_remote</b>(</code></td><td>const char *<var class="pdparam">host</var>, </td></tr><tr><td> </td><td>sd_bus **<var class="pdparam">bus</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_open_system_container</b>(</code></td><td>const char *<var class="pdparam">machine</var>, </td></tr><tr><td> </td><td>sd_bus **<var class="pdparam">bus</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_default_user</b>(</code></td><td>sd_bus **<var class="pdparam">bus</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_default_system</b>(</code></td><td>sd_bus **<var class="pdparam">bus</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214201032336"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_bus_open_user()</code> creates a new bus
     object and opens a connection to the user bus.
     <code class="function">sd_bus_open_system()</code> does the same, but
     connects to the system bus.</p><p>If the <code class="varname">$DBUS_SESSION_BUS_ADDRESS</code> environment
@@ -48,9 +48,9 @@
     <code class="function">sd_bus_default_user()</code>, and subsequent
     invocations returns a reference to the same object.</p><p><code class="function">sd_bus_default_system()</code> is similar to
     <code class="function">sd_bus_default_user()</code>, but connects to the
-    system bus.</p></div><div class="refsect1"><a name="idm214182906832"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>On success, these calls return 0 or a positive
+    system bus.</p></div><div class="refsect1"><a name="idm214201008656"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>On success, these calls return 0 or a positive
     integer. On failure, these calls return a negative
-    errno-style error code.</p></div><div class="refsect1"><a name="idm214183176144"></a><h2 id="Reference ownership">Reference ownership<a class="headerlink" title="Permalink to this headline" href="#Reference%20ownership">¶</a></h2><p>Functions <code class="function">sd_bus_open_user()</code>,
+    errno-style error code.</p></div><div class="refsect1"><a name="idm214201007328"></a><h2 id="Reference ownership">Reference ownership<a class="headerlink" title="Permalink to this headline" href="#Reference%20ownership">¶</a></h2><p>Functions <code class="function">sd_bus_open_user()</code>,
     <code class="function">sd_bus_open_system()</code>,
     <code class="function">sd_bus_open_system_remote()</code>, and
     <code class="function">sd_bus_open_system_machine()</code> return a new
     <a href="sd_bus_unref.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_unref</span>(3)</span></a>.
     </p><p>The functions <code class="function">sd_bus_default_user()</code> and
     <code class="function">sd_bus_default_system()</code> do not create a new
-    reference.</p></div><div class="refsect1"><a name="idm214182582704"></a><h2 id="Errors">Errors<a class="headerlink" title="Permalink to this headline" href="#Errors">¶</a></h2><p>Returned errors may indicate the following problems:</p><div class="variablelist"><p>In addition, any further connection-related errors may be
+    reference.</p></div><div class="refsect1"><a name="idm214201000368"></a><h2 id="Errors">Errors<a class="headerlink" title="Permalink to this headline" href="#Errors">¶</a></h2><p>Returned errors may indicate the following problems:</p><div class="variablelist"><p>In addition, any further connection-related errors may be
       by returned. See <a href="sd_bus_send.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_send</span>(3)</span></a>.</p><dl class="variablelist"><dt id="-EINVAL"><span class="term"><code class="varname">-EINVAL</code></span><a class="headerlink" title="Permalink to this term" href="#-EINVAL">¶</a></dt><dd><p>Specified parameter is invalid
         (<code class="constant">NULL</code> in case of output
-        parameters).</p></dd><dt id="-ENOMEM"><span class="term"><code class="varname">-ENOMEM</code></span><a class="headerlink" title="Permalink to this term" href="#-ENOMEM">¶</a></dt><dd><p>Memory allocation failed.</p></dd></dl></div></div><div class="refsect1"><a name="idm214182889312"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p><code class="function">sd_bus_open_user()</code> and other functions
+        parameters).</p></dd><dt id="-ENOMEM"><span class="term"><code class="varname">-ENOMEM</code></span><a class="headerlink" title="Permalink to this term" href="#-ENOMEM">¶</a></dt><dd><p>Memory allocation failed.</p></dd></dl></div></div><div class="refsect1"><a name="idm214200994176"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p><code class="function">sd_bus_open_user()</code> and other functions
     described here are available as a shared library, which can be
     compiled and linked to with the
     <code class="constant">libsystemd</code> <a href="pkg-config.html"><span class="citerefentry"><span class="refentrytitle">pkg-config</span>(1)</span></a>
-    file.</p></div><div class="refsect1"><a name="idm214184093888"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+    file.</p></div><div class="refsect1"><a name="idm214200991008"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
       <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
       <a href="sd-bus.html"><span class="citerefentry"><span class="refentrytitle">sd-bus</span>(3)</span></a>,
       <a href="sd_bus_new.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_new</span>(3)</span></a>,
index f9a569c43208f451296bede0922bb937c1ed8ed3..b3a66f7343c7891f1e209ab84eed66f6927ae57f 100644 (file)
@@ -1,5 +1,5 @@
 '\" t
-.TH "SD_BUS_ERROR" "3" "" "systemd 214" "sd_bus_error"
+.TH "SD_BUS_ERROR" "3" "" "systemd 215" "sd_bus_error"
 .\" -----------------------------------------------------------------
 .\" * Define some portability stuff
 .\" -----------------------------------------------------------------
index 00b772fc18895b1a808c49e4a8d9dc56ed717d82..26749f1ef2fdaf44c781b93548c6d02fab62820c 100644 (file)
@@ -19,7 +19,7 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="sd_bus_error"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_bus_error, sd_bus_error_free, sd_bus_error_set, sd_bus_error_set_const, sd_bus_error_set_errno, sd_bus_error_set_errnof, sd_bus_error_get_errno, sd_bus_error_copy, sd_bus_error_is_set, sd_bus_error_has_name — sd-bus error handling</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-bus.h&gt;</pre><pre class="funcsynopsisinfo">typedef struct {
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="sd_bus_error"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_bus_error, sd_bus_error_free, sd_bus_error_set, sd_bus_error_set_const, sd_bus_error_set_errno, sd_bus_error_set_errnof, sd_bus_error_get_errno, sd_bus_error_copy, sd_bus_error_is_set, sd_bus_error_has_name — sd-bus error handling</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-bus.h&gt;</pre><pre class="funcsynopsisinfo">typedef struct {
         const char *name;
         const char *message;
         ...
@@ -85,7 +85,7 @@
       <code class="constant">SD_BUS_ERROR_MATCH_RULE_NOT_FOUND</code>
     </p><p>
       <code class="constant">SD_BUS_ERROR_MATCH_RULE_INVALID</code>
-    </p></div><div class="refsect1"><a name="idm214187001632"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p>The <span class="structname">sd_bus_error</span> structure carries
+    </p></div><div class="refsect1"><a name="idm214180451616"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p>The <span class="structname">sd_bus_error</span> structure carries
     information for a <code class="filename">sd-bus</code> error. The
     functions described below can be used to set and query fields in
     this structure. The <em class="structfield"><code>name</code></em> field contains a
     held by <em class="parameter"><code>e</code></em>. The parameter itself will not
     be deallocated, and must be
     <a href="free.html"><span class="citerefentry"><span class="refentrytitle">free</span>(3)</span></a>d
-    by the caller if necessary.</p></div><div class="refsect1"><a name="idm214186959952"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>Functions <code class="function">sd_bus_error_set</code>,
+    by the caller if necessary.</p></div><div class="refsect1"><a name="idm214179308512"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>Functions <code class="function">sd_bus_error_set</code>,
     <code class="function">sd_bus_error_setf</code>,
     <code class="function">sd_bus_error_set_const</code>, when successful,
     return the negative errno value corresponding to the
     <code class="constant">true</code> when <em class="parameter"><code>e</code></em> is
     non-<code class="constant">NULL</code> and <em class="parameter"><code>e-&gt;name</code></em>
     is equal to <em class="parameter"><code>name</code></em>,
-    <code class="constant">false</code> otherwise.</p></div><div class="refsect1"><a name="idm214186943232"></a><h2 id="Reference ownership">Reference ownership<a class="headerlink" title="Permalink to this headline" href="#Reference%20ownership">¶</a></h2><p><span class="structname">sd_bus_error</span> is not reference
+    <code class="constant">false</code> otherwise.</p></div><div class="refsect1"><a name="idm214180287856"></a><h2 id="Reference ownership">Reference ownership<a class="headerlink" title="Permalink to this headline" href="#Reference%20ownership">¶</a></h2><p><span class="structname">sd_bus_error</span> is not reference
     counted. Users should destroy resources held by it by calling
-    <code class="function">sd_bus_error_free</code>.</p></div><div class="refsect1"><a name="idm214186941088"></a><h2 id="Errors">Errors<a class="headerlink" title="Permalink to this headline" href="#Errors">¶</a></h2><p>Returned errors may indicate the following problems:</p><div class="variablelist"><dl class="variablelist"><dt id="-EINVAL"><span class="term"><code class="varname">-EINVAL</code></span><a class="headerlink" title="Permalink to this term" href="#-EINVAL">¶</a></dt><dd><p>Error was already set in
+    <code class="function">sd_bus_error_free</code>.</p></div><div class="refsect1"><a name="idm214180285584"></a><h2 id="Errors">Errors<a class="headerlink" title="Permalink to this headline" href="#Errors">¶</a></h2><p>Returned errors may indicate the following problems:</p><div class="variablelist"><dl class="variablelist"><dt id="-EINVAL"><span class="term"><code class="varname">-EINVAL</code></span><a class="headerlink" title="Permalink to this term" href="#-EINVAL">¶</a></dt><dd><p>Error was already set in
         <span class="structname">sd_bus_error</span> structure when one the
-        error-setting functions was called.</p></dd><dt id="-ENOMEM"><span class="term"><code class="varname">-ENOMEM</code></span><a class="headerlink" title="Permalink to this term" href="#-ENOMEM">¶</a></dt><dd><p>Memory allocation failed.</p></dd></dl></div></div><div class="refsect1"><a name="idm214186936352"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p><code class="function">sd_bus_set_error()</code> and other functions
+        error-setting functions was called.</p></dd><dt id="-ENOMEM"><span class="term"><code class="varname">-ENOMEM</code></span><a class="headerlink" title="Permalink to this term" href="#-ENOMEM">¶</a></dt><dd><p>Memory allocation failed.</p></dd></dl></div></div><div class="refsect1"><a name="idm214180280672"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p><code class="function">sd_bus_set_error()</code> and other functions
     described here are available as a shared library, which can be
     compiled and linked to with the
     <code class="constant">libsystemd</code> <a href="pkg-config.html"><span class="citerefentry"><span class="refentrytitle">pkg-config</span>(1)</span></a>
-    file.</p></div><div class="refsect1"><a name="idm214186933408"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+    file.</p></div><div class="refsect1"><a name="idm214180277504"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
       <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
       <a href="sd-bus.html"><span class="citerefentry"><span class="refentrytitle">sd-bus</span>(3)</span></a>,
       <a href="errno.html"><span class="citerefentry"><span class="refentrytitle">errno</span>(3)</span></a>,
index 00b772fc18895b1a808c49e4a8d9dc56ed717d82..26749f1ef2fdaf44c781b93548c6d02fab62820c 100644 (file)
@@ -19,7 +19,7 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="sd_bus_error"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_bus_error, sd_bus_error_free, sd_bus_error_set, sd_bus_error_set_const, sd_bus_error_set_errno, sd_bus_error_set_errnof, sd_bus_error_get_errno, sd_bus_error_copy, sd_bus_error_is_set, sd_bus_error_has_name — sd-bus error handling</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-bus.h&gt;</pre><pre class="funcsynopsisinfo">typedef struct {
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="sd_bus_error"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_bus_error, sd_bus_error_free, sd_bus_error_set, sd_bus_error_set_const, sd_bus_error_set_errno, sd_bus_error_set_errnof, sd_bus_error_get_errno, sd_bus_error_copy, sd_bus_error_is_set, sd_bus_error_has_name — sd-bus error handling</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-bus.h&gt;</pre><pre class="funcsynopsisinfo">typedef struct {
         const char *name;
         const char *message;
         ...
@@ -85,7 +85,7 @@
       <code class="constant">SD_BUS_ERROR_MATCH_RULE_NOT_FOUND</code>
     </p><p>
       <code class="constant">SD_BUS_ERROR_MATCH_RULE_INVALID</code>
-    </p></div><div class="refsect1"><a name="idm214187001632"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p>The <span class="structname">sd_bus_error</span> structure carries
+    </p></div><div class="refsect1"><a name="idm214180451616"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p>The <span class="structname">sd_bus_error</span> structure carries
     information for a <code class="filename">sd-bus</code> error. The
     functions described below can be used to set and query fields in
     this structure. The <em class="structfield"><code>name</code></em> field contains a
     held by <em class="parameter"><code>e</code></em>. The parameter itself will not
     be deallocated, and must be
     <a href="free.html"><span class="citerefentry"><span class="refentrytitle">free</span>(3)</span></a>d
-    by the caller if necessary.</p></div><div class="refsect1"><a name="idm214186959952"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>Functions <code class="function">sd_bus_error_set</code>,
+    by the caller if necessary.</p></div><div class="refsect1"><a name="idm214179308512"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>Functions <code class="function">sd_bus_error_set</code>,
     <code class="function">sd_bus_error_setf</code>,
     <code class="function">sd_bus_error_set_const</code>, when successful,
     return the negative errno value corresponding to the
     <code class="constant">true</code> when <em class="parameter"><code>e</code></em> is
     non-<code class="constant">NULL</code> and <em class="parameter"><code>e-&gt;name</code></em>
     is equal to <em class="parameter"><code>name</code></em>,
-    <code class="constant">false</code> otherwise.</p></div><div class="refsect1"><a name="idm214186943232"></a><h2 id="Reference ownership">Reference ownership<a class="headerlink" title="Permalink to this headline" href="#Reference%20ownership">¶</a></h2><p><span class="structname">sd_bus_error</span> is not reference
+    <code class="constant">false</code> otherwise.</p></div><div class="refsect1"><a name="idm214180287856"></a><h2 id="Reference ownership">Reference ownership<a class="headerlink" title="Permalink to this headline" href="#Reference%20ownership">¶</a></h2><p><span class="structname">sd_bus_error</span> is not reference
     counted. Users should destroy resources held by it by calling
-    <code class="function">sd_bus_error_free</code>.</p></div><div class="refsect1"><a name="idm214186941088"></a><h2 id="Errors">Errors<a class="headerlink" title="Permalink to this headline" href="#Errors">¶</a></h2><p>Returned errors may indicate the following problems:</p><div class="variablelist"><dl class="variablelist"><dt id="-EINVAL"><span class="term"><code class="varname">-EINVAL</code></span><a class="headerlink" title="Permalink to this term" href="#-EINVAL">¶</a></dt><dd><p>Error was already set in
+    <code class="function">sd_bus_error_free</code>.</p></div><div class="refsect1"><a name="idm214180285584"></a><h2 id="Errors">Errors<a class="headerlink" title="Permalink to this headline" href="#Errors">¶</a></h2><p>Returned errors may indicate the following problems:</p><div class="variablelist"><dl class="variablelist"><dt id="-EINVAL"><span class="term"><code class="varname">-EINVAL</code></span><a class="headerlink" title="Permalink to this term" href="#-EINVAL">¶</a></dt><dd><p>Error was already set in
         <span class="structname">sd_bus_error</span> structure when one the
-        error-setting functions was called.</p></dd><dt id="-ENOMEM"><span class="term"><code class="varname">-ENOMEM</code></span><a class="headerlink" title="Permalink to this term" href="#-ENOMEM">¶</a></dt><dd><p>Memory allocation failed.</p></dd></dl></div></div><div class="refsect1"><a name="idm214186936352"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p><code class="function">sd_bus_set_error()</code> and other functions
+        error-setting functions was called.</p></dd><dt id="-ENOMEM"><span class="term"><code class="varname">-ENOMEM</code></span><a class="headerlink" title="Permalink to this term" href="#-ENOMEM">¶</a></dt><dd><p>Memory allocation failed.</p></dd></dl></div></div><div class="refsect1"><a name="idm214180280672"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p><code class="function">sd_bus_set_error()</code> and other functions
     described here are available as a shared library, which can be
     compiled and linked to with the
     <code class="constant">libsystemd</code> <a href="pkg-config.html"><span class="citerefentry"><span class="refentrytitle">pkg-config</span>(1)</span></a>
-    file.</p></div><div class="refsect1"><a name="idm214186933408"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+    file.</p></div><div class="refsect1"><a name="idm214180277504"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
       <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
       <a href="sd-bus.html"><span class="citerefentry"><span class="refentrytitle">sd-bus</span>(3)</span></a>,
       <a href="errno.html"><span class="citerefentry"><span class="refentrytitle">errno</span>(3)</span></a>,
index 00b772fc18895b1a808c49e4a8d9dc56ed717d82..26749f1ef2fdaf44c781b93548c6d02fab62820c 100644 (file)
@@ -19,7 +19,7 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="sd_bus_error"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_bus_error, sd_bus_error_free, sd_bus_error_set, sd_bus_error_set_const, sd_bus_error_set_errno, sd_bus_error_set_errnof, sd_bus_error_get_errno, sd_bus_error_copy, sd_bus_error_is_set, sd_bus_error_has_name — sd-bus error handling</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-bus.h&gt;</pre><pre class="funcsynopsisinfo">typedef struct {
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="sd_bus_error"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_bus_error, sd_bus_error_free, sd_bus_error_set, sd_bus_error_set_const, sd_bus_error_set_errno, sd_bus_error_set_errnof, sd_bus_error_get_errno, sd_bus_error_copy, sd_bus_error_is_set, sd_bus_error_has_name — sd-bus error handling</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-bus.h&gt;</pre><pre class="funcsynopsisinfo">typedef struct {
         const char *name;
         const char *message;
         ...
@@ -85,7 +85,7 @@
       <code class="constant">SD_BUS_ERROR_MATCH_RULE_NOT_FOUND</code>
     </p><p>
       <code class="constant">SD_BUS_ERROR_MATCH_RULE_INVALID</code>
-    </p></div><div class="refsect1"><a name="idm214187001632"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p>The <span class="structname">sd_bus_error</span> structure carries
+    </p></div><div class="refsect1"><a name="idm214180451616"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p>The <span class="structname">sd_bus_error</span> structure carries
     information for a <code class="filename">sd-bus</code> error. The
     functions described below can be used to set and query fields in
     this structure. The <em class="structfield"><code>name</code></em> field contains a
     held by <em class="parameter"><code>e</code></em>. The parameter itself will not
     be deallocated, and must be
     <a href="free.html"><span class="citerefentry"><span class="refentrytitle">free</span>(3)</span></a>d
-    by the caller if necessary.</p></div><div class="refsect1"><a name="idm214186959952"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>Functions <code class="function">sd_bus_error_set</code>,
+    by the caller if necessary.</p></div><div class="refsect1"><a name="idm214179308512"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>Functions <code class="function">sd_bus_error_set</code>,
     <code class="function">sd_bus_error_setf</code>,
     <code class="function">sd_bus_error_set_const</code>, when successful,
     return the negative errno value corresponding to the
     <code class="constant">true</code> when <em class="parameter"><code>e</code></em> is
     non-<code class="constant">NULL</code> and <em class="parameter"><code>e-&gt;name</code></em>
     is equal to <em class="parameter"><code>name</code></em>,
-    <code class="constant">false</code> otherwise.</p></div><div class="refsect1"><a name="idm214186943232"></a><h2 id="Reference ownership">Reference ownership<a class="headerlink" title="Permalink to this headline" href="#Reference%20ownership">¶</a></h2><p><span class="structname">sd_bus_error</span> is not reference
+    <code class="constant">false</code> otherwise.</p></div><div class="refsect1"><a name="idm214180287856"></a><h2 id="Reference ownership">Reference ownership<a class="headerlink" title="Permalink to this headline" href="#Reference%20ownership">¶</a></h2><p><span class="structname">sd_bus_error</span> is not reference
     counted. Users should destroy resources held by it by calling
-    <code class="function">sd_bus_error_free</code>.</p></div><div class="refsect1"><a name="idm214186941088"></a><h2 id="Errors">Errors<a class="headerlink" title="Permalink to this headline" href="#Errors">¶</a></h2><p>Returned errors may indicate the following problems:</p><div class="variablelist"><dl class="variablelist"><dt id="-EINVAL"><span class="term"><code class="varname">-EINVAL</code></span><a class="headerlink" title="Permalink to this term" href="#-EINVAL">¶</a></dt><dd><p>Error was already set in
+    <code class="function">sd_bus_error_free</code>.</p></div><div class="refsect1"><a name="idm214180285584"></a><h2 id="Errors">Errors<a class="headerlink" title="Permalink to this headline" href="#Errors">¶</a></h2><p>Returned errors may indicate the following problems:</p><div class="variablelist"><dl class="variablelist"><dt id="-EINVAL"><span class="term"><code class="varname">-EINVAL</code></span><a class="headerlink" title="Permalink to this term" href="#-EINVAL">¶</a></dt><dd><p>Error was already set in
         <span class="structname">sd_bus_error</span> structure when one the
-        error-setting functions was called.</p></dd><dt id="-ENOMEM"><span class="term"><code class="varname">-ENOMEM</code></span><a class="headerlink" title="Permalink to this term" href="#-ENOMEM">¶</a></dt><dd><p>Memory allocation failed.</p></dd></dl></div></div><div class="refsect1"><a name="idm214186936352"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p><code class="function">sd_bus_set_error()</code> and other functions
+        error-setting functions was called.</p></dd><dt id="-ENOMEM"><span class="term"><code class="varname">-ENOMEM</code></span><a class="headerlink" title="Permalink to this term" href="#-ENOMEM">¶</a></dt><dd><p>Memory allocation failed.</p></dd></dl></div></div><div class="refsect1"><a name="idm214180280672"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p><code class="function">sd_bus_set_error()</code> and other functions
     described here are available as a shared library, which can be
     compiled and linked to with the
     <code class="constant">libsystemd</code> <a href="pkg-config.html"><span class="citerefentry"><span class="refentrytitle">pkg-config</span>(1)</span></a>
-    file.</p></div><div class="refsect1"><a name="idm214186933408"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+    file.</p></div><div class="refsect1"><a name="idm214180277504"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
       <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
       <a href="sd-bus.html"><span class="citerefentry"><span class="refentrytitle">sd-bus</span>(3)</span></a>,
       <a href="errno.html"><span class="citerefentry"><span class="refentrytitle">errno</span>(3)</span></a>,
index 00b772fc18895b1a808c49e4a8d9dc56ed717d82..26749f1ef2fdaf44c781b93548c6d02fab62820c 100644 (file)
@@ -19,7 +19,7 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="sd_bus_error"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_bus_error, sd_bus_error_free, sd_bus_error_set, sd_bus_error_set_const, sd_bus_error_set_errno, sd_bus_error_set_errnof, sd_bus_error_get_errno, sd_bus_error_copy, sd_bus_error_is_set, sd_bus_error_has_name — sd-bus error handling</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-bus.h&gt;</pre><pre class="funcsynopsisinfo">typedef struct {
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="sd_bus_error"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_bus_error, sd_bus_error_free, sd_bus_error_set, sd_bus_error_set_const, sd_bus_error_set_errno, sd_bus_error_set_errnof, sd_bus_error_get_errno, sd_bus_error_copy, sd_bus_error_is_set, sd_bus_error_has_name — sd-bus error handling</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-bus.h&gt;</pre><pre class="funcsynopsisinfo">typedef struct {
         const char *name;
         const char *message;
         ...
@@ -85,7 +85,7 @@
       <code class="constant">SD_BUS_ERROR_MATCH_RULE_NOT_FOUND</code>
     </p><p>
       <code class="constant">SD_BUS_ERROR_MATCH_RULE_INVALID</code>
-    </p></div><div class="refsect1"><a name="idm214187001632"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p>The <span class="structname">sd_bus_error</span> structure carries
+    </p></div><div class="refsect1"><a name="idm214180451616"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p>The <span class="structname">sd_bus_error</span> structure carries
     information for a <code class="filename">sd-bus</code> error. The
     functions described below can be used to set and query fields in
     this structure. The <em class="structfield"><code>name</code></em> field contains a
     held by <em class="parameter"><code>e</code></em>. The parameter itself will not
     be deallocated, and must be
     <a href="free.html"><span class="citerefentry"><span class="refentrytitle">free</span>(3)</span></a>d
-    by the caller if necessary.</p></div><div class="refsect1"><a name="idm214186959952"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>Functions <code class="function">sd_bus_error_set</code>,
+    by the caller if necessary.</p></div><div class="refsect1"><a name="idm214179308512"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>Functions <code class="function">sd_bus_error_set</code>,
     <code class="function">sd_bus_error_setf</code>,
     <code class="function">sd_bus_error_set_const</code>, when successful,
     return the negative errno value corresponding to the
     <code class="constant">true</code> when <em class="parameter"><code>e</code></em> is
     non-<code class="constant">NULL</code> and <em class="parameter"><code>e-&gt;name</code></em>
     is equal to <em class="parameter"><code>name</code></em>,
-    <code class="constant">false</code> otherwise.</p></div><div class="refsect1"><a name="idm214186943232"></a><h2 id="Reference ownership">Reference ownership<a class="headerlink" title="Permalink to this headline" href="#Reference%20ownership">¶</a></h2><p><span class="structname">sd_bus_error</span> is not reference
+    <code class="constant">false</code> otherwise.</p></div><div class="refsect1"><a name="idm214180287856"></a><h2 id="Reference ownership">Reference ownership<a class="headerlink" title="Permalink to this headline" href="#Reference%20ownership">¶</a></h2><p><span class="structname">sd_bus_error</span> is not reference
     counted. Users should destroy resources held by it by calling
-    <code class="function">sd_bus_error_free</code>.</p></div><div class="refsect1"><a name="idm214186941088"></a><h2 id="Errors">Errors<a class="headerlink" title="Permalink to this headline" href="#Errors">¶</a></h2><p>Returned errors may indicate the following problems:</p><div class="variablelist"><dl class="variablelist"><dt id="-EINVAL"><span class="term"><code class="varname">-EINVAL</code></span><a class="headerlink" title="Permalink to this term" href="#-EINVAL">¶</a></dt><dd><p>Error was already set in
+    <code class="function">sd_bus_error_free</code>.</p></div><div class="refsect1"><a name="idm214180285584"></a><h2 id="Errors">Errors<a class="headerlink" title="Permalink to this headline" href="#Errors">¶</a></h2><p>Returned errors may indicate the following problems:</p><div class="variablelist"><dl class="variablelist"><dt id="-EINVAL"><span class="term"><code class="varname">-EINVAL</code></span><a class="headerlink" title="Permalink to this term" href="#-EINVAL">¶</a></dt><dd><p>Error was already set in
         <span class="structname">sd_bus_error</span> structure when one the
-        error-setting functions was called.</p></dd><dt id="-ENOMEM"><span class="term"><code class="varname">-ENOMEM</code></span><a class="headerlink" title="Permalink to this term" href="#-ENOMEM">¶</a></dt><dd><p>Memory allocation failed.</p></dd></dl></div></div><div class="refsect1"><a name="idm214186936352"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p><code class="function">sd_bus_set_error()</code> and other functions
+        error-setting functions was called.</p></dd><dt id="-ENOMEM"><span class="term"><code class="varname">-ENOMEM</code></span><a class="headerlink" title="Permalink to this term" href="#-ENOMEM">¶</a></dt><dd><p>Memory allocation failed.</p></dd></dl></div></div><div class="refsect1"><a name="idm214180280672"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p><code class="function">sd_bus_set_error()</code> and other functions
     described here are available as a shared library, which can be
     compiled and linked to with the
     <code class="constant">libsystemd</code> <a href="pkg-config.html"><span class="citerefentry"><span class="refentrytitle">pkg-config</span>(1)</span></a>
-    file.</p></div><div class="refsect1"><a name="idm214186933408"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+    file.</p></div><div class="refsect1"><a name="idm214180277504"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
       <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
       <a href="sd-bus.html"><span class="citerefentry"><span class="refentrytitle">sd-bus</span>(3)</span></a>,
       <a href="errno.html"><span class="citerefentry"><span class="refentrytitle">errno</span>(3)</span></a>,
index 00b772fc18895b1a808c49e4a8d9dc56ed717d82..26749f1ef2fdaf44c781b93548c6d02fab62820c 100644 (file)
@@ -19,7 +19,7 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="sd_bus_error"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_bus_error, sd_bus_error_free, sd_bus_error_set, sd_bus_error_set_const, sd_bus_error_set_errno, sd_bus_error_set_errnof, sd_bus_error_get_errno, sd_bus_error_copy, sd_bus_error_is_set, sd_bus_error_has_name — sd-bus error handling</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-bus.h&gt;</pre><pre class="funcsynopsisinfo">typedef struct {
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="sd_bus_error"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_bus_error, sd_bus_error_free, sd_bus_error_set, sd_bus_error_set_const, sd_bus_error_set_errno, sd_bus_error_set_errnof, sd_bus_error_get_errno, sd_bus_error_copy, sd_bus_error_is_set, sd_bus_error_has_name — sd-bus error handling</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-bus.h&gt;</pre><pre class="funcsynopsisinfo">typedef struct {
         const char *name;
         const char *message;
         ...
@@ -85,7 +85,7 @@
       <code class="constant">SD_BUS_ERROR_MATCH_RULE_NOT_FOUND</code>
     </p><p>
       <code class="constant">SD_BUS_ERROR_MATCH_RULE_INVALID</code>
-    </p></div><div class="refsect1"><a name="idm214187001632"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p>The <span class="structname">sd_bus_error</span> structure carries
+    </p></div><div class="refsect1"><a name="idm214180451616"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p>The <span class="structname">sd_bus_error</span> structure carries
     information for a <code class="filename">sd-bus</code> error. The
     functions described below can be used to set and query fields in
     this structure. The <em class="structfield"><code>name</code></em> field contains a
     held by <em class="parameter"><code>e</code></em>. The parameter itself will not
     be deallocated, and must be
     <a href="free.html"><span class="citerefentry"><span class="refentrytitle">free</span>(3)</span></a>d
-    by the caller if necessary.</p></div><div class="refsect1"><a name="idm214186959952"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>Functions <code class="function">sd_bus_error_set</code>,
+    by the caller if necessary.</p></div><div class="refsect1"><a name="idm214179308512"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>Functions <code class="function">sd_bus_error_set</code>,
     <code class="function">sd_bus_error_setf</code>,
     <code class="function">sd_bus_error_set_const</code>, when successful,
     return the negative errno value corresponding to the
     <code class="constant">true</code> when <em class="parameter"><code>e</code></em> is
     non-<code class="constant">NULL</code> and <em class="parameter"><code>e-&gt;name</code></em>
     is equal to <em class="parameter"><code>name</code></em>,
-    <code class="constant">false</code> otherwise.</p></div><div class="refsect1"><a name="idm214186943232"></a><h2 id="Reference ownership">Reference ownership<a class="headerlink" title="Permalink to this headline" href="#Reference%20ownership">¶</a></h2><p><span class="structname">sd_bus_error</span> is not reference
+    <code class="constant">false</code> otherwise.</p></div><div class="refsect1"><a name="idm214180287856"></a><h2 id="Reference ownership">Reference ownership<a class="headerlink" title="Permalink to this headline" href="#Reference%20ownership">¶</a></h2><p><span class="structname">sd_bus_error</span> is not reference
     counted. Users should destroy resources held by it by calling
-    <code class="function">sd_bus_error_free</code>.</p></div><div class="refsect1"><a name="idm214186941088"></a><h2 id="Errors">Errors<a class="headerlink" title="Permalink to this headline" href="#Errors">¶</a></h2><p>Returned errors may indicate the following problems:</p><div class="variablelist"><dl class="variablelist"><dt id="-EINVAL"><span class="term"><code class="varname">-EINVAL</code></span><a class="headerlink" title="Permalink to this term" href="#-EINVAL">¶</a></dt><dd><p>Error was already set in
+    <code class="function">sd_bus_error_free</code>.</p></div><div class="refsect1"><a name="idm214180285584"></a><h2 id="Errors">Errors<a class="headerlink" title="Permalink to this headline" href="#Errors">¶</a></h2><p>Returned errors may indicate the following problems:</p><div class="variablelist"><dl class="variablelist"><dt id="-EINVAL"><span class="term"><code class="varname">-EINVAL</code></span><a class="headerlink" title="Permalink to this term" href="#-EINVAL">¶</a></dt><dd><p>Error was already set in
         <span class="structname">sd_bus_error</span> structure when one the
-        error-setting functions was called.</p></dd><dt id="-ENOMEM"><span class="term"><code class="varname">-ENOMEM</code></span><a class="headerlink" title="Permalink to this term" href="#-ENOMEM">¶</a></dt><dd><p>Memory allocation failed.</p></dd></dl></div></div><div class="refsect1"><a name="idm214186936352"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p><code class="function">sd_bus_set_error()</code> and other functions
+        error-setting functions was called.</p></dd><dt id="-ENOMEM"><span class="term"><code class="varname">-ENOMEM</code></span><a class="headerlink" title="Permalink to this term" href="#-ENOMEM">¶</a></dt><dd><p>Memory allocation failed.</p></dd></dl></div></div><div class="refsect1"><a name="idm214180280672"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p><code class="function">sd_bus_set_error()</code> and other functions
     described here are available as a shared library, which can be
     compiled and linked to with the
     <code class="constant">libsystemd</code> <a href="pkg-config.html"><span class="citerefentry"><span class="refentrytitle">pkg-config</span>(1)</span></a>
-    file.</p></div><div class="refsect1"><a name="idm214186933408"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+    file.</p></div><div class="refsect1"><a name="idm214180277504"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
       <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
       <a href="sd-bus.html"><span class="citerefentry"><span class="refentrytitle">sd-bus</span>(3)</span></a>,
       <a href="errno.html"><span class="citerefentry"><span class="refentrytitle">errno</span>(3)</span></a>,
index 00b772fc18895b1a808c49e4a8d9dc56ed717d82..26749f1ef2fdaf44c781b93548c6d02fab62820c 100644 (file)
@@ -19,7 +19,7 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="sd_bus_error"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_bus_error, sd_bus_error_free, sd_bus_error_set, sd_bus_error_set_const, sd_bus_error_set_errno, sd_bus_error_set_errnof, sd_bus_error_get_errno, sd_bus_error_copy, sd_bus_error_is_set, sd_bus_error_has_name — sd-bus error handling</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-bus.h&gt;</pre><pre class="funcsynopsisinfo">typedef struct {
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="sd_bus_error"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_bus_error, sd_bus_error_free, sd_bus_error_set, sd_bus_error_set_const, sd_bus_error_set_errno, sd_bus_error_set_errnof, sd_bus_error_get_errno, sd_bus_error_copy, sd_bus_error_is_set, sd_bus_error_has_name — sd-bus error handling</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-bus.h&gt;</pre><pre class="funcsynopsisinfo">typedef struct {
         const char *name;
         const char *message;
         ...
@@ -85,7 +85,7 @@
       <code class="constant">SD_BUS_ERROR_MATCH_RULE_NOT_FOUND</code>
     </p><p>
       <code class="constant">SD_BUS_ERROR_MATCH_RULE_INVALID</code>
-    </p></div><div class="refsect1"><a name="idm214187001632"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p>The <span class="structname">sd_bus_error</span> structure carries
+    </p></div><div class="refsect1"><a name="idm214180451616"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p>The <span class="structname">sd_bus_error</span> structure carries
     information for a <code class="filename">sd-bus</code> error. The
     functions described below can be used to set and query fields in
     this structure. The <em class="structfield"><code>name</code></em> field contains a
     held by <em class="parameter"><code>e</code></em>. The parameter itself will not
     be deallocated, and must be
     <a href="free.html"><span class="citerefentry"><span class="refentrytitle">free</span>(3)</span></a>d
-    by the caller if necessary.</p></div><div class="refsect1"><a name="idm214186959952"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>Functions <code class="function">sd_bus_error_set</code>,
+    by the caller if necessary.</p></div><div class="refsect1"><a name="idm214179308512"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>Functions <code class="function">sd_bus_error_set</code>,
     <code class="function">sd_bus_error_setf</code>,
     <code class="function">sd_bus_error_set_const</code>, when successful,
     return the negative errno value corresponding to the
     <code class="constant">true</code> when <em class="parameter"><code>e</code></em> is
     non-<code class="constant">NULL</code> and <em class="parameter"><code>e-&gt;name</code></em>
     is equal to <em class="parameter"><code>name</code></em>,
-    <code class="constant">false</code> otherwise.</p></div><div class="refsect1"><a name="idm214186943232"></a><h2 id="Reference ownership">Reference ownership<a class="headerlink" title="Permalink to this headline" href="#Reference%20ownership">¶</a></h2><p><span class="structname">sd_bus_error</span> is not reference
+    <code class="constant">false</code> otherwise.</p></div><div class="refsect1"><a name="idm214180287856"></a><h2 id="Reference ownership">Reference ownership<a class="headerlink" title="Permalink to this headline" href="#Reference%20ownership">¶</a></h2><p><span class="structname">sd_bus_error</span> is not reference
     counted. Users should destroy resources held by it by calling
-    <code class="function">sd_bus_error_free</code>.</p></div><div class="refsect1"><a name="idm214186941088"></a><h2 id="Errors">Errors<a class="headerlink" title="Permalink to this headline" href="#Errors">¶</a></h2><p>Returned errors may indicate the following problems:</p><div class="variablelist"><dl class="variablelist"><dt id="-EINVAL"><span class="term"><code class="varname">-EINVAL</code></span><a class="headerlink" title="Permalink to this term" href="#-EINVAL">¶</a></dt><dd><p>Error was already set in
+    <code class="function">sd_bus_error_free</code>.</p></div><div class="refsect1"><a name="idm214180285584"></a><h2 id="Errors">Errors<a class="headerlink" title="Permalink to this headline" href="#Errors">¶</a></h2><p>Returned errors may indicate the following problems:</p><div class="variablelist"><dl class="variablelist"><dt id="-EINVAL"><span class="term"><code class="varname">-EINVAL</code></span><a class="headerlink" title="Permalink to this term" href="#-EINVAL">¶</a></dt><dd><p>Error was already set in
         <span class="structname">sd_bus_error</span> structure when one the
-        error-setting functions was called.</p></dd><dt id="-ENOMEM"><span class="term"><code class="varname">-ENOMEM</code></span><a class="headerlink" title="Permalink to this term" href="#-ENOMEM">¶</a></dt><dd><p>Memory allocation failed.</p></dd></dl></div></div><div class="refsect1"><a name="idm214186936352"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p><code class="function">sd_bus_set_error()</code> and other functions
+        error-setting functions was called.</p></dd><dt id="-ENOMEM"><span class="term"><code class="varname">-ENOMEM</code></span><a class="headerlink" title="Permalink to this term" href="#-ENOMEM">¶</a></dt><dd><p>Memory allocation failed.</p></dd></dl></div></div><div class="refsect1"><a name="idm214180280672"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p><code class="function">sd_bus_set_error()</code> and other functions
     described here are available as a shared library, which can be
     compiled and linked to with the
     <code class="constant">libsystemd</code> <a href="pkg-config.html"><span class="citerefentry"><span class="refentrytitle">pkg-config</span>(1)</span></a>
-    file.</p></div><div class="refsect1"><a name="idm214186933408"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+    file.</p></div><div class="refsect1"><a name="idm214180277504"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
       <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
       <a href="sd-bus.html"><span class="citerefentry"><span class="refentrytitle">sd-bus</span>(3)</span></a>,
       <a href="errno.html"><span class="citerefentry"><span class="refentrytitle">errno</span>(3)</span></a>,
index 00b772fc18895b1a808c49e4a8d9dc56ed717d82..26749f1ef2fdaf44c781b93548c6d02fab62820c 100644 (file)
@@ -19,7 +19,7 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="sd_bus_error"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_bus_error, sd_bus_error_free, sd_bus_error_set, sd_bus_error_set_const, sd_bus_error_set_errno, sd_bus_error_set_errnof, sd_bus_error_get_errno, sd_bus_error_copy, sd_bus_error_is_set, sd_bus_error_has_name — sd-bus error handling</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-bus.h&gt;</pre><pre class="funcsynopsisinfo">typedef struct {
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="sd_bus_error"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_bus_error, sd_bus_error_free, sd_bus_error_set, sd_bus_error_set_const, sd_bus_error_set_errno, sd_bus_error_set_errnof, sd_bus_error_get_errno, sd_bus_error_copy, sd_bus_error_is_set, sd_bus_error_has_name — sd-bus error handling</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-bus.h&gt;</pre><pre class="funcsynopsisinfo">typedef struct {
         const char *name;
         const char *message;
         ...
@@ -85,7 +85,7 @@
       <code class="constant">SD_BUS_ERROR_MATCH_RULE_NOT_FOUND</code>
     </p><p>
       <code class="constant">SD_BUS_ERROR_MATCH_RULE_INVALID</code>
-    </p></div><div class="refsect1"><a name="idm214187001632"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p>The <span class="structname">sd_bus_error</span> structure carries
+    </p></div><div class="refsect1"><a name="idm214180451616"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p>The <span class="structname">sd_bus_error</span> structure carries
     information for a <code class="filename">sd-bus</code> error. The
     functions described below can be used to set and query fields in
     this structure. The <em class="structfield"><code>name</code></em> field contains a
     held by <em class="parameter"><code>e</code></em>. The parameter itself will not
     be deallocated, and must be
     <a href="free.html"><span class="citerefentry"><span class="refentrytitle">free</span>(3)</span></a>d
-    by the caller if necessary.</p></div><div class="refsect1"><a name="idm214186959952"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>Functions <code class="function">sd_bus_error_set</code>,
+    by the caller if necessary.</p></div><div class="refsect1"><a name="idm214179308512"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>Functions <code class="function">sd_bus_error_set</code>,
     <code class="function">sd_bus_error_setf</code>,
     <code class="function">sd_bus_error_set_const</code>, when successful,
     return the negative errno value corresponding to the
     <code class="constant">true</code> when <em class="parameter"><code>e</code></em> is
     non-<code class="constant">NULL</code> and <em class="parameter"><code>e-&gt;name</code></em>
     is equal to <em class="parameter"><code>name</code></em>,
-    <code class="constant">false</code> otherwise.</p></div><div class="refsect1"><a name="idm214186943232"></a><h2 id="Reference ownership">Reference ownership<a class="headerlink" title="Permalink to this headline" href="#Reference%20ownership">¶</a></h2><p><span class="structname">sd_bus_error</span> is not reference
+    <code class="constant">false</code> otherwise.</p></div><div class="refsect1"><a name="idm214180287856"></a><h2 id="Reference ownership">Reference ownership<a class="headerlink" title="Permalink to this headline" href="#Reference%20ownership">¶</a></h2><p><span class="structname">sd_bus_error</span> is not reference
     counted. Users should destroy resources held by it by calling
-    <code class="function">sd_bus_error_free</code>.</p></div><div class="refsect1"><a name="idm214186941088"></a><h2 id="Errors">Errors<a class="headerlink" title="Permalink to this headline" href="#Errors">¶</a></h2><p>Returned errors may indicate the following problems:</p><div class="variablelist"><dl class="variablelist"><dt id="-EINVAL"><span class="term"><code class="varname">-EINVAL</code></span><a class="headerlink" title="Permalink to this term" href="#-EINVAL">¶</a></dt><dd><p>Error was already set in
+    <code class="function">sd_bus_error_free</code>.</p></div><div class="refsect1"><a name="idm214180285584"></a><h2 id="Errors">Errors<a class="headerlink" title="Permalink to this headline" href="#Errors">¶</a></h2><p>Returned errors may indicate the following problems:</p><div class="variablelist"><dl class="variablelist"><dt id="-EINVAL"><span class="term"><code class="varname">-EINVAL</code></span><a class="headerlink" title="Permalink to this term" href="#-EINVAL">¶</a></dt><dd><p>Error was already set in
         <span class="structname">sd_bus_error</span> structure when one the
-        error-setting functions was called.</p></dd><dt id="-ENOMEM"><span class="term"><code class="varname">-ENOMEM</code></span><a class="headerlink" title="Permalink to this term" href="#-ENOMEM">¶</a></dt><dd><p>Memory allocation failed.</p></dd></dl></div></div><div class="refsect1"><a name="idm214186936352"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p><code class="function">sd_bus_set_error()</code> and other functions
+        error-setting functions was called.</p></dd><dt id="-ENOMEM"><span class="term"><code class="varname">-ENOMEM</code></span><a class="headerlink" title="Permalink to this term" href="#-ENOMEM">¶</a></dt><dd><p>Memory allocation failed.</p></dd></dl></div></div><div class="refsect1"><a name="idm214180280672"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p><code class="function">sd_bus_set_error()</code> and other functions
     described here are available as a shared library, which can be
     compiled and linked to with the
     <code class="constant">libsystemd</code> <a href="pkg-config.html"><span class="citerefentry"><span class="refentrytitle">pkg-config</span>(1)</span></a>
-    file.</p></div><div class="refsect1"><a name="idm214186933408"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+    file.</p></div><div class="refsect1"><a name="idm214180277504"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
       <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
       <a href="sd-bus.html"><span class="citerefentry"><span class="refentrytitle">sd-bus</span>(3)</span></a>,
       <a href="errno.html"><span class="citerefentry"><span class="refentrytitle">errno</span>(3)</span></a>,
index 00b772fc18895b1a808c49e4a8d9dc56ed717d82..26749f1ef2fdaf44c781b93548c6d02fab62820c 100644 (file)
@@ -19,7 +19,7 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="sd_bus_error"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_bus_error, sd_bus_error_free, sd_bus_error_set, sd_bus_error_set_const, sd_bus_error_set_errno, sd_bus_error_set_errnof, sd_bus_error_get_errno, sd_bus_error_copy, sd_bus_error_is_set, sd_bus_error_has_name — sd-bus error handling</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-bus.h&gt;</pre><pre class="funcsynopsisinfo">typedef struct {
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="sd_bus_error"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_bus_error, sd_bus_error_free, sd_bus_error_set, sd_bus_error_set_const, sd_bus_error_set_errno, sd_bus_error_set_errnof, sd_bus_error_get_errno, sd_bus_error_copy, sd_bus_error_is_set, sd_bus_error_has_name — sd-bus error handling</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-bus.h&gt;</pre><pre class="funcsynopsisinfo">typedef struct {
         const char *name;
         const char *message;
         ...
@@ -85,7 +85,7 @@
       <code class="constant">SD_BUS_ERROR_MATCH_RULE_NOT_FOUND</code>
     </p><p>
       <code class="constant">SD_BUS_ERROR_MATCH_RULE_INVALID</code>
-    </p></div><div class="refsect1"><a name="idm214187001632"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p>The <span class="structname">sd_bus_error</span> structure carries
+    </p></div><div class="refsect1"><a name="idm214180451616"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p>The <span class="structname">sd_bus_error</span> structure carries
     information for a <code class="filename">sd-bus</code> error. The
     functions described below can be used to set and query fields in
     this structure. The <em class="structfield"><code>name</code></em> field contains a
     held by <em class="parameter"><code>e</code></em>. The parameter itself will not
     be deallocated, and must be
     <a href="free.html"><span class="citerefentry"><span class="refentrytitle">free</span>(3)</span></a>d
-    by the caller if necessary.</p></div><div class="refsect1"><a name="idm214186959952"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>Functions <code class="function">sd_bus_error_set</code>,
+    by the caller if necessary.</p></div><div class="refsect1"><a name="idm214179308512"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>Functions <code class="function">sd_bus_error_set</code>,
     <code class="function">sd_bus_error_setf</code>,
     <code class="function">sd_bus_error_set_const</code>, when successful,
     return the negative errno value corresponding to the
     <code class="constant">true</code> when <em class="parameter"><code>e</code></em> is
     non-<code class="constant">NULL</code> and <em class="parameter"><code>e-&gt;name</code></em>
     is equal to <em class="parameter"><code>name</code></em>,
-    <code class="constant">false</code> otherwise.</p></div><div class="refsect1"><a name="idm214186943232"></a><h2 id="Reference ownership">Reference ownership<a class="headerlink" title="Permalink to this headline" href="#Reference%20ownership">¶</a></h2><p><span class="structname">sd_bus_error</span> is not reference
+    <code class="constant">false</code> otherwise.</p></div><div class="refsect1"><a name="idm214180287856"></a><h2 id="Reference ownership">Reference ownership<a class="headerlink" title="Permalink to this headline" href="#Reference%20ownership">¶</a></h2><p><span class="structname">sd_bus_error</span> is not reference
     counted. Users should destroy resources held by it by calling
-    <code class="function">sd_bus_error_free</code>.</p></div><div class="refsect1"><a name="idm214186941088"></a><h2 id="Errors">Errors<a class="headerlink" title="Permalink to this headline" href="#Errors">¶</a></h2><p>Returned errors may indicate the following problems:</p><div class="variablelist"><dl class="variablelist"><dt id="-EINVAL"><span class="term"><code class="varname">-EINVAL</code></span><a class="headerlink" title="Permalink to this term" href="#-EINVAL">¶</a></dt><dd><p>Error was already set in
+    <code class="function">sd_bus_error_free</code>.</p></div><div class="refsect1"><a name="idm214180285584"></a><h2 id="Errors">Errors<a class="headerlink" title="Permalink to this headline" href="#Errors">¶</a></h2><p>Returned errors may indicate the following problems:</p><div class="variablelist"><dl class="variablelist"><dt id="-EINVAL"><span class="term"><code class="varname">-EINVAL</code></span><a class="headerlink" title="Permalink to this term" href="#-EINVAL">¶</a></dt><dd><p>Error was already set in
         <span class="structname">sd_bus_error</span> structure when one the
-        error-setting functions was called.</p></dd><dt id="-ENOMEM"><span class="term"><code class="varname">-ENOMEM</code></span><a class="headerlink" title="Permalink to this term" href="#-ENOMEM">¶</a></dt><dd><p>Memory allocation failed.</p></dd></dl></div></div><div class="refsect1"><a name="idm214186936352"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p><code class="function">sd_bus_set_error()</code> and other functions
+        error-setting functions was called.</p></dd><dt id="-ENOMEM"><span class="term"><code class="varname">-ENOMEM</code></span><a class="headerlink" title="Permalink to this term" href="#-ENOMEM">¶</a></dt><dd><p>Memory allocation failed.</p></dd></dl></div></div><div class="refsect1"><a name="idm214180280672"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p><code class="function">sd_bus_set_error()</code> and other functions
     described here are available as a shared library, which can be
     compiled and linked to with the
     <code class="constant">libsystemd</code> <a href="pkg-config.html"><span class="citerefentry"><span class="refentrytitle">pkg-config</span>(1)</span></a>
-    file.</p></div><div class="refsect1"><a name="idm214186933408"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+    file.</p></div><div class="refsect1"><a name="idm214180277504"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
       <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
       <a href="sd-bus.html"><span class="citerefentry"><span class="refentrytitle">sd-bus</span>(3)</span></a>,
       <a href="errno.html"><span class="citerefentry"><span class="refentrytitle">errno</span>(3)</span></a>,
index 00b772fc18895b1a808c49e4a8d9dc56ed717d82..26749f1ef2fdaf44c781b93548c6d02fab62820c 100644 (file)
@@ -19,7 +19,7 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="sd_bus_error"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_bus_error, sd_bus_error_free, sd_bus_error_set, sd_bus_error_set_const, sd_bus_error_set_errno, sd_bus_error_set_errnof, sd_bus_error_get_errno, sd_bus_error_copy, sd_bus_error_is_set, sd_bus_error_has_name — sd-bus error handling</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-bus.h&gt;</pre><pre class="funcsynopsisinfo">typedef struct {
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="sd_bus_error"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_bus_error, sd_bus_error_free, sd_bus_error_set, sd_bus_error_set_const, sd_bus_error_set_errno, sd_bus_error_set_errnof, sd_bus_error_get_errno, sd_bus_error_copy, sd_bus_error_is_set, sd_bus_error_has_name — sd-bus error handling</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-bus.h&gt;</pre><pre class="funcsynopsisinfo">typedef struct {
         const char *name;
         const char *message;
         ...
@@ -85,7 +85,7 @@
       <code class="constant">SD_BUS_ERROR_MATCH_RULE_NOT_FOUND</code>
     </p><p>
       <code class="constant">SD_BUS_ERROR_MATCH_RULE_INVALID</code>
-    </p></div><div class="refsect1"><a name="idm214187001632"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p>The <span class="structname">sd_bus_error</span> structure carries
+    </p></div><div class="refsect1"><a name="idm214180451616"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p>The <span class="structname">sd_bus_error</span> structure carries
     information for a <code class="filename">sd-bus</code> error. The
     functions described below can be used to set and query fields in
     this structure. The <em class="structfield"><code>name</code></em> field contains a
     held by <em class="parameter"><code>e</code></em>. The parameter itself will not
     be deallocated, and must be
     <a href="free.html"><span class="citerefentry"><span class="refentrytitle">free</span>(3)</span></a>d
-    by the caller if necessary.</p></div><div class="refsect1"><a name="idm214186959952"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>Functions <code class="function">sd_bus_error_set</code>,
+    by the caller if necessary.</p></div><div class="refsect1"><a name="idm214179308512"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>Functions <code class="function">sd_bus_error_set</code>,
     <code class="function">sd_bus_error_setf</code>,
     <code class="function">sd_bus_error_set_const</code>, when successful,
     return the negative errno value corresponding to the
     <code class="constant">true</code> when <em class="parameter"><code>e</code></em> is
     non-<code class="constant">NULL</code> and <em class="parameter"><code>e-&gt;name</code></em>
     is equal to <em class="parameter"><code>name</code></em>,
-    <code class="constant">false</code> otherwise.</p></div><div class="refsect1"><a name="idm214186943232"></a><h2 id="Reference ownership">Reference ownership<a class="headerlink" title="Permalink to this headline" href="#Reference%20ownership">¶</a></h2><p><span class="structname">sd_bus_error</span> is not reference
+    <code class="constant">false</code> otherwise.</p></div><div class="refsect1"><a name="idm214180287856"></a><h2 id="Reference ownership">Reference ownership<a class="headerlink" title="Permalink to this headline" href="#Reference%20ownership">¶</a></h2><p><span class="structname">sd_bus_error</span> is not reference
     counted. Users should destroy resources held by it by calling
-    <code class="function">sd_bus_error_free</code>.</p></div><div class="refsect1"><a name="idm214186941088"></a><h2 id="Errors">Errors<a class="headerlink" title="Permalink to this headline" href="#Errors">¶</a></h2><p>Returned errors may indicate the following problems:</p><div class="variablelist"><dl class="variablelist"><dt id="-EINVAL"><span class="term"><code class="varname">-EINVAL</code></span><a class="headerlink" title="Permalink to this term" href="#-EINVAL">¶</a></dt><dd><p>Error was already set in
+    <code class="function">sd_bus_error_free</code>.</p></div><div class="refsect1"><a name="idm214180285584"></a><h2 id="Errors">Errors<a class="headerlink" title="Permalink to this headline" href="#Errors">¶</a></h2><p>Returned errors may indicate the following problems:</p><div class="variablelist"><dl class="variablelist"><dt id="-EINVAL"><span class="term"><code class="varname">-EINVAL</code></span><a class="headerlink" title="Permalink to this term" href="#-EINVAL">¶</a></dt><dd><p>Error was already set in
         <span class="structname">sd_bus_error</span> structure when one the
-        error-setting functions was called.</p></dd><dt id="-ENOMEM"><span class="term"><code class="varname">-ENOMEM</code></span><a class="headerlink" title="Permalink to this term" href="#-ENOMEM">¶</a></dt><dd><p>Memory allocation failed.</p></dd></dl></div></div><div class="refsect1"><a name="idm214186936352"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p><code class="function">sd_bus_set_error()</code> and other functions
+        error-setting functions was called.</p></dd><dt id="-ENOMEM"><span class="term"><code class="varname">-ENOMEM</code></span><a class="headerlink" title="Permalink to this term" href="#-ENOMEM">¶</a></dt><dd><p>Memory allocation failed.</p></dd></dl></div></div><div class="refsect1"><a name="idm214180280672"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p><code class="function">sd_bus_set_error()</code> and other functions
     described here are available as a shared library, which can be
     compiled and linked to with the
     <code class="constant">libsystemd</code> <a href="pkg-config.html"><span class="citerefentry"><span class="refentrytitle">pkg-config</span>(1)</span></a>
-    file.</p></div><div class="refsect1"><a name="idm214186933408"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+    file.</p></div><div class="refsect1"><a name="idm214180277504"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
       <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
       <a href="sd-bus.html"><span class="citerefentry"><span class="refentrytitle">sd-bus</span>(3)</span></a>,
       <a href="errno.html"><span class="citerefentry"><span class="refentrytitle">errno</span>(3)</span></a>,
index 00b772fc18895b1a808c49e4a8d9dc56ed717d82..26749f1ef2fdaf44c781b93548c6d02fab62820c 100644 (file)
@@ -19,7 +19,7 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="sd_bus_error"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_bus_error, sd_bus_error_free, sd_bus_error_set, sd_bus_error_set_const, sd_bus_error_set_errno, sd_bus_error_set_errnof, sd_bus_error_get_errno, sd_bus_error_copy, sd_bus_error_is_set, sd_bus_error_has_name — sd-bus error handling</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-bus.h&gt;</pre><pre class="funcsynopsisinfo">typedef struct {
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="sd_bus_error"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_bus_error, sd_bus_error_free, sd_bus_error_set, sd_bus_error_set_const, sd_bus_error_set_errno, sd_bus_error_set_errnof, sd_bus_error_get_errno, sd_bus_error_copy, sd_bus_error_is_set, sd_bus_error_has_name — sd-bus error handling</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-bus.h&gt;</pre><pre class="funcsynopsisinfo">typedef struct {
         const char *name;
         const char *message;
         ...
@@ -85,7 +85,7 @@
       <code class="constant">SD_BUS_ERROR_MATCH_RULE_NOT_FOUND</code>
     </p><p>
       <code class="constant">SD_BUS_ERROR_MATCH_RULE_INVALID</code>
-    </p></div><div class="refsect1"><a name="idm214187001632"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p>The <span class="structname">sd_bus_error</span> structure carries
+    </p></div><div class="refsect1"><a name="idm214180451616"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p>The <span class="structname">sd_bus_error</span> structure carries
     information for a <code class="filename">sd-bus</code> error. The
     functions described below can be used to set and query fields in
     this structure. The <em class="structfield"><code>name</code></em> field contains a
     held by <em class="parameter"><code>e</code></em>. The parameter itself will not
     be deallocated, and must be
     <a href="free.html"><span class="citerefentry"><span class="refentrytitle">free</span>(3)</span></a>d
-    by the caller if necessary.</p></div><div class="refsect1"><a name="idm214186959952"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>Functions <code class="function">sd_bus_error_set</code>,
+    by the caller if necessary.</p></div><div class="refsect1"><a name="idm214179308512"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>Functions <code class="function">sd_bus_error_set</code>,
     <code class="function">sd_bus_error_setf</code>,
     <code class="function">sd_bus_error_set_const</code>, when successful,
     return the negative errno value corresponding to the
     <code class="constant">true</code> when <em class="parameter"><code>e</code></em> is
     non-<code class="constant">NULL</code> and <em class="parameter"><code>e-&gt;name</code></em>
     is equal to <em class="parameter"><code>name</code></em>,
-    <code class="constant">false</code> otherwise.</p></div><div class="refsect1"><a name="idm214186943232"></a><h2 id="Reference ownership">Reference ownership<a class="headerlink" title="Permalink to this headline" href="#Reference%20ownership">¶</a></h2><p><span class="structname">sd_bus_error</span> is not reference
+    <code class="constant">false</code> otherwise.</p></div><div class="refsect1"><a name="idm214180287856"></a><h2 id="Reference ownership">Reference ownership<a class="headerlink" title="Permalink to this headline" href="#Reference%20ownership">¶</a></h2><p><span class="structname">sd_bus_error</span> is not reference
     counted. Users should destroy resources held by it by calling
-    <code class="function">sd_bus_error_free</code>.</p></div><div class="refsect1"><a name="idm214186941088"></a><h2 id="Errors">Errors<a class="headerlink" title="Permalink to this headline" href="#Errors">¶</a></h2><p>Returned errors may indicate the following problems:</p><div class="variablelist"><dl class="variablelist"><dt id="-EINVAL"><span class="term"><code class="varname">-EINVAL</code></span><a class="headerlink" title="Permalink to this term" href="#-EINVAL">¶</a></dt><dd><p>Error was already set in
+    <code class="function">sd_bus_error_free</code>.</p></div><div class="refsect1"><a name="idm214180285584"></a><h2 id="Errors">Errors<a class="headerlink" title="Permalink to this headline" href="#Errors">¶</a></h2><p>Returned errors may indicate the following problems:</p><div class="variablelist"><dl class="variablelist"><dt id="-EINVAL"><span class="term"><code class="varname">-EINVAL</code></span><a class="headerlink" title="Permalink to this term" href="#-EINVAL">¶</a></dt><dd><p>Error was already set in
         <span class="structname">sd_bus_error</span> structure when one the
-        error-setting functions was called.</p></dd><dt id="-ENOMEM"><span class="term"><code class="varname">-ENOMEM</code></span><a class="headerlink" title="Permalink to this term" href="#-ENOMEM">¶</a></dt><dd><p>Memory allocation failed.</p></dd></dl></div></div><div class="refsect1"><a name="idm214186936352"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p><code class="function">sd_bus_set_error()</code> and other functions
+        error-setting functions was called.</p></dd><dt id="-ENOMEM"><span class="term"><code class="varname">-ENOMEM</code></span><a class="headerlink" title="Permalink to this term" href="#-ENOMEM">¶</a></dt><dd><p>Memory allocation failed.</p></dd></dl></div></div><div class="refsect1"><a name="idm214180280672"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p><code class="function">sd_bus_set_error()</code> and other functions
     described here are available as a shared library, which can be
     compiled and linked to with the
     <code class="constant">libsystemd</code> <a href="pkg-config.html"><span class="citerefentry"><span class="refentrytitle">pkg-config</span>(1)</span></a>
-    file.</p></div><div class="refsect1"><a name="idm214186933408"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+    file.</p></div><div class="refsect1"><a name="idm214180277504"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
       <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
       <a href="sd-bus.html"><span class="citerefentry"><span class="refentrytitle">sd-bus</span>(3)</span></a>,
       <a href="errno.html"><span class="citerefentry"><span class="refentrytitle">errno</span>(3)</span></a>,
index ded94aa865a096048ca52c30724d554fdd2ac7b8..6c03acaffdf762e91d5bf1896109757e00a7fd91 100644 (file)
@@ -1,5 +1,5 @@
 '\" t
-.TH "SD_BUS_MESSAGE_APPEND" "3" "" "systemd 214" "sd_bus_message_append"
+.TH "SD_BUS_MESSAGE_APPEND" "3" "" "systemd 215" "sd_bus_message_append"
 .\" -----------------------------------------------------------------
 .\" * Define some portability stuff
 .\" -----------------------------------------------------------------
index e86f096bf19c376a35b6d1b55ac67ea01220a3d9..9fa03ff9e825e9b3aad72986137d1b84a54bfb74 100644 (file)
@@ -19,7 +19,7 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="sd_bus_message_append"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_bus_message_append — Attach parts of message based on a format string</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-bus.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int sd_bus_message_append(</code></td><td>sd_bus_message *<var class="pdparam">m</var>, </td></tr><tr><td> </td><td>const char *<var class="pdparam">types</var>, </td></tr><tr><td> </td><td>...<code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214187191184"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p>The <code class="function">sd_bus_message_append</code> function appends
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="sd_bus_message_append"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_bus_message_append — Attach parts of message based on a format string</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-bus.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int sd_bus_message_append(</code></td><td>sd_bus_message *<var class="pdparam">m</var>, </td></tr><tr><td> </td><td>const char *<var class="pdparam">types</var>, </td></tr><tr><td> </td><td>...<code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214183901008"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p>The <code class="function">sd_bus_message_append</code> function appends
     a sequence of items to message <em class="parameter"><code>m</code></em>. The
     format string <em class="parameter"><code>types</code></em> describes the types of
     arguments that follow.</p><p>The format string is composed of the elements shown in the
@@ -45,7 +45,7 @@
     types must be a basic type. Corresponding arguments must include
     the size of the dictionary, and then repeated this number of
     times, arguments corresponding to each of the two nested
-    types.</p><div class="table"><a name="idm214183399200"></a><p class="title"><b>Table 1. Item format specifiers</b></p><div class="table-contents"><table summary="Item format specifiers" border="1"><colgroup><col><col><col><col></colgroup><thead><tr><th>Specifier</th><th>Constant</th><th>Description</th><th>Size</th></tr></thead><tbody><tr><td>"<code class="literal">y</code>"</td><td><code class="constant">SD_BUS_TYPE_BYTE</code></td><td>unsigned interger</td><td>1 byte</td></tr><tr><td>"<code class="literal">b</code>"</td><td><code class="constant">SD_BUS_TYPE_BOOLEAN</code></td><td>boolean</td><td>4 bytes</td></tr><tr><td>"<code class="literal">n</code>"</td><td><code class="constant">SD_BUS_TYPE_INT16</code></td><td>signed integer</td><td>2 bytes</td></tr><tr><td>"<code class="literal">q</code>"</td><td><code class="constant">SD_BUS_TYPE_UINT16</code></td><td>unsigned integer</td><td>2 bytes</td></tr><tr><td>"<code class="literal">i</code>"</td><td><code class="constant">SD_BUS_TYPE_INT32</code></td><td>signed integer</td><td>4 bytes</td></tr><tr><td>"<code class="literal">u</code>"</td><td><code class="constant">SD_BUS_TYPE_UINT32</code></td><td>unsigned integer</td><td>4 bytes</td></tr><tr><td>"<code class="literal">x</code>"</td><td><code class="constant">SD_BUS_TYPE_INT64</code></td><td>signed integer</td><td>8 bytes</td></tr><tr><td>"<code class="literal">t</code>"</td><td><code class="constant">SD_BUS_TYPE_UINT64</code></td><td>unsigned integer</td><td>8 bytes</td></tr><tr><td>"<code class="literal">d</code>"</td><td><code class="constant">SD_BUS_TYPE_DOUBLE</code></td><td>floating-point</td><td>8 bytes</td></tr><tr><td>"<code class="literal">s</code>"</td><td><code class="constant">SD_BUS_TYPE_STRING</code></td><td>Unicode string</td><td>variable</td></tr><tr><td>"<code class="literal">o</code>"</td><td><code class="constant">SD_BUS_TYPE_OBJECT_PATH</code></td><td>object path</td><td>variable</td></tr><tr><td>"<code class="literal">g</code>"</td><td><code class="constant">SD_BUS_TYPE_SIGNATURE</code></td><td>signature</td><td>variable</td></tr><tr><td>"<code class="literal">h</code>"</td><td><code class="constant">SD_BUS_TYPE_UNIX_FD</code></td><td>UNIX file descriptor</td><td>4 bytes</td></tr><tr><td>"<code class="literal">a</code>"</td><td><code class="constant">SD_BUS_TYPE_ARRAY</code></td><td>array</td><td>determined by array type and size</td></tr><tr><td>"<code class="literal">v</code>"</td><td><code class="constant">SD_BUS_TYPE_VARIANT</code></td><td>variant</td><td>determined by the type argument</td></tr><tr><td>"<code class="literal">(</code>"</td><td><code class="constant">SD_BUS_TYPE_STRUCT_BEGIN</code></td><td>array start</td><td rowspan="2">determined by the nested types</td></tr><tr><td>"<code class="literal">)</code>"</td><td><code class="constant">SD_BUS_TYPE_STRUCT_END</code></td><td>array end</td></tr><tr><td>"<code class="literal">{</code>"</td><td><code class="constant">SD_BUS_TYPE_DICT_ENTRY_BEGIN</code></td><td>dictionary entry start</td><td rowspan="2">determined by the nested types</td></tr><tr><td>"<code class="literal">}</code>"</td><td><code class="constant">SD_BUS_TYPE_DICT_ENTRY_END</code></td><td>dictionary entry end</td></tr></tbody></table></div></div><br class="table-break"></div><div class="refsect1"><a name="idm214187278096"></a><h2 id="Types string grammar">Types string grammar<a class="headerlink" title="Permalink to this headline" href="#Types%20string%20grammar">¶</a></h2><pre class="programlisting">types ::= complete_type*
+    types.</p><div class="table"><a name="idm214184578560"></a><p class="title"><b>Table 1. Item format specifiers</b></p><div class="table-contents"><table summary="Item format specifiers" border="1"><colgroup><col><col><col><col></colgroup><thead><tr><th>Specifier</th><th>Constant</th><th>Description</th><th>Size</th></tr></thead><tbody><tr><td>"<code class="literal">y</code>"</td><td><code class="constant">SD_BUS_TYPE_BYTE</code></td><td>unsigned interger</td><td>1 byte</td></tr><tr><td>"<code class="literal">b</code>"</td><td><code class="constant">SD_BUS_TYPE_BOOLEAN</code></td><td>boolean</td><td>4 bytes</td></tr><tr><td>"<code class="literal">n</code>"</td><td><code class="constant">SD_BUS_TYPE_INT16</code></td><td>signed integer</td><td>2 bytes</td></tr><tr><td>"<code class="literal">q</code>"</td><td><code class="constant">SD_BUS_TYPE_UINT16</code></td><td>unsigned integer</td><td>2 bytes</td></tr><tr><td>"<code class="literal">i</code>"</td><td><code class="constant">SD_BUS_TYPE_INT32</code></td><td>signed integer</td><td>4 bytes</td></tr><tr><td>"<code class="literal">u</code>"</td><td><code class="constant">SD_BUS_TYPE_UINT32</code></td><td>unsigned integer</td><td>4 bytes</td></tr><tr><td>"<code class="literal">x</code>"</td><td><code class="constant">SD_BUS_TYPE_INT64</code></td><td>signed integer</td><td>8 bytes</td></tr><tr><td>"<code class="literal">t</code>"</td><td><code class="constant">SD_BUS_TYPE_UINT64</code></td><td>unsigned integer</td><td>8 bytes</td></tr><tr><td>"<code class="literal">d</code>"</td><td><code class="constant">SD_BUS_TYPE_DOUBLE</code></td><td>floating-point</td><td>8 bytes</td></tr><tr><td>"<code class="literal">s</code>"</td><td><code class="constant">SD_BUS_TYPE_STRING</code></td><td>Unicode string</td><td>variable</td></tr><tr><td>"<code class="literal">o</code>"</td><td><code class="constant">SD_BUS_TYPE_OBJECT_PATH</code></td><td>object path</td><td>variable</td></tr><tr><td>"<code class="literal">g</code>"</td><td><code class="constant">SD_BUS_TYPE_SIGNATURE</code></td><td>signature</td><td>variable</td></tr><tr><td>"<code class="literal">h</code>"</td><td><code class="constant">SD_BUS_TYPE_UNIX_FD</code></td><td>UNIX file descriptor</td><td>4 bytes</td></tr><tr><td>"<code class="literal">a</code>"</td><td><code class="constant">SD_BUS_TYPE_ARRAY</code></td><td>array</td><td>determined by array type and size</td></tr><tr><td>"<code class="literal">v</code>"</td><td><code class="constant">SD_BUS_TYPE_VARIANT</code></td><td>variant</td><td>determined by the type argument</td></tr><tr><td>"<code class="literal">(</code>"</td><td><code class="constant">SD_BUS_TYPE_STRUCT_BEGIN</code></td><td>array start</td><td rowspan="2">determined by the nested types</td></tr><tr><td>"<code class="literal">)</code>"</td><td><code class="constant">SD_BUS_TYPE_STRUCT_END</code></td><td>array end</td></tr><tr><td>"<code class="literal">{</code>"</td><td><code class="constant">SD_BUS_TYPE_DICT_ENTRY_BEGIN</code></td><td>dictionary entry start</td><td rowspan="2">determined by the nested types</td></tr><tr><td>"<code class="literal">}</code>"</td><td><code class="constant">SD_BUS_TYPE_DICT_ENTRY_END</code></td><td>dictionary entry end</td></tr></tbody></table></div></div><br class="table-break"></div><div class="refsect1"><a name="idm214183669216"></a><h2 id="Types string grammar">Types string grammar<a class="headerlink" title="Permalink to this headline" href="#Types%20string%20grammar">¶</a></h2><pre class="programlisting">types ::= complete_type*
 complete_type ::= basic_type | variant | structure | array | dictionary
 basic_type ::= "y" | "n" | "q" | "u" | "i" | "x" | "t" | "d" |
                "b" | "h" |
@@ -54,7 +54,7 @@ variant ::= "v"
 structure ::= "(" complete_type+ ")"
 array ::= "a" complete_type
 dictionary ::= "a" "{" basic_type complete_type "}"
-</pre></div><div class="refsect1"><a name="idm214187276272"></a><h2 id="Examples">Examples<a class="headerlink" title="Permalink to this headline" href="#Examples">¶</a></h2><p>Append a single basic type (the string "<code class="literal">a string</code>"):
+</pre></div><div class="refsect1"><a name="idm214182869216"></a><h2 id="Examples">Examples<a class="headerlink" title="Permalink to this headline" href="#Examples">¶</a></h2><p>Append a single basic type (the string "<code class="literal">a string</code>"):
     </p><pre class="programlisting">sd_bus_message *m;
 ...
 sd_bus_message_append(m, "s", "a string");</pre><p>Append all types of integers:</p><pre class="programlisting">uint8_t y = 1;
@@ -70,17 +70,17 @@ sd_bus_message_append(m, "ynqiuxtd", y, n, q, i, u, x, t, d);</pre><p>Append a s
 </pre><p>Append a variant, with the real type "g" (signature),
      and value "sdbusisgood":</p><pre class="programlisting">sd_bus_message_append(m, "v", "g", "sdbusisgood");</pre><p>Append a dictionary containing the mapping {1=&gt;"a", 2=&gt;"b", 3=&gt;""}:
      </p><pre class="programlisting">sd_bus_message_append(m, "a{is}", 3, 1, "a", 2, "b", 3, NULL);
-     </pre></div><div class="refsect1"><a name="idm214187260640"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>On success, this call returns 0 or a positive
+     </pre></div><div class="refsect1"><a name="idm214184952432"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>On success, this call returns 0 or a positive
     integer. On failure, this call returns a negative
     errno-style error code.</p></div><div class="refsect1"><a name="errors"></a><h2 id="Errors">Errors<a class="headerlink" title="Permalink to this headline" href="#Errors">¶</a></h2><p>Returned errors may indicate the following problems:</p><div class="variablelist"><dl class="variablelist"><dt id="-EINVAL"><span class="term"><code class="varname">-EINVAL</code></span><a class="headerlink" title="Permalink to this term" href="#-EINVAL">¶</a></dt><dd><p>Specified parameter is invalid.
         </p></dd><dt id="-EPERM"><span class="term"><code class="varname">-EPERM</code></span><a class="headerlink" title="Permalink to this term" href="#-EPERM">¶</a></dt><dd><p>Message has been sealed.
         </p></dd><dt id="-ESTALE"><span class="term"><code class="varname">-ESTALE</code></span><a class="headerlink" title="Permalink to this term" href="#-ESTALE">¶</a></dt><dd><p>Message is in invalid state.
         </p></dd><dt id="-ENXIO"><span class="term"><code class="varname">-ENXIO</code></span><a class="headerlink" title="Permalink to this term" href="#-ENXIO">¶</a></dt><dd><p>Message cannot be appended to.
-        </p></dd><dt id="-ENOMEM"><span class="term"><code class="varname">-ENOMEM</code></span><a class="headerlink" title="Permalink to this term" href="#-ENOMEM">¶</a></dt><dd><p>Memory allocation failed.</p></dd></dl></div></div><div class="refsect1"><a name="idm214187258496"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p><code class="function">sd_bus_open_user()</code> and other functions
+        </p></dd><dt id="-ENOMEM"><span class="term"><code class="varname">-ENOMEM</code></span><a class="headerlink" title="Permalink to this term" href="#-ENOMEM">¶</a></dt><dd><p>Memory allocation failed.</p></dd></dl></div></div><div class="refsect1"><a name="idm214183757376"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p><code class="function">sd_bus_open_user()</code> and other functions
     described here are available as a shared library, which can be
     compiled and linked to with the
     <code class="constant">libsystemd-bus</code> <a href="pkg-config.html"><span class="citerefentry"><span class="refentrytitle">pkg-config</span>(1)</span></a>
-    file.</p></div><div class="refsect1"><a name="idm214187255328"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+    file.</p></div><div class="refsect1"><a name="idm214183687248"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
       <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
       <a href="sd-bus.html"><span class="citerefentry"><span class="refentrytitle">sd-bus</span>(3)</span></a>,
       <a href="sd_bus_new.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_new</span>(3)</span></a>,
index b3a370bff282cbb3ddc653fcbfc4e324cd82eb40..78c37146660dc2d21bbd3beb928bb0e457783f37 100644 (file)
@@ -1,5 +1,5 @@
 '\" t
-.TH "SD_BUS_MESSAGE_APPEND_ARRAY" "3" "" "systemd 214" "sd_bus_message_append_array"
+.TH "SD_BUS_MESSAGE_APPEND_ARRAY" "3" "" "systemd 215" "sd_bus_message_append_array"
 .\" -----------------------------------------------------------------
 .\" * Define some portability stuff
 .\" -----------------------------------------------------------------
index 4da5ce9c52f59a9c6507c3c42a7e3ddaf702d829..0878e1e614e5e1ea1732471bd188d8caad7da366 100644 (file)
@@ -19,7 +19,7 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="sd_bus_message_append_array"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_bus_message_append_array, sd_bus_message_append_array_memfd, sd_bus_message_append_array_iovec, sd_bus_message_append_array_space — Attach an array of items to a message</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-bus.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int sd_bus_message_append_array(</code></td><td>sd_bus_message *<var class="pdparam">m</var>, </td></tr><tr><td> </td><td>char <var class="pdparam">type</var>, </td></tr><tr><td> </td><td>char void *<var class="pdparam">ptr</var>, </td></tr><tr><td> </td><td>size_t <var class="pdparam">size</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int sd_bus_message_append_array_memfd(</code></td><td>sd_bus_message *<var class="pdparam">m</var>, </td></tr><tr><td> </td><td>char <var class="pdparam">type</var>, </td></tr><tr><td> </td><td>sd_memfd *<var class="pdparam">memfd</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int sd_bus_message_append_array_iovec(</code></td><td>sd_bus_message *<var class="pdparam">m</var>, </td></tr><tr><td> </td><td>char <var class="pdparam">type</var>, </td></tr><tr><td> </td><td>const struct iovec *<var class="pdparam">iov</var>, </td></tr><tr><td> </td><td>unsigned <var class="pdparam">n</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int sd_bus_message_append_array_space(</code></td><td>char <var class="pdparam">type</var>, </td></tr><tr><td> </td><td>size_t <var class="pdparam">size</var>, </td></tr><tr><td> </td><td>char void **<var class="pdparam">ptr</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214173279312"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p>The <code class="function">sd_bus_message_append_array</code> functionc
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="sd_bus_message_append_array"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_bus_message_append_array, sd_bus_message_append_array_memfd, sd_bus_message_append_array_iovec, sd_bus_message_append_array_space — Attach an array of items to a message</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-bus.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int sd_bus_message_append_array(</code></td><td>sd_bus_message *<var class="pdparam">m</var>, </td></tr><tr><td> </td><td>char <var class="pdparam">type</var>, </td></tr><tr><td> </td><td>char void *<var class="pdparam">ptr</var>, </td></tr><tr><td> </td><td>size_t <var class="pdparam">size</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int sd_bus_message_append_array_memfd(</code></td><td>sd_bus_message *<var class="pdparam">m</var>, </td></tr><tr><td> </td><td>char <var class="pdparam">type</var>, </td></tr><tr><td> </td><td>sd_memfd *<var class="pdparam">memfd</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int sd_bus_message_append_array_iovec(</code></td><td>sd_bus_message *<var class="pdparam">m</var>, </td></tr><tr><td> </td><td>char <var class="pdparam">type</var>, </td></tr><tr><td> </td><td>const struct iovec *<var class="pdparam">iov</var>, </td></tr><tr><td> </td><td>unsigned <var class="pdparam">n</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int sd_bus_message_append_array_space(</code></td><td>char <var class="pdparam">type</var>, </td></tr><tr><td> </td><td>size_t <var class="pdparam">size</var>, </td></tr><tr><td> </td><td>char void **<var class="pdparam">ptr</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214170011040"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p>The <code class="function">sd_bus_message_append_array</code> functionc
     appends items to message <em class="parameter"><code>m</code></em> as the single
     array. A container will be opened, items appended, and the
     container closed. Parameter <em class="parameter"><code>type</code></em> determines
     <code class="function">sd_bus_message_append_array</code>, but instead
     of copying items to the message, it returns a pointer to the
     destination area to the caller in pointer <em class="parameter"><code>p</code></em>.
-    </p></div><div class="refsect1"><a name="idm214177134304"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>On success, these calls return 0 or a positive integer. On
+    </p></div><div class="refsect1"><a name="idm214169563840"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>On success, these calls return 0 or a positive integer. On
     failure, they returns a negative errno-style error code.</p></div><div class="refsect1"><a name="errors"></a><h2 id="Errors">Errors<a class="headerlink" title="Permalink to this headline" href="#Errors">¶</a></h2><p>Returned errors may indicate the following problems:</p><div class="variablelist"><dl class="variablelist"><dt id="-EINVAL"><span class="term"><code class="varname">-EINVAL</code></span><a class="headerlink" title="Permalink to this term" href="#-EINVAL">¶</a></dt><dd><p>Specified parameter is invalid.
         </p></dd><dt id="-EPERM"><span class="term"><code class="varname">-EPERM</code></span><a class="headerlink" title="Permalink to this term" href="#-EPERM">¶</a></dt><dd><p>Message has been sealed.
         </p></dd><dt id="-ESTALE"><span class="term"><code class="varname">-ESTALE</code></span><a class="headerlink" title="Permalink to this term" href="#-ESTALE">¶</a></dt><dd><p>Message is in invalid state.
         </p></dd><dt id="-ENXIO"><span class="term"><code class="varname">-ENXIO</code></span><a class="headerlink" title="Permalink to this term" href="#-ENXIO">¶</a></dt><dd><p>Message cannot be appended to.
-        </p></dd><dt id="-ENOMEM"><span class="term"><code class="varname">-ENOMEM</code></span><a class="headerlink" title="Permalink to this term" href="#-ENOMEM">¶</a></dt><dd><p>Memory allocation failed.</p></dd></dl></div></div><div class="refsect1"><a name="idm214177132128"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p><code class="function">sd_bus_append_array()</code> and other
+        </p></dd><dt id="-ENOMEM"><span class="term"><code class="varname">-ENOMEM</code></span><a class="headerlink" title="Permalink to this term" href="#-ENOMEM">¶</a></dt><dd><p>Memory allocation failed.</p></dd></dl></div></div><div class="refsect1"><a name="idm214171075696"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p><code class="function">sd_bus_append_array()</code> and other
     functions described here are available as a shared library, which
     can be compiled and linked to with the
     <code class="constant">libsystemd</code> <a href="pkg-config.html"><span class="citerefentry"><span class="refentrytitle">pkg-config</span>(1)</span></a>
-    file.</p></div><div class="refsect1"><a name="idm214177128960"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+    file.</p></div><div class="refsect1"><a name="idm214169857648"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
       <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
       <a href="sd-bus.html"><span class="citerefentry"><span class="refentrytitle">sd-bus</span>(3)</span></a>,
       <a href="sd_bus_message_append.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_message_append</span>(3)</span></a>,
index 4da5ce9c52f59a9c6507c3c42a7e3ddaf702d829..0878e1e614e5e1ea1732471bd188d8caad7da366 100644 (file)
@@ -19,7 +19,7 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="sd_bus_message_append_array"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_bus_message_append_array, sd_bus_message_append_array_memfd, sd_bus_message_append_array_iovec, sd_bus_message_append_array_space — Attach an array of items to a message</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-bus.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int sd_bus_message_append_array(</code></td><td>sd_bus_message *<var class="pdparam">m</var>, </td></tr><tr><td> </td><td>char <var class="pdparam">type</var>, </td></tr><tr><td> </td><td>char void *<var class="pdparam">ptr</var>, </td></tr><tr><td> </td><td>size_t <var class="pdparam">size</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int sd_bus_message_append_array_memfd(</code></td><td>sd_bus_message *<var class="pdparam">m</var>, </td></tr><tr><td> </td><td>char <var class="pdparam">type</var>, </td></tr><tr><td> </td><td>sd_memfd *<var class="pdparam">memfd</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int sd_bus_message_append_array_iovec(</code></td><td>sd_bus_message *<var class="pdparam">m</var>, </td></tr><tr><td> </td><td>char <var class="pdparam">type</var>, </td></tr><tr><td> </td><td>const struct iovec *<var class="pdparam">iov</var>, </td></tr><tr><td> </td><td>unsigned <var class="pdparam">n</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int sd_bus_message_append_array_space(</code></td><td>char <var class="pdparam">type</var>, </td></tr><tr><td> </td><td>size_t <var class="pdparam">size</var>, </td></tr><tr><td> </td><td>char void **<var class="pdparam">ptr</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214173279312"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p>The <code class="function">sd_bus_message_append_array</code> functionc
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="sd_bus_message_append_array"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_bus_message_append_array, sd_bus_message_append_array_memfd, sd_bus_message_append_array_iovec, sd_bus_message_append_array_space — Attach an array of items to a message</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-bus.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int sd_bus_message_append_array(</code></td><td>sd_bus_message *<var class="pdparam">m</var>, </td></tr><tr><td> </td><td>char <var class="pdparam">type</var>, </td></tr><tr><td> </td><td>char void *<var class="pdparam">ptr</var>, </td></tr><tr><td> </td><td>size_t <var class="pdparam">size</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int sd_bus_message_append_array_memfd(</code></td><td>sd_bus_message *<var class="pdparam">m</var>, </td></tr><tr><td> </td><td>char <var class="pdparam">type</var>, </td></tr><tr><td> </td><td>sd_memfd *<var class="pdparam">memfd</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int sd_bus_message_append_array_iovec(</code></td><td>sd_bus_message *<var class="pdparam">m</var>, </td></tr><tr><td> </td><td>char <var class="pdparam">type</var>, </td></tr><tr><td> </td><td>const struct iovec *<var class="pdparam">iov</var>, </td></tr><tr><td> </td><td>unsigned <var class="pdparam">n</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int sd_bus_message_append_array_space(</code></td><td>char <var class="pdparam">type</var>, </td></tr><tr><td> </td><td>size_t <var class="pdparam">size</var>, </td></tr><tr><td> </td><td>char void **<var class="pdparam">ptr</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214170011040"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p>The <code class="function">sd_bus_message_append_array</code> functionc
     appends items to message <em class="parameter"><code>m</code></em> as the single
     array. A container will be opened, items appended, and the
     container closed. Parameter <em class="parameter"><code>type</code></em> determines
     <code class="function">sd_bus_message_append_array</code>, but instead
     of copying items to the message, it returns a pointer to the
     destination area to the caller in pointer <em class="parameter"><code>p</code></em>.
-    </p></div><div class="refsect1"><a name="idm214177134304"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>On success, these calls return 0 or a positive integer. On
+    </p></div><div class="refsect1"><a name="idm214169563840"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>On success, these calls return 0 or a positive integer. On
     failure, they returns a negative errno-style error code.</p></div><div class="refsect1"><a name="errors"></a><h2 id="Errors">Errors<a class="headerlink" title="Permalink to this headline" href="#Errors">¶</a></h2><p>Returned errors may indicate the following problems:</p><div class="variablelist"><dl class="variablelist"><dt id="-EINVAL"><span class="term"><code class="varname">-EINVAL</code></span><a class="headerlink" title="Permalink to this term" href="#-EINVAL">¶</a></dt><dd><p>Specified parameter is invalid.
         </p></dd><dt id="-EPERM"><span class="term"><code class="varname">-EPERM</code></span><a class="headerlink" title="Permalink to this term" href="#-EPERM">¶</a></dt><dd><p>Message has been sealed.
         </p></dd><dt id="-ESTALE"><span class="term"><code class="varname">-ESTALE</code></span><a class="headerlink" title="Permalink to this term" href="#-ESTALE">¶</a></dt><dd><p>Message is in invalid state.
         </p></dd><dt id="-ENXIO"><span class="term"><code class="varname">-ENXIO</code></span><a class="headerlink" title="Permalink to this term" href="#-ENXIO">¶</a></dt><dd><p>Message cannot be appended to.
-        </p></dd><dt id="-ENOMEM"><span class="term"><code class="varname">-ENOMEM</code></span><a class="headerlink" title="Permalink to this term" href="#-ENOMEM">¶</a></dt><dd><p>Memory allocation failed.</p></dd></dl></div></div><div class="refsect1"><a name="idm214177132128"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p><code class="function">sd_bus_append_array()</code> and other
+        </p></dd><dt id="-ENOMEM"><span class="term"><code class="varname">-ENOMEM</code></span><a class="headerlink" title="Permalink to this term" href="#-ENOMEM">¶</a></dt><dd><p>Memory allocation failed.</p></dd></dl></div></div><div class="refsect1"><a name="idm214171075696"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p><code class="function">sd_bus_append_array()</code> and other
     functions described here are available as a shared library, which
     can be compiled and linked to with the
     <code class="constant">libsystemd</code> <a href="pkg-config.html"><span class="citerefentry"><span class="refentrytitle">pkg-config</span>(1)</span></a>
-    file.</p></div><div class="refsect1"><a name="idm214177128960"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+    file.</p></div><div class="refsect1"><a name="idm214169857648"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
       <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
       <a href="sd-bus.html"><span class="citerefentry"><span class="refentrytitle">sd-bus</span>(3)</span></a>,
       <a href="sd_bus_message_append.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_message_append</span>(3)</span></a>,
index 4da5ce9c52f59a9c6507c3c42a7e3ddaf702d829..0878e1e614e5e1ea1732471bd188d8caad7da366 100644 (file)
@@ -19,7 +19,7 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="sd_bus_message_append_array"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_bus_message_append_array, sd_bus_message_append_array_memfd, sd_bus_message_append_array_iovec, sd_bus_message_append_array_space — Attach an array of items to a message</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-bus.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int sd_bus_message_append_array(</code></td><td>sd_bus_message *<var class="pdparam">m</var>, </td></tr><tr><td> </td><td>char <var class="pdparam">type</var>, </td></tr><tr><td> </td><td>char void *<var class="pdparam">ptr</var>, </td></tr><tr><td> </td><td>size_t <var class="pdparam">size</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int sd_bus_message_append_array_memfd(</code></td><td>sd_bus_message *<var class="pdparam">m</var>, </td></tr><tr><td> </td><td>char <var class="pdparam">type</var>, </td></tr><tr><td> </td><td>sd_memfd *<var class="pdparam">memfd</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int sd_bus_message_append_array_iovec(</code></td><td>sd_bus_message *<var class="pdparam">m</var>, </td></tr><tr><td> </td><td>char <var class="pdparam">type</var>, </td></tr><tr><td> </td><td>const struct iovec *<var class="pdparam">iov</var>, </td></tr><tr><td> </td><td>unsigned <var class="pdparam">n</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int sd_bus_message_append_array_space(</code></td><td>char <var class="pdparam">type</var>, </td></tr><tr><td> </td><td>size_t <var class="pdparam">size</var>, </td></tr><tr><td> </td><td>char void **<var class="pdparam">ptr</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214173279312"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p>The <code class="function">sd_bus_message_append_array</code> functionc
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="sd_bus_message_append_array"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_bus_message_append_array, sd_bus_message_append_array_memfd, sd_bus_message_append_array_iovec, sd_bus_message_append_array_space — Attach an array of items to a message</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-bus.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int sd_bus_message_append_array(</code></td><td>sd_bus_message *<var class="pdparam">m</var>, </td></tr><tr><td> </td><td>char <var class="pdparam">type</var>, </td></tr><tr><td> </td><td>char void *<var class="pdparam">ptr</var>, </td></tr><tr><td> </td><td>size_t <var class="pdparam">size</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int sd_bus_message_append_array_memfd(</code></td><td>sd_bus_message *<var class="pdparam">m</var>, </td></tr><tr><td> </td><td>char <var class="pdparam">type</var>, </td></tr><tr><td> </td><td>sd_memfd *<var class="pdparam">memfd</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int sd_bus_message_append_array_iovec(</code></td><td>sd_bus_message *<var class="pdparam">m</var>, </td></tr><tr><td> </td><td>char <var class="pdparam">type</var>, </td></tr><tr><td> </td><td>const struct iovec *<var class="pdparam">iov</var>, </td></tr><tr><td> </td><td>unsigned <var class="pdparam">n</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int sd_bus_message_append_array_space(</code></td><td>char <var class="pdparam">type</var>, </td></tr><tr><td> </td><td>size_t <var class="pdparam">size</var>, </td></tr><tr><td> </td><td>char void **<var class="pdparam">ptr</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214170011040"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p>The <code class="function">sd_bus_message_append_array</code> functionc
     appends items to message <em class="parameter"><code>m</code></em> as the single
     array. A container will be opened, items appended, and the
     container closed. Parameter <em class="parameter"><code>type</code></em> determines
     <code class="function">sd_bus_message_append_array</code>, but instead
     of copying items to the message, it returns a pointer to the
     destination area to the caller in pointer <em class="parameter"><code>p</code></em>.
-    </p></div><div class="refsect1"><a name="idm214177134304"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>On success, these calls return 0 or a positive integer. On
+    </p></div><div class="refsect1"><a name="idm214169563840"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>On success, these calls return 0 or a positive integer. On
     failure, they returns a negative errno-style error code.</p></div><div class="refsect1"><a name="errors"></a><h2 id="Errors">Errors<a class="headerlink" title="Permalink to this headline" href="#Errors">¶</a></h2><p>Returned errors may indicate the following problems:</p><div class="variablelist"><dl class="variablelist"><dt id="-EINVAL"><span class="term"><code class="varname">-EINVAL</code></span><a class="headerlink" title="Permalink to this term" href="#-EINVAL">¶</a></dt><dd><p>Specified parameter is invalid.
         </p></dd><dt id="-EPERM"><span class="term"><code class="varname">-EPERM</code></span><a class="headerlink" title="Permalink to this term" href="#-EPERM">¶</a></dt><dd><p>Message has been sealed.
         </p></dd><dt id="-ESTALE"><span class="term"><code class="varname">-ESTALE</code></span><a class="headerlink" title="Permalink to this term" href="#-ESTALE">¶</a></dt><dd><p>Message is in invalid state.
         </p></dd><dt id="-ENXIO"><span class="term"><code class="varname">-ENXIO</code></span><a class="headerlink" title="Permalink to this term" href="#-ENXIO">¶</a></dt><dd><p>Message cannot be appended to.
-        </p></dd><dt id="-ENOMEM"><span class="term"><code class="varname">-ENOMEM</code></span><a class="headerlink" title="Permalink to this term" href="#-ENOMEM">¶</a></dt><dd><p>Memory allocation failed.</p></dd></dl></div></div><div class="refsect1"><a name="idm214177132128"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p><code class="function">sd_bus_append_array()</code> and other
+        </p></dd><dt id="-ENOMEM"><span class="term"><code class="varname">-ENOMEM</code></span><a class="headerlink" title="Permalink to this term" href="#-ENOMEM">¶</a></dt><dd><p>Memory allocation failed.</p></dd></dl></div></div><div class="refsect1"><a name="idm214171075696"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p><code class="function">sd_bus_append_array()</code> and other
     functions described here are available as a shared library, which
     can be compiled and linked to with the
     <code class="constant">libsystemd</code> <a href="pkg-config.html"><span class="citerefentry"><span class="refentrytitle">pkg-config</span>(1)</span></a>
-    file.</p></div><div class="refsect1"><a name="idm214177128960"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+    file.</p></div><div class="refsect1"><a name="idm214169857648"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
       <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
       <a href="sd-bus.html"><span class="citerefentry"><span class="refentrytitle">sd-bus</span>(3)</span></a>,
       <a href="sd_bus_message_append.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_message_append</span>(3)</span></a>,
index 4da5ce9c52f59a9c6507c3c42a7e3ddaf702d829..0878e1e614e5e1ea1732471bd188d8caad7da366 100644 (file)
@@ -19,7 +19,7 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="sd_bus_message_append_array"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_bus_message_append_array, sd_bus_message_append_array_memfd, sd_bus_message_append_array_iovec, sd_bus_message_append_array_space — Attach an array of items to a message</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-bus.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int sd_bus_message_append_array(</code></td><td>sd_bus_message *<var class="pdparam">m</var>, </td></tr><tr><td> </td><td>char <var class="pdparam">type</var>, </td></tr><tr><td> </td><td>char void *<var class="pdparam">ptr</var>, </td></tr><tr><td> </td><td>size_t <var class="pdparam">size</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int sd_bus_message_append_array_memfd(</code></td><td>sd_bus_message *<var class="pdparam">m</var>, </td></tr><tr><td> </td><td>char <var class="pdparam">type</var>, </td></tr><tr><td> </td><td>sd_memfd *<var class="pdparam">memfd</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int sd_bus_message_append_array_iovec(</code></td><td>sd_bus_message *<var class="pdparam">m</var>, </td></tr><tr><td> </td><td>char <var class="pdparam">type</var>, </td></tr><tr><td> </td><td>const struct iovec *<var class="pdparam">iov</var>, </td></tr><tr><td> </td><td>unsigned <var class="pdparam">n</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int sd_bus_message_append_array_space(</code></td><td>char <var class="pdparam">type</var>, </td></tr><tr><td> </td><td>size_t <var class="pdparam">size</var>, </td></tr><tr><td> </td><td>char void **<var class="pdparam">ptr</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214173279312"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p>The <code class="function">sd_bus_message_append_array</code> functionc
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="sd_bus_message_append_array"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_bus_message_append_array, sd_bus_message_append_array_memfd, sd_bus_message_append_array_iovec, sd_bus_message_append_array_space — Attach an array of items to a message</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-bus.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int sd_bus_message_append_array(</code></td><td>sd_bus_message *<var class="pdparam">m</var>, </td></tr><tr><td> </td><td>char <var class="pdparam">type</var>, </td></tr><tr><td> </td><td>char void *<var class="pdparam">ptr</var>, </td></tr><tr><td> </td><td>size_t <var class="pdparam">size</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int sd_bus_message_append_array_memfd(</code></td><td>sd_bus_message *<var class="pdparam">m</var>, </td></tr><tr><td> </td><td>char <var class="pdparam">type</var>, </td></tr><tr><td> </td><td>sd_memfd *<var class="pdparam">memfd</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int sd_bus_message_append_array_iovec(</code></td><td>sd_bus_message *<var class="pdparam">m</var>, </td></tr><tr><td> </td><td>char <var class="pdparam">type</var>, </td></tr><tr><td> </td><td>const struct iovec *<var class="pdparam">iov</var>, </td></tr><tr><td> </td><td>unsigned <var class="pdparam">n</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int sd_bus_message_append_array_space(</code></td><td>char <var class="pdparam">type</var>, </td></tr><tr><td> </td><td>size_t <var class="pdparam">size</var>, </td></tr><tr><td> </td><td>char void **<var class="pdparam">ptr</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214170011040"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p>The <code class="function">sd_bus_message_append_array</code> functionc
     appends items to message <em class="parameter"><code>m</code></em> as the single
     array. A container will be opened, items appended, and the
     container closed. Parameter <em class="parameter"><code>type</code></em> determines
     <code class="function">sd_bus_message_append_array</code>, but instead
     of copying items to the message, it returns a pointer to the
     destination area to the caller in pointer <em class="parameter"><code>p</code></em>.
-    </p></div><div class="refsect1"><a name="idm214177134304"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>On success, these calls return 0 or a positive integer. On
+    </p></div><div class="refsect1"><a name="idm214169563840"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>On success, these calls return 0 or a positive integer. On
     failure, they returns a negative errno-style error code.</p></div><div class="refsect1"><a name="errors"></a><h2 id="Errors">Errors<a class="headerlink" title="Permalink to this headline" href="#Errors">¶</a></h2><p>Returned errors may indicate the following problems:</p><div class="variablelist"><dl class="variablelist"><dt id="-EINVAL"><span class="term"><code class="varname">-EINVAL</code></span><a class="headerlink" title="Permalink to this term" href="#-EINVAL">¶</a></dt><dd><p>Specified parameter is invalid.
         </p></dd><dt id="-EPERM"><span class="term"><code class="varname">-EPERM</code></span><a class="headerlink" title="Permalink to this term" href="#-EPERM">¶</a></dt><dd><p>Message has been sealed.
         </p></dd><dt id="-ESTALE"><span class="term"><code class="varname">-ESTALE</code></span><a class="headerlink" title="Permalink to this term" href="#-ESTALE">¶</a></dt><dd><p>Message is in invalid state.
         </p></dd><dt id="-ENXIO"><span class="term"><code class="varname">-ENXIO</code></span><a class="headerlink" title="Permalink to this term" href="#-ENXIO">¶</a></dt><dd><p>Message cannot be appended to.
-        </p></dd><dt id="-ENOMEM"><span class="term"><code class="varname">-ENOMEM</code></span><a class="headerlink" title="Permalink to this term" href="#-ENOMEM">¶</a></dt><dd><p>Memory allocation failed.</p></dd></dl></div></div><div class="refsect1"><a name="idm214177132128"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p><code class="function">sd_bus_append_array()</code> and other
+        </p></dd><dt id="-ENOMEM"><span class="term"><code class="varname">-ENOMEM</code></span><a class="headerlink" title="Permalink to this term" href="#-ENOMEM">¶</a></dt><dd><p>Memory allocation failed.</p></dd></dl></div></div><div class="refsect1"><a name="idm214171075696"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p><code class="function">sd_bus_append_array()</code> and other
     functions described here are available as a shared library, which
     can be compiled and linked to with the
     <code class="constant">libsystemd</code> <a href="pkg-config.html"><span class="citerefentry"><span class="refentrytitle">pkg-config</span>(1)</span></a>
-    file.</p></div><div class="refsect1"><a name="idm214177128960"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+    file.</p></div><div class="refsect1"><a name="idm214169857648"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
       <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
       <a href="sd-bus.html"><span class="citerefentry"><span class="refentrytitle">sd-bus</span>(3)</span></a>,
       <a href="sd_bus_message_append.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_message_append</span>(3)</span></a>,
index 76ea2fe2013c22adaa47b8b7b0c2fe42320b324b..729beb722125c842a67e8417904c8bc80be4ae9d 100644 (file)
@@ -1,5 +1,5 @@
 '\" t
-.TH "SD_BUS_MESSAGE_APPEND_BASIC" "3" "" "systemd 214" "sd_bus_message_append_basic"
+.TH "SD_BUS_MESSAGE_APPEND_BASIC" "3" "" "systemd 215" "sd_bus_message_append_basic"
 .\" -----------------------------------------------------------------
 .\" * Define some portability stuff
 .\" -----------------------------------------------------------------
index 19094228859f2cfd12ee38cf28f40bf1d834b336..08ea99146699dde5c9b90f5fbbc5e8178c474514 100644 (file)
@@ -19,7 +19,7 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="sd_bus_message_append_basic"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_bus_message_append_basic — Attach a single part to a message</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-bus.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int sd_bus_message_append_basic(</code></td><td>sd_bus_message *<var class="pdparam">m</var>, </td></tr><tr><td> </td><td>char <var class="pdparam">type</var>, </td></tr><tr><td> </td><td>char void *<var class="pdparam">p</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214198565376"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_bus_message_append_basic</code> appends a
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="sd_bus_message_append_basic"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_bus_message_append_basic — Attach a single part to a message</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-bus.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int sd_bus_message_append_basic(</code></td><td>sd_bus_message *<var class="pdparam">m</var>, </td></tr><tr><td> </td><td>char <var class="pdparam">type</var>, </td></tr><tr><td> </td><td>char void *<var class="pdparam">p</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214171102672"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_bus_message_append_basic</code> appends a
     single item to the message <em class="parameter"><code>m</code></em>. Parameter
     <em class="parameter"><code>type</code></em> determines how pointer
     <em class="parameter"><code>p</code></em> is interpreted.
     types, the additional requirements for a D-Bus object path or
     type signature should be satisfied. Those requirements should be
     verified by the recepient of the message.
-    </p></div><div class="refsect1"><a name="idm214198624768"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>On success, this call returns 0 or a positive integer. On
+    </p></div><div class="refsect1"><a name="idm214171395632"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>On success, this call returns 0 or a positive integer. On
     failure, it returns a negative errno-style error code.</p></div><div class="refsect1"><a name="errors"></a><h2 id="Errors">Errors<a class="headerlink" title="Permalink to this headline" href="#Errors">¶</a></h2><p>Returned errors may indicate the following problems:</p><div class="variablelist"><dl class="variablelist"><dt id="-EINVAL"><span class="term"><code class="varname">-EINVAL</code></span><a class="headerlink" title="Permalink to this term" href="#-EINVAL">¶</a></dt><dd><p>Specified parameter is invalid.
         </p></dd><dt id="-EPERM"><span class="term"><code class="varname">-EPERM</code></span><a class="headerlink" title="Permalink to this term" href="#-EPERM">¶</a></dt><dd><p>Message has been sealed.
         </p></dd><dt id="-ESTALE"><span class="term"><code class="varname">-ESTALE</code></span><a class="headerlink" title="Permalink to this term" href="#-ESTALE">¶</a></dt><dd><p>Message is in invalid state.
         </p></dd><dt id="-ENXIO"><span class="term"><code class="varname">-ENXIO</code></span><a class="headerlink" title="Permalink to this term" href="#-ENXIO">¶</a></dt><dd><p>Message cannot be appended to.
-        </p></dd><dt id="-ENOMEM"><span class="term"><code class="varname">-ENOMEM</code></span><a class="headerlink" title="Permalink to this term" href="#-ENOMEM">¶</a></dt><dd><p>Memory allocation failed.</p></dd></dl></div></div><div class="refsect1"><a name="idm214193988384"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p>The <code class="function">sd_bus_append_basic()</code> function
+        </p></dd><dt id="-ENOMEM"><span class="term"><code class="varname">-ENOMEM</code></span><a class="headerlink" title="Permalink to this term" href="#-ENOMEM">¶</a></dt><dd><p>Memory allocation failed.</p></dd></dl></div></div><div class="refsect1"><a name="idm214169902752"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p>The <code class="function">sd_bus_append_basic()</code> function
     described here is available as a shared library, which can be
     compiled and linked to with the
     <code class="constant">libsystemd</code> <a href="pkg-config.html"><span class="citerefentry"><span class="refentrytitle">pkg-config</span>(1)</span></a>
-    file.</p></div><div class="refsect1"><a name="idm214193985328"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+    file.</p></div><div class="refsect1"><a name="idm214171653984"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
       <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
       <a href="sd-bus.html"><span class="citerefentry"><span class="refentrytitle">sd-bus</span>(3)</span></a>,
       <a href="sd_bus_message_append.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_message_append</span>(3)</span></a>,
index 4745d6511370d886428911a21ef0dadf12d3fb5d..963abc252d48ac97a742cee7254927c5b8c62ead 100644 (file)
@@ -19,7 +19,7 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="sd_bus_message_append_string_memfd"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_bus_message_append_string_memfd, sd_bus_message_append_string_iovec, sd_bus_message_append_string_space — Attach a string to a message</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-bus.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int sd_bus_message_append_string_memfd(</code></td><td>sd_bus_message *<var class="pdparam">m</var>, </td></tr><tr><td> </td><td>sd_memfd *<var class="pdparam">memfd</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int sd_bus_message_append_string_iovec(</code></td><td>sd_bus_message *<var class="pdparam">m</var>, </td></tr><tr><td> </td><td>const struct iovec *<var class="pdparam">iov</var>, </td></tr><tr><td> </td><td>unsigned <var class="pdparam">n</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int sd_bus_message_append_string_space(</code></td><td>sd_bus_message *<var class="pdparam">m</var>, </td></tr><tr><td> </td><td>size_t <var class="pdparam">size</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">s</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214191428080"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p>The functions
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="sd_bus_message_append_string_memfd"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_bus_message_append_string_memfd, sd_bus_message_append_string_iovec, sd_bus_message_append_string_space — Attach a string to a message</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-bus.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int sd_bus_message_append_string_memfd(</code></td><td>sd_bus_message *<var class="pdparam">m</var>, </td></tr><tr><td> </td><td>sd_memfd *<var class="pdparam">memfd</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int sd_bus_message_append_string_iovec(</code></td><td>sd_bus_message *<var class="pdparam">m</var>, </td></tr><tr><td> </td><td>const struct iovec *<var class="pdparam">iov</var>, </td></tr><tr><td> </td><td>unsigned <var class="pdparam">n</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int sd_bus_message_append_string_space(</code></td><td>sd_bus_message *<var class="pdparam">m</var>, </td></tr><tr><td> </td><td>size_t <var class="pdparam">size</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">s</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214169135024"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p>The functions
     <code class="function">sd_bus_message_append_string_memfd</code> and
     <code class="function">sd_bus_message_append_string_iovec</code> can be
     used to append a single string (item of type "<code class="literal">s</code>")
     the message, it returns a pointer to the destination area to
     the caller in pointer <em class="parameter"><code>p</code></em>. Space for the string
     of length <em class="parameter"><code>size</code></em> plus the terminating
-    <code class="constant">NUL</code> is allocated.</p></div><div class="refsect1"><a name="idm214195306688"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>On success, those calls return 0 or a positive integer. On
+    <code class="constant">NUL</code> is allocated.</p></div><div class="refsect1"><a name="idm214168480256"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>On success, those calls return 0 or a positive integer. On
     failure, they returns a negative errno-style error code.</p></div><div class="refsect1"><a name="errors"></a><h2 id="Errors">Errors<a class="headerlink" title="Permalink to this headline" href="#Errors">¶</a></h2><p>Returned errors may indicate the following problems:</p><div class="variablelist"><dl class="variablelist"><dt id="-EINVAL"><span class="term"><code class="varname">-EINVAL</code></span><a class="headerlink" title="Permalink to this term" href="#-EINVAL">¶</a></dt><dd><p>Specified parameter is invalid.
         </p></dd><dt id="-EPERM"><span class="term"><code class="varname">-EPERM</code></span><a class="headerlink" title="Permalink to this term" href="#-EPERM">¶</a></dt><dd><p>Message has been sealed.
         </p></dd><dt id="-ESTALE"><span class="term"><code class="varname">-ESTALE</code></span><a class="headerlink" title="Permalink to this term" href="#-ESTALE">¶</a></dt><dd><p>Message is in invalid state.
         </p></dd><dt id="-ENXIO"><span class="term"><code class="varname">-ENXIO</code></span><a class="headerlink" title="Permalink to this term" href="#-ENXIO">¶</a></dt><dd><p>Message cannot be appended to.
-        </p></dd><dt id="-ENOMEM"><span class="term"><code class="varname">-ENOMEM</code></span><a class="headerlink" title="Permalink to this term" href="#-ENOMEM">¶</a></dt><dd><p>Memory allocation failed.</p></dd></dl></div></div><div class="refsect1"><a name="idm214195304512"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p>The functions described here are available as a shared library,
+        </p></dd><dt id="-ENOMEM"><span class="term"><code class="varname">-ENOMEM</code></span><a class="headerlink" title="Permalink to this term" href="#-ENOMEM">¶</a></dt><dd><p>Memory allocation failed.</p></dd></dl></div></div><div class="refsect1"><a name="idm214169750000"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p>The functions described here are available as a shared library,
     which can be compiled and linked to with the
     <code class="constant">libsystemd</code> <a href="pkg-config.html"><span class="citerefentry"><span class="refentrytitle">pkg-config</span>(1)</span></a>
-    file.</p></div><div class="refsect1"><a name="idm214195301920"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+    file.</p></div><div class="refsect1"><a name="idm214167904208"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
       <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
       <a href="sd-bus.html"><span class="citerefentry"><span class="refentrytitle">sd-bus</span>(3)</span></a>,
       <a href="sd_bus_message_append_basic.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_message_append_basic</span>(3)</span></a>,
index d1aafca24afc3769f2745ead67bb8bb43ad652a5..eabb36c28979e810020a82bdcaeb75a1fda1c926 100644 (file)
@@ -1,5 +1,5 @@
 '\" t
-.TH "SD_BUS_MESSAGE_APPEND_STRING_MEMFD" "3" "" "systemd 214" "sd_bus_message_append_string_memfd"
+.TH "SD_BUS_MESSAGE_APPEND_STRING_MEMFD" "3" "" "systemd 215" "sd_bus_message_append_string_memfd"
 .\" -----------------------------------------------------------------
 .\" * Define some portability stuff
 .\" -----------------------------------------------------------------
index 4745d6511370d886428911a21ef0dadf12d3fb5d..963abc252d48ac97a742cee7254927c5b8c62ead 100644 (file)
@@ -19,7 +19,7 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="sd_bus_message_append_string_memfd"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_bus_message_append_string_memfd, sd_bus_message_append_string_iovec, sd_bus_message_append_string_space — Attach a string to a message</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-bus.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int sd_bus_message_append_string_memfd(</code></td><td>sd_bus_message *<var class="pdparam">m</var>, </td></tr><tr><td> </td><td>sd_memfd *<var class="pdparam">memfd</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int sd_bus_message_append_string_iovec(</code></td><td>sd_bus_message *<var class="pdparam">m</var>, </td></tr><tr><td> </td><td>const struct iovec *<var class="pdparam">iov</var>, </td></tr><tr><td> </td><td>unsigned <var class="pdparam">n</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int sd_bus_message_append_string_space(</code></td><td>sd_bus_message *<var class="pdparam">m</var>, </td></tr><tr><td> </td><td>size_t <var class="pdparam">size</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">s</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214191428080"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p>The functions
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="sd_bus_message_append_string_memfd"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_bus_message_append_string_memfd, sd_bus_message_append_string_iovec, sd_bus_message_append_string_space — Attach a string to a message</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-bus.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int sd_bus_message_append_string_memfd(</code></td><td>sd_bus_message *<var class="pdparam">m</var>, </td></tr><tr><td> </td><td>sd_memfd *<var class="pdparam">memfd</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int sd_bus_message_append_string_iovec(</code></td><td>sd_bus_message *<var class="pdparam">m</var>, </td></tr><tr><td> </td><td>const struct iovec *<var class="pdparam">iov</var>, </td></tr><tr><td> </td><td>unsigned <var class="pdparam">n</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int sd_bus_message_append_string_space(</code></td><td>sd_bus_message *<var class="pdparam">m</var>, </td></tr><tr><td> </td><td>size_t <var class="pdparam">size</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">s</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214169135024"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p>The functions
     <code class="function">sd_bus_message_append_string_memfd</code> and
     <code class="function">sd_bus_message_append_string_iovec</code> can be
     used to append a single string (item of type "<code class="literal">s</code>")
     the message, it returns a pointer to the destination area to
     the caller in pointer <em class="parameter"><code>p</code></em>. Space for the string
     of length <em class="parameter"><code>size</code></em> plus the terminating
-    <code class="constant">NUL</code> is allocated.</p></div><div class="refsect1"><a name="idm214195306688"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>On success, those calls return 0 or a positive integer. On
+    <code class="constant">NUL</code> is allocated.</p></div><div class="refsect1"><a name="idm214168480256"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>On success, those calls return 0 or a positive integer. On
     failure, they returns a negative errno-style error code.</p></div><div class="refsect1"><a name="errors"></a><h2 id="Errors">Errors<a class="headerlink" title="Permalink to this headline" href="#Errors">¶</a></h2><p>Returned errors may indicate the following problems:</p><div class="variablelist"><dl class="variablelist"><dt id="-EINVAL"><span class="term"><code class="varname">-EINVAL</code></span><a class="headerlink" title="Permalink to this term" href="#-EINVAL">¶</a></dt><dd><p>Specified parameter is invalid.
         </p></dd><dt id="-EPERM"><span class="term"><code class="varname">-EPERM</code></span><a class="headerlink" title="Permalink to this term" href="#-EPERM">¶</a></dt><dd><p>Message has been sealed.
         </p></dd><dt id="-ESTALE"><span class="term"><code class="varname">-ESTALE</code></span><a class="headerlink" title="Permalink to this term" href="#-ESTALE">¶</a></dt><dd><p>Message is in invalid state.
         </p></dd><dt id="-ENXIO"><span class="term"><code class="varname">-ENXIO</code></span><a class="headerlink" title="Permalink to this term" href="#-ENXIO">¶</a></dt><dd><p>Message cannot be appended to.
-        </p></dd><dt id="-ENOMEM"><span class="term"><code class="varname">-ENOMEM</code></span><a class="headerlink" title="Permalink to this term" href="#-ENOMEM">¶</a></dt><dd><p>Memory allocation failed.</p></dd></dl></div></div><div class="refsect1"><a name="idm214195304512"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p>The functions described here are available as a shared library,
+        </p></dd><dt id="-ENOMEM"><span class="term"><code class="varname">-ENOMEM</code></span><a class="headerlink" title="Permalink to this term" href="#-ENOMEM">¶</a></dt><dd><p>Memory allocation failed.</p></dd></dl></div></div><div class="refsect1"><a name="idm214169750000"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p>The functions described here are available as a shared library,
     which can be compiled and linked to with the
     <code class="constant">libsystemd</code> <a href="pkg-config.html"><span class="citerefentry"><span class="refentrytitle">pkg-config</span>(1)</span></a>
-    file.</p></div><div class="refsect1"><a name="idm214195301920"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+    file.</p></div><div class="refsect1"><a name="idm214167904208"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
       <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
       <a href="sd-bus.html"><span class="citerefentry"><span class="refentrytitle">sd-bus</span>(3)</span></a>,
       <a href="sd_bus_message_append_basic.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_message_append_basic</span>(3)</span></a>,
index 4745d6511370d886428911a21ef0dadf12d3fb5d..963abc252d48ac97a742cee7254927c5b8c62ead 100644 (file)
@@ -19,7 +19,7 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="sd_bus_message_append_string_memfd"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_bus_message_append_string_memfd, sd_bus_message_append_string_iovec, sd_bus_message_append_string_space — Attach a string to a message</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-bus.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int sd_bus_message_append_string_memfd(</code></td><td>sd_bus_message *<var class="pdparam">m</var>, </td></tr><tr><td> </td><td>sd_memfd *<var class="pdparam">memfd</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int sd_bus_message_append_string_iovec(</code></td><td>sd_bus_message *<var class="pdparam">m</var>, </td></tr><tr><td> </td><td>const struct iovec *<var class="pdparam">iov</var>, </td></tr><tr><td> </td><td>unsigned <var class="pdparam">n</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int sd_bus_message_append_string_space(</code></td><td>sd_bus_message *<var class="pdparam">m</var>, </td></tr><tr><td> </td><td>size_t <var class="pdparam">size</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">s</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214191428080"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p>The functions
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="sd_bus_message_append_string_memfd"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_bus_message_append_string_memfd, sd_bus_message_append_string_iovec, sd_bus_message_append_string_space — Attach a string to a message</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-bus.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int sd_bus_message_append_string_memfd(</code></td><td>sd_bus_message *<var class="pdparam">m</var>, </td></tr><tr><td> </td><td>sd_memfd *<var class="pdparam">memfd</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int sd_bus_message_append_string_iovec(</code></td><td>sd_bus_message *<var class="pdparam">m</var>, </td></tr><tr><td> </td><td>const struct iovec *<var class="pdparam">iov</var>, </td></tr><tr><td> </td><td>unsigned <var class="pdparam">n</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int sd_bus_message_append_string_space(</code></td><td>sd_bus_message *<var class="pdparam">m</var>, </td></tr><tr><td> </td><td>size_t <var class="pdparam">size</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">s</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214169135024"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p>The functions
     <code class="function">sd_bus_message_append_string_memfd</code> and
     <code class="function">sd_bus_message_append_string_iovec</code> can be
     used to append a single string (item of type "<code class="literal">s</code>")
     the message, it returns a pointer to the destination area to
     the caller in pointer <em class="parameter"><code>p</code></em>. Space for the string
     of length <em class="parameter"><code>size</code></em> plus the terminating
-    <code class="constant">NUL</code> is allocated.</p></div><div class="refsect1"><a name="idm214195306688"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>On success, those calls return 0 or a positive integer. On
+    <code class="constant">NUL</code> is allocated.</p></div><div class="refsect1"><a name="idm214168480256"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>On success, those calls return 0 or a positive integer. On
     failure, they returns a negative errno-style error code.</p></div><div class="refsect1"><a name="errors"></a><h2 id="Errors">Errors<a class="headerlink" title="Permalink to this headline" href="#Errors">¶</a></h2><p>Returned errors may indicate the following problems:</p><div class="variablelist"><dl class="variablelist"><dt id="-EINVAL"><span class="term"><code class="varname">-EINVAL</code></span><a class="headerlink" title="Permalink to this term" href="#-EINVAL">¶</a></dt><dd><p>Specified parameter is invalid.
         </p></dd><dt id="-EPERM"><span class="term"><code class="varname">-EPERM</code></span><a class="headerlink" title="Permalink to this term" href="#-EPERM">¶</a></dt><dd><p>Message has been sealed.
         </p></dd><dt id="-ESTALE"><span class="term"><code class="varname">-ESTALE</code></span><a class="headerlink" title="Permalink to this term" href="#-ESTALE">¶</a></dt><dd><p>Message is in invalid state.
         </p></dd><dt id="-ENXIO"><span class="term"><code class="varname">-ENXIO</code></span><a class="headerlink" title="Permalink to this term" href="#-ENXIO">¶</a></dt><dd><p>Message cannot be appended to.
-        </p></dd><dt id="-ENOMEM"><span class="term"><code class="varname">-ENOMEM</code></span><a class="headerlink" title="Permalink to this term" href="#-ENOMEM">¶</a></dt><dd><p>Memory allocation failed.</p></dd></dl></div></div><div class="refsect1"><a name="idm214195304512"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p>The functions described here are available as a shared library,
+        </p></dd><dt id="-ENOMEM"><span class="term"><code class="varname">-ENOMEM</code></span><a class="headerlink" title="Permalink to this term" href="#-ENOMEM">¶</a></dt><dd><p>Memory allocation failed.</p></dd></dl></div></div><div class="refsect1"><a name="idm214169750000"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p>The functions described here are available as a shared library,
     which can be compiled and linked to with the
     <code class="constant">libsystemd</code> <a href="pkg-config.html"><span class="citerefentry"><span class="refentrytitle">pkg-config</span>(1)</span></a>
-    file.</p></div><div class="refsect1"><a name="idm214195301920"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+    file.</p></div><div class="refsect1"><a name="idm214167904208"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
       <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
       <a href="sd-bus.html"><span class="citerefentry"><span class="refentrytitle">sd-bus</span>(3)</span></a>,
       <a href="sd_bus_message_append_basic.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_message_append_basic</span>(3)</span></a>,
index ca8ee765a4535a8684399b8736c6604f45808f63..8141e6a520da2c50ebc25c65b58376ec7eb9bbbf 100644 (file)
@@ -1,5 +1,5 @@
 '\" t
-.TH "SD_BUS_MESSAGE_APPEND_STRV" "3" "" "systemd 214" "sd_bus_message_append_strv"
+.TH "SD_BUS_MESSAGE_APPEND_STRV" "3" "" "systemd 215" "sd_bus_message_append_strv"
 .\" -----------------------------------------------------------------
 .\" * Define some portability stuff
 .\" -----------------------------------------------------------------
index 84986347babdb8151350246f1766d01fd6f1ac24..adc34362f977c63061b9f91dbc4a367cb5b9645e 100644 (file)
@@ -19,7 +19,7 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="sd_bus_message_append_strv"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_bus_message_append_strv — Attach an array of strings to a message</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-bus.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int sd_bus_message_append_strv(</code></td><td>sd_bus_message *<var class="pdparam">m</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">l</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214187804112"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p>The <code class="function">sd_bus_message_append</code> function can be
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="sd_bus_message_append_strv"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_bus_message_append_strv — Attach an array of strings to a message</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-bus.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int sd_bus_message_append_strv(</code></td><td>sd_bus_message *<var class="pdparam">m</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">l</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214173257712"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p>The <code class="function">sd_bus_message_append</code> function can be
     used to append an array of strings to message
     <em class="parameter"><code>m</code></em>. The parameter <em class="parameter"><code>l</code></em>
     shall point to a <code class="constant">NULL</code>-terminated array of pointers
     containing the message and may be changed after this call. Note
     that the signature of <em class="parameter"><code>l</code></em> parameter is to be
     treated as <span class="type">const char *const *</span>, and the contents
-    will not be modified.</p></div><div class="refsect1"><a name="idm214187772784"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>On success, this call returns 0 or a positive integer. On
+    will not be modified.</p></div><div class="refsect1"><a name="idm214172434464"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>On success, this call returns 0 or a positive integer. On
     failure, a negative errno-style error code is returned.</p></div><div class="refsect1"><a name="errors"></a><h2 id="Errors">Errors<a class="headerlink" title="Permalink to this headline" href="#Errors">¶</a></h2><p>Returned errors may indicate the following problems:</p><div class="variablelist"><dl class="variablelist"><dt id="-EINVAL"><span class="term"><code class="varname">-EINVAL</code></span><a class="headerlink" title="Permalink to this term" href="#-EINVAL">¶</a></dt><dd><p>Specified parameter is invalid.
         </p></dd><dt id="-EPERM"><span class="term"><code class="varname">-EPERM</code></span><a class="headerlink" title="Permalink to this term" href="#-EPERM">¶</a></dt><dd><p>Message has been sealed.
         </p></dd><dt id="-ESTALE"><span class="term"><code class="varname">-ESTALE</code></span><a class="headerlink" title="Permalink to this term" href="#-ESTALE">¶</a></dt><dd><p>Message is in invalid state.
         </p></dd><dt id="-ENXIO"><span class="term"><code class="varname">-ENXIO</code></span><a class="headerlink" title="Permalink to this term" href="#-ENXIO">¶</a></dt><dd><p>Message cannot be appended to.
-        </p></dd><dt id="-ENOMEM"><span class="term"><code class="varname">-ENOMEM</code></span><a class="headerlink" title="Permalink to this term" href="#-ENOMEM">¶</a></dt><dd><p>Memory allocation failed.</p></dd></dl></div></div><div class="refsect1"><a name="idm214187743440"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p>The <code class="function">sd_bus_append_append_strv()</code> function
+        </p></dd><dt id="-ENOMEM"><span class="term"><code class="varname">-ENOMEM</code></span><a class="headerlink" title="Permalink to this term" href="#-ENOMEM">¶</a></dt><dd><p>Memory allocation failed.</p></dd></dl></div></div><div class="refsect1"><a name="idm214173186080"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p>The <code class="function">sd_bus_append_append_strv()</code> function
     described here is available as a shared library, which can be
     compiled and linked to with the
     <code class="constant">libsystemd</code> <a href="pkg-config.html"><span class="citerefentry"><span class="refentrytitle">pkg-config</span>(1)</span></a>
-    file.</p></div><div class="refsect1"><a name="idm214187461664"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+    file.</p></div><div class="refsect1"><a name="idm214171672208"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
       <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
       <a href="sd-bus.html"><span class="citerefentry"><span class="refentrytitle">sd-bus</span>(3)</span></a>,
       <a href="sd_bus_message_append.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_message_append</span>(3)</span></a>,
index 6f748deffa0b7d7a45e596dd181edd8fd26cd949..de6a3cd2ca72a9e8b797300bff507aadad3c05cf 100644 (file)
@@ -1,5 +1,5 @@
 '\" t
-.TH "SD_BUS_MESSAGE_GET_COOKIE" "3" "" "systemd 214" "sd_bus_message_get_cookie"
+.TH "SD_BUS_MESSAGE_GET_COOKIE" "3" "" "systemd 215" "sd_bus_message_get_cookie"
 .\" -----------------------------------------------------------------
 .\" * Define some portability stuff
 .\" -----------------------------------------------------------------
index edbc34960e698ee4100b9674b2f393173f946d9b..8ef6368a1cdbb6d9fe2a6084a7a1737e98ea8d5e 100644 (file)
@@ -19,7 +19,7 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="sd_bus_message_get_cookie"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_bus_message_get_cookie, sd_bus_message_get_reply_cookie — Returns the transaction cookie of a message</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-bus.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_message_get_cookie</b>(</code></td><td>sd_bus_message *<var class="pdparam">message</var>, </td></tr><tr><td> </td><td>uint64_t *<var class="pdparam">cookie</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_message_get_reply_cookie</b>(</code></td><td>sd_bus_message *<var class="pdparam">message</var>, </td></tr><tr><td> </td><td>uint64_t *<var class="pdparam">cookie</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214179228944"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_bus_message_get_cookie()</code> returns
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="sd_bus_message_get_cookie"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_bus_message_get_cookie, sd_bus_message_get_reply_cookie — Returns the transaction cookie of a message</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-bus.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_message_get_cookie</b>(</code></td><td>sd_bus_message *<var class="pdparam">message</var>, </td></tr><tr><td> </td><td>uint64_t *<var class="pdparam">cookie</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_message_get_reply_cookie</b>(</code></td><td>sd_bus_message *<var class="pdparam">message</var>, </td></tr><tr><td> </td><td>uint64_t *<var class="pdparam">cookie</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214165938928"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_bus_message_get_cookie()</code> returns
                 the transaction cookie of a message. The cookie
                 uniquely identifies a message within each bus peer,
                 but is not globally unique. It is assigned when a
                 cookie, only response messages carry a reply cookie
                 field.</p><p>Both functions take a message object as first
                 parameter and a place to store the 64-bit cookie
-                in.</p></div><div class="refsect1"><a name="idm214179171968"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>On success, these calls return 0 or a positive
+                in.</p></div><div class="refsect1"><a name="idm214168449712"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>On success, these calls return 0 or a positive
                 integer. On failure, these calls return a negative
                 errno-style error code.</p><p>On success, the cookie/reply cookie is returned
-                in the specified 64-bit unsigned integer variable.</p></div><div class="refsect1"><a name="idm214179777200"></a><h2 id="Errors">Errors<a class="headerlink" title="Permalink to this headline" href="#Errors">¶</a></h2><p>Returned errors may indicate the following problems:</p><div class="variablelist"><dl class="variablelist"><dt id="-EINVAL"><span class="term"><code class="varname">-EINVAL</code></span><a class="headerlink" title="Permalink to this term" href="#-EINVAL">¶</a></dt><dd><p>A specified parameter
+                in the specified 64-bit unsigned integer variable.</p></div><div class="refsect1"><a name="idm214167487344"></a><h2 id="Errors">Errors<a class="headerlink" title="Permalink to this headline" href="#Errors">¶</a></h2><p>Returned errors may indicate the following problems:</p><div class="variablelist"><dl class="variablelist"><dt id="-EINVAL"><span class="term"><code class="varname">-EINVAL</code></span><a class="headerlink" title="Permalink to this term" href="#-EINVAL">¶</a></dt><dd><p>A specified parameter
                                 is invalid.</p></dd><dt id="-ENODATA"><span class="term"><code class="varname">-ENODATA</code></span><a class="headerlink" title="Permalink to this term" href="#-ENODATA">¶</a></dt><dd><p>No cookie has been
                                 assigned to this message. This either
                                 indicates that the message has not
                                 assigned, or that the message is not a
                                 method response message and hence
                                 carries a reply cookie
-                                field.</p></dd></dl></div></div><div class="refsect1"><a name="idm214180026160"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p>The <code class="function">sd_bus_message_get_cookie()</code>
+                                field.</p></dd></dl></div></div><div class="refsect1"><a name="idm214166489008"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p>The <code class="function">sd_bus_message_get_cookie()</code>
                 and <code class="function">sd_bus_message_get_reply_cookie()</code>
                 interfaces are available as a shared library, which can
                 be compiled and linked to with the
                 <code class="constant">libsystemd</code> <a href="pkg-config.html"><span class="citerefentry"><span class="refentrytitle">pkg-config</span>(1)</span></a>
-                file.</p></div><div class="refsect1"><a name="idm214180103824"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+                file.</p></div><div class="refsect1"><a name="idm214166665392"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
                         <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
                         <a href="sd-bus.html"><span class="citerefentry"><span class="refentrytitle">sd-bus</span>(3)</span></a>,
                         <a href="sd_bus_new.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_new</span>(3)</span></a>
index e7ad7e3d8d3774124fb87f2a7d9f2b37d4be96d1..867497efd1b4a2a31cd1df2bedba64030c57698b 100644 (file)
@@ -1,5 +1,5 @@
 '\" t
-.TH "SD_BUS_MESSAGE_GET_MONOTONIC_USEC" "3" "" "systemd 214" "sd_bus_message_get_monotonic_usec"
+.TH "SD_BUS_MESSAGE_GET_MONOTONIC_USEC" "3" "" "systemd 215" "sd_bus_message_get_monotonic_usec"
 .\" -----------------------------------------------------------------
 .\" * Define some portability stuff
 .\" -----------------------------------------------------------------
index 80ae4f1f9656f4cf8c0153825e270266c9a9c416..1088e33271caa1f9278679e0736292e518db27f6 100644 (file)
@@ -19,7 +19,7 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="sd_bus_message_get_monotonic_usec"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_bus_message_get_monotonic_usec, sd_bus_message_get_realtime_usec, sd_bus_message_get_seqnum — Retrieve the sender timestamps and sequence number of a message</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-bus.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_message_get_monotonic_usec</b>(</code></td><td>sd_bus_message *<var class="pdparam">message</var>, </td></tr><tr><td> </td><td>uint64_t *<var class="pdparam">usec</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_message_get_realtime_usec</b>(</code></td><td>sd_bus_message *<var class="pdparam">message</var>, </td></tr><tr><td> </td><td>uint64_t *<var class="pdparam">usec</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_message_get_seqnum</b>(</code></td><td>sd_bus_message *<var class="pdparam">message</var>, </td></tr><tr><td> </td><td>uint64_t *<var class="pdparam">seqnum</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214184877296"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_bus_message_get_monotonic_usec()</code>
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="sd_bus_message_get_monotonic_usec"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_bus_message_get_monotonic_usec, sd_bus_message_get_realtime_usec, sd_bus_message_get_seqnum — Retrieve the sender timestamps and sequence number of a message</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-bus.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_message_get_monotonic_usec</b>(</code></td><td>sd_bus_message *<var class="pdparam">message</var>, </td></tr><tr><td> </td><td>uint64_t *<var class="pdparam">usec</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_message_get_realtime_usec</b>(</code></td><td>sd_bus_message *<var class="pdparam">message</var>, </td></tr><tr><td> </td><td>uint64_t *<var class="pdparam">usec</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_message_get_seqnum</b>(</code></td><td>sd_bus_message *<var class="pdparam">message</var>, </td></tr><tr><td> </td><td>uint64_t *<var class="pdparam">seqnum</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214167303664"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_bus_message_get_monotonic_usec()</code>
                 returns the monotonic timestamp of the time the
                 message was sent. This value is in microseconds since
                 the "<code class="literal">CLOCK_MONOTONIC</code>" epoch, see
                 some bus transports, and only after support for them
                 has been negotiated with the
                 <a href="sd_bus_negotiate_timestamp.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_negotiate_timestamp</span>(3)</span></a>
-                call.</p></div><div class="refsect1"><a name="idm214183950752"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>On success, these calls return 0 or a positive
+                call.</p></div><div class="refsect1"><a name="idm214166630240"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>On success, these calls return 0 or a positive
                 integer. On failure, these calls return a negative
                 errno-style error code.</p><p>On success, the timestamp or sequence number is
                 returned in the specified 64-bit unsigned integer
-                variable.</p></div><div class="refsect1"><a name="idm214186390608"></a><h2 id="Errors">Errors<a class="headerlink" title="Permalink to this headline" href="#Errors">¶</a></h2><p>Returned errors may indicate the following problems:</p><div class="variablelist"><dl class="variablelist"><dt id="-EINVAL"><span class="term"><code class="varname">-EINVAL</code></span><a class="headerlink" title="Permalink to this term" href="#-EINVAL">¶</a></dt><dd><p>A specified parameter
+                variable.</p></div><div class="refsect1"><a name="idm214166835648"></a><h2 id="Errors">Errors<a class="headerlink" title="Permalink to this headline" href="#Errors">¶</a></h2><p>Returned errors may indicate the following problems:</p><div class="variablelist"><dl class="variablelist"><dt id="-EINVAL"><span class="term"><code class="varname">-EINVAL</code></span><a class="headerlink" title="Permalink to this term" href="#-EINVAL">¶</a></dt><dd><p>A specified parameter
                                 is invalid.</p></dd><dt id="-ENODATA"><span class="term"><code class="varname">-ENODATA</code></span><a class="headerlink" title="Permalink to this term" href="#-ENODATA">¶</a></dt><dd><p>No timestamp or
                                 sequence number information is
                                 attached to the passed message. This
                                 timestamping or assigning of sequence
                                 numbers, or if this feature has not
                                 been negotiated with
-                                <a href="sd_bus_negotiate_timestamp.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_negotiate_timestamp</span>(3)</span></a>.</p></dd></dl></div></div><div class="refsect1"><a name="idm214184358016"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p>The
+                                <a href="sd_bus_negotiate_timestamp.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_negotiate_timestamp</span>(3)</span></a>.</p></dd></dl></div></div><div class="refsect1"><a name="idm214166448368"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p>The
                 <code class="function">sd_bus_message_get_monotonic_usec()</code>,
                 <code class="function">sd_bus_message_get_realtime_usec()</code>,
                 and <code class="function">sd_bus_message_get_seqnum()</code>
                 interfaces are available as a shared library, which
                 can be compiled and linked to with the
                 <code class="constant">libsystemd</code> <a href="pkg-config.html"><span class="citerefentry"><span class="refentrytitle">pkg-config</span>(1)</span></a>
-                file.</p></div><div class="refsect1"><a name="idm214185485344"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+                file.</p></div><div class="refsect1"><a name="idm214168606432"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
                         <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
                         <a href="sd-bus.html"><span class="citerefentry"><span class="refentrytitle">sd-bus</span>(3)</span></a>,
                         <a href="sd_bus_new.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_new</span>(3)</span></a>,
index 80ae4f1f9656f4cf8c0153825e270266c9a9c416..1088e33271caa1f9278679e0736292e518db27f6 100644 (file)
@@ -19,7 +19,7 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="sd_bus_message_get_monotonic_usec"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_bus_message_get_monotonic_usec, sd_bus_message_get_realtime_usec, sd_bus_message_get_seqnum — Retrieve the sender timestamps and sequence number of a message</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-bus.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_message_get_monotonic_usec</b>(</code></td><td>sd_bus_message *<var class="pdparam">message</var>, </td></tr><tr><td> </td><td>uint64_t *<var class="pdparam">usec</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_message_get_realtime_usec</b>(</code></td><td>sd_bus_message *<var class="pdparam">message</var>, </td></tr><tr><td> </td><td>uint64_t *<var class="pdparam">usec</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_message_get_seqnum</b>(</code></td><td>sd_bus_message *<var class="pdparam">message</var>, </td></tr><tr><td> </td><td>uint64_t *<var class="pdparam">seqnum</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214184877296"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_bus_message_get_monotonic_usec()</code>
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="sd_bus_message_get_monotonic_usec"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_bus_message_get_monotonic_usec, sd_bus_message_get_realtime_usec, sd_bus_message_get_seqnum — Retrieve the sender timestamps and sequence number of a message</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-bus.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_message_get_monotonic_usec</b>(</code></td><td>sd_bus_message *<var class="pdparam">message</var>, </td></tr><tr><td> </td><td>uint64_t *<var class="pdparam">usec</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_message_get_realtime_usec</b>(</code></td><td>sd_bus_message *<var class="pdparam">message</var>, </td></tr><tr><td> </td><td>uint64_t *<var class="pdparam">usec</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_message_get_seqnum</b>(</code></td><td>sd_bus_message *<var class="pdparam">message</var>, </td></tr><tr><td> </td><td>uint64_t *<var class="pdparam">seqnum</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214167303664"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_bus_message_get_monotonic_usec()</code>
                 returns the monotonic timestamp of the time the
                 message was sent. This value is in microseconds since
                 the "<code class="literal">CLOCK_MONOTONIC</code>" epoch, see
                 some bus transports, and only after support for them
                 has been negotiated with the
                 <a href="sd_bus_negotiate_timestamp.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_negotiate_timestamp</span>(3)</span></a>
-                call.</p></div><div class="refsect1"><a name="idm214183950752"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>On success, these calls return 0 or a positive
+                call.</p></div><div class="refsect1"><a name="idm214166630240"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>On success, these calls return 0 or a positive
                 integer. On failure, these calls return a negative
                 errno-style error code.</p><p>On success, the timestamp or sequence number is
                 returned in the specified 64-bit unsigned integer
-                variable.</p></div><div class="refsect1"><a name="idm214186390608"></a><h2 id="Errors">Errors<a class="headerlink" title="Permalink to this headline" href="#Errors">¶</a></h2><p>Returned errors may indicate the following problems:</p><div class="variablelist"><dl class="variablelist"><dt id="-EINVAL"><span class="term"><code class="varname">-EINVAL</code></span><a class="headerlink" title="Permalink to this term" href="#-EINVAL">¶</a></dt><dd><p>A specified parameter
+                variable.</p></div><div class="refsect1"><a name="idm214166835648"></a><h2 id="Errors">Errors<a class="headerlink" title="Permalink to this headline" href="#Errors">¶</a></h2><p>Returned errors may indicate the following problems:</p><div class="variablelist"><dl class="variablelist"><dt id="-EINVAL"><span class="term"><code class="varname">-EINVAL</code></span><a class="headerlink" title="Permalink to this term" href="#-EINVAL">¶</a></dt><dd><p>A specified parameter
                                 is invalid.</p></dd><dt id="-ENODATA"><span class="term"><code class="varname">-ENODATA</code></span><a class="headerlink" title="Permalink to this term" href="#-ENODATA">¶</a></dt><dd><p>No timestamp or
                                 sequence number information is
                                 attached to the passed message. This
                                 timestamping or assigning of sequence
                                 numbers, or if this feature has not
                                 been negotiated with
-                                <a href="sd_bus_negotiate_timestamp.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_negotiate_timestamp</span>(3)</span></a>.</p></dd></dl></div></div><div class="refsect1"><a name="idm214184358016"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p>The
+                                <a href="sd_bus_negotiate_timestamp.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_negotiate_timestamp</span>(3)</span></a>.</p></dd></dl></div></div><div class="refsect1"><a name="idm214166448368"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p>The
                 <code class="function">sd_bus_message_get_monotonic_usec()</code>,
                 <code class="function">sd_bus_message_get_realtime_usec()</code>,
                 and <code class="function">sd_bus_message_get_seqnum()</code>
                 interfaces are available as a shared library, which
                 can be compiled and linked to with the
                 <code class="constant">libsystemd</code> <a href="pkg-config.html"><span class="citerefentry"><span class="refentrytitle">pkg-config</span>(1)</span></a>
-                file.</p></div><div class="refsect1"><a name="idm214185485344"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+                file.</p></div><div class="refsect1"><a name="idm214168606432"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
                         <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
                         <a href="sd-bus.html"><span class="citerefentry"><span class="refentrytitle">sd-bus</span>(3)</span></a>,
                         <a href="sd_bus_new.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_new</span>(3)</span></a>,
index edbc34960e698ee4100b9674b2f393173f946d9b..8ef6368a1cdbb6d9fe2a6084a7a1737e98ea8d5e 100644 (file)
@@ -19,7 +19,7 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="sd_bus_message_get_cookie"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_bus_message_get_cookie, sd_bus_message_get_reply_cookie — Returns the transaction cookie of a message</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-bus.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_message_get_cookie</b>(</code></td><td>sd_bus_message *<var class="pdparam">message</var>, </td></tr><tr><td> </td><td>uint64_t *<var class="pdparam">cookie</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_message_get_reply_cookie</b>(</code></td><td>sd_bus_message *<var class="pdparam">message</var>, </td></tr><tr><td> </td><td>uint64_t *<var class="pdparam">cookie</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214179228944"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_bus_message_get_cookie()</code> returns
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="sd_bus_message_get_cookie"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_bus_message_get_cookie, sd_bus_message_get_reply_cookie — Returns the transaction cookie of a message</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-bus.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_message_get_cookie</b>(</code></td><td>sd_bus_message *<var class="pdparam">message</var>, </td></tr><tr><td> </td><td>uint64_t *<var class="pdparam">cookie</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_message_get_reply_cookie</b>(</code></td><td>sd_bus_message *<var class="pdparam">message</var>, </td></tr><tr><td> </td><td>uint64_t *<var class="pdparam">cookie</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214165938928"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_bus_message_get_cookie()</code> returns
                 the transaction cookie of a message. The cookie
                 uniquely identifies a message within each bus peer,
                 but is not globally unique. It is assigned when a
                 cookie, only response messages carry a reply cookie
                 field.</p><p>Both functions take a message object as first
                 parameter and a place to store the 64-bit cookie
-                in.</p></div><div class="refsect1"><a name="idm214179171968"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>On success, these calls return 0 or a positive
+                in.</p></div><div class="refsect1"><a name="idm214168449712"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>On success, these calls return 0 or a positive
                 integer. On failure, these calls return a negative
                 errno-style error code.</p><p>On success, the cookie/reply cookie is returned
-                in the specified 64-bit unsigned integer variable.</p></div><div class="refsect1"><a name="idm214179777200"></a><h2 id="Errors">Errors<a class="headerlink" title="Permalink to this headline" href="#Errors">¶</a></h2><p>Returned errors may indicate the following problems:</p><div class="variablelist"><dl class="variablelist"><dt id="-EINVAL"><span class="term"><code class="varname">-EINVAL</code></span><a class="headerlink" title="Permalink to this term" href="#-EINVAL">¶</a></dt><dd><p>A specified parameter
+                in the specified 64-bit unsigned integer variable.</p></div><div class="refsect1"><a name="idm214167487344"></a><h2 id="Errors">Errors<a class="headerlink" title="Permalink to this headline" href="#Errors">¶</a></h2><p>Returned errors may indicate the following problems:</p><div class="variablelist"><dl class="variablelist"><dt id="-EINVAL"><span class="term"><code class="varname">-EINVAL</code></span><a class="headerlink" title="Permalink to this term" href="#-EINVAL">¶</a></dt><dd><p>A specified parameter
                                 is invalid.</p></dd><dt id="-ENODATA"><span class="term"><code class="varname">-ENODATA</code></span><a class="headerlink" title="Permalink to this term" href="#-ENODATA">¶</a></dt><dd><p>No cookie has been
                                 assigned to this message. This either
                                 indicates that the message has not
                                 assigned, or that the message is not a
                                 method response message and hence
                                 carries a reply cookie
-                                field.</p></dd></dl></div></div><div class="refsect1"><a name="idm214180026160"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p>The <code class="function">sd_bus_message_get_cookie()</code>
+                                field.</p></dd></dl></div></div><div class="refsect1"><a name="idm214166489008"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p>The <code class="function">sd_bus_message_get_cookie()</code>
                 and <code class="function">sd_bus_message_get_reply_cookie()</code>
                 interfaces are available as a shared library, which can
                 be compiled and linked to with the
                 <code class="constant">libsystemd</code> <a href="pkg-config.html"><span class="citerefentry"><span class="refentrytitle">pkg-config</span>(1)</span></a>
-                file.</p></div><div class="refsect1"><a name="idm214180103824"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+                file.</p></div><div class="refsect1"><a name="idm214166665392"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
                         <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
                         <a href="sd-bus.html"><span class="citerefentry"><span class="refentrytitle">sd-bus</span>(3)</span></a>,
                         <a href="sd_bus_new.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_new</span>(3)</span></a>
index 80ae4f1f9656f4cf8c0153825e270266c9a9c416..1088e33271caa1f9278679e0736292e518db27f6 100644 (file)
@@ -19,7 +19,7 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="sd_bus_message_get_monotonic_usec"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_bus_message_get_monotonic_usec, sd_bus_message_get_realtime_usec, sd_bus_message_get_seqnum — Retrieve the sender timestamps and sequence number of a message</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-bus.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_message_get_monotonic_usec</b>(</code></td><td>sd_bus_message *<var class="pdparam">message</var>, </td></tr><tr><td> </td><td>uint64_t *<var class="pdparam">usec</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_message_get_realtime_usec</b>(</code></td><td>sd_bus_message *<var class="pdparam">message</var>, </td></tr><tr><td> </td><td>uint64_t *<var class="pdparam">usec</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_message_get_seqnum</b>(</code></td><td>sd_bus_message *<var class="pdparam">message</var>, </td></tr><tr><td> </td><td>uint64_t *<var class="pdparam">seqnum</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214184877296"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_bus_message_get_monotonic_usec()</code>
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="sd_bus_message_get_monotonic_usec"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_bus_message_get_monotonic_usec, sd_bus_message_get_realtime_usec, sd_bus_message_get_seqnum — Retrieve the sender timestamps and sequence number of a message</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-bus.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_message_get_monotonic_usec</b>(</code></td><td>sd_bus_message *<var class="pdparam">message</var>, </td></tr><tr><td> </td><td>uint64_t *<var class="pdparam">usec</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_message_get_realtime_usec</b>(</code></td><td>sd_bus_message *<var class="pdparam">message</var>, </td></tr><tr><td> </td><td>uint64_t *<var class="pdparam">usec</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_message_get_seqnum</b>(</code></td><td>sd_bus_message *<var class="pdparam">message</var>, </td></tr><tr><td> </td><td>uint64_t *<var class="pdparam">seqnum</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214167303664"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_bus_message_get_monotonic_usec()</code>
                 returns the monotonic timestamp of the time the
                 message was sent. This value is in microseconds since
                 the "<code class="literal">CLOCK_MONOTONIC</code>" epoch, see
                 some bus transports, and only after support for them
                 has been negotiated with the
                 <a href="sd_bus_negotiate_timestamp.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_negotiate_timestamp</span>(3)</span></a>
-                call.</p></div><div class="refsect1"><a name="idm214183950752"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>On success, these calls return 0 or a positive
+                call.</p></div><div class="refsect1"><a name="idm214166630240"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>On success, these calls return 0 or a positive
                 integer. On failure, these calls return a negative
                 errno-style error code.</p><p>On success, the timestamp or sequence number is
                 returned in the specified 64-bit unsigned integer
-                variable.</p></div><div class="refsect1"><a name="idm214186390608"></a><h2 id="Errors">Errors<a class="headerlink" title="Permalink to this headline" href="#Errors">¶</a></h2><p>Returned errors may indicate the following problems:</p><div class="variablelist"><dl class="variablelist"><dt id="-EINVAL"><span class="term"><code class="varname">-EINVAL</code></span><a class="headerlink" title="Permalink to this term" href="#-EINVAL">¶</a></dt><dd><p>A specified parameter
+                variable.</p></div><div class="refsect1"><a name="idm214166835648"></a><h2 id="Errors">Errors<a class="headerlink" title="Permalink to this headline" href="#Errors">¶</a></h2><p>Returned errors may indicate the following problems:</p><div class="variablelist"><dl class="variablelist"><dt id="-EINVAL"><span class="term"><code class="varname">-EINVAL</code></span><a class="headerlink" title="Permalink to this term" href="#-EINVAL">¶</a></dt><dd><p>A specified parameter
                                 is invalid.</p></dd><dt id="-ENODATA"><span class="term"><code class="varname">-ENODATA</code></span><a class="headerlink" title="Permalink to this term" href="#-ENODATA">¶</a></dt><dd><p>No timestamp or
                                 sequence number information is
                                 attached to the passed message. This
                                 timestamping or assigning of sequence
                                 numbers, or if this feature has not
                                 been negotiated with
-                                <a href="sd_bus_negotiate_timestamp.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_negotiate_timestamp</span>(3)</span></a>.</p></dd></dl></div></div><div class="refsect1"><a name="idm214184358016"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p>The
+                                <a href="sd_bus_negotiate_timestamp.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_negotiate_timestamp</span>(3)</span></a>.</p></dd></dl></div></div><div class="refsect1"><a name="idm214166448368"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p>The
                 <code class="function">sd_bus_message_get_monotonic_usec()</code>,
                 <code class="function">sd_bus_message_get_realtime_usec()</code>,
                 and <code class="function">sd_bus_message_get_seqnum()</code>
                 interfaces are available as a shared library, which
                 can be compiled and linked to with the
                 <code class="constant">libsystemd</code> <a href="pkg-config.html"><span class="citerefentry"><span class="refentrytitle">pkg-config</span>(1)</span></a>
-                file.</p></div><div class="refsect1"><a name="idm214185485344"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+                file.</p></div><div class="refsect1"><a name="idm214168606432"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
                         <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
                         <a href="sd-bus.html"><span class="citerefentry"><span class="refentrytitle">sd-bus</span>(3)</span></a>,
                         <a href="sd_bus_new.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_new</span>(3)</span></a>,
index 7840ba490da38c7167ff6c214509705971404b1b..5661e46548f4237f92f843a311bc7dca4aa6a533 100644 (file)
@@ -19,7 +19,7 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="sd_bus_negotiate_fds"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_bus_negotiate_fds, sd_bus_negotiate_timestamps, sd_bus_negotiate_creds — Control feature negotiation on bus connections</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-bus.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_negotiate_fds</b>(</code></td><td>sd_bus *<var class="pdparam">bus</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">b</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_negotiate_timestamp</b>(</code></td><td>sd_bus *<var class="pdparam">bus</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">b</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_negotiate_creds</b>(</code></td><td>sd_bus *<var class="pdparam">bus</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">b</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214190981488"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_bus_negotiate_fds()</code> controls whether
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="sd_bus_negotiate_fds"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_bus_negotiate_fds, sd_bus_negotiate_timestamps, sd_bus_negotiate_creds — Control feature negotiation on bus connections</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-bus.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_negotiate_fds</b>(</code></td><td>sd_bus *<var class="pdparam">bus</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">b</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_negotiate_timestamp</b>(</code></td><td>sd_bus *<var class="pdparam">bus</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">b</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_negotiate_creds</b>(</code></td><td>sd_bus *<var class="pdparam">bus</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">b</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214169882656"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_bus_negotiate_fds()</code> controls whether
     file descriptor passing shall be negotiated for the specified bus
     connection. It takes a bus object and a boolean, which, when true,
     enables file descriptor passing, and, when false, disables it. Note
     are attached by the kernel and cannot be manipulated by
     userspace. By default, no sender credentials are attached.</p><p>These functions may be called only before the connection has
     been started with
-    <a href="sd_bus_start.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_start</span>(3)</span></a>.</p></div><div class="refsect1"><a name="idm214190926800"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>On success, these functions returns 0 or a
+    <a href="sd_bus_start.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_start</span>(3)</span></a>.</p></div><div class="refsect1"><a name="idm214169485440"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>On success, these functions returns 0 or a
     positive integer. On failure, they return a negative errno-style
-    error code.</p></div><div class="refsect1"><a name="idm214190016432"></a><h2 id="Errors">Errors<a class="headerlink" title="Permalink to this headline" href="#Errors">¶</a></h2><p>Returned errors may indicate the following problems:</p><div class="variablelist"><dl class="variablelist"><dt id="-EPERM"><span class="term"><code class="varname">-EPERM</code></span><a class="headerlink" title="Permalink to this term" href="#-EPERM">¶</a></dt><dd><p>The bus connection has already been started.</p></dd></dl></div></div><div class="refsect1"><a name="idm214189988176"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p><code class="function">sd_bus_negotiate_fs()</code> and the other
+    error code.</p></div><div class="refsect1"><a name="idm214170824416"></a><h2 id="Errors">Errors<a class="headerlink" title="Permalink to this headline" href="#Errors">¶</a></h2><p>Returned errors may indicate the following problems:</p><div class="variablelist"><dl class="variablelist"><dt id="-EPERM"><span class="term"><code class="varname">-EPERM</code></span><a class="headerlink" title="Permalink to this term" href="#-EPERM">¶</a></dt><dd><p>The bus connection has already been started.</p></dd></dl></div></div><div class="refsect1"><a name="idm214170355552"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p><code class="function">sd_bus_negotiate_fs()</code> and the other
     functions described here are available as a shared library, which
     can be compiled and linked to with the
     <code class="constant">libsystemd</code> <a href="pkg-config.html"><span class="citerefentry"><span class="refentrytitle">pkg-config</span>(1)</span></a>
-    file.</p></div><div class="refsect1"><a name="idm214188684448"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+    file.</p></div><div class="refsect1"><a name="idm214171086400"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
       <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
       <a href="sd-bus.html"><span class="citerefentry"><span class="refentrytitle">sd-bus</span>(3)</span></a>,
       <a href="sd_bus_start.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_start</span>(3)</span></a>,
index a6603cf6bd08e0b2f11d5ef5a748403633cf4e4d..067a287f1e471140a93ceabce9a33d576612188c 100644 (file)
@@ -1,5 +1,5 @@
 '\" t
-.TH "SD_BUS_NEGOTIATE_FDS" "3" "" "systemd 214" "sd_bus_negotiate_fds"
+.TH "SD_BUS_NEGOTIATE_FDS" "3" "" "systemd 215" "sd_bus_negotiate_fds"
 .\" -----------------------------------------------------------------
 .\" * Define some portability stuff
 .\" -----------------------------------------------------------------
index 7840ba490da38c7167ff6c214509705971404b1b..5661e46548f4237f92f843a311bc7dca4aa6a533 100644 (file)
@@ -19,7 +19,7 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="sd_bus_negotiate_fds"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_bus_negotiate_fds, sd_bus_negotiate_timestamps, sd_bus_negotiate_creds — Control feature negotiation on bus connections</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-bus.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_negotiate_fds</b>(</code></td><td>sd_bus *<var class="pdparam">bus</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">b</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_negotiate_timestamp</b>(</code></td><td>sd_bus *<var class="pdparam">bus</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">b</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_negotiate_creds</b>(</code></td><td>sd_bus *<var class="pdparam">bus</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">b</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214190981488"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_bus_negotiate_fds()</code> controls whether
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="sd_bus_negotiate_fds"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_bus_negotiate_fds, sd_bus_negotiate_timestamps, sd_bus_negotiate_creds — Control feature negotiation on bus connections</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-bus.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_negotiate_fds</b>(</code></td><td>sd_bus *<var class="pdparam">bus</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">b</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_negotiate_timestamp</b>(</code></td><td>sd_bus *<var class="pdparam">bus</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">b</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_negotiate_creds</b>(</code></td><td>sd_bus *<var class="pdparam">bus</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">b</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214169882656"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_bus_negotiate_fds()</code> controls whether
     file descriptor passing shall be negotiated for the specified bus
     connection. It takes a bus object and a boolean, which, when true,
     enables file descriptor passing, and, when false, disables it. Note
     are attached by the kernel and cannot be manipulated by
     userspace. By default, no sender credentials are attached.</p><p>These functions may be called only before the connection has
     been started with
-    <a href="sd_bus_start.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_start</span>(3)</span></a>.</p></div><div class="refsect1"><a name="idm214190926800"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>On success, these functions returns 0 or a
+    <a href="sd_bus_start.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_start</span>(3)</span></a>.</p></div><div class="refsect1"><a name="idm214169485440"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>On success, these functions returns 0 or a
     positive integer. On failure, they return a negative errno-style
-    error code.</p></div><div class="refsect1"><a name="idm214190016432"></a><h2 id="Errors">Errors<a class="headerlink" title="Permalink to this headline" href="#Errors">¶</a></h2><p>Returned errors may indicate the following problems:</p><div class="variablelist"><dl class="variablelist"><dt id="-EPERM"><span class="term"><code class="varname">-EPERM</code></span><a class="headerlink" title="Permalink to this term" href="#-EPERM">¶</a></dt><dd><p>The bus connection has already been started.</p></dd></dl></div></div><div class="refsect1"><a name="idm214189988176"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p><code class="function">sd_bus_negotiate_fs()</code> and the other
+    error code.</p></div><div class="refsect1"><a name="idm214170824416"></a><h2 id="Errors">Errors<a class="headerlink" title="Permalink to this headline" href="#Errors">¶</a></h2><p>Returned errors may indicate the following problems:</p><div class="variablelist"><dl class="variablelist"><dt id="-EPERM"><span class="term"><code class="varname">-EPERM</code></span><a class="headerlink" title="Permalink to this term" href="#-EPERM">¶</a></dt><dd><p>The bus connection has already been started.</p></dd></dl></div></div><div class="refsect1"><a name="idm214170355552"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p><code class="function">sd_bus_negotiate_fs()</code> and the other
     functions described here are available as a shared library, which
     can be compiled and linked to with the
     <code class="constant">libsystemd</code> <a href="pkg-config.html"><span class="citerefentry"><span class="refentrytitle">pkg-config</span>(1)</span></a>
-    file.</p></div><div class="refsect1"><a name="idm214188684448"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+    file.</p></div><div class="refsect1"><a name="idm214171086400"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
       <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
       <a href="sd-bus.html"><span class="citerefentry"><span class="refentrytitle">sd-bus</span>(3)</span></a>,
       <a href="sd_bus_start.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_start</span>(3)</span></a>,
index 7840ba490da38c7167ff6c214509705971404b1b..5661e46548f4237f92f843a311bc7dca4aa6a533 100644 (file)
@@ -19,7 +19,7 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="sd_bus_negotiate_fds"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_bus_negotiate_fds, sd_bus_negotiate_timestamps, sd_bus_negotiate_creds — Control feature negotiation on bus connections</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-bus.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_negotiate_fds</b>(</code></td><td>sd_bus *<var class="pdparam">bus</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">b</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_negotiate_timestamp</b>(</code></td><td>sd_bus *<var class="pdparam">bus</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">b</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_negotiate_creds</b>(</code></td><td>sd_bus *<var class="pdparam">bus</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">b</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214190981488"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_bus_negotiate_fds()</code> controls whether
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="sd_bus_negotiate_fds"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_bus_negotiate_fds, sd_bus_negotiate_timestamps, sd_bus_negotiate_creds — Control feature negotiation on bus connections</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-bus.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_negotiate_fds</b>(</code></td><td>sd_bus *<var class="pdparam">bus</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">b</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_negotiate_timestamp</b>(</code></td><td>sd_bus *<var class="pdparam">bus</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">b</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_negotiate_creds</b>(</code></td><td>sd_bus *<var class="pdparam">bus</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">b</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214169882656"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_bus_negotiate_fds()</code> controls whether
     file descriptor passing shall be negotiated for the specified bus
     connection. It takes a bus object and a boolean, which, when true,
     enables file descriptor passing, and, when false, disables it. Note
     are attached by the kernel and cannot be manipulated by
     userspace. By default, no sender credentials are attached.</p><p>These functions may be called only before the connection has
     been started with
-    <a href="sd_bus_start.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_start</span>(3)</span></a>.</p></div><div class="refsect1"><a name="idm214190926800"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>On success, these functions returns 0 or a
+    <a href="sd_bus_start.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_start</span>(3)</span></a>.</p></div><div class="refsect1"><a name="idm214169485440"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>On success, these functions returns 0 or a
     positive integer. On failure, they return a negative errno-style
-    error code.</p></div><div class="refsect1"><a name="idm214190016432"></a><h2 id="Errors">Errors<a class="headerlink" title="Permalink to this headline" href="#Errors">¶</a></h2><p>Returned errors may indicate the following problems:</p><div class="variablelist"><dl class="variablelist"><dt id="-EPERM"><span class="term"><code class="varname">-EPERM</code></span><a class="headerlink" title="Permalink to this term" href="#-EPERM">¶</a></dt><dd><p>The bus connection has already been started.</p></dd></dl></div></div><div class="refsect1"><a name="idm214189988176"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p><code class="function">sd_bus_negotiate_fs()</code> and the other
+    error code.</p></div><div class="refsect1"><a name="idm214170824416"></a><h2 id="Errors">Errors<a class="headerlink" title="Permalink to this headline" href="#Errors">¶</a></h2><p>Returned errors may indicate the following problems:</p><div class="variablelist"><dl class="variablelist"><dt id="-EPERM"><span class="term"><code class="varname">-EPERM</code></span><a class="headerlink" title="Permalink to this term" href="#-EPERM">¶</a></dt><dd><p>The bus connection has already been started.</p></dd></dl></div></div><div class="refsect1"><a name="idm214170355552"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p><code class="function">sd_bus_negotiate_fs()</code> and the other
     functions described here are available as a shared library, which
     can be compiled and linked to with the
     <code class="constant">libsystemd</code> <a href="pkg-config.html"><span class="citerefentry"><span class="refentrytitle">pkg-config</span>(1)</span></a>
-    file.</p></div><div class="refsect1"><a name="idm214188684448"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+    file.</p></div><div class="refsect1"><a name="idm214171086400"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
       <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
       <a href="sd-bus.html"><span class="citerefentry"><span class="refentrytitle">sd-bus</span>(3)</span></a>,
       <a href="sd_bus_start.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_start</span>(3)</span></a>,
index 327b58ae39c7b4322ee0fa915739ff2f4fe94d51..51fd3f1a9e8a8cf8a6970ca2c589644532d892ee 100644 (file)
@@ -1,5 +1,5 @@
 '\" t
-.TH "SD_BUS_NEW" "3" "" "systemd 214" "sd_bus_new"
+.TH "SD_BUS_NEW" "3" "" "systemd 215" "sd_bus_new"
 .\" -----------------------------------------------------------------
 .\" * Define some portability stuff
 .\" -----------------------------------------------------------------
index c302ed6a661db9df34d4f2aeaaf09d23a6fa8806..b0918107d804cdd5dfdff89e932198590e550f5e 100644 (file)
@@ -19,7 +19,7 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="sd_bus_new"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_bus_new, sd_bus_ref, sd_bus_unref — Create a new bus object and create or destroy references to it</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-bus.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_new</b>(</code></td><td>sd_bus **<var class="pdparam">bus</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">sd_bus *<b class="fsfunc">sd_bus_ref</b>(</code></td><td>sd_bus *<var class="pdparam">bus</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">sd_bus *<b class="fsfunc">sd_bus_unref</b>(</code></td><td>sd_bus *<var class="pdparam">bus</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214190756512"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_bus_new()</code> creates a new bus
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="sd_bus_new"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_bus_new, sd_bus_ref, sd_bus_unref — Create a new bus object and create or destroy references to it</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-bus.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_new</b>(</code></td><td>sd_bus **<var class="pdparam">bus</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">sd_bus *<b class="fsfunc">sd_bus_ref</b>(</code></td><td>sd_bus *<var class="pdparam">bus</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">sd_bus *<b class="fsfunc">sd_bus_unref</b>(</code></td><td>sd_bus *<var class="pdparam">bus</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214198019136"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_bus_new()</code> creates a new bus
     object. This object is reference-counted, and will be destroyed
     when all references are gone. Initially, the caller of this
     function owns the sole reference.</p><p><code class="function">sd_bus_ref()</code> creates a new reference to
     zero, <em class="parameter"><code>bus</code></em> cannot be used anymore, so
     further calls to <code class="function">sd_bus_ref()</code> or
     <code class="function">sd_bus_unref()</code> are illegal.</p><p><code class="function">sd_bus_unref()</code> destroys a reference to
-    <em class="parameter"><code>bus</code></em>.</p></div><div class="refsect1"><a name="idm214190317120"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>On success, <code class="function">sd_bus_new()</code> returns 0 or a
+    <em class="parameter"><code>bus</code></em>.</p></div><div class="refsect1"><a name="idm214201910768"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>On success, <code class="function">sd_bus_new()</code> returns 0 or a
     positive integer. On failure, it returns a negative errno-style
     error code.</p><p><code class="function">sd_bus_ref</code> always returns the argument.
     </p><p><code class="function">sd_bus_unref</code> always returns
-    <code class="constant">NULL</code>.</p></div><div class="refsect1"><a name="idm214191774096"></a><h2 id="Errors">Errors<a class="headerlink" title="Permalink to this headline" href="#Errors">¶</a></h2><p>Returned errors may indicate the following problems:</p><div class="variablelist"><dl class="variablelist"><dt id="-ENOMEM"><span class="term"><code class="varname">-ENOMEM</code></span><a class="headerlink" title="Permalink to this term" href="#-ENOMEM">¶</a></dt><dd><p>Memory allocation failed.</p></dd></dl></div></div><div class="refsect1"><a name="idm214192238784"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p><code class="function">sd_bus_new()</code> and other functions
+    <code class="constant">NULL</code>.</p></div><div class="refsect1"><a name="idm214201906368"></a><h2 id="Errors">Errors<a class="headerlink" title="Permalink to this headline" href="#Errors">¶</a></h2><p>Returned errors may indicate the following problems:</p><div class="variablelist"><dl class="variablelist"><dt id="-ENOMEM"><span class="term"><code class="varname">-ENOMEM</code></span><a class="headerlink" title="Permalink to this term" href="#-ENOMEM">¶</a></dt><dd><p>Memory allocation failed.</p></dd></dl></div></div><div class="refsect1"><a name="idm214201903264"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p><code class="function">sd_bus_new()</code> and other functions
     described here are available as a shared library, which can be
     compiled and linked to with the
     <code class="constant">libsystemd</code> <a href="pkg-config.html"><span class="citerefentry"><span class="refentrytitle">pkg-config</span>(1)</span></a>
-    file.</p></div><div class="refsect1"><a name="idm214192650416"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+    file.</p></div><div class="refsect1"><a name="idm214201900048"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
       <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
       <a href="sd-bus.html"><span class="citerefentry"><span class="refentrytitle">sd-bus</span>(3)</span></a>,
       <a href="sd_bus_open_user.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_open_user</span>(3)</span></a>,
index 0cca0e7d843c903b9f615ca1c09f4123f87daf53..751aa00ecd6d15316a70d836ed753cddc162564e 100644 (file)
@@ -19,7 +19,7 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="sd_bus_open_user"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_bus_open_user, sd_bus_open_system, sd_bus_open_system_remote, sd_bus_open_system_container, sd_bus_default_user, sd_bus_default_system — Open a connection to the system or user bus</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-bus.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_open_user</b>(</code></td><td>sd_bus **<var class="pdparam">bus</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_open_system</b>(</code></td><td>sd_bus **<var class="pdparam">bus</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_open_system_remote</b>(</code></td><td>const char *<var class="pdparam">host</var>, </td></tr><tr><td> </td><td>sd_bus **<var class="pdparam">bus</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_open_system_container</b>(</code></td><td>const char *<var class="pdparam">machine</var>, </td></tr><tr><td> </td><td>sd_bus **<var class="pdparam">bus</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_default_user</b>(</code></td><td>sd_bus **<var class="pdparam">bus</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_default_system</b>(</code></td><td>sd_bus **<var class="pdparam">bus</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214183470752"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_bus_open_user()</code> creates a new bus
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="sd_bus_open_user"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_bus_open_user, sd_bus_open_system, sd_bus_open_system_remote, sd_bus_open_system_container, sd_bus_default_user, sd_bus_default_system — Open a connection to the system or user bus</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-bus.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_open_user</b>(</code></td><td>sd_bus **<var class="pdparam">bus</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_open_system</b>(</code></td><td>sd_bus **<var class="pdparam">bus</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_open_system_remote</b>(</code></td><td>const char *<var class="pdparam">host</var>, </td></tr><tr><td> </td><td>sd_bus **<var class="pdparam">bus</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_open_system_container</b>(</code></td><td>const char *<var class="pdparam">machine</var>, </td></tr><tr><td> </td><td>sd_bus **<var class="pdparam">bus</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_default_user</b>(</code></td><td>sd_bus **<var class="pdparam">bus</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_default_system</b>(</code></td><td>sd_bus **<var class="pdparam">bus</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214201032336"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_bus_open_user()</code> creates a new bus
     object and opens a connection to the user bus.
     <code class="function">sd_bus_open_system()</code> does the same, but
     connects to the system bus.</p><p>If the <code class="varname">$DBUS_SESSION_BUS_ADDRESS</code> environment
@@ -48,9 +48,9 @@
     <code class="function">sd_bus_default_user()</code>, and subsequent
     invocations returns a reference to the same object.</p><p><code class="function">sd_bus_default_system()</code> is similar to
     <code class="function">sd_bus_default_user()</code>, but connects to the
-    system bus.</p></div><div class="refsect1"><a name="idm214182906832"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>On success, these calls return 0 or a positive
+    system bus.</p></div><div class="refsect1"><a name="idm214201008656"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>On success, these calls return 0 or a positive
     integer. On failure, these calls return a negative
-    errno-style error code.</p></div><div class="refsect1"><a name="idm214183176144"></a><h2 id="Reference ownership">Reference ownership<a class="headerlink" title="Permalink to this headline" href="#Reference%20ownership">¶</a></h2><p>Functions <code class="function">sd_bus_open_user()</code>,
+    errno-style error code.</p></div><div class="refsect1"><a name="idm214201007328"></a><h2 id="Reference ownership">Reference ownership<a class="headerlink" title="Permalink to this headline" href="#Reference%20ownership">¶</a></h2><p>Functions <code class="function">sd_bus_open_user()</code>,
     <code class="function">sd_bus_open_system()</code>,
     <code class="function">sd_bus_open_system_remote()</code>, and
     <code class="function">sd_bus_open_system_machine()</code> return a new
     <a href="sd_bus_unref.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_unref</span>(3)</span></a>.
     </p><p>The functions <code class="function">sd_bus_default_user()</code> and
     <code class="function">sd_bus_default_system()</code> do not create a new
-    reference.</p></div><div class="refsect1"><a name="idm214182582704"></a><h2 id="Errors">Errors<a class="headerlink" title="Permalink to this headline" href="#Errors">¶</a></h2><p>Returned errors may indicate the following problems:</p><div class="variablelist"><p>In addition, any further connection-related errors may be
+    reference.</p></div><div class="refsect1"><a name="idm214201000368"></a><h2 id="Errors">Errors<a class="headerlink" title="Permalink to this headline" href="#Errors">¶</a></h2><p>Returned errors may indicate the following problems:</p><div class="variablelist"><p>In addition, any further connection-related errors may be
       by returned. See <a href="sd_bus_send.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_send</span>(3)</span></a>.</p><dl class="variablelist"><dt id="-EINVAL"><span class="term"><code class="varname">-EINVAL</code></span><a class="headerlink" title="Permalink to this term" href="#-EINVAL">¶</a></dt><dd><p>Specified parameter is invalid
         (<code class="constant">NULL</code> in case of output
-        parameters).</p></dd><dt id="-ENOMEM"><span class="term"><code class="varname">-ENOMEM</code></span><a class="headerlink" title="Permalink to this term" href="#-ENOMEM">¶</a></dt><dd><p>Memory allocation failed.</p></dd></dl></div></div><div class="refsect1"><a name="idm214182889312"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p><code class="function">sd_bus_open_user()</code> and other functions
+        parameters).</p></dd><dt id="-ENOMEM"><span class="term"><code class="varname">-ENOMEM</code></span><a class="headerlink" title="Permalink to this term" href="#-ENOMEM">¶</a></dt><dd><p>Memory allocation failed.</p></dd></dl></div></div><div class="refsect1"><a name="idm214200994176"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p><code class="function">sd_bus_open_user()</code> and other functions
     described here are available as a shared library, which can be
     compiled and linked to with the
     <code class="constant">libsystemd</code> <a href="pkg-config.html"><span class="citerefentry"><span class="refentrytitle">pkg-config</span>(1)</span></a>
-    file.</p></div><div class="refsect1"><a name="idm214184093888"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+    file.</p></div><div class="refsect1"><a name="idm214200991008"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
       <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
       <a href="sd-bus.html"><span class="citerefentry"><span class="refentrytitle">sd-bus</span>(3)</span></a>,
       <a href="sd_bus_new.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_new</span>(3)</span></a>,
index 0cca0e7d843c903b9f615ca1c09f4123f87daf53..751aa00ecd6d15316a70d836ed753cddc162564e 100644 (file)
@@ -19,7 +19,7 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="sd_bus_open_user"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_bus_open_user, sd_bus_open_system, sd_bus_open_system_remote, sd_bus_open_system_container, sd_bus_default_user, sd_bus_default_system — Open a connection to the system or user bus</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-bus.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_open_user</b>(</code></td><td>sd_bus **<var class="pdparam">bus</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_open_system</b>(</code></td><td>sd_bus **<var class="pdparam">bus</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_open_system_remote</b>(</code></td><td>const char *<var class="pdparam">host</var>, </td></tr><tr><td> </td><td>sd_bus **<var class="pdparam">bus</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_open_system_container</b>(</code></td><td>const char *<var class="pdparam">machine</var>, </td></tr><tr><td> </td><td>sd_bus **<var class="pdparam">bus</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_default_user</b>(</code></td><td>sd_bus **<var class="pdparam">bus</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_default_system</b>(</code></td><td>sd_bus **<var class="pdparam">bus</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214183470752"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_bus_open_user()</code> creates a new bus
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="sd_bus_open_user"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_bus_open_user, sd_bus_open_system, sd_bus_open_system_remote, sd_bus_open_system_container, sd_bus_default_user, sd_bus_default_system — Open a connection to the system or user bus</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-bus.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_open_user</b>(</code></td><td>sd_bus **<var class="pdparam">bus</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_open_system</b>(</code></td><td>sd_bus **<var class="pdparam">bus</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_open_system_remote</b>(</code></td><td>const char *<var class="pdparam">host</var>, </td></tr><tr><td> </td><td>sd_bus **<var class="pdparam">bus</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_open_system_container</b>(</code></td><td>const char *<var class="pdparam">machine</var>, </td></tr><tr><td> </td><td>sd_bus **<var class="pdparam">bus</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_default_user</b>(</code></td><td>sd_bus **<var class="pdparam">bus</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_default_system</b>(</code></td><td>sd_bus **<var class="pdparam">bus</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214201032336"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_bus_open_user()</code> creates a new bus
     object and opens a connection to the user bus.
     <code class="function">sd_bus_open_system()</code> does the same, but
     connects to the system bus.</p><p>If the <code class="varname">$DBUS_SESSION_BUS_ADDRESS</code> environment
@@ -48,9 +48,9 @@
     <code class="function">sd_bus_default_user()</code>, and subsequent
     invocations returns a reference to the same object.</p><p><code class="function">sd_bus_default_system()</code> is similar to
     <code class="function">sd_bus_default_user()</code>, but connects to the
-    system bus.</p></div><div class="refsect1"><a name="idm214182906832"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>On success, these calls return 0 or a positive
+    system bus.</p></div><div class="refsect1"><a name="idm214201008656"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>On success, these calls return 0 or a positive
     integer. On failure, these calls return a negative
-    errno-style error code.</p></div><div class="refsect1"><a name="idm214183176144"></a><h2 id="Reference ownership">Reference ownership<a class="headerlink" title="Permalink to this headline" href="#Reference%20ownership">¶</a></h2><p>Functions <code class="function">sd_bus_open_user()</code>,
+    errno-style error code.</p></div><div class="refsect1"><a name="idm214201007328"></a><h2 id="Reference ownership">Reference ownership<a class="headerlink" title="Permalink to this headline" href="#Reference%20ownership">¶</a></h2><p>Functions <code class="function">sd_bus_open_user()</code>,
     <code class="function">sd_bus_open_system()</code>,
     <code class="function">sd_bus_open_system_remote()</code>, and
     <code class="function">sd_bus_open_system_machine()</code> return a new
     <a href="sd_bus_unref.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_unref</span>(3)</span></a>.
     </p><p>The functions <code class="function">sd_bus_default_user()</code> and
     <code class="function">sd_bus_default_system()</code> do not create a new
-    reference.</p></div><div class="refsect1"><a name="idm214182582704"></a><h2 id="Errors">Errors<a class="headerlink" title="Permalink to this headline" href="#Errors">¶</a></h2><p>Returned errors may indicate the following problems:</p><div class="variablelist"><p>In addition, any further connection-related errors may be
+    reference.</p></div><div class="refsect1"><a name="idm214201000368"></a><h2 id="Errors">Errors<a class="headerlink" title="Permalink to this headline" href="#Errors">¶</a></h2><p>Returned errors may indicate the following problems:</p><div class="variablelist"><p>In addition, any further connection-related errors may be
       by returned. See <a href="sd_bus_send.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_send</span>(3)</span></a>.</p><dl class="variablelist"><dt id="-EINVAL"><span class="term"><code class="varname">-EINVAL</code></span><a class="headerlink" title="Permalink to this term" href="#-EINVAL">¶</a></dt><dd><p>Specified parameter is invalid
         (<code class="constant">NULL</code> in case of output
-        parameters).</p></dd><dt id="-ENOMEM"><span class="term"><code class="varname">-ENOMEM</code></span><a class="headerlink" title="Permalink to this term" href="#-ENOMEM">¶</a></dt><dd><p>Memory allocation failed.</p></dd></dl></div></div><div class="refsect1"><a name="idm214182889312"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p><code class="function">sd_bus_open_user()</code> and other functions
+        parameters).</p></dd><dt id="-ENOMEM"><span class="term"><code class="varname">-ENOMEM</code></span><a class="headerlink" title="Permalink to this term" href="#-ENOMEM">¶</a></dt><dd><p>Memory allocation failed.</p></dd></dl></div></div><div class="refsect1"><a name="idm214200994176"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p><code class="function">sd_bus_open_user()</code> and other functions
     described here are available as a shared library, which can be
     compiled and linked to with the
     <code class="constant">libsystemd</code> <a href="pkg-config.html"><span class="citerefentry"><span class="refentrytitle">pkg-config</span>(1)</span></a>
-    file.</p></div><div class="refsect1"><a name="idm214184093888"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+    file.</p></div><div class="refsect1"><a name="idm214200991008"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
       <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
       <a href="sd-bus.html"><span class="citerefentry"><span class="refentrytitle">sd-bus</span>(3)</span></a>,
       <a href="sd_bus_new.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_new</span>(3)</span></a>,
index 0cca0e7d843c903b9f615ca1c09f4123f87daf53..751aa00ecd6d15316a70d836ed753cddc162564e 100644 (file)
@@ -19,7 +19,7 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="sd_bus_open_user"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_bus_open_user, sd_bus_open_system, sd_bus_open_system_remote, sd_bus_open_system_container, sd_bus_default_user, sd_bus_default_system — Open a connection to the system or user bus</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-bus.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_open_user</b>(</code></td><td>sd_bus **<var class="pdparam">bus</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_open_system</b>(</code></td><td>sd_bus **<var class="pdparam">bus</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_open_system_remote</b>(</code></td><td>const char *<var class="pdparam">host</var>, </td></tr><tr><td> </td><td>sd_bus **<var class="pdparam">bus</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_open_system_container</b>(</code></td><td>const char *<var class="pdparam">machine</var>, </td></tr><tr><td> </td><td>sd_bus **<var class="pdparam">bus</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_default_user</b>(</code></td><td>sd_bus **<var class="pdparam">bus</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_default_system</b>(</code></td><td>sd_bus **<var class="pdparam">bus</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214183470752"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_bus_open_user()</code> creates a new bus
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="sd_bus_open_user"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_bus_open_user, sd_bus_open_system, sd_bus_open_system_remote, sd_bus_open_system_container, sd_bus_default_user, sd_bus_default_system — Open a connection to the system or user bus</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-bus.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_open_user</b>(</code></td><td>sd_bus **<var class="pdparam">bus</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_open_system</b>(</code></td><td>sd_bus **<var class="pdparam">bus</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_open_system_remote</b>(</code></td><td>const char *<var class="pdparam">host</var>, </td></tr><tr><td> </td><td>sd_bus **<var class="pdparam">bus</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_open_system_container</b>(</code></td><td>const char *<var class="pdparam">machine</var>, </td></tr><tr><td> </td><td>sd_bus **<var class="pdparam">bus</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_default_user</b>(</code></td><td>sd_bus **<var class="pdparam">bus</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_default_system</b>(</code></td><td>sd_bus **<var class="pdparam">bus</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214201032336"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_bus_open_user()</code> creates a new bus
     object and opens a connection to the user bus.
     <code class="function">sd_bus_open_system()</code> does the same, but
     connects to the system bus.</p><p>If the <code class="varname">$DBUS_SESSION_BUS_ADDRESS</code> environment
@@ -48,9 +48,9 @@
     <code class="function">sd_bus_default_user()</code>, and subsequent
     invocations returns a reference to the same object.</p><p><code class="function">sd_bus_default_system()</code> is similar to
     <code class="function">sd_bus_default_user()</code>, but connects to the
-    system bus.</p></div><div class="refsect1"><a name="idm214182906832"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>On success, these calls return 0 or a positive
+    system bus.</p></div><div class="refsect1"><a name="idm214201008656"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>On success, these calls return 0 or a positive
     integer. On failure, these calls return a negative
-    errno-style error code.</p></div><div class="refsect1"><a name="idm214183176144"></a><h2 id="Reference ownership">Reference ownership<a class="headerlink" title="Permalink to this headline" href="#Reference%20ownership">¶</a></h2><p>Functions <code class="function">sd_bus_open_user()</code>,
+    errno-style error code.</p></div><div class="refsect1"><a name="idm214201007328"></a><h2 id="Reference ownership">Reference ownership<a class="headerlink" title="Permalink to this headline" href="#Reference%20ownership">¶</a></h2><p>Functions <code class="function">sd_bus_open_user()</code>,
     <code class="function">sd_bus_open_system()</code>,
     <code class="function">sd_bus_open_system_remote()</code>, and
     <code class="function">sd_bus_open_system_machine()</code> return a new
     <a href="sd_bus_unref.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_unref</span>(3)</span></a>.
     </p><p>The functions <code class="function">sd_bus_default_user()</code> and
     <code class="function">sd_bus_default_system()</code> do not create a new
-    reference.</p></div><div class="refsect1"><a name="idm214182582704"></a><h2 id="Errors">Errors<a class="headerlink" title="Permalink to this headline" href="#Errors">¶</a></h2><p>Returned errors may indicate the following problems:</p><div class="variablelist"><p>In addition, any further connection-related errors may be
+    reference.</p></div><div class="refsect1"><a name="idm214201000368"></a><h2 id="Errors">Errors<a class="headerlink" title="Permalink to this headline" href="#Errors">¶</a></h2><p>Returned errors may indicate the following problems:</p><div class="variablelist"><p>In addition, any further connection-related errors may be
       by returned. See <a href="sd_bus_send.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_send</span>(3)</span></a>.</p><dl class="variablelist"><dt id="-EINVAL"><span class="term"><code class="varname">-EINVAL</code></span><a class="headerlink" title="Permalink to this term" href="#-EINVAL">¶</a></dt><dd><p>Specified parameter is invalid
         (<code class="constant">NULL</code> in case of output
-        parameters).</p></dd><dt id="-ENOMEM"><span class="term"><code class="varname">-ENOMEM</code></span><a class="headerlink" title="Permalink to this term" href="#-ENOMEM">¶</a></dt><dd><p>Memory allocation failed.</p></dd></dl></div></div><div class="refsect1"><a name="idm214182889312"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p><code class="function">sd_bus_open_user()</code> and other functions
+        parameters).</p></dd><dt id="-ENOMEM"><span class="term"><code class="varname">-ENOMEM</code></span><a class="headerlink" title="Permalink to this term" href="#-ENOMEM">¶</a></dt><dd><p>Memory allocation failed.</p></dd></dl></div></div><div class="refsect1"><a name="idm214200994176"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p><code class="function">sd_bus_open_user()</code> and other functions
     described here are available as a shared library, which can be
     compiled and linked to with the
     <code class="constant">libsystemd</code> <a href="pkg-config.html"><span class="citerefentry"><span class="refentrytitle">pkg-config</span>(1)</span></a>
-    file.</p></div><div class="refsect1"><a name="idm214184093888"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+    file.</p></div><div class="refsect1"><a name="idm214200991008"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
       <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
       <a href="sd-bus.html"><span class="citerefentry"><span class="refentrytitle">sd-bus</span>(3)</span></a>,
       <a href="sd_bus_new.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_new</span>(3)</span></a>,
index 50145c78053416d7ea11df5fa8203bca171bd422..256fc5645acb69f1c8c770bdbb71987be0db5b2c 100644 (file)
@@ -1,5 +1,5 @@
 '\" t
-.TH "SD_BUS_OPEN_USER" "3" "" "systemd 214" "sd_bus_open_user"
+.TH "SD_BUS_OPEN_USER" "3" "" "systemd 215" "sd_bus_open_user"
 .\" -----------------------------------------------------------------
 .\" * Define some portability stuff
 .\" -----------------------------------------------------------------
index 0cca0e7d843c903b9f615ca1c09f4123f87daf53..751aa00ecd6d15316a70d836ed753cddc162564e 100644 (file)
@@ -19,7 +19,7 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="sd_bus_open_user"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_bus_open_user, sd_bus_open_system, sd_bus_open_system_remote, sd_bus_open_system_container, sd_bus_default_user, sd_bus_default_system — Open a connection to the system or user bus</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-bus.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_open_user</b>(</code></td><td>sd_bus **<var class="pdparam">bus</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_open_system</b>(</code></td><td>sd_bus **<var class="pdparam">bus</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_open_system_remote</b>(</code></td><td>const char *<var class="pdparam">host</var>, </td></tr><tr><td> </td><td>sd_bus **<var class="pdparam">bus</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_open_system_container</b>(</code></td><td>const char *<var class="pdparam">machine</var>, </td></tr><tr><td> </td><td>sd_bus **<var class="pdparam">bus</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_default_user</b>(</code></td><td>sd_bus **<var class="pdparam">bus</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_default_system</b>(</code></td><td>sd_bus **<var class="pdparam">bus</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214183470752"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_bus_open_user()</code> creates a new bus
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="sd_bus_open_user"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_bus_open_user, sd_bus_open_system, sd_bus_open_system_remote, sd_bus_open_system_container, sd_bus_default_user, sd_bus_default_system — Open a connection to the system or user bus</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-bus.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_open_user</b>(</code></td><td>sd_bus **<var class="pdparam">bus</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_open_system</b>(</code></td><td>sd_bus **<var class="pdparam">bus</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_open_system_remote</b>(</code></td><td>const char *<var class="pdparam">host</var>, </td></tr><tr><td> </td><td>sd_bus **<var class="pdparam">bus</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_open_system_container</b>(</code></td><td>const char *<var class="pdparam">machine</var>, </td></tr><tr><td> </td><td>sd_bus **<var class="pdparam">bus</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_default_user</b>(</code></td><td>sd_bus **<var class="pdparam">bus</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_default_system</b>(</code></td><td>sd_bus **<var class="pdparam">bus</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214201032336"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_bus_open_user()</code> creates a new bus
     object and opens a connection to the user bus.
     <code class="function">sd_bus_open_system()</code> does the same, but
     connects to the system bus.</p><p>If the <code class="varname">$DBUS_SESSION_BUS_ADDRESS</code> environment
@@ -48,9 +48,9 @@
     <code class="function">sd_bus_default_user()</code>, and subsequent
     invocations returns a reference to the same object.</p><p><code class="function">sd_bus_default_system()</code> is similar to
     <code class="function">sd_bus_default_user()</code>, but connects to the
-    system bus.</p></div><div class="refsect1"><a name="idm214182906832"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>On success, these calls return 0 or a positive
+    system bus.</p></div><div class="refsect1"><a name="idm214201008656"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>On success, these calls return 0 or a positive
     integer. On failure, these calls return a negative
-    errno-style error code.</p></div><div class="refsect1"><a name="idm214183176144"></a><h2 id="Reference ownership">Reference ownership<a class="headerlink" title="Permalink to this headline" href="#Reference%20ownership">¶</a></h2><p>Functions <code class="function">sd_bus_open_user()</code>,
+    errno-style error code.</p></div><div class="refsect1"><a name="idm214201007328"></a><h2 id="Reference ownership">Reference ownership<a class="headerlink" title="Permalink to this headline" href="#Reference%20ownership">¶</a></h2><p>Functions <code class="function">sd_bus_open_user()</code>,
     <code class="function">sd_bus_open_system()</code>,
     <code class="function">sd_bus_open_system_remote()</code>, and
     <code class="function">sd_bus_open_system_machine()</code> return a new
     <a href="sd_bus_unref.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_unref</span>(3)</span></a>.
     </p><p>The functions <code class="function">sd_bus_default_user()</code> and
     <code class="function">sd_bus_default_system()</code> do not create a new
-    reference.</p></div><div class="refsect1"><a name="idm214182582704"></a><h2 id="Errors">Errors<a class="headerlink" title="Permalink to this headline" href="#Errors">¶</a></h2><p>Returned errors may indicate the following problems:</p><div class="variablelist"><p>In addition, any further connection-related errors may be
+    reference.</p></div><div class="refsect1"><a name="idm214201000368"></a><h2 id="Errors">Errors<a class="headerlink" title="Permalink to this headline" href="#Errors">¶</a></h2><p>Returned errors may indicate the following problems:</p><div class="variablelist"><p>In addition, any further connection-related errors may be
       by returned. See <a href="sd_bus_send.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_send</span>(3)</span></a>.</p><dl class="variablelist"><dt id="-EINVAL"><span class="term"><code class="varname">-EINVAL</code></span><a class="headerlink" title="Permalink to this term" href="#-EINVAL">¶</a></dt><dd><p>Specified parameter is invalid
         (<code class="constant">NULL</code> in case of output
-        parameters).</p></dd><dt id="-ENOMEM"><span class="term"><code class="varname">-ENOMEM</code></span><a class="headerlink" title="Permalink to this term" href="#-ENOMEM">¶</a></dt><dd><p>Memory allocation failed.</p></dd></dl></div></div><div class="refsect1"><a name="idm214182889312"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p><code class="function">sd_bus_open_user()</code> and other functions
+        parameters).</p></dd><dt id="-ENOMEM"><span class="term"><code class="varname">-ENOMEM</code></span><a class="headerlink" title="Permalink to this term" href="#-ENOMEM">¶</a></dt><dd><p>Memory allocation failed.</p></dd></dl></div></div><div class="refsect1"><a name="idm214200994176"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p><code class="function">sd_bus_open_user()</code> and other functions
     described here are available as a shared library, which can be
     compiled and linked to with the
     <code class="constant">libsystemd</code> <a href="pkg-config.html"><span class="citerefentry"><span class="refentrytitle">pkg-config</span>(1)</span></a>
-    file.</p></div><div class="refsect1"><a name="idm214184093888"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+    file.</p></div><div class="refsect1"><a name="idm214200991008"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
       <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
       <a href="sd-bus.html"><span class="citerefentry"><span class="refentrytitle">sd-bus</span>(3)</span></a>,
       <a href="sd_bus_new.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_new</span>(3)</span></a>,
index e44af6c42b380f7cbfe76d8e792dd4fb54480dca..f945a48fac3db43b02578fe15dbdf2e7deb3f147 100644 (file)
@@ -19,7 +19,7 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="sd_bus_path_encode"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_bus_path_encode, sd_bus_path_decode — Convert an external identifier into an object path and back</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-bus.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_path_encode</b>(</code></td><td>const char *<var class="pdparam">prefix</var>, </td></tr><tr><td> </td><td>const char *<var class="pdparam">external_id</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">ret_path</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_path_decode</b>(</code></td><td>const char *<var class="pdparam">prefix</var>, </td></tr><tr><td> </td><td>const char *<var class="pdparam">path</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">ret_external_id</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214198368064"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_bus_path_encode()</code> and
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="sd_bus_path_encode"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_bus_path_encode, sd_bus_path_decode — Convert an external identifier into an object path and back</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-bus.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_path_encode</b>(</code></td><td>const char *<var class="pdparam">prefix</var>, </td></tr><tr><td> </td><td>const char *<var class="pdparam">external_id</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">ret_path</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_path_decode</b>(</code></td><td>const char *<var class="pdparam">prefix</var>, </td></tr><tr><td> </td><td>const char *<var class="pdparam">path</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">ret_external_id</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214181642128"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_bus_path_encode()</code> and
     <code class="function">sd_bus_path_decode()</code> convert external
     identifier strings into object paths and back. These functions are
     useful to map application-specific string identifiers of any kind
@@ -49,7 +49,7 @@
     external identifier string.</p><p>The escaping used will replace all characters which are
     invalid in a bus object path by "<code class="literal">_</code>", followed by a
     hexadecimal value. As a special case, the empty string will be
-    replaced by a lone "<code class="literal">_</code>".</p></div><div class="refsect1"><a name="idm214199750432"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>On success, <code class="function">sd_bus_path_encode()</code>
+    replaced by a lone "<code class="literal">_</code>".</p></div><div class="refsect1"><a name="idm214185531008"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>On success, <code class="function">sd_bus_path_encode()</code>
     returns positive or 0, and a valid bus path in the return
     argument. On success, <code class="function">sd_bus_path_decode()</code>
     returns a positive value if the prefixed matched, or 0 if it
     number is returned by either function. The returned strings must
     be
     <a href="free.html"><span class="citerefentry"><span class="refentrytitle">free</span>(3)</span></a>'d
-    by the caller.</p></div><div class="refsect1"><a name="idm214198133152"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p><code class="function">sd_bus_path_encode()</code> and
+    by the caller.</p></div><div class="refsect1"><a name="idm214185527104"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p><code class="function">sd_bus_path_encode()</code> and
     <code class="function">sd_bus_path_decode()</code> are available as a
     shared library, which can be compiled and linked to with the
     <code class="constant">libsystemd</code> <a href="pkg-config.html"><span class="citerefentry"><span class="refentrytitle">pkg-config</span>(1)</span></a>
-    file.</p></div><div class="refsect1"><a name="idm214200275024"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+    file.</p></div><div class="refsect1"><a name="idm214185523200"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
       <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
       <a href="sd-bus.html"><span class="citerefentry"><span class="refentrytitle">sd-bus</span>(3)</span></a>,
       <a href="free.html"><span class="citerefentry"><span class="refentrytitle">free</span>(3)</span></a>
index 439a67e43fb283ab7ae94d9e809d97e9e180c3f8..2eec3d9eb2d8ba59ec22f817dd29953ebf4bef2d 100644 (file)
@@ -1,5 +1,5 @@
 '\" t
-.TH "SD_BUS_PATH_ENCODE" "3" "" "systemd 214" "sd_bus_path_encode"
+.TH "SD_BUS_PATH_ENCODE" "3" "" "systemd 215" "sd_bus_path_encode"
 .\" -----------------------------------------------------------------
 .\" * Define some portability stuff
 .\" -----------------------------------------------------------------
index e44af6c42b380f7cbfe76d8e792dd4fb54480dca..f945a48fac3db43b02578fe15dbdf2e7deb3f147 100644 (file)
@@ -19,7 +19,7 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="sd_bus_path_encode"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_bus_path_encode, sd_bus_path_decode — Convert an external identifier into an object path and back</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-bus.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_path_encode</b>(</code></td><td>const char *<var class="pdparam">prefix</var>, </td></tr><tr><td> </td><td>const char *<var class="pdparam">external_id</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">ret_path</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_path_decode</b>(</code></td><td>const char *<var class="pdparam">prefix</var>, </td></tr><tr><td> </td><td>const char *<var class="pdparam">path</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">ret_external_id</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214198368064"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_bus_path_encode()</code> and
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="sd_bus_path_encode"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_bus_path_encode, sd_bus_path_decode — Convert an external identifier into an object path and back</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-bus.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_path_encode</b>(</code></td><td>const char *<var class="pdparam">prefix</var>, </td></tr><tr><td> </td><td>const char *<var class="pdparam">external_id</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">ret_path</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_path_decode</b>(</code></td><td>const char *<var class="pdparam">prefix</var>, </td></tr><tr><td> </td><td>const char *<var class="pdparam">path</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">ret_external_id</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214181642128"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_bus_path_encode()</code> and
     <code class="function">sd_bus_path_decode()</code> convert external
     identifier strings into object paths and back. These functions are
     useful to map application-specific string identifiers of any kind
@@ -49,7 +49,7 @@
     external identifier string.</p><p>The escaping used will replace all characters which are
     invalid in a bus object path by "<code class="literal">_</code>", followed by a
     hexadecimal value. As a special case, the empty string will be
-    replaced by a lone "<code class="literal">_</code>".</p></div><div class="refsect1"><a name="idm214199750432"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>On success, <code class="function">sd_bus_path_encode()</code>
+    replaced by a lone "<code class="literal">_</code>".</p></div><div class="refsect1"><a name="idm214185531008"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>On success, <code class="function">sd_bus_path_encode()</code>
     returns positive or 0, and a valid bus path in the return
     argument. On success, <code class="function">sd_bus_path_decode()</code>
     returns a positive value if the prefixed matched, or 0 if it
     number is returned by either function. The returned strings must
     be
     <a href="free.html"><span class="citerefentry"><span class="refentrytitle">free</span>(3)</span></a>'d
-    by the caller.</p></div><div class="refsect1"><a name="idm214198133152"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p><code class="function">sd_bus_path_encode()</code> and
+    by the caller.</p></div><div class="refsect1"><a name="idm214185527104"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p><code class="function">sd_bus_path_encode()</code> and
     <code class="function">sd_bus_path_decode()</code> are available as a
     shared library, which can be compiled and linked to with the
     <code class="constant">libsystemd</code> <a href="pkg-config.html"><span class="citerefentry"><span class="refentrytitle">pkg-config</span>(1)</span></a>
-    file.</p></div><div class="refsect1"><a name="idm214200275024"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+    file.</p></div><div class="refsect1"><a name="idm214185523200"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
       <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
       <a href="sd-bus.html"><span class="citerefentry"><span class="refentrytitle">sd-bus</span>(3)</span></a>,
       <a href="free.html"><span class="citerefentry"><span class="refentrytitle">free</span>(3)</span></a>
index c302ed6a661db9df34d4f2aeaaf09d23a6fa8806..b0918107d804cdd5dfdff89e932198590e550f5e 100644 (file)
@@ -19,7 +19,7 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="sd_bus_new"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_bus_new, sd_bus_ref, sd_bus_unref — Create a new bus object and create or destroy references to it</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-bus.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_new</b>(</code></td><td>sd_bus **<var class="pdparam">bus</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">sd_bus *<b class="fsfunc">sd_bus_ref</b>(</code></td><td>sd_bus *<var class="pdparam">bus</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">sd_bus *<b class="fsfunc">sd_bus_unref</b>(</code></td><td>sd_bus *<var class="pdparam">bus</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214190756512"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_bus_new()</code> creates a new bus
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="sd_bus_new"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_bus_new, sd_bus_ref, sd_bus_unref — Create a new bus object and create or destroy references to it</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-bus.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_new</b>(</code></td><td>sd_bus **<var class="pdparam">bus</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">sd_bus *<b class="fsfunc">sd_bus_ref</b>(</code></td><td>sd_bus *<var class="pdparam">bus</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">sd_bus *<b class="fsfunc">sd_bus_unref</b>(</code></td><td>sd_bus *<var class="pdparam">bus</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214198019136"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_bus_new()</code> creates a new bus
     object. This object is reference-counted, and will be destroyed
     when all references are gone. Initially, the caller of this
     function owns the sole reference.</p><p><code class="function">sd_bus_ref()</code> creates a new reference to
     zero, <em class="parameter"><code>bus</code></em> cannot be used anymore, so
     further calls to <code class="function">sd_bus_ref()</code> or
     <code class="function">sd_bus_unref()</code> are illegal.</p><p><code class="function">sd_bus_unref()</code> destroys a reference to
-    <em class="parameter"><code>bus</code></em>.</p></div><div class="refsect1"><a name="idm214190317120"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>On success, <code class="function">sd_bus_new()</code> returns 0 or a
+    <em class="parameter"><code>bus</code></em>.</p></div><div class="refsect1"><a name="idm214201910768"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>On success, <code class="function">sd_bus_new()</code> returns 0 or a
     positive integer. On failure, it returns a negative errno-style
     error code.</p><p><code class="function">sd_bus_ref</code> always returns the argument.
     </p><p><code class="function">sd_bus_unref</code> always returns
-    <code class="constant">NULL</code>.</p></div><div class="refsect1"><a name="idm214191774096"></a><h2 id="Errors">Errors<a class="headerlink" title="Permalink to this headline" href="#Errors">¶</a></h2><p>Returned errors may indicate the following problems:</p><div class="variablelist"><dl class="variablelist"><dt id="-ENOMEM"><span class="term"><code class="varname">-ENOMEM</code></span><a class="headerlink" title="Permalink to this term" href="#-ENOMEM">¶</a></dt><dd><p>Memory allocation failed.</p></dd></dl></div></div><div class="refsect1"><a name="idm214192238784"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p><code class="function">sd_bus_new()</code> and other functions
+    <code class="constant">NULL</code>.</p></div><div class="refsect1"><a name="idm214201906368"></a><h2 id="Errors">Errors<a class="headerlink" title="Permalink to this headline" href="#Errors">¶</a></h2><p>Returned errors may indicate the following problems:</p><div class="variablelist"><dl class="variablelist"><dt id="-ENOMEM"><span class="term"><code class="varname">-ENOMEM</code></span><a class="headerlink" title="Permalink to this term" href="#-ENOMEM">¶</a></dt><dd><p>Memory allocation failed.</p></dd></dl></div></div><div class="refsect1"><a name="idm214201903264"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p><code class="function">sd_bus_new()</code> and other functions
     described here are available as a shared library, which can be
     compiled and linked to with the
     <code class="constant">libsystemd</code> <a href="pkg-config.html"><span class="citerefentry"><span class="refentrytitle">pkg-config</span>(1)</span></a>
-    file.</p></div><div class="refsect1"><a name="idm214192650416"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+    file.</p></div><div class="refsect1"><a name="idm214201900048"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
       <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
       <a href="sd-bus.html"><span class="citerefentry"><span class="refentrytitle">sd-bus</span>(3)</span></a>,
       <a href="sd_bus_open_user.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_open_user</span>(3)</span></a>,
index dda38c46901dd4005ade8f5f2e03ac43e5ec8f68..4caf9281df7d46e8718fe273f5845bad18979179 100644 (file)
@@ -19,7 +19,7 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="sd_bus_request_name"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_bus_request_name, sd_bus_release_name — Request or release a well-known name on a bus</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-bus.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_request_name</b>(</code></td><td>sd_bus *<var class="pdparam">bus</var>, </td></tr><tr><td> </td><td>const char *<var class="pdparam">name</var>, </td></tr><tr><td> </td><td>uint64_t <var class="pdparam">flags</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_release_name</b>(</code></td><td>sd_bus *<var class="pdparam">bus</var>, </td></tr><tr><td> </td><td>const char *<var class="pdparam">name</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214183571808"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_bus_request_name()</code> requests
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="sd_bus_request_name"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_bus_request_name, sd_bus_release_name — Request or release a well-known name on a bus</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-bus.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_request_name</b>(</code></td><td>sd_bus *<var class="pdparam">bus</var>, </td></tr><tr><td> </td><td>const char *<var class="pdparam">name</var>, </td></tr><tr><td> </td><td>uint64_t <var class="pdparam">flags</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_release_name</b>(</code></td><td>sd_bus *<var class="pdparam">bus</var>, </td></tr><tr><td> </td><td>const char *<var class="pdparam">name</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214192288720"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_bus_request_name()</code> requests
                 a well-known name on a bus. It takes a bus connection,
                 a valid bus name and a flags parameter. The flags
                 parameter is a combination of the following
@@ -41,7 +41,7 @@
                                 of the name when the name is already
                                 taken.</p></dd></dl></div><p><code class="function">sd_bus_release_name()</code> releases
                 an acquired well-known name. It takes a bus connection
-                and a valid bus name as parameters.</p></div><div class="refsect1"><a name="idm214183800816"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>On success, these calls return 0 or a positive
+                and a valid bus name as parameters.</p></div><div class="refsect1"><a name="idm214196178624"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>On success, these calls return 0 or a positive
                 integer. On failure, these calls return a negative
                 errno-style error code.</p><p>If <code class="varname">SD_BUS_NAME_QUEUE</code> is
                 specified, <code class="function">sd_bus_request_name()</code>
@@ -52,7 +52,7 @@
                 signals to be notified when the name is successfully
                 acquired. <code class="function">sd_bus_request_name()</code>
                 returns &gt; 0 when the name has immediately been
-                acquired successfully.</p></div><div class="refsect1"><a name="idm214183114928"></a><h2 id="Errors">Errors<a class="headerlink" title="Permalink to this headline" href="#Errors">¶</a></h2><p>Returned errors may indicate the following problems:</p><div class="variablelist"><dl class="variablelist"><dt id="-EALREADY"><span class="term"><code class="varname">-EALREADY</code></span><a class="headerlink" title="Permalink to this term" href="#-EALREADY">¶</a></dt><dd><p>The caller already is
+                acquired successfully.</p></div><div class="refsect1"><a name="idm214196173680"></a><h2 id="Errors">Errors<a class="headerlink" title="Permalink to this headline" href="#Errors">¶</a></h2><p>Returned errors may indicate the following problems:</p><div class="variablelist"><dl class="variablelist"><dt id="-EALREADY"><span class="term"><code class="varname">-EALREADY</code></span><a class="headerlink" title="Permalink to this term" href="#-EALREADY">¶</a></dt><dd><p>The caller already is
                                 the owner of the specified
                                 name.</p></dd><dt id="-EEXIST"><span class="term"><code class="varname">-EEXIST</code></span><a class="headerlink" title="Permalink to this term" href="#-EEXIST">¶</a></dt><dd><p>The name has already
                                 been acquired by a different peer, and
                                 is invalid.</p></dd><dt id="-ENOTCONN"><span class="term"><code class="varname">-ENOTCONN</code></span><a class="headerlink" title="Permalink to this term" href="#-ENOTCONN">¶</a></dt><dd><p>The bus connection has
                                 been disconnected.</p></dd><dt id="-ECHILD"><span class="term"><code class="varname">-ECHILD</code></span><a class="headerlink" title="Permalink to this term" href="#-ECHILD">¶</a></dt><dd><p>The bus connection has
                                 been created in a different process
-                                than the current one.</p></dd></dl></div></div><div class="refsect1"><a name="idm214182875920"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p>The <code class="function">sd_bus_acquire_name()</code>
+                                than the current one.</p></dd></dl></div></div><div class="refsect1"><a name="idm214196153616"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p>The <code class="function">sd_bus_acquire_name()</code>
                 and <code class="function">sd_bus_release_name()</code>
                 interfaces are available as a shared library, which can
                 be compiled and linked to with the
                 <code class="constant">libsystemd</code> <a href="pkg-config.html"><span class="citerefentry"><span class="refentrytitle">pkg-config</span>(1)</span></a>
-                file.</p></div><div class="refsect1"><a name="idm214185727168"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+                file.</p></div><div class="refsect1"><a name="idm214196149504"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
                         <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
                         <a href="sd-bus.html"><span class="citerefentry"><span class="refentrytitle">sd-bus</span>(3)</span></a>,
                         <a href="sd_bus_new.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_new</span>(3)</span></a>
index 4b9e5ef36564995b1ec584b83de11b2bfe79fa99..5b8907ca49cc4bed4325e6a8cb01cf531e223e0d 100644 (file)
@@ -1,5 +1,5 @@
 '\" t
-.TH "SD_BUS_REQUEST_NAME" "3" "" "systemd 214" "sd_bus_request_name"
+.TH "SD_BUS_REQUEST_NAME" "3" "" "systemd 215" "sd_bus_request_name"
 .\" -----------------------------------------------------------------
 .\" * Define some portability stuff
 .\" -----------------------------------------------------------------
index dda38c46901dd4005ade8f5f2e03ac43e5ec8f68..4caf9281df7d46e8718fe273f5845bad18979179 100644 (file)
@@ -19,7 +19,7 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="sd_bus_request_name"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_bus_request_name, sd_bus_release_name — Request or release a well-known name on a bus</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-bus.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_request_name</b>(</code></td><td>sd_bus *<var class="pdparam">bus</var>, </td></tr><tr><td> </td><td>const char *<var class="pdparam">name</var>, </td></tr><tr><td> </td><td>uint64_t <var class="pdparam">flags</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_release_name</b>(</code></td><td>sd_bus *<var class="pdparam">bus</var>, </td></tr><tr><td> </td><td>const char *<var class="pdparam">name</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214183571808"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_bus_request_name()</code> requests
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="sd_bus_request_name"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_bus_request_name, sd_bus_release_name — Request or release a well-known name on a bus</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-bus.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_request_name</b>(</code></td><td>sd_bus *<var class="pdparam">bus</var>, </td></tr><tr><td> </td><td>const char *<var class="pdparam">name</var>, </td></tr><tr><td> </td><td>uint64_t <var class="pdparam">flags</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_release_name</b>(</code></td><td>sd_bus *<var class="pdparam">bus</var>, </td></tr><tr><td> </td><td>const char *<var class="pdparam">name</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214192288720"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_bus_request_name()</code> requests
                 a well-known name on a bus. It takes a bus connection,
                 a valid bus name and a flags parameter. The flags
                 parameter is a combination of the following
@@ -41,7 +41,7 @@
                                 of the name when the name is already
                                 taken.</p></dd></dl></div><p><code class="function">sd_bus_release_name()</code> releases
                 an acquired well-known name. It takes a bus connection
-                and a valid bus name as parameters.</p></div><div class="refsect1"><a name="idm214183800816"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>On success, these calls return 0 or a positive
+                and a valid bus name as parameters.</p></div><div class="refsect1"><a name="idm214196178624"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>On success, these calls return 0 or a positive
                 integer. On failure, these calls return a negative
                 errno-style error code.</p><p>If <code class="varname">SD_BUS_NAME_QUEUE</code> is
                 specified, <code class="function">sd_bus_request_name()</code>
@@ -52,7 +52,7 @@
                 signals to be notified when the name is successfully
                 acquired. <code class="function">sd_bus_request_name()</code>
                 returns &gt; 0 when the name has immediately been
-                acquired successfully.</p></div><div class="refsect1"><a name="idm214183114928"></a><h2 id="Errors">Errors<a class="headerlink" title="Permalink to this headline" href="#Errors">¶</a></h2><p>Returned errors may indicate the following problems:</p><div class="variablelist"><dl class="variablelist"><dt id="-EALREADY"><span class="term"><code class="varname">-EALREADY</code></span><a class="headerlink" title="Permalink to this term" href="#-EALREADY">¶</a></dt><dd><p>The caller already is
+                acquired successfully.</p></div><div class="refsect1"><a name="idm214196173680"></a><h2 id="Errors">Errors<a class="headerlink" title="Permalink to this headline" href="#Errors">¶</a></h2><p>Returned errors may indicate the following problems:</p><div class="variablelist"><dl class="variablelist"><dt id="-EALREADY"><span class="term"><code class="varname">-EALREADY</code></span><a class="headerlink" title="Permalink to this term" href="#-EALREADY">¶</a></dt><dd><p>The caller already is
                                 the owner of the specified
                                 name.</p></dd><dt id="-EEXIST"><span class="term"><code class="varname">-EEXIST</code></span><a class="headerlink" title="Permalink to this term" href="#-EEXIST">¶</a></dt><dd><p>The name has already
                                 been acquired by a different peer, and
                                 is invalid.</p></dd><dt id="-ENOTCONN"><span class="term"><code class="varname">-ENOTCONN</code></span><a class="headerlink" title="Permalink to this term" href="#-ENOTCONN">¶</a></dt><dd><p>The bus connection has
                                 been disconnected.</p></dd><dt id="-ECHILD"><span class="term"><code class="varname">-ECHILD</code></span><a class="headerlink" title="Permalink to this term" href="#-ECHILD">¶</a></dt><dd><p>The bus connection has
                                 been created in a different process
-                                than the current one.</p></dd></dl></div></div><div class="refsect1"><a name="idm214182875920"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p>The <code class="function">sd_bus_acquire_name()</code>
+                                than the current one.</p></dd></dl></div></div><div class="refsect1"><a name="idm214196153616"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p>The <code class="function">sd_bus_acquire_name()</code>
                 and <code class="function">sd_bus_release_name()</code>
                 interfaces are available as a shared library, which can
                 be compiled and linked to with the
                 <code class="constant">libsystemd</code> <a href="pkg-config.html"><span class="citerefentry"><span class="refentrytitle">pkg-config</span>(1)</span></a>
-                file.</p></div><div class="refsect1"><a name="idm214185727168"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+                file.</p></div><div class="refsect1"><a name="idm214196149504"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
                         <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
                         <a href="sd-bus.html"><span class="citerefentry"><span class="refentrytitle">sd-bus</span>(3)</span></a>,
                         <a href="sd_bus_new.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_new</span>(3)</span></a>
index c302ed6a661db9df34d4f2aeaaf09d23a6fa8806..b0918107d804cdd5dfdff89e932198590e550f5e 100644 (file)
@@ -19,7 +19,7 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="sd_bus_new"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_bus_new, sd_bus_ref, sd_bus_unref — Create a new bus object and create or destroy references to it</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-bus.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_new</b>(</code></td><td>sd_bus **<var class="pdparam">bus</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">sd_bus *<b class="fsfunc">sd_bus_ref</b>(</code></td><td>sd_bus *<var class="pdparam">bus</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">sd_bus *<b class="fsfunc">sd_bus_unref</b>(</code></td><td>sd_bus *<var class="pdparam">bus</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214190756512"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_bus_new()</code> creates a new bus
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="sd_bus_new"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_bus_new, sd_bus_ref, sd_bus_unref — Create a new bus object and create or destroy references to it</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-bus.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_bus_new</b>(</code></td><td>sd_bus **<var class="pdparam">bus</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">sd_bus *<b class="fsfunc">sd_bus_ref</b>(</code></td><td>sd_bus *<var class="pdparam">bus</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">sd_bus *<b class="fsfunc">sd_bus_unref</b>(</code></td><td>sd_bus *<var class="pdparam">bus</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214198019136"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_bus_new()</code> creates a new bus
     object. This object is reference-counted, and will be destroyed
     when all references are gone. Initially, the caller of this
     function owns the sole reference.</p><p><code class="function">sd_bus_ref()</code> creates a new reference to
     zero, <em class="parameter"><code>bus</code></em> cannot be used anymore, so
     further calls to <code class="function">sd_bus_ref()</code> or
     <code class="function">sd_bus_unref()</code> are illegal.</p><p><code class="function">sd_bus_unref()</code> destroys a reference to
-    <em class="parameter"><code>bus</code></em>.</p></div><div class="refsect1"><a name="idm214190317120"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>On success, <code class="function">sd_bus_new()</code> returns 0 or a
+    <em class="parameter"><code>bus</code></em>.</p></div><div class="refsect1"><a name="idm214201910768"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>On success, <code class="function">sd_bus_new()</code> returns 0 or a
     positive integer. On failure, it returns a negative errno-style
     error code.</p><p><code class="function">sd_bus_ref</code> always returns the argument.
     </p><p><code class="function">sd_bus_unref</code> always returns
-    <code class="constant">NULL</code>.</p></div><div class="refsect1"><a name="idm214191774096"></a><h2 id="Errors">Errors<a class="headerlink" title="Permalink to this headline" href="#Errors">¶</a></h2><p>Returned errors may indicate the following problems:</p><div class="variablelist"><dl class="variablelist"><dt id="-ENOMEM"><span class="term"><code class="varname">-ENOMEM</code></span><a class="headerlink" title="Permalink to this term" href="#-ENOMEM">¶</a></dt><dd><p>Memory allocation failed.</p></dd></dl></div></div><div class="refsect1"><a name="idm214192238784"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p><code class="function">sd_bus_new()</code> and other functions
+    <code class="constant">NULL</code>.</p></div><div class="refsect1"><a name="idm214201906368"></a><h2 id="Errors">Errors<a class="headerlink" title="Permalink to this headline" href="#Errors">¶</a></h2><p>Returned errors may indicate the following problems:</p><div class="variablelist"><dl class="variablelist"><dt id="-ENOMEM"><span class="term"><code class="varname">-ENOMEM</code></span><a class="headerlink" title="Permalink to this term" href="#-ENOMEM">¶</a></dt><dd><p>Memory allocation failed.</p></dd></dl></div></div><div class="refsect1"><a name="idm214201903264"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p><code class="function">sd_bus_new()</code> and other functions
     described here are available as a shared library, which can be
     compiled and linked to with the
     <code class="constant">libsystemd</code> <a href="pkg-config.html"><span class="citerefentry"><span class="refentrytitle">pkg-config</span>(1)</span></a>
-    file.</p></div><div class="refsect1"><a name="idm214192650416"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+    file.</p></div><div class="refsect1"><a name="idm214201900048"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
       <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
       <a href="sd-bus.html"><span class="citerefentry"><span class="refentrytitle">sd-bus</span>(3)</span></a>,
       <a href="sd_bus_open_user.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_open_user</span>(3)</span></a>,
index b974d8ad28f8b129cd0fc57098abb139302830b6..8e8e44cca0017bb2c43544eedaacb61609a046b3 100644 (file)
@@ -1,5 +1,5 @@
 '\" t
-.TH "SD_EVENT_ADD_TIME" "3" "" "systemd 214" "sd_event_add_time"
+.TH "SD_EVENT_ADD_TIME" "3" "" "systemd 215" "sd_event_add_time"
 .\" -----------------------------------------------------------------
 .\" * Define some portability stuff
 .\" -----------------------------------------------------------------
index eed932a0c4fe363012bf45e3df36a84f9dc11073..893572092a94695db0700428bbf6a3be11da0e5c 100644 (file)
@@ -19,7 +19,7 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="sd_event_add_time"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_event_add_time, sd_event_source_get_time, sd_event_source_set_time, sd_event_source_get_time_accuracy, sd_event_source_set_time_accuracy, sd_event_source_get_time_clock — Add a timer event source to an event loop</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-bus.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_event_add_time</b>(</code></td><td>sd_event *<var class="pdparam">event</var>, </td></tr><tr><td> </td><td>sd_event_source **<var class="pdparam">source</var>, </td></tr><tr><td> </td><td>clockid_t <var class="pdparam">clock</var>, </td></tr><tr><td> </td><td>uint64_t <var class="pdparam">usec</var>, </td></tr><tr><td> </td><td>uint64_t <var class="pdparam">accuracy</var>, </td></tr><tr><td> </td><td>sd_event_time_handler_t <var class="pdparam">handler</var>, </td></tr><tr><td> </td><td>void *<var class="pdparam">userdata</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_event_source_get_time</b>(</code></td><td>sd_event_source *<var class="pdparam">source</var>, </td></tr><tr><td> </td><td>usec_t *<var class="pdparam">usec</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_event_source_set_time</b>(</code></td><td>sd_event_source *<var class="pdparam">source</var>, </td></tr><tr><td> </td><td>usec_t <var class="pdparam">usec</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_event_source_get_time_accuracy</b>(</code></td><td>sd_event_source *<var class="pdparam">source</var>, </td></tr><tr><td> </td><td>usec_t *<var class="pdparam">usec</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_event_source_set_time_accuracy</b>(</code></td><td>sd_event_source *<var class="pdparam">source</var>, </td></tr><tr><td> </td><td>usec_t <var class="pdparam">usec</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_event_source_get_time_clock</b>(</code></td><td>sd_event_source *<var class="pdparam">source</var>, </td></tr><tr><td> </td><td>clockid_t *<var class="pdparam">clock</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214176660896"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_event_add_time()</code> adds a new timer
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="sd_event_add_time"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_event_add_time, sd_event_source_get_time, sd_event_source_set_time, sd_event_source_get_time_accuracy, sd_event_source_set_time_accuracy, sd_event_source_get_time_clock — Add a timer event source to an event loop</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-bus.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_event_add_time</b>(</code></td><td>sd_event *<var class="pdparam">event</var>, </td></tr><tr><td> </td><td>sd_event_source **<var class="pdparam">source</var>, </td></tr><tr><td> </td><td>clockid_t <var class="pdparam">clock</var>, </td></tr><tr><td> </td><td>uint64_t <var class="pdparam">usec</var>, </td></tr><tr><td> </td><td>uint64_t <var class="pdparam">accuracy</var>, </td></tr><tr><td> </td><td>sd_event_time_handler_t <var class="pdparam">handler</var>, </td></tr><tr><td> </td><td>void *<var class="pdparam">userdata</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_event_source_get_time</b>(</code></td><td>sd_event_source *<var class="pdparam">source</var>, </td></tr><tr><td> </td><td>usec_t *<var class="pdparam">usec</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_event_source_set_time</b>(</code></td><td>sd_event_source *<var class="pdparam">source</var>, </td></tr><tr><td> </td><td>usec_t <var class="pdparam">usec</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_event_source_get_time_accuracy</b>(</code></td><td>sd_event_source *<var class="pdparam">source</var>, </td></tr><tr><td> </td><td>usec_t *<var class="pdparam">usec</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_event_source_set_time_accuracy</b>(</code></td><td>sd_event_source *<var class="pdparam">source</var>, </td></tr><tr><td> </td><td>usec_t <var class="pdparam">usec</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_event_source_get_time_clock</b>(</code></td><td>sd_event_source *<var class="pdparam">source</var>, </td></tr><tr><td> </td><td>clockid_t *<var class="pdparam">clock</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214185413552"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_event_add_time()</code> adds a new timer
     event source to an event loop object. The event loop is specified
     in <em class="parameter"><code>event</code></em>, the event source is returned in
     the <em class="parameter"><code>source</code></em> parameter. The
     retrieves the configured clock of a timer event source created
     previously with <code class="function">sd_event_add_time()</code>. It takes
     the event source object and a pointer to a variable to store the
-    clock identifier in.</p></div><div class="refsect1"><a name="idm214175731552"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>On success, these functions return 0 or a positive
+    clock identifier in.</p></div><div class="refsect1"><a name="idm214185385088"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>On success, these functions return 0 or a positive
     integer. On failure, they return a negative errno-style error
-    code. </p></div><div class="refsect1"><a name="idm214174266448"></a><h2 id="Errors">Errors<a class="headerlink" title="Permalink to this headline" href="#Errors">¶</a></h2><p>Returned errors may indicate the following problems:</p><div class="variablelist"><dl class="variablelist"><dt id="-ENOMEM"><span class="term"><code class="varname">-ENOMEM</code></span><a class="headerlink" title="Permalink to this term" href="#-ENOMEM">¶</a></dt><dd><p>Not enough memory to allocate object.</p></dd><dt id="-EINVAL"><span class="term"><code class="varname">-EINVAL</code></span><a class="headerlink" title="Permalink to this term" href="#-EINVAL">¶</a></dt><dd><p>An invalid argument has been passed.</p></dd><dt id="-ESTALE"><span class="term"><code class="varname">-ESTALE</code></span><a class="headerlink" title="Permalink to this term" href="#-ESTALE">¶</a></dt><dd><p>The event loop is already terminated.</p></dd><dt id="-ECHILD"><span class="term"><code class="varname">-ECHILD</code></span><a class="headerlink" title="Permalink to this term" href="#-ECHILD">¶</a></dt><dd><p>The event loop has been created in a different process.</p></dd><dt id="-ENOTSUP"><span class="term"><code class="varname">-ENOTSUP</code></span><a class="headerlink" title="Permalink to this term" href="#-ENOTSUP">¶</a></dt><dd><p>The selected clock is not supported by the event loop implementation.</p></dd></dl></div></div><div class="refsect1"><a name="idm214178541472"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p><code class="function">sd_event_add_time()</code> and the other functions
+    code. </p></div><div class="refsect1"><a name="idm214185383760"></a><h2 id="Errors">Errors<a class="headerlink" title="Permalink to this headline" href="#Errors">¶</a></h2><p>Returned errors may indicate the following problems:</p><div class="variablelist"><dl class="variablelist"><dt id="-ENOMEM"><span class="term"><code class="varname">-ENOMEM</code></span><a class="headerlink" title="Permalink to this term" href="#-ENOMEM">¶</a></dt><dd><p>Not enough memory to allocate object.</p></dd><dt id="-EINVAL"><span class="term"><code class="varname">-EINVAL</code></span><a class="headerlink" title="Permalink to this term" href="#-EINVAL">¶</a></dt><dd><p>An invalid argument has been passed.</p></dd><dt id="-ESTALE"><span class="term"><code class="varname">-ESTALE</code></span><a class="headerlink" title="Permalink to this term" href="#-ESTALE">¶</a></dt><dd><p>The event loop is already terminated.</p></dd><dt id="-ECHILD"><span class="term"><code class="varname">-ECHILD</code></span><a class="headerlink" title="Permalink to this term" href="#-ECHILD">¶</a></dt><dd><p>The event loop has been created in a different process.</p></dd><dt id="-ENOTSUP"><span class="term"><code class="varname">-ENOTSUP</code></span><a class="headerlink" title="Permalink to this term" href="#-ENOTSUP">¶</a></dt><dd><p>The selected clock is not supported by the event loop implementation.</p></dd></dl></div></div><div class="refsect1"><a name="idm214180461872"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p><code class="function">sd_event_add_time()</code> and the other functions
     described here are available as a shared library, which can be
     compiled and linked to with the
     <code class="constant">libsystemd</code> <a href="pkg-config.html"><span class="citerefentry"><span class="refentrytitle">pkg-config</span>(1)</span></a>
-    file.</p></div><div class="refsect1"><a name="idm214174754176"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+    file.</p></div><div class="refsect1"><a name="idm214180458928"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
       <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
       <a href="sd-event.html"><span class="citerefentry"><span class="refentrytitle">sd-event</span>(3)</span></a>,
       <a href="sd_event_new.html"><span class="citerefentry"><span class="refentrytitle">sd_event_new</span>(3)</span></a>,
index 13fabd10af0b54956dedbf86aeb09b81c1e96c11..435ad812e2c669251b75b2090edc0aa2ce0295c0 100644 (file)
@@ -19,7 +19,7 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="sd_event_new"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_event_new, sd_event_default, sd_event_ref, sd_event_unref — Acquire and release an event loop object</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-bus.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_event_new</b>(</code></td><td>sd_bus **<var class="pdparam">event</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_event_default</b>(</code></td><td>sd_bus **<var class="pdparam">event</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">sd_bus *<b class="fsfunc">sd_event_ref</b>(</code></td><td>sd_bus *<var class="pdparam">event</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">sd_bus *<b class="fsfunc">sd_event_unref</b>(</code></td><td>sd_bus *<var class="pdparam">event</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214181989904"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_event_new()</code> allocates a new event
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="sd_event_new"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_event_new, sd_event_default, sd_event_ref, sd_event_unref — Acquire and release an event loop object</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-bus.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_event_new</b>(</code></td><td>sd_bus **<var class="pdparam">event</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_event_default</b>(</code></td><td>sd_bus **<var class="pdparam">event</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">sd_bus *<b class="fsfunc">sd_event_ref</b>(</code></td><td>sd_bus *<var class="pdparam">event</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">sd_bus *<b class="fsfunc">sd_event_unref</b>(</code></td><td>sd_bus *<var class="pdparam">event</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214169459136"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_event_new()</code> allocates a new event
     loop object. The event loop object is returned in the
     <em class="parameter"><code>event</code></em> parameter. After use, drop
     the returned reference with
     <code class="function">sd_event_default()</code> will result in two
     distinct objects. Note that, in order to free an event loop object,
     all remaining event sources of the event loop also need to be
-    freed as they each keep a reference to it.</p></div><div class="refsect1"><a name="idm214182408096"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>On success, <code class="function">sd_event_new()</code> and
+    freed as they each keep a reference to it.</p></div><div class="refsect1"><a name="idm214173348800"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>On success, <code class="function">sd_event_new()</code> and
     <code class="function">sd_event_default()</code> return 0 or a positive
     integer. On failure, they return a negative errno-style error
     code. <code class="function">sd_event_ref()</code> always returns a pointer
     to the event loop object passed
     in. <code class="function">sd_event_unref()</code> always returns
-    NULL.</p></div><div class="refsect1"><a name="idm214181117184"></a><h2 id="Errors">Errors<a class="headerlink" title="Permalink to this headline" href="#Errors">¶</a></h2><p>Returned errors may indicate the following problems:</p><div class="variablelist"><dl class="variablelist"><dt id="-ENOMEM"><span class="term"><code class="varname">-ENOMEM</code></span><a class="headerlink" title="Permalink to this term" href="#-ENOMEM">¶</a></dt><dd><p>Not enough memory to allocate object</p></dd><dt id="-EMFILE"><span class="term"><code class="varname">-EMFILE</code></span><a class="headerlink" title="Permalink to this term" href="#-EMFILE">¶</a></dt><dd><p>The maximum number of event loops has been allocated.</p></dd></dl></div></div><div class="refsect1"><a name="idm214181785424"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p><code class="function">sd_event_new()</code> and the other functions
+    NULL.</p></div><div class="refsect1"><a name="idm214173344688"></a><h2 id="Errors">Errors<a class="headerlink" title="Permalink to this headline" href="#Errors">¶</a></h2><p>Returned errors may indicate the following problems:</p><div class="variablelist"><dl class="variablelist"><dt id="-ENOMEM"><span class="term"><code class="varname">-ENOMEM</code></span><a class="headerlink" title="Permalink to this term" href="#-ENOMEM">¶</a></dt><dd><p>Not enough memory to allocate object</p></dd><dt id="-EMFILE"><span class="term"><code class="varname">-EMFILE</code></span><a class="headerlink" title="Permalink to this term" href="#-EMFILE">¶</a></dt><dd><p>The maximum number of event loops has been allocated.</p></dd></dl></div></div><div class="refsect1"><a name="idm214173340144"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p><code class="function">sd_event_new()</code> and the other functions
     described here are available as a shared library, which can be
     compiled and linked to with the
     <code class="constant">libsystemd</code> <a href="pkg-config.html"><span class="citerefentry"><span class="refentrytitle">pkg-config</span>(1)</span></a>
-    file.</p></div><div class="refsect1"><a name="idm214183545328"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+    file.</p></div><div class="refsect1"><a name="idm214173329680"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
       <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
       <a href="sd-event.html"><span class="citerefentry"><span class="refentrytitle">sd-event</span>(3)</span></a>,
       <a href="sd_event_add_io.html"><span class="citerefentry"><span class="refentrytitle">sd_event_add_io</span>(3)</span></a>,
index 6af5db0a7cd02faccde724525ca790e43a7ed7a3..4bc01b1da4c02dd366747772d5b52114b10de906 100644 (file)
@@ -1,5 +1,5 @@
 '\" t
-.TH "SD_EVENT_NEW" "3" "" "systemd 214" "sd_event_new"
+.TH "SD_EVENT_NEW" "3" "" "systemd 215" "sd_event_new"
 .\" -----------------------------------------------------------------
 .\" * Define some portability stuff
 .\" -----------------------------------------------------------------
index 13fabd10af0b54956dedbf86aeb09b81c1e96c11..435ad812e2c669251b75b2090edc0aa2ce0295c0 100644 (file)
@@ -19,7 +19,7 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="sd_event_new"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_event_new, sd_event_default, sd_event_ref, sd_event_unref — Acquire and release an event loop object</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-bus.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_event_new</b>(</code></td><td>sd_bus **<var class="pdparam">event</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_event_default</b>(</code></td><td>sd_bus **<var class="pdparam">event</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">sd_bus *<b class="fsfunc">sd_event_ref</b>(</code></td><td>sd_bus *<var class="pdparam">event</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">sd_bus *<b class="fsfunc">sd_event_unref</b>(</code></td><td>sd_bus *<var class="pdparam">event</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214181989904"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_event_new()</code> allocates a new event
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="sd_event_new"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_event_new, sd_event_default, sd_event_ref, sd_event_unref — Acquire and release an event loop object</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-bus.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_event_new</b>(</code></td><td>sd_bus **<var class="pdparam">event</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_event_default</b>(</code></td><td>sd_bus **<var class="pdparam">event</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">sd_bus *<b class="fsfunc">sd_event_ref</b>(</code></td><td>sd_bus *<var class="pdparam">event</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">sd_bus *<b class="fsfunc">sd_event_unref</b>(</code></td><td>sd_bus *<var class="pdparam">event</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214169459136"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_event_new()</code> allocates a new event
     loop object. The event loop object is returned in the
     <em class="parameter"><code>event</code></em> parameter. After use, drop
     the returned reference with
     <code class="function">sd_event_default()</code> will result in two
     distinct objects. Note that, in order to free an event loop object,
     all remaining event sources of the event loop also need to be
-    freed as they each keep a reference to it.</p></div><div class="refsect1"><a name="idm214182408096"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>On success, <code class="function">sd_event_new()</code> and
+    freed as they each keep a reference to it.</p></div><div class="refsect1"><a name="idm214173348800"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>On success, <code class="function">sd_event_new()</code> and
     <code class="function">sd_event_default()</code> return 0 or a positive
     integer. On failure, they return a negative errno-style error
     code. <code class="function">sd_event_ref()</code> always returns a pointer
     to the event loop object passed
     in. <code class="function">sd_event_unref()</code> always returns
-    NULL.</p></div><div class="refsect1"><a name="idm214181117184"></a><h2 id="Errors">Errors<a class="headerlink" title="Permalink to this headline" href="#Errors">¶</a></h2><p>Returned errors may indicate the following problems:</p><div class="variablelist"><dl class="variablelist"><dt id="-ENOMEM"><span class="term"><code class="varname">-ENOMEM</code></span><a class="headerlink" title="Permalink to this term" href="#-ENOMEM">¶</a></dt><dd><p>Not enough memory to allocate object</p></dd><dt id="-EMFILE"><span class="term"><code class="varname">-EMFILE</code></span><a class="headerlink" title="Permalink to this term" href="#-EMFILE">¶</a></dt><dd><p>The maximum number of event loops has been allocated.</p></dd></dl></div></div><div class="refsect1"><a name="idm214181785424"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p><code class="function">sd_event_new()</code> and the other functions
+    NULL.</p></div><div class="refsect1"><a name="idm214173344688"></a><h2 id="Errors">Errors<a class="headerlink" title="Permalink to this headline" href="#Errors">¶</a></h2><p>Returned errors may indicate the following problems:</p><div class="variablelist"><dl class="variablelist"><dt id="-ENOMEM"><span class="term"><code class="varname">-ENOMEM</code></span><a class="headerlink" title="Permalink to this term" href="#-ENOMEM">¶</a></dt><dd><p>Not enough memory to allocate object</p></dd><dt id="-EMFILE"><span class="term"><code class="varname">-EMFILE</code></span><a class="headerlink" title="Permalink to this term" href="#-EMFILE">¶</a></dt><dd><p>The maximum number of event loops has been allocated.</p></dd></dl></div></div><div class="refsect1"><a name="idm214173340144"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p><code class="function">sd_event_new()</code> and the other functions
     described here are available as a shared library, which can be
     compiled and linked to with the
     <code class="constant">libsystemd</code> <a href="pkg-config.html"><span class="citerefentry"><span class="refentrytitle">pkg-config</span>(1)</span></a>
-    file.</p></div><div class="refsect1"><a name="idm214183545328"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+    file.</p></div><div class="refsect1"><a name="idm214173329680"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
       <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
       <a href="sd-event.html"><span class="citerefentry"><span class="refentrytitle">sd-event</span>(3)</span></a>,
       <a href="sd_event_add_io.html"><span class="citerefentry"><span class="refentrytitle">sd_event_add_io</span>(3)</span></a>,
index 13fabd10af0b54956dedbf86aeb09b81c1e96c11..435ad812e2c669251b75b2090edc0aa2ce0295c0 100644 (file)
@@ -19,7 +19,7 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="sd_event_new"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_event_new, sd_event_default, sd_event_ref, sd_event_unref — Acquire and release an event loop object</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-bus.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_event_new</b>(</code></td><td>sd_bus **<var class="pdparam">event</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_event_default</b>(</code></td><td>sd_bus **<var class="pdparam">event</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">sd_bus *<b class="fsfunc">sd_event_ref</b>(</code></td><td>sd_bus *<var class="pdparam">event</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">sd_bus *<b class="fsfunc">sd_event_unref</b>(</code></td><td>sd_bus *<var class="pdparam">event</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214181989904"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_event_new()</code> allocates a new event
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="sd_event_new"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_event_new, sd_event_default, sd_event_ref, sd_event_unref — Acquire and release an event loop object</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-bus.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_event_new</b>(</code></td><td>sd_bus **<var class="pdparam">event</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_event_default</b>(</code></td><td>sd_bus **<var class="pdparam">event</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">sd_bus *<b class="fsfunc">sd_event_ref</b>(</code></td><td>sd_bus *<var class="pdparam">event</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">sd_bus *<b class="fsfunc">sd_event_unref</b>(</code></td><td>sd_bus *<var class="pdparam">event</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214169459136"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_event_new()</code> allocates a new event
     loop object. The event loop object is returned in the
     <em class="parameter"><code>event</code></em> parameter. After use, drop
     the returned reference with
     <code class="function">sd_event_default()</code> will result in two
     distinct objects. Note that, in order to free an event loop object,
     all remaining event sources of the event loop also need to be
-    freed as they each keep a reference to it.</p></div><div class="refsect1"><a name="idm214182408096"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>On success, <code class="function">sd_event_new()</code> and
+    freed as they each keep a reference to it.</p></div><div class="refsect1"><a name="idm214173348800"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>On success, <code class="function">sd_event_new()</code> and
     <code class="function">sd_event_default()</code> return 0 or a positive
     integer. On failure, they return a negative errno-style error
     code. <code class="function">sd_event_ref()</code> always returns a pointer
     to the event loop object passed
     in. <code class="function">sd_event_unref()</code> always returns
-    NULL.</p></div><div class="refsect1"><a name="idm214181117184"></a><h2 id="Errors">Errors<a class="headerlink" title="Permalink to this headline" href="#Errors">¶</a></h2><p>Returned errors may indicate the following problems:</p><div class="variablelist"><dl class="variablelist"><dt id="-ENOMEM"><span class="term"><code class="varname">-ENOMEM</code></span><a class="headerlink" title="Permalink to this term" href="#-ENOMEM">¶</a></dt><dd><p>Not enough memory to allocate object</p></dd><dt id="-EMFILE"><span class="term"><code class="varname">-EMFILE</code></span><a class="headerlink" title="Permalink to this term" href="#-EMFILE">¶</a></dt><dd><p>The maximum number of event loops has been allocated.</p></dd></dl></div></div><div class="refsect1"><a name="idm214181785424"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p><code class="function">sd_event_new()</code> and the other functions
+    NULL.</p></div><div class="refsect1"><a name="idm214173344688"></a><h2 id="Errors">Errors<a class="headerlink" title="Permalink to this headline" href="#Errors">¶</a></h2><p>Returned errors may indicate the following problems:</p><div class="variablelist"><dl class="variablelist"><dt id="-ENOMEM"><span class="term"><code class="varname">-ENOMEM</code></span><a class="headerlink" title="Permalink to this term" href="#-ENOMEM">¶</a></dt><dd><p>Not enough memory to allocate object</p></dd><dt id="-EMFILE"><span class="term"><code class="varname">-EMFILE</code></span><a class="headerlink" title="Permalink to this term" href="#-EMFILE">¶</a></dt><dd><p>The maximum number of event loops has been allocated.</p></dd></dl></div></div><div class="refsect1"><a name="idm214173340144"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p><code class="function">sd_event_new()</code> and the other functions
     described here are available as a shared library, which can be
     compiled and linked to with the
     <code class="constant">libsystemd</code> <a href="pkg-config.html"><span class="citerefentry"><span class="refentrytitle">pkg-config</span>(1)</span></a>
-    file.</p></div><div class="refsect1"><a name="idm214183545328"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+    file.</p></div><div class="refsect1"><a name="idm214173329680"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
       <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
       <a href="sd-event.html"><span class="citerefentry"><span class="refentrytitle">sd-event</span>(3)</span></a>,
       <a href="sd_event_add_io.html"><span class="citerefentry"><span class="refentrytitle">sd_event_add_io</span>(3)</span></a>,
index eed932a0c4fe363012bf45e3df36a84f9dc11073..893572092a94695db0700428bbf6a3be11da0e5c 100644 (file)
@@ -19,7 +19,7 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="sd_event_add_time"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_event_add_time, sd_event_source_get_time, sd_event_source_set_time, sd_event_source_get_time_accuracy, sd_event_source_set_time_accuracy, sd_event_source_get_time_clock — Add a timer event source to an event loop</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-bus.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_event_add_time</b>(</code></td><td>sd_event *<var class="pdparam">event</var>, </td></tr><tr><td> </td><td>sd_event_source **<var class="pdparam">source</var>, </td></tr><tr><td> </td><td>clockid_t <var class="pdparam">clock</var>, </td></tr><tr><td> </td><td>uint64_t <var class="pdparam">usec</var>, </td></tr><tr><td> </td><td>uint64_t <var class="pdparam">accuracy</var>, </td></tr><tr><td> </td><td>sd_event_time_handler_t <var class="pdparam">handler</var>, </td></tr><tr><td> </td><td>void *<var class="pdparam">userdata</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_event_source_get_time</b>(</code></td><td>sd_event_source *<var class="pdparam">source</var>, </td></tr><tr><td> </td><td>usec_t *<var class="pdparam">usec</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_event_source_set_time</b>(</code></td><td>sd_event_source *<var class="pdparam">source</var>, </td></tr><tr><td> </td><td>usec_t <var class="pdparam">usec</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_event_source_get_time_accuracy</b>(</code></td><td>sd_event_source *<var class="pdparam">source</var>, </td></tr><tr><td> </td><td>usec_t *<var class="pdparam">usec</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_event_source_set_time_accuracy</b>(</code></td><td>sd_event_source *<var class="pdparam">source</var>, </td></tr><tr><td> </td><td>usec_t <var class="pdparam">usec</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_event_source_get_time_clock</b>(</code></td><td>sd_event_source *<var class="pdparam">source</var>, </td></tr><tr><td> </td><td>clockid_t *<var class="pdparam">clock</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214176660896"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_event_add_time()</code> adds a new timer
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="sd_event_add_time"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_event_add_time, sd_event_source_get_time, sd_event_source_set_time, sd_event_source_get_time_accuracy, sd_event_source_set_time_accuracy, sd_event_source_get_time_clock — Add a timer event source to an event loop</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-bus.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_event_add_time</b>(</code></td><td>sd_event *<var class="pdparam">event</var>, </td></tr><tr><td> </td><td>sd_event_source **<var class="pdparam">source</var>, </td></tr><tr><td> </td><td>clockid_t <var class="pdparam">clock</var>, </td></tr><tr><td> </td><td>uint64_t <var class="pdparam">usec</var>, </td></tr><tr><td> </td><td>uint64_t <var class="pdparam">accuracy</var>, </td></tr><tr><td> </td><td>sd_event_time_handler_t <var class="pdparam">handler</var>, </td></tr><tr><td> </td><td>void *<var class="pdparam">userdata</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_event_source_get_time</b>(</code></td><td>sd_event_source *<var class="pdparam">source</var>, </td></tr><tr><td> </td><td>usec_t *<var class="pdparam">usec</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_event_source_set_time</b>(</code></td><td>sd_event_source *<var class="pdparam">source</var>, </td></tr><tr><td> </td><td>usec_t <var class="pdparam">usec</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_event_source_get_time_accuracy</b>(</code></td><td>sd_event_source *<var class="pdparam">source</var>, </td></tr><tr><td> </td><td>usec_t *<var class="pdparam">usec</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_event_source_set_time_accuracy</b>(</code></td><td>sd_event_source *<var class="pdparam">source</var>, </td></tr><tr><td> </td><td>usec_t <var class="pdparam">usec</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_event_source_get_time_clock</b>(</code></td><td>sd_event_source *<var class="pdparam">source</var>, </td></tr><tr><td> </td><td>clockid_t *<var class="pdparam">clock</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214185413552"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_event_add_time()</code> adds a new timer
     event source to an event loop object. The event loop is specified
     in <em class="parameter"><code>event</code></em>, the event source is returned in
     the <em class="parameter"><code>source</code></em> parameter. The
     retrieves the configured clock of a timer event source created
     previously with <code class="function">sd_event_add_time()</code>. It takes
     the event source object and a pointer to a variable to store the
-    clock identifier in.</p></div><div class="refsect1"><a name="idm214175731552"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>On success, these functions return 0 or a positive
+    clock identifier in.</p></div><div class="refsect1"><a name="idm214185385088"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>On success, these functions return 0 or a positive
     integer. On failure, they return a negative errno-style error
-    code. </p></div><div class="refsect1"><a name="idm214174266448"></a><h2 id="Errors">Errors<a class="headerlink" title="Permalink to this headline" href="#Errors">¶</a></h2><p>Returned errors may indicate the following problems:</p><div class="variablelist"><dl class="variablelist"><dt id="-ENOMEM"><span class="term"><code class="varname">-ENOMEM</code></span><a class="headerlink" title="Permalink to this term" href="#-ENOMEM">¶</a></dt><dd><p>Not enough memory to allocate object.</p></dd><dt id="-EINVAL"><span class="term"><code class="varname">-EINVAL</code></span><a class="headerlink" title="Permalink to this term" href="#-EINVAL">¶</a></dt><dd><p>An invalid argument has been passed.</p></dd><dt id="-ESTALE"><span class="term"><code class="varname">-ESTALE</code></span><a class="headerlink" title="Permalink to this term" href="#-ESTALE">¶</a></dt><dd><p>The event loop is already terminated.</p></dd><dt id="-ECHILD"><span class="term"><code class="varname">-ECHILD</code></span><a class="headerlink" title="Permalink to this term" href="#-ECHILD">¶</a></dt><dd><p>The event loop has been created in a different process.</p></dd><dt id="-ENOTSUP"><span class="term"><code class="varname">-ENOTSUP</code></span><a class="headerlink" title="Permalink to this term" href="#-ENOTSUP">¶</a></dt><dd><p>The selected clock is not supported by the event loop implementation.</p></dd></dl></div></div><div class="refsect1"><a name="idm214178541472"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p><code class="function">sd_event_add_time()</code> and the other functions
+    code. </p></div><div class="refsect1"><a name="idm214185383760"></a><h2 id="Errors">Errors<a class="headerlink" title="Permalink to this headline" href="#Errors">¶</a></h2><p>Returned errors may indicate the following problems:</p><div class="variablelist"><dl class="variablelist"><dt id="-ENOMEM"><span class="term"><code class="varname">-ENOMEM</code></span><a class="headerlink" title="Permalink to this term" href="#-ENOMEM">¶</a></dt><dd><p>Not enough memory to allocate object.</p></dd><dt id="-EINVAL"><span class="term"><code class="varname">-EINVAL</code></span><a class="headerlink" title="Permalink to this term" href="#-EINVAL">¶</a></dt><dd><p>An invalid argument has been passed.</p></dd><dt id="-ESTALE"><span class="term"><code class="varname">-ESTALE</code></span><a class="headerlink" title="Permalink to this term" href="#-ESTALE">¶</a></dt><dd><p>The event loop is already terminated.</p></dd><dt id="-ECHILD"><span class="term"><code class="varname">-ECHILD</code></span><a class="headerlink" title="Permalink to this term" href="#-ECHILD">¶</a></dt><dd><p>The event loop has been created in a different process.</p></dd><dt id="-ENOTSUP"><span class="term"><code class="varname">-ENOTSUP</code></span><a class="headerlink" title="Permalink to this term" href="#-ENOTSUP">¶</a></dt><dd><p>The selected clock is not supported by the event loop implementation.</p></dd></dl></div></div><div class="refsect1"><a name="idm214180461872"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p><code class="function">sd_event_add_time()</code> and the other functions
     described here are available as a shared library, which can be
     compiled and linked to with the
     <code class="constant">libsystemd</code> <a href="pkg-config.html"><span class="citerefentry"><span class="refentrytitle">pkg-config</span>(1)</span></a>
-    file.</p></div><div class="refsect1"><a name="idm214174754176"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+    file.</p></div><div class="refsect1"><a name="idm214180458928"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
       <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
       <a href="sd-event.html"><span class="citerefentry"><span class="refentrytitle">sd-event</span>(3)</span></a>,
       <a href="sd_event_new.html"><span class="citerefentry"><span class="refentrytitle">sd_event_new</span>(3)</span></a>,
index eed932a0c4fe363012bf45e3df36a84f9dc11073..893572092a94695db0700428bbf6a3be11da0e5c 100644 (file)
@@ -19,7 +19,7 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="sd_event_add_time"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_event_add_time, sd_event_source_get_time, sd_event_source_set_time, sd_event_source_get_time_accuracy, sd_event_source_set_time_accuracy, sd_event_source_get_time_clock — Add a timer event source to an event loop</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-bus.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_event_add_time</b>(</code></td><td>sd_event *<var class="pdparam">event</var>, </td></tr><tr><td> </td><td>sd_event_source **<var class="pdparam">source</var>, </td></tr><tr><td> </td><td>clockid_t <var class="pdparam">clock</var>, </td></tr><tr><td> </td><td>uint64_t <var class="pdparam">usec</var>, </td></tr><tr><td> </td><td>uint64_t <var class="pdparam">accuracy</var>, </td></tr><tr><td> </td><td>sd_event_time_handler_t <var class="pdparam">handler</var>, </td></tr><tr><td> </td><td>void *<var class="pdparam">userdata</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_event_source_get_time</b>(</code></td><td>sd_event_source *<var class="pdparam">source</var>, </td></tr><tr><td> </td><td>usec_t *<var class="pdparam">usec</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_event_source_set_time</b>(</code></td><td>sd_event_source *<var class="pdparam">source</var>, </td></tr><tr><td> </td><td>usec_t <var class="pdparam">usec</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_event_source_get_time_accuracy</b>(</code></td><td>sd_event_source *<var class="pdparam">source</var>, </td></tr><tr><td> </td><td>usec_t *<var class="pdparam">usec</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_event_source_set_time_accuracy</b>(</code></td><td>sd_event_source *<var class="pdparam">source</var>, </td></tr><tr><td> </td><td>usec_t <var class="pdparam">usec</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_event_source_get_time_clock</b>(</code></td><td>sd_event_source *<var class="pdparam">source</var>, </td></tr><tr><td> </td><td>clockid_t *<var class="pdparam">clock</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214176660896"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_event_add_time()</code> adds a new timer
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="sd_event_add_time"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_event_add_time, sd_event_source_get_time, sd_event_source_set_time, sd_event_source_get_time_accuracy, sd_event_source_set_time_accuracy, sd_event_source_get_time_clock — Add a timer event source to an event loop</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-bus.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_event_add_time</b>(</code></td><td>sd_event *<var class="pdparam">event</var>, </td></tr><tr><td> </td><td>sd_event_source **<var class="pdparam">source</var>, </td></tr><tr><td> </td><td>clockid_t <var class="pdparam">clock</var>, </td></tr><tr><td> </td><td>uint64_t <var class="pdparam">usec</var>, </td></tr><tr><td> </td><td>uint64_t <var class="pdparam">accuracy</var>, </td></tr><tr><td> </td><td>sd_event_time_handler_t <var class="pdparam">handler</var>, </td></tr><tr><td> </td><td>void *<var class="pdparam">userdata</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_event_source_get_time</b>(</code></td><td>sd_event_source *<var class="pdparam">source</var>, </td></tr><tr><td> </td><td>usec_t *<var class="pdparam">usec</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_event_source_set_time</b>(</code></td><td>sd_event_source *<var class="pdparam">source</var>, </td></tr><tr><td> </td><td>usec_t <var class="pdparam">usec</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_event_source_get_time_accuracy</b>(</code></td><td>sd_event_source *<var class="pdparam">source</var>, </td></tr><tr><td> </td><td>usec_t *<var class="pdparam">usec</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_event_source_set_time_accuracy</b>(</code></td><td>sd_event_source *<var class="pdparam">source</var>, </td></tr><tr><td> </td><td>usec_t <var class="pdparam">usec</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_event_source_get_time_clock</b>(</code></td><td>sd_event_source *<var class="pdparam">source</var>, </td></tr><tr><td> </td><td>clockid_t *<var class="pdparam">clock</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214185413552"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_event_add_time()</code> adds a new timer
     event source to an event loop object. The event loop is specified
     in <em class="parameter"><code>event</code></em>, the event source is returned in
     the <em class="parameter"><code>source</code></em> parameter. The
     retrieves the configured clock of a timer event source created
     previously with <code class="function">sd_event_add_time()</code>. It takes
     the event source object and a pointer to a variable to store the
-    clock identifier in.</p></div><div class="refsect1"><a name="idm214175731552"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>On success, these functions return 0 or a positive
+    clock identifier in.</p></div><div class="refsect1"><a name="idm214185385088"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>On success, these functions return 0 or a positive
     integer. On failure, they return a negative errno-style error
-    code. </p></div><div class="refsect1"><a name="idm214174266448"></a><h2 id="Errors">Errors<a class="headerlink" title="Permalink to this headline" href="#Errors">¶</a></h2><p>Returned errors may indicate the following problems:</p><div class="variablelist"><dl class="variablelist"><dt id="-ENOMEM"><span class="term"><code class="varname">-ENOMEM</code></span><a class="headerlink" title="Permalink to this term" href="#-ENOMEM">¶</a></dt><dd><p>Not enough memory to allocate object.</p></dd><dt id="-EINVAL"><span class="term"><code class="varname">-EINVAL</code></span><a class="headerlink" title="Permalink to this term" href="#-EINVAL">¶</a></dt><dd><p>An invalid argument has been passed.</p></dd><dt id="-ESTALE"><span class="term"><code class="varname">-ESTALE</code></span><a class="headerlink" title="Permalink to this term" href="#-ESTALE">¶</a></dt><dd><p>The event loop is already terminated.</p></dd><dt id="-ECHILD"><span class="term"><code class="varname">-ECHILD</code></span><a class="headerlink" title="Permalink to this term" href="#-ECHILD">¶</a></dt><dd><p>The event loop has been created in a different process.</p></dd><dt id="-ENOTSUP"><span class="term"><code class="varname">-ENOTSUP</code></span><a class="headerlink" title="Permalink to this term" href="#-ENOTSUP">¶</a></dt><dd><p>The selected clock is not supported by the event loop implementation.</p></dd></dl></div></div><div class="refsect1"><a name="idm214178541472"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p><code class="function">sd_event_add_time()</code> and the other functions
+    code. </p></div><div class="refsect1"><a name="idm214185383760"></a><h2 id="Errors">Errors<a class="headerlink" title="Permalink to this headline" href="#Errors">¶</a></h2><p>Returned errors may indicate the following problems:</p><div class="variablelist"><dl class="variablelist"><dt id="-ENOMEM"><span class="term"><code class="varname">-ENOMEM</code></span><a class="headerlink" title="Permalink to this term" href="#-ENOMEM">¶</a></dt><dd><p>Not enough memory to allocate object.</p></dd><dt id="-EINVAL"><span class="term"><code class="varname">-EINVAL</code></span><a class="headerlink" title="Permalink to this term" href="#-EINVAL">¶</a></dt><dd><p>An invalid argument has been passed.</p></dd><dt id="-ESTALE"><span class="term"><code class="varname">-ESTALE</code></span><a class="headerlink" title="Permalink to this term" href="#-ESTALE">¶</a></dt><dd><p>The event loop is already terminated.</p></dd><dt id="-ECHILD"><span class="term"><code class="varname">-ECHILD</code></span><a class="headerlink" title="Permalink to this term" href="#-ECHILD">¶</a></dt><dd><p>The event loop has been created in a different process.</p></dd><dt id="-ENOTSUP"><span class="term"><code class="varname">-ENOTSUP</code></span><a class="headerlink" title="Permalink to this term" href="#-ENOTSUP">¶</a></dt><dd><p>The selected clock is not supported by the event loop implementation.</p></dd></dl></div></div><div class="refsect1"><a name="idm214180461872"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p><code class="function">sd_event_add_time()</code> and the other functions
     described here are available as a shared library, which can be
     compiled and linked to with the
     <code class="constant">libsystemd</code> <a href="pkg-config.html"><span class="citerefentry"><span class="refentrytitle">pkg-config</span>(1)</span></a>
-    file.</p></div><div class="refsect1"><a name="idm214174754176"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+    file.</p></div><div class="refsect1"><a name="idm214180458928"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
       <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
       <a href="sd-event.html"><span class="citerefentry"><span class="refentrytitle">sd-event</span>(3)</span></a>,
       <a href="sd_event_new.html"><span class="citerefentry"><span class="refentrytitle">sd_event_new</span>(3)</span></a>,
index eed932a0c4fe363012bf45e3df36a84f9dc11073..893572092a94695db0700428bbf6a3be11da0e5c 100644 (file)
@@ -19,7 +19,7 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="sd_event_add_time"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_event_add_time, sd_event_source_get_time, sd_event_source_set_time, sd_event_source_get_time_accuracy, sd_event_source_set_time_accuracy, sd_event_source_get_time_clock — Add a timer event source to an event loop</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-bus.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_event_add_time</b>(</code></td><td>sd_event *<var class="pdparam">event</var>, </td></tr><tr><td> </td><td>sd_event_source **<var class="pdparam">source</var>, </td></tr><tr><td> </td><td>clockid_t <var class="pdparam">clock</var>, </td></tr><tr><td> </td><td>uint64_t <var class="pdparam">usec</var>, </td></tr><tr><td> </td><td>uint64_t <var class="pdparam">accuracy</var>, </td></tr><tr><td> </td><td>sd_event_time_handler_t <var class="pdparam">handler</var>, </td></tr><tr><td> </td><td>void *<var class="pdparam">userdata</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_event_source_get_time</b>(</code></td><td>sd_event_source *<var class="pdparam">source</var>, </td></tr><tr><td> </td><td>usec_t *<var class="pdparam">usec</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_event_source_set_time</b>(</code></td><td>sd_event_source *<var class="pdparam">source</var>, </td></tr><tr><td> </td><td>usec_t <var class="pdparam">usec</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_event_source_get_time_accuracy</b>(</code></td><td>sd_event_source *<var class="pdparam">source</var>, </td></tr><tr><td> </td><td>usec_t *<var class="pdparam">usec</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_event_source_set_time_accuracy</b>(</code></td><td>sd_event_source *<var class="pdparam">source</var>, </td></tr><tr><td> </td><td>usec_t <var class="pdparam">usec</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_event_source_get_time_clock</b>(</code></td><td>sd_event_source *<var class="pdparam">source</var>, </td></tr><tr><td> </td><td>clockid_t *<var class="pdparam">clock</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214176660896"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_event_add_time()</code> adds a new timer
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="sd_event_add_time"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_event_add_time, sd_event_source_get_time, sd_event_source_set_time, sd_event_source_get_time_accuracy, sd_event_source_set_time_accuracy, sd_event_source_get_time_clock — Add a timer event source to an event loop</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-bus.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_event_add_time</b>(</code></td><td>sd_event *<var class="pdparam">event</var>, </td></tr><tr><td> </td><td>sd_event_source **<var class="pdparam">source</var>, </td></tr><tr><td> </td><td>clockid_t <var class="pdparam">clock</var>, </td></tr><tr><td> </td><td>uint64_t <var class="pdparam">usec</var>, </td></tr><tr><td> </td><td>uint64_t <var class="pdparam">accuracy</var>, </td></tr><tr><td> </td><td>sd_event_time_handler_t <var class="pdparam">handler</var>, </td></tr><tr><td> </td><td>void *<var class="pdparam">userdata</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_event_source_get_time</b>(</code></td><td>sd_event_source *<var class="pdparam">source</var>, </td></tr><tr><td> </td><td>usec_t *<var class="pdparam">usec</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_event_source_set_time</b>(</code></td><td>sd_event_source *<var class="pdparam">source</var>, </td></tr><tr><td> </td><td>usec_t <var class="pdparam">usec</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_event_source_get_time_accuracy</b>(</code></td><td>sd_event_source *<var class="pdparam">source</var>, </td></tr><tr><td> </td><td>usec_t *<var class="pdparam">usec</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_event_source_set_time_accuracy</b>(</code></td><td>sd_event_source *<var class="pdparam">source</var>, </td></tr><tr><td> </td><td>usec_t <var class="pdparam">usec</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_event_source_get_time_clock</b>(</code></td><td>sd_event_source *<var class="pdparam">source</var>, </td></tr><tr><td> </td><td>clockid_t *<var class="pdparam">clock</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214185413552"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_event_add_time()</code> adds a new timer
     event source to an event loop object. The event loop is specified
     in <em class="parameter"><code>event</code></em>, the event source is returned in
     the <em class="parameter"><code>source</code></em> parameter. The
     retrieves the configured clock of a timer event source created
     previously with <code class="function">sd_event_add_time()</code>. It takes
     the event source object and a pointer to a variable to store the
-    clock identifier in.</p></div><div class="refsect1"><a name="idm214175731552"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>On success, these functions return 0 or a positive
+    clock identifier in.</p></div><div class="refsect1"><a name="idm214185385088"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>On success, these functions return 0 or a positive
     integer. On failure, they return a negative errno-style error
-    code. </p></div><div class="refsect1"><a name="idm214174266448"></a><h2 id="Errors">Errors<a class="headerlink" title="Permalink to this headline" href="#Errors">¶</a></h2><p>Returned errors may indicate the following problems:</p><div class="variablelist"><dl class="variablelist"><dt id="-ENOMEM"><span class="term"><code class="varname">-ENOMEM</code></span><a class="headerlink" title="Permalink to this term" href="#-ENOMEM">¶</a></dt><dd><p>Not enough memory to allocate object.</p></dd><dt id="-EINVAL"><span class="term"><code class="varname">-EINVAL</code></span><a class="headerlink" title="Permalink to this term" href="#-EINVAL">¶</a></dt><dd><p>An invalid argument has been passed.</p></dd><dt id="-ESTALE"><span class="term"><code class="varname">-ESTALE</code></span><a class="headerlink" title="Permalink to this term" href="#-ESTALE">¶</a></dt><dd><p>The event loop is already terminated.</p></dd><dt id="-ECHILD"><span class="term"><code class="varname">-ECHILD</code></span><a class="headerlink" title="Permalink to this term" href="#-ECHILD">¶</a></dt><dd><p>The event loop has been created in a different process.</p></dd><dt id="-ENOTSUP"><span class="term"><code class="varname">-ENOTSUP</code></span><a class="headerlink" title="Permalink to this term" href="#-ENOTSUP">¶</a></dt><dd><p>The selected clock is not supported by the event loop implementation.</p></dd></dl></div></div><div class="refsect1"><a name="idm214178541472"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p><code class="function">sd_event_add_time()</code> and the other functions
+    code. </p></div><div class="refsect1"><a name="idm214185383760"></a><h2 id="Errors">Errors<a class="headerlink" title="Permalink to this headline" href="#Errors">¶</a></h2><p>Returned errors may indicate the following problems:</p><div class="variablelist"><dl class="variablelist"><dt id="-ENOMEM"><span class="term"><code class="varname">-ENOMEM</code></span><a class="headerlink" title="Permalink to this term" href="#-ENOMEM">¶</a></dt><dd><p>Not enough memory to allocate object.</p></dd><dt id="-EINVAL"><span class="term"><code class="varname">-EINVAL</code></span><a class="headerlink" title="Permalink to this term" href="#-EINVAL">¶</a></dt><dd><p>An invalid argument has been passed.</p></dd><dt id="-ESTALE"><span class="term"><code class="varname">-ESTALE</code></span><a class="headerlink" title="Permalink to this term" href="#-ESTALE">¶</a></dt><dd><p>The event loop is already terminated.</p></dd><dt id="-ECHILD"><span class="term"><code class="varname">-ECHILD</code></span><a class="headerlink" title="Permalink to this term" href="#-ECHILD">¶</a></dt><dd><p>The event loop has been created in a different process.</p></dd><dt id="-ENOTSUP"><span class="term"><code class="varname">-ENOTSUP</code></span><a class="headerlink" title="Permalink to this term" href="#-ENOTSUP">¶</a></dt><dd><p>The selected clock is not supported by the event loop implementation.</p></dd></dl></div></div><div class="refsect1"><a name="idm214180461872"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p><code class="function">sd_event_add_time()</code> and the other functions
     described here are available as a shared library, which can be
     compiled and linked to with the
     <code class="constant">libsystemd</code> <a href="pkg-config.html"><span class="citerefentry"><span class="refentrytitle">pkg-config</span>(1)</span></a>
-    file.</p></div><div class="refsect1"><a name="idm214174754176"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+    file.</p></div><div class="refsect1"><a name="idm214180458928"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
       <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
       <a href="sd-event.html"><span class="citerefentry"><span class="refentrytitle">sd-event</span>(3)</span></a>,
       <a href="sd_event_new.html"><span class="citerefentry"><span class="refentrytitle">sd_event_new</span>(3)</span></a>,
index eed932a0c4fe363012bf45e3df36a84f9dc11073..893572092a94695db0700428bbf6a3be11da0e5c 100644 (file)
@@ -19,7 +19,7 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="sd_event_add_time"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_event_add_time, sd_event_source_get_time, sd_event_source_set_time, sd_event_source_get_time_accuracy, sd_event_source_set_time_accuracy, sd_event_source_get_time_clock — Add a timer event source to an event loop</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-bus.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_event_add_time</b>(</code></td><td>sd_event *<var class="pdparam">event</var>, </td></tr><tr><td> </td><td>sd_event_source **<var class="pdparam">source</var>, </td></tr><tr><td> </td><td>clockid_t <var class="pdparam">clock</var>, </td></tr><tr><td> </td><td>uint64_t <var class="pdparam">usec</var>, </td></tr><tr><td> </td><td>uint64_t <var class="pdparam">accuracy</var>, </td></tr><tr><td> </td><td>sd_event_time_handler_t <var class="pdparam">handler</var>, </td></tr><tr><td> </td><td>void *<var class="pdparam">userdata</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_event_source_get_time</b>(</code></td><td>sd_event_source *<var class="pdparam">source</var>, </td></tr><tr><td> </td><td>usec_t *<var class="pdparam">usec</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_event_source_set_time</b>(</code></td><td>sd_event_source *<var class="pdparam">source</var>, </td></tr><tr><td> </td><td>usec_t <var class="pdparam">usec</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_event_source_get_time_accuracy</b>(</code></td><td>sd_event_source *<var class="pdparam">source</var>, </td></tr><tr><td> </td><td>usec_t *<var class="pdparam">usec</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_event_source_set_time_accuracy</b>(</code></td><td>sd_event_source *<var class="pdparam">source</var>, </td></tr><tr><td> </td><td>usec_t <var class="pdparam">usec</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_event_source_get_time_clock</b>(</code></td><td>sd_event_source *<var class="pdparam">source</var>, </td></tr><tr><td> </td><td>clockid_t *<var class="pdparam">clock</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214176660896"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_event_add_time()</code> adds a new timer
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="sd_event_add_time"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_event_add_time, sd_event_source_get_time, sd_event_source_set_time, sd_event_source_get_time_accuracy, sd_event_source_set_time_accuracy, sd_event_source_get_time_clock — Add a timer event source to an event loop</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-bus.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_event_add_time</b>(</code></td><td>sd_event *<var class="pdparam">event</var>, </td></tr><tr><td> </td><td>sd_event_source **<var class="pdparam">source</var>, </td></tr><tr><td> </td><td>clockid_t <var class="pdparam">clock</var>, </td></tr><tr><td> </td><td>uint64_t <var class="pdparam">usec</var>, </td></tr><tr><td> </td><td>uint64_t <var class="pdparam">accuracy</var>, </td></tr><tr><td> </td><td>sd_event_time_handler_t <var class="pdparam">handler</var>, </td></tr><tr><td> </td><td>void *<var class="pdparam">userdata</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_event_source_get_time</b>(</code></td><td>sd_event_source *<var class="pdparam">source</var>, </td></tr><tr><td> </td><td>usec_t *<var class="pdparam">usec</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_event_source_set_time</b>(</code></td><td>sd_event_source *<var class="pdparam">source</var>, </td></tr><tr><td> </td><td>usec_t <var class="pdparam">usec</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_event_source_get_time_accuracy</b>(</code></td><td>sd_event_source *<var class="pdparam">source</var>, </td></tr><tr><td> </td><td>usec_t *<var class="pdparam">usec</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_event_source_set_time_accuracy</b>(</code></td><td>sd_event_source *<var class="pdparam">source</var>, </td></tr><tr><td> </td><td>usec_t <var class="pdparam">usec</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_event_source_get_time_clock</b>(</code></td><td>sd_event_source *<var class="pdparam">source</var>, </td></tr><tr><td> </td><td>clockid_t *<var class="pdparam">clock</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214185413552"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_event_add_time()</code> adds a new timer
     event source to an event loop object. The event loop is specified
     in <em class="parameter"><code>event</code></em>, the event source is returned in
     the <em class="parameter"><code>source</code></em> parameter. The
     retrieves the configured clock of a timer event source created
     previously with <code class="function">sd_event_add_time()</code>. It takes
     the event source object and a pointer to a variable to store the
-    clock identifier in.</p></div><div class="refsect1"><a name="idm214175731552"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>On success, these functions return 0 or a positive
+    clock identifier in.</p></div><div class="refsect1"><a name="idm214185385088"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>On success, these functions return 0 or a positive
     integer. On failure, they return a negative errno-style error
-    code. </p></div><div class="refsect1"><a name="idm214174266448"></a><h2 id="Errors">Errors<a class="headerlink" title="Permalink to this headline" href="#Errors">¶</a></h2><p>Returned errors may indicate the following problems:</p><div class="variablelist"><dl class="variablelist"><dt id="-ENOMEM"><span class="term"><code class="varname">-ENOMEM</code></span><a class="headerlink" title="Permalink to this term" href="#-ENOMEM">¶</a></dt><dd><p>Not enough memory to allocate object.</p></dd><dt id="-EINVAL"><span class="term"><code class="varname">-EINVAL</code></span><a class="headerlink" title="Permalink to this term" href="#-EINVAL">¶</a></dt><dd><p>An invalid argument has been passed.</p></dd><dt id="-ESTALE"><span class="term"><code class="varname">-ESTALE</code></span><a class="headerlink" title="Permalink to this term" href="#-ESTALE">¶</a></dt><dd><p>The event loop is already terminated.</p></dd><dt id="-ECHILD"><span class="term"><code class="varname">-ECHILD</code></span><a class="headerlink" title="Permalink to this term" href="#-ECHILD">¶</a></dt><dd><p>The event loop has been created in a different process.</p></dd><dt id="-ENOTSUP"><span class="term"><code class="varname">-ENOTSUP</code></span><a class="headerlink" title="Permalink to this term" href="#-ENOTSUP">¶</a></dt><dd><p>The selected clock is not supported by the event loop implementation.</p></dd></dl></div></div><div class="refsect1"><a name="idm214178541472"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p><code class="function">sd_event_add_time()</code> and the other functions
+    code. </p></div><div class="refsect1"><a name="idm214185383760"></a><h2 id="Errors">Errors<a class="headerlink" title="Permalink to this headline" href="#Errors">¶</a></h2><p>Returned errors may indicate the following problems:</p><div class="variablelist"><dl class="variablelist"><dt id="-ENOMEM"><span class="term"><code class="varname">-ENOMEM</code></span><a class="headerlink" title="Permalink to this term" href="#-ENOMEM">¶</a></dt><dd><p>Not enough memory to allocate object.</p></dd><dt id="-EINVAL"><span class="term"><code class="varname">-EINVAL</code></span><a class="headerlink" title="Permalink to this term" href="#-EINVAL">¶</a></dt><dd><p>An invalid argument has been passed.</p></dd><dt id="-ESTALE"><span class="term"><code class="varname">-ESTALE</code></span><a class="headerlink" title="Permalink to this term" href="#-ESTALE">¶</a></dt><dd><p>The event loop is already terminated.</p></dd><dt id="-ECHILD"><span class="term"><code class="varname">-ECHILD</code></span><a class="headerlink" title="Permalink to this term" href="#-ECHILD">¶</a></dt><dd><p>The event loop has been created in a different process.</p></dd><dt id="-ENOTSUP"><span class="term"><code class="varname">-ENOTSUP</code></span><a class="headerlink" title="Permalink to this term" href="#-ENOTSUP">¶</a></dt><dd><p>The selected clock is not supported by the event loop implementation.</p></dd></dl></div></div><div class="refsect1"><a name="idm214180461872"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p><code class="function">sd_event_add_time()</code> and the other functions
     described here are available as a shared library, which can be
     compiled and linked to with the
     <code class="constant">libsystemd</code> <a href="pkg-config.html"><span class="citerefentry"><span class="refentrytitle">pkg-config</span>(1)</span></a>
-    file.</p></div><div class="refsect1"><a name="idm214174754176"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+    file.</p></div><div class="refsect1"><a name="idm214180458928"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
       <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
       <a href="sd-event.html"><span class="citerefentry"><span class="refentrytitle">sd-event</span>(3)</span></a>,
       <a href="sd_event_new.html"><span class="citerefentry"><span class="refentrytitle">sd_event_new</span>(3)</span></a>,
index eed932a0c4fe363012bf45e3df36a84f9dc11073..893572092a94695db0700428bbf6a3be11da0e5c 100644 (file)
@@ -19,7 +19,7 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="sd_event_add_time"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_event_add_time, sd_event_source_get_time, sd_event_source_set_time, sd_event_source_get_time_accuracy, sd_event_source_set_time_accuracy, sd_event_source_get_time_clock — Add a timer event source to an event loop</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-bus.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_event_add_time</b>(</code></td><td>sd_event *<var class="pdparam">event</var>, </td></tr><tr><td> </td><td>sd_event_source **<var class="pdparam">source</var>, </td></tr><tr><td> </td><td>clockid_t <var class="pdparam">clock</var>, </td></tr><tr><td> </td><td>uint64_t <var class="pdparam">usec</var>, </td></tr><tr><td> </td><td>uint64_t <var class="pdparam">accuracy</var>, </td></tr><tr><td> </td><td>sd_event_time_handler_t <var class="pdparam">handler</var>, </td></tr><tr><td> </td><td>void *<var class="pdparam">userdata</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_event_source_get_time</b>(</code></td><td>sd_event_source *<var class="pdparam">source</var>, </td></tr><tr><td> </td><td>usec_t *<var class="pdparam">usec</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_event_source_set_time</b>(</code></td><td>sd_event_source *<var class="pdparam">source</var>, </td></tr><tr><td> </td><td>usec_t <var class="pdparam">usec</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_event_source_get_time_accuracy</b>(</code></td><td>sd_event_source *<var class="pdparam">source</var>, </td></tr><tr><td> </td><td>usec_t *<var class="pdparam">usec</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_event_source_set_time_accuracy</b>(</code></td><td>sd_event_source *<var class="pdparam">source</var>, </td></tr><tr><td> </td><td>usec_t <var class="pdparam">usec</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_event_source_get_time_clock</b>(</code></td><td>sd_event_source *<var class="pdparam">source</var>, </td></tr><tr><td> </td><td>clockid_t *<var class="pdparam">clock</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214176660896"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_event_add_time()</code> adds a new timer
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="sd_event_add_time"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_event_add_time, sd_event_source_get_time, sd_event_source_set_time, sd_event_source_get_time_accuracy, sd_event_source_set_time_accuracy, sd_event_source_get_time_clock — Add a timer event source to an event loop</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-bus.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_event_add_time</b>(</code></td><td>sd_event *<var class="pdparam">event</var>, </td></tr><tr><td> </td><td>sd_event_source **<var class="pdparam">source</var>, </td></tr><tr><td> </td><td>clockid_t <var class="pdparam">clock</var>, </td></tr><tr><td> </td><td>uint64_t <var class="pdparam">usec</var>, </td></tr><tr><td> </td><td>uint64_t <var class="pdparam">accuracy</var>, </td></tr><tr><td> </td><td>sd_event_time_handler_t <var class="pdparam">handler</var>, </td></tr><tr><td> </td><td>void *<var class="pdparam">userdata</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_event_source_get_time</b>(</code></td><td>sd_event_source *<var class="pdparam">source</var>, </td></tr><tr><td> </td><td>usec_t *<var class="pdparam">usec</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_event_source_set_time</b>(</code></td><td>sd_event_source *<var class="pdparam">source</var>, </td></tr><tr><td> </td><td>usec_t <var class="pdparam">usec</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_event_source_get_time_accuracy</b>(</code></td><td>sd_event_source *<var class="pdparam">source</var>, </td></tr><tr><td> </td><td>usec_t *<var class="pdparam">usec</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_event_source_set_time_accuracy</b>(</code></td><td>sd_event_source *<var class="pdparam">source</var>, </td></tr><tr><td> </td><td>usec_t <var class="pdparam">usec</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_event_source_get_time_clock</b>(</code></td><td>sd_event_source *<var class="pdparam">source</var>, </td></tr><tr><td> </td><td>clockid_t *<var class="pdparam">clock</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214185413552"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_event_add_time()</code> adds a new timer
     event source to an event loop object. The event loop is specified
     in <em class="parameter"><code>event</code></em>, the event source is returned in
     the <em class="parameter"><code>source</code></em> parameter. The
     retrieves the configured clock of a timer event source created
     previously with <code class="function">sd_event_add_time()</code>. It takes
     the event source object and a pointer to a variable to store the
-    clock identifier in.</p></div><div class="refsect1"><a name="idm214175731552"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>On success, these functions return 0 or a positive
+    clock identifier in.</p></div><div class="refsect1"><a name="idm214185385088"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>On success, these functions return 0 or a positive
     integer. On failure, they return a negative errno-style error
-    code. </p></div><div class="refsect1"><a name="idm214174266448"></a><h2 id="Errors">Errors<a class="headerlink" title="Permalink to this headline" href="#Errors">¶</a></h2><p>Returned errors may indicate the following problems:</p><div class="variablelist"><dl class="variablelist"><dt id="-ENOMEM"><span class="term"><code class="varname">-ENOMEM</code></span><a class="headerlink" title="Permalink to this term" href="#-ENOMEM">¶</a></dt><dd><p>Not enough memory to allocate object.</p></dd><dt id="-EINVAL"><span class="term"><code class="varname">-EINVAL</code></span><a class="headerlink" title="Permalink to this term" href="#-EINVAL">¶</a></dt><dd><p>An invalid argument has been passed.</p></dd><dt id="-ESTALE"><span class="term"><code class="varname">-ESTALE</code></span><a class="headerlink" title="Permalink to this term" href="#-ESTALE">¶</a></dt><dd><p>The event loop is already terminated.</p></dd><dt id="-ECHILD"><span class="term"><code class="varname">-ECHILD</code></span><a class="headerlink" title="Permalink to this term" href="#-ECHILD">¶</a></dt><dd><p>The event loop has been created in a different process.</p></dd><dt id="-ENOTSUP"><span class="term"><code class="varname">-ENOTSUP</code></span><a class="headerlink" title="Permalink to this term" href="#-ENOTSUP">¶</a></dt><dd><p>The selected clock is not supported by the event loop implementation.</p></dd></dl></div></div><div class="refsect1"><a name="idm214178541472"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p><code class="function">sd_event_add_time()</code> and the other functions
+    code. </p></div><div class="refsect1"><a name="idm214185383760"></a><h2 id="Errors">Errors<a class="headerlink" title="Permalink to this headline" href="#Errors">¶</a></h2><p>Returned errors may indicate the following problems:</p><div class="variablelist"><dl class="variablelist"><dt id="-ENOMEM"><span class="term"><code class="varname">-ENOMEM</code></span><a class="headerlink" title="Permalink to this term" href="#-ENOMEM">¶</a></dt><dd><p>Not enough memory to allocate object.</p></dd><dt id="-EINVAL"><span class="term"><code class="varname">-EINVAL</code></span><a class="headerlink" title="Permalink to this term" href="#-EINVAL">¶</a></dt><dd><p>An invalid argument has been passed.</p></dd><dt id="-ESTALE"><span class="term"><code class="varname">-ESTALE</code></span><a class="headerlink" title="Permalink to this term" href="#-ESTALE">¶</a></dt><dd><p>The event loop is already terminated.</p></dd><dt id="-ECHILD"><span class="term"><code class="varname">-ECHILD</code></span><a class="headerlink" title="Permalink to this term" href="#-ECHILD">¶</a></dt><dd><p>The event loop has been created in a different process.</p></dd><dt id="-ENOTSUP"><span class="term"><code class="varname">-ENOTSUP</code></span><a class="headerlink" title="Permalink to this term" href="#-ENOTSUP">¶</a></dt><dd><p>The selected clock is not supported by the event loop implementation.</p></dd></dl></div></div><div class="refsect1"><a name="idm214180461872"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p><code class="function">sd_event_add_time()</code> and the other functions
     described here are available as a shared library, which can be
     compiled and linked to with the
     <code class="constant">libsystemd</code> <a href="pkg-config.html"><span class="citerefentry"><span class="refentrytitle">pkg-config</span>(1)</span></a>
-    file.</p></div><div class="refsect1"><a name="idm214174754176"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+    file.</p></div><div class="refsect1"><a name="idm214180458928"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
       <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
       <a href="sd-event.html"><span class="citerefentry"><span class="refentrytitle">sd-event</span>(3)</span></a>,
       <a href="sd_event_new.html"><span class="citerefentry"><span class="refentrytitle">sd_event_new</span>(3)</span></a>,
index 13fabd10af0b54956dedbf86aeb09b81c1e96c11..435ad812e2c669251b75b2090edc0aa2ce0295c0 100644 (file)
@@ -19,7 +19,7 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="sd_event_new"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_event_new, sd_event_default, sd_event_ref, sd_event_unref — Acquire and release an event loop object</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-bus.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_event_new</b>(</code></td><td>sd_bus **<var class="pdparam">event</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_event_default</b>(</code></td><td>sd_bus **<var class="pdparam">event</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">sd_bus *<b class="fsfunc">sd_event_ref</b>(</code></td><td>sd_bus *<var class="pdparam">event</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">sd_bus *<b class="fsfunc">sd_event_unref</b>(</code></td><td>sd_bus *<var class="pdparam">event</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214181989904"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_event_new()</code> allocates a new event
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="sd_event_new"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_event_new, sd_event_default, sd_event_ref, sd_event_unref — Acquire and release an event loop object</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-bus.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_event_new</b>(</code></td><td>sd_bus **<var class="pdparam">event</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_event_default</b>(</code></td><td>sd_bus **<var class="pdparam">event</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">sd_bus *<b class="fsfunc">sd_event_ref</b>(</code></td><td>sd_bus *<var class="pdparam">event</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">sd_bus *<b class="fsfunc">sd_event_unref</b>(</code></td><td>sd_bus *<var class="pdparam">event</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214169459136"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_event_new()</code> allocates a new event
     loop object. The event loop object is returned in the
     <em class="parameter"><code>event</code></em> parameter. After use, drop
     the returned reference with
     <code class="function">sd_event_default()</code> will result in two
     distinct objects. Note that, in order to free an event loop object,
     all remaining event sources of the event loop also need to be
-    freed as they each keep a reference to it.</p></div><div class="refsect1"><a name="idm214182408096"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>On success, <code class="function">sd_event_new()</code> and
+    freed as they each keep a reference to it.</p></div><div class="refsect1"><a name="idm214173348800"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>On success, <code class="function">sd_event_new()</code> and
     <code class="function">sd_event_default()</code> return 0 or a positive
     integer. On failure, they return a negative errno-style error
     code. <code class="function">sd_event_ref()</code> always returns a pointer
     to the event loop object passed
     in. <code class="function">sd_event_unref()</code> always returns
-    NULL.</p></div><div class="refsect1"><a name="idm214181117184"></a><h2 id="Errors">Errors<a class="headerlink" title="Permalink to this headline" href="#Errors">¶</a></h2><p>Returned errors may indicate the following problems:</p><div class="variablelist"><dl class="variablelist"><dt id="-ENOMEM"><span class="term"><code class="varname">-ENOMEM</code></span><a class="headerlink" title="Permalink to this term" href="#-ENOMEM">¶</a></dt><dd><p>Not enough memory to allocate object</p></dd><dt id="-EMFILE"><span class="term"><code class="varname">-EMFILE</code></span><a class="headerlink" title="Permalink to this term" href="#-EMFILE">¶</a></dt><dd><p>The maximum number of event loops has been allocated.</p></dd></dl></div></div><div class="refsect1"><a name="idm214181785424"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p><code class="function">sd_event_new()</code> and the other functions
+    NULL.</p></div><div class="refsect1"><a name="idm214173344688"></a><h2 id="Errors">Errors<a class="headerlink" title="Permalink to this headline" href="#Errors">¶</a></h2><p>Returned errors may indicate the following problems:</p><div class="variablelist"><dl class="variablelist"><dt id="-ENOMEM"><span class="term"><code class="varname">-ENOMEM</code></span><a class="headerlink" title="Permalink to this term" href="#-ENOMEM">¶</a></dt><dd><p>Not enough memory to allocate object</p></dd><dt id="-EMFILE"><span class="term"><code class="varname">-EMFILE</code></span><a class="headerlink" title="Permalink to this term" href="#-EMFILE">¶</a></dt><dd><p>The maximum number of event loops has been allocated.</p></dd></dl></div></div><div class="refsect1"><a name="idm214173340144"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p><code class="function">sd_event_new()</code> and the other functions
     described here are available as a shared library, which can be
     compiled and linked to with the
     <code class="constant">libsystemd</code> <a href="pkg-config.html"><span class="citerefentry"><span class="refentrytitle">pkg-config</span>(1)</span></a>
-    file.</p></div><div class="refsect1"><a name="idm214183545328"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+    file.</p></div><div class="refsect1"><a name="idm214173329680"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
       <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
       <a href="sd-event.html"><span class="citerefentry"><span class="refentrytitle">sd-event</span>(3)</span></a>,
       <a href="sd_event_add_io.html"><span class="citerefentry"><span class="refentrytitle">sd_event_add_io</span>(3)</span></a>,
index 997f4a88dee0dc5c0a66568fbf08e2aff950c508..693a9655d134887becae0b0bd5184a327e8d66e0 100644 (file)
@@ -19,7 +19,7 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="sd_get_seats"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_get_seats, sd_get_sessions, sd_get_uids, sd_get_machine_names — Determine available seats, sessions, logged in users and virtual machines/containers</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-login.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_get_seats</b>(</code></td><td>char ***<var class="pdparam">seats</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_get_sessions</b>(</code></td><td>char ***<var class="pdparam">sessions</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_get_uids</b>(</code></td><td>uid_t **<var class="pdparam">users</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_get_machine_names</b>(</code></td><td>char ***<var class="pdparam">machines</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214192262480"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_get_seats()</code> may be used
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="sd_get_seats"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_get_seats, sd_get_sessions, sd_get_uids, sd_get_machine_names — Determine available seats, sessions, logged in users and virtual machines/containers</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-login.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_get_seats</b>(</code></td><td>char ***<var class="pdparam">seats</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_get_sessions</b>(</code></td><td>char ***<var class="pdparam">sessions</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_get_uids</b>(</code></td><td>uid_t **<var class="pdparam">users</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_get_machine_names</b>(</code></td><td>char ***<var class="pdparam">machines</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214188979664"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_get_seats()</code> may be used
                 to determine all currently available local
                 seats. Returns a <code class="constant">NULL</code> terminated array of seat
                 identifiers. The returned array and all strings it
                 be used to determine all Unix users who currently have login sessions.</p><p>Similarly,
                 <code class="function">sd_get_machine_names()</code> may be
                 used to determine all current virtual machines and
-                containers on the system.</p><p>Note that the returned lists are not sorted and in an undefined order.</p></div><div class="refsect1"><a name="idm214195789600"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>On success, <code class="function">sd_get_seats()</code>,
+                containers on the system.</p><p>Note that the returned lists are not sorted and in an undefined order.</p></div><div class="refsect1"><a name="idm214188972032"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>On success, <code class="function">sd_get_seats()</code>,
                 <code class="function">sd_get_sessions()</code>,
                 <code class="function">sd_get_uids()</code> and
                 <code class="function">sd_get_machine_names()</code> return the
                 number of entries in the arrays. On failure, these
-                calls return a negative errno-style error code.</p></div><div class="refsect1"><a name="idm214192004480"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p>The <code class="function">sd_get_seats()</code>,
+                calls return a negative errno-style error code.</p></div><div class="refsect1"><a name="idm214188967808"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p>The <code class="function">sd_get_seats()</code>,
                 <code class="function">sd_get_sessions()</code>,
                 <code class="function">sd_get_uids()</code> and
                 <code class="function">sd_get_machine_names()</code> interfaces
                 are available as a shared library, which can be compiled
                 and linked to with the
                 <code class="constant">libsystemd</code> <a href="pkg-config.html"><span class="citerefentry"><span class="refentrytitle">pkg-config</span>(1)</span></a>
-                file.</p></div><div class="refsect1"><a name="idm214191998928"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+                file.</p></div><div class="refsect1"><a name="idm214192866880"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
                         <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
                         <a href="sd-login.html"><span class="citerefentry"><span class="refentrytitle">sd-login</span>(3)</span></a>,
                         <a href="sd_session_get_seat.html"><span class="citerefentry"><span class="refentrytitle">sd_session_get_seat</span>(3)</span></a>
index ca7deefb0c4f7278009110e2f55fe426cc9d6d0d..1e78df34ef33c4e6c8c7ae854a816e2bc41ff0c8 100644 (file)
@@ -1,5 +1,5 @@
 '\" t
-.TH "SD_GET_SEATS" "3" "" "systemd 214" "sd_get_seats"
+.TH "SD_GET_SEATS" "3" "" "systemd 215" "sd_get_seats"
 .\" -----------------------------------------------------------------
 .\" * Define some portability stuff
 .\" -----------------------------------------------------------------
index 997f4a88dee0dc5c0a66568fbf08e2aff950c508..693a9655d134887becae0b0bd5184a327e8d66e0 100644 (file)
@@ -19,7 +19,7 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="sd_get_seats"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_get_seats, sd_get_sessions, sd_get_uids, sd_get_machine_names — Determine available seats, sessions, logged in users and virtual machines/containers</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-login.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_get_seats</b>(</code></td><td>char ***<var class="pdparam">seats</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_get_sessions</b>(</code></td><td>char ***<var class="pdparam">sessions</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_get_uids</b>(</code></td><td>uid_t **<var class="pdparam">users</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_get_machine_names</b>(</code></td><td>char ***<var class="pdparam">machines</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214192262480"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_get_seats()</code> may be used
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="sd_get_seats"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_get_seats, sd_get_sessions, sd_get_uids, sd_get_machine_names — Determine available seats, sessions, logged in users and virtual machines/containers</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-login.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_get_seats</b>(</code></td><td>char ***<var class="pdparam">seats</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_get_sessions</b>(</code></td><td>char ***<var class="pdparam">sessions</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_get_uids</b>(</code></td><td>uid_t **<var class="pdparam">users</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_get_machine_names</b>(</code></td><td>char ***<var class="pdparam">machines</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214188979664"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_get_seats()</code> may be used
                 to determine all currently available local
                 seats. Returns a <code class="constant">NULL</code> terminated array of seat
                 identifiers. The returned array and all strings it
                 be used to determine all Unix users who currently have login sessions.</p><p>Similarly,
                 <code class="function">sd_get_machine_names()</code> may be
                 used to determine all current virtual machines and
-                containers on the system.</p><p>Note that the returned lists are not sorted and in an undefined order.</p></div><div class="refsect1"><a name="idm214195789600"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>On success, <code class="function">sd_get_seats()</code>,
+                containers on the system.</p><p>Note that the returned lists are not sorted and in an undefined order.</p></div><div class="refsect1"><a name="idm214188972032"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>On success, <code class="function">sd_get_seats()</code>,
                 <code class="function">sd_get_sessions()</code>,
                 <code class="function">sd_get_uids()</code> and
                 <code class="function">sd_get_machine_names()</code> return the
                 number of entries in the arrays. On failure, these
-                calls return a negative errno-style error code.</p></div><div class="refsect1"><a name="idm214192004480"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p>The <code class="function">sd_get_seats()</code>,
+                calls return a negative errno-style error code.</p></div><div class="refsect1"><a name="idm214188967808"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p>The <code class="function">sd_get_seats()</code>,
                 <code class="function">sd_get_sessions()</code>,
                 <code class="function">sd_get_uids()</code> and
                 <code class="function">sd_get_machine_names()</code> interfaces
                 are available as a shared library, which can be compiled
                 and linked to with the
                 <code class="constant">libsystemd</code> <a href="pkg-config.html"><span class="citerefentry"><span class="refentrytitle">pkg-config</span>(1)</span></a>
-                file.</p></div><div class="refsect1"><a name="idm214191998928"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+                file.</p></div><div class="refsect1"><a name="idm214192866880"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
                         <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
                         <a href="sd-login.html"><span class="citerefentry"><span class="refentrytitle">sd-login</span>(3)</span></a>,
                         <a href="sd_session_get_seat.html"><span class="citerefentry"><span class="refentrytitle">sd_session_get_seat</span>(3)</span></a>
index 997f4a88dee0dc5c0a66568fbf08e2aff950c508..693a9655d134887becae0b0bd5184a327e8d66e0 100644 (file)
@@ -19,7 +19,7 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="sd_get_seats"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_get_seats, sd_get_sessions, sd_get_uids, sd_get_machine_names — Determine available seats, sessions, logged in users and virtual machines/containers</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-login.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_get_seats</b>(</code></td><td>char ***<var class="pdparam">seats</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_get_sessions</b>(</code></td><td>char ***<var class="pdparam">sessions</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_get_uids</b>(</code></td><td>uid_t **<var class="pdparam">users</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_get_machine_names</b>(</code></td><td>char ***<var class="pdparam">machines</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214192262480"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_get_seats()</code> may be used
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="sd_get_seats"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_get_seats, sd_get_sessions, sd_get_uids, sd_get_machine_names — Determine available seats, sessions, logged in users and virtual machines/containers</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-login.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_get_seats</b>(</code></td><td>char ***<var class="pdparam">seats</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_get_sessions</b>(</code></td><td>char ***<var class="pdparam">sessions</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_get_uids</b>(</code></td><td>uid_t **<var class="pdparam">users</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_get_machine_names</b>(</code></td><td>char ***<var class="pdparam">machines</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214188979664"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_get_seats()</code> may be used
                 to determine all currently available local
                 seats. Returns a <code class="constant">NULL</code> terminated array of seat
                 identifiers. The returned array and all strings it
                 be used to determine all Unix users who currently have login sessions.</p><p>Similarly,
                 <code class="function">sd_get_machine_names()</code> may be
                 used to determine all current virtual machines and
-                containers on the system.</p><p>Note that the returned lists are not sorted and in an undefined order.</p></div><div class="refsect1"><a name="idm214195789600"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>On success, <code class="function">sd_get_seats()</code>,
+                containers on the system.</p><p>Note that the returned lists are not sorted and in an undefined order.</p></div><div class="refsect1"><a name="idm214188972032"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>On success, <code class="function">sd_get_seats()</code>,
                 <code class="function">sd_get_sessions()</code>,
                 <code class="function">sd_get_uids()</code> and
                 <code class="function">sd_get_machine_names()</code> return the
                 number of entries in the arrays. On failure, these
-                calls return a negative errno-style error code.</p></div><div class="refsect1"><a name="idm214192004480"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p>The <code class="function">sd_get_seats()</code>,
+                calls return a negative errno-style error code.</p></div><div class="refsect1"><a name="idm214188967808"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p>The <code class="function">sd_get_seats()</code>,
                 <code class="function">sd_get_sessions()</code>,
                 <code class="function">sd_get_uids()</code> and
                 <code class="function">sd_get_machine_names()</code> interfaces
                 are available as a shared library, which can be compiled
                 and linked to with the
                 <code class="constant">libsystemd</code> <a href="pkg-config.html"><span class="citerefentry"><span class="refentrytitle">pkg-config</span>(1)</span></a>
-                file.</p></div><div class="refsect1"><a name="idm214191998928"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+                file.</p></div><div class="refsect1"><a name="idm214192866880"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
                         <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
                         <a href="sd-login.html"><span class="citerefentry"><span class="refentrytitle">sd-login</span>(3)</span></a>,
                         <a href="sd_session_get_seat.html"><span class="citerefentry"><span class="refentrytitle">sd_session_get_seat</span>(3)</span></a>
index 997f4a88dee0dc5c0a66568fbf08e2aff950c508..693a9655d134887becae0b0bd5184a327e8d66e0 100644 (file)
@@ -19,7 +19,7 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="sd_get_seats"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_get_seats, sd_get_sessions, sd_get_uids, sd_get_machine_names — Determine available seats, sessions, logged in users and virtual machines/containers</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-login.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_get_seats</b>(</code></td><td>char ***<var class="pdparam">seats</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_get_sessions</b>(</code></td><td>char ***<var class="pdparam">sessions</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_get_uids</b>(</code></td><td>uid_t **<var class="pdparam">users</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_get_machine_names</b>(</code></td><td>char ***<var class="pdparam">machines</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214192262480"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_get_seats()</code> may be used
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="sd_get_seats"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_get_seats, sd_get_sessions, sd_get_uids, sd_get_machine_names — Determine available seats, sessions, logged in users and virtual machines/containers</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-login.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_get_seats</b>(</code></td><td>char ***<var class="pdparam">seats</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_get_sessions</b>(</code></td><td>char ***<var class="pdparam">sessions</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_get_uids</b>(</code></td><td>uid_t **<var class="pdparam">users</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_get_machine_names</b>(</code></td><td>char ***<var class="pdparam">machines</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214188979664"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_get_seats()</code> may be used
                 to determine all currently available local
                 seats. Returns a <code class="constant">NULL</code> terminated array of seat
                 identifiers. The returned array and all strings it
                 be used to determine all Unix users who currently have login sessions.</p><p>Similarly,
                 <code class="function">sd_get_machine_names()</code> may be
                 used to determine all current virtual machines and
-                containers on the system.</p><p>Note that the returned lists are not sorted and in an undefined order.</p></div><div class="refsect1"><a name="idm214195789600"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>On success, <code class="function">sd_get_seats()</code>,
+                containers on the system.</p><p>Note that the returned lists are not sorted and in an undefined order.</p></div><div class="refsect1"><a name="idm214188972032"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>On success, <code class="function">sd_get_seats()</code>,
                 <code class="function">sd_get_sessions()</code>,
                 <code class="function">sd_get_uids()</code> and
                 <code class="function">sd_get_machine_names()</code> return the
                 number of entries in the arrays. On failure, these
-                calls return a negative errno-style error code.</p></div><div class="refsect1"><a name="idm214192004480"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p>The <code class="function">sd_get_seats()</code>,
+                calls return a negative errno-style error code.</p></div><div class="refsect1"><a name="idm214188967808"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p>The <code class="function">sd_get_seats()</code>,
                 <code class="function">sd_get_sessions()</code>,
                 <code class="function">sd_get_uids()</code> and
                 <code class="function">sd_get_machine_names()</code> interfaces
                 are available as a shared library, which can be compiled
                 and linked to with the
                 <code class="constant">libsystemd</code> <a href="pkg-config.html"><span class="citerefentry"><span class="refentrytitle">pkg-config</span>(1)</span></a>
-                file.</p></div><div class="refsect1"><a name="idm214191998928"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+                file.</p></div><div class="refsect1"><a name="idm214192866880"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
                         <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
                         <a href="sd-login.html"><span class="citerefentry"><span class="refentrytitle">sd-login</span>(3)</span></a>,
                         <a href="sd_session_get_seat.html"><span class="citerefentry"><span class="refentrytitle">sd_session_get_seat</span>(3)</span></a>
index 1ee8026bcb2e97706bfeabcb93213cf766f1c272..913e12f3247b208f1463c5ef1193713668dee8cd 100644 (file)
@@ -19,7 +19,7 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="sd-id128"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd-id128, sd_id128_t, SD_ID128_MAKE, SD_ID128_CONST_STR, SD_ID128_FORMAT_STR, SD_ID128_FORMAT_VAL, sd_id128_equal — APIs for processing 128-bit IDs</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-id128.h&gt;</pre></div><div class="cmdsynopsis"><p><code class="command">pkg-config --cflags --libs libsystemd</code> </p></div></div><div class="refsect1"><a name="idm214203487536"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="filename">sd-id128.h</code> provides APIs to
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="sd-id128"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd-id128, sd_id128_t, SD_ID128_MAKE, SD_ID128_CONST_STR, SD_ID128_FORMAT_STR, SD_ID128_FORMAT_VAL, sd_id128_equal — APIs for processing 128-bit IDs</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-id128.h&gt;</pre></div><div class="cmdsynopsis"><p><code class="command">pkg-config --cflags --libs libsystemd</code> </p></div></div><div class="refsect1"><a name="idm214191197712"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="filename">sd-id128.h</code> provides APIs to
                 process and generate 128-bit ID values. The 128-bit ID
                 values processed and generated by these APIs are a
                 generalization of OSF UUIDs as defined by <a class="ulink" href="https://tools.ietf.org/html/rfc4122" target="_top">RFC
 }</pre><p>Note that new, randomized IDs may be generated
                 with
                 <a href="journalctl.html"><span class="citerefentry"><span class="refentrytitle">journalctl</span>(1)</span></a>'s
-                <code class="option">--new-id</code> option.</p></div><div class="refsect1"><a name="idm214194742784"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p><a name="pkgconfig-text"></a>These APIs are implemented as a shared
+                <code class="option">--new-id</code> option.</p></div><div class="refsect1"><a name="idm214187744304"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p><a name="pkgconfig-text"></a>These APIs are implemented as a shared
   library, which can be compiled and linked to with the
   <code class="constant">libsystemd</code> <a href="pkg-config.html"><span class="citerefentry"><span class="refentrytitle">pkg-config</span>(1)</span></a>
-  file.</p></div><div class="refsect1"><a name="idm214203585552"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+  file.</p></div><div class="refsect1"><a name="idm214191643840"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
                         <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
                         <a href="sd_id128_to_string.html"><span class="citerefentry"><span class="refentrytitle">sd_id128_to_string</span>(3)</span></a>,
                         <a href="sd_id128_randomize.html"><span class="citerefentry"><span class="refentrytitle">sd_id128_randomize</span>(3)</span></a>,
index 8a777808ec7e05eef46d85a9d5b10c90cc0ea4f7..fa0af57c6f4f8aad8625ba4b49d6fab5015b65dc 100644 (file)
@@ -19,7 +19,7 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="sd_id128_to_string"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_id128_to_string, sd_id128_from_string — Format or parse 128-bit IDs as strings</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-id128.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">char *<b class="fsfunc">sd_id128_to_string</b>(</code></td><td>sd_id128_t <var class="pdparam">id</var>, char <var class="pdparam">s</var>[33]<code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_id128_from_string</b>(</code></td><td>const char *<var class="pdparam">s</var>, sd_id128_t *<var class="pdparam">ret</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214186772432"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_id128_to_string()</code>
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="sd_id128_to_string"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_id128_to_string, sd_id128_from_string — Format or parse 128-bit IDs as strings</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-id128.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">char *<b class="fsfunc">sd_id128_to_string</b>(</code></td><td>sd_id128_t <var class="pdparam">id</var>, char <var class="pdparam">s</var>[33]<code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_id128_from_string</b>(</code></td><td>const char *<var class="pdparam">s</var>, sd_id128_t *<var class="pdparam">ret</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214171729760"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_id128_to_string()</code>
                 formats a 128-bit ID as a character string. It expects
                 the ID and a string array capable of storing 33
                 characters. The ID will be formatted as 32 lowercase
                 <code class="function">SD_ID128_FORMAT_STR</code> and
                 <code class="function">SD_ID128_FORMAT_VAL()</code> macros. For
                 more information see
-                <a href="sd-id128.html"><span class="citerefentry"><span class="refentrytitle">sd-id128</span>(3)</span></a>.</p></div><div class="refsect1"><a name="idm214186838016"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p><code class="function">sd_id128_to_string()</code> always
+                <a href="sd-id128.html"><span class="citerefentry"><span class="refentrytitle">sd-id128</span>(3)</span></a>.</p></div><div class="refsect1"><a name="idm214171795728"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p><code class="function">sd_id128_to_string()</code> always
                 succeeds and returns a pointer to the string array
                 passed in. <code class="function">sd_id128_from_string</code>
                 returns 0 on success, in which case
                 <em class="parameter"><code>ret</code></em> is filled in, or a negative
-                errno-style error code.</p></div><div class="refsect1"><a name="idm214186834816"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p>The <code class="function">sd_id128_to_string()</code>
+                errno-style error code.</p></div><div class="refsect1"><a name="idm214171792528"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p>The <code class="function">sd_id128_to_string()</code>
                 and <code class="function">sd_id128_from_string()</code> interfaces are
                 available as a shared library, which can be compiled and
                 linked to with the "<code class="literal">libsystemd</code>" <a href="pkg-config.html"><span class="citerefentry"><span class="refentrytitle">pkg-config</span>(1)</span></a>
-                file.</p></div><div class="refsect1"><a name="idm214186830448"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+                file.</p></div><div class="refsect1"><a name="idm214171788160"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
                         <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
                         <a href="sd-id128.html"><span class="citerefentry"><span class="refentrytitle">sd-id128</span>(3)</span></a>,
                         <a href="printf.html"><span class="citerefentry"><span class="refentrytitle">printf</span>(3)</span></a>
index ae04473426fb91b99f0b4cd1b6b253779dc31bf5..5dafbf8f8b157b337b00aa1537a533eda2243608 100644 (file)
@@ -19,7 +19,7 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="sd_id128_get_machine"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_id128_get_machine, sd_id128_get_boot — Retrieve 128-bit IDs</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-id128.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_id128_get_machine</b>(</code></td><td>sd_id128_t *<var class="pdparam">ret</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_id128_get_boot</b>(</code></td><td>sd_id128_t *<var class="pdparam">ret</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214184163600"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_id128_get_machine()</code>
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="sd_id128_get_machine"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_id128_get_machine, sd_id128_get_boot — Retrieve 128-bit IDs</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-id128.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_id128_get_machine</b>(</code></td><td>sd_id128_t *<var class="pdparam">ret</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_id128_get_boot</b>(</code></td><td>sd_id128_t *<var class="pdparam">ret</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214189049216"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_id128_get_machine()</code>
                 returns the machine ID of the executing host. This
                 reads and parses the
                 <a href="machine-id.html"><span class="citerefentry"><span class="refentrytitle">machine-id</span>(5)</span></a>
                 one. For more information, see
                 <a href="machine-id.html"><span class="citerefentry"><span class="refentrytitle">machine-id</span>(5)</span></a>.</p><p>For more information about the
                 "<code class="literal">sd_id128_t</code>" type see
-                <a href="sd-id128.html"><span class="citerefentry"><span class="refentrytitle">sd-id128</span>(3)</span></a>.</p></div><div class="refsect1"><a name="idm214180318096"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>The two calls return 0 on success (in which
+                <a href="sd-id128.html"><span class="citerefentry"><span class="refentrytitle">sd-id128</span>(3)</span></a>.</p></div><div class="refsect1"><a name="idm214188999632"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>The two calls return 0 on success (in which
                 case <em class="parameter"><code>ret</code></em> is filled in), or a
-                negative errno-style error code.</p></div><div class="refsect1"><a name="idm214180316256"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p>The <code class="function">sd_id128_get_machine()</code>
+                negative errno-style error code.</p></div><div class="refsect1"><a name="idm214188738304"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p>The <code class="function">sd_id128_get_machine()</code>
                 and <code class="function">sd_id128_get_boot()</code>
                 interfaces are available as a shared library, which can
                 be compiled and linked to with the
                 "<code class="literal">libsystemd</code>" <a href="pkg-config.html"><span class="citerefentry"><span class="refentrytitle">pkg-config</span>(1)</span></a>
-                file.</p></div><div class="refsect1"><a name="idm214180311872"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+                file.</p></div><div class="refsect1"><a name="idm214188748720"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
                         <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
                         <a href="sd-id128.html"><span class="citerefentry"><span class="refentrytitle">sd-id128</span>(3)</span></a>,
                         <a href="machine-id.html"><span class="citerefentry"><span class="refentrytitle">machine-id</span>(5)</span></a>,
index a1a2c50f9728ce72852fa543054639c45127283d..6c6f1d0c2de1f962131ecd156718015f1adfbe1e 100644 (file)
@@ -1,5 +1,5 @@
 '\" t
-.TH "SD_ID128_GET_MACHINE" "3" "" "systemd 214" "sd_id128_get_machine"
+.TH "SD_ID128_GET_MACHINE" "3" "" "systemd 215" "sd_id128_get_machine"
 .\" -----------------------------------------------------------------
 .\" * Define some portability stuff
 .\" -----------------------------------------------------------------
index ae04473426fb91b99f0b4cd1b6b253779dc31bf5..5dafbf8f8b157b337b00aa1537a533eda2243608 100644 (file)
@@ -19,7 +19,7 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="sd_id128_get_machine"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_id128_get_machine, sd_id128_get_boot — Retrieve 128-bit IDs</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-id128.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_id128_get_machine</b>(</code></td><td>sd_id128_t *<var class="pdparam">ret</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_id128_get_boot</b>(</code></td><td>sd_id128_t *<var class="pdparam">ret</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214184163600"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_id128_get_machine()</code>
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="sd_id128_get_machine"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_id128_get_machine, sd_id128_get_boot — Retrieve 128-bit IDs</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-id128.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_id128_get_machine</b>(</code></td><td>sd_id128_t *<var class="pdparam">ret</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_id128_get_boot</b>(</code></td><td>sd_id128_t *<var class="pdparam">ret</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214189049216"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_id128_get_machine()</code>
                 returns the machine ID of the executing host. This
                 reads and parses the
                 <a href="machine-id.html"><span class="citerefentry"><span class="refentrytitle">machine-id</span>(5)</span></a>
                 one. For more information, see
                 <a href="machine-id.html"><span class="citerefentry"><span class="refentrytitle">machine-id</span>(5)</span></a>.</p><p>For more information about the
                 "<code class="literal">sd_id128_t</code>" type see
-                <a href="sd-id128.html"><span class="citerefentry"><span class="refentrytitle">sd-id128</span>(3)</span></a>.</p></div><div class="refsect1"><a name="idm214180318096"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>The two calls return 0 on success (in which
+                <a href="sd-id128.html"><span class="citerefentry"><span class="refentrytitle">sd-id128</span>(3)</span></a>.</p></div><div class="refsect1"><a name="idm214188999632"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>The two calls return 0 on success (in which
                 case <em class="parameter"><code>ret</code></em> is filled in), or a
-                negative errno-style error code.</p></div><div class="refsect1"><a name="idm214180316256"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p>The <code class="function">sd_id128_get_machine()</code>
+                negative errno-style error code.</p></div><div class="refsect1"><a name="idm214188738304"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p>The <code class="function">sd_id128_get_machine()</code>
                 and <code class="function">sd_id128_get_boot()</code>
                 interfaces are available as a shared library, which can
                 be compiled and linked to with the
                 "<code class="literal">libsystemd</code>" <a href="pkg-config.html"><span class="citerefentry"><span class="refentrytitle">pkg-config</span>(1)</span></a>
-                file.</p></div><div class="refsect1"><a name="idm214180311872"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+                file.</p></div><div class="refsect1"><a name="idm214188748720"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
                         <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
                         <a href="sd-id128.html"><span class="citerefentry"><span class="refentrytitle">sd-id128</span>(3)</span></a>,
                         <a href="machine-id.html"><span class="citerefentry"><span class="refentrytitle">machine-id</span>(5)</span></a>,
index 4dec7cd242a85818ebb1e99e09fe8b9920df51f9..5e64581d3c80ac2bc94185dfb5449d3f7cae26d0 100644 (file)
@@ -1,5 +1,5 @@
 '\" t
-.TH "SD_ID128_RANDOMIZE" "3" "" "systemd 214" "sd_id128_randomize"
+.TH "SD_ID128_RANDOMIZE" "3" "" "systemd 215" "sd_id128_randomize"
 .\" -----------------------------------------------------------------
 .\" * Define some portability stuff
 .\" -----------------------------------------------------------------
index b0806480f64f362a5163bb30ed4c2c49f7c2e58a..310d29961110cec66b3cd4ed5156a67b5ec34186 100644 (file)
@@ -19,7 +19,7 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="sd_id128_randomize"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_id128_randomize — Generate 128-bit IDs</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-id128.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_id128_randomize</b>(</code></td><td>sd_id128_t *<var class="pdparam">ret</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214198020464"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_id128_randomize()</code>
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="sd_id128_randomize"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_id128_randomize — Generate 128-bit IDs</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-id128.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_id128_randomize</b>(</code></td><td>sd_id128_t *<var class="pdparam">ret</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214193952784"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_id128_randomize()</code>
                 generates a new randomized 128-bit ID and returns it
                 in <em class="parameter"><code>ret</code></em>. Every invocation
                 returns a new randomly generated ID. This uses the
                 <a href="sd-id128.html"><span class="citerefentry"><span class="refentrytitle">sd-id128</span>(3)</span></a>.</p><p><a href="journalctl.html"><span class="citerefentry"><span class="refentrytitle">journalctl</span>(1)</span></a>'s
                 <code class="option">--new-id</code> option may be used as a
                 command-line front-end for
-                <code class="function">sd_id128_randomize()</code>.</p></div><div class="refsect1"><a name="idm214197892208"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>The call returns 0 on success (in which
+                <code class="function">sd_id128_randomize()</code>.</p></div><div class="refsect1"><a name="idm214193496448"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>The call returns 0 on success (in which
                 case <em class="parameter"><code>ret</code></em> is filled in), or a
-                negative errno-style error code.</p></div><div class="refsect1"><a name="idm214197890368"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p>The <code class="function">sd_id128_randomize()</code> interface
+                negative errno-style error code.</p></div><div class="refsect1"><a name="idm214192733072"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p>The <code class="function">sd_id128_randomize()</code> interface
                 is available as a shared library, which can be compiled
                 and linked to with the
                 "<code class="literal">libsystemd</code>" <a href="pkg-config.html"><span class="citerefentry"><span class="refentrytitle">pkg-config</span>(1)</span></a>
-                file.</p></div><div class="refsect1"><a name="idm214198082432"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+                file.</p></div><div class="refsect1"><a name="idm214193438416"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
                         <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
                         <a href="sd-id128.html"><span class="citerefentry"><span class="refentrytitle">sd-id128</span>(3)</span></a>,
                         <a href="machine-id.html"><span class="citerefentry"><span class="refentrytitle">machine-id</span>(5)</span></a>,
index 1ee8026bcb2e97706bfeabcb93213cf766f1c272..913e12f3247b208f1463c5ef1193713668dee8cd 100644 (file)
@@ -19,7 +19,7 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="sd-id128"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd-id128, sd_id128_t, SD_ID128_MAKE, SD_ID128_CONST_STR, SD_ID128_FORMAT_STR, SD_ID128_FORMAT_VAL, sd_id128_equal — APIs for processing 128-bit IDs</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-id128.h&gt;</pre></div><div class="cmdsynopsis"><p><code class="command">pkg-config --cflags --libs libsystemd</code> </p></div></div><div class="refsect1"><a name="idm214203487536"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="filename">sd-id128.h</code> provides APIs to
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="sd-id128"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd-id128, sd_id128_t, SD_ID128_MAKE, SD_ID128_CONST_STR, SD_ID128_FORMAT_STR, SD_ID128_FORMAT_VAL, sd_id128_equal — APIs for processing 128-bit IDs</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-id128.h&gt;</pre></div><div class="cmdsynopsis"><p><code class="command">pkg-config --cflags --libs libsystemd</code> </p></div></div><div class="refsect1"><a name="idm214191197712"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="filename">sd-id128.h</code> provides APIs to
                 process and generate 128-bit ID values. The 128-bit ID
                 values processed and generated by these APIs are a
                 generalization of OSF UUIDs as defined by <a class="ulink" href="https://tools.ietf.org/html/rfc4122" target="_top">RFC
 }</pre><p>Note that new, randomized IDs may be generated
                 with
                 <a href="journalctl.html"><span class="citerefentry"><span class="refentrytitle">journalctl</span>(1)</span></a>'s
-                <code class="option">--new-id</code> option.</p></div><div class="refsect1"><a name="idm214194742784"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p><a name="pkgconfig-text"></a>These APIs are implemented as a shared
+                <code class="option">--new-id</code> option.</p></div><div class="refsect1"><a name="idm214187744304"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p><a name="pkgconfig-text"></a>These APIs are implemented as a shared
   library, which can be compiled and linked to with the
   <code class="constant">libsystemd</code> <a href="pkg-config.html"><span class="citerefentry"><span class="refentrytitle">pkg-config</span>(1)</span></a>
-  file.</p></div><div class="refsect1"><a name="idm214203585552"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+  file.</p></div><div class="refsect1"><a name="idm214191643840"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
                         <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
                         <a href="sd_id128_to_string.html"><span class="citerefentry"><span class="refentrytitle">sd_id128_to_string</span>(3)</span></a>,
                         <a href="sd_id128_randomize.html"><span class="citerefentry"><span class="refentrytitle">sd_id128_randomize</span>(3)</span></a>,
index 4085e7ea10564492d7a31892a01c9f62470b53f2..6e5ff0b727cccb941aa9b533447f4c64630fc9b7 100644 (file)
@@ -1,5 +1,5 @@
 '\" t
-.TH "SD_ID128_TO_STRING" "3" "" "systemd 214" "sd_id128_to_string"
+.TH "SD_ID128_TO_STRING" "3" "" "systemd 215" "sd_id128_to_string"
 .\" -----------------------------------------------------------------
 .\" * Define some portability stuff
 .\" -----------------------------------------------------------------
index 8a777808ec7e05eef46d85a9d5b10c90cc0ea4f7..fa0af57c6f4f8aad8625ba4b49d6fab5015b65dc 100644 (file)
@@ -19,7 +19,7 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="sd_id128_to_string"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_id128_to_string, sd_id128_from_string — Format or parse 128-bit IDs as strings</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-id128.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">char *<b class="fsfunc">sd_id128_to_string</b>(</code></td><td>sd_id128_t <var class="pdparam">id</var>, char <var class="pdparam">s</var>[33]<code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_id128_from_string</b>(</code></td><td>const char *<var class="pdparam">s</var>, sd_id128_t *<var class="pdparam">ret</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214186772432"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_id128_to_string()</code>
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="sd_id128_to_string"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_id128_to_string, sd_id128_from_string — Format or parse 128-bit IDs as strings</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-id128.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">char *<b class="fsfunc">sd_id128_to_string</b>(</code></td><td>sd_id128_t <var class="pdparam">id</var>, char <var class="pdparam">s</var>[33]<code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_id128_from_string</b>(</code></td><td>const char *<var class="pdparam">s</var>, sd_id128_t *<var class="pdparam">ret</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214171729760"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_id128_to_string()</code>
                 formats a 128-bit ID as a character string. It expects
                 the ID and a string array capable of storing 33
                 characters. The ID will be formatted as 32 lowercase
                 <code class="function">SD_ID128_FORMAT_STR</code> and
                 <code class="function">SD_ID128_FORMAT_VAL()</code> macros. For
                 more information see
-                <a href="sd-id128.html"><span class="citerefentry"><span class="refentrytitle">sd-id128</span>(3)</span></a>.</p></div><div class="refsect1"><a name="idm214186838016"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p><code class="function">sd_id128_to_string()</code> always
+                <a href="sd-id128.html"><span class="citerefentry"><span class="refentrytitle">sd-id128</span>(3)</span></a>.</p></div><div class="refsect1"><a name="idm214171795728"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p><code class="function">sd_id128_to_string()</code> always
                 succeeds and returns a pointer to the string array
                 passed in. <code class="function">sd_id128_from_string</code>
                 returns 0 on success, in which case
                 <em class="parameter"><code>ret</code></em> is filled in, or a negative
-                errno-style error code.</p></div><div class="refsect1"><a name="idm214186834816"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p>The <code class="function">sd_id128_to_string()</code>
+                errno-style error code.</p></div><div class="refsect1"><a name="idm214171792528"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p>The <code class="function">sd_id128_to_string()</code>
                 and <code class="function">sd_id128_from_string()</code> interfaces are
                 available as a shared library, which can be compiled and
                 linked to with the "<code class="literal">libsystemd</code>" <a href="pkg-config.html"><span class="citerefentry"><span class="refentrytitle">pkg-config</span>(1)</span></a>
-                file.</p></div><div class="refsect1"><a name="idm214186830448"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+                file.</p></div><div class="refsect1"><a name="idm214171788160"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
                         <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
                         <a href="sd-id128.html"><span class="citerefentry"><span class="refentrytitle">sd-id128</span>(3)</span></a>,
                         <a href="printf.html"><span class="citerefentry"><span class="refentrytitle">printf</span>(3)</span></a>
index 8873f7aff0aff731b50c33e73a876df311f05a9f..1ebc84a5feb54ae65be463ca84f50e07dc4fd1ec 100644 (file)
@@ -1,5 +1,5 @@
 '\" t
-.TH "SD_IS_FIFO" "3" "" "systemd 214" "sd_is_fifo"
+.TH "SD_IS_FIFO" "3" "" "systemd 215" "sd_is_fifo"
 .\" -----------------------------------------------------------------
 .\" * Define some portability stuff
 .\" -----------------------------------------------------------------
index 44253fda644cc45c43cbd2be40a1d7b8b2cc8ee8..374575e03bacd42e9911fdc4bcbf454380b51021 100644 (file)
@@ -19,7 +19,7 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="sd_is_fifo"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_is_fifo, sd_is_socket, sd_is_socket_inet, sd_is_socket_unix, sd_is_mq, sd_is_special — Check the type of a file descriptor</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-daemon.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_is_fifo</b>(</code></td><td>int <var class="pdparam">fd</var>, </td></tr><tr><td> </td><td>const char *<var class="pdparam">path</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_is_socket</b>(</code></td><td>int <var class="pdparam">fd</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">family</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">type</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">listening</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_is_socket_inet</b>(</code></td><td>int <var class="pdparam">fd</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">family</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">type</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">listening</var>, </td></tr><tr><td> </td><td>uint16_t <var class="pdparam">port</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_is_socket_unix</b>(</code></td><td>int <var class="pdparam">fd</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">type</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">listening</var>, </td></tr><tr><td> </td><td>const char *<var class="pdparam">path</var>, </td></tr><tr><td> </td><td>size_t <var class="pdparam">length</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_is_mq</b>(</code></td><td>int <var class="pdparam">fd</var>, </td></tr><tr><td> </td><td>const char *<var class="pdparam">path</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_is_special</b>(</code></td><td>int <var class="pdparam">fd</var>, </td></tr><tr><td> </td><td>const char *<var class="pdparam">path</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214197320368"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_is_fifo()</code> may be called
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="sd_is_fifo"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_is_fifo, sd_is_socket, sd_is_socket_inet, sd_is_socket_unix, sd_is_mq, sd_is_special — Check the type of a file descriptor</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-daemon.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_is_fifo</b>(</code></td><td>int <var class="pdparam">fd</var>, </td></tr><tr><td> </td><td>const char *<var class="pdparam">path</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_is_socket</b>(</code></td><td>int <var class="pdparam">fd</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">family</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">type</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">listening</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_is_socket_inet</b>(</code></td><td>int <var class="pdparam">fd</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">family</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">type</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">listening</var>, </td></tr><tr><td> </td><td>uint16_t <var class="pdparam">port</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_is_socket_unix</b>(</code></td><td>int <var class="pdparam">fd</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">type</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">listening</var>, </td></tr><tr><td> </td><td>const char *<var class="pdparam">path</var>, </td></tr><tr><td> </td><td>size_t <var class="pdparam">length</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_is_mq</b>(</code></td><td>int <var class="pdparam">fd</var>, </td></tr><tr><td> </td><td>const char *<var class="pdparam">path</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_is_special</b>(</code></td><td>int <var class="pdparam">fd</var>, </td></tr><tr><td> </td><td>const char *<var class="pdparam">path</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214182952992"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_is_fifo()</code> may be called
                 to check whether the specified file descriptor refers
                 to a FIFO or pipe. If the <em class="parameter"><code>path</code></em>
                 parameter is not <code class="constant">NULL</code>, it is
                 descriptor is bound to the specified file
                 name. Special files in this context are character
                 device nodes and files in <code class="filename">/proc</code>
-                or <code class="filename">/sys</code>.</p></div><div class="refsect1"><a name="idm214192317264"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>On failure, these calls return a negative
+                or <code class="filename">/sys</code>.</p></div><div class="refsect1"><a name="idm214178000768"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>On failure, these calls return a negative
                 errno-style error code. If the file descriptor is of
                 the specified type and bound to the specified address,
                 a positive return value is returned, otherwise
-                zero.</p></div><div class="refsect1"><a name="idm214192315824"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p><a name="pkgconfig-text"></a>These APIs are implemented as a shared
+                zero.</p></div><div class="refsect1"><a name="idm214177999328"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p><a name="pkgconfig-text"></a>These APIs are implemented as a shared
   library, which can be compiled and linked to with the
   <code class="constant">libsystemd</code> <a href="pkg-config.html"><span class="citerefentry"><span class="refentrytitle">pkg-config</span>(1)</span></a>
   file.</p><p>Internally, these function use a combination of
                 <code class="filename">fstat()</code> and
                 <code class="filename">getsockname()</code> to check the file
-                descriptor type and where it is bound to.</p></div><div class="refsect1"><a name="idm214192312688"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+                descriptor type and where it is bound to.</p></div><div class="refsect1"><a name="idm214177996192"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
                         <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
                         <a href="sd-daemon.html"><span class="citerefentry"><span class="refentrytitle">sd-daemon</span>(3)</span></a>,
                         <a href="sd_listen_fds.html"><span class="citerefentry"><span class="refentrytitle">sd_listen_fds</span>(3)</span></a>,
index 44253fda644cc45c43cbd2be40a1d7b8b2cc8ee8..374575e03bacd42e9911fdc4bcbf454380b51021 100644 (file)
@@ -19,7 +19,7 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="sd_is_fifo"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_is_fifo, sd_is_socket, sd_is_socket_inet, sd_is_socket_unix, sd_is_mq, sd_is_special — Check the type of a file descriptor</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-daemon.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_is_fifo</b>(</code></td><td>int <var class="pdparam">fd</var>, </td></tr><tr><td> </td><td>const char *<var class="pdparam">path</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_is_socket</b>(</code></td><td>int <var class="pdparam">fd</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">family</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">type</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">listening</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_is_socket_inet</b>(</code></td><td>int <var class="pdparam">fd</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">family</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">type</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">listening</var>, </td></tr><tr><td> </td><td>uint16_t <var class="pdparam">port</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_is_socket_unix</b>(</code></td><td>int <var class="pdparam">fd</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">type</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">listening</var>, </td></tr><tr><td> </td><td>const char *<var class="pdparam">path</var>, </td></tr><tr><td> </td><td>size_t <var class="pdparam">length</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_is_mq</b>(</code></td><td>int <var class="pdparam">fd</var>, </td></tr><tr><td> </td><td>const char *<var class="pdparam">path</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_is_special</b>(</code></td><td>int <var class="pdparam">fd</var>, </td></tr><tr><td> </td><td>const char *<var class="pdparam">path</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214197320368"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_is_fifo()</code> may be called
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="sd_is_fifo"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_is_fifo, sd_is_socket, sd_is_socket_inet, sd_is_socket_unix, sd_is_mq, sd_is_special — Check the type of a file descriptor</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-daemon.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_is_fifo</b>(</code></td><td>int <var class="pdparam">fd</var>, </td></tr><tr><td> </td><td>const char *<var class="pdparam">path</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_is_socket</b>(</code></td><td>int <var class="pdparam">fd</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">family</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">type</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">listening</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_is_socket_inet</b>(</code></td><td>int <var class="pdparam">fd</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">family</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">type</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">listening</var>, </td></tr><tr><td> </td><td>uint16_t <var class="pdparam">port</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_is_socket_unix</b>(</code></td><td>int <var class="pdparam">fd</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">type</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">listening</var>, </td></tr><tr><td> </td><td>const char *<var class="pdparam">path</var>, </td></tr><tr><td> </td><td>size_t <var class="pdparam">length</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_is_mq</b>(</code></td><td>int <var class="pdparam">fd</var>, </td></tr><tr><td> </td><td>const char *<var class="pdparam">path</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_is_special</b>(</code></td><td>int <var class="pdparam">fd</var>, </td></tr><tr><td> </td><td>const char *<var class="pdparam">path</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214182952992"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_is_fifo()</code> may be called
                 to check whether the specified file descriptor refers
                 to a FIFO or pipe. If the <em class="parameter"><code>path</code></em>
                 parameter is not <code class="constant">NULL</code>, it is
                 descriptor is bound to the specified file
                 name. Special files in this context are character
                 device nodes and files in <code class="filename">/proc</code>
-                or <code class="filename">/sys</code>.</p></div><div class="refsect1"><a name="idm214192317264"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>On failure, these calls return a negative
+                or <code class="filename">/sys</code>.</p></div><div class="refsect1"><a name="idm214178000768"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>On failure, these calls return a negative
                 errno-style error code. If the file descriptor is of
                 the specified type and bound to the specified address,
                 a positive return value is returned, otherwise
-                zero.</p></div><div class="refsect1"><a name="idm214192315824"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p><a name="pkgconfig-text"></a>These APIs are implemented as a shared
+                zero.</p></div><div class="refsect1"><a name="idm214177999328"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p><a name="pkgconfig-text"></a>These APIs are implemented as a shared
   library, which can be compiled and linked to with the
   <code class="constant">libsystemd</code> <a href="pkg-config.html"><span class="citerefentry"><span class="refentrytitle">pkg-config</span>(1)</span></a>
   file.</p><p>Internally, these function use a combination of
                 <code class="filename">fstat()</code> and
                 <code class="filename">getsockname()</code> to check the file
-                descriptor type and where it is bound to.</p></div><div class="refsect1"><a name="idm214192312688"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+                descriptor type and where it is bound to.</p></div><div class="refsect1"><a name="idm214177996192"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
                         <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
                         <a href="sd-daemon.html"><span class="citerefentry"><span class="refentrytitle">sd-daemon</span>(3)</span></a>,
                         <a href="sd_listen_fds.html"><span class="citerefentry"><span class="refentrytitle">sd_listen_fds</span>(3)</span></a>,
index 44253fda644cc45c43cbd2be40a1d7b8b2cc8ee8..374575e03bacd42e9911fdc4bcbf454380b51021 100644 (file)
@@ -19,7 +19,7 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="sd_is_fifo"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_is_fifo, sd_is_socket, sd_is_socket_inet, sd_is_socket_unix, sd_is_mq, sd_is_special — Check the type of a file descriptor</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-daemon.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_is_fifo</b>(</code></td><td>int <var class="pdparam">fd</var>, </td></tr><tr><td> </td><td>const char *<var class="pdparam">path</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_is_socket</b>(</code></td><td>int <var class="pdparam">fd</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">family</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">type</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">listening</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_is_socket_inet</b>(</code></td><td>int <var class="pdparam">fd</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">family</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">type</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">listening</var>, </td></tr><tr><td> </td><td>uint16_t <var class="pdparam">port</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_is_socket_unix</b>(</code></td><td>int <var class="pdparam">fd</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">type</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">listening</var>, </td></tr><tr><td> </td><td>const char *<var class="pdparam">path</var>, </td></tr><tr><td> </td><td>size_t <var class="pdparam">length</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_is_mq</b>(</code></td><td>int <var class="pdparam">fd</var>, </td></tr><tr><td> </td><td>const char *<var class="pdparam">path</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_is_special</b>(</code></td><td>int <var class="pdparam">fd</var>, </td></tr><tr><td> </td><td>const char *<var class="pdparam">path</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214197320368"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_is_fifo()</code> may be called
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="sd_is_fifo"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_is_fifo, sd_is_socket, sd_is_socket_inet, sd_is_socket_unix, sd_is_mq, sd_is_special — Check the type of a file descriptor</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-daemon.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_is_fifo</b>(</code></td><td>int <var class="pdparam">fd</var>, </td></tr><tr><td> </td><td>const char *<var class="pdparam">path</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_is_socket</b>(</code></td><td>int <var class="pdparam">fd</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">family</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">type</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">listening</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_is_socket_inet</b>(</code></td><td>int <var class="pdparam">fd</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">family</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">type</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">listening</var>, </td></tr><tr><td> </td><td>uint16_t <var class="pdparam">port</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_is_socket_unix</b>(</code></td><td>int <var class="pdparam">fd</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">type</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">listening</var>, </td></tr><tr><td> </td><td>const char *<var class="pdparam">path</var>, </td></tr><tr><td> </td><td>size_t <var class="pdparam">length</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_is_mq</b>(</code></td><td>int <var class="pdparam">fd</var>, </td></tr><tr><td> </td><td>const char *<var class="pdparam">path</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_is_special</b>(</code></td><td>int <var class="pdparam">fd</var>, </td></tr><tr><td> </td><td>const char *<var class="pdparam">path</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214182952992"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_is_fifo()</code> may be called
                 to check whether the specified file descriptor refers
                 to a FIFO or pipe. If the <em class="parameter"><code>path</code></em>
                 parameter is not <code class="constant">NULL</code>, it is
                 descriptor is bound to the specified file
                 name. Special files in this context are character
                 device nodes and files in <code class="filename">/proc</code>
-                or <code class="filename">/sys</code>.</p></div><div class="refsect1"><a name="idm214192317264"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>On failure, these calls return a negative
+                or <code class="filename">/sys</code>.</p></div><div class="refsect1"><a name="idm214178000768"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>On failure, these calls return a negative
                 errno-style error code. If the file descriptor is of
                 the specified type and bound to the specified address,
                 a positive return value is returned, otherwise
-                zero.</p></div><div class="refsect1"><a name="idm214192315824"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p><a name="pkgconfig-text"></a>These APIs are implemented as a shared
+                zero.</p></div><div class="refsect1"><a name="idm214177999328"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p><a name="pkgconfig-text"></a>These APIs are implemented as a shared
   library, which can be compiled and linked to with the
   <code class="constant">libsystemd</code> <a href="pkg-config.html"><span class="citerefentry"><span class="refentrytitle">pkg-config</span>(1)</span></a>
   file.</p><p>Internally, these function use a combination of
                 <code class="filename">fstat()</code> and
                 <code class="filename">getsockname()</code> to check the file
-                descriptor type and where it is bound to.</p></div><div class="refsect1"><a name="idm214192312688"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+                descriptor type and where it is bound to.</p></div><div class="refsect1"><a name="idm214177996192"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
                         <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
                         <a href="sd-daemon.html"><span class="citerefentry"><span class="refentrytitle">sd-daemon</span>(3)</span></a>,
                         <a href="sd_listen_fds.html"><span class="citerefentry"><span class="refentrytitle">sd_listen_fds</span>(3)</span></a>,
index 44253fda644cc45c43cbd2be40a1d7b8b2cc8ee8..374575e03bacd42e9911fdc4bcbf454380b51021 100644 (file)
@@ -19,7 +19,7 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="sd_is_fifo"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_is_fifo, sd_is_socket, sd_is_socket_inet, sd_is_socket_unix, sd_is_mq, sd_is_special — Check the type of a file descriptor</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-daemon.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_is_fifo</b>(</code></td><td>int <var class="pdparam">fd</var>, </td></tr><tr><td> </td><td>const char *<var class="pdparam">path</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_is_socket</b>(</code></td><td>int <var class="pdparam">fd</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">family</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">type</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">listening</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_is_socket_inet</b>(</code></td><td>int <var class="pdparam">fd</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">family</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">type</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">listening</var>, </td></tr><tr><td> </td><td>uint16_t <var class="pdparam">port</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_is_socket_unix</b>(</code></td><td>int <var class="pdparam">fd</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">type</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">listening</var>, </td></tr><tr><td> </td><td>const char *<var class="pdparam">path</var>, </td></tr><tr><td> </td><td>size_t <var class="pdparam">length</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_is_mq</b>(</code></td><td>int <var class="pdparam">fd</var>, </td></tr><tr><td> </td><td>const char *<var class="pdparam">path</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_is_special</b>(</code></td><td>int <var class="pdparam">fd</var>, </td></tr><tr><td> </td><td>const char *<var class="pdparam">path</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214197320368"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_is_fifo()</code> may be called
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="sd_is_fifo"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_is_fifo, sd_is_socket, sd_is_socket_inet, sd_is_socket_unix, sd_is_mq, sd_is_special — Check the type of a file descriptor</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-daemon.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_is_fifo</b>(</code></td><td>int <var class="pdparam">fd</var>, </td></tr><tr><td> </td><td>const char *<var class="pdparam">path</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_is_socket</b>(</code></td><td>int <var class="pdparam">fd</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">family</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">type</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">listening</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_is_socket_inet</b>(</code></td><td>int <var class="pdparam">fd</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">family</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">type</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">listening</var>, </td></tr><tr><td> </td><td>uint16_t <var class="pdparam">port</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_is_socket_unix</b>(</code></td><td>int <var class="pdparam">fd</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">type</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">listening</var>, </td></tr><tr><td> </td><td>const char *<var class="pdparam">path</var>, </td></tr><tr><td> </td><td>size_t <var class="pdparam">length</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_is_mq</b>(</code></td><td>int <var class="pdparam">fd</var>, </td></tr><tr><td> </td><td>const char *<var class="pdparam">path</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_is_special</b>(</code></td><td>int <var class="pdparam">fd</var>, </td></tr><tr><td> </td><td>const char *<var class="pdparam">path</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214182952992"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_is_fifo()</code> may be called
                 to check whether the specified file descriptor refers
                 to a FIFO or pipe. If the <em class="parameter"><code>path</code></em>
                 parameter is not <code class="constant">NULL</code>, it is
                 descriptor is bound to the specified file
                 name. Special files in this context are character
                 device nodes and files in <code class="filename">/proc</code>
-                or <code class="filename">/sys</code>.</p></div><div class="refsect1"><a name="idm214192317264"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>On failure, these calls return a negative
+                or <code class="filename">/sys</code>.</p></div><div class="refsect1"><a name="idm214178000768"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>On failure, these calls return a negative
                 errno-style error code. If the file descriptor is of
                 the specified type and bound to the specified address,
                 a positive return value is returned, otherwise
-                zero.</p></div><div class="refsect1"><a name="idm214192315824"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p><a name="pkgconfig-text"></a>These APIs are implemented as a shared
+                zero.</p></div><div class="refsect1"><a name="idm214177999328"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p><a name="pkgconfig-text"></a>These APIs are implemented as a shared
   library, which can be compiled and linked to with the
   <code class="constant">libsystemd</code> <a href="pkg-config.html"><span class="citerefentry"><span class="refentrytitle">pkg-config</span>(1)</span></a>
   file.</p><p>Internally, these function use a combination of
                 <code class="filename">fstat()</code> and
                 <code class="filename">getsockname()</code> to check the file
-                descriptor type and where it is bound to.</p></div><div class="refsect1"><a name="idm214192312688"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+                descriptor type and where it is bound to.</p></div><div class="refsect1"><a name="idm214177996192"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
                         <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
                         <a href="sd-daemon.html"><span class="citerefentry"><span class="refentrytitle">sd-daemon</span>(3)</span></a>,
                         <a href="sd_listen_fds.html"><span class="citerefentry"><span class="refentrytitle">sd_listen_fds</span>(3)</span></a>,
index 44253fda644cc45c43cbd2be40a1d7b8b2cc8ee8..374575e03bacd42e9911fdc4bcbf454380b51021 100644 (file)
@@ -19,7 +19,7 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="sd_is_fifo"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_is_fifo, sd_is_socket, sd_is_socket_inet, sd_is_socket_unix, sd_is_mq, sd_is_special — Check the type of a file descriptor</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-daemon.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_is_fifo</b>(</code></td><td>int <var class="pdparam">fd</var>, </td></tr><tr><td> </td><td>const char *<var class="pdparam">path</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_is_socket</b>(</code></td><td>int <var class="pdparam">fd</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">family</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">type</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">listening</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_is_socket_inet</b>(</code></td><td>int <var class="pdparam">fd</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">family</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">type</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">listening</var>, </td></tr><tr><td> </td><td>uint16_t <var class="pdparam">port</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_is_socket_unix</b>(</code></td><td>int <var class="pdparam">fd</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">type</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">listening</var>, </td></tr><tr><td> </td><td>const char *<var class="pdparam">path</var>, </td></tr><tr><td> </td><td>size_t <var class="pdparam">length</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_is_mq</b>(</code></td><td>int <var class="pdparam">fd</var>, </td></tr><tr><td> </td><td>const char *<var class="pdparam">path</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_is_special</b>(</code></td><td>int <var class="pdparam">fd</var>, </td></tr><tr><td> </td><td>const char *<var class="pdparam">path</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214197320368"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_is_fifo()</code> may be called
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="sd_is_fifo"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_is_fifo, sd_is_socket, sd_is_socket_inet, sd_is_socket_unix, sd_is_mq, sd_is_special — Check the type of a file descriptor</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-daemon.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_is_fifo</b>(</code></td><td>int <var class="pdparam">fd</var>, </td></tr><tr><td> </td><td>const char *<var class="pdparam">path</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_is_socket</b>(</code></td><td>int <var class="pdparam">fd</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">family</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">type</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">listening</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_is_socket_inet</b>(</code></td><td>int <var class="pdparam">fd</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">family</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">type</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">listening</var>, </td></tr><tr><td> </td><td>uint16_t <var class="pdparam">port</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_is_socket_unix</b>(</code></td><td>int <var class="pdparam">fd</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">type</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">listening</var>, </td></tr><tr><td> </td><td>const char *<var class="pdparam">path</var>, </td></tr><tr><td> </td><td>size_t <var class="pdparam">length</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_is_mq</b>(</code></td><td>int <var class="pdparam">fd</var>, </td></tr><tr><td> </td><td>const char *<var class="pdparam">path</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_is_special</b>(</code></td><td>int <var class="pdparam">fd</var>, </td></tr><tr><td> </td><td>const char *<var class="pdparam">path</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214182952992"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_is_fifo()</code> may be called
                 to check whether the specified file descriptor refers
                 to a FIFO or pipe. If the <em class="parameter"><code>path</code></em>
                 parameter is not <code class="constant">NULL</code>, it is
                 descriptor is bound to the specified file
                 name. Special files in this context are character
                 device nodes and files in <code class="filename">/proc</code>
-                or <code class="filename">/sys</code>.</p></div><div class="refsect1"><a name="idm214192317264"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>On failure, these calls return a negative
+                or <code class="filename">/sys</code>.</p></div><div class="refsect1"><a name="idm214178000768"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>On failure, these calls return a negative
                 errno-style error code. If the file descriptor is of
                 the specified type and bound to the specified address,
                 a positive return value is returned, otherwise
-                zero.</p></div><div class="refsect1"><a name="idm214192315824"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p><a name="pkgconfig-text"></a>These APIs are implemented as a shared
+                zero.</p></div><div class="refsect1"><a name="idm214177999328"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p><a name="pkgconfig-text"></a>These APIs are implemented as a shared
   library, which can be compiled and linked to with the
   <code class="constant">libsystemd</code> <a href="pkg-config.html"><span class="citerefentry"><span class="refentrytitle">pkg-config</span>(1)</span></a>
   file.</p><p>Internally, these function use a combination of
                 <code class="filename">fstat()</code> and
                 <code class="filename">getsockname()</code> to check the file
-                descriptor type and where it is bound to.</p></div><div class="refsect1"><a name="idm214192312688"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+                descriptor type and where it is bound to.</p></div><div class="refsect1"><a name="idm214177996192"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
                         <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
                         <a href="sd-daemon.html"><span class="citerefentry"><span class="refentrytitle">sd-daemon</span>(3)</span></a>,
                         <a href="sd_listen_fds.html"><span class="citerefentry"><span class="refentrytitle">sd_listen_fds</span>(3)</span></a>,
index 44253fda644cc45c43cbd2be40a1d7b8b2cc8ee8..374575e03bacd42e9911fdc4bcbf454380b51021 100644 (file)
@@ -19,7 +19,7 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="sd_is_fifo"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_is_fifo, sd_is_socket, sd_is_socket_inet, sd_is_socket_unix, sd_is_mq, sd_is_special — Check the type of a file descriptor</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-daemon.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_is_fifo</b>(</code></td><td>int <var class="pdparam">fd</var>, </td></tr><tr><td> </td><td>const char *<var class="pdparam">path</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_is_socket</b>(</code></td><td>int <var class="pdparam">fd</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">family</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">type</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">listening</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_is_socket_inet</b>(</code></td><td>int <var class="pdparam">fd</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">family</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">type</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">listening</var>, </td></tr><tr><td> </td><td>uint16_t <var class="pdparam">port</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_is_socket_unix</b>(</code></td><td>int <var class="pdparam">fd</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">type</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">listening</var>, </td></tr><tr><td> </td><td>const char *<var class="pdparam">path</var>, </td></tr><tr><td> </td><td>size_t <var class="pdparam">length</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_is_mq</b>(</code></td><td>int <var class="pdparam">fd</var>, </td></tr><tr><td> </td><td>const char *<var class="pdparam">path</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_is_special</b>(</code></td><td>int <var class="pdparam">fd</var>, </td></tr><tr><td> </td><td>const char *<var class="pdparam">path</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214197320368"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_is_fifo()</code> may be called
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="sd_is_fifo"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_is_fifo, sd_is_socket, sd_is_socket_inet, sd_is_socket_unix, sd_is_mq, sd_is_special — Check the type of a file descriptor</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-daemon.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_is_fifo</b>(</code></td><td>int <var class="pdparam">fd</var>, </td></tr><tr><td> </td><td>const char *<var class="pdparam">path</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_is_socket</b>(</code></td><td>int <var class="pdparam">fd</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">family</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">type</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">listening</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_is_socket_inet</b>(</code></td><td>int <var class="pdparam">fd</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">family</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">type</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">listening</var>, </td></tr><tr><td> </td><td>uint16_t <var class="pdparam">port</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_is_socket_unix</b>(</code></td><td>int <var class="pdparam">fd</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">type</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">listening</var>, </td></tr><tr><td> </td><td>const char *<var class="pdparam">path</var>, </td></tr><tr><td> </td><td>size_t <var class="pdparam">length</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_is_mq</b>(</code></td><td>int <var class="pdparam">fd</var>, </td></tr><tr><td> </td><td>const char *<var class="pdparam">path</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_is_special</b>(</code></td><td>int <var class="pdparam">fd</var>, </td></tr><tr><td> </td><td>const char *<var class="pdparam">path</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214182952992"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_is_fifo()</code> may be called
                 to check whether the specified file descriptor refers
                 to a FIFO or pipe. If the <em class="parameter"><code>path</code></em>
                 parameter is not <code class="constant">NULL</code>, it is
                 descriptor is bound to the specified file
                 name. Special files in this context are character
                 device nodes and files in <code class="filename">/proc</code>
-                or <code class="filename">/sys</code>.</p></div><div class="refsect1"><a name="idm214192317264"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>On failure, these calls return a negative
+                or <code class="filename">/sys</code>.</p></div><div class="refsect1"><a name="idm214178000768"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>On failure, these calls return a negative
                 errno-style error code. If the file descriptor is of
                 the specified type and bound to the specified address,
                 a positive return value is returned, otherwise
-                zero.</p></div><div class="refsect1"><a name="idm214192315824"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p><a name="pkgconfig-text"></a>These APIs are implemented as a shared
+                zero.</p></div><div class="refsect1"><a name="idm214177999328"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p><a name="pkgconfig-text"></a>These APIs are implemented as a shared
   library, which can be compiled and linked to with the
   <code class="constant">libsystemd</code> <a href="pkg-config.html"><span class="citerefentry"><span class="refentrytitle">pkg-config</span>(1)</span></a>
   file.</p><p>Internally, these function use a combination of
                 <code class="filename">fstat()</code> and
                 <code class="filename">getsockname()</code> to check the file
-                descriptor type and where it is bound to.</p></div><div class="refsect1"><a name="idm214192312688"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+                descriptor type and where it is bound to.</p></div><div class="refsect1"><a name="idm214177996192"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
                         <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
                         <a href="sd-daemon.html"><span class="citerefentry"><span class="refentrytitle">sd-daemon</span>(3)</span></a>,
                         <a href="sd_listen_fds.html"><span class="citerefentry"><span class="refentrytitle">sd_listen_fds</span>(3)</span></a>,
index 5e4d04c89dec61e486102b65b029c35f83c96104..df228940e21693f7b0ad805c75c39bec16dd9b67 100644 (file)
@@ -19,7 +19,7 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="sd_journal_open"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_journal_open, sd_journal_open_directory, sd_journal_open_files, sd_journal_open_container, sd_journal_close, sd_journal, SD_JOURNAL_LOCAL_ONLY, SD_JOURNAL_RUNTIME_ONLY, SD_JOURNAL_SYSTEM, SD_JOURNAL_CURRENT_USER — Open the system journal for reading</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-journal.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_open</b>(</code></td><td>sd_journal **<var class="pdparam">ret</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">flags</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_open_directory</b>(</code></td><td>sd_journal **<var class="pdparam">ret</var>, </td></tr><tr><td> </td><td>const char *<var class="pdparam">path</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">flags</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_open_files</b>(</code></td><td>sd_journal **<var class="pdparam">ret</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">paths</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">flags</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_open_container</b>(</code></td><td>sd_journal **<var class="pdparam">ret</var>, </td></tr><tr><td> </td><td>const char *<var class="pdparam">machine</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">flags</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">void <b class="fsfunc">sd_journal_close</b>(</code></td><td>sd_journal *<var class="pdparam">j</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214195234384"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_journal_open()</code> opens
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="sd_journal_open"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_journal_open, sd_journal_open_directory, sd_journal_open_files, sd_journal_open_container, sd_journal_close, sd_journal, SD_JOURNAL_LOCAL_ONLY, SD_JOURNAL_RUNTIME_ONLY, SD_JOURNAL_SYSTEM, SD_JOURNAL_CURRENT_USER — Open the system journal for reading</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-journal.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_open</b>(</code></td><td>sd_journal **<var class="pdparam">ret</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">flags</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_open_directory</b>(</code></td><td>sd_journal **<var class="pdparam">ret</var>, </td></tr><tr><td> </td><td>const char *<var class="pdparam">path</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">flags</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_open_files</b>(</code></td><td>sd_journal **<var class="pdparam">ret</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">paths</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">flags</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_open_container</b>(</code></td><td>sd_journal **<var class="pdparam">ret</var>, </td></tr><tr><td> </td><td>const char *<var class="pdparam">machine</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">flags</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">void <b class="fsfunc">sd_journal_close</b>(</code></td><td>sd_journal *<var class="pdparam">j</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214202620928"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_journal_open()</code> opens
                 the log journal for reading. It will find all journal
                 files automatically and interleave them automatically
                 when reading. As first argument it takes a pointer to
                 locally, to its closest entry in time)
                 <a href="sd_journal_seek_cursor.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_seek_cursor</span>(3)</span></a>.</p><p>Notification of journal changes is available via
                 <code class="function">sd_journal_get_fd()</code> and related
-                calls.</p></div><div class="refsect1"><a name="idm214195199952"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>The <code class="function">sd_journal_open()</code>,
+                calls.</p></div><div class="refsect1"><a name="idm214202586464"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>The <code class="function">sd_journal_open()</code>,
                 <code class="function">sd_journal_open_directory()</code>, and
                 <code class="function">sd_journal_open_files()</code> calls
                 return 0 on success or a negative errno-style error
                 code. <code class="function">sd_journal_close()</code> returns
-                nothing.</p></div><div class="refsect1"><a name="idm214195195744"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p>The <code class="function">sd_journal_open()</code>,
+                nothing.</p></div><div class="refsect1"><a name="idm214202582256"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p>The <code class="function">sd_journal_open()</code>,
                 <code class="function">sd_journal_open_directory()</code> and
                 <code class="function">sd_journal_close()</code> interfaces are
                 available as a shared library, which can be compiled and
                 linked to with the
                 <code class="constant">libsystemd</code> <a href="pkg-config.html"><span class="citerefentry"><span class="refentrytitle">pkg-config</span>(1)</span></a>
-                file.</p></div><div class="refsect1"><a name="idm214190277136"></a><h2 id="History">History<a class="headerlink" title="Permalink to this headline" href="#History">¶</a></h2><p><code class="function">sd_journal_open()</code>,
+                file.</p></div><div class="refsect1"><a name="idm214197661808"></a><h2 id="History">History<a class="headerlink" title="Permalink to this headline" href="#History">¶</a></h2><p><code class="function">sd_journal_open()</code>,
                 <code class="function">sd_journal_close()</code>,
                 <code class="constant">SD_JOURNAL_LOCAL_ONLY</code>,
                 <code class="constant">SD_JOURNAL_RUNTIME_ONLY</code>,
                 and <code class="function">sd_journal_open_files()</code>
                 were added in systemd-205.
                 <code class="constant">SD_JOURNAL_SYSTEM_ONLY</code>
-                was deprecated.</p></div><div class="refsect1"><a name="idm214190270800"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+                was deprecated.</p></div><div class="refsect1"><a name="idm214197655472"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
                         <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
                         <a href="sd-journal.html"><span class="citerefentry"><span class="refentrytitle">sd-journal</span>(3)</span></a>,
                         <a href="sd_journal_next.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_next</span>(3)</span></a>,
index ef7c4193cd1db9aba1fe624be149f953eb4d1248..7ab72895ae34a8dc72ab00b37c2d4165e8f0aaa9 100644 (file)
@@ -19,7 +19,7 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="sd_journal_add_match"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_journal_add_match, sd_journal_add_disjunction, sd_journal_add_conjunction, sd_journal_flush_matches — Add or remove entry matches</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-journal.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_add_match</b>(</code></td><td>sd_journal *<var class="pdparam">j</var>, </td></tr><tr><td> </td><td>const void *<var class="pdparam">data</var>, </td></tr><tr><td> </td><td>size_t <var class="pdparam">size</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_add_disjunction</b>(</code></td><td>sd_journal *<var class="pdparam">j</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_add_conjunction</b>(</code></td><td>sd_journal *<var class="pdparam">j</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">void <b class="fsfunc">sd_journal_flush_matches</b>(</code></td><td>sd_journal *<var class="pdparam">j</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214189202816"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_journal_add_match()</code> adds
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="sd_journal_add_match"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_journal_add_match, sd_journal_add_disjunction, sd_journal_add_conjunction, sd_journal_flush_matches — Add or remove entry matches</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-journal.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_add_match</b>(</code></td><td>sd_journal *<var class="pdparam">j</var>, </td></tr><tr><td> </td><td>const void *<var class="pdparam">data</var>, </td></tr><tr><td> </td><td>size_t <var class="pdparam">size</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_add_disjunction</b>(</code></td><td>sd_journal *<var class="pdparam">j</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_add_conjunction</b>(</code></td><td>sd_journal *<var class="pdparam">j</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">void <b class="fsfunc">sd_journal_flush_matches</b>(</code></td><td>sd_journal *<var class="pdparam">j</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214175498320"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_journal_add_match()</code> adds
                 a match by which to filter the entries of the journal
                 file. Matches applied with this call will filter what
                 can be iterated through and read from the journal file
                 is removed and all entries in the journal will be
                 iterated again.</p><p>Note that filtering via matches only applies to
                 the way the journal is read, it has no effect on storage
-                on disk.</p></div><div class="refsect1"><a name="idm214189378512"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p><code class="function">sd_journal_add_match()</code>,
+                on disk.</p></div><div class="refsect1"><a name="idm214175672320"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p><code class="function">sd_journal_add_match()</code>,
                 <code class="function">sd_journal_add_disjunction()</code> and
                 <code class="function">sd_journal_add_conjunction()</code>
                 return 0 on success or a negative errno-style error
                 code. <code class="function">sd_journal_flush_matches()</code>
-                returns nothing.</p></div><div class="refsect1"><a name="idm214189367552"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p>The <code class="function">sd_journal_add_match()</code>,
+                returns nothing.</p></div><div class="refsect1"><a name="idm214175668288"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p>The <code class="function">sd_journal_add_match()</code>,
                 <code class="function">sd_journal_add_disjunction()</code>,
                 <code class="function">sd_journal_add_conjunction()</code> and
                 <code class="function">sd_journal_flush_matches()</code>
                 interfaces are available as a shared library, which can
                 be compiled and linked to with the
                 <code class="constant">libsystemd</code> <a href="pkg-config.html"><span class="citerefentry"><span class="refentrytitle">pkg-config</span>(1)</span></a>
-                file.</p></div><div class="refsect1"><a name="idm214189361952"></a><h2 id="Examples">Examples<a class="headerlink" title="Permalink to this headline" href="#Examples">¶</a></h2><p>The following example adds matches to a journal
+                file.</p></div><div class="refsect1"><a name="idm214175662688"></a><h2 id="Examples">Examples<a class="headerlink" title="Permalink to this headline" href="#Examples">¶</a></h2><p>The following example adds matches to a journal
                 context object to iterate only through messages
                 generated by the Avahi service at the four error log
                 levels, plus all messages of the message ID
@@ -110,7 +110,7 @@ int add_matches(sd_journal *j) {
         sd_journal_add_match(j, "PRIORITY=3", 0);
         sd_journal_add_disjunction(j);
         sd_journal_add_match(j, "MESSAGE_ID=03bb1dab98ab4ecfbf6fff2738bdd964", 0);
-}</pre></div><div class="refsect1"><a name="idm214189359248"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+}</pre></div><div class="refsect1"><a name="idm214175659984"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
                         <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
                         <a href="sd-journal.html"><span class="citerefentry"><span class="refentrytitle">sd-journal</span>(3)</span></a>,
                         <a href="sd_journal_open.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_open</span>(3)</span></a>,
index ef7c4193cd1db9aba1fe624be149f953eb4d1248..7ab72895ae34a8dc72ab00b37c2d4165e8f0aaa9 100644 (file)
@@ -19,7 +19,7 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="sd_journal_add_match"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_journal_add_match, sd_journal_add_disjunction, sd_journal_add_conjunction, sd_journal_flush_matches — Add or remove entry matches</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-journal.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_add_match</b>(</code></td><td>sd_journal *<var class="pdparam">j</var>, </td></tr><tr><td> </td><td>const void *<var class="pdparam">data</var>, </td></tr><tr><td> </td><td>size_t <var class="pdparam">size</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_add_disjunction</b>(</code></td><td>sd_journal *<var class="pdparam">j</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_add_conjunction</b>(</code></td><td>sd_journal *<var class="pdparam">j</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">void <b class="fsfunc">sd_journal_flush_matches</b>(</code></td><td>sd_journal *<var class="pdparam">j</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214189202816"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_journal_add_match()</code> adds
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="sd_journal_add_match"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_journal_add_match, sd_journal_add_disjunction, sd_journal_add_conjunction, sd_journal_flush_matches — Add or remove entry matches</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-journal.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_add_match</b>(</code></td><td>sd_journal *<var class="pdparam">j</var>, </td></tr><tr><td> </td><td>const void *<var class="pdparam">data</var>, </td></tr><tr><td> </td><td>size_t <var class="pdparam">size</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_add_disjunction</b>(</code></td><td>sd_journal *<var class="pdparam">j</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_add_conjunction</b>(</code></td><td>sd_journal *<var class="pdparam">j</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">void <b class="fsfunc">sd_journal_flush_matches</b>(</code></td><td>sd_journal *<var class="pdparam">j</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214175498320"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_journal_add_match()</code> adds
                 a match by which to filter the entries of the journal
                 file. Matches applied with this call will filter what
                 can be iterated through and read from the journal file
                 is removed and all entries in the journal will be
                 iterated again.</p><p>Note that filtering via matches only applies to
                 the way the journal is read, it has no effect on storage
-                on disk.</p></div><div class="refsect1"><a name="idm214189378512"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p><code class="function">sd_journal_add_match()</code>,
+                on disk.</p></div><div class="refsect1"><a name="idm214175672320"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p><code class="function">sd_journal_add_match()</code>,
                 <code class="function">sd_journal_add_disjunction()</code> and
                 <code class="function">sd_journal_add_conjunction()</code>
                 return 0 on success or a negative errno-style error
                 code. <code class="function">sd_journal_flush_matches()</code>
-                returns nothing.</p></div><div class="refsect1"><a name="idm214189367552"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p>The <code class="function">sd_journal_add_match()</code>,
+                returns nothing.</p></div><div class="refsect1"><a name="idm214175668288"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p>The <code class="function">sd_journal_add_match()</code>,
                 <code class="function">sd_journal_add_disjunction()</code>,
                 <code class="function">sd_journal_add_conjunction()</code> and
                 <code class="function">sd_journal_flush_matches()</code>
                 interfaces are available as a shared library, which can
                 be compiled and linked to with the
                 <code class="constant">libsystemd</code> <a href="pkg-config.html"><span class="citerefentry"><span class="refentrytitle">pkg-config</span>(1)</span></a>
-                file.</p></div><div class="refsect1"><a name="idm214189361952"></a><h2 id="Examples">Examples<a class="headerlink" title="Permalink to this headline" href="#Examples">¶</a></h2><p>The following example adds matches to a journal
+                file.</p></div><div class="refsect1"><a name="idm214175662688"></a><h2 id="Examples">Examples<a class="headerlink" title="Permalink to this headline" href="#Examples">¶</a></h2><p>The following example adds matches to a journal
                 context object to iterate only through messages
                 generated by the Avahi service at the four error log
                 levels, plus all messages of the message ID
@@ -110,7 +110,7 @@ int add_matches(sd_journal *j) {
         sd_journal_add_match(j, "PRIORITY=3", 0);
         sd_journal_add_disjunction(j);
         sd_journal_add_match(j, "MESSAGE_ID=03bb1dab98ab4ecfbf6fff2738bdd964", 0);
-}</pre></div><div class="refsect1"><a name="idm214189359248"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+}</pre></div><div class="refsect1"><a name="idm214175659984"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
                         <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
                         <a href="sd-journal.html"><span class="citerefentry"><span class="refentrytitle">sd-journal</span>(3)</span></a>,
                         <a href="sd_journal_open.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_open</span>(3)</span></a>,
index d62cbf82bc28f5f6630ddcb03a814e7f262fef31..953918a7550adf114c14181fb848b0fe0d7bd374 100644 (file)
@@ -1,5 +1,5 @@
 '\" t
-.TH "SD_JOURNAL_ADD_MATCH" "3" "" "systemd 214" "sd_journal_add_match"
+.TH "SD_JOURNAL_ADD_MATCH" "3" "" "systemd 215" "sd_journal_add_match"
 .\" -----------------------------------------------------------------
 .\" * Define some portability stuff
 .\" -----------------------------------------------------------------
index ef7c4193cd1db9aba1fe624be149f953eb4d1248..7ab72895ae34a8dc72ab00b37c2d4165e8f0aaa9 100644 (file)
@@ -19,7 +19,7 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="sd_journal_add_match"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_journal_add_match, sd_journal_add_disjunction, sd_journal_add_conjunction, sd_journal_flush_matches — Add or remove entry matches</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-journal.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_add_match</b>(</code></td><td>sd_journal *<var class="pdparam">j</var>, </td></tr><tr><td> </td><td>const void *<var class="pdparam">data</var>, </td></tr><tr><td> </td><td>size_t <var class="pdparam">size</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_add_disjunction</b>(</code></td><td>sd_journal *<var class="pdparam">j</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_add_conjunction</b>(</code></td><td>sd_journal *<var class="pdparam">j</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">void <b class="fsfunc">sd_journal_flush_matches</b>(</code></td><td>sd_journal *<var class="pdparam">j</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214189202816"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_journal_add_match()</code> adds
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="sd_journal_add_match"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_journal_add_match, sd_journal_add_disjunction, sd_journal_add_conjunction, sd_journal_flush_matches — Add or remove entry matches</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-journal.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_add_match</b>(</code></td><td>sd_journal *<var class="pdparam">j</var>, </td></tr><tr><td> </td><td>const void *<var class="pdparam">data</var>, </td></tr><tr><td> </td><td>size_t <var class="pdparam">size</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_add_disjunction</b>(</code></td><td>sd_journal *<var class="pdparam">j</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_add_conjunction</b>(</code></td><td>sd_journal *<var class="pdparam">j</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">void <b class="fsfunc">sd_journal_flush_matches</b>(</code></td><td>sd_journal *<var class="pdparam">j</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214175498320"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_journal_add_match()</code> adds
                 a match by which to filter the entries of the journal
                 file. Matches applied with this call will filter what
                 can be iterated through and read from the journal file
                 is removed and all entries in the journal will be
                 iterated again.</p><p>Note that filtering via matches only applies to
                 the way the journal is read, it has no effect on storage
-                on disk.</p></div><div class="refsect1"><a name="idm214189378512"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p><code class="function">sd_journal_add_match()</code>,
+                on disk.</p></div><div class="refsect1"><a name="idm214175672320"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p><code class="function">sd_journal_add_match()</code>,
                 <code class="function">sd_journal_add_disjunction()</code> and
                 <code class="function">sd_journal_add_conjunction()</code>
                 return 0 on success or a negative errno-style error
                 code. <code class="function">sd_journal_flush_matches()</code>
-                returns nothing.</p></div><div class="refsect1"><a name="idm214189367552"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p>The <code class="function">sd_journal_add_match()</code>,
+                returns nothing.</p></div><div class="refsect1"><a name="idm214175668288"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p>The <code class="function">sd_journal_add_match()</code>,
                 <code class="function">sd_journal_add_disjunction()</code>,
                 <code class="function">sd_journal_add_conjunction()</code> and
                 <code class="function">sd_journal_flush_matches()</code>
                 interfaces are available as a shared library, which can
                 be compiled and linked to with the
                 <code class="constant">libsystemd</code> <a href="pkg-config.html"><span class="citerefentry"><span class="refentrytitle">pkg-config</span>(1)</span></a>
-                file.</p></div><div class="refsect1"><a name="idm214189361952"></a><h2 id="Examples">Examples<a class="headerlink" title="Permalink to this headline" href="#Examples">¶</a></h2><p>The following example adds matches to a journal
+                file.</p></div><div class="refsect1"><a name="idm214175662688"></a><h2 id="Examples">Examples<a class="headerlink" title="Permalink to this headline" href="#Examples">¶</a></h2><p>The following example adds matches to a journal
                 context object to iterate only through messages
                 generated by the Avahi service at the four error log
                 levels, plus all messages of the message ID
@@ -110,7 +110,7 @@ int add_matches(sd_journal *j) {
         sd_journal_add_match(j, "PRIORITY=3", 0);
         sd_journal_add_disjunction(j);
         sd_journal_add_match(j, "MESSAGE_ID=03bb1dab98ab4ecfbf6fff2738bdd964", 0);
-}</pre></div><div class="refsect1"><a name="idm214189359248"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+}</pre></div><div class="refsect1"><a name="idm214175659984"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
                         <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
                         <a href="sd-journal.html"><span class="citerefentry"><span class="refentrytitle">sd-journal</span>(3)</span></a>,
                         <a href="sd_journal_open.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_open</span>(3)</span></a>,
index 5e4d04c89dec61e486102b65b029c35f83c96104..df228940e21693f7b0ad805c75c39bec16dd9b67 100644 (file)
@@ -19,7 +19,7 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="sd_journal_open"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_journal_open, sd_journal_open_directory, sd_journal_open_files, sd_journal_open_container, sd_journal_close, sd_journal, SD_JOURNAL_LOCAL_ONLY, SD_JOURNAL_RUNTIME_ONLY, SD_JOURNAL_SYSTEM, SD_JOURNAL_CURRENT_USER — Open the system journal for reading</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-journal.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_open</b>(</code></td><td>sd_journal **<var class="pdparam">ret</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">flags</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_open_directory</b>(</code></td><td>sd_journal **<var class="pdparam">ret</var>, </td></tr><tr><td> </td><td>const char *<var class="pdparam">path</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">flags</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_open_files</b>(</code></td><td>sd_journal **<var class="pdparam">ret</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">paths</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">flags</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_open_container</b>(</code></td><td>sd_journal **<var class="pdparam">ret</var>, </td></tr><tr><td> </td><td>const char *<var class="pdparam">machine</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">flags</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">void <b class="fsfunc">sd_journal_close</b>(</code></td><td>sd_journal *<var class="pdparam">j</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214195234384"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_journal_open()</code> opens
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="sd_journal_open"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_journal_open, sd_journal_open_directory, sd_journal_open_files, sd_journal_open_container, sd_journal_close, sd_journal, SD_JOURNAL_LOCAL_ONLY, SD_JOURNAL_RUNTIME_ONLY, SD_JOURNAL_SYSTEM, SD_JOURNAL_CURRENT_USER — Open the system journal for reading</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-journal.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_open</b>(</code></td><td>sd_journal **<var class="pdparam">ret</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">flags</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_open_directory</b>(</code></td><td>sd_journal **<var class="pdparam">ret</var>, </td></tr><tr><td> </td><td>const char *<var class="pdparam">path</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">flags</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_open_files</b>(</code></td><td>sd_journal **<var class="pdparam">ret</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">paths</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">flags</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_open_container</b>(</code></td><td>sd_journal **<var class="pdparam">ret</var>, </td></tr><tr><td> </td><td>const char *<var class="pdparam">machine</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">flags</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">void <b class="fsfunc">sd_journal_close</b>(</code></td><td>sd_journal *<var class="pdparam">j</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214202620928"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_journal_open()</code> opens
                 the log journal for reading. It will find all journal
                 files automatically and interleave them automatically
                 when reading. As first argument it takes a pointer to
                 locally, to its closest entry in time)
                 <a href="sd_journal_seek_cursor.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_seek_cursor</span>(3)</span></a>.</p><p>Notification of journal changes is available via
                 <code class="function">sd_journal_get_fd()</code> and related
-                calls.</p></div><div class="refsect1"><a name="idm214195199952"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>The <code class="function">sd_journal_open()</code>,
+                calls.</p></div><div class="refsect1"><a name="idm214202586464"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>The <code class="function">sd_journal_open()</code>,
                 <code class="function">sd_journal_open_directory()</code>, and
                 <code class="function">sd_journal_open_files()</code> calls
                 return 0 on success or a negative errno-style error
                 code. <code class="function">sd_journal_close()</code> returns
-                nothing.</p></div><div class="refsect1"><a name="idm214195195744"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p>The <code class="function">sd_journal_open()</code>,
+                nothing.</p></div><div class="refsect1"><a name="idm214202582256"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p>The <code class="function">sd_journal_open()</code>,
                 <code class="function">sd_journal_open_directory()</code> and
                 <code class="function">sd_journal_close()</code> interfaces are
                 available as a shared library, which can be compiled and
                 linked to with the
                 <code class="constant">libsystemd</code> <a href="pkg-config.html"><span class="citerefentry"><span class="refentrytitle">pkg-config</span>(1)</span></a>
-                file.</p></div><div class="refsect1"><a name="idm214190277136"></a><h2 id="History">History<a class="headerlink" title="Permalink to this headline" href="#History">¶</a></h2><p><code class="function">sd_journal_open()</code>,
+                file.</p></div><div class="refsect1"><a name="idm214197661808"></a><h2 id="History">History<a class="headerlink" title="Permalink to this headline" href="#History">¶</a></h2><p><code class="function">sd_journal_open()</code>,
                 <code class="function">sd_journal_close()</code>,
                 <code class="constant">SD_JOURNAL_LOCAL_ONLY</code>,
                 <code class="constant">SD_JOURNAL_RUNTIME_ONLY</code>,
                 and <code class="function">sd_journal_open_files()</code>
                 were added in systemd-205.
                 <code class="constant">SD_JOURNAL_SYSTEM_ONLY</code>
-                was deprecated.</p></div><div class="refsect1"><a name="idm214190270800"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+                was deprecated.</p></div><div class="refsect1"><a name="idm214197655472"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
                         <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
                         <a href="sd-journal.html"><span class="citerefentry"><span class="refentrytitle">sd-journal</span>(3)</span></a>,
                         <a href="sd_journal_next.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_next</span>(3)</span></a>,
index 55dc8666a2060de63a1de6ebbba90c0e0f31df5d..5eb35328b8224011850385b38c6d4580476e211f 100644 (file)
@@ -19,7 +19,7 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="sd_journal_get_data"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_journal_get_data, sd_journal_enumerate_data, sd_journal_restart_data, SD_JOURNAL_FOREACH_DATA, sd_journal_set_data_threshold, sd_journal_get_data_threshold — Read data fields from the current journal entry</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-journal.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_get_data</b>(</code></td><td>sd_journal *<var class="pdparam">j</var>, </td></tr><tr><td> </td><td>const char *<var class="pdparam">field</var>, </td></tr><tr><td> </td><td>const void **<var class="pdparam">data</var>, </td></tr><tr><td> </td><td>size_t *<var class="pdparam">length</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_enumerate_data</b>(</code></td><td>sd_journal *<var class="pdparam">j</var>, </td></tr><tr><td> </td><td>const void **<var class="pdparam">data</var>, </td></tr><tr><td> </td><td>size_t *<var class="pdparam">length</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">void <b class="fsfunc">sd_journal_restart_data</b>(</code></td><td>sd_journal *<var class="pdparam">j</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef"><b class="fsfunc">SD_JOURNAL_FOREACH_DATA</b>(</code></td><td>sd_journal *<var class="pdparam">j</var>, </td></tr><tr><td> </td><td>const void *<var class="pdparam">data</var>, </td></tr><tr><td> </td><td>size_t <var class="pdparam">length</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_set_data_threshold</b>(</code></td><td>sd_journal *<var class="pdparam">j</var>, </td></tr><tr><td> </td><td>size_t <var class="pdparam">sz</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_get_data_threshold</b>(</code></td><td>sd_journal *<var class="pdparam">j</var>, </td></tr><tr><td> </td><td>size_t *<var class="pdparam">sz</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214187428608"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_journal_get_data()</code> gets
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="sd_journal_get_data"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_journal_get_data, sd_journal_enumerate_data, sd_journal_restart_data, SD_JOURNAL_FOREACH_DATA, sd_journal_set_data_threshold, sd_journal_get_data_threshold — Read data fields from the current journal entry</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-journal.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_get_data</b>(</code></td><td>sd_journal *<var class="pdparam">j</var>, </td></tr><tr><td> </td><td>const char *<var class="pdparam">field</var>, </td></tr><tr><td> </td><td>const void **<var class="pdparam">data</var>, </td></tr><tr><td> </td><td>size_t *<var class="pdparam">length</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_enumerate_data</b>(</code></td><td>sd_journal *<var class="pdparam">j</var>, </td></tr><tr><td> </td><td>const void **<var class="pdparam">data</var>, </td></tr><tr><td> </td><td>size_t *<var class="pdparam">length</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">void <b class="fsfunc">sd_journal_restart_data</b>(</code></td><td>sd_journal *<var class="pdparam">j</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef"><b class="fsfunc">SD_JOURNAL_FOREACH_DATA</b>(</code></td><td>sd_journal *<var class="pdparam">j</var>, </td></tr><tr><td> </td><td>const void *<var class="pdparam">data</var>, </td></tr><tr><td> </td><td>size_t <var class="pdparam">length</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_set_data_threshold</b>(</code></td><td>sd_journal *<var class="pdparam">j</var>, </td></tr><tr><td> </td><td>size_t <var class="pdparam">sz</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_get_data_threshold</b>(</code></td><td>sd_journal *<var class="pdparam">j</var>, </td></tr><tr><td> </td><td>size_t *<var class="pdparam">sz</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214182872080"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_journal_get_data()</code> gets
                 the data object associated with a specific field from
                 the current journal entry. It takes four arguments:
                 the journal context object, a string with the field
@@ -77,7 +77,7 @@
                 having to decompress large compressed data objects in
                 full.</p><p><code class="function">sd_journal_get_data_threshold()</code>
                 returns the currently configured data field size
-                threshold.</p></div><div class="refsect1"><a name="idm214187402928"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p><code class="function">sd_journal_get_data()</code>
+                threshold.</p></div><div class="refsect1"><a name="idm214182845904"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p><code class="function">sd_journal_get_data()</code>
                 returns 0 on success or a negative errno-style error
                 code. If the current entry does not include the
                 specified field, -ENOENT is returned. If
@@ -92,7 +92,7 @@
                 nothing. <code class="function">sd_journal_set_data_threshold()</code>
                 and <code class="function">sd_journal_get_threshold()</code>
                 return 0 on success or a negative errno-style error
-                code.</p></div><div class="refsect1"><a name="idm214187396880"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p>The <code class="function">sd_journal_get_data()</code>,
+                code.</p></div><div class="refsect1"><a name="idm214182839856"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p>The <code class="function">sd_journal_get_data()</code>,
                 <code class="function">sd_journal_enumerate_data()</code>,
                 <code class="function">sd_journal_restart_data()</code>,
                 <code class="function">sd_journal_set_data_threshold()</code>
                 interfaces are available as a shared library, which can
                 be compiled and linked to with the
                 <code class="constant">libsystemd</code> <a href="pkg-config.html"><span class="citerefentry"><span class="refentrytitle">pkg-config</span>(1)</span></a>
-                file.</p></div><div class="refsect1"><a name="idm214187390528"></a><h2 id="Examples">Examples<a class="headerlink" title="Permalink to this headline" href="#Examples">¶</a></h2><p>See
+                file.</p></div><div class="refsect1"><a name="idm214177917392"></a><h2 id="Examples">Examples<a class="headerlink" title="Permalink to this headline" href="#Examples">¶</a></h2><p>See
                 <a href="sd_journal_next.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_next</span>(3)</span></a>
                 for a complete example how to use
                 <code class="function">sd_journal_get_data()</code>.</p><p>Use the
                 entry:</p><pre class="programlisting">...
 int print_fields(sd_journal *j) {
         const void *data;
-        size_t l;
+        size_t length;
         SD_JOURNAL_FOREACH_DATA(j, data, length)
                 printf("%.*s\n", (int) length, data);
 }
-...</pre></div><div class="refsect1"><a name="idm214182417888"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+...</pre></div><div class="refsect1"><a name="idm214177912896"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
                         <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
                         <a href="systemd.journal-fields.html"><span class="citerefentry"><span class="refentrytitle">systemd.journal-fields</span>(7)</span></a>,
                         <a href="sd-journal.html"><span class="citerefentry"><span class="refentrytitle">sd-journal</span>(3)</span></a>,
index 3c8684d994a027f0bf02ac699550404746797fe3..8419624e21ee409961fc0d86d32be581518ef48f 100644 (file)
@@ -19,7 +19,7 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="sd_journal_query_unique"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_journal_query_unique, sd_journal_enumerate_unique, sd_journal_restart_unique, SD_JOURNAL_FOREACH_UNIQUE — Read unique data fields from the journal</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-journal.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_query_unique</b>(</code></td><td>sd_journal *<var class="pdparam">j</var>, </td></tr><tr><td> </td><td>const char *<var class="pdparam">field</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_enumerate_unique</b>(</code></td><td>sd_journal *<var class="pdparam">j</var>, </td></tr><tr><td> </td><td>const void **<var class="pdparam">data</var>, </td></tr><tr><td> </td><td>size_t *<var class="pdparam">length</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">void <b class="fsfunc">sd_journal_restart_unique</b>(</code></td><td>sd_journal *<var class="pdparam">j</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef"><b class="fsfunc">SD_JOURNAL_FOREACH_UNIQUE</b>(</code></td><td>sd_journal *<var class="pdparam">j</var>, </td></tr><tr><td> </td><td>const void *<var class="pdparam">data</var>, </td></tr><tr><td> </td><td>size_t <var class="pdparam">length</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214170804784"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_journal_query_unique()</code>
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="sd_journal_query_unique"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_journal_query_unique, sd_journal_enumerate_unique, sd_journal_restart_unique, SD_JOURNAL_FOREACH_UNIQUE — Read unique data fields from the journal</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-journal.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_query_unique</b>(</code></td><td>sd_journal *<var class="pdparam">j</var>, </td></tr><tr><td> </td><td>const char *<var class="pdparam">field</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_enumerate_unique</b>(</code></td><td>sd_journal *<var class="pdparam">j</var>, </td></tr><tr><td> </td><td>const void **<var class="pdparam">data</var>, </td></tr><tr><td> </td><td>size_t *<var class="pdparam">length</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">void <b class="fsfunc">sd_journal_restart_unique</b>(</code></td><td>sd_journal *<var class="pdparam">j</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef"><b class="fsfunc">SD_JOURNAL_FOREACH_UNIQUE</b>(</code></td><td>sd_journal *<var class="pdparam">j</var>, </td></tr><tr><td> </td><td>const void *<var class="pdparam">data</var>, </td></tr><tr><td> </td><td>size_t <var class="pdparam">length</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214197431712"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_journal_query_unique()</code>
                 queries the journal for all unique values the
                 specified field can take. It takes two arguments: the
                 journal to query and the field name to look
                 influenced by matches set with
                 <code class="function">sd_journal_add_match()</code> but this
                 might change in a later version of this
-                software.</p></div><div class="refsect1"><a name="idm214170790992"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p><code class="function">sd_journal_query_unique()</code>
+                software.</p></div><div class="refsect1"><a name="idm214197493904"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p><code class="function">sd_journal_query_unique()</code>
                 returns 0 on success or a negative errno-style error
                 code. <code class="function">sd_journal_enumerate_unique()</code>
                 returns a positive integer if the next field data has
                 been read, 0 when no more fields are known, or a
                 negative errno-style error
                 code. <code class="function">sd_journal_restart_unique()</code>
-                returns nothing.</p></div><div class="refsect1"><a name="idm214170780096"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p>The <code class="function">sd_journal_query_unique()</code>,
+                returns nothing.</p></div><div class="refsect1"><a name="idm214197490352"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p>The <code class="function">sd_journal_query_unique()</code>,
                 <code class="function">sd_journal_enumerate_unique()</code> and
                 <code class="function">sd_journal_restart_unique()</code>
                 interfaces are available as a shared library, which can
                 be compiled and linked to with the
                 <code class="constant">libsystemd</code> <a href="pkg-config.html"><span class="citerefentry"><span class="refentrytitle">pkg-config</span>(1)</span></a>
-                file.</p></div><div class="refsect1"><a name="idm214170775216"></a><h2 id="Examples">Examples<a class="headerlink" title="Permalink to this headline" href="#Examples">¶</a></h2><p>Use the
+                file.</p></div><div class="refsect1"><a name="idm214197485472"></a><h2 id="Examples">Examples<a class="headerlink" title="Permalink to this headline" href="#Examples">¶</a></h2><p>Use the
                 <code class="function">SD_JOURNAL_FOREACH_UNIQUE</code> macro
                 to iterate through all values a field of the journal
                 can take. The following example lists all unit names
@@ -101,7 +101,7 @@ int main(int argc, char *argv[]) {
                 printf("%.*s\n", (int) l, (const char*) d);
         sd_journal_close(j);
         return 0;
-}</pre></div><div class="refsect1"><a name="idm214170770608"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+}</pre></div><div class="refsect1"><a name="idm214197482672"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
                         <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
                         <a href="systemd.journal-fields.html"><span class="citerefentry"><span class="refentrytitle">systemd.journal-fields</span>(7)</span></a>,
                         <a href="sd-journal.html"><span class="citerefentry"><span class="refentrytitle">sd-journal</span>(3)</span></a>,
index ef7c4193cd1db9aba1fe624be149f953eb4d1248..7ab72895ae34a8dc72ab00b37c2d4165e8f0aaa9 100644 (file)
@@ -19,7 +19,7 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="sd_journal_add_match"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_journal_add_match, sd_journal_add_disjunction, sd_journal_add_conjunction, sd_journal_flush_matches — Add or remove entry matches</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-journal.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_add_match</b>(</code></td><td>sd_journal *<var class="pdparam">j</var>, </td></tr><tr><td> </td><td>const void *<var class="pdparam">data</var>, </td></tr><tr><td> </td><td>size_t <var class="pdparam">size</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_add_disjunction</b>(</code></td><td>sd_journal *<var class="pdparam">j</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_add_conjunction</b>(</code></td><td>sd_journal *<var class="pdparam">j</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">void <b class="fsfunc">sd_journal_flush_matches</b>(</code></td><td>sd_journal *<var class="pdparam">j</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214189202816"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_journal_add_match()</code> adds
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="sd_journal_add_match"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_journal_add_match, sd_journal_add_disjunction, sd_journal_add_conjunction, sd_journal_flush_matches — Add or remove entry matches</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-journal.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_add_match</b>(</code></td><td>sd_journal *<var class="pdparam">j</var>, </td></tr><tr><td> </td><td>const void *<var class="pdparam">data</var>, </td></tr><tr><td> </td><td>size_t <var class="pdparam">size</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_add_disjunction</b>(</code></td><td>sd_journal *<var class="pdparam">j</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_add_conjunction</b>(</code></td><td>sd_journal *<var class="pdparam">j</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">void <b class="fsfunc">sd_journal_flush_matches</b>(</code></td><td>sd_journal *<var class="pdparam">j</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214175498320"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_journal_add_match()</code> adds
                 a match by which to filter the entries of the journal
                 file. Matches applied with this call will filter what
                 can be iterated through and read from the journal file
                 is removed and all entries in the journal will be
                 iterated again.</p><p>Note that filtering via matches only applies to
                 the way the journal is read, it has no effect on storage
-                on disk.</p></div><div class="refsect1"><a name="idm214189378512"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p><code class="function">sd_journal_add_match()</code>,
+                on disk.</p></div><div class="refsect1"><a name="idm214175672320"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p><code class="function">sd_journal_add_match()</code>,
                 <code class="function">sd_journal_add_disjunction()</code> and
                 <code class="function">sd_journal_add_conjunction()</code>
                 return 0 on success or a negative errno-style error
                 code. <code class="function">sd_journal_flush_matches()</code>
-                returns nothing.</p></div><div class="refsect1"><a name="idm214189367552"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p>The <code class="function">sd_journal_add_match()</code>,
+                returns nothing.</p></div><div class="refsect1"><a name="idm214175668288"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p>The <code class="function">sd_journal_add_match()</code>,
                 <code class="function">sd_journal_add_disjunction()</code>,
                 <code class="function">sd_journal_add_conjunction()</code> and
                 <code class="function">sd_journal_flush_matches()</code>
                 interfaces are available as a shared library, which can
                 be compiled and linked to with the
                 <code class="constant">libsystemd</code> <a href="pkg-config.html"><span class="citerefentry"><span class="refentrytitle">pkg-config</span>(1)</span></a>
-                file.</p></div><div class="refsect1"><a name="idm214189361952"></a><h2 id="Examples">Examples<a class="headerlink" title="Permalink to this headline" href="#Examples">¶</a></h2><p>The following example adds matches to a journal
+                file.</p></div><div class="refsect1"><a name="idm214175662688"></a><h2 id="Examples">Examples<a class="headerlink" title="Permalink to this headline" href="#Examples">¶</a></h2><p>The following example adds matches to a journal
                 context object to iterate only through messages
                 generated by the Avahi service at the four error log
                 levels, plus all messages of the message ID
@@ -110,7 +110,7 @@ int add_matches(sd_journal *j) {
         sd_journal_add_match(j, "PRIORITY=3", 0);
         sd_journal_add_disjunction(j);
         sd_journal_add_match(j, "MESSAGE_ID=03bb1dab98ab4ecfbf6fff2738bdd964", 0);
-}</pre></div><div class="refsect1"><a name="idm214189359248"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+}</pre></div><div class="refsect1"><a name="idm214175659984"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
                         <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
                         <a href="sd-journal.html"><span class="citerefentry"><span class="refentrytitle">sd-journal</span>(3)</span></a>,
                         <a href="sd_journal_open.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_open</span>(3)</span></a>,
index bb9ee04acf4f845609cf933df4733de46fdae630..c533f54944ce61d7dc0c7e977a262217a8fb74ef 100644 (file)
@@ -1,5 +1,5 @@
 '\" t
-.TH "SD_JOURNAL_GET_CATALOG" "3" "" "systemd 214" "sd_journal_get_catalog"
+.TH "SD_JOURNAL_GET_CATALOG" "3" "" "systemd 215" "sd_journal_get_catalog"
 .\" -----------------------------------------------------------------
 .\" * Define some portability stuff
 .\" -----------------------------------------------------------------
index fc034c8a91e6a9415395b056554e7ba5add236ce..8e5b9442aee429cad47cd54547bcc0a872820d11 100644 (file)
@@ -19,7 +19,7 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="sd_journal_get_catalog"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_journal_get_catalog, sd_journal_get_catalog_for_message_id — Retrieve message catalog entry</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-journal.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_get_catalog</b>(</code></td><td>sd_journal *<var class="pdparam">j</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">ret</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_get_catalog_for_message_id</b>(</code></td><td>sd_id128_t <var class="pdparam">id</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">ret</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214172907056"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_journal_get_catalog()</code>
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="sd_journal_get_catalog"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_journal_get_catalog, sd_journal_get_catalog_for_message_id — Retrieve message catalog entry</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-journal.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_get_catalog</b>(</code></td><td>sd_journal *<var class="pdparam">j</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">ret</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_get_catalog_for_message_id</b>(</code></td><td>sd_id128_t <var class="pdparam">id</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">ret</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214178125312"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_journal_get_catalog()</code>
                 retrieves a message catalog entry for the current
                 journal entry. This will look up an entry in the
                 message catalog by using the
@@ -37,7 +37,7 @@
                 open journal context is necessary for this), and no
                 field substitution is performed.</p><p>For more information about the journal message
                 catalog please refer to the <a class="ulink" href="http://www.freedesktop.org/wiki/Software/systemd/catalog" target="_top">Journal
-                Message Catalogs</a> documentation page.</p></div><div class="refsect1"><a name="idm214172781216"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p><code class="function">sd_journal_get_catalog()</code>
+                Message Catalogs</a> documentation page.</p></div><div class="refsect1"><a name="idm214178119184"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p><code class="function">sd_journal_get_catalog()</code>
                 and
                 <code class="function">sd_journal_get_catalog_for_message_id()</code>
                 return 0 on success or a negative errno-style error
                 -ENOENT is returned.</p><p>On successful return, <em class="parameter"><code>ret</code></em>
                 points to a new string, which must be freed with
                 <a href="free.html"><span class="citerefentry"><span class="refentrytitle">free</span>(3)</span></a>.
-                </p></div><div class="refsect1"><a name="idm214172972304"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p>The <code class="function">sd_journal_get_catalog()</code> and
+                </p></div><div class="refsect1"><a name="idm214178315952"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p>The <code class="function">sd_journal_get_catalog()</code> and
                 <code class="function">sd_journal_get_catalog_for_message_id()</code>
                 interfaces are available as a shared library, which can
                 be compiled and linked to with the
                 <code class="constant">libsystemd</code> <a href="pkg-config.html"><span class="citerefentry"><span class="refentrytitle">pkg-config</span>(1)</span></a>
-                file.</p></div><div class="refsect1"><a name="idm214172968160"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+                file.</p></div><div class="refsect1"><a name="idm214178311808"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
                         <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
                         <a href="systemd.journal-fields.html"><span class="citerefentry"><span class="refentrytitle">systemd.journal-fields</span>(7)</span></a>,
                         <a href="sd-journal.html"><span class="citerefentry"><span class="refentrytitle">sd-journal</span>(3)</span></a>,
index fc034c8a91e6a9415395b056554e7ba5add236ce..8e5b9442aee429cad47cd54547bcc0a872820d11 100644 (file)
@@ -19,7 +19,7 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="sd_journal_get_catalog"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_journal_get_catalog, sd_journal_get_catalog_for_message_id — Retrieve message catalog entry</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-journal.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_get_catalog</b>(</code></td><td>sd_journal *<var class="pdparam">j</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">ret</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_get_catalog_for_message_id</b>(</code></td><td>sd_id128_t <var class="pdparam">id</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">ret</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214172907056"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_journal_get_catalog()</code>
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="sd_journal_get_catalog"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_journal_get_catalog, sd_journal_get_catalog_for_message_id — Retrieve message catalog entry</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-journal.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_get_catalog</b>(</code></td><td>sd_journal *<var class="pdparam">j</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">ret</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_get_catalog_for_message_id</b>(</code></td><td>sd_id128_t <var class="pdparam">id</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">ret</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214178125312"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_journal_get_catalog()</code>
                 retrieves a message catalog entry for the current
                 journal entry. This will look up an entry in the
                 message catalog by using the
@@ -37,7 +37,7 @@
                 open journal context is necessary for this), and no
                 field substitution is performed.</p><p>For more information about the journal message
                 catalog please refer to the <a class="ulink" href="http://www.freedesktop.org/wiki/Software/systemd/catalog" target="_top">Journal
-                Message Catalogs</a> documentation page.</p></div><div class="refsect1"><a name="idm214172781216"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p><code class="function">sd_journal_get_catalog()</code>
+                Message Catalogs</a> documentation page.</p></div><div class="refsect1"><a name="idm214178119184"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p><code class="function">sd_journal_get_catalog()</code>
                 and
                 <code class="function">sd_journal_get_catalog_for_message_id()</code>
                 return 0 on success or a negative errno-style error
                 -ENOENT is returned.</p><p>On successful return, <em class="parameter"><code>ret</code></em>
                 points to a new string, which must be freed with
                 <a href="free.html"><span class="citerefentry"><span class="refentrytitle">free</span>(3)</span></a>.
-                </p></div><div class="refsect1"><a name="idm214172972304"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p>The <code class="function">sd_journal_get_catalog()</code> and
+                </p></div><div class="refsect1"><a name="idm214178315952"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p>The <code class="function">sd_journal_get_catalog()</code> and
                 <code class="function">sd_journal_get_catalog_for_message_id()</code>
                 interfaces are available as a shared library, which can
                 be compiled and linked to with the
                 <code class="constant">libsystemd</code> <a href="pkg-config.html"><span class="citerefentry"><span class="refentrytitle">pkg-config</span>(1)</span></a>
-                file.</p></div><div class="refsect1"><a name="idm214172968160"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+                file.</p></div><div class="refsect1"><a name="idm214178311808"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
                         <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
                         <a href="systemd.journal-fields.html"><span class="citerefentry"><span class="refentrytitle">systemd.journal-fields</span>(7)</span></a>,
                         <a href="sd-journal.html"><span class="citerefentry"><span class="refentrytitle">sd-journal</span>(3)</span></a>,
index 7f3b665ab0c25920ec962d0f415f58fa14b2ade6..8b9d169a45c7e0e1f55c142ff1ad1cf411aaaf78 100644 (file)
@@ -1,5 +1,5 @@
 '\" t
-.TH "SD_JOURNAL_GET_CURSOR" "3" "" "systemd 214" "sd_journal_get_cursor"
+.TH "SD_JOURNAL_GET_CURSOR" "3" "" "systemd 215" "sd_journal_get_cursor"
 .\" -----------------------------------------------------------------
 .\" * Define some portability stuff
 .\" -----------------------------------------------------------------
index 8cf96835e47bea5298dd1920e9d327b63d3fd6e7..c1bcbb4d211530eff0fe4d4c9f16fb86dfc552a2 100644 (file)
@@ -19,7 +19,7 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="sd_journal_get_cursor"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_journal_get_cursor, sd_journal_test_cursor — Get cursor string for or test cursor string against the current journal entry</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-journal.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_get_cursor</b>(</code></td><td>sd_journal *<var class="pdparam">j</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">cursor</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_test_cursor</b>(</code></td><td>sd_journal *<var class="pdparam">j</var>, </td></tr><tr><td> </td><td>const char *<var class="pdparam">cursor</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214192150240"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_journal_get_cursor()</code>
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="sd_journal_get_cursor"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_journal_get_cursor, sd_journal_test_cursor — Get cursor string for or test cursor string against the current journal entry</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-journal.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_get_cursor</b>(</code></td><td>sd_journal *<var class="pdparam">j</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">cursor</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_test_cursor</b>(</code></td><td>sd_journal *<var class="pdparam">j</var>, </td></tr><tr><td> </td><td>const char *<var class="pdparam">cursor</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214172116480"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_journal_get_cursor()</code>
                 returns a cursor string for the current journal
                 entry. A cursor is a serialization of the current
                 journal position formatted as text. The string only
                 <a href="sd_journal_seek_cursor.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_seek_cursor</span>(3)</span></a>
                 whether the entry being sought to was actually found
                 in the journal or the next closest entry was used
-                instead.</p></div><div class="refsect1"><a name="idm214192215984"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p><code class="function">sd_journal_get_cursor()</code>
+                instead.</p></div><div class="refsect1"><a name="idm214172307584"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p><code class="function">sd_journal_get_cursor()</code>
                 returns 0 on success or a negative errno-style error
                 code. <code class="function">sd_journal_test_cursor()</code>
                 returns positive if the current entry matches the
                 specified cursor, 0 if it does not match the specified
                 cursor or a negative errno-style error code on
-                failure.</p></div><div class="refsect1"><a name="idm214192213184"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p>The <code class="function">sd_journal_get_cursor()</code>
+                failure.</p></div><div class="refsect1"><a name="idm214172304784"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p>The <code class="function">sd_journal_get_cursor()</code>
                 and <code class="function">sd_journal_test_cursor()</code>
                 interfaces are available as a shared library, which can
                 be compiled and linked to with the
                 <code class="constant">libsystemd</code> <a href="pkg-config.html"><span class="citerefentry"><span class="refentrytitle">pkg-config</span>(1)</span></a>
-                file.</p></div><div class="refsect1"><a name="idm214192209056"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+                file.</p></div><div class="refsect1"><a name="idm214172300656"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
                         <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
                         <a href="sd-journal.html"><span class="citerefentry"><span class="refentrytitle">sd-journal</span>(3)</span></a>,
                         <a href="sd_journal_open.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_open</span>(3)</span></a>,
index 57e50691aa70d1530dd8562f6df650f964551d97..102524b106756785393895a63c7fb2a40593b3ad 100644 (file)
@@ -19,7 +19,7 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="sd_journal_get_cutoff_realtime_usec"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_journal_get_cutoff_realtime_usec, sd_journal_get_cutoff_monotonic_usec — Read cut-off timestamps from the current journal entry</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-journal.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_get_cutoff_realtime_usec</b>(</code></td><td>sd_journal *<var class="pdparam">j</var>, </td></tr><tr><td> </td><td>uint64_t *<var class="pdparam">from</var>, </td></tr><tr><td> </td><td>uint64_t *<var class="pdparam">to</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_get_cutoff_monotonic_usec</b>(</code></td><td>sd_journal *<var class="pdparam">j</var>, </td></tr><tr><td> </td><td>sd_id128_t <var class="pdparam">boot_id</var>, </td></tr><tr><td> </td><td>uint64_t *<var class="pdparam">from</var>, </td></tr><tr><td> </td><td>uint64_t *<var class="pdparam">to</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214191890912"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_journal_get_cutoff_realtime_usec()</code>
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="sd_journal_get_cutoff_realtime_usec"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_journal_get_cutoff_realtime_usec, sd_journal_get_cutoff_monotonic_usec — Read cut-off timestamps from the current journal entry</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-journal.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_get_cutoff_realtime_usec</b>(</code></td><td>sd_journal *<var class="pdparam">j</var>, </td></tr><tr><td> </td><td>uint64_t *<var class="pdparam">from</var>, </td></tr><tr><td> </td><td>uint64_t *<var class="pdparam">to</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_get_cutoff_monotonic_usec</b>(</code></td><td>sd_journal *<var class="pdparam">j</var>, </td></tr><tr><td> </td><td>sd_id128_t <var class="pdparam">boot_id</var>, </td></tr><tr><td> </td><td>uint64_t *<var class="pdparam">from</var>, </td></tr><tr><td> </td><td>uint64_t *<var class="pdparam">to</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214196451792"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_journal_get_cutoff_realtime_usec()</code>
                 gets the realtime (wallclock) timestamps of the first
                 and last entries accessible in the journal.  It takes
                 three arguments: the journal context object and two
                 timestamps for the boot identified by the passed boot
                 ID. Either one of the two timestamp arguments may be
                 passed as <code class="constant">NULL</code> in case the
-                timestamp is not needed, but not both.</p></div><div class="refsect1"><a name="idm214192080816"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p><code class="function">sd_journal_get_cutoff_realtime_usec()</code>
+                timestamp is not needed, but not both.</p></div><div class="refsect1"><a name="idm214196646256"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p><code class="function">sd_journal_get_cutoff_realtime_usec()</code>
                 and
                 <code class="function">sd_journal_get_cutoff_monotonic_usec()</code>
                 return 1 on success, 0 if not suitable entries are in
-                the journal or a negative errno-style error code.</p></div><div class="refsect1"><a name="idm214192078144"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p>The
+                the journal or a negative errno-style error code.</p></div><div class="refsect1"><a name="idm214196643584"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p>The
                 <code class="function">sd_journal_get_cutoff_realtime_usec()</code>
                 and
                 <code class="function">sd_journal_get_cutoff_monotonic_usec()</code>
                 interfaces are available as a shared library, which can
                 be compiled and linked to with the
                 <code class="constant">libsystemd</code> <a href="pkg-config.html"><span class="citerefentry"><span class="refentrytitle">pkg-config</span>(1)</span></a>
-                file.</p></div><div class="refsect1"><a name="idm214192073984"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+                file.</p></div><div class="refsect1"><a name="idm214196639424"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
                         <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
                         <a href="sd-journal.html"><span class="citerefentry"><span class="refentrytitle">sd-journal</span>(3)</span></a>,
                         <a href="sd_journal_open.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_open</span>(3)</span></a>,
index f089a91071cbf7e14a9fd7fc38f7239aefa0624d..da5c40d7106d11e0a26f7dd3f1ed2a3d297c3f29 100644 (file)
@@ -1,5 +1,5 @@
 '\" t
-.TH "SD_JOURNAL_GET_CUTOFF_REALTIME_USEC" "3" "" "systemd 214" "sd_journal_get_cutoff_realtime_usec"
+.TH "SD_JOURNAL_GET_CUTOFF_REALTIME_USEC" "3" "" "systemd 215" "sd_journal_get_cutoff_realtime_usec"
 .\" -----------------------------------------------------------------
 .\" * Define some portability stuff
 .\" -----------------------------------------------------------------
index 57e50691aa70d1530dd8562f6df650f964551d97..102524b106756785393895a63c7fb2a40593b3ad 100644 (file)
@@ -19,7 +19,7 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="sd_journal_get_cutoff_realtime_usec"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_journal_get_cutoff_realtime_usec, sd_journal_get_cutoff_monotonic_usec — Read cut-off timestamps from the current journal entry</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-journal.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_get_cutoff_realtime_usec</b>(</code></td><td>sd_journal *<var class="pdparam">j</var>, </td></tr><tr><td> </td><td>uint64_t *<var class="pdparam">from</var>, </td></tr><tr><td> </td><td>uint64_t *<var class="pdparam">to</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_get_cutoff_monotonic_usec</b>(</code></td><td>sd_journal *<var class="pdparam">j</var>, </td></tr><tr><td> </td><td>sd_id128_t <var class="pdparam">boot_id</var>, </td></tr><tr><td> </td><td>uint64_t *<var class="pdparam">from</var>, </td></tr><tr><td> </td><td>uint64_t *<var class="pdparam">to</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214191890912"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_journal_get_cutoff_realtime_usec()</code>
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="sd_journal_get_cutoff_realtime_usec"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_journal_get_cutoff_realtime_usec, sd_journal_get_cutoff_monotonic_usec — Read cut-off timestamps from the current journal entry</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-journal.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_get_cutoff_realtime_usec</b>(</code></td><td>sd_journal *<var class="pdparam">j</var>, </td></tr><tr><td> </td><td>uint64_t *<var class="pdparam">from</var>, </td></tr><tr><td> </td><td>uint64_t *<var class="pdparam">to</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_get_cutoff_monotonic_usec</b>(</code></td><td>sd_journal *<var class="pdparam">j</var>, </td></tr><tr><td> </td><td>sd_id128_t <var class="pdparam">boot_id</var>, </td></tr><tr><td> </td><td>uint64_t *<var class="pdparam">from</var>, </td></tr><tr><td> </td><td>uint64_t *<var class="pdparam">to</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214196451792"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_journal_get_cutoff_realtime_usec()</code>
                 gets the realtime (wallclock) timestamps of the first
                 and last entries accessible in the journal.  It takes
                 three arguments: the journal context object and two
                 timestamps for the boot identified by the passed boot
                 ID. Either one of the two timestamp arguments may be
                 passed as <code class="constant">NULL</code> in case the
-                timestamp is not needed, but not both.</p></div><div class="refsect1"><a name="idm214192080816"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p><code class="function">sd_journal_get_cutoff_realtime_usec()</code>
+                timestamp is not needed, but not both.</p></div><div class="refsect1"><a name="idm214196646256"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p><code class="function">sd_journal_get_cutoff_realtime_usec()</code>
                 and
                 <code class="function">sd_journal_get_cutoff_monotonic_usec()</code>
                 return 1 on success, 0 if not suitable entries are in
-                the journal or a negative errno-style error code.</p></div><div class="refsect1"><a name="idm214192078144"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p>The
+                the journal or a negative errno-style error code.</p></div><div class="refsect1"><a name="idm214196643584"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p>The
                 <code class="function">sd_journal_get_cutoff_realtime_usec()</code>
                 and
                 <code class="function">sd_journal_get_cutoff_monotonic_usec()</code>
                 interfaces are available as a shared library, which can
                 be compiled and linked to with the
                 <code class="constant">libsystemd</code> <a href="pkg-config.html"><span class="citerefentry"><span class="refentrytitle">pkg-config</span>(1)</span></a>
-                file.</p></div><div class="refsect1"><a name="idm214192073984"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+                file.</p></div><div class="refsect1"><a name="idm214196639424"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
                         <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
                         <a href="sd-journal.html"><span class="citerefentry"><span class="refentrytitle">sd-journal</span>(3)</span></a>,
                         <a href="sd_journal_open.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_open</span>(3)</span></a>,
index 654ca767b6cb34e2225caa61358a131f6a21aa58..d5e48eced383fccf67301f989012b0d4bddede23 100644 (file)
@@ -1,5 +1,5 @@
 '\" t
-.TH "SD_JOURNAL_GET_DATA" "3" "" "systemd 214" "sd_journal_get_data"
+.TH "SD_JOURNAL_GET_DATA" "3" "" "systemd 215" "sd_journal_get_data"
 .\" -----------------------------------------------------------------
 .\" * Define some portability stuff
 .\" -----------------------------------------------------------------
@@ -125,7 +125,7 @@ macro to iterate through all fields of the current journal entry:
 \&.\&.\&.
 int print_fields(sd_journal *j) {
         const void *data;
-        size_t l;
+        size_t length;
         SD_JOURNAL_FOREACH_DATA(j, data, length)
                 printf("%\&.*s\en", (int) length, data);
 }
index 55dc8666a2060de63a1de6ebbba90c0e0f31df5d..5eb35328b8224011850385b38c6d4580476e211f 100644 (file)
@@ -19,7 +19,7 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="sd_journal_get_data"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_journal_get_data, sd_journal_enumerate_data, sd_journal_restart_data, SD_JOURNAL_FOREACH_DATA, sd_journal_set_data_threshold, sd_journal_get_data_threshold — Read data fields from the current journal entry</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-journal.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_get_data</b>(</code></td><td>sd_journal *<var class="pdparam">j</var>, </td></tr><tr><td> </td><td>const char *<var class="pdparam">field</var>, </td></tr><tr><td> </td><td>const void **<var class="pdparam">data</var>, </td></tr><tr><td> </td><td>size_t *<var class="pdparam">length</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_enumerate_data</b>(</code></td><td>sd_journal *<var class="pdparam">j</var>, </td></tr><tr><td> </td><td>const void **<var class="pdparam">data</var>, </td></tr><tr><td> </td><td>size_t *<var class="pdparam">length</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">void <b class="fsfunc">sd_journal_restart_data</b>(</code></td><td>sd_journal *<var class="pdparam">j</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef"><b class="fsfunc">SD_JOURNAL_FOREACH_DATA</b>(</code></td><td>sd_journal *<var class="pdparam">j</var>, </td></tr><tr><td> </td><td>const void *<var class="pdparam">data</var>, </td></tr><tr><td> </td><td>size_t <var class="pdparam">length</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_set_data_threshold</b>(</code></td><td>sd_journal *<var class="pdparam">j</var>, </td></tr><tr><td> </td><td>size_t <var class="pdparam">sz</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_get_data_threshold</b>(</code></td><td>sd_journal *<var class="pdparam">j</var>, </td></tr><tr><td> </td><td>size_t *<var class="pdparam">sz</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214187428608"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_journal_get_data()</code> gets
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="sd_journal_get_data"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_journal_get_data, sd_journal_enumerate_data, sd_journal_restart_data, SD_JOURNAL_FOREACH_DATA, sd_journal_set_data_threshold, sd_journal_get_data_threshold — Read data fields from the current journal entry</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-journal.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_get_data</b>(</code></td><td>sd_journal *<var class="pdparam">j</var>, </td></tr><tr><td> </td><td>const char *<var class="pdparam">field</var>, </td></tr><tr><td> </td><td>const void **<var class="pdparam">data</var>, </td></tr><tr><td> </td><td>size_t *<var class="pdparam">length</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_enumerate_data</b>(</code></td><td>sd_journal *<var class="pdparam">j</var>, </td></tr><tr><td> </td><td>const void **<var class="pdparam">data</var>, </td></tr><tr><td> </td><td>size_t *<var class="pdparam">length</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">void <b class="fsfunc">sd_journal_restart_data</b>(</code></td><td>sd_journal *<var class="pdparam">j</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef"><b class="fsfunc">SD_JOURNAL_FOREACH_DATA</b>(</code></td><td>sd_journal *<var class="pdparam">j</var>, </td></tr><tr><td> </td><td>const void *<var class="pdparam">data</var>, </td></tr><tr><td> </td><td>size_t <var class="pdparam">length</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_set_data_threshold</b>(</code></td><td>sd_journal *<var class="pdparam">j</var>, </td></tr><tr><td> </td><td>size_t <var class="pdparam">sz</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_get_data_threshold</b>(</code></td><td>sd_journal *<var class="pdparam">j</var>, </td></tr><tr><td> </td><td>size_t *<var class="pdparam">sz</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214182872080"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_journal_get_data()</code> gets
                 the data object associated with a specific field from
                 the current journal entry. It takes four arguments:
                 the journal context object, a string with the field
@@ -77,7 +77,7 @@
                 having to decompress large compressed data objects in
                 full.</p><p><code class="function">sd_journal_get_data_threshold()</code>
                 returns the currently configured data field size
-                threshold.</p></div><div class="refsect1"><a name="idm214187402928"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p><code class="function">sd_journal_get_data()</code>
+                threshold.</p></div><div class="refsect1"><a name="idm214182845904"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p><code class="function">sd_journal_get_data()</code>
                 returns 0 on success or a negative errno-style error
                 code. If the current entry does not include the
                 specified field, -ENOENT is returned. If
@@ -92,7 +92,7 @@
                 nothing. <code class="function">sd_journal_set_data_threshold()</code>
                 and <code class="function">sd_journal_get_threshold()</code>
                 return 0 on success or a negative errno-style error
-                code.</p></div><div class="refsect1"><a name="idm214187396880"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p>The <code class="function">sd_journal_get_data()</code>,
+                code.</p></div><div class="refsect1"><a name="idm214182839856"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p>The <code class="function">sd_journal_get_data()</code>,
                 <code class="function">sd_journal_enumerate_data()</code>,
                 <code class="function">sd_journal_restart_data()</code>,
                 <code class="function">sd_journal_set_data_threshold()</code>
                 interfaces are available as a shared library, which can
                 be compiled and linked to with the
                 <code class="constant">libsystemd</code> <a href="pkg-config.html"><span class="citerefentry"><span class="refentrytitle">pkg-config</span>(1)</span></a>
-                file.</p></div><div class="refsect1"><a name="idm214187390528"></a><h2 id="Examples">Examples<a class="headerlink" title="Permalink to this headline" href="#Examples">¶</a></h2><p>See
+                file.</p></div><div class="refsect1"><a name="idm214177917392"></a><h2 id="Examples">Examples<a class="headerlink" title="Permalink to this headline" href="#Examples">¶</a></h2><p>See
                 <a href="sd_journal_next.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_next</span>(3)</span></a>
                 for a complete example how to use
                 <code class="function">sd_journal_get_data()</code>.</p><p>Use the
                 entry:</p><pre class="programlisting">...
 int print_fields(sd_journal *j) {
         const void *data;
-        size_t l;
+        size_t length;
         SD_JOURNAL_FOREACH_DATA(j, data, length)
                 printf("%.*s\n", (int) length, data);
 }
-...</pre></div><div class="refsect1"><a name="idm214182417888"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+...</pre></div><div class="refsect1"><a name="idm214177912896"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
                         <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
                         <a href="systemd.journal-fields.html"><span class="citerefentry"><span class="refentrytitle">systemd.journal-fields</span>(7)</span></a>,
                         <a href="sd-journal.html"><span class="citerefentry"><span class="refentrytitle">sd-journal</span>(3)</span></a>,
index 343b680bcb0411aadaa11a52d7628d157c0edceb..12229390472374ce81478c69f48fce456f2daa40 100644 (file)
                 <programlisting>...
 int print_fields(sd_journal *j) {
         const void *data;
-        size_t l;
+        size_t length;
         SD_JOURNAL_FOREACH_DATA(j, data, length)
                 printf("%.*s\n", (int) length, data);
 }
index 55dc8666a2060de63a1de6ebbba90c0e0f31df5d..5eb35328b8224011850385b38c6d4580476e211f 100644 (file)
@@ -19,7 +19,7 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="sd_journal_get_data"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_journal_get_data, sd_journal_enumerate_data, sd_journal_restart_data, SD_JOURNAL_FOREACH_DATA, sd_journal_set_data_threshold, sd_journal_get_data_threshold — Read data fields from the current journal entry</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-journal.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_get_data</b>(</code></td><td>sd_journal *<var class="pdparam">j</var>, </td></tr><tr><td> </td><td>const char *<var class="pdparam">field</var>, </td></tr><tr><td> </td><td>const void **<var class="pdparam">data</var>, </td></tr><tr><td> </td><td>size_t *<var class="pdparam">length</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_enumerate_data</b>(</code></td><td>sd_journal *<var class="pdparam">j</var>, </td></tr><tr><td> </td><td>const void **<var class="pdparam">data</var>, </td></tr><tr><td> </td><td>size_t *<var class="pdparam">length</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">void <b class="fsfunc">sd_journal_restart_data</b>(</code></td><td>sd_journal *<var class="pdparam">j</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef"><b class="fsfunc">SD_JOURNAL_FOREACH_DATA</b>(</code></td><td>sd_journal *<var class="pdparam">j</var>, </td></tr><tr><td> </td><td>const void *<var class="pdparam">data</var>, </td></tr><tr><td> </td><td>size_t <var class="pdparam">length</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_set_data_threshold</b>(</code></td><td>sd_journal *<var class="pdparam">j</var>, </td></tr><tr><td> </td><td>size_t <var class="pdparam">sz</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_get_data_threshold</b>(</code></td><td>sd_journal *<var class="pdparam">j</var>, </td></tr><tr><td> </td><td>size_t *<var class="pdparam">sz</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214187428608"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_journal_get_data()</code> gets
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="sd_journal_get_data"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_journal_get_data, sd_journal_enumerate_data, sd_journal_restart_data, SD_JOURNAL_FOREACH_DATA, sd_journal_set_data_threshold, sd_journal_get_data_threshold — Read data fields from the current journal entry</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-journal.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_get_data</b>(</code></td><td>sd_journal *<var class="pdparam">j</var>, </td></tr><tr><td> </td><td>const char *<var class="pdparam">field</var>, </td></tr><tr><td> </td><td>const void **<var class="pdparam">data</var>, </td></tr><tr><td> </td><td>size_t *<var class="pdparam">length</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_enumerate_data</b>(</code></td><td>sd_journal *<var class="pdparam">j</var>, </td></tr><tr><td> </td><td>const void **<var class="pdparam">data</var>, </td></tr><tr><td> </td><td>size_t *<var class="pdparam">length</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">void <b class="fsfunc">sd_journal_restart_data</b>(</code></td><td>sd_journal *<var class="pdparam">j</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef"><b class="fsfunc">SD_JOURNAL_FOREACH_DATA</b>(</code></td><td>sd_journal *<var class="pdparam">j</var>, </td></tr><tr><td> </td><td>const void *<var class="pdparam">data</var>, </td></tr><tr><td> </td><td>size_t <var class="pdparam">length</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_set_data_threshold</b>(</code></td><td>sd_journal *<var class="pdparam">j</var>, </td></tr><tr><td> </td><td>size_t <var class="pdparam">sz</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_get_data_threshold</b>(</code></td><td>sd_journal *<var class="pdparam">j</var>, </td></tr><tr><td> </td><td>size_t *<var class="pdparam">sz</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214182872080"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_journal_get_data()</code> gets
                 the data object associated with a specific field from
                 the current journal entry. It takes four arguments:
                 the journal context object, a string with the field
@@ -77,7 +77,7 @@
                 having to decompress large compressed data objects in
                 full.</p><p><code class="function">sd_journal_get_data_threshold()</code>
                 returns the currently configured data field size
-                threshold.</p></div><div class="refsect1"><a name="idm214187402928"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p><code class="function">sd_journal_get_data()</code>
+                threshold.</p></div><div class="refsect1"><a name="idm214182845904"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p><code class="function">sd_journal_get_data()</code>
                 returns 0 on success or a negative errno-style error
                 code. If the current entry does not include the
                 specified field, -ENOENT is returned. If
@@ -92,7 +92,7 @@
                 nothing. <code class="function">sd_journal_set_data_threshold()</code>
                 and <code class="function">sd_journal_get_threshold()</code>
                 return 0 on success or a negative errno-style error
-                code.</p></div><div class="refsect1"><a name="idm214187396880"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p>The <code class="function">sd_journal_get_data()</code>,
+                code.</p></div><div class="refsect1"><a name="idm214182839856"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p>The <code class="function">sd_journal_get_data()</code>,
                 <code class="function">sd_journal_enumerate_data()</code>,
                 <code class="function">sd_journal_restart_data()</code>,
                 <code class="function">sd_journal_set_data_threshold()</code>
                 interfaces are available as a shared library, which can
                 be compiled and linked to with the
                 <code class="constant">libsystemd</code> <a href="pkg-config.html"><span class="citerefentry"><span class="refentrytitle">pkg-config</span>(1)</span></a>
-                file.</p></div><div class="refsect1"><a name="idm214187390528"></a><h2 id="Examples">Examples<a class="headerlink" title="Permalink to this headline" href="#Examples">¶</a></h2><p>See
+                file.</p></div><div class="refsect1"><a name="idm214177917392"></a><h2 id="Examples">Examples<a class="headerlink" title="Permalink to this headline" href="#Examples">¶</a></h2><p>See
                 <a href="sd_journal_next.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_next</span>(3)</span></a>
                 for a complete example how to use
                 <code class="function">sd_journal_get_data()</code>.</p><p>Use the
                 entry:</p><pre class="programlisting">...
 int print_fields(sd_journal *j) {
         const void *data;
-        size_t l;
+        size_t length;
         SD_JOURNAL_FOREACH_DATA(j, data, length)
                 printf("%.*s\n", (int) length, data);
 }
-...</pre></div><div class="refsect1"><a name="idm214182417888"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+...</pre></div><div class="refsect1"><a name="idm214177912896"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
                         <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
                         <a href="systemd.journal-fields.html"><span class="citerefentry"><span class="refentrytitle">systemd.journal-fields</span>(7)</span></a>,
                         <a href="sd-journal.html"><span class="citerefentry"><span class="refentrytitle">sd-journal</span>(3)</span></a>,
index ef2d13e7f8fb202dfb797bfa1ca8a2f41d233c98..a5d9515e05c50feb63dc590efd804e3d99c93f46 100644 (file)
@@ -19,8 +19,8 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="sd_journal_get_fd"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_journal_get_fd, sd_journal_get_events, sd_journal_get_timeout, sd_journal_process, sd_journal_wait, sd_journal_reliable_fd, SD_JOURNAL_NOP, SD_JOURNAL_APPEND, SD_JOURNAL_INVALIDATE — Journal change notification
-                interface</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-journal.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_get_fd</b>(</code></td><td>sd_journal *<var class="pdparam">j</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_get_events</b>(</code></td><td>sd_journal *<var class="pdparam">j</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_get_timeout</b>(</code></td><td>sd_journal *<var class="pdparam">j</var>, </td></tr><tr><td> </td><td>uint64_t *<var class="pdparam">timeout_usec</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_process</b>(</code></td><td>sd_journal *<var class="pdparam">j</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_wait</b>(</code></td><td>sd_journal *<var class="pdparam">j</var>, </td></tr><tr><td> </td><td>uint64_t <var class="pdparam">timeout_usec</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_reliable_fd</b>(</code></td><td>sd_journal *<var class="pdparam">j</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214189551600"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_journal_get_fd()</code> returns
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="sd_journal_get_fd"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_journal_get_fd, sd_journal_get_events, sd_journal_get_timeout, sd_journal_process, sd_journal_wait, sd_journal_reliable_fd, SD_JOURNAL_NOP, SD_JOURNAL_APPEND, SD_JOURNAL_INVALIDATE — Journal change notification
+                interface</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-journal.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_get_fd</b>(</code></td><td>sd_journal *<var class="pdparam">j</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_get_events</b>(</code></td><td>sd_journal *<var class="pdparam">j</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_get_timeout</b>(</code></td><td>sd_journal *<var class="pdparam">j</var>, </td></tr><tr><td> </td><td>uint64_t *<var class="pdparam">timeout_usec</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_process</b>(</code></td><td>sd_journal *<var class="pdparam">j</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_wait</b>(</code></td><td>sd_journal *<var class="pdparam">j</var>, </td></tr><tr><td> </td><td>uint64_t <var class="pdparam">timeout_usec</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_reliable_fd</b>(</code></td><td>sd_journal *<var class="pdparam">j</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214185830672"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_journal_get_fd()</code> returns
                 a file descriptor that may be asynchronously polled in
                 an external event loop and is signaled as soon as the
                 journal changes, because new entries or files were
@@ -112,7 +112,7 @@ else {
                 no need to invoke this function directly as
                 <code class="function">sd_journal_get_timeout()</code> on these
                 file systems will ask for timeouts explicitly
-                anyway.</p></div><div class="refsect1"><a name="idm214189511696"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p><code class="function">sd_journal_get_fd()</code> returns
+                anyway.</p></div><div class="refsect1"><a name="idm214185790416"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p><code class="function">sd_journal_get_fd()</code> returns
                 a valid file descriptor on success or a negative
                 errno-style error code.</p><p><code class="function">sd_journal_get_events()</code>
                 returns a combination of <code class="constant">POLLIN</code>,
@@ -138,7 +138,7 @@ else {
                 probably refresh their entire display, while in the
                 case of <code class="constant">SD_JOURNAL_APPEND</code>, it is
                 sufficient to simply continue reading at the previous
-                end of the journal.</p></div><div class="refsect1"><a name="idm214184533264"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p>The <code class="function">sd_journal_get_fd()</code>,
+                end of the journal.</p></div><div class="refsect1"><a name="idm214180864000"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p>The <code class="function">sd_journal_get_fd()</code>,
                 <code class="function">sd_journal_get_events()</code>,
                 <code class="function">sd_journal_reliable_fd()</code>,
                 <code class="function">sd_journal_process()</code> and
@@ -146,7 +146,7 @@ else {
                 available as a shared library, which can be compiled and
                 linked to with the
                 <code class="constant">libsystemd</code> <a href="pkg-config.html"><span class="citerefentry"><span class="refentrytitle">pkg-config</span>(1)</span></a>
-                file.</p></div><div class="refsect1"><a name="idm214184527680"></a><h2 id="Examples">Examples<a class="headerlink" title="Permalink to this headline" href="#Examples">¶</a></h2><p>Iterating through the journal, in a live view tracking all changes:</p><pre class="programlisting">#include &lt;stdio.h&gt;
+                file.</p></div><div class="refsect1"><a name="idm214180858416"></a><h2 id="Examples">Examples<a class="headerlink" title="Permalink to this headline" href="#Examples">¶</a></h2><p>Iterating through the journal, in a live view tracking all changes:</p><pre class="programlisting">#include &lt;stdio.h&gt;
 #include &lt;string.h&gt;
 #include &lt;systemd/sd-journal.h&gt;
 
@@ -208,7 +208,7 @@ int wait_for_changes(sd_journal *j) {
         pollfd.events = sd_journal_get_events(j);
         poll(&amp;pollfd, 1, msec);
         return sd_journal_process(j);
-}</pre></div><div class="refsect1"><a name="idm214184521056"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+}</pre></div><div class="refsect1"><a name="idm214180851792"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
                         <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
                         <a href="sd-journal.html"><span class="citerefentry"><span class="refentrytitle">sd-journal</span>(3)</span></a>,
                         <a href="sd_journal_open.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_open</span>(3)</span></a>,
index e394f070503e895a94e9c5a8a603dfb57c2eb151..77f881cdd0e938c580772106bbed6a37b1fbbca2 100644 (file)
@@ -1,5 +1,5 @@
 '\" t
-.TH "SD_JOURNAL_GET_FD" "3" "" "systemd 214" "sd_journal_get_fd"
+.TH "SD_JOURNAL_GET_FD" "3" "" "systemd 215" "sd_journal_get_fd"
 .\" -----------------------------------------------------------------
 .\" * Define some portability stuff
 .\" -----------------------------------------------------------------
index ef2d13e7f8fb202dfb797bfa1ca8a2f41d233c98..a5d9515e05c50feb63dc590efd804e3d99c93f46 100644 (file)
@@ -19,8 +19,8 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="sd_journal_get_fd"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_journal_get_fd, sd_journal_get_events, sd_journal_get_timeout, sd_journal_process, sd_journal_wait, sd_journal_reliable_fd, SD_JOURNAL_NOP, SD_JOURNAL_APPEND, SD_JOURNAL_INVALIDATE — Journal change notification
-                interface</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-journal.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_get_fd</b>(</code></td><td>sd_journal *<var class="pdparam">j</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_get_events</b>(</code></td><td>sd_journal *<var class="pdparam">j</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_get_timeout</b>(</code></td><td>sd_journal *<var class="pdparam">j</var>, </td></tr><tr><td> </td><td>uint64_t *<var class="pdparam">timeout_usec</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_process</b>(</code></td><td>sd_journal *<var class="pdparam">j</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_wait</b>(</code></td><td>sd_journal *<var class="pdparam">j</var>, </td></tr><tr><td> </td><td>uint64_t <var class="pdparam">timeout_usec</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_reliable_fd</b>(</code></td><td>sd_journal *<var class="pdparam">j</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214189551600"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_journal_get_fd()</code> returns
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="sd_journal_get_fd"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_journal_get_fd, sd_journal_get_events, sd_journal_get_timeout, sd_journal_process, sd_journal_wait, sd_journal_reliable_fd, SD_JOURNAL_NOP, SD_JOURNAL_APPEND, SD_JOURNAL_INVALIDATE — Journal change notification
+                interface</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-journal.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_get_fd</b>(</code></td><td>sd_journal *<var class="pdparam">j</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_get_events</b>(</code></td><td>sd_journal *<var class="pdparam">j</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_get_timeout</b>(</code></td><td>sd_journal *<var class="pdparam">j</var>, </td></tr><tr><td> </td><td>uint64_t *<var class="pdparam">timeout_usec</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_process</b>(</code></td><td>sd_journal *<var class="pdparam">j</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_wait</b>(</code></td><td>sd_journal *<var class="pdparam">j</var>, </td></tr><tr><td> </td><td>uint64_t <var class="pdparam">timeout_usec</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_reliable_fd</b>(</code></td><td>sd_journal *<var class="pdparam">j</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214185830672"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_journal_get_fd()</code> returns
                 a file descriptor that may be asynchronously polled in
                 an external event loop and is signaled as soon as the
                 journal changes, because new entries or files were
@@ -112,7 +112,7 @@ else {
                 no need to invoke this function directly as
                 <code class="function">sd_journal_get_timeout()</code> on these
                 file systems will ask for timeouts explicitly
-                anyway.</p></div><div class="refsect1"><a name="idm214189511696"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p><code class="function">sd_journal_get_fd()</code> returns
+                anyway.</p></div><div class="refsect1"><a name="idm214185790416"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p><code class="function">sd_journal_get_fd()</code> returns
                 a valid file descriptor on success or a negative
                 errno-style error code.</p><p><code class="function">sd_journal_get_events()</code>
                 returns a combination of <code class="constant">POLLIN</code>,
@@ -138,7 +138,7 @@ else {
                 probably refresh their entire display, while in the
                 case of <code class="constant">SD_JOURNAL_APPEND</code>, it is
                 sufficient to simply continue reading at the previous
-                end of the journal.</p></div><div class="refsect1"><a name="idm214184533264"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p>The <code class="function">sd_journal_get_fd()</code>,
+                end of the journal.</p></div><div class="refsect1"><a name="idm214180864000"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p>The <code class="function">sd_journal_get_fd()</code>,
                 <code class="function">sd_journal_get_events()</code>,
                 <code class="function">sd_journal_reliable_fd()</code>,
                 <code class="function">sd_journal_process()</code> and
@@ -146,7 +146,7 @@ else {
                 available as a shared library, which can be compiled and
                 linked to with the
                 <code class="constant">libsystemd</code> <a href="pkg-config.html"><span class="citerefentry"><span class="refentrytitle">pkg-config</span>(1)</span></a>
-                file.</p></div><div class="refsect1"><a name="idm214184527680"></a><h2 id="Examples">Examples<a class="headerlink" title="Permalink to this headline" href="#Examples">¶</a></h2><p>Iterating through the journal, in a live view tracking all changes:</p><pre class="programlisting">#include &lt;stdio.h&gt;
+                file.</p></div><div class="refsect1"><a name="idm214180858416"></a><h2 id="Examples">Examples<a class="headerlink" title="Permalink to this headline" href="#Examples">¶</a></h2><p>Iterating through the journal, in a live view tracking all changes:</p><pre class="programlisting">#include &lt;stdio.h&gt;
 #include &lt;string.h&gt;
 #include &lt;systemd/sd-journal.h&gt;
 
@@ -208,7 +208,7 @@ int wait_for_changes(sd_journal *j) {
         pollfd.events = sd_journal_get_events(j);
         poll(&amp;pollfd, 1, msec);
         return sd_journal_process(j);
-}</pre></div><div class="refsect1"><a name="idm214184521056"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+}</pre></div><div class="refsect1"><a name="idm214180851792"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
                         <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
                         <a href="sd-journal.html"><span class="citerefentry"><span class="refentrytitle">sd-journal</span>(3)</span></a>,
                         <a href="sd_journal_open.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_open</span>(3)</span></a>,
index d4b71ee0410c916a1c958342c7d409f47c9df6c9..132d7e038c8102150265398752bb7dd1db8f7674 100644 (file)
@@ -19,7 +19,7 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="sd_journal_get_realtime_usec"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_journal_get_realtime_usec, sd_journal_get_monotonic_usec — Read timestamps from the current journal entry</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-journal.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_get_realtime_usec</b>(</code></td><td>sd_journal *<var class="pdparam">j</var>, </td></tr><tr><td> </td><td>uint64_t *<var class="pdparam">usec</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_get_monotonic_usec</b>(</code></td><td>sd_journal *<var class="pdparam">j</var>, </td></tr><tr><td> </td><td>uint64_t *<var class="pdparam">usec</var>, </td></tr><tr><td> </td><td>sd_id128_t *<var class="pdparam">boot_id</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214195659952"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_journal_get_realtime_usec()</code>
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="sd_journal_get_realtime_usec"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_journal_get_realtime_usec, sd_journal_get_monotonic_usec — Read timestamps from the current journal entry</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-journal.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_get_realtime_usec</b>(</code></td><td>sd_journal *<var class="pdparam">j</var>, </td></tr><tr><td> </td><td>uint64_t *<var class="pdparam">usec</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_get_monotonic_usec</b>(</code></td><td>sd_journal *<var class="pdparam">j</var>, </td></tr><tr><td> </td><td>uint64_t *<var class="pdparam">usec</var>, </td></tr><tr><td> </td><td>sd_id128_t *<var class="pdparam">boot_id</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214173749456"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_journal_get_realtime_usec()</code>
                 gets the realtime (wallclock) timestamp of the
                 current journal entry. It takes two arguments: the
                 journal context object and a pointer to a 64-bit
                 is not of the current system boot.</p><p>Note that these functions will not work before
                 <a href="sd_journal_next.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_next</span>(3)</span></a>
                 (or related call) has been called at least
-                once, in order to position the read pointer at a valid entry.</p></div><div class="refsect1"><a name="idm214199554448"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p><code class="function">sd_journal_get_realtime_usec()</code>
+                once, in order to position the read pointer at a valid entry.</p></div><div class="refsect1"><a name="idm214173943232"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p><code class="function">sd_journal_get_realtime_usec()</code>
                 and
                 <code class="function">sd_journal_get_monotonic_usec()</code>
                 returns 0 on success or a negative errno-style error
                 code. If the boot ID parameter was passed <code class="constant">NULL</code> and the
                 monotonic timestamp of the current journal entry is
-                not of the current system boot, -ESTALE is returned by <code class="function">sd_journal_get_monotonic_usec()</code>.</p></div><div class="refsect1"><a name="idm214199550544"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p>The
+                not of the current system boot, -ESTALE is returned by <code class="function">sd_journal_get_monotonic_usec()</code>.</p></div><div class="refsect1"><a name="idm214173939296"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p>The
                 <code class="function">sd_journal_get_realtime_usec()</code>
                 and
                 <code class="function">sd_journal_get_monotonic_usec()</code>
                 interfaces are available as a shared library, which can
                 be compiled and linked to with the
                 <code class="constant">libsystemd</code> <a href="pkg-config.html"><span class="citerefentry"><span class="refentrytitle">pkg-config</span>(1)</span></a>
-                file.</p></div><div class="refsect1"><a name="idm214199546384"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+                file.</p></div><div class="refsect1"><a name="idm214173935136"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
                         <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
                         <a href="sd-journal.html"><span class="citerefentry"><span class="refentrytitle">sd-journal</span>(3)</span></a>,
                         <a href="sd_journal_open.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_open</span>(3)</span></a>,
index 03a6c803b727f521c4619d23a9136d25ccd73c42..8feee846b21c10e46b44c34c063fdd1db36a12b2 100644 (file)
@@ -1,5 +1,5 @@
 '\" t
-.TH "SD_JOURNAL_GET_REALTIME_USEC" "3" "" "systemd 214" "sd_journal_get_realtime_usec"
+.TH "SD_JOURNAL_GET_REALTIME_USEC" "3" "" "systemd 215" "sd_journal_get_realtime_usec"
 .\" -----------------------------------------------------------------
 .\" * Define some portability stuff
 .\" -----------------------------------------------------------------
index d4b71ee0410c916a1c958342c7d409f47c9df6c9..132d7e038c8102150265398752bb7dd1db8f7674 100644 (file)
@@ -19,7 +19,7 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="sd_journal_get_realtime_usec"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_journal_get_realtime_usec, sd_journal_get_monotonic_usec — Read timestamps from the current journal entry</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-journal.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_get_realtime_usec</b>(</code></td><td>sd_journal *<var class="pdparam">j</var>, </td></tr><tr><td> </td><td>uint64_t *<var class="pdparam">usec</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_get_monotonic_usec</b>(</code></td><td>sd_journal *<var class="pdparam">j</var>, </td></tr><tr><td> </td><td>uint64_t *<var class="pdparam">usec</var>, </td></tr><tr><td> </td><td>sd_id128_t *<var class="pdparam">boot_id</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214195659952"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_journal_get_realtime_usec()</code>
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="sd_journal_get_realtime_usec"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_journal_get_realtime_usec, sd_journal_get_monotonic_usec — Read timestamps from the current journal entry</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-journal.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_get_realtime_usec</b>(</code></td><td>sd_journal *<var class="pdparam">j</var>, </td></tr><tr><td> </td><td>uint64_t *<var class="pdparam">usec</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_get_monotonic_usec</b>(</code></td><td>sd_journal *<var class="pdparam">j</var>, </td></tr><tr><td> </td><td>uint64_t *<var class="pdparam">usec</var>, </td></tr><tr><td> </td><td>sd_id128_t *<var class="pdparam">boot_id</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214173749456"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_journal_get_realtime_usec()</code>
                 gets the realtime (wallclock) timestamp of the
                 current journal entry. It takes two arguments: the
                 journal context object and a pointer to a 64-bit
                 is not of the current system boot.</p><p>Note that these functions will not work before
                 <a href="sd_journal_next.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_next</span>(3)</span></a>
                 (or related call) has been called at least
-                once, in order to position the read pointer at a valid entry.</p></div><div class="refsect1"><a name="idm214199554448"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p><code class="function">sd_journal_get_realtime_usec()</code>
+                once, in order to position the read pointer at a valid entry.</p></div><div class="refsect1"><a name="idm214173943232"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p><code class="function">sd_journal_get_realtime_usec()</code>
                 and
                 <code class="function">sd_journal_get_monotonic_usec()</code>
                 returns 0 on success or a negative errno-style error
                 code. If the boot ID parameter was passed <code class="constant">NULL</code> and the
                 monotonic timestamp of the current journal entry is
-                not of the current system boot, -ESTALE is returned by <code class="function">sd_journal_get_monotonic_usec()</code>.</p></div><div class="refsect1"><a name="idm214199550544"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p>The
+                not of the current system boot, -ESTALE is returned by <code class="function">sd_journal_get_monotonic_usec()</code>.</p></div><div class="refsect1"><a name="idm214173939296"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p>The
                 <code class="function">sd_journal_get_realtime_usec()</code>
                 and
                 <code class="function">sd_journal_get_monotonic_usec()</code>
                 interfaces are available as a shared library, which can
                 be compiled and linked to with the
                 <code class="constant">libsystemd</code> <a href="pkg-config.html"><span class="citerefentry"><span class="refentrytitle">pkg-config</span>(1)</span></a>
-                file.</p></div><div class="refsect1"><a name="idm214199546384"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+                file.</p></div><div class="refsect1"><a name="idm214173935136"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
                         <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
                         <a href="sd-journal.html"><span class="citerefentry"><span class="refentrytitle">sd-journal</span>(3)</span></a>,
                         <a href="sd_journal_open.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_open</span>(3)</span></a>,
index ef2d13e7f8fb202dfb797bfa1ca8a2f41d233c98..a5d9515e05c50feb63dc590efd804e3d99c93f46 100644 (file)
@@ -19,8 +19,8 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="sd_journal_get_fd"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_journal_get_fd, sd_journal_get_events, sd_journal_get_timeout, sd_journal_process, sd_journal_wait, sd_journal_reliable_fd, SD_JOURNAL_NOP, SD_JOURNAL_APPEND, SD_JOURNAL_INVALIDATE — Journal change notification
-                interface</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-journal.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_get_fd</b>(</code></td><td>sd_journal *<var class="pdparam">j</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_get_events</b>(</code></td><td>sd_journal *<var class="pdparam">j</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_get_timeout</b>(</code></td><td>sd_journal *<var class="pdparam">j</var>, </td></tr><tr><td> </td><td>uint64_t *<var class="pdparam">timeout_usec</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_process</b>(</code></td><td>sd_journal *<var class="pdparam">j</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_wait</b>(</code></td><td>sd_journal *<var class="pdparam">j</var>, </td></tr><tr><td> </td><td>uint64_t <var class="pdparam">timeout_usec</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_reliable_fd</b>(</code></td><td>sd_journal *<var class="pdparam">j</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214189551600"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_journal_get_fd()</code> returns
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="sd_journal_get_fd"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_journal_get_fd, sd_journal_get_events, sd_journal_get_timeout, sd_journal_process, sd_journal_wait, sd_journal_reliable_fd, SD_JOURNAL_NOP, SD_JOURNAL_APPEND, SD_JOURNAL_INVALIDATE — Journal change notification
+                interface</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-journal.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_get_fd</b>(</code></td><td>sd_journal *<var class="pdparam">j</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_get_events</b>(</code></td><td>sd_journal *<var class="pdparam">j</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_get_timeout</b>(</code></td><td>sd_journal *<var class="pdparam">j</var>, </td></tr><tr><td> </td><td>uint64_t *<var class="pdparam">timeout_usec</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_process</b>(</code></td><td>sd_journal *<var class="pdparam">j</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_wait</b>(</code></td><td>sd_journal *<var class="pdparam">j</var>, </td></tr><tr><td> </td><td>uint64_t <var class="pdparam">timeout_usec</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_reliable_fd</b>(</code></td><td>sd_journal *<var class="pdparam">j</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214185830672"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_journal_get_fd()</code> returns
                 a file descriptor that may be asynchronously polled in
                 an external event loop and is signaled as soon as the
                 journal changes, because new entries or files were
@@ -112,7 +112,7 @@ else {
                 no need to invoke this function directly as
                 <code class="function">sd_journal_get_timeout()</code> on these
                 file systems will ask for timeouts explicitly
-                anyway.</p></div><div class="refsect1"><a name="idm214189511696"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p><code class="function">sd_journal_get_fd()</code> returns
+                anyway.</p></div><div class="refsect1"><a name="idm214185790416"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p><code class="function">sd_journal_get_fd()</code> returns
                 a valid file descriptor on success or a negative
                 errno-style error code.</p><p><code class="function">sd_journal_get_events()</code>
                 returns a combination of <code class="constant">POLLIN</code>,
@@ -138,7 +138,7 @@ else {
                 probably refresh their entire display, while in the
                 case of <code class="constant">SD_JOURNAL_APPEND</code>, it is
                 sufficient to simply continue reading at the previous
-                end of the journal.</p></div><div class="refsect1"><a name="idm214184533264"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p>The <code class="function">sd_journal_get_fd()</code>,
+                end of the journal.</p></div><div class="refsect1"><a name="idm214180864000"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p>The <code class="function">sd_journal_get_fd()</code>,
                 <code class="function">sd_journal_get_events()</code>,
                 <code class="function">sd_journal_reliable_fd()</code>,
                 <code class="function">sd_journal_process()</code> and
@@ -146,7 +146,7 @@ else {
                 available as a shared library, which can be compiled and
                 linked to with the
                 <code class="constant">libsystemd</code> <a href="pkg-config.html"><span class="citerefentry"><span class="refentrytitle">pkg-config</span>(1)</span></a>
-                file.</p></div><div class="refsect1"><a name="idm214184527680"></a><h2 id="Examples">Examples<a class="headerlink" title="Permalink to this headline" href="#Examples">¶</a></h2><p>Iterating through the journal, in a live view tracking all changes:</p><pre class="programlisting">#include &lt;stdio.h&gt;
+                file.</p></div><div class="refsect1"><a name="idm214180858416"></a><h2 id="Examples">Examples<a class="headerlink" title="Permalink to this headline" href="#Examples">¶</a></h2><p>Iterating through the journal, in a live view tracking all changes:</p><pre class="programlisting">#include &lt;stdio.h&gt;
 #include &lt;string.h&gt;
 #include &lt;systemd/sd-journal.h&gt;
 
@@ -208,7 +208,7 @@ int wait_for_changes(sd_journal *j) {
         pollfd.events = sd_journal_get_events(j);
         poll(&amp;pollfd, 1, msec);
         return sd_journal_process(j);
-}</pre></div><div class="refsect1"><a name="idm214184521056"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+}</pre></div><div class="refsect1"><a name="idm214180851792"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
                         <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
                         <a href="sd-journal.html"><span class="citerefentry"><span class="refentrytitle">sd-journal</span>(3)</span></a>,
                         <a href="sd_journal_open.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_open</span>(3)</span></a>,
index 5e6e660dc1383ede68a0d1fbad346a6146498a14..67373a7a80c9c684e274547bfe7de0000ebbdeda 100644 (file)
@@ -1,5 +1,5 @@
 '\" t
-.TH "SD_JOURNAL_GET_USAGE" "3" "" "systemd 214" "sd_journal_get_usage"
+.TH "SD_JOURNAL_GET_USAGE" "3" "" "systemd 215" "sd_journal_get_usage"
 .\" -----------------------------------------------------------------
 .\" * Define some portability stuff
 .\" -----------------------------------------------------------------
index ca31bd2c95f316187573b7562ac36e78d77f1967..67d5d5edee2c388d6613eb86b75595b9e3dc143a 100644 (file)
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="sd_journal_get_usage"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_journal_get_usage — Journal disk usage</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-journal.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_get_usage</b>(</code></td><td>sd_journal *<var class="pdparam">j</var>, </td></tr><tr><td> </td><td>uint64_t *<var class="pdparam">bytes</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214192658160"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_journal_get_usage()</code>
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="sd_journal_get_usage"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_journal_get_usage — Journal disk usage</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-journal.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_get_usage</b>(</code></td><td>sd_journal *<var class="pdparam">j</var>, </td></tr><tr><td> </td><td>uint64_t *<var class="pdparam">bytes</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214179445872"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_journal_get_usage()</code>
                 determines the total disk space currently used by
                 journal files (in bytes). If
                 <code class="constant">SD_JOURNAL_LOCAL_ONLY</code> was passed
                 when opening the journal, this value will only reflect
                 the size of journal files of the local host, otherwise
-                of all hosts.</p></div><div class="refsect1"><a name="idm214192655664"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p><code class="function">sd_journal_get_usage()</code>
+                of all hosts.</p></div><div class="refsect1"><a name="idm214179443376"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p><code class="function">sd_journal_get_usage()</code>
                 returns 0 on success or a negative errno-style error
-                code.</p></div><div class="refsect1"><a name="idm214192653808"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p>The <code class="function">sd_journal_get_usage()</code>
+                code.</p></div><div class="refsect1"><a name="idm214179316592"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p>The <code class="function">sd_journal_get_usage()</code>
                 interface is available as a shared library, which can be
                 compiled and linked to with the
                 <code class="constant">libsystemd</code> <a href="pkg-config.html"><span class="citerefentry"><span class="refentrytitle">pkg-config</span>(1)</span></a>
-                file.</p></div><div class="refsect1"><a name="idm214192650416"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+                file.</p></div><div class="refsect1"><a name="idm214179313200"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
                         <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
                         <a href="sd-journal.html"><span class="citerefentry"><span class="refentrytitle">sd-journal</span>(3)</span></a>,
                         <a href="sd_journal_open.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_open</span>(3)</span></a>,
index de9126a9d97ad6398d76b91b11fe39821d52e26d..f165863bb147c7b51adf91b7c37b85b2c0b5e2de 100644 (file)
@@ -1,5 +1,5 @@
 '\" t
-.TH "SD_JOURNAL_NEXT" "3" "" "systemd 214" "sd_journal_next"
+.TH "SD_JOURNAL_NEXT" "3" "" "systemd 215" "sd_journal_next"
 .\" -----------------------------------------------------------------
 .\" * Define some portability stuff
 .\" -----------------------------------------------------------------
@@ -117,7 +117,7 @@ int main(int argc, char *argv[]) {
                 const char *d;
                 size_t l;
 
-                r = sd_journal_get_data(j, "MESSAGE", &d, &l);
+                r = sd_journal_get_data(j, "MESSAGE", (const void **)&d, &l);
                 if (r < 0) {
                         fprintf(stderr, "Failed to read message field: %s\en", strerror(\-r));
                         continue;
index f1961f485bd04f1f7c139f5d71b428aa74a44828..8d2ec8cd7db7aaacad26b4debb890fe52c70c8d1 100644 (file)
@@ -19,7 +19,7 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="sd_journal_next"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_journal_next, sd_journal_previous, sd_journal_next_skip, sd_journal_previous_skip, SD_JOURNAL_FOREACH, SD_JOURNAL_FOREACH_BACKWARDS — Advance or set back the read pointer in the journal</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-journal.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_next</b>(</code></td><td>sd_journal *<var class="pdparam">j</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_previous</b>(</code></td><td>sd_journal *<var class="pdparam">j</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_next_skip</b>(</code></td><td>sd_journal *<var class="pdparam">j</var>, </td></tr><tr><td> </td><td>uint64_t <var class="pdparam">skip</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_previous_skip</b>(</code></td><td>sd_journal *<var class="pdparam">j</var>, </td></tr><tr><td> </td><td>uint64_t <var class="pdparam">skip</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef"><b class="fsfunc">SD_JOURNAL_FOREACH</b>(</code></td><td>sd_journal *<var class="pdparam">j</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef"><b class="fsfunc">SD_JOURNAL_FOREACH_BACKWARDS</b>(</code></td><td>sd_journal *<var class="pdparam">j</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214184331424"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_journal_next()</code> advances
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="sd_journal_next"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_journal_next, sd_journal_previous, sd_journal_next_skip, sd_journal_previous_skip, SD_JOURNAL_FOREACH, SD_JOURNAL_FOREACH_BACKWARDS — Advance or set back the read pointer in the journal</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-journal.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_next</b>(</code></td><td>sd_journal *<var class="pdparam">j</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_previous</b>(</code></td><td>sd_journal *<var class="pdparam">j</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_next_skip</b>(</code></td><td>sd_journal *<var class="pdparam">j</var>, </td></tr><tr><td> </td><td>uint64_t <var class="pdparam">skip</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_previous_skip</b>(</code></td><td>sd_journal *<var class="pdparam">j</var>, </td></tr><tr><td> </td><td>uint64_t <var class="pdparam">skip</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef"><b class="fsfunc">SD_JOURNAL_FOREACH</b>(</code></td><td>sd_journal *<var class="pdparam">j</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef"><b class="fsfunc">SD_JOURNAL_FOREACH_BACKWARDS</b>(</code></td><td>sd_journal *<var class="pdparam">j</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214197612176"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_journal_next()</code> advances
                 the read pointer into the journal by one entry. The
                 only argument taken is a journal context object as
                 allocated via
@@ -48,7 +48,7 @@
                 for an example. Similarly,
                 <code class="function">SD_JOURNAL_FOREACH_BACKWARDS()</code>
                 may be used for iterating the journal in reverse
-                order.</p></div><div class="refsect1"><a name="idm214184318032"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>The four calls return the number of entries
+                order.</p></div><div class="refsect1"><a name="idm214197598784"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>The four calls return the number of entries
                 advanced/set back on success or a negative errno-style
                 error code. When the end or beginning of the journal
                 is reached, a number smaller than requested is
                 <code class="function">sd_journal_previous()</code> reach the
                 end/beginning of the journal they will return 0,
                 instead of 1 when they are successful. This should be
-                considered an EOF marker.</p></div><div class="refsect1"><a name="idm214184307648"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p>The <code class="function">sd_journal_next()</code>, <code class="function">sd_journal_previous()</code>,
+                considered an EOF marker.</p></div><div class="refsect1"><a name="idm214197588368"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p>The <code class="function">sd_journal_next()</code>, <code class="function">sd_journal_previous()</code>,
                 <code class="function">sd_journal_next_skip()</code> and
                 <code class="function">sd_journal_previous_skip()</code> interfaces are
                 available as a shared library, which can be compiled and
                 linked to with the
                 <code class="constant">libsystemd</code> <a href="pkg-config.html"><span class="citerefentry"><span class="refentrytitle">pkg-config</span>(1)</span></a>
-                file.</p></div><div class="refsect1"><a name="idm214184302064"></a><h2 id="Examples">Examples<a class="headerlink" title="Permalink to this headline" href="#Examples">¶</a></h2><p>Iterating through the journal:</p><pre class="programlisting">#include &lt;stdio.h&gt;
+                file.</p></div><div class="refsect1"><a name="idm214197582832"></a><h2 id="Examples">Examples<a class="headerlink" title="Permalink to this headline" href="#Examples">¶</a></h2><p>Iterating through the journal:</p><pre class="programlisting">#include &lt;stdio.h&gt;
 #include &lt;string.h&gt;
 #include &lt;systemd/sd-journal.h&gt;
 
@@ -79,7 +79,7 @@ int main(int argc, char *argv[]) {
                 const char *d;
                 size_t l;
 
-                r = sd_journal_get_data(j, "MESSAGE", &amp;d, &amp;l);
+                r = sd_journal_get_data(j, "MESSAGE", (const void **)&amp;d, &amp;l);
                 if (r &lt; 0) {
                         fprintf(stderr, "Failed to read message field: %s\n", strerror(-r));
                         continue;
@@ -89,7 +89,7 @@ int main(int argc, char *argv[]) {
         }
         sd_journal_close(j);
         return 0;
-}</pre></div><div class="refsect1"><a name="idm214184298560"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+}</pre></div><div class="refsect1"><a name="idm214197579328"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
                         <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
                         <a href="sd-journal.html"><span class="citerefentry"><span class="refentrytitle">sd-journal</span>(3)</span></a>,
                         <a href="sd_journal_open.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_open</span>(3)</span></a>,
index 0216d6e089dbea0cc842e27aed9e995eb81604d4..5e691a15bab156b5652ed8da00d1f1993d16ce8d 100644 (file)
@@ -183,7 +183,7 @@ int main(int argc, char *argv[]) {
                 const char *d;
                 size_t l;
 
-                r = sd_journal_get_data(j, "MESSAGE", &amp;d, &amp;l);
+                r = sd_journal_get_data(j, "MESSAGE", (const void **)&amp;d, &amp;l);
                 if (r &lt; 0) {
                         fprintf(stderr, "Failed to read message field: %s\n", strerror(-r));
                         continue;
index f1961f485bd04f1f7c139f5d71b428aa74a44828..8d2ec8cd7db7aaacad26b4debb890fe52c70c8d1 100644 (file)
@@ -19,7 +19,7 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="sd_journal_next"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_journal_next, sd_journal_previous, sd_journal_next_skip, sd_journal_previous_skip, SD_JOURNAL_FOREACH, SD_JOURNAL_FOREACH_BACKWARDS — Advance or set back the read pointer in the journal</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-journal.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_next</b>(</code></td><td>sd_journal *<var class="pdparam">j</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_previous</b>(</code></td><td>sd_journal *<var class="pdparam">j</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_next_skip</b>(</code></td><td>sd_journal *<var class="pdparam">j</var>, </td></tr><tr><td> </td><td>uint64_t <var class="pdparam">skip</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_previous_skip</b>(</code></td><td>sd_journal *<var class="pdparam">j</var>, </td></tr><tr><td> </td><td>uint64_t <var class="pdparam">skip</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef"><b class="fsfunc">SD_JOURNAL_FOREACH</b>(</code></td><td>sd_journal *<var class="pdparam">j</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef"><b class="fsfunc">SD_JOURNAL_FOREACH_BACKWARDS</b>(</code></td><td>sd_journal *<var class="pdparam">j</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214184331424"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_journal_next()</code> advances
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="sd_journal_next"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_journal_next, sd_journal_previous, sd_journal_next_skip, sd_journal_previous_skip, SD_JOURNAL_FOREACH, SD_JOURNAL_FOREACH_BACKWARDS — Advance or set back the read pointer in the journal</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-journal.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_next</b>(</code></td><td>sd_journal *<var class="pdparam">j</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_previous</b>(</code></td><td>sd_journal *<var class="pdparam">j</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_next_skip</b>(</code></td><td>sd_journal *<var class="pdparam">j</var>, </td></tr><tr><td> </td><td>uint64_t <var class="pdparam">skip</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_previous_skip</b>(</code></td><td>sd_journal *<var class="pdparam">j</var>, </td></tr><tr><td> </td><td>uint64_t <var class="pdparam">skip</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef"><b class="fsfunc">SD_JOURNAL_FOREACH</b>(</code></td><td>sd_journal *<var class="pdparam">j</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef"><b class="fsfunc">SD_JOURNAL_FOREACH_BACKWARDS</b>(</code></td><td>sd_journal *<var class="pdparam">j</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214197612176"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_journal_next()</code> advances
                 the read pointer into the journal by one entry. The
                 only argument taken is a journal context object as
                 allocated via
@@ -48,7 +48,7 @@
                 for an example. Similarly,
                 <code class="function">SD_JOURNAL_FOREACH_BACKWARDS()</code>
                 may be used for iterating the journal in reverse
-                order.</p></div><div class="refsect1"><a name="idm214184318032"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>The four calls return the number of entries
+                order.</p></div><div class="refsect1"><a name="idm214197598784"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>The four calls return the number of entries
                 advanced/set back on success or a negative errno-style
                 error code. When the end or beginning of the journal
                 is reached, a number smaller than requested is
                 <code class="function">sd_journal_previous()</code> reach the
                 end/beginning of the journal they will return 0,
                 instead of 1 when they are successful. This should be
-                considered an EOF marker.</p></div><div class="refsect1"><a name="idm214184307648"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p>The <code class="function">sd_journal_next()</code>, <code class="function">sd_journal_previous()</code>,
+                considered an EOF marker.</p></div><div class="refsect1"><a name="idm214197588368"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p>The <code class="function">sd_journal_next()</code>, <code class="function">sd_journal_previous()</code>,
                 <code class="function">sd_journal_next_skip()</code> and
                 <code class="function">sd_journal_previous_skip()</code> interfaces are
                 available as a shared library, which can be compiled and
                 linked to with the
                 <code class="constant">libsystemd</code> <a href="pkg-config.html"><span class="citerefentry"><span class="refentrytitle">pkg-config</span>(1)</span></a>
-                file.</p></div><div class="refsect1"><a name="idm214184302064"></a><h2 id="Examples">Examples<a class="headerlink" title="Permalink to this headline" href="#Examples">¶</a></h2><p>Iterating through the journal:</p><pre class="programlisting">#include &lt;stdio.h&gt;
+                file.</p></div><div class="refsect1"><a name="idm214197582832"></a><h2 id="Examples">Examples<a class="headerlink" title="Permalink to this headline" href="#Examples">¶</a></h2><p>Iterating through the journal:</p><pre class="programlisting">#include &lt;stdio.h&gt;
 #include &lt;string.h&gt;
 #include &lt;systemd/sd-journal.h&gt;
 
@@ -79,7 +79,7 @@ int main(int argc, char *argv[]) {
                 const char *d;
                 size_t l;
 
-                r = sd_journal_get_data(j, "MESSAGE", &amp;d, &amp;l);
+                r = sd_journal_get_data(j, "MESSAGE", (const void **)&amp;d, &amp;l);
                 if (r &lt; 0) {
                         fprintf(stderr, "Failed to read message field: %s\n", strerror(-r));
                         continue;
@@ -89,7 +89,7 @@ int main(int argc, char *argv[]) {
         }
         sd_journal_close(j);
         return 0;
-}</pre></div><div class="refsect1"><a name="idm214184298560"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+}</pre></div><div class="refsect1"><a name="idm214197579328"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
                         <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
                         <a href="sd-journal.html"><span class="citerefentry"><span class="refentrytitle">sd-journal</span>(3)</span></a>,
                         <a href="sd_journal_open.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_open</span>(3)</span></a>,
index 58ce808a32d275a0d1beccb4e125c1e157878980..795794831c91c5739b59179637da3506eedb7793 100644 (file)
@@ -1,5 +1,5 @@
 '\" t
-.TH "SD_JOURNAL_OPEN" "3" "" "systemd 214" "sd_journal_open"
+.TH "SD_JOURNAL_OPEN" "3" "" "systemd 215" "sd_journal_open"
 .\" -----------------------------------------------------------------
 .\" * Define some portability stuff
 .\" -----------------------------------------------------------------
index 5e4d04c89dec61e486102b65b029c35f83c96104..df228940e21693f7b0ad805c75c39bec16dd9b67 100644 (file)
@@ -19,7 +19,7 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="sd_journal_open"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_journal_open, sd_journal_open_directory, sd_journal_open_files, sd_journal_open_container, sd_journal_close, sd_journal, SD_JOURNAL_LOCAL_ONLY, SD_JOURNAL_RUNTIME_ONLY, SD_JOURNAL_SYSTEM, SD_JOURNAL_CURRENT_USER — Open the system journal for reading</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-journal.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_open</b>(</code></td><td>sd_journal **<var class="pdparam">ret</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">flags</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_open_directory</b>(</code></td><td>sd_journal **<var class="pdparam">ret</var>, </td></tr><tr><td> </td><td>const char *<var class="pdparam">path</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">flags</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_open_files</b>(</code></td><td>sd_journal **<var class="pdparam">ret</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">paths</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">flags</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_open_container</b>(</code></td><td>sd_journal **<var class="pdparam">ret</var>, </td></tr><tr><td> </td><td>const char *<var class="pdparam">machine</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">flags</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">void <b class="fsfunc">sd_journal_close</b>(</code></td><td>sd_journal *<var class="pdparam">j</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214195234384"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_journal_open()</code> opens
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="sd_journal_open"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_journal_open, sd_journal_open_directory, sd_journal_open_files, sd_journal_open_container, sd_journal_close, sd_journal, SD_JOURNAL_LOCAL_ONLY, SD_JOURNAL_RUNTIME_ONLY, SD_JOURNAL_SYSTEM, SD_JOURNAL_CURRENT_USER — Open the system journal for reading</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-journal.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_open</b>(</code></td><td>sd_journal **<var class="pdparam">ret</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">flags</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_open_directory</b>(</code></td><td>sd_journal **<var class="pdparam">ret</var>, </td></tr><tr><td> </td><td>const char *<var class="pdparam">path</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">flags</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_open_files</b>(</code></td><td>sd_journal **<var class="pdparam">ret</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">paths</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">flags</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_open_container</b>(</code></td><td>sd_journal **<var class="pdparam">ret</var>, </td></tr><tr><td> </td><td>const char *<var class="pdparam">machine</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">flags</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">void <b class="fsfunc">sd_journal_close</b>(</code></td><td>sd_journal *<var class="pdparam">j</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214202620928"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_journal_open()</code> opens
                 the log journal for reading. It will find all journal
                 files automatically and interleave them automatically
                 when reading. As first argument it takes a pointer to
                 locally, to its closest entry in time)
                 <a href="sd_journal_seek_cursor.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_seek_cursor</span>(3)</span></a>.</p><p>Notification of journal changes is available via
                 <code class="function">sd_journal_get_fd()</code> and related
-                calls.</p></div><div class="refsect1"><a name="idm214195199952"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>The <code class="function">sd_journal_open()</code>,
+                calls.</p></div><div class="refsect1"><a name="idm214202586464"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>The <code class="function">sd_journal_open()</code>,
                 <code class="function">sd_journal_open_directory()</code>, and
                 <code class="function">sd_journal_open_files()</code> calls
                 return 0 on success or a negative errno-style error
                 code. <code class="function">sd_journal_close()</code> returns
-                nothing.</p></div><div class="refsect1"><a name="idm214195195744"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p>The <code class="function">sd_journal_open()</code>,
+                nothing.</p></div><div class="refsect1"><a name="idm214202582256"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p>The <code class="function">sd_journal_open()</code>,
                 <code class="function">sd_journal_open_directory()</code> and
                 <code class="function">sd_journal_close()</code> interfaces are
                 available as a shared library, which can be compiled and
                 linked to with the
                 <code class="constant">libsystemd</code> <a href="pkg-config.html"><span class="citerefentry"><span class="refentrytitle">pkg-config</span>(1)</span></a>
-                file.</p></div><div class="refsect1"><a name="idm214190277136"></a><h2 id="History">History<a class="headerlink" title="Permalink to this headline" href="#History">¶</a></h2><p><code class="function">sd_journal_open()</code>,
+                file.</p></div><div class="refsect1"><a name="idm214197661808"></a><h2 id="History">History<a class="headerlink" title="Permalink to this headline" href="#History">¶</a></h2><p><code class="function">sd_journal_open()</code>,
                 <code class="function">sd_journal_close()</code>,
                 <code class="constant">SD_JOURNAL_LOCAL_ONLY</code>,
                 <code class="constant">SD_JOURNAL_RUNTIME_ONLY</code>,
                 and <code class="function">sd_journal_open_files()</code>
                 were added in systemd-205.
                 <code class="constant">SD_JOURNAL_SYSTEM_ONLY</code>
-                was deprecated.</p></div><div class="refsect1"><a name="idm214190270800"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+                was deprecated.</p></div><div class="refsect1"><a name="idm214197655472"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
                         <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
                         <a href="sd-journal.html"><span class="citerefentry"><span class="refentrytitle">sd-journal</span>(3)</span></a>,
                         <a href="sd_journal_next.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_next</span>(3)</span></a>,
index 5e4d04c89dec61e486102b65b029c35f83c96104..df228940e21693f7b0ad805c75c39bec16dd9b67 100644 (file)
@@ -19,7 +19,7 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="sd_journal_open"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_journal_open, sd_journal_open_directory, sd_journal_open_files, sd_journal_open_container, sd_journal_close, sd_journal, SD_JOURNAL_LOCAL_ONLY, SD_JOURNAL_RUNTIME_ONLY, SD_JOURNAL_SYSTEM, SD_JOURNAL_CURRENT_USER — Open the system journal for reading</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-journal.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_open</b>(</code></td><td>sd_journal **<var class="pdparam">ret</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">flags</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_open_directory</b>(</code></td><td>sd_journal **<var class="pdparam">ret</var>, </td></tr><tr><td> </td><td>const char *<var class="pdparam">path</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">flags</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_open_files</b>(</code></td><td>sd_journal **<var class="pdparam">ret</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">paths</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">flags</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_open_container</b>(</code></td><td>sd_journal **<var class="pdparam">ret</var>, </td></tr><tr><td> </td><td>const char *<var class="pdparam">machine</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">flags</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">void <b class="fsfunc">sd_journal_close</b>(</code></td><td>sd_journal *<var class="pdparam">j</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214195234384"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_journal_open()</code> opens
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="sd_journal_open"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_journal_open, sd_journal_open_directory, sd_journal_open_files, sd_journal_open_container, sd_journal_close, sd_journal, SD_JOURNAL_LOCAL_ONLY, SD_JOURNAL_RUNTIME_ONLY, SD_JOURNAL_SYSTEM, SD_JOURNAL_CURRENT_USER — Open the system journal for reading</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-journal.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_open</b>(</code></td><td>sd_journal **<var class="pdparam">ret</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">flags</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_open_directory</b>(</code></td><td>sd_journal **<var class="pdparam">ret</var>, </td></tr><tr><td> </td><td>const char *<var class="pdparam">path</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">flags</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_open_files</b>(</code></td><td>sd_journal **<var class="pdparam">ret</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">paths</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">flags</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_open_container</b>(</code></td><td>sd_journal **<var class="pdparam">ret</var>, </td></tr><tr><td> </td><td>const char *<var class="pdparam">machine</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">flags</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">void <b class="fsfunc">sd_journal_close</b>(</code></td><td>sd_journal *<var class="pdparam">j</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214202620928"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_journal_open()</code> opens
                 the log journal for reading. It will find all journal
                 files automatically and interleave them automatically
                 when reading. As first argument it takes a pointer to
                 locally, to its closest entry in time)
                 <a href="sd_journal_seek_cursor.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_seek_cursor</span>(3)</span></a>.</p><p>Notification of journal changes is available via
                 <code class="function">sd_journal_get_fd()</code> and related
-                calls.</p></div><div class="refsect1"><a name="idm214195199952"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>The <code class="function">sd_journal_open()</code>,
+                calls.</p></div><div class="refsect1"><a name="idm214202586464"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>The <code class="function">sd_journal_open()</code>,
                 <code class="function">sd_journal_open_directory()</code>, and
                 <code class="function">sd_journal_open_files()</code> calls
                 return 0 on success or a negative errno-style error
                 code. <code class="function">sd_journal_close()</code> returns
-                nothing.</p></div><div class="refsect1"><a name="idm214195195744"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p>The <code class="function">sd_journal_open()</code>,
+                nothing.</p></div><div class="refsect1"><a name="idm214202582256"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p>The <code class="function">sd_journal_open()</code>,
                 <code class="function">sd_journal_open_directory()</code> and
                 <code class="function">sd_journal_close()</code> interfaces are
                 available as a shared library, which can be compiled and
                 linked to with the
                 <code class="constant">libsystemd</code> <a href="pkg-config.html"><span class="citerefentry"><span class="refentrytitle">pkg-config</span>(1)</span></a>
-                file.</p></div><div class="refsect1"><a name="idm214190277136"></a><h2 id="History">History<a class="headerlink" title="Permalink to this headline" href="#History">¶</a></h2><p><code class="function">sd_journal_open()</code>,
+                file.</p></div><div class="refsect1"><a name="idm214197661808"></a><h2 id="History">History<a class="headerlink" title="Permalink to this headline" href="#History">¶</a></h2><p><code class="function">sd_journal_open()</code>,
                 <code class="function">sd_journal_close()</code>,
                 <code class="constant">SD_JOURNAL_LOCAL_ONLY</code>,
                 <code class="constant">SD_JOURNAL_RUNTIME_ONLY</code>,
                 and <code class="function">sd_journal_open_files()</code>
                 were added in systemd-205.
                 <code class="constant">SD_JOURNAL_SYSTEM_ONLY</code>
-                was deprecated.</p></div><div class="refsect1"><a name="idm214190270800"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+                was deprecated.</p></div><div class="refsect1"><a name="idm214197655472"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
                         <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
                         <a href="sd-journal.html"><span class="citerefentry"><span class="refentrytitle">sd-journal</span>(3)</span></a>,
                         <a href="sd_journal_next.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_next</span>(3)</span></a>,
index 5e4d04c89dec61e486102b65b029c35f83c96104..df228940e21693f7b0ad805c75c39bec16dd9b67 100644 (file)
@@ -19,7 +19,7 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="sd_journal_open"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_journal_open, sd_journal_open_directory, sd_journal_open_files, sd_journal_open_container, sd_journal_close, sd_journal, SD_JOURNAL_LOCAL_ONLY, SD_JOURNAL_RUNTIME_ONLY, SD_JOURNAL_SYSTEM, SD_JOURNAL_CURRENT_USER — Open the system journal for reading</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-journal.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_open</b>(</code></td><td>sd_journal **<var class="pdparam">ret</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">flags</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_open_directory</b>(</code></td><td>sd_journal **<var class="pdparam">ret</var>, </td></tr><tr><td> </td><td>const char *<var class="pdparam">path</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">flags</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_open_files</b>(</code></td><td>sd_journal **<var class="pdparam">ret</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">paths</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">flags</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_open_container</b>(</code></td><td>sd_journal **<var class="pdparam">ret</var>, </td></tr><tr><td> </td><td>const char *<var class="pdparam">machine</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">flags</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">void <b class="fsfunc">sd_journal_close</b>(</code></td><td>sd_journal *<var class="pdparam">j</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214195234384"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_journal_open()</code> opens
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="sd_journal_open"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_journal_open, sd_journal_open_directory, sd_journal_open_files, sd_journal_open_container, sd_journal_close, sd_journal, SD_JOURNAL_LOCAL_ONLY, SD_JOURNAL_RUNTIME_ONLY, SD_JOURNAL_SYSTEM, SD_JOURNAL_CURRENT_USER — Open the system journal for reading</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-journal.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_open</b>(</code></td><td>sd_journal **<var class="pdparam">ret</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">flags</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_open_directory</b>(</code></td><td>sd_journal **<var class="pdparam">ret</var>, </td></tr><tr><td> </td><td>const char *<var class="pdparam">path</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">flags</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_open_files</b>(</code></td><td>sd_journal **<var class="pdparam">ret</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">paths</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">flags</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_open_container</b>(</code></td><td>sd_journal **<var class="pdparam">ret</var>, </td></tr><tr><td> </td><td>const char *<var class="pdparam">machine</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">flags</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">void <b class="fsfunc">sd_journal_close</b>(</code></td><td>sd_journal *<var class="pdparam">j</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214202620928"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_journal_open()</code> opens
                 the log journal for reading. It will find all journal
                 files automatically and interleave them automatically
                 when reading. As first argument it takes a pointer to
                 locally, to its closest entry in time)
                 <a href="sd_journal_seek_cursor.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_seek_cursor</span>(3)</span></a>.</p><p>Notification of journal changes is available via
                 <code class="function">sd_journal_get_fd()</code> and related
-                calls.</p></div><div class="refsect1"><a name="idm214195199952"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>The <code class="function">sd_journal_open()</code>,
+                calls.</p></div><div class="refsect1"><a name="idm214202586464"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>The <code class="function">sd_journal_open()</code>,
                 <code class="function">sd_journal_open_directory()</code>, and
                 <code class="function">sd_journal_open_files()</code> calls
                 return 0 on success or a negative errno-style error
                 code. <code class="function">sd_journal_close()</code> returns
-                nothing.</p></div><div class="refsect1"><a name="idm214195195744"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p>The <code class="function">sd_journal_open()</code>,
+                nothing.</p></div><div class="refsect1"><a name="idm214202582256"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p>The <code class="function">sd_journal_open()</code>,
                 <code class="function">sd_journal_open_directory()</code> and
                 <code class="function">sd_journal_close()</code> interfaces are
                 available as a shared library, which can be compiled and
                 linked to with the
                 <code class="constant">libsystemd</code> <a href="pkg-config.html"><span class="citerefentry"><span class="refentrytitle">pkg-config</span>(1)</span></a>
-                file.</p></div><div class="refsect1"><a name="idm214190277136"></a><h2 id="History">History<a class="headerlink" title="Permalink to this headline" href="#History">¶</a></h2><p><code class="function">sd_journal_open()</code>,
+                file.</p></div><div class="refsect1"><a name="idm214197661808"></a><h2 id="History">History<a class="headerlink" title="Permalink to this headline" href="#History">¶</a></h2><p><code class="function">sd_journal_open()</code>,
                 <code class="function">sd_journal_close()</code>,
                 <code class="constant">SD_JOURNAL_LOCAL_ONLY</code>,
                 <code class="constant">SD_JOURNAL_RUNTIME_ONLY</code>,
                 and <code class="function">sd_journal_open_files()</code>
                 were added in systemd-205.
                 <code class="constant">SD_JOURNAL_SYSTEM_ONLY</code>
-                was deprecated.</p></div><div class="refsect1"><a name="idm214190270800"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+                was deprecated.</p></div><div class="refsect1"><a name="idm214197655472"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
                         <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
                         <a href="sd-journal.html"><span class="citerefentry"><span class="refentrytitle">sd-journal</span>(3)</span></a>,
                         <a href="sd_journal_next.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_next</span>(3)</span></a>,
index 5e4d04c89dec61e486102b65b029c35f83c96104..df228940e21693f7b0ad805c75c39bec16dd9b67 100644 (file)
@@ -19,7 +19,7 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="sd_journal_open"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_journal_open, sd_journal_open_directory, sd_journal_open_files, sd_journal_open_container, sd_journal_close, sd_journal, SD_JOURNAL_LOCAL_ONLY, SD_JOURNAL_RUNTIME_ONLY, SD_JOURNAL_SYSTEM, SD_JOURNAL_CURRENT_USER — Open the system journal for reading</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-journal.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_open</b>(</code></td><td>sd_journal **<var class="pdparam">ret</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">flags</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_open_directory</b>(</code></td><td>sd_journal **<var class="pdparam">ret</var>, </td></tr><tr><td> </td><td>const char *<var class="pdparam">path</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">flags</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_open_files</b>(</code></td><td>sd_journal **<var class="pdparam">ret</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">paths</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">flags</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_open_container</b>(</code></td><td>sd_journal **<var class="pdparam">ret</var>, </td></tr><tr><td> </td><td>const char *<var class="pdparam">machine</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">flags</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">void <b class="fsfunc">sd_journal_close</b>(</code></td><td>sd_journal *<var class="pdparam">j</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214195234384"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_journal_open()</code> opens
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="sd_journal_open"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_journal_open, sd_journal_open_directory, sd_journal_open_files, sd_journal_open_container, sd_journal_close, sd_journal, SD_JOURNAL_LOCAL_ONLY, SD_JOURNAL_RUNTIME_ONLY, SD_JOURNAL_SYSTEM, SD_JOURNAL_CURRENT_USER — Open the system journal for reading</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-journal.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_open</b>(</code></td><td>sd_journal **<var class="pdparam">ret</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">flags</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_open_directory</b>(</code></td><td>sd_journal **<var class="pdparam">ret</var>, </td></tr><tr><td> </td><td>const char *<var class="pdparam">path</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">flags</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_open_files</b>(</code></td><td>sd_journal **<var class="pdparam">ret</var>, </td></tr><tr><td> </td><td>const char **<var class="pdparam">paths</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">flags</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_open_container</b>(</code></td><td>sd_journal **<var class="pdparam">ret</var>, </td></tr><tr><td> </td><td>const char *<var class="pdparam">machine</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">flags</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">void <b class="fsfunc">sd_journal_close</b>(</code></td><td>sd_journal *<var class="pdparam">j</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214202620928"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_journal_open()</code> opens
                 the log journal for reading. It will find all journal
                 files automatically and interleave them automatically
                 when reading. As first argument it takes a pointer to
                 locally, to its closest entry in time)
                 <a href="sd_journal_seek_cursor.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_seek_cursor</span>(3)</span></a>.</p><p>Notification of journal changes is available via
                 <code class="function">sd_journal_get_fd()</code> and related
-                calls.</p></div><div class="refsect1"><a name="idm214195199952"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>The <code class="function">sd_journal_open()</code>,
+                calls.</p></div><div class="refsect1"><a name="idm214202586464"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>The <code class="function">sd_journal_open()</code>,
                 <code class="function">sd_journal_open_directory()</code>, and
                 <code class="function">sd_journal_open_files()</code> calls
                 return 0 on success or a negative errno-style error
                 code. <code class="function">sd_journal_close()</code> returns
-                nothing.</p></div><div class="refsect1"><a name="idm214195195744"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p>The <code class="function">sd_journal_open()</code>,
+                nothing.</p></div><div class="refsect1"><a name="idm214202582256"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p>The <code class="function">sd_journal_open()</code>,
                 <code class="function">sd_journal_open_directory()</code> and
                 <code class="function">sd_journal_close()</code> interfaces are
                 available as a shared library, which can be compiled and
                 linked to with the
                 <code class="constant">libsystemd</code> <a href="pkg-config.html"><span class="citerefentry"><span class="refentrytitle">pkg-config</span>(1)</span></a>
-                file.</p></div><div class="refsect1"><a name="idm214190277136"></a><h2 id="History">History<a class="headerlink" title="Permalink to this headline" href="#History">¶</a></h2><p><code class="function">sd_journal_open()</code>,
+                file.</p></div><div class="refsect1"><a name="idm214197661808"></a><h2 id="History">History<a class="headerlink" title="Permalink to this headline" href="#History">¶</a></h2><p><code class="function">sd_journal_open()</code>,
                 <code class="function">sd_journal_close()</code>,
                 <code class="constant">SD_JOURNAL_LOCAL_ONLY</code>,
                 <code class="constant">SD_JOURNAL_RUNTIME_ONLY</code>,
                 and <code class="function">sd_journal_open_files()</code>
                 were added in systemd-205.
                 <code class="constant">SD_JOURNAL_SYSTEM_ONLY</code>
-                was deprecated.</p></div><div class="refsect1"><a name="idm214190270800"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+                was deprecated.</p></div><div class="refsect1"><a name="idm214197655472"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
                         <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
                         <a href="sd-journal.html"><span class="citerefentry"><span class="refentrytitle">sd-journal</span>(3)</span></a>,
                         <a href="sd_journal_next.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_next</span>(3)</span></a>,
index 7438ea67f80d627ba85244752b53dd06b5d09e13..a80243707201a36ec5dc8e69e489291ecea0b275 100644 (file)
@@ -19,7 +19,7 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="sd_journal_print"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_journal_print, sd_journal_printv, sd_journal_send, sd_journal_sendv, sd_journal_perror, SD_JOURNAL_SUPPRESS_LOCATION — Submit log entries to the journal</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-journal.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_print</b>(</code></td><td>int <var class="pdparam">priority</var>, </td></tr><tr><td> </td><td>const char *<var class="pdparam">format</var>, </td></tr><tr><td> </td><td>...<code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_printv</b>(</code></td><td>int <var class="pdparam">priority</var>, </td></tr><tr><td> </td><td>const char *<var class="pdparam">format</var>, </td></tr><tr><td> </td><td>va_list <var class="pdparam">ap</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_send</b>(</code></td><td>const char *<var class="pdparam">format</var>, </td></tr><tr><td> </td><td>...<code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_sendv</b>(</code></td><td>const struct iovec *<var class="pdparam">iov</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">n</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_perror</b>(</code></td><td>const char *<var class="pdparam">message</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214171911712"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_journal_print()</code> may be
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="sd_journal_print"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_journal_print, sd_journal_printv, sd_journal_send, sd_journal_sendv, sd_journal_perror, SD_JOURNAL_SUPPRESS_LOCATION — Submit log entries to the journal</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-journal.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_print</b>(</code></td><td>int <var class="pdparam">priority</var>, </td></tr><tr><td> </td><td>const char *<var class="pdparam">format</var>, </td></tr><tr><td> </td><td>...<code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_printv</b>(</code></td><td>int <var class="pdparam">priority</var>, </td></tr><tr><td> </td><td>const char *<var class="pdparam">format</var>, </td></tr><tr><td> </td><td>va_list <var class="pdparam">ap</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_send</b>(</code></td><td>const char *<var class="pdparam">format</var>, </td></tr><tr><td> </td><td>...<code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_sendv</b>(</code></td><td>const struct iovec *<var class="pdparam">iov</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">n</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_perror</b>(</code></td><td>const char *<var class="pdparam">message</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214193392656"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_journal_print()</code> may be
                 used to submit simple, plain text log entries to the
                 system journal. The first argument is a priority
                 value. This is followed by a format string and its
@@ -118,26 +118,26 @@ sd_journal_send("MESSAGE=Hello World, this is PID %lu!", (unsigned long) getpid(
                 log entries that are generated via
                 <code class="function">sd_journal_send()</code>. Using
                 <code class="function">syslog()</code> has the benefit of being
-                more portable.</p></div><div class="refsect1"><a name="idm214171870448"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>The four calls return 0 on success or a negative
+                more portable.</p></div><div class="refsect1"><a name="idm214193498576"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>The four calls return 0 on success or a negative
                 errno-style error code. The
                 <a href="errno.html"><span class="citerefentry"><span class="refentrytitle">errno</span>(3)</span></a>
                 variable itself is not altered.</p><p>If
                 <a href="systemd-journald.html"><span class="citerefentry"><span class="refentrytitle">systemd-journald</span>(8)</span></a>
                 is not running (the socket is not present), those
-                functions do nothing, and also return 0.</p></div><div class="refsect1"><a name="idm214166952576"></a><h2 id="Async signal safety">Async signal safety<a class="headerlink" title="Permalink to this headline" href="#Async%20signal%20safety">¶</a></h2><p><code class="function">sd_journal_sendv()</code> is "async signal
+                functions do nothing, and also return 0.</p></div><div class="refsect1"><a name="idm214193495056"></a><h2 id="Async signal safety">Async signal safety<a class="headerlink" title="Permalink to this headline" href="#Async%20signal%20safety">¶</a></h2><p><code class="function">sd_journal_sendv()</code> is "async signal
                 safe" in the meaning of <a href="signal.html"><span class="citerefentry"><span class="refentrytitle">signal</span>(7)</span></a>.
                 </p><p><code class="function">sd_journal_print</code>,
                 <code class="function">sd_journal_printv</code>,
                 <code class="function">sd_journal_send</code>, and
                 <code class="function">sd_journal_perror</code> are
-                not async signal safe.</p></div><div class="refsect1"><a name="idm214166947408"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p>The <code class="function">sd_journal_print()</code>,
+                not async signal safe.</p></div><div class="refsect1"><a name="idm214193489376"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p>The <code class="function">sd_journal_print()</code>,
                 <code class="function">sd_journal_printv()</code>,
                 <code class="function">sd_journal_send()</code> and
                 <code class="function">sd_journal_sendv()</code> interfaces
                 are available as a shared library, which can be compiled
                 and linked to with the
                 <code class="constant">libsystemd</code> <a href="pkg-config.html"><span class="citerefentry"><span class="refentrytitle">pkg-config</span>(1)</span></a>
-                file.</p></div><div class="refsect1"><a name="idm214166942448"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+                file.</p></div><div class="refsect1"><a name="idm214188855456"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
                         <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
                         <a href="sd-journal.html"><span class="citerefentry"><span class="refentrytitle">sd-journal</span>(3)</span></a>,
                         <a href="sd_journal_stream_fd.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_stream_fd</span>(3)</span></a>,
index f1961f485bd04f1f7c139f5d71b428aa74a44828..8d2ec8cd7db7aaacad26b4debb890fe52c70c8d1 100644 (file)
@@ -19,7 +19,7 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="sd_journal_next"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_journal_next, sd_journal_previous, sd_journal_next_skip, sd_journal_previous_skip, SD_JOURNAL_FOREACH, SD_JOURNAL_FOREACH_BACKWARDS — Advance or set back the read pointer in the journal</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-journal.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_next</b>(</code></td><td>sd_journal *<var class="pdparam">j</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_previous</b>(</code></td><td>sd_journal *<var class="pdparam">j</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_next_skip</b>(</code></td><td>sd_journal *<var class="pdparam">j</var>, </td></tr><tr><td> </td><td>uint64_t <var class="pdparam">skip</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_previous_skip</b>(</code></td><td>sd_journal *<var class="pdparam">j</var>, </td></tr><tr><td> </td><td>uint64_t <var class="pdparam">skip</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef"><b class="fsfunc">SD_JOURNAL_FOREACH</b>(</code></td><td>sd_journal *<var class="pdparam">j</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef"><b class="fsfunc">SD_JOURNAL_FOREACH_BACKWARDS</b>(</code></td><td>sd_journal *<var class="pdparam">j</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214184331424"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_journal_next()</code> advances
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="sd_journal_next"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_journal_next, sd_journal_previous, sd_journal_next_skip, sd_journal_previous_skip, SD_JOURNAL_FOREACH, SD_JOURNAL_FOREACH_BACKWARDS — Advance or set back the read pointer in the journal</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-journal.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_next</b>(</code></td><td>sd_journal *<var class="pdparam">j</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_previous</b>(</code></td><td>sd_journal *<var class="pdparam">j</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_next_skip</b>(</code></td><td>sd_journal *<var class="pdparam">j</var>, </td></tr><tr><td> </td><td>uint64_t <var class="pdparam">skip</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_previous_skip</b>(</code></td><td>sd_journal *<var class="pdparam">j</var>, </td></tr><tr><td> </td><td>uint64_t <var class="pdparam">skip</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef"><b class="fsfunc">SD_JOURNAL_FOREACH</b>(</code></td><td>sd_journal *<var class="pdparam">j</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef"><b class="fsfunc">SD_JOURNAL_FOREACH_BACKWARDS</b>(</code></td><td>sd_journal *<var class="pdparam">j</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214197612176"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_journal_next()</code> advances
                 the read pointer into the journal by one entry. The
                 only argument taken is a journal context object as
                 allocated via
@@ -48,7 +48,7 @@
                 for an example. Similarly,
                 <code class="function">SD_JOURNAL_FOREACH_BACKWARDS()</code>
                 may be used for iterating the journal in reverse
-                order.</p></div><div class="refsect1"><a name="idm214184318032"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>The four calls return the number of entries
+                order.</p></div><div class="refsect1"><a name="idm214197598784"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>The four calls return the number of entries
                 advanced/set back on success or a negative errno-style
                 error code. When the end or beginning of the journal
                 is reached, a number smaller than requested is
                 <code class="function">sd_journal_previous()</code> reach the
                 end/beginning of the journal they will return 0,
                 instead of 1 when they are successful. This should be
-                considered an EOF marker.</p></div><div class="refsect1"><a name="idm214184307648"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p>The <code class="function">sd_journal_next()</code>, <code class="function">sd_journal_previous()</code>,
+                considered an EOF marker.</p></div><div class="refsect1"><a name="idm214197588368"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p>The <code class="function">sd_journal_next()</code>, <code class="function">sd_journal_previous()</code>,
                 <code class="function">sd_journal_next_skip()</code> and
                 <code class="function">sd_journal_previous_skip()</code> interfaces are
                 available as a shared library, which can be compiled and
                 linked to with the
                 <code class="constant">libsystemd</code> <a href="pkg-config.html"><span class="citerefentry"><span class="refentrytitle">pkg-config</span>(1)</span></a>
-                file.</p></div><div class="refsect1"><a name="idm214184302064"></a><h2 id="Examples">Examples<a class="headerlink" title="Permalink to this headline" href="#Examples">¶</a></h2><p>Iterating through the journal:</p><pre class="programlisting">#include &lt;stdio.h&gt;
+                file.</p></div><div class="refsect1"><a name="idm214197582832"></a><h2 id="Examples">Examples<a class="headerlink" title="Permalink to this headline" href="#Examples">¶</a></h2><p>Iterating through the journal:</p><pre class="programlisting">#include &lt;stdio.h&gt;
 #include &lt;string.h&gt;
 #include &lt;systemd/sd-journal.h&gt;
 
@@ -79,7 +79,7 @@ int main(int argc, char *argv[]) {
                 const char *d;
                 size_t l;
 
-                r = sd_journal_get_data(j, "MESSAGE", &amp;d, &amp;l);
+                r = sd_journal_get_data(j, "MESSAGE", (const void **)&amp;d, &amp;l);
                 if (r &lt; 0) {
                         fprintf(stderr, "Failed to read message field: %s\n", strerror(-r));
                         continue;
@@ -89,7 +89,7 @@ int main(int argc, char *argv[]) {
         }
         sd_journal_close(j);
         return 0;
-}</pre></div><div class="refsect1"><a name="idm214184298560"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+}</pre></div><div class="refsect1"><a name="idm214197579328"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
                         <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
                         <a href="sd-journal.html"><span class="citerefentry"><span class="refentrytitle">sd-journal</span>(3)</span></a>,
                         <a href="sd_journal_open.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_open</span>(3)</span></a>,
index f1961f485bd04f1f7c139f5d71b428aa74a44828..8d2ec8cd7db7aaacad26b4debb890fe52c70c8d1 100644 (file)
@@ -19,7 +19,7 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="sd_journal_next"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_journal_next, sd_journal_previous, sd_journal_next_skip, sd_journal_previous_skip, SD_JOURNAL_FOREACH, SD_JOURNAL_FOREACH_BACKWARDS — Advance or set back the read pointer in the journal</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-journal.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_next</b>(</code></td><td>sd_journal *<var class="pdparam">j</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_previous</b>(</code></td><td>sd_journal *<var class="pdparam">j</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_next_skip</b>(</code></td><td>sd_journal *<var class="pdparam">j</var>, </td></tr><tr><td> </td><td>uint64_t <var class="pdparam">skip</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_previous_skip</b>(</code></td><td>sd_journal *<var class="pdparam">j</var>, </td></tr><tr><td> </td><td>uint64_t <var class="pdparam">skip</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef"><b class="fsfunc">SD_JOURNAL_FOREACH</b>(</code></td><td>sd_journal *<var class="pdparam">j</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef"><b class="fsfunc">SD_JOURNAL_FOREACH_BACKWARDS</b>(</code></td><td>sd_journal *<var class="pdparam">j</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214184331424"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_journal_next()</code> advances
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="sd_journal_next"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_journal_next, sd_journal_previous, sd_journal_next_skip, sd_journal_previous_skip, SD_JOURNAL_FOREACH, SD_JOURNAL_FOREACH_BACKWARDS — Advance or set back the read pointer in the journal</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-journal.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_next</b>(</code></td><td>sd_journal *<var class="pdparam">j</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_previous</b>(</code></td><td>sd_journal *<var class="pdparam">j</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_next_skip</b>(</code></td><td>sd_journal *<var class="pdparam">j</var>, </td></tr><tr><td> </td><td>uint64_t <var class="pdparam">skip</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_previous_skip</b>(</code></td><td>sd_journal *<var class="pdparam">j</var>, </td></tr><tr><td> </td><td>uint64_t <var class="pdparam">skip</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef"><b class="fsfunc">SD_JOURNAL_FOREACH</b>(</code></td><td>sd_journal *<var class="pdparam">j</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef"><b class="fsfunc">SD_JOURNAL_FOREACH_BACKWARDS</b>(</code></td><td>sd_journal *<var class="pdparam">j</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214197612176"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_journal_next()</code> advances
                 the read pointer into the journal by one entry. The
                 only argument taken is a journal context object as
                 allocated via
@@ -48,7 +48,7 @@
                 for an example. Similarly,
                 <code class="function">SD_JOURNAL_FOREACH_BACKWARDS()</code>
                 may be used for iterating the journal in reverse
-                order.</p></div><div class="refsect1"><a name="idm214184318032"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>The four calls return the number of entries
+                order.</p></div><div class="refsect1"><a name="idm214197598784"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>The four calls return the number of entries
                 advanced/set back on success or a negative errno-style
                 error code. When the end or beginning of the journal
                 is reached, a number smaller than requested is
                 <code class="function">sd_journal_previous()</code> reach the
                 end/beginning of the journal they will return 0,
                 instead of 1 when they are successful. This should be
-                considered an EOF marker.</p></div><div class="refsect1"><a name="idm214184307648"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p>The <code class="function">sd_journal_next()</code>, <code class="function">sd_journal_previous()</code>,
+                considered an EOF marker.</p></div><div class="refsect1"><a name="idm214197588368"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p>The <code class="function">sd_journal_next()</code>, <code class="function">sd_journal_previous()</code>,
                 <code class="function">sd_journal_next_skip()</code> and
                 <code class="function">sd_journal_previous_skip()</code> interfaces are
                 available as a shared library, which can be compiled and
                 linked to with the
                 <code class="constant">libsystemd</code> <a href="pkg-config.html"><span class="citerefentry"><span class="refentrytitle">pkg-config</span>(1)</span></a>
-                file.</p></div><div class="refsect1"><a name="idm214184302064"></a><h2 id="Examples">Examples<a class="headerlink" title="Permalink to this headline" href="#Examples">¶</a></h2><p>Iterating through the journal:</p><pre class="programlisting">#include &lt;stdio.h&gt;
+                file.</p></div><div class="refsect1"><a name="idm214197582832"></a><h2 id="Examples">Examples<a class="headerlink" title="Permalink to this headline" href="#Examples">¶</a></h2><p>Iterating through the journal:</p><pre class="programlisting">#include &lt;stdio.h&gt;
 #include &lt;string.h&gt;
 #include &lt;systemd/sd-journal.h&gt;
 
@@ -79,7 +79,7 @@ int main(int argc, char *argv[]) {
                 const char *d;
                 size_t l;
 
-                r = sd_journal_get_data(j, "MESSAGE", &amp;d, &amp;l);
+                r = sd_journal_get_data(j, "MESSAGE", (const void **)&amp;d, &amp;l);
                 if (r &lt; 0) {
                         fprintf(stderr, "Failed to read message field: %s\n", strerror(-r));
                         continue;
@@ -89,7 +89,7 @@ int main(int argc, char *argv[]) {
         }
         sd_journal_close(j);
         return 0;
-}</pre></div><div class="refsect1"><a name="idm214184298560"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+}</pre></div><div class="refsect1"><a name="idm214197579328"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
                         <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
                         <a href="sd-journal.html"><span class="citerefentry"><span class="refentrytitle">sd-journal</span>(3)</span></a>,
                         <a href="sd_journal_open.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_open</span>(3)</span></a>,
index ee4ac72a2b06c272b1f3dd0a3367b76282d28e6b..501d37f2f2db68819860d9598f0e8dbe2a27f1df 100644 (file)
@@ -1,5 +1,5 @@
 '\" t
-.TH "SD_JOURNAL_PRINT" "3" "" "systemd 214" "sd_journal_print"
+.TH "SD_JOURNAL_PRINT" "3" "" "systemd 215" "sd_journal_print"
 .\" -----------------------------------------------------------------
 .\" * Define some portability stuff
 .\" -----------------------------------------------------------------
index 7438ea67f80d627ba85244752b53dd06b5d09e13..a80243707201a36ec5dc8e69e489291ecea0b275 100644 (file)
@@ -19,7 +19,7 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="sd_journal_print"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_journal_print, sd_journal_printv, sd_journal_send, sd_journal_sendv, sd_journal_perror, SD_JOURNAL_SUPPRESS_LOCATION — Submit log entries to the journal</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-journal.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_print</b>(</code></td><td>int <var class="pdparam">priority</var>, </td></tr><tr><td> </td><td>const char *<var class="pdparam">format</var>, </td></tr><tr><td> </td><td>...<code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_printv</b>(</code></td><td>int <var class="pdparam">priority</var>, </td></tr><tr><td> </td><td>const char *<var class="pdparam">format</var>, </td></tr><tr><td> </td><td>va_list <var class="pdparam">ap</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_send</b>(</code></td><td>const char *<var class="pdparam">format</var>, </td></tr><tr><td> </td><td>...<code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_sendv</b>(</code></td><td>const struct iovec *<var class="pdparam">iov</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">n</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_perror</b>(</code></td><td>const char *<var class="pdparam">message</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214171911712"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_journal_print()</code> may be
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="sd_journal_print"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_journal_print, sd_journal_printv, sd_journal_send, sd_journal_sendv, sd_journal_perror, SD_JOURNAL_SUPPRESS_LOCATION — Submit log entries to the journal</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-journal.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_print</b>(</code></td><td>int <var class="pdparam">priority</var>, </td></tr><tr><td> </td><td>const char *<var class="pdparam">format</var>, </td></tr><tr><td> </td><td>...<code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_printv</b>(</code></td><td>int <var class="pdparam">priority</var>, </td></tr><tr><td> </td><td>const char *<var class="pdparam">format</var>, </td></tr><tr><td> </td><td>va_list <var class="pdparam">ap</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_send</b>(</code></td><td>const char *<var class="pdparam">format</var>, </td></tr><tr><td> </td><td>...<code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_sendv</b>(</code></td><td>const struct iovec *<var class="pdparam">iov</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">n</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_perror</b>(</code></td><td>const char *<var class="pdparam">message</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214193392656"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_journal_print()</code> may be
                 used to submit simple, plain text log entries to the
                 system journal. The first argument is a priority
                 value. This is followed by a format string and its
@@ -118,26 +118,26 @@ sd_journal_send("MESSAGE=Hello World, this is PID %lu!", (unsigned long) getpid(
                 log entries that are generated via
                 <code class="function">sd_journal_send()</code>. Using
                 <code class="function">syslog()</code> has the benefit of being
-                more portable.</p></div><div class="refsect1"><a name="idm214171870448"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>The four calls return 0 on success or a negative
+                more portable.</p></div><div class="refsect1"><a name="idm214193498576"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>The four calls return 0 on success or a negative
                 errno-style error code. The
                 <a href="errno.html"><span class="citerefentry"><span class="refentrytitle">errno</span>(3)</span></a>
                 variable itself is not altered.</p><p>If
                 <a href="systemd-journald.html"><span class="citerefentry"><span class="refentrytitle">systemd-journald</span>(8)</span></a>
                 is not running (the socket is not present), those
-                functions do nothing, and also return 0.</p></div><div class="refsect1"><a name="idm214166952576"></a><h2 id="Async signal safety">Async signal safety<a class="headerlink" title="Permalink to this headline" href="#Async%20signal%20safety">¶</a></h2><p><code class="function">sd_journal_sendv()</code> is "async signal
+                functions do nothing, and also return 0.</p></div><div class="refsect1"><a name="idm214193495056"></a><h2 id="Async signal safety">Async signal safety<a class="headerlink" title="Permalink to this headline" href="#Async%20signal%20safety">¶</a></h2><p><code class="function">sd_journal_sendv()</code> is "async signal
                 safe" in the meaning of <a href="signal.html"><span class="citerefentry"><span class="refentrytitle">signal</span>(7)</span></a>.
                 </p><p><code class="function">sd_journal_print</code>,
                 <code class="function">sd_journal_printv</code>,
                 <code class="function">sd_journal_send</code>, and
                 <code class="function">sd_journal_perror</code> are
-                not async signal safe.</p></div><div class="refsect1"><a name="idm214166947408"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p>The <code class="function">sd_journal_print()</code>,
+                not async signal safe.</p></div><div class="refsect1"><a name="idm214193489376"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p>The <code class="function">sd_journal_print()</code>,
                 <code class="function">sd_journal_printv()</code>,
                 <code class="function">sd_journal_send()</code> and
                 <code class="function">sd_journal_sendv()</code> interfaces
                 are available as a shared library, which can be compiled
                 and linked to with the
                 <code class="constant">libsystemd</code> <a href="pkg-config.html"><span class="citerefentry"><span class="refentrytitle">pkg-config</span>(1)</span></a>
-                file.</p></div><div class="refsect1"><a name="idm214166942448"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+                file.</p></div><div class="refsect1"><a name="idm214188855456"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
                         <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
                         <a href="sd-journal.html"><span class="citerefentry"><span class="refentrytitle">sd-journal</span>(3)</span></a>,
                         <a href="sd_journal_stream_fd.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_stream_fd</span>(3)</span></a>,
index 7438ea67f80d627ba85244752b53dd06b5d09e13..a80243707201a36ec5dc8e69e489291ecea0b275 100644 (file)
@@ -19,7 +19,7 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="sd_journal_print"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_journal_print, sd_journal_printv, sd_journal_send, sd_journal_sendv, sd_journal_perror, SD_JOURNAL_SUPPRESS_LOCATION — Submit log entries to the journal</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-journal.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_print</b>(</code></td><td>int <var class="pdparam">priority</var>, </td></tr><tr><td> </td><td>const char *<var class="pdparam">format</var>, </td></tr><tr><td> </td><td>...<code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_printv</b>(</code></td><td>int <var class="pdparam">priority</var>, </td></tr><tr><td> </td><td>const char *<var class="pdparam">format</var>, </td></tr><tr><td> </td><td>va_list <var class="pdparam">ap</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_send</b>(</code></td><td>const char *<var class="pdparam">format</var>, </td></tr><tr><td> </td><td>...<code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_sendv</b>(</code></td><td>const struct iovec *<var class="pdparam">iov</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">n</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_perror</b>(</code></td><td>const char *<var class="pdparam">message</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214171911712"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_journal_print()</code> may be
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="sd_journal_print"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_journal_print, sd_journal_printv, sd_journal_send, sd_journal_sendv, sd_journal_perror, SD_JOURNAL_SUPPRESS_LOCATION — Submit log entries to the journal</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-journal.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_print</b>(</code></td><td>int <var class="pdparam">priority</var>, </td></tr><tr><td> </td><td>const char *<var class="pdparam">format</var>, </td></tr><tr><td> </td><td>...<code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_printv</b>(</code></td><td>int <var class="pdparam">priority</var>, </td></tr><tr><td> </td><td>const char *<var class="pdparam">format</var>, </td></tr><tr><td> </td><td>va_list <var class="pdparam">ap</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_send</b>(</code></td><td>const char *<var class="pdparam">format</var>, </td></tr><tr><td> </td><td>...<code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_sendv</b>(</code></td><td>const struct iovec *<var class="pdparam">iov</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">n</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_perror</b>(</code></td><td>const char *<var class="pdparam">message</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214193392656"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_journal_print()</code> may be
                 used to submit simple, plain text log entries to the
                 system journal. The first argument is a priority
                 value. This is followed by a format string and its
@@ -118,26 +118,26 @@ sd_journal_send("MESSAGE=Hello World, this is PID %lu!", (unsigned long) getpid(
                 log entries that are generated via
                 <code class="function">sd_journal_send()</code>. Using
                 <code class="function">syslog()</code> has the benefit of being
-                more portable.</p></div><div class="refsect1"><a name="idm214171870448"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>The four calls return 0 on success or a negative
+                more portable.</p></div><div class="refsect1"><a name="idm214193498576"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>The four calls return 0 on success or a negative
                 errno-style error code. The
                 <a href="errno.html"><span class="citerefentry"><span class="refentrytitle">errno</span>(3)</span></a>
                 variable itself is not altered.</p><p>If
                 <a href="systemd-journald.html"><span class="citerefentry"><span class="refentrytitle">systemd-journald</span>(8)</span></a>
                 is not running (the socket is not present), those
-                functions do nothing, and also return 0.</p></div><div class="refsect1"><a name="idm214166952576"></a><h2 id="Async signal safety">Async signal safety<a class="headerlink" title="Permalink to this headline" href="#Async%20signal%20safety">¶</a></h2><p><code class="function">sd_journal_sendv()</code> is "async signal
+                functions do nothing, and also return 0.</p></div><div class="refsect1"><a name="idm214193495056"></a><h2 id="Async signal safety">Async signal safety<a class="headerlink" title="Permalink to this headline" href="#Async%20signal%20safety">¶</a></h2><p><code class="function">sd_journal_sendv()</code> is "async signal
                 safe" in the meaning of <a href="signal.html"><span class="citerefentry"><span class="refentrytitle">signal</span>(7)</span></a>.
                 </p><p><code class="function">sd_journal_print</code>,
                 <code class="function">sd_journal_printv</code>,
                 <code class="function">sd_journal_send</code>, and
                 <code class="function">sd_journal_perror</code> are
-                not async signal safe.</p></div><div class="refsect1"><a name="idm214166947408"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p>The <code class="function">sd_journal_print()</code>,
+                not async signal safe.</p></div><div class="refsect1"><a name="idm214193489376"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p>The <code class="function">sd_journal_print()</code>,
                 <code class="function">sd_journal_printv()</code>,
                 <code class="function">sd_journal_send()</code> and
                 <code class="function">sd_journal_sendv()</code> interfaces
                 are available as a shared library, which can be compiled
                 and linked to with the
                 <code class="constant">libsystemd</code> <a href="pkg-config.html"><span class="citerefentry"><span class="refentrytitle">pkg-config</span>(1)</span></a>
-                file.</p></div><div class="refsect1"><a name="idm214166942448"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+                file.</p></div><div class="refsect1"><a name="idm214188855456"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
                         <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
                         <a href="sd-journal.html"><span class="citerefentry"><span class="refentrytitle">sd-journal</span>(3)</span></a>,
                         <a href="sd_journal_stream_fd.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_stream_fd</span>(3)</span></a>,
index ef2d13e7f8fb202dfb797bfa1ca8a2f41d233c98..a5d9515e05c50feb63dc590efd804e3d99c93f46 100644 (file)
@@ -19,8 +19,8 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="sd_journal_get_fd"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_journal_get_fd, sd_journal_get_events, sd_journal_get_timeout, sd_journal_process, sd_journal_wait, sd_journal_reliable_fd, SD_JOURNAL_NOP, SD_JOURNAL_APPEND, SD_JOURNAL_INVALIDATE — Journal change notification
-                interface</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-journal.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_get_fd</b>(</code></td><td>sd_journal *<var class="pdparam">j</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_get_events</b>(</code></td><td>sd_journal *<var class="pdparam">j</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_get_timeout</b>(</code></td><td>sd_journal *<var class="pdparam">j</var>, </td></tr><tr><td> </td><td>uint64_t *<var class="pdparam">timeout_usec</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_process</b>(</code></td><td>sd_journal *<var class="pdparam">j</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_wait</b>(</code></td><td>sd_journal *<var class="pdparam">j</var>, </td></tr><tr><td> </td><td>uint64_t <var class="pdparam">timeout_usec</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_reliable_fd</b>(</code></td><td>sd_journal *<var class="pdparam">j</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214189551600"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_journal_get_fd()</code> returns
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="sd_journal_get_fd"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_journal_get_fd, sd_journal_get_events, sd_journal_get_timeout, sd_journal_process, sd_journal_wait, sd_journal_reliable_fd, SD_JOURNAL_NOP, SD_JOURNAL_APPEND, SD_JOURNAL_INVALIDATE — Journal change notification
+                interface</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-journal.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_get_fd</b>(</code></td><td>sd_journal *<var class="pdparam">j</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_get_events</b>(</code></td><td>sd_journal *<var class="pdparam">j</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_get_timeout</b>(</code></td><td>sd_journal *<var class="pdparam">j</var>, </td></tr><tr><td> </td><td>uint64_t *<var class="pdparam">timeout_usec</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_process</b>(</code></td><td>sd_journal *<var class="pdparam">j</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_wait</b>(</code></td><td>sd_journal *<var class="pdparam">j</var>, </td></tr><tr><td> </td><td>uint64_t <var class="pdparam">timeout_usec</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_reliable_fd</b>(</code></td><td>sd_journal *<var class="pdparam">j</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214185830672"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_journal_get_fd()</code> returns
                 a file descriptor that may be asynchronously polled in
                 an external event loop and is signaled as soon as the
                 journal changes, because new entries or files were
@@ -112,7 +112,7 @@ else {
                 no need to invoke this function directly as
                 <code class="function">sd_journal_get_timeout()</code> on these
                 file systems will ask for timeouts explicitly
-                anyway.</p></div><div class="refsect1"><a name="idm214189511696"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p><code class="function">sd_journal_get_fd()</code> returns
+                anyway.</p></div><div class="refsect1"><a name="idm214185790416"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p><code class="function">sd_journal_get_fd()</code> returns
                 a valid file descriptor on success or a negative
                 errno-style error code.</p><p><code class="function">sd_journal_get_events()</code>
                 returns a combination of <code class="constant">POLLIN</code>,
@@ -138,7 +138,7 @@ else {
                 probably refresh their entire display, while in the
                 case of <code class="constant">SD_JOURNAL_APPEND</code>, it is
                 sufficient to simply continue reading at the previous
-                end of the journal.</p></div><div class="refsect1"><a name="idm214184533264"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p>The <code class="function">sd_journal_get_fd()</code>,
+                end of the journal.</p></div><div class="refsect1"><a name="idm214180864000"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p>The <code class="function">sd_journal_get_fd()</code>,
                 <code class="function">sd_journal_get_events()</code>,
                 <code class="function">sd_journal_reliable_fd()</code>,
                 <code class="function">sd_journal_process()</code> and
@@ -146,7 +146,7 @@ else {
                 available as a shared library, which can be compiled and
                 linked to with the
                 <code class="constant">libsystemd</code> <a href="pkg-config.html"><span class="citerefentry"><span class="refentrytitle">pkg-config</span>(1)</span></a>
-                file.</p></div><div class="refsect1"><a name="idm214184527680"></a><h2 id="Examples">Examples<a class="headerlink" title="Permalink to this headline" href="#Examples">¶</a></h2><p>Iterating through the journal, in a live view tracking all changes:</p><pre class="programlisting">#include &lt;stdio.h&gt;
+                file.</p></div><div class="refsect1"><a name="idm214180858416"></a><h2 id="Examples">Examples<a class="headerlink" title="Permalink to this headline" href="#Examples">¶</a></h2><p>Iterating through the journal, in a live view tracking all changes:</p><pre class="programlisting">#include &lt;stdio.h&gt;
 #include &lt;string.h&gt;
 #include &lt;systemd/sd-journal.h&gt;
 
@@ -208,7 +208,7 @@ int wait_for_changes(sd_journal *j) {
         pollfd.events = sd_journal_get_events(j);
         poll(&amp;pollfd, 1, msec);
         return sd_journal_process(j);
-}</pre></div><div class="refsect1"><a name="idm214184521056"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+}</pre></div><div class="refsect1"><a name="idm214180851792"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
                         <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
                         <a href="sd-journal.html"><span class="citerefentry"><span class="refentrytitle">sd-journal</span>(3)</span></a>,
                         <a href="sd_journal_open.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_open</span>(3)</span></a>,
index a3c1daed8d0921649cd1a3b7e813dd1796a6f28d..b18f3911f5e7c38bd74e5a0e7a48dc0ebe35e50f 100644 (file)
@@ -1,5 +1,5 @@
 '\" t
-.TH "SD_JOURNAL_QUERY_UNIQUE" "3" "" "systemd 214" "sd_journal_query_unique"
+.TH "SD_JOURNAL_QUERY_UNIQUE" "3" "" "systemd 215" "sd_journal_query_unique"
 .\" -----------------------------------------------------------------
 .\" * Define some portability stuff
 .\" -----------------------------------------------------------------
index 3c8684d994a027f0bf02ac699550404746797fe3..8419624e21ee409961fc0d86d32be581518ef48f 100644 (file)
@@ -19,7 +19,7 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="sd_journal_query_unique"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_journal_query_unique, sd_journal_enumerate_unique, sd_journal_restart_unique, SD_JOURNAL_FOREACH_UNIQUE — Read unique data fields from the journal</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-journal.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_query_unique</b>(</code></td><td>sd_journal *<var class="pdparam">j</var>, </td></tr><tr><td> </td><td>const char *<var class="pdparam">field</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_enumerate_unique</b>(</code></td><td>sd_journal *<var class="pdparam">j</var>, </td></tr><tr><td> </td><td>const void **<var class="pdparam">data</var>, </td></tr><tr><td> </td><td>size_t *<var class="pdparam">length</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">void <b class="fsfunc">sd_journal_restart_unique</b>(</code></td><td>sd_journal *<var class="pdparam">j</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef"><b class="fsfunc">SD_JOURNAL_FOREACH_UNIQUE</b>(</code></td><td>sd_journal *<var class="pdparam">j</var>, </td></tr><tr><td> </td><td>const void *<var class="pdparam">data</var>, </td></tr><tr><td> </td><td>size_t <var class="pdparam">length</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214170804784"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_journal_query_unique()</code>
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="sd_journal_query_unique"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_journal_query_unique, sd_journal_enumerate_unique, sd_journal_restart_unique, SD_JOURNAL_FOREACH_UNIQUE — Read unique data fields from the journal</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-journal.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_query_unique</b>(</code></td><td>sd_journal *<var class="pdparam">j</var>, </td></tr><tr><td> </td><td>const char *<var class="pdparam">field</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_enumerate_unique</b>(</code></td><td>sd_journal *<var class="pdparam">j</var>, </td></tr><tr><td> </td><td>const void **<var class="pdparam">data</var>, </td></tr><tr><td> </td><td>size_t *<var class="pdparam">length</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">void <b class="fsfunc">sd_journal_restart_unique</b>(</code></td><td>sd_journal *<var class="pdparam">j</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef"><b class="fsfunc">SD_JOURNAL_FOREACH_UNIQUE</b>(</code></td><td>sd_journal *<var class="pdparam">j</var>, </td></tr><tr><td> </td><td>const void *<var class="pdparam">data</var>, </td></tr><tr><td> </td><td>size_t <var class="pdparam">length</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214197431712"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_journal_query_unique()</code>
                 queries the journal for all unique values the
                 specified field can take. It takes two arguments: the
                 journal to query and the field name to look
                 influenced by matches set with
                 <code class="function">sd_journal_add_match()</code> but this
                 might change in a later version of this
-                software.</p></div><div class="refsect1"><a name="idm214170790992"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p><code class="function">sd_journal_query_unique()</code>
+                software.</p></div><div class="refsect1"><a name="idm214197493904"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p><code class="function">sd_journal_query_unique()</code>
                 returns 0 on success or a negative errno-style error
                 code. <code class="function">sd_journal_enumerate_unique()</code>
                 returns a positive integer if the next field data has
                 been read, 0 when no more fields are known, or a
                 negative errno-style error
                 code. <code class="function">sd_journal_restart_unique()</code>
-                returns nothing.</p></div><div class="refsect1"><a name="idm214170780096"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p>The <code class="function">sd_journal_query_unique()</code>,
+                returns nothing.</p></div><div class="refsect1"><a name="idm214197490352"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p>The <code class="function">sd_journal_query_unique()</code>,
                 <code class="function">sd_journal_enumerate_unique()</code> and
                 <code class="function">sd_journal_restart_unique()</code>
                 interfaces are available as a shared library, which can
                 be compiled and linked to with the
                 <code class="constant">libsystemd</code> <a href="pkg-config.html"><span class="citerefentry"><span class="refentrytitle">pkg-config</span>(1)</span></a>
-                file.</p></div><div class="refsect1"><a name="idm214170775216"></a><h2 id="Examples">Examples<a class="headerlink" title="Permalink to this headline" href="#Examples">¶</a></h2><p>Use the
+                file.</p></div><div class="refsect1"><a name="idm214197485472"></a><h2 id="Examples">Examples<a class="headerlink" title="Permalink to this headline" href="#Examples">¶</a></h2><p>Use the
                 <code class="function">SD_JOURNAL_FOREACH_UNIQUE</code> macro
                 to iterate through all values a field of the journal
                 can take. The following example lists all unit names
@@ -101,7 +101,7 @@ int main(int argc, char *argv[]) {
                 printf("%.*s\n", (int) l, (const char*) d);
         sd_journal_close(j);
         return 0;
-}</pre></div><div class="refsect1"><a name="idm214170770608"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+}</pre></div><div class="refsect1"><a name="idm214197482672"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
                         <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
                         <a href="systemd.journal-fields.html"><span class="citerefentry"><span class="refentrytitle">systemd.journal-fields</span>(7)</span></a>,
                         <a href="sd-journal.html"><span class="citerefentry"><span class="refentrytitle">sd-journal</span>(3)</span></a>,
index ef2d13e7f8fb202dfb797bfa1ca8a2f41d233c98..a5d9515e05c50feb63dc590efd804e3d99c93f46 100644 (file)
@@ -19,8 +19,8 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="sd_journal_get_fd"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_journal_get_fd, sd_journal_get_events, sd_journal_get_timeout, sd_journal_process, sd_journal_wait, sd_journal_reliable_fd, SD_JOURNAL_NOP, SD_JOURNAL_APPEND, SD_JOURNAL_INVALIDATE — Journal change notification
-                interface</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-journal.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_get_fd</b>(</code></td><td>sd_journal *<var class="pdparam">j</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_get_events</b>(</code></td><td>sd_journal *<var class="pdparam">j</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_get_timeout</b>(</code></td><td>sd_journal *<var class="pdparam">j</var>, </td></tr><tr><td> </td><td>uint64_t *<var class="pdparam">timeout_usec</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_process</b>(</code></td><td>sd_journal *<var class="pdparam">j</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_wait</b>(</code></td><td>sd_journal *<var class="pdparam">j</var>, </td></tr><tr><td> </td><td>uint64_t <var class="pdparam">timeout_usec</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_reliable_fd</b>(</code></td><td>sd_journal *<var class="pdparam">j</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214189551600"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_journal_get_fd()</code> returns
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="sd_journal_get_fd"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_journal_get_fd, sd_journal_get_events, sd_journal_get_timeout, sd_journal_process, sd_journal_wait, sd_journal_reliable_fd, SD_JOURNAL_NOP, SD_JOURNAL_APPEND, SD_JOURNAL_INVALIDATE — Journal change notification
+                interface</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-journal.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_get_fd</b>(</code></td><td>sd_journal *<var class="pdparam">j</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_get_events</b>(</code></td><td>sd_journal *<var class="pdparam">j</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_get_timeout</b>(</code></td><td>sd_journal *<var class="pdparam">j</var>, </td></tr><tr><td> </td><td>uint64_t *<var class="pdparam">timeout_usec</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_process</b>(</code></td><td>sd_journal *<var class="pdparam">j</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_wait</b>(</code></td><td>sd_journal *<var class="pdparam">j</var>, </td></tr><tr><td> </td><td>uint64_t <var class="pdparam">timeout_usec</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_reliable_fd</b>(</code></td><td>sd_journal *<var class="pdparam">j</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214185830672"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_journal_get_fd()</code> returns
                 a file descriptor that may be asynchronously polled in
                 an external event loop and is signaled as soon as the
                 journal changes, because new entries or files were
@@ -112,7 +112,7 @@ else {
                 no need to invoke this function directly as
                 <code class="function">sd_journal_get_timeout()</code> on these
                 file systems will ask for timeouts explicitly
-                anyway.</p></div><div class="refsect1"><a name="idm214189511696"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p><code class="function">sd_journal_get_fd()</code> returns
+                anyway.</p></div><div class="refsect1"><a name="idm214185790416"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p><code class="function">sd_journal_get_fd()</code> returns
                 a valid file descriptor on success or a negative
                 errno-style error code.</p><p><code class="function">sd_journal_get_events()</code>
                 returns a combination of <code class="constant">POLLIN</code>,
@@ -138,7 +138,7 @@ else {
                 probably refresh their entire display, while in the
                 case of <code class="constant">SD_JOURNAL_APPEND</code>, it is
                 sufficient to simply continue reading at the previous
-                end of the journal.</p></div><div class="refsect1"><a name="idm214184533264"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p>The <code class="function">sd_journal_get_fd()</code>,
+                end of the journal.</p></div><div class="refsect1"><a name="idm214180864000"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p>The <code class="function">sd_journal_get_fd()</code>,
                 <code class="function">sd_journal_get_events()</code>,
                 <code class="function">sd_journal_reliable_fd()</code>,
                 <code class="function">sd_journal_process()</code> and
@@ -146,7 +146,7 @@ else {
                 available as a shared library, which can be compiled and
                 linked to with the
                 <code class="constant">libsystemd</code> <a href="pkg-config.html"><span class="citerefentry"><span class="refentrytitle">pkg-config</span>(1)</span></a>
-                file.</p></div><div class="refsect1"><a name="idm214184527680"></a><h2 id="Examples">Examples<a class="headerlink" title="Permalink to this headline" href="#Examples">¶</a></h2><p>Iterating through the journal, in a live view tracking all changes:</p><pre class="programlisting">#include &lt;stdio.h&gt;
+                file.</p></div><div class="refsect1"><a name="idm214180858416"></a><h2 id="Examples">Examples<a class="headerlink" title="Permalink to this headline" href="#Examples">¶</a></h2><p>Iterating through the journal, in a live view tracking all changes:</p><pre class="programlisting">#include &lt;stdio.h&gt;
 #include &lt;string.h&gt;
 #include &lt;systemd/sd-journal.h&gt;
 
@@ -208,7 +208,7 @@ int wait_for_changes(sd_journal *j) {
         pollfd.events = sd_journal_get_events(j);
         poll(&amp;pollfd, 1, msec);
         return sd_journal_process(j);
-}</pre></div><div class="refsect1"><a name="idm214184521056"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+}</pre></div><div class="refsect1"><a name="idm214180851792"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
                         <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
                         <a href="sd-journal.html"><span class="citerefentry"><span class="refentrytitle">sd-journal</span>(3)</span></a>,
                         <a href="sd_journal_open.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_open</span>(3)</span></a>,
index 55dc8666a2060de63a1de6ebbba90c0e0f31df5d..5eb35328b8224011850385b38c6d4580476e211f 100644 (file)
@@ -19,7 +19,7 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="sd_journal_get_data"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_journal_get_data, sd_journal_enumerate_data, sd_journal_restart_data, SD_JOURNAL_FOREACH_DATA, sd_journal_set_data_threshold, sd_journal_get_data_threshold — Read data fields from the current journal entry</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-journal.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_get_data</b>(</code></td><td>sd_journal *<var class="pdparam">j</var>, </td></tr><tr><td> </td><td>const char *<var class="pdparam">field</var>, </td></tr><tr><td> </td><td>const void **<var class="pdparam">data</var>, </td></tr><tr><td> </td><td>size_t *<var class="pdparam">length</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_enumerate_data</b>(</code></td><td>sd_journal *<var class="pdparam">j</var>, </td></tr><tr><td> </td><td>const void **<var class="pdparam">data</var>, </td></tr><tr><td> </td><td>size_t *<var class="pdparam">length</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">void <b class="fsfunc">sd_journal_restart_data</b>(</code></td><td>sd_journal *<var class="pdparam">j</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef"><b class="fsfunc">SD_JOURNAL_FOREACH_DATA</b>(</code></td><td>sd_journal *<var class="pdparam">j</var>, </td></tr><tr><td> </td><td>const void *<var class="pdparam">data</var>, </td></tr><tr><td> </td><td>size_t <var class="pdparam">length</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_set_data_threshold</b>(</code></td><td>sd_journal *<var class="pdparam">j</var>, </td></tr><tr><td> </td><td>size_t <var class="pdparam">sz</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_get_data_threshold</b>(</code></td><td>sd_journal *<var class="pdparam">j</var>, </td></tr><tr><td> </td><td>size_t *<var class="pdparam">sz</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214187428608"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_journal_get_data()</code> gets
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="sd_journal_get_data"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_journal_get_data, sd_journal_enumerate_data, sd_journal_restart_data, SD_JOURNAL_FOREACH_DATA, sd_journal_set_data_threshold, sd_journal_get_data_threshold — Read data fields from the current journal entry</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-journal.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_get_data</b>(</code></td><td>sd_journal *<var class="pdparam">j</var>, </td></tr><tr><td> </td><td>const char *<var class="pdparam">field</var>, </td></tr><tr><td> </td><td>const void **<var class="pdparam">data</var>, </td></tr><tr><td> </td><td>size_t *<var class="pdparam">length</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_enumerate_data</b>(</code></td><td>sd_journal *<var class="pdparam">j</var>, </td></tr><tr><td> </td><td>const void **<var class="pdparam">data</var>, </td></tr><tr><td> </td><td>size_t *<var class="pdparam">length</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">void <b class="fsfunc">sd_journal_restart_data</b>(</code></td><td>sd_journal *<var class="pdparam">j</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef"><b class="fsfunc">SD_JOURNAL_FOREACH_DATA</b>(</code></td><td>sd_journal *<var class="pdparam">j</var>, </td></tr><tr><td> </td><td>const void *<var class="pdparam">data</var>, </td></tr><tr><td> </td><td>size_t <var class="pdparam">length</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_set_data_threshold</b>(</code></td><td>sd_journal *<var class="pdparam">j</var>, </td></tr><tr><td> </td><td>size_t <var class="pdparam">sz</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_get_data_threshold</b>(</code></td><td>sd_journal *<var class="pdparam">j</var>, </td></tr><tr><td> </td><td>size_t *<var class="pdparam">sz</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214182872080"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_journal_get_data()</code> gets
                 the data object associated with a specific field from
                 the current journal entry. It takes four arguments:
                 the journal context object, a string with the field
@@ -77,7 +77,7 @@
                 having to decompress large compressed data objects in
                 full.</p><p><code class="function">sd_journal_get_data_threshold()</code>
                 returns the currently configured data field size
-                threshold.</p></div><div class="refsect1"><a name="idm214187402928"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p><code class="function">sd_journal_get_data()</code>
+                threshold.</p></div><div class="refsect1"><a name="idm214182845904"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p><code class="function">sd_journal_get_data()</code>
                 returns 0 on success or a negative errno-style error
                 code. If the current entry does not include the
                 specified field, -ENOENT is returned. If
@@ -92,7 +92,7 @@
                 nothing. <code class="function">sd_journal_set_data_threshold()</code>
                 and <code class="function">sd_journal_get_threshold()</code>
                 return 0 on success or a negative errno-style error
-                code.</p></div><div class="refsect1"><a name="idm214187396880"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p>The <code class="function">sd_journal_get_data()</code>,
+                code.</p></div><div class="refsect1"><a name="idm214182839856"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p>The <code class="function">sd_journal_get_data()</code>,
                 <code class="function">sd_journal_enumerate_data()</code>,
                 <code class="function">sd_journal_restart_data()</code>,
                 <code class="function">sd_journal_set_data_threshold()</code>
                 interfaces are available as a shared library, which can
                 be compiled and linked to with the
                 <code class="constant">libsystemd</code> <a href="pkg-config.html"><span class="citerefentry"><span class="refentrytitle">pkg-config</span>(1)</span></a>
-                file.</p></div><div class="refsect1"><a name="idm214187390528"></a><h2 id="Examples">Examples<a class="headerlink" title="Permalink to this headline" href="#Examples">¶</a></h2><p>See
+                file.</p></div><div class="refsect1"><a name="idm214177917392"></a><h2 id="Examples">Examples<a class="headerlink" title="Permalink to this headline" href="#Examples">¶</a></h2><p>See
                 <a href="sd_journal_next.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_next</span>(3)</span></a>
                 for a complete example how to use
                 <code class="function">sd_journal_get_data()</code>.</p><p>Use the
                 entry:</p><pre class="programlisting">...
 int print_fields(sd_journal *j) {
         const void *data;
-        size_t l;
+        size_t length;
         SD_JOURNAL_FOREACH_DATA(j, data, length)
                 printf("%.*s\n", (int) length, data);
 }
-...</pre></div><div class="refsect1"><a name="idm214182417888"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+...</pre></div><div class="refsect1"><a name="idm214177912896"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
                         <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
                         <a href="systemd.journal-fields.html"><span class="citerefentry"><span class="refentrytitle">systemd.journal-fields</span>(7)</span></a>,
                         <a href="sd-journal.html"><span class="citerefentry"><span class="refentrytitle">sd-journal</span>(3)</span></a>,
index 3c8684d994a027f0bf02ac699550404746797fe3..8419624e21ee409961fc0d86d32be581518ef48f 100644 (file)
@@ -19,7 +19,7 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="sd_journal_query_unique"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_journal_query_unique, sd_journal_enumerate_unique, sd_journal_restart_unique, SD_JOURNAL_FOREACH_UNIQUE — Read unique data fields from the journal</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-journal.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_query_unique</b>(</code></td><td>sd_journal *<var class="pdparam">j</var>, </td></tr><tr><td> </td><td>const char *<var class="pdparam">field</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_enumerate_unique</b>(</code></td><td>sd_journal *<var class="pdparam">j</var>, </td></tr><tr><td> </td><td>const void **<var class="pdparam">data</var>, </td></tr><tr><td> </td><td>size_t *<var class="pdparam">length</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">void <b class="fsfunc">sd_journal_restart_unique</b>(</code></td><td>sd_journal *<var class="pdparam">j</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef"><b class="fsfunc">SD_JOURNAL_FOREACH_UNIQUE</b>(</code></td><td>sd_journal *<var class="pdparam">j</var>, </td></tr><tr><td> </td><td>const void *<var class="pdparam">data</var>, </td></tr><tr><td> </td><td>size_t <var class="pdparam">length</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214170804784"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_journal_query_unique()</code>
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="sd_journal_query_unique"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_journal_query_unique, sd_journal_enumerate_unique, sd_journal_restart_unique, SD_JOURNAL_FOREACH_UNIQUE — Read unique data fields from the journal</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-journal.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_query_unique</b>(</code></td><td>sd_journal *<var class="pdparam">j</var>, </td></tr><tr><td> </td><td>const char *<var class="pdparam">field</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_enumerate_unique</b>(</code></td><td>sd_journal *<var class="pdparam">j</var>, </td></tr><tr><td> </td><td>const void **<var class="pdparam">data</var>, </td></tr><tr><td> </td><td>size_t *<var class="pdparam">length</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">void <b class="fsfunc">sd_journal_restart_unique</b>(</code></td><td>sd_journal *<var class="pdparam">j</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef"><b class="fsfunc">SD_JOURNAL_FOREACH_UNIQUE</b>(</code></td><td>sd_journal *<var class="pdparam">j</var>, </td></tr><tr><td> </td><td>const void *<var class="pdparam">data</var>, </td></tr><tr><td> </td><td>size_t <var class="pdparam">length</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214197431712"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_journal_query_unique()</code>
                 queries the journal for all unique values the
                 specified field can take. It takes two arguments: the
                 journal to query and the field name to look
                 influenced by matches set with
                 <code class="function">sd_journal_add_match()</code> but this
                 might change in a later version of this
-                software.</p></div><div class="refsect1"><a name="idm214170790992"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p><code class="function">sd_journal_query_unique()</code>
+                software.</p></div><div class="refsect1"><a name="idm214197493904"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p><code class="function">sd_journal_query_unique()</code>
                 returns 0 on success or a negative errno-style error
                 code. <code class="function">sd_journal_enumerate_unique()</code>
                 returns a positive integer if the next field data has
                 been read, 0 when no more fields are known, or a
                 negative errno-style error
                 code. <code class="function">sd_journal_restart_unique()</code>
-                returns nothing.</p></div><div class="refsect1"><a name="idm214170780096"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p>The <code class="function">sd_journal_query_unique()</code>,
+                returns nothing.</p></div><div class="refsect1"><a name="idm214197490352"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p>The <code class="function">sd_journal_query_unique()</code>,
                 <code class="function">sd_journal_enumerate_unique()</code> and
                 <code class="function">sd_journal_restart_unique()</code>
                 interfaces are available as a shared library, which can
                 be compiled and linked to with the
                 <code class="constant">libsystemd</code> <a href="pkg-config.html"><span class="citerefentry"><span class="refentrytitle">pkg-config</span>(1)</span></a>
-                file.</p></div><div class="refsect1"><a name="idm214170775216"></a><h2 id="Examples">Examples<a class="headerlink" title="Permalink to this headline" href="#Examples">¶</a></h2><p>Use the
+                file.</p></div><div class="refsect1"><a name="idm214197485472"></a><h2 id="Examples">Examples<a class="headerlink" title="Permalink to this headline" href="#Examples">¶</a></h2><p>Use the
                 <code class="function">SD_JOURNAL_FOREACH_UNIQUE</code> macro
                 to iterate through all values a field of the journal
                 can take. The following example lists all unit names
@@ -101,7 +101,7 @@ int main(int argc, char *argv[]) {
                 printf("%.*s\n", (int) l, (const char*) d);
         sd_journal_close(j);
         return 0;
-}</pre></div><div class="refsect1"><a name="idm214170770608"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+}</pre></div><div class="refsect1"><a name="idm214197482672"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
                         <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
                         <a href="systemd.journal-fields.html"><span class="citerefentry"><span class="refentrytitle">systemd.journal-fields</span>(7)</span></a>,
                         <a href="sd-journal.html"><span class="citerefentry"><span class="refentrytitle">sd-journal</span>(3)</span></a>,
index 40d757e129ee32a7bfda5d6d277d8b197c6ac516..63314fe0247f415b7f7a302e93d0f46bb8009185 100644 (file)
@@ -19,8 +19,8 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="sd_journal_seek_head"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_journal_seek_head, sd_journal_seek_tail, sd_journal_seek_monotonic_usec, sd_journal_seek_realtime_usec, sd_journal_seek_cursor — Seek to a position in the
-                journal</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-journal.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_seek_head</b>(</code></td><td>sd_journal *<var class="pdparam">j</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_seek_tail</b>(</code></td><td>sd_journal *<var class="pdparam">j</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_seek_monotonic_usec</b>(</code></td><td>sd_journal *<var class="pdparam">j</var>, </td></tr><tr><td> </td><td>sd_id128_t <var class="pdparam">boot_id</var>, </td></tr><tr><td> </td><td>uint64_t <var class="pdparam">usec</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_seek_realtime_usec</b>(</code></td><td>sd_journal *<var class="pdparam">j</var>, </td></tr><tr><td> </td><td>uint64_t <var class="pdparam">usec</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_seek_cursor</b>(</code></td><td>sd_journal *<var class="pdparam">j</var>, </td></tr><tr><td> </td><td>const char *<var class="pdparam">cursor</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214177237680"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_journal_seek_head()</code>
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="sd_journal_seek_head"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_journal_seek_head, sd_journal_seek_tail, sd_journal_seek_monotonic_usec, sd_journal_seek_realtime_usec, sd_journal_seek_cursor — Seek to a position in the
+                journal</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-journal.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_seek_head</b>(</code></td><td>sd_journal *<var class="pdparam">j</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_seek_tail</b>(</code></td><td>sd_journal *<var class="pdparam">j</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_seek_monotonic_usec</b>(</code></td><td>sd_journal *<var class="pdparam">j</var>, </td></tr><tr><td> </td><td>sd_id128_t <var class="pdparam">boot_id</var>, </td></tr><tr><td> </td><td>uint64_t <var class="pdparam">usec</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_seek_realtime_usec</b>(</code></td><td>sd_journal *<var class="pdparam">j</var>, </td></tr><tr><td> </td><td>uint64_t <var class="pdparam">usec</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_seek_cursor</b>(</code></td><td>sd_journal *<var class="pdparam">j</var>, </td></tr><tr><td> </td><td>const char *<var class="pdparam">cursor</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214186439344"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_journal_seek_head()</code>
                 seeks to the beginning of the journal, i.e. the oldest
                 available entry.</p><p>Similarly,
                 <code class="function">sd_journal_seek_tail()</code> may be
@@ -58,8 +58,8 @@
                 if
                 <a href="sd_journal_previous.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_previous</span>(3)</span></a>
                 is used the closest preceding entry is sought
-                to.</p></div><div class="refsect1"><a name="idm214177223936"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>The functions return 0 on success or a negative
-                errno-style error code.</p></div><div class="refsect1"><a name="idm214177215408"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p>The <code class="function">sd_journal_seek_head()</code>,
+                to.</p></div><div class="refsect1"><a name="idm214186572240"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>The functions return 0 on success or a negative
+                errno-style error code.</p></div><div class="refsect1"><a name="idm214186571056"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p>The <code class="function">sd_journal_seek_head()</code>,
                 <code class="function">sd_journal_seek_tail()</code>,
                 <code class="function">sd_journal_seek_monotonic_usec()</code>,
                 <code class="function">sd_journal_seek_realtime_usec()</code>,
@@ -67,7 +67,7 @@
                 interfaces are available as a shared library, which can
                 be compiled and linked to with the
                 <code class="constant">libsystemd</code> <a href="pkg-config.html"><span class="citerefentry"><span class="refentrytitle">pkg-config</span>(1)</span></a>
-                file.</p></div><div class="refsect1"><a name="idm214177209088"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+                file.</p></div><div class="refsect1"><a name="idm214186564736"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
                         <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
                         <a href="sd-journal.html"><span class="citerefentry"><span class="refentrytitle">sd-journal</span>(3)</span></a>,
                         <a href="sd_journal_open.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_open</span>(3)</span></a>,
index ed786258349b70ba9efed889fd016c266943c468..aabca0bef574d39a84a213b799c9c3ac2630097c 100644 (file)
@@ -1,5 +1,5 @@
 '\" t
-.TH "SD_JOURNAL_SEEK_HEAD" "3" "" "systemd 214" "sd_journal_seek_head"
+.TH "SD_JOURNAL_SEEK_HEAD" "3" "" "systemd 215" "sd_journal_seek_head"
 .\" -----------------------------------------------------------------
 .\" * Define some portability stuff
 .\" -----------------------------------------------------------------
index 40d757e129ee32a7bfda5d6d277d8b197c6ac516..63314fe0247f415b7f7a302e93d0f46bb8009185 100644 (file)
@@ -19,8 +19,8 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="sd_journal_seek_head"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_journal_seek_head, sd_journal_seek_tail, sd_journal_seek_monotonic_usec, sd_journal_seek_realtime_usec, sd_journal_seek_cursor — Seek to a position in the
-                journal</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-journal.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_seek_head</b>(</code></td><td>sd_journal *<var class="pdparam">j</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_seek_tail</b>(</code></td><td>sd_journal *<var class="pdparam">j</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_seek_monotonic_usec</b>(</code></td><td>sd_journal *<var class="pdparam">j</var>, </td></tr><tr><td> </td><td>sd_id128_t <var class="pdparam">boot_id</var>, </td></tr><tr><td> </td><td>uint64_t <var class="pdparam">usec</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_seek_realtime_usec</b>(</code></td><td>sd_journal *<var class="pdparam">j</var>, </td></tr><tr><td> </td><td>uint64_t <var class="pdparam">usec</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_seek_cursor</b>(</code></td><td>sd_journal *<var class="pdparam">j</var>, </td></tr><tr><td> </td><td>const char *<var class="pdparam">cursor</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214177237680"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_journal_seek_head()</code>
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="sd_journal_seek_head"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_journal_seek_head, sd_journal_seek_tail, sd_journal_seek_monotonic_usec, sd_journal_seek_realtime_usec, sd_journal_seek_cursor — Seek to a position in the
+                journal</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-journal.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_seek_head</b>(</code></td><td>sd_journal *<var class="pdparam">j</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_seek_tail</b>(</code></td><td>sd_journal *<var class="pdparam">j</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_seek_monotonic_usec</b>(</code></td><td>sd_journal *<var class="pdparam">j</var>, </td></tr><tr><td> </td><td>sd_id128_t <var class="pdparam">boot_id</var>, </td></tr><tr><td> </td><td>uint64_t <var class="pdparam">usec</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_seek_realtime_usec</b>(</code></td><td>sd_journal *<var class="pdparam">j</var>, </td></tr><tr><td> </td><td>uint64_t <var class="pdparam">usec</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_seek_cursor</b>(</code></td><td>sd_journal *<var class="pdparam">j</var>, </td></tr><tr><td> </td><td>const char *<var class="pdparam">cursor</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214186439344"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_journal_seek_head()</code>
                 seeks to the beginning of the journal, i.e. the oldest
                 available entry.</p><p>Similarly,
                 <code class="function">sd_journal_seek_tail()</code> may be
@@ -58,8 +58,8 @@
                 if
                 <a href="sd_journal_previous.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_previous</span>(3)</span></a>
                 is used the closest preceding entry is sought
-                to.</p></div><div class="refsect1"><a name="idm214177223936"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>The functions return 0 on success or a negative
-                errno-style error code.</p></div><div class="refsect1"><a name="idm214177215408"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p>The <code class="function">sd_journal_seek_head()</code>,
+                to.</p></div><div class="refsect1"><a name="idm214186572240"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>The functions return 0 on success or a negative
+                errno-style error code.</p></div><div class="refsect1"><a name="idm214186571056"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p>The <code class="function">sd_journal_seek_head()</code>,
                 <code class="function">sd_journal_seek_tail()</code>,
                 <code class="function">sd_journal_seek_monotonic_usec()</code>,
                 <code class="function">sd_journal_seek_realtime_usec()</code>,
@@ -67,7 +67,7 @@
                 interfaces are available as a shared library, which can
                 be compiled and linked to with the
                 <code class="constant">libsystemd</code> <a href="pkg-config.html"><span class="citerefentry"><span class="refentrytitle">pkg-config</span>(1)</span></a>
-                file.</p></div><div class="refsect1"><a name="idm214177209088"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+                file.</p></div><div class="refsect1"><a name="idm214186564736"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
                         <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
                         <a href="sd-journal.html"><span class="citerefentry"><span class="refentrytitle">sd-journal</span>(3)</span></a>,
                         <a href="sd_journal_open.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_open</span>(3)</span></a>,
index 40d757e129ee32a7bfda5d6d277d8b197c6ac516..63314fe0247f415b7f7a302e93d0f46bb8009185 100644 (file)
@@ -19,8 +19,8 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="sd_journal_seek_head"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_journal_seek_head, sd_journal_seek_tail, sd_journal_seek_monotonic_usec, sd_journal_seek_realtime_usec, sd_journal_seek_cursor — Seek to a position in the
-                journal</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-journal.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_seek_head</b>(</code></td><td>sd_journal *<var class="pdparam">j</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_seek_tail</b>(</code></td><td>sd_journal *<var class="pdparam">j</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_seek_monotonic_usec</b>(</code></td><td>sd_journal *<var class="pdparam">j</var>, </td></tr><tr><td> </td><td>sd_id128_t <var class="pdparam">boot_id</var>, </td></tr><tr><td> </td><td>uint64_t <var class="pdparam">usec</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_seek_realtime_usec</b>(</code></td><td>sd_journal *<var class="pdparam">j</var>, </td></tr><tr><td> </td><td>uint64_t <var class="pdparam">usec</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_seek_cursor</b>(</code></td><td>sd_journal *<var class="pdparam">j</var>, </td></tr><tr><td> </td><td>const char *<var class="pdparam">cursor</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214177237680"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_journal_seek_head()</code>
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="sd_journal_seek_head"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_journal_seek_head, sd_journal_seek_tail, sd_journal_seek_monotonic_usec, sd_journal_seek_realtime_usec, sd_journal_seek_cursor — Seek to a position in the
+                journal</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-journal.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_seek_head</b>(</code></td><td>sd_journal *<var class="pdparam">j</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_seek_tail</b>(</code></td><td>sd_journal *<var class="pdparam">j</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_seek_monotonic_usec</b>(</code></td><td>sd_journal *<var class="pdparam">j</var>, </td></tr><tr><td> </td><td>sd_id128_t <var class="pdparam">boot_id</var>, </td></tr><tr><td> </td><td>uint64_t <var class="pdparam">usec</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_seek_realtime_usec</b>(</code></td><td>sd_journal *<var class="pdparam">j</var>, </td></tr><tr><td> </td><td>uint64_t <var class="pdparam">usec</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_seek_cursor</b>(</code></td><td>sd_journal *<var class="pdparam">j</var>, </td></tr><tr><td> </td><td>const char *<var class="pdparam">cursor</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214186439344"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_journal_seek_head()</code>
                 seeks to the beginning of the journal, i.e. the oldest
                 available entry.</p><p>Similarly,
                 <code class="function">sd_journal_seek_tail()</code> may be
@@ -58,8 +58,8 @@
                 if
                 <a href="sd_journal_previous.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_previous</span>(3)</span></a>
                 is used the closest preceding entry is sought
-                to.</p></div><div class="refsect1"><a name="idm214177223936"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>The functions return 0 on success or a negative
-                errno-style error code.</p></div><div class="refsect1"><a name="idm214177215408"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p>The <code class="function">sd_journal_seek_head()</code>,
+                to.</p></div><div class="refsect1"><a name="idm214186572240"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>The functions return 0 on success or a negative
+                errno-style error code.</p></div><div class="refsect1"><a name="idm214186571056"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p>The <code class="function">sd_journal_seek_head()</code>,
                 <code class="function">sd_journal_seek_tail()</code>,
                 <code class="function">sd_journal_seek_monotonic_usec()</code>,
                 <code class="function">sd_journal_seek_realtime_usec()</code>,
@@ -67,7 +67,7 @@
                 interfaces are available as a shared library, which can
                 be compiled and linked to with the
                 <code class="constant">libsystemd</code> <a href="pkg-config.html"><span class="citerefentry"><span class="refentrytitle">pkg-config</span>(1)</span></a>
-                file.</p></div><div class="refsect1"><a name="idm214177209088"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+                file.</p></div><div class="refsect1"><a name="idm214186564736"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
                         <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
                         <a href="sd-journal.html"><span class="citerefentry"><span class="refentrytitle">sd-journal</span>(3)</span></a>,
                         <a href="sd_journal_open.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_open</span>(3)</span></a>,
index 40d757e129ee32a7bfda5d6d277d8b197c6ac516..63314fe0247f415b7f7a302e93d0f46bb8009185 100644 (file)
@@ -19,8 +19,8 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="sd_journal_seek_head"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_journal_seek_head, sd_journal_seek_tail, sd_journal_seek_monotonic_usec, sd_journal_seek_realtime_usec, sd_journal_seek_cursor — Seek to a position in the
-                journal</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-journal.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_seek_head</b>(</code></td><td>sd_journal *<var class="pdparam">j</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_seek_tail</b>(</code></td><td>sd_journal *<var class="pdparam">j</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_seek_monotonic_usec</b>(</code></td><td>sd_journal *<var class="pdparam">j</var>, </td></tr><tr><td> </td><td>sd_id128_t <var class="pdparam">boot_id</var>, </td></tr><tr><td> </td><td>uint64_t <var class="pdparam">usec</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_seek_realtime_usec</b>(</code></td><td>sd_journal *<var class="pdparam">j</var>, </td></tr><tr><td> </td><td>uint64_t <var class="pdparam">usec</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_seek_cursor</b>(</code></td><td>sd_journal *<var class="pdparam">j</var>, </td></tr><tr><td> </td><td>const char *<var class="pdparam">cursor</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214177237680"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_journal_seek_head()</code>
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="sd_journal_seek_head"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_journal_seek_head, sd_journal_seek_tail, sd_journal_seek_monotonic_usec, sd_journal_seek_realtime_usec, sd_journal_seek_cursor — Seek to a position in the
+                journal</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-journal.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_seek_head</b>(</code></td><td>sd_journal *<var class="pdparam">j</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_seek_tail</b>(</code></td><td>sd_journal *<var class="pdparam">j</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_seek_monotonic_usec</b>(</code></td><td>sd_journal *<var class="pdparam">j</var>, </td></tr><tr><td> </td><td>sd_id128_t <var class="pdparam">boot_id</var>, </td></tr><tr><td> </td><td>uint64_t <var class="pdparam">usec</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_seek_realtime_usec</b>(</code></td><td>sd_journal *<var class="pdparam">j</var>, </td></tr><tr><td> </td><td>uint64_t <var class="pdparam">usec</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_seek_cursor</b>(</code></td><td>sd_journal *<var class="pdparam">j</var>, </td></tr><tr><td> </td><td>const char *<var class="pdparam">cursor</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214186439344"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_journal_seek_head()</code>
                 seeks to the beginning of the journal, i.e. the oldest
                 available entry.</p><p>Similarly,
                 <code class="function">sd_journal_seek_tail()</code> may be
@@ -58,8 +58,8 @@
                 if
                 <a href="sd_journal_previous.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_previous</span>(3)</span></a>
                 is used the closest preceding entry is sought
-                to.</p></div><div class="refsect1"><a name="idm214177223936"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>The functions return 0 on success or a negative
-                errno-style error code.</p></div><div class="refsect1"><a name="idm214177215408"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p>The <code class="function">sd_journal_seek_head()</code>,
+                to.</p></div><div class="refsect1"><a name="idm214186572240"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>The functions return 0 on success or a negative
+                errno-style error code.</p></div><div class="refsect1"><a name="idm214186571056"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p>The <code class="function">sd_journal_seek_head()</code>,
                 <code class="function">sd_journal_seek_tail()</code>,
                 <code class="function">sd_journal_seek_monotonic_usec()</code>,
                 <code class="function">sd_journal_seek_realtime_usec()</code>,
@@ -67,7 +67,7 @@
                 interfaces are available as a shared library, which can
                 be compiled and linked to with the
                 <code class="constant">libsystemd</code> <a href="pkg-config.html"><span class="citerefentry"><span class="refentrytitle">pkg-config</span>(1)</span></a>
-                file.</p></div><div class="refsect1"><a name="idm214177209088"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+                file.</p></div><div class="refsect1"><a name="idm214186564736"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
                         <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
                         <a href="sd-journal.html"><span class="citerefentry"><span class="refentrytitle">sd-journal</span>(3)</span></a>,
                         <a href="sd_journal_open.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_open</span>(3)</span></a>,
index 40d757e129ee32a7bfda5d6d277d8b197c6ac516..63314fe0247f415b7f7a302e93d0f46bb8009185 100644 (file)
@@ -19,8 +19,8 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="sd_journal_seek_head"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_journal_seek_head, sd_journal_seek_tail, sd_journal_seek_monotonic_usec, sd_journal_seek_realtime_usec, sd_journal_seek_cursor — Seek to a position in the
-                journal</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-journal.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_seek_head</b>(</code></td><td>sd_journal *<var class="pdparam">j</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_seek_tail</b>(</code></td><td>sd_journal *<var class="pdparam">j</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_seek_monotonic_usec</b>(</code></td><td>sd_journal *<var class="pdparam">j</var>, </td></tr><tr><td> </td><td>sd_id128_t <var class="pdparam">boot_id</var>, </td></tr><tr><td> </td><td>uint64_t <var class="pdparam">usec</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_seek_realtime_usec</b>(</code></td><td>sd_journal *<var class="pdparam">j</var>, </td></tr><tr><td> </td><td>uint64_t <var class="pdparam">usec</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_seek_cursor</b>(</code></td><td>sd_journal *<var class="pdparam">j</var>, </td></tr><tr><td> </td><td>const char *<var class="pdparam">cursor</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214177237680"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_journal_seek_head()</code>
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="sd_journal_seek_head"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_journal_seek_head, sd_journal_seek_tail, sd_journal_seek_monotonic_usec, sd_journal_seek_realtime_usec, sd_journal_seek_cursor — Seek to a position in the
+                journal</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-journal.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_seek_head</b>(</code></td><td>sd_journal *<var class="pdparam">j</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_seek_tail</b>(</code></td><td>sd_journal *<var class="pdparam">j</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_seek_monotonic_usec</b>(</code></td><td>sd_journal *<var class="pdparam">j</var>, </td></tr><tr><td> </td><td>sd_id128_t <var class="pdparam">boot_id</var>, </td></tr><tr><td> </td><td>uint64_t <var class="pdparam">usec</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_seek_realtime_usec</b>(</code></td><td>sd_journal *<var class="pdparam">j</var>, </td></tr><tr><td> </td><td>uint64_t <var class="pdparam">usec</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_seek_cursor</b>(</code></td><td>sd_journal *<var class="pdparam">j</var>, </td></tr><tr><td> </td><td>const char *<var class="pdparam">cursor</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214186439344"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_journal_seek_head()</code>
                 seeks to the beginning of the journal, i.e. the oldest
                 available entry.</p><p>Similarly,
                 <code class="function">sd_journal_seek_tail()</code> may be
@@ -58,8 +58,8 @@
                 if
                 <a href="sd_journal_previous.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_previous</span>(3)</span></a>
                 is used the closest preceding entry is sought
-                to.</p></div><div class="refsect1"><a name="idm214177223936"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>The functions return 0 on success or a negative
-                errno-style error code.</p></div><div class="refsect1"><a name="idm214177215408"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p>The <code class="function">sd_journal_seek_head()</code>,
+                to.</p></div><div class="refsect1"><a name="idm214186572240"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>The functions return 0 on success or a negative
+                errno-style error code.</p></div><div class="refsect1"><a name="idm214186571056"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p>The <code class="function">sd_journal_seek_head()</code>,
                 <code class="function">sd_journal_seek_tail()</code>,
                 <code class="function">sd_journal_seek_monotonic_usec()</code>,
                 <code class="function">sd_journal_seek_realtime_usec()</code>,
@@ -67,7 +67,7 @@
                 interfaces are available as a shared library, which can
                 be compiled and linked to with the
                 <code class="constant">libsystemd</code> <a href="pkg-config.html"><span class="citerefentry"><span class="refentrytitle">pkg-config</span>(1)</span></a>
-                file.</p></div><div class="refsect1"><a name="idm214177209088"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+                file.</p></div><div class="refsect1"><a name="idm214186564736"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
                         <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
                         <a href="sd-journal.html"><span class="citerefentry"><span class="refentrytitle">sd-journal</span>(3)</span></a>,
                         <a href="sd_journal_open.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_open</span>(3)</span></a>,
index 7438ea67f80d627ba85244752b53dd06b5d09e13..a80243707201a36ec5dc8e69e489291ecea0b275 100644 (file)
@@ -19,7 +19,7 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="sd_journal_print"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_journal_print, sd_journal_printv, sd_journal_send, sd_journal_sendv, sd_journal_perror, SD_JOURNAL_SUPPRESS_LOCATION — Submit log entries to the journal</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-journal.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_print</b>(</code></td><td>int <var class="pdparam">priority</var>, </td></tr><tr><td> </td><td>const char *<var class="pdparam">format</var>, </td></tr><tr><td> </td><td>...<code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_printv</b>(</code></td><td>int <var class="pdparam">priority</var>, </td></tr><tr><td> </td><td>const char *<var class="pdparam">format</var>, </td></tr><tr><td> </td><td>va_list <var class="pdparam">ap</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_send</b>(</code></td><td>const char *<var class="pdparam">format</var>, </td></tr><tr><td> </td><td>...<code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_sendv</b>(</code></td><td>const struct iovec *<var class="pdparam">iov</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">n</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_perror</b>(</code></td><td>const char *<var class="pdparam">message</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214171911712"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_journal_print()</code> may be
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="sd_journal_print"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_journal_print, sd_journal_printv, sd_journal_send, sd_journal_sendv, sd_journal_perror, SD_JOURNAL_SUPPRESS_LOCATION — Submit log entries to the journal</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-journal.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_print</b>(</code></td><td>int <var class="pdparam">priority</var>, </td></tr><tr><td> </td><td>const char *<var class="pdparam">format</var>, </td></tr><tr><td> </td><td>...<code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_printv</b>(</code></td><td>int <var class="pdparam">priority</var>, </td></tr><tr><td> </td><td>const char *<var class="pdparam">format</var>, </td></tr><tr><td> </td><td>va_list <var class="pdparam">ap</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_send</b>(</code></td><td>const char *<var class="pdparam">format</var>, </td></tr><tr><td> </td><td>...<code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_sendv</b>(</code></td><td>const struct iovec *<var class="pdparam">iov</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">n</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_perror</b>(</code></td><td>const char *<var class="pdparam">message</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214193392656"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_journal_print()</code> may be
                 used to submit simple, plain text log entries to the
                 system journal. The first argument is a priority
                 value. This is followed by a format string and its
@@ -118,26 +118,26 @@ sd_journal_send("MESSAGE=Hello World, this is PID %lu!", (unsigned long) getpid(
                 log entries that are generated via
                 <code class="function">sd_journal_send()</code>. Using
                 <code class="function">syslog()</code> has the benefit of being
-                more portable.</p></div><div class="refsect1"><a name="idm214171870448"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>The four calls return 0 on success or a negative
+                more portable.</p></div><div class="refsect1"><a name="idm214193498576"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>The four calls return 0 on success or a negative
                 errno-style error code. The
                 <a href="errno.html"><span class="citerefentry"><span class="refentrytitle">errno</span>(3)</span></a>
                 variable itself is not altered.</p><p>If
                 <a href="systemd-journald.html"><span class="citerefentry"><span class="refentrytitle">systemd-journald</span>(8)</span></a>
                 is not running (the socket is not present), those
-                functions do nothing, and also return 0.</p></div><div class="refsect1"><a name="idm214166952576"></a><h2 id="Async signal safety">Async signal safety<a class="headerlink" title="Permalink to this headline" href="#Async%20signal%20safety">¶</a></h2><p><code class="function">sd_journal_sendv()</code> is "async signal
+                functions do nothing, and also return 0.</p></div><div class="refsect1"><a name="idm214193495056"></a><h2 id="Async signal safety">Async signal safety<a class="headerlink" title="Permalink to this headline" href="#Async%20signal%20safety">¶</a></h2><p><code class="function">sd_journal_sendv()</code> is "async signal
                 safe" in the meaning of <a href="signal.html"><span class="citerefentry"><span class="refentrytitle">signal</span>(7)</span></a>.
                 </p><p><code class="function">sd_journal_print</code>,
                 <code class="function">sd_journal_printv</code>,
                 <code class="function">sd_journal_send</code>, and
                 <code class="function">sd_journal_perror</code> are
-                not async signal safe.</p></div><div class="refsect1"><a name="idm214166947408"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p>The <code class="function">sd_journal_print()</code>,
+                not async signal safe.</p></div><div class="refsect1"><a name="idm214193489376"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p>The <code class="function">sd_journal_print()</code>,
                 <code class="function">sd_journal_printv()</code>,
                 <code class="function">sd_journal_send()</code> and
                 <code class="function">sd_journal_sendv()</code> interfaces
                 are available as a shared library, which can be compiled
                 and linked to with the
                 <code class="constant">libsystemd</code> <a href="pkg-config.html"><span class="citerefentry"><span class="refentrytitle">pkg-config</span>(1)</span></a>
-                file.</p></div><div class="refsect1"><a name="idm214166942448"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+                file.</p></div><div class="refsect1"><a name="idm214188855456"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
                         <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
                         <a href="sd-journal.html"><span class="citerefentry"><span class="refentrytitle">sd-journal</span>(3)</span></a>,
                         <a href="sd_journal_stream_fd.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_stream_fd</span>(3)</span></a>,
index 7438ea67f80d627ba85244752b53dd06b5d09e13..a80243707201a36ec5dc8e69e489291ecea0b275 100644 (file)
@@ -19,7 +19,7 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="sd_journal_print"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_journal_print, sd_journal_printv, sd_journal_send, sd_journal_sendv, sd_journal_perror, SD_JOURNAL_SUPPRESS_LOCATION — Submit log entries to the journal</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-journal.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_print</b>(</code></td><td>int <var class="pdparam">priority</var>, </td></tr><tr><td> </td><td>const char *<var class="pdparam">format</var>, </td></tr><tr><td> </td><td>...<code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_printv</b>(</code></td><td>int <var class="pdparam">priority</var>, </td></tr><tr><td> </td><td>const char *<var class="pdparam">format</var>, </td></tr><tr><td> </td><td>va_list <var class="pdparam">ap</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_send</b>(</code></td><td>const char *<var class="pdparam">format</var>, </td></tr><tr><td> </td><td>...<code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_sendv</b>(</code></td><td>const struct iovec *<var class="pdparam">iov</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">n</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_perror</b>(</code></td><td>const char *<var class="pdparam">message</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214171911712"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_journal_print()</code> may be
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="sd_journal_print"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_journal_print, sd_journal_printv, sd_journal_send, sd_journal_sendv, sd_journal_perror, SD_JOURNAL_SUPPRESS_LOCATION — Submit log entries to the journal</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-journal.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_print</b>(</code></td><td>int <var class="pdparam">priority</var>, </td></tr><tr><td> </td><td>const char *<var class="pdparam">format</var>, </td></tr><tr><td> </td><td>...<code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_printv</b>(</code></td><td>int <var class="pdparam">priority</var>, </td></tr><tr><td> </td><td>const char *<var class="pdparam">format</var>, </td></tr><tr><td> </td><td>va_list <var class="pdparam">ap</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_send</b>(</code></td><td>const char *<var class="pdparam">format</var>, </td></tr><tr><td> </td><td>...<code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_sendv</b>(</code></td><td>const struct iovec *<var class="pdparam">iov</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">n</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_perror</b>(</code></td><td>const char *<var class="pdparam">message</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214193392656"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_journal_print()</code> may be
                 used to submit simple, plain text log entries to the
                 system journal. The first argument is a priority
                 value. This is followed by a format string and its
@@ -118,26 +118,26 @@ sd_journal_send("MESSAGE=Hello World, this is PID %lu!", (unsigned long) getpid(
                 log entries that are generated via
                 <code class="function">sd_journal_send()</code>. Using
                 <code class="function">syslog()</code> has the benefit of being
-                more portable.</p></div><div class="refsect1"><a name="idm214171870448"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>The four calls return 0 on success or a negative
+                more portable.</p></div><div class="refsect1"><a name="idm214193498576"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>The four calls return 0 on success or a negative
                 errno-style error code. The
                 <a href="errno.html"><span class="citerefentry"><span class="refentrytitle">errno</span>(3)</span></a>
                 variable itself is not altered.</p><p>If
                 <a href="systemd-journald.html"><span class="citerefentry"><span class="refentrytitle">systemd-journald</span>(8)</span></a>
                 is not running (the socket is not present), those
-                functions do nothing, and also return 0.</p></div><div class="refsect1"><a name="idm214166952576"></a><h2 id="Async signal safety">Async signal safety<a class="headerlink" title="Permalink to this headline" href="#Async%20signal%20safety">¶</a></h2><p><code class="function">sd_journal_sendv()</code> is "async signal
+                functions do nothing, and also return 0.</p></div><div class="refsect1"><a name="idm214193495056"></a><h2 id="Async signal safety">Async signal safety<a class="headerlink" title="Permalink to this headline" href="#Async%20signal%20safety">¶</a></h2><p><code class="function">sd_journal_sendv()</code> is "async signal
                 safe" in the meaning of <a href="signal.html"><span class="citerefentry"><span class="refentrytitle">signal</span>(7)</span></a>.
                 </p><p><code class="function">sd_journal_print</code>,
                 <code class="function">sd_journal_printv</code>,
                 <code class="function">sd_journal_send</code>, and
                 <code class="function">sd_journal_perror</code> are
-                not async signal safe.</p></div><div class="refsect1"><a name="idm214166947408"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p>The <code class="function">sd_journal_print()</code>,
+                not async signal safe.</p></div><div class="refsect1"><a name="idm214193489376"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p>The <code class="function">sd_journal_print()</code>,
                 <code class="function">sd_journal_printv()</code>,
                 <code class="function">sd_journal_send()</code> and
                 <code class="function">sd_journal_sendv()</code> interfaces
                 are available as a shared library, which can be compiled
                 and linked to with the
                 <code class="constant">libsystemd</code> <a href="pkg-config.html"><span class="citerefentry"><span class="refentrytitle">pkg-config</span>(1)</span></a>
-                file.</p></div><div class="refsect1"><a name="idm214166942448"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+                file.</p></div><div class="refsect1"><a name="idm214188855456"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
                         <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
                         <a href="sd-journal.html"><span class="citerefentry"><span class="refentrytitle">sd-journal</span>(3)</span></a>,
                         <a href="sd_journal_stream_fd.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_stream_fd</span>(3)</span></a>,
index 55dc8666a2060de63a1de6ebbba90c0e0f31df5d..5eb35328b8224011850385b38c6d4580476e211f 100644 (file)
@@ -19,7 +19,7 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="sd_journal_get_data"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_journal_get_data, sd_journal_enumerate_data, sd_journal_restart_data, SD_JOURNAL_FOREACH_DATA, sd_journal_set_data_threshold, sd_journal_get_data_threshold — Read data fields from the current journal entry</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-journal.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_get_data</b>(</code></td><td>sd_journal *<var class="pdparam">j</var>, </td></tr><tr><td> </td><td>const char *<var class="pdparam">field</var>, </td></tr><tr><td> </td><td>const void **<var class="pdparam">data</var>, </td></tr><tr><td> </td><td>size_t *<var class="pdparam">length</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_enumerate_data</b>(</code></td><td>sd_journal *<var class="pdparam">j</var>, </td></tr><tr><td> </td><td>const void **<var class="pdparam">data</var>, </td></tr><tr><td> </td><td>size_t *<var class="pdparam">length</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">void <b class="fsfunc">sd_journal_restart_data</b>(</code></td><td>sd_journal *<var class="pdparam">j</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef"><b class="fsfunc">SD_JOURNAL_FOREACH_DATA</b>(</code></td><td>sd_journal *<var class="pdparam">j</var>, </td></tr><tr><td> </td><td>const void *<var class="pdparam">data</var>, </td></tr><tr><td> </td><td>size_t <var class="pdparam">length</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_set_data_threshold</b>(</code></td><td>sd_journal *<var class="pdparam">j</var>, </td></tr><tr><td> </td><td>size_t <var class="pdparam">sz</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_get_data_threshold</b>(</code></td><td>sd_journal *<var class="pdparam">j</var>, </td></tr><tr><td> </td><td>size_t *<var class="pdparam">sz</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214187428608"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_journal_get_data()</code> gets
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="sd_journal_get_data"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_journal_get_data, sd_journal_enumerate_data, sd_journal_restart_data, SD_JOURNAL_FOREACH_DATA, sd_journal_set_data_threshold, sd_journal_get_data_threshold — Read data fields from the current journal entry</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-journal.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_get_data</b>(</code></td><td>sd_journal *<var class="pdparam">j</var>, </td></tr><tr><td> </td><td>const char *<var class="pdparam">field</var>, </td></tr><tr><td> </td><td>const void **<var class="pdparam">data</var>, </td></tr><tr><td> </td><td>size_t *<var class="pdparam">length</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_enumerate_data</b>(</code></td><td>sd_journal *<var class="pdparam">j</var>, </td></tr><tr><td> </td><td>const void **<var class="pdparam">data</var>, </td></tr><tr><td> </td><td>size_t *<var class="pdparam">length</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">void <b class="fsfunc">sd_journal_restart_data</b>(</code></td><td>sd_journal *<var class="pdparam">j</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef"><b class="fsfunc">SD_JOURNAL_FOREACH_DATA</b>(</code></td><td>sd_journal *<var class="pdparam">j</var>, </td></tr><tr><td> </td><td>const void *<var class="pdparam">data</var>, </td></tr><tr><td> </td><td>size_t <var class="pdparam">length</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_set_data_threshold</b>(</code></td><td>sd_journal *<var class="pdparam">j</var>, </td></tr><tr><td> </td><td>size_t <var class="pdparam">sz</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_get_data_threshold</b>(</code></td><td>sd_journal *<var class="pdparam">j</var>, </td></tr><tr><td> </td><td>size_t *<var class="pdparam">sz</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214182872080"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_journal_get_data()</code> gets
                 the data object associated with a specific field from
                 the current journal entry. It takes four arguments:
                 the journal context object, a string with the field
@@ -77,7 +77,7 @@
                 having to decompress large compressed data objects in
                 full.</p><p><code class="function">sd_journal_get_data_threshold()</code>
                 returns the currently configured data field size
-                threshold.</p></div><div class="refsect1"><a name="idm214187402928"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p><code class="function">sd_journal_get_data()</code>
+                threshold.</p></div><div class="refsect1"><a name="idm214182845904"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p><code class="function">sd_journal_get_data()</code>
                 returns 0 on success or a negative errno-style error
                 code. If the current entry does not include the
                 specified field, -ENOENT is returned. If
@@ -92,7 +92,7 @@
                 nothing. <code class="function">sd_journal_set_data_threshold()</code>
                 and <code class="function">sd_journal_get_threshold()</code>
                 return 0 on success or a negative errno-style error
-                code.</p></div><div class="refsect1"><a name="idm214187396880"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p>The <code class="function">sd_journal_get_data()</code>,
+                code.</p></div><div class="refsect1"><a name="idm214182839856"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p>The <code class="function">sd_journal_get_data()</code>,
                 <code class="function">sd_journal_enumerate_data()</code>,
                 <code class="function">sd_journal_restart_data()</code>,
                 <code class="function">sd_journal_set_data_threshold()</code>
                 interfaces are available as a shared library, which can
                 be compiled and linked to with the
                 <code class="constant">libsystemd</code> <a href="pkg-config.html"><span class="citerefentry"><span class="refentrytitle">pkg-config</span>(1)</span></a>
-                file.</p></div><div class="refsect1"><a name="idm214187390528"></a><h2 id="Examples">Examples<a class="headerlink" title="Permalink to this headline" href="#Examples">¶</a></h2><p>See
+                file.</p></div><div class="refsect1"><a name="idm214177917392"></a><h2 id="Examples">Examples<a class="headerlink" title="Permalink to this headline" href="#Examples">¶</a></h2><p>See
                 <a href="sd_journal_next.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_next</span>(3)</span></a>
                 for a complete example how to use
                 <code class="function">sd_journal_get_data()</code>.</p><p>Use the
                 entry:</p><pre class="programlisting">...
 int print_fields(sd_journal *j) {
         const void *data;
-        size_t l;
+        size_t length;
         SD_JOURNAL_FOREACH_DATA(j, data, length)
                 printf("%.*s\n", (int) length, data);
 }
-...</pre></div><div class="refsect1"><a name="idm214182417888"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+...</pre></div><div class="refsect1"><a name="idm214177912896"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
                         <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
                         <a href="systemd.journal-fields.html"><span class="citerefentry"><span class="refentrytitle">systemd.journal-fields</span>(7)</span></a>,
                         <a href="sd-journal.html"><span class="citerefentry"><span class="refentrytitle">sd-journal</span>(3)</span></a>,
index d9788a7b48ffb2bb985a3453842d266b667778ab..00741b0081d790b36830b61a5c4fc13552f9ac95 100644 (file)
@@ -1,5 +1,5 @@
 '\" t
-.TH "SD_JOURNAL_STREAM_FD" "3" "" "systemd 214" "sd_journal_stream_fd"
+.TH "SD_JOURNAL_STREAM_FD" "3" "" "systemd 215" "sd_journal_stream_fd"
 .\" -----------------------------------------------------------------
 .\" * Define some portability stuff
 .\" -----------------------------------------------------------------
index 860d4a4b547d174b10e36d57c35d8e0be6ecedae..8c6c4359c3b13535a0e27df96c156ac34f2e6ca4 100644 (file)
@@ -19,7 +19,7 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="sd_journal_stream_fd"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_journal_stream_fd — Create log stream file descriptor to the journal</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-journal.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_stream_fd</b>(</code></td><td>const char *<var class="pdparam">identifier</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">priority</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">level_prefix</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214187843248"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_journal_stream_fd()</code> may
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="sd_journal_stream_fd"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_journal_stream_fd — Create log stream file descriptor to the journal</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-journal.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_stream_fd</b>(</code></td><td>const char *<var class="pdparam">identifier</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">priority</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">level_prefix</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214173639024"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_journal_stream_fd()</code> may
                 be used to create a log stream file descriptor. Log
                 messages written to this file descriptor as simple
                 newline-separated text strings are written to the
                 <a href="sd-daemon.html"><span class="citerefentry"><span class="refentrytitle">sd-daemon</span>(3)</span></a>
                 for more information.</p><p>It is recommended that applications log UTF-8
                 messages only with this API, but this is not
-                enforced.</p></div><div class="refsect1"><a name="idm214186429328"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>The call returns a valid write-only file descriptor on success or a
-                negative errno-style error code.</p></div><div class="refsect1"><a name="idm214186004144"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p>The <code class="function">sd_journal_stream_fd()</code>
+                enforced.</p></div><div class="refsect1"><a name="idm214173632368"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>The call returns a valid write-only file descriptor on success or a
+                negative errno-style error code.</p></div><div class="refsect1"><a name="idm214173631056"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p>The <code class="function">sd_journal_stream_fd()</code>
                 interface is available as a shared library, which can
                 be compiled and linked to with the
                 <code class="constant">libsystemd</code> <a href="pkg-config.html"><span class="citerefentry"><span class="refentrytitle">pkg-config</span>(1)</span></a>
-                file.</p></div><div class="refsect1"><a name="idm214184631376"></a><h2 id="Examples">Examples<a class="headerlink" title="Permalink to this headline" href="#Examples">¶</a></h2><p>Creating a log stream suitable for
+                file.</p></div><div class="refsect1"><a name="idm214173627664"></a><h2 id="Examples">Examples<a class="headerlink" title="Permalink to this headline" href="#Examples">¶</a></h2><p>Creating a log stream suitable for
                 <a href="fprintf.html"><span class="citerefentry"><span class="refentrytitle">fprintf</span>(3)</span></a>:</p><pre class="programlisting">#include &lt;syslog.h&gt;
 #include &lt;stdio.h&gt;
 #include &lt;string.h&gt;
@@ -79,7 +79,7 @@ int main(int argc, char *argv[]) {
         fprintf(log, SD_WARNING "This is a warning!\n");
         fclose(log);
         return 0;
-}</pre></div><div class="refsect1"><a name="idm214186692464"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+}</pre></div><div class="refsect1"><a name="idm214173625024"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
                         <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
                         <a href="sd-journal.html"><span class="citerefentry"><span class="refentrytitle">sd-journal</span>(3)</span></a>,
                         <a href="sd-daemon.html"><span class="citerefentry"><span class="refentrytitle">sd-daemon</span>(3)</span></a>,
index 8cf96835e47bea5298dd1920e9d327b63d3fd6e7..c1bcbb4d211530eff0fe4d4c9f16fb86dfc552a2 100644 (file)
@@ -19,7 +19,7 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="sd_journal_get_cursor"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_journal_get_cursor, sd_journal_test_cursor — Get cursor string for or test cursor string against the current journal entry</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-journal.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_get_cursor</b>(</code></td><td>sd_journal *<var class="pdparam">j</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">cursor</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_test_cursor</b>(</code></td><td>sd_journal *<var class="pdparam">j</var>, </td></tr><tr><td> </td><td>const char *<var class="pdparam">cursor</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214192150240"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_journal_get_cursor()</code>
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="sd_journal_get_cursor"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_journal_get_cursor, sd_journal_test_cursor — Get cursor string for or test cursor string against the current journal entry</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-journal.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_get_cursor</b>(</code></td><td>sd_journal *<var class="pdparam">j</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">cursor</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_test_cursor</b>(</code></td><td>sd_journal *<var class="pdparam">j</var>, </td></tr><tr><td> </td><td>const char *<var class="pdparam">cursor</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214172116480"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_journal_get_cursor()</code>
                 returns a cursor string for the current journal
                 entry. A cursor is a serialization of the current
                 journal position formatted as text. The string only
                 <a href="sd_journal_seek_cursor.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_seek_cursor</span>(3)</span></a>
                 whether the entry being sought to was actually found
                 in the journal or the next closest entry was used
-                instead.</p></div><div class="refsect1"><a name="idm214192215984"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p><code class="function">sd_journal_get_cursor()</code>
+                instead.</p></div><div class="refsect1"><a name="idm214172307584"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p><code class="function">sd_journal_get_cursor()</code>
                 returns 0 on success or a negative errno-style error
                 code. <code class="function">sd_journal_test_cursor()</code>
                 returns positive if the current entry matches the
                 specified cursor, 0 if it does not match the specified
                 cursor or a negative errno-style error code on
-                failure.</p></div><div class="refsect1"><a name="idm214192213184"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p>The <code class="function">sd_journal_get_cursor()</code>
+                failure.</p></div><div class="refsect1"><a name="idm214172304784"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p>The <code class="function">sd_journal_get_cursor()</code>
                 and <code class="function">sd_journal_test_cursor()</code>
                 interfaces are available as a shared library, which can
                 be compiled and linked to with the
                 <code class="constant">libsystemd</code> <a href="pkg-config.html"><span class="citerefentry"><span class="refentrytitle">pkg-config</span>(1)</span></a>
-                file.</p></div><div class="refsect1"><a name="idm214192209056"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+                file.</p></div><div class="refsect1"><a name="idm214172300656"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
                         <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
                         <a href="sd-journal.html"><span class="citerefentry"><span class="refentrytitle">sd-journal</span>(3)</span></a>,
                         <a href="sd_journal_open.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_open</span>(3)</span></a>,
index ef2d13e7f8fb202dfb797bfa1ca8a2f41d233c98..a5d9515e05c50feb63dc590efd804e3d99c93f46 100644 (file)
@@ -19,8 +19,8 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="sd_journal_get_fd"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_journal_get_fd, sd_journal_get_events, sd_journal_get_timeout, sd_journal_process, sd_journal_wait, sd_journal_reliable_fd, SD_JOURNAL_NOP, SD_JOURNAL_APPEND, SD_JOURNAL_INVALIDATE — Journal change notification
-                interface</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-journal.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_get_fd</b>(</code></td><td>sd_journal *<var class="pdparam">j</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_get_events</b>(</code></td><td>sd_journal *<var class="pdparam">j</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_get_timeout</b>(</code></td><td>sd_journal *<var class="pdparam">j</var>, </td></tr><tr><td> </td><td>uint64_t *<var class="pdparam">timeout_usec</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_process</b>(</code></td><td>sd_journal *<var class="pdparam">j</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_wait</b>(</code></td><td>sd_journal *<var class="pdparam">j</var>, </td></tr><tr><td> </td><td>uint64_t <var class="pdparam">timeout_usec</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_reliable_fd</b>(</code></td><td>sd_journal *<var class="pdparam">j</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214189551600"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_journal_get_fd()</code> returns
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="sd_journal_get_fd"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_journal_get_fd, sd_journal_get_events, sd_journal_get_timeout, sd_journal_process, sd_journal_wait, sd_journal_reliable_fd, SD_JOURNAL_NOP, SD_JOURNAL_APPEND, SD_JOURNAL_INVALIDATE — Journal change notification
+                interface</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-journal.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_get_fd</b>(</code></td><td>sd_journal *<var class="pdparam">j</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_get_events</b>(</code></td><td>sd_journal *<var class="pdparam">j</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_get_timeout</b>(</code></td><td>sd_journal *<var class="pdparam">j</var>, </td></tr><tr><td> </td><td>uint64_t *<var class="pdparam">timeout_usec</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_process</b>(</code></td><td>sd_journal *<var class="pdparam">j</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_wait</b>(</code></td><td>sd_journal *<var class="pdparam">j</var>, </td></tr><tr><td> </td><td>uint64_t <var class="pdparam">timeout_usec</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_journal_reliable_fd</b>(</code></td><td>sd_journal *<var class="pdparam">j</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214185830672"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_journal_get_fd()</code> returns
                 a file descriptor that may be asynchronously polled in
                 an external event loop and is signaled as soon as the
                 journal changes, because new entries or files were
@@ -112,7 +112,7 @@ else {
                 no need to invoke this function directly as
                 <code class="function">sd_journal_get_timeout()</code> on these
                 file systems will ask for timeouts explicitly
-                anyway.</p></div><div class="refsect1"><a name="idm214189511696"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p><code class="function">sd_journal_get_fd()</code> returns
+                anyway.</p></div><div class="refsect1"><a name="idm214185790416"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p><code class="function">sd_journal_get_fd()</code> returns
                 a valid file descriptor on success or a negative
                 errno-style error code.</p><p><code class="function">sd_journal_get_events()</code>
                 returns a combination of <code class="constant">POLLIN</code>,
@@ -138,7 +138,7 @@ else {
                 probably refresh their entire display, while in the
                 case of <code class="constant">SD_JOURNAL_APPEND</code>, it is
                 sufficient to simply continue reading at the previous
-                end of the journal.</p></div><div class="refsect1"><a name="idm214184533264"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p>The <code class="function">sd_journal_get_fd()</code>,
+                end of the journal.</p></div><div class="refsect1"><a name="idm214180864000"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p>The <code class="function">sd_journal_get_fd()</code>,
                 <code class="function">sd_journal_get_events()</code>,
                 <code class="function">sd_journal_reliable_fd()</code>,
                 <code class="function">sd_journal_process()</code> and
@@ -146,7 +146,7 @@ else {
                 available as a shared library, which can be compiled and
                 linked to with the
                 <code class="constant">libsystemd</code> <a href="pkg-config.html"><span class="citerefentry"><span class="refentrytitle">pkg-config</span>(1)</span></a>
-                file.</p></div><div class="refsect1"><a name="idm214184527680"></a><h2 id="Examples">Examples<a class="headerlink" title="Permalink to this headline" href="#Examples">¶</a></h2><p>Iterating through the journal, in a live view tracking all changes:</p><pre class="programlisting">#include &lt;stdio.h&gt;
+                file.</p></div><div class="refsect1"><a name="idm214180858416"></a><h2 id="Examples">Examples<a class="headerlink" title="Permalink to this headline" href="#Examples">¶</a></h2><p>Iterating through the journal, in a live view tracking all changes:</p><pre class="programlisting">#include &lt;stdio.h&gt;
 #include &lt;string.h&gt;
 #include &lt;systemd/sd-journal.h&gt;
 
@@ -208,7 +208,7 @@ int wait_for_changes(sd_journal *j) {
         pollfd.events = sd_journal_get_events(j);
         poll(&amp;pollfd, 1, msec);
         return sd_journal_process(j);
-}</pre></div><div class="refsect1"><a name="idm214184521056"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+}</pre></div><div class="refsect1"><a name="idm214180851792"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
                         <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
                         <a href="sd-journal.html"><span class="citerefentry"><span class="refentrytitle">sd-journal</span>(3)</span></a>,
                         <a href="sd_journal_open.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_open</span>(3)</span></a>,
index dfd897b512e429525a577027ed06607fd21a2adf..200266671c027f6800d333d76f929f7b1f8c37fc 100644 (file)
@@ -1,5 +1,5 @@
 '\" t
-.TH "SD_LISTEN_FDS" "3" "" "systemd 214" "sd_listen_fds"
+.TH "SD_LISTEN_FDS" "3" "" "systemd 215" "sd_listen_fds"
 .\" -----------------------------------------------------------------
 .\" * Define some portability stuff
 .\" -----------------------------------------------------------------
index ad7e35655059a09e708ad854f59743f569c11fdb..25181fca86b97ca5735e2ca286c2cc13d137eed3 100644 (file)
@@ -19,7 +19,7 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="sd_listen_fds"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_listen_fds, SD_LISTEN_FDS_START — Check for file descriptors passed by the system manager</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-daemon.h&gt;</pre><pre class="funcsynopsisinfo">#define SD_LISTEN_FDS_START 3</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_listen_fds</b>(</code></td><td>int <var class="pdparam">unset_environment</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214192684512"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_listen_fds()</code> shall be
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="sd_listen_fds"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_listen_fds, SD_LISTEN_FDS_START — Check for file descriptors passed by the system manager</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-daemon.h&gt;</pre><pre class="funcsynopsisinfo">#define SD_LISTEN_FDS_START 3</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_listen_fds</b>(</code></td><td>int <var class="pdparam">unset_environment</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214197560512"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_listen_fds()</code> shall be
                 called by a daemon to check for file descriptors
                 passed by the init system as part of the socket-based
                 activation logic.</p><p>If the <em class="parameter"><code>unset_environment</code></em>
@@ -50,7 +50,7 @@
                 datagram or stream socket matters a lot for the most
                 common program logics and should be checked.</p><p>This function call will set the FD_CLOEXEC flag
                 for all passed file descriptors to avoid further
-                inheritance to children of the calling process.</p></div><div class="refsect1"><a name="idm214192892160"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>On failure, this call returns a negative
+                inheritance to children of the calling process.</p></div><div class="refsect1"><a name="idm214197624416"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>On failure, this call returns a negative
                 errno-style error code. If
                 <code class="varname">$LISTEN_FDS</code>/<code class="varname">$LISTEN_PID</code>
                 was not set or was not correctly set for this daemon and
@@ -58,7 +58,7 @@
                 returned. Otherwise, the number of file descriptors
                 passed is returned. The application may find them
                 starting with file descriptor SD_LISTEN_FDS_START,
-                i.e. file descriptor 3.</p></div><div class="refsect1"><a name="idm214194136768"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p><a name="pkgconfig-text"></a>These APIs are implemented as a shared
+                i.e. file descriptor 3.</p></div><div class="refsect1"><a name="idm214197551888"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p><a name="pkgconfig-text"></a>These APIs are implemented as a shared
   library, which can be compiled and linked to with the
   <code class="constant">libsystemd</code> <a href="pkg-config.html"><span class="citerefentry"><span class="refentrytitle">pkg-config</span>(1)</span></a>
   file.</p><p>Internally, this function checks whether the
                 variable, then sets the FD_CLOEXEC flag for the parsed
                 number of file descriptors starting from
                 SD_LISTEN_FDS_START. Finally, it returns the parsed
-                number.</p></div><div class="refsect1"><a name="idm214192287840"></a><h2 id="Environment">Environment<a class="headerlink" title="Permalink to this headline" href="#Environment">¶</a></h2><div class="variablelist"><dl class="variablelist"><dt id="$LISTEN_PID"><span class="term"><code class="varname">$LISTEN_PID</code>, </span><span class="term"><code class="varname">$LISTEN_FDS</code></span><a class="headerlink" title="Permalink to this term" href="#%24LISTEN_PID">¶</a></dt><dd><p>Set by the init system
+                number.</p></div><div class="refsect1"><a name="idm214197548512"></a><h2 id="Environment">Environment<a class="headerlink" title="Permalink to this headline" href="#Environment">¶</a></h2><div class="variablelist"><dl class="variablelist"><dt id="$LISTEN_PID"><span class="term"><code class="varname">$LISTEN_PID</code>, </span><span class="term"><code class="varname">$LISTEN_FDS</code></span><a class="headerlink" title="Permalink to this term" href="#%24LISTEN_PID">¶</a></dt><dd><p>Set by the init system
                                 for supervised processes that use
                                 socket-based activation. This
                                 environment variable specifies the
                                 data
                                 <code class="function">sd_listen_fds()</code>
                                 parses. See above for
-                                details.</p></dd></dl></div></div><div class="refsect1"><a name="idm214193629840"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+                                details.</p></dd></dl></div></div><div class="refsect1"><a name="idm214197690240"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
                         <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
                         <a href="sd-daemon.html"><span class="citerefentry"><span class="refentrytitle">sd-daemon</span>(3)</span></a>,
                         <a href="sd_is_fifo.html"><span class="citerefentry"><span class="refentrytitle">sd_is_fifo</span>(3)</span></a>,
index 4ef10e018cd295b8b83a9591c00762f2d7ad9b9f..476bbace1ecbd065eb8f8ac00e8e07b139478300 100644 (file)
@@ -19,7 +19,7 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="sd_login_monitor_new"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_login_monitor_new, sd_login_monitor_unref, sd_login_monitor_flush, sd_login_monitor_get_fd, sd_login_monitor_get_events, sd_login_monitor_get_timeout, sd_login_monitor — Monitor login sessions, seats, users and virtual machines/containers</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-login.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_login_monitor_new</b>(</code></td><td>const char *<var class="pdparam">category</var>, </td></tr><tr><td> </td><td>sd_login_monitor **<var class="pdparam">ret</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">sd_login_monitor *<b class="fsfunc">sd_login_monitor_unref</b>(</code></td><td>sd_login_monitor *<var class="pdparam">m</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_login_monitor_flush</b>(</code></td><td>sd_login_monitor *<var class="pdparam">m</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_login_monitor_get_fd</b>(</code></td><td>sd_login_monitor *<var class="pdparam">m</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_login_monitor_get_events</b>(</code></td><td>sd_login_monitor *<var class="pdparam">m</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_login_monitor_get_timeout</b>(</code></td><td>sd_login_monitor *<var class="pdparam">m</var>, </td></tr><tr><td> </td><td>uint64_t *<var class="pdparam">timeout_usec</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214183358160"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_login_monitor_new()</code> may
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="sd_login_monitor_new"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_login_monitor_new, sd_login_monitor_unref, sd_login_monitor_flush, sd_login_monitor_get_fd, sd_login_monitor_get_events, sd_login_monitor_get_timeout, sd_login_monitor — Monitor login sessions, seats, users and virtual machines/containers</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-login.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_login_monitor_new</b>(</code></td><td>const char *<var class="pdparam">category</var>, </td></tr><tr><td> </td><td>sd_login_monitor **<var class="pdparam">ret</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">sd_login_monitor *<b class="fsfunc">sd_login_monitor_unref</b>(</code></td><td>sd_login_monitor *<var class="pdparam">m</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_login_monitor_flush</b>(</code></td><td>sd_login_monitor *<var class="pdparam">m</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_login_monitor_get_fd</b>(</code></td><td>sd_login_monitor *<var class="pdparam">m</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_login_monitor_get_events</b>(</code></td><td>sd_login_monitor *<var class="pdparam">m</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_login_monitor_get_timeout</b>(</code></td><td>sd_login_monitor *<var class="pdparam">m</var>, </td></tr><tr><td> </td><td>uint64_t *<var class="pdparam">timeout_usec</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214197895280"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_login_monitor_new()</code> may
                 be used to monitor login sessions, users, seats, and
                 virtual machines/containers. Via a monitor object a
                 file descriptor can be integrated into an application
@@ -102,7 +102,7 @@ else {
                 for brevity's sake. The calculated <code class="varname">msec</code>
                 integer can be passed directly as
                 <code class="function">poll()</code>'s timeout
-                parameter.</p></div><div class="refsect1"><a name="idm214183322688"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>On success,
+                parameter.</p></div><div class="refsect1"><a name="idm214197859856"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>On success,
                 <code class="function">sd_login_monitor_new()</code>,
                 <code class="function">sd_login_monitor_flush()</code> and
                 <code class="function">sd_login_monitor_get_timeout()</code>
@@ -114,7 +114,7 @@ else {
                 <code class="constant">POLLOUT</code> and suchlike. On failure,
                 these calls return a negative errno-style error
                 code.</p><p><code class="function">sd_login_monitor_unref()</code>
-                always returns <code class="constant">NULL</code>.</p></div><div class="refsect1"><a name="idm214183315280"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p>The <code class="function">sd_login_monitor_new()</code>,
+                always returns <code class="constant">NULL</code>.</p></div><div class="refsect1"><a name="idm214197852544"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p>The <code class="function">sd_login_monitor_new()</code>,
                 <code class="function">sd_login_monitor_unref()</code>,
                 <code class="function">sd_login_monitor_flush()</code>,
                 <code class="function">sd_login_monitor_get_fd()</code>,
@@ -123,7 +123,7 @@ else {
                 interfaces are available as a shared library, which can
                 be compiled and linked to with the
                 <code class="constant">libsystemd</code> <a href="pkg-config.html"><span class="citerefentry"><span class="refentrytitle">pkg-config</span>(1)</span></a>
-                file.</p></div><div class="refsect1"><a name="idm214178395040"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+                file.</p></div><div class="refsect1"><a name="idm214192935712"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
                         <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
                         <a href="sd-login.html"><span class="citerefentry"><span class="refentrytitle">sd-login</span>(3)</span></a>,
                         <a href="sd_get_seats.html"><span class="citerefentry"><span class="refentrytitle">sd_get_seats</span>(3)</span></a>,
index 4ef10e018cd295b8b83a9591c00762f2d7ad9b9f..476bbace1ecbd065eb8f8ac00e8e07b139478300 100644 (file)
@@ -19,7 +19,7 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="sd_login_monitor_new"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_login_monitor_new, sd_login_monitor_unref, sd_login_monitor_flush, sd_login_monitor_get_fd, sd_login_monitor_get_events, sd_login_monitor_get_timeout, sd_login_monitor — Monitor login sessions, seats, users and virtual machines/containers</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-login.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_login_monitor_new</b>(</code></td><td>const char *<var class="pdparam">category</var>, </td></tr><tr><td> </td><td>sd_login_monitor **<var class="pdparam">ret</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">sd_login_monitor *<b class="fsfunc">sd_login_monitor_unref</b>(</code></td><td>sd_login_monitor *<var class="pdparam">m</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_login_monitor_flush</b>(</code></td><td>sd_login_monitor *<var class="pdparam">m</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_login_monitor_get_fd</b>(</code></td><td>sd_login_monitor *<var class="pdparam">m</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_login_monitor_get_events</b>(</code></td><td>sd_login_monitor *<var class="pdparam">m</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_login_monitor_get_timeout</b>(</code></td><td>sd_login_monitor *<var class="pdparam">m</var>, </td></tr><tr><td> </td><td>uint64_t *<var class="pdparam">timeout_usec</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214183358160"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_login_monitor_new()</code> may
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="sd_login_monitor_new"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_login_monitor_new, sd_login_monitor_unref, sd_login_monitor_flush, sd_login_monitor_get_fd, sd_login_monitor_get_events, sd_login_monitor_get_timeout, sd_login_monitor — Monitor login sessions, seats, users and virtual machines/containers</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-login.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_login_monitor_new</b>(</code></td><td>const char *<var class="pdparam">category</var>, </td></tr><tr><td> </td><td>sd_login_monitor **<var class="pdparam">ret</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">sd_login_monitor *<b class="fsfunc">sd_login_monitor_unref</b>(</code></td><td>sd_login_monitor *<var class="pdparam">m</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_login_monitor_flush</b>(</code></td><td>sd_login_monitor *<var class="pdparam">m</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_login_monitor_get_fd</b>(</code></td><td>sd_login_monitor *<var class="pdparam">m</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_login_monitor_get_events</b>(</code></td><td>sd_login_monitor *<var class="pdparam">m</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_login_monitor_get_timeout</b>(</code></td><td>sd_login_monitor *<var class="pdparam">m</var>, </td></tr><tr><td> </td><td>uint64_t *<var class="pdparam">timeout_usec</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214197895280"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_login_monitor_new()</code> may
                 be used to monitor login sessions, users, seats, and
                 virtual machines/containers. Via a monitor object a
                 file descriptor can be integrated into an application
@@ -102,7 +102,7 @@ else {
                 for brevity's sake. The calculated <code class="varname">msec</code>
                 integer can be passed directly as
                 <code class="function">poll()</code>'s timeout
-                parameter.</p></div><div class="refsect1"><a name="idm214183322688"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>On success,
+                parameter.</p></div><div class="refsect1"><a name="idm214197859856"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>On success,
                 <code class="function">sd_login_monitor_new()</code>,
                 <code class="function">sd_login_monitor_flush()</code> and
                 <code class="function">sd_login_monitor_get_timeout()</code>
@@ -114,7 +114,7 @@ else {
                 <code class="constant">POLLOUT</code> and suchlike. On failure,
                 these calls return a negative errno-style error
                 code.</p><p><code class="function">sd_login_monitor_unref()</code>
-                always returns <code class="constant">NULL</code>.</p></div><div class="refsect1"><a name="idm214183315280"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p>The <code class="function">sd_login_monitor_new()</code>,
+                always returns <code class="constant">NULL</code>.</p></div><div class="refsect1"><a name="idm214197852544"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p>The <code class="function">sd_login_monitor_new()</code>,
                 <code class="function">sd_login_monitor_unref()</code>,
                 <code class="function">sd_login_monitor_flush()</code>,
                 <code class="function">sd_login_monitor_get_fd()</code>,
@@ -123,7 +123,7 @@ else {
                 interfaces are available as a shared library, which can
                 be compiled and linked to with the
                 <code class="constant">libsystemd</code> <a href="pkg-config.html"><span class="citerefentry"><span class="refentrytitle">pkg-config</span>(1)</span></a>
-                file.</p></div><div class="refsect1"><a name="idm214178395040"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+                file.</p></div><div class="refsect1"><a name="idm214192935712"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
                         <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
                         <a href="sd-login.html"><span class="citerefentry"><span class="refentrytitle">sd-login</span>(3)</span></a>,
                         <a href="sd_get_seats.html"><span class="citerefentry"><span class="refentrytitle">sd_get_seats</span>(3)</span></a>,
index 4ef10e018cd295b8b83a9591c00762f2d7ad9b9f..476bbace1ecbd065eb8f8ac00e8e07b139478300 100644 (file)
@@ -19,7 +19,7 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="sd_login_monitor_new"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_login_monitor_new, sd_login_monitor_unref, sd_login_monitor_flush, sd_login_monitor_get_fd, sd_login_monitor_get_events, sd_login_monitor_get_timeout, sd_login_monitor — Monitor login sessions, seats, users and virtual machines/containers</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-login.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_login_monitor_new</b>(</code></td><td>const char *<var class="pdparam">category</var>, </td></tr><tr><td> </td><td>sd_login_monitor **<var class="pdparam">ret</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">sd_login_monitor *<b class="fsfunc">sd_login_monitor_unref</b>(</code></td><td>sd_login_monitor *<var class="pdparam">m</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_login_monitor_flush</b>(</code></td><td>sd_login_monitor *<var class="pdparam">m</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_login_monitor_get_fd</b>(</code></td><td>sd_login_monitor *<var class="pdparam">m</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_login_monitor_get_events</b>(</code></td><td>sd_login_monitor *<var class="pdparam">m</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_login_monitor_get_timeout</b>(</code></td><td>sd_login_monitor *<var class="pdparam">m</var>, </td></tr><tr><td> </td><td>uint64_t *<var class="pdparam">timeout_usec</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214183358160"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_login_monitor_new()</code> may
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="sd_login_monitor_new"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_login_monitor_new, sd_login_monitor_unref, sd_login_monitor_flush, sd_login_monitor_get_fd, sd_login_monitor_get_events, sd_login_monitor_get_timeout, sd_login_monitor — Monitor login sessions, seats, users and virtual machines/containers</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-login.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_login_monitor_new</b>(</code></td><td>const char *<var class="pdparam">category</var>, </td></tr><tr><td> </td><td>sd_login_monitor **<var class="pdparam">ret</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">sd_login_monitor *<b class="fsfunc">sd_login_monitor_unref</b>(</code></td><td>sd_login_monitor *<var class="pdparam">m</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_login_monitor_flush</b>(</code></td><td>sd_login_monitor *<var class="pdparam">m</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_login_monitor_get_fd</b>(</code></td><td>sd_login_monitor *<var class="pdparam">m</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_login_monitor_get_events</b>(</code></td><td>sd_login_monitor *<var class="pdparam">m</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_login_monitor_get_timeout</b>(</code></td><td>sd_login_monitor *<var class="pdparam">m</var>, </td></tr><tr><td> </td><td>uint64_t *<var class="pdparam">timeout_usec</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214197895280"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_login_monitor_new()</code> may
                 be used to monitor login sessions, users, seats, and
                 virtual machines/containers. Via a monitor object a
                 file descriptor can be integrated into an application
@@ -102,7 +102,7 @@ else {
                 for brevity's sake. The calculated <code class="varname">msec</code>
                 integer can be passed directly as
                 <code class="function">poll()</code>'s timeout
-                parameter.</p></div><div class="refsect1"><a name="idm214183322688"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>On success,
+                parameter.</p></div><div class="refsect1"><a name="idm214197859856"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>On success,
                 <code class="function">sd_login_monitor_new()</code>,
                 <code class="function">sd_login_monitor_flush()</code> and
                 <code class="function">sd_login_monitor_get_timeout()</code>
@@ -114,7 +114,7 @@ else {
                 <code class="constant">POLLOUT</code> and suchlike. On failure,
                 these calls return a negative errno-style error
                 code.</p><p><code class="function">sd_login_monitor_unref()</code>
-                always returns <code class="constant">NULL</code>.</p></div><div class="refsect1"><a name="idm214183315280"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p>The <code class="function">sd_login_monitor_new()</code>,
+                always returns <code class="constant">NULL</code>.</p></div><div class="refsect1"><a name="idm214197852544"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p>The <code class="function">sd_login_monitor_new()</code>,
                 <code class="function">sd_login_monitor_unref()</code>,
                 <code class="function">sd_login_monitor_flush()</code>,
                 <code class="function">sd_login_monitor_get_fd()</code>,
@@ -123,7 +123,7 @@ else {
                 interfaces are available as a shared library, which can
                 be compiled and linked to with the
                 <code class="constant">libsystemd</code> <a href="pkg-config.html"><span class="citerefentry"><span class="refentrytitle">pkg-config</span>(1)</span></a>
-                file.</p></div><div class="refsect1"><a name="idm214178395040"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+                file.</p></div><div class="refsect1"><a name="idm214192935712"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
                         <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
                         <a href="sd-login.html"><span class="citerefentry"><span class="refentrytitle">sd-login</span>(3)</span></a>,
                         <a href="sd_get_seats.html"><span class="citerefentry"><span class="refentrytitle">sd_get_seats</span>(3)</span></a>,
index 4ef10e018cd295b8b83a9591c00762f2d7ad9b9f..476bbace1ecbd065eb8f8ac00e8e07b139478300 100644 (file)
@@ -19,7 +19,7 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="sd_login_monitor_new"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_login_monitor_new, sd_login_monitor_unref, sd_login_monitor_flush, sd_login_monitor_get_fd, sd_login_monitor_get_events, sd_login_monitor_get_timeout, sd_login_monitor — Monitor login sessions, seats, users and virtual machines/containers</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-login.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_login_monitor_new</b>(</code></td><td>const char *<var class="pdparam">category</var>, </td></tr><tr><td> </td><td>sd_login_monitor **<var class="pdparam">ret</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">sd_login_monitor *<b class="fsfunc">sd_login_monitor_unref</b>(</code></td><td>sd_login_monitor *<var class="pdparam">m</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_login_monitor_flush</b>(</code></td><td>sd_login_monitor *<var class="pdparam">m</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_login_monitor_get_fd</b>(</code></td><td>sd_login_monitor *<var class="pdparam">m</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_login_monitor_get_events</b>(</code></td><td>sd_login_monitor *<var class="pdparam">m</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_login_monitor_get_timeout</b>(</code></td><td>sd_login_monitor *<var class="pdparam">m</var>, </td></tr><tr><td> </td><td>uint64_t *<var class="pdparam">timeout_usec</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214183358160"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_login_monitor_new()</code> may
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="sd_login_monitor_new"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_login_monitor_new, sd_login_monitor_unref, sd_login_monitor_flush, sd_login_monitor_get_fd, sd_login_monitor_get_events, sd_login_monitor_get_timeout, sd_login_monitor — Monitor login sessions, seats, users and virtual machines/containers</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-login.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_login_monitor_new</b>(</code></td><td>const char *<var class="pdparam">category</var>, </td></tr><tr><td> </td><td>sd_login_monitor **<var class="pdparam">ret</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">sd_login_monitor *<b class="fsfunc">sd_login_monitor_unref</b>(</code></td><td>sd_login_monitor *<var class="pdparam">m</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_login_monitor_flush</b>(</code></td><td>sd_login_monitor *<var class="pdparam">m</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_login_monitor_get_fd</b>(</code></td><td>sd_login_monitor *<var class="pdparam">m</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_login_monitor_get_events</b>(</code></td><td>sd_login_monitor *<var class="pdparam">m</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_login_monitor_get_timeout</b>(</code></td><td>sd_login_monitor *<var class="pdparam">m</var>, </td></tr><tr><td> </td><td>uint64_t *<var class="pdparam">timeout_usec</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214197895280"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_login_monitor_new()</code> may
                 be used to monitor login sessions, users, seats, and
                 virtual machines/containers. Via a monitor object a
                 file descriptor can be integrated into an application
@@ -102,7 +102,7 @@ else {
                 for brevity's sake. The calculated <code class="varname">msec</code>
                 integer can be passed directly as
                 <code class="function">poll()</code>'s timeout
-                parameter.</p></div><div class="refsect1"><a name="idm214183322688"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>On success,
+                parameter.</p></div><div class="refsect1"><a name="idm214197859856"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>On success,
                 <code class="function">sd_login_monitor_new()</code>,
                 <code class="function">sd_login_monitor_flush()</code> and
                 <code class="function">sd_login_monitor_get_timeout()</code>
@@ -114,7 +114,7 @@ else {
                 <code class="constant">POLLOUT</code> and suchlike. On failure,
                 these calls return a negative errno-style error
                 code.</p><p><code class="function">sd_login_monitor_unref()</code>
-                always returns <code class="constant">NULL</code>.</p></div><div class="refsect1"><a name="idm214183315280"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p>The <code class="function">sd_login_monitor_new()</code>,
+                always returns <code class="constant">NULL</code>.</p></div><div class="refsect1"><a name="idm214197852544"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p>The <code class="function">sd_login_monitor_new()</code>,
                 <code class="function">sd_login_monitor_unref()</code>,
                 <code class="function">sd_login_monitor_flush()</code>,
                 <code class="function">sd_login_monitor_get_fd()</code>,
@@ -123,7 +123,7 @@ else {
                 interfaces are available as a shared library, which can
                 be compiled and linked to with the
                 <code class="constant">libsystemd</code> <a href="pkg-config.html"><span class="citerefentry"><span class="refentrytitle">pkg-config</span>(1)</span></a>
-                file.</p></div><div class="refsect1"><a name="idm214178395040"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+                file.</p></div><div class="refsect1"><a name="idm214192935712"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
                         <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
                         <a href="sd-login.html"><span class="citerefentry"><span class="refentrytitle">sd-login</span>(3)</span></a>,
                         <a href="sd_get_seats.html"><span class="citerefentry"><span class="refentrytitle">sd_get_seats</span>(3)</span></a>,
index 4ef10e018cd295b8b83a9591c00762f2d7ad9b9f..476bbace1ecbd065eb8f8ac00e8e07b139478300 100644 (file)
@@ -19,7 +19,7 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="sd_login_monitor_new"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_login_monitor_new, sd_login_monitor_unref, sd_login_monitor_flush, sd_login_monitor_get_fd, sd_login_monitor_get_events, sd_login_monitor_get_timeout, sd_login_monitor — Monitor login sessions, seats, users and virtual machines/containers</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-login.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_login_monitor_new</b>(</code></td><td>const char *<var class="pdparam">category</var>, </td></tr><tr><td> </td><td>sd_login_monitor **<var class="pdparam">ret</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">sd_login_monitor *<b class="fsfunc">sd_login_monitor_unref</b>(</code></td><td>sd_login_monitor *<var class="pdparam">m</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_login_monitor_flush</b>(</code></td><td>sd_login_monitor *<var class="pdparam">m</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_login_monitor_get_fd</b>(</code></td><td>sd_login_monitor *<var class="pdparam">m</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_login_monitor_get_events</b>(</code></td><td>sd_login_monitor *<var class="pdparam">m</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_login_monitor_get_timeout</b>(</code></td><td>sd_login_monitor *<var class="pdparam">m</var>, </td></tr><tr><td> </td><td>uint64_t *<var class="pdparam">timeout_usec</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214183358160"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_login_monitor_new()</code> may
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="sd_login_monitor_new"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_login_monitor_new, sd_login_monitor_unref, sd_login_monitor_flush, sd_login_monitor_get_fd, sd_login_monitor_get_events, sd_login_monitor_get_timeout, sd_login_monitor — Monitor login sessions, seats, users and virtual machines/containers</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-login.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_login_monitor_new</b>(</code></td><td>const char *<var class="pdparam">category</var>, </td></tr><tr><td> </td><td>sd_login_monitor **<var class="pdparam">ret</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">sd_login_monitor *<b class="fsfunc">sd_login_monitor_unref</b>(</code></td><td>sd_login_monitor *<var class="pdparam">m</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_login_monitor_flush</b>(</code></td><td>sd_login_monitor *<var class="pdparam">m</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_login_monitor_get_fd</b>(</code></td><td>sd_login_monitor *<var class="pdparam">m</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_login_monitor_get_events</b>(</code></td><td>sd_login_monitor *<var class="pdparam">m</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_login_monitor_get_timeout</b>(</code></td><td>sd_login_monitor *<var class="pdparam">m</var>, </td></tr><tr><td> </td><td>uint64_t *<var class="pdparam">timeout_usec</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214197895280"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_login_monitor_new()</code> may
                 be used to monitor login sessions, users, seats, and
                 virtual machines/containers. Via a monitor object a
                 file descriptor can be integrated into an application
@@ -102,7 +102,7 @@ else {
                 for brevity's sake. The calculated <code class="varname">msec</code>
                 integer can be passed directly as
                 <code class="function">poll()</code>'s timeout
-                parameter.</p></div><div class="refsect1"><a name="idm214183322688"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>On success,
+                parameter.</p></div><div class="refsect1"><a name="idm214197859856"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>On success,
                 <code class="function">sd_login_monitor_new()</code>,
                 <code class="function">sd_login_monitor_flush()</code> and
                 <code class="function">sd_login_monitor_get_timeout()</code>
@@ -114,7 +114,7 @@ else {
                 <code class="constant">POLLOUT</code> and suchlike. On failure,
                 these calls return a negative errno-style error
                 code.</p><p><code class="function">sd_login_monitor_unref()</code>
-                always returns <code class="constant">NULL</code>.</p></div><div class="refsect1"><a name="idm214183315280"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p>The <code class="function">sd_login_monitor_new()</code>,
+                always returns <code class="constant">NULL</code>.</p></div><div class="refsect1"><a name="idm214197852544"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p>The <code class="function">sd_login_monitor_new()</code>,
                 <code class="function">sd_login_monitor_unref()</code>,
                 <code class="function">sd_login_monitor_flush()</code>,
                 <code class="function">sd_login_monitor_get_fd()</code>,
@@ -123,7 +123,7 @@ else {
                 interfaces are available as a shared library, which can
                 be compiled and linked to with the
                 <code class="constant">libsystemd</code> <a href="pkg-config.html"><span class="citerefentry"><span class="refentrytitle">pkg-config</span>(1)</span></a>
-                file.</p></div><div class="refsect1"><a name="idm214178395040"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+                file.</p></div><div class="refsect1"><a name="idm214192935712"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
                         <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
                         <a href="sd-login.html"><span class="citerefentry"><span class="refentrytitle">sd-login</span>(3)</span></a>,
                         <a href="sd_get_seats.html"><span class="citerefentry"><span class="refentrytitle">sd_get_seats</span>(3)</span></a>,
index 63e529a1ea2077530fcd48f74eb5aa4c9436ba3a..946a914a481bccea015d8ee95f55c852ec91133f 100644 (file)
@@ -1,5 +1,5 @@
 '\" t
-.TH "SD_LOGIN_MONITOR_NEW" "3" "" "systemd 214" "sd_login_monitor_new"
+.TH "SD_LOGIN_MONITOR_NEW" "3" "" "systemd 215" "sd_login_monitor_new"
 .\" -----------------------------------------------------------------
 .\" * Define some portability stuff
 .\" -----------------------------------------------------------------
index 4ef10e018cd295b8b83a9591c00762f2d7ad9b9f..476bbace1ecbd065eb8f8ac00e8e07b139478300 100644 (file)
@@ -19,7 +19,7 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="sd_login_monitor_new"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_login_monitor_new, sd_login_monitor_unref, sd_login_monitor_flush, sd_login_monitor_get_fd, sd_login_monitor_get_events, sd_login_monitor_get_timeout, sd_login_monitor — Monitor login sessions, seats, users and virtual machines/containers</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-login.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_login_monitor_new</b>(</code></td><td>const char *<var class="pdparam">category</var>, </td></tr><tr><td> </td><td>sd_login_monitor **<var class="pdparam">ret</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">sd_login_monitor *<b class="fsfunc">sd_login_monitor_unref</b>(</code></td><td>sd_login_monitor *<var class="pdparam">m</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_login_monitor_flush</b>(</code></td><td>sd_login_monitor *<var class="pdparam">m</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_login_monitor_get_fd</b>(</code></td><td>sd_login_monitor *<var class="pdparam">m</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_login_monitor_get_events</b>(</code></td><td>sd_login_monitor *<var class="pdparam">m</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_login_monitor_get_timeout</b>(</code></td><td>sd_login_monitor *<var class="pdparam">m</var>, </td></tr><tr><td> </td><td>uint64_t *<var class="pdparam">timeout_usec</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214183358160"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_login_monitor_new()</code> may
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="sd_login_monitor_new"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_login_monitor_new, sd_login_monitor_unref, sd_login_monitor_flush, sd_login_monitor_get_fd, sd_login_monitor_get_events, sd_login_monitor_get_timeout, sd_login_monitor — Monitor login sessions, seats, users and virtual machines/containers</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-login.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_login_monitor_new</b>(</code></td><td>const char *<var class="pdparam">category</var>, </td></tr><tr><td> </td><td>sd_login_monitor **<var class="pdparam">ret</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">sd_login_monitor *<b class="fsfunc">sd_login_monitor_unref</b>(</code></td><td>sd_login_monitor *<var class="pdparam">m</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_login_monitor_flush</b>(</code></td><td>sd_login_monitor *<var class="pdparam">m</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_login_monitor_get_fd</b>(</code></td><td>sd_login_monitor *<var class="pdparam">m</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_login_monitor_get_events</b>(</code></td><td>sd_login_monitor *<var class="pdparam">m</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_login_monitor_get_timeout</b>(</code></td><td>sd_login_monitor *<var class="pdparam">m</var>, </td></tr><tr><td> </td><td>uint64_t *<var class="pdparam">timeout_usec</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214197895280"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_login_monitor_new()</code> may
                 be used to monitor login sessions, users, seats, and
                 virtual machines/containers. Via a monitor object a
                 file descriptor can be integrated into an application
@@ -102,7 +102,7 @@ else {
                 for brevity's sake. The calculated <code class="varname">msec</code>
                 integer can be passed directly as
                 <code class="function">poll()</code>'s timeout
-                parameter.</p></div><div class="refsect1"><a name="idm214183322688"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>On success,
+                parameter.</p></div><div class="refsect1"><a name="idm214197859856"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>On success,
                 <code class="function">sd_login_monitor_new()</code>,
                 <code class="function">sd_login_monitor_flush()</code> and
                 <code class="function">sd_login_monitor_get_timeout()</code>
@@ -114,7 +114,7 @@ else {
                 <code class="constant">POLLOUT</code> and suchlike. On failure,
                 these calls return a negative errno-style error
                 code.</p><p><code class="function">sd_login_monitor_unref()</code>
-                always returns <code class="constant">NULL</code>.</p></div><div class="refsect1"><a name="idm214183315280"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p>The <code class="function">sd_login_monitor_new()</code>,
+                always returns <code class="constant">NULL</code>.</p></div><div class="refsect1"><a name="idm214197852544"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p>The <code class="function">sd_login_monitor_new()</code>,
                 <code class="function">sd_login_monitor_unref()</code>,
                 <code class="function">sd_login_monitor_flush()</code>,
                 <code class="function">sd_login_monitor_get_fd()</code>,
@@ -123,7 +123,7 @@ else {
                 interfaces are available as a shared library, which can
                 be compiled and linked to with the
                 <code class="constant">libsystemd</code> <a href="pkg-config.html"><span class="citerefentry"><span class="refentrytitle">pkg-config</span>(1)</span></a>
-                file.</p></div><div class="refsect1"><a name="idm214178395040"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+                file.</p></div><div class="refsect1"><a name="idm214192935712"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
                         <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
                         <a href="sd-login.html"><span class="citerefentry"><span class="refentrytitle">sd-login</span>(3)</span></a>,
                         <a href="sd_get_seats.html"><span class="citerefentry"><span class="refentrytitle">sd_get_seats</span>(3)</span></a>,
index 4ef10e018cd295b8b83a9591c00762f2d7ad9b9f..476bbace1ecbd065eb8f8ac00e8e07b139478300 100644 (file)
@@ -19,7 +19,7 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="sd_login_monitor_new"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_login_monitor_new, sd_login_monitor_unref, sd_login_monitor_flush, sd_login_monitor_get_fd, sd_login_monitor_get_events, sd_login_monitor_get_timeout, sd_login_monitor — Monitor login sessions, seats, users and virtual machines/containers</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-login.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_login_monitor_new</b>(</code></td><td>const char *<var class="pdparam">category</var>, </td></tr><tr><td> </td><td>sd_login_monitor **<var class="pdparam">ret</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">sd_login_monitor *<b class="fsfunc">sd_login_monitor_unref</b>(</code></td><td>sd_login_monitor *<var class="pdparam">m</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_login_monitor_flush</b>(</code></td><td>sd_login_monitor *<var class="pdparam">m</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_login_monitor_get_fd</b>(</code></td><td>sd_login_monitor *<var class="pdparam">m</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_login_monitor_get_events</b>(</code></td><td>sd_login_monitor *<var class="pdparam">m</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_login_monitor_get_timeout</b>(</code></td><td>sd_login_monitor *<var class="pdparam">m</var>, </td></tr><tr><td> </td><td>uint64_t *<var class="pdparam">timeout_usec</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214183358160"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_login_monitor_new()</code> may
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="sd_login_monitor_new"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_login_monitor_new, sd_login_monitor_unref, sd_login_monitor_flush, sd_login_monitor_get_fd, sd_login_monitor_get_events, sd_login_monitor_get_timeout, sd_login_monitor — Monitor login sessions, seats, users and virtual machines/containers</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-login.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_login_monitor_new</b>(</code></td><td>const char *<var class="pdparam">category</var>, </td></tr><tr><td> </td><td>sd_login_monitor **<var class="pdparam">ret</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">sd_login_monitor *<b class="fsfunc">sd_login_monitor_unref</b>(</code></td><td>sd_login_monitor *<var class="pdparam">m</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_login_monitor_flush</b>(</code></td><td>sd_login_monitor *<var class="pdparam">m</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_login_monitor_get_fd</b>(</code></td><td>sd_login_monitor *<var class="pdparam">m</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_login_monitor_get_events</b>(</code></td><td>sd_login_monitor *<var class="pdparam">m</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_login_monitor_get_timeout</b>(</code></td><td>sd_login_monitor *<var class="pdparam">m</var>, </td></tr><tr><td> </td><td>uint64_t *<var class="pdparam">timeout_usec</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214197895280"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_login_monitor_new()</code> may
                 be used to monitor login sessions, users, seats, and
                 virtual machines/containers. Via a monitor object a
                 file descriptor can be integrated into an application
@@ -102,7 +102,7 @@ else {
                 for brevity's sake. The calculated <code class="varname">msec</code>
                 integer can be passed directly as
                 <code class="function">poll()</code>'s timeout
-                parameter.</p></div><div class="refsect1"><a name="idm214183322688"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>On success,
+                parameter.</p></div><div class="refsect1"><a name="idm214197859856"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>On success,
                 <code class="function">sd_login_monitor_new()</code>,
                 <code class="function">sd_login_monitor_flush()</code> and
                 <code class="function">sd_login_monitor_get_timeout()</code>
@@ -114,7 +114,7 @@ else {
                 <code class="constant">POLLOUT</code> and suchlike. On failure,
                 these calls return a negative errno-style error
                 code.</p><p><code class="function">sd_login_monitor_unref()</code>
-                always returns <code class="constant">NULL</code>.</p></div><div class="refsect1"><a name="idm214183315280"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p>The <code class="function">sd_login_monitor_new()</code>,
+                always returns <code class="constant">NULL</code>.</p></div><div class="refsect1"><a name="idm214197852544"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p>The <code class="function">sd_login_monitor_new()</code>,
                 <code class="function">sd_login_monitor_unref()</code>,
                 <code class="function">sd_login_monitor_flush()</code>,
                 <code class="function">sd_login_monitor_get_fd()</code>,
@@ -123,7 +123,7 @@ else {
                 interfaces are available as a shared library, which can
                 be compiled and linked to with the
                 <code class="constant">libsystemd</code> <a href="pkg-config.html"><span class="citerefentry"><span class="refentrytitle">pkg-config</span>(1)</span></a>
-                file.</p></div><div class="refsect1"><a name="idm214178395040"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+                file.</p></div><div class="refsect1"><a name="idm214192935712"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
                         <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
                         <a href="sd-login.html"><span class="citerefentry"><span class="refentrytitle">sd-login</span>(3)</span></a>,
                         <a href="sd_get_seats.html"><span class="citerefentry"><span class="refentrytitle">sd_get_seats</span>(3)</span></a>,
index 7d3ae7f0d648226a54e2521ccddfd5175a8ceeed..505743401dee9034383299a26e64ba02e1c7a178 100644 (file)
@@ -1,5 +1,5 @@
 '\" t
-.TH "SD_NOTIFY" "3" "" "systemd 214" "sd_notify"
+.TH "SD_NOTIFY" "3" "" "systemd 215" "sd_notify"
 .\" -----------------------------------------------------------------
 .\" * Define some portability stuff
 .\" -----------------------------------------------------------------
index 51b000a0d25567e96b889056314e76167fb43904..8a757598020255f9327508d88a4ccd02f5858470 100644 (file)
@@ -19,7 +19,7 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="sd_notify"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_notify, sd_notifyf — Notify service manager about start-up completion and other daemon status changes</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-daemon.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_notify</b>(</code></td><td>int <var class="pdparam">unset_environment</var>, </td></tr><tr><td> </td><td>const char *<var class="pdparam">state</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_notifyf</b>(</code></td><td>int <var class="pdparam">unset_environment</var>, </td></tr><tr><td> </td><td>const char *<var class="pdparam">format</var>, </td></tr><tr><td> </td><td>...<code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214197057360"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_notify()</code> shall be called
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="sd_notify"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_notify, sd_notifyf — Notify service manager about start-up completion and other daemon status changes</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-daemon.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_notify</b>(</code></td><td>int <var class="pdparam">unset_environment</var>, </td></tr><tr><td> </td><td>const char *<var class="pdparam">state</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_notifyf</b>(</code></td><td>int <var class="pdparam">unset_environment</var>, </td></tr><tr><td> </td><td>const char *<var class="pdparam">format</var>, </td></tr><tr><td> </td><td>...<code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214198380880"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_notify()</code> shall be called
                 by a daemon to notify the init system about status
                 changes. It can be used to send arbitrary information,
                 encoded in an environment-block-like string. Most
@@ -93,7 +93,7 @@
                 for details.</p><p><code class="function">sd_notifyf()</code> is similar to
                 <code class="function">sd_notify()</code> but takes a
                 <code class="function">printf()</code>-like format string plus
-                arguments.</p></div><div class="refsect1"><a name="idm214198382832"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>On failure, these calls return a negative
+                arguments.</p></div><div class="refsect1"><a name="idm214198431088"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>On failure, these calls return a negative
                 errno-style error code. If
                 <code class="varname">$NOTIFY_SOCKET</code> was not set and
                 hence no status data could be sent, 0 is returned. If
                 positive return value. In order to support both, init
                 systems that implement this scheme and those which
                 do not, it is generally recommended to ignore the return
-                value of this call.</p></div><div class="refsect1"><a name="idm214197843232"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p><a name="pkgconfig-text"></a>These APIs are implemented as a shared
+                value of this call.</p></div><div class="refsect1"><a name="idm214198428960"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p><a name="pkgconfig-text"></a>These APIs are implemented as a shared
   library, which can be compiled and linked to with the
   <code class="constant">libsystemd</code> <a href="pkg-config.html"><span class="citerefentry"><span class="refentrytitle">pkg-config</span>(1)</span></a>
   file.</p><p>Internally, these functions send a single
                 <code class="varname">$NOTIFY_SOCKET</code> is "<code class="literal">@</code>", the string is
                 understood as Linux abstract namespace socket. The
                 datagram is accompanied by the process credentials of
-                the sending daemon, using SCM_CREDENTIALS.</p></div><div class="refsect1"><a name="idm214196359440"></a><h2 id="Environment">Environment<a class="headerlink" title="Permalink to this headline" href="#Environment">¶</a></h2><div class="variablelist"><dl class="variablelist"><dt id="$NOTIFY_SOCKET"><span class="term"><code class="varname">$NOTIFY_SOCKET</code></span><a class="headerlink" title="Permalink to this term" href="#%24NOTIFY_SOCKET">¶</a></dt><dd><p>Set by the init system
+                the sending daemon, using SCM_CREDENTIALS.</p></div><div class="refsect1"><a name="idm214198417120"></a><h2 id="Environment">Environment<a class="headerlink" title="Permalink to this headline" href="#Environment">¶</a></h2><div class="variablelist"><dl class="variablelist"><dt id="$NOTIFY_SOCKET"><span class="term"><code class="varname">$NOTIFY_SOCKET</code></span><a class="headerlink" title="Permalink to this term" href="#%24NOTIFY_SOCKET">¶</a></dt><dd><p>Set by the init system
                                 for supervised processes for status
                                 and start-up completion
                                 notification. This environment variable
                                 specifies the socket
                                 <code class="function">sd_notify()</code> talks
-                                to. See above for details.</p></dd></dl></div></div><div class="refsect1"><a name="idm214195992736"></a><h2 id="Examples">Examples<a class="headerlink" title="Permalink to this headline" href="#Examples">¶</a></h2><div class="example"><a name="idm214196376304"></a><p class="title"><b>Example 1. Start-up Notification</b></p><div class="example-contents"><p>When a daemon finished starting up, it
+                                to. See above for details.</p></dd></dl></div></div><div class="refsect1"><a name="idm214198413216"></a><h2 id="Examples">Examples<a class="headerlink" title="Permalink to this headline" href="#Examples">¶</a></h2><div class="example"><a name="idm214198412544"></a><p class="title"><b>Example 1. Start-up Notification</b></p><div class="example-contents"><p>When a daemon finished starting up, it
                         might issue the following call to notify
-                        the init system:</p><pre class="programlisting">sd_notify(0, "READY=1");</pre></div></div><br class="example-break"><div class="example"><a name="idm214196110288"></a><p class="title"><b>Example 2. Extended Start-up Notification</b></p><div class="example-contents"><p>A daemon could send the following after
+                        the init system:</p><pre class="programlisting">sd_notify(0, "READY=1");</pre></div></div><br class="example-break"><div class="example"><a name="idm214198410496"></a><p class="title"><b>Example 2. Extended Start-up Notification</b></p><div class="example-contents"><p>A daemon could send the following after
                         completing initialization:</p><pre class="programlisting">sd_notifyf(0, "READY=1\n"
               "STATUS=Processing requests...\n"
               "MAINPID=%lu",
-              (unsigned long) getpid());</pre></div></div><br class="example-break"><div class="example"><a name="idm214197408464"></a><p class="title"><b>Example 3. Error Cause Notification</b></p><div class="example-contents"><p>A daemon could send the following shortly before exiting, on failure</p><pre class="programlisting">sd_notifyf(0, "STATUS=Failed to start up: %s\n"
+              (unsigned long) getpid());</pre></div></div><br class="example-break"><div class="example"><a name="idm214198408368"></a><p class="title"><b>Example 3. Error Cause Notification</b></p><div class="example-contents"><p>A daemon could send the following shortly before exiting, on failure</p><pre class="programlisting">sd_notifyf(0, "STATUS=Failed to start up: %s\n"
               "ERRNO=%i",
               strerror(errno),
-              errno);</pre></div></div><br class="example-break"></div><div class="refsect1"><a name="idm214196863152"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+              errno);</pre></div></div><br class="example-break"></div><div class="refsect1"><a name="idm214198406240"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
                         <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
                         <a href="sd-daemon.html"><span class="citerefentry"><span class="refentrytitle">sd-daemon</span>(3)</span></a>,
                         <a href="daemon.html"><span class="citerefentry"><span class="refentrytitle">daemon</span>(7)</span></a>,
index 51b000a0d25567e96b889056314e76167fb43904..8a757598020255f9327508d88a4ccd02f5858470 100644 (file)
@@ -19,7 +19,7 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="sd_notify"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_notify, sd_notifyf — Notify service manager about start-up completion and other daemon status changes</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-daemon.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_notify</b>(</code></td><td>int <var class="pdparam">unset_environment</var>, </td></tr><tr><td> </td><td>const char *<var class="pdparam">state</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_notifyf</b>(</code></td><td>int <var class="pdparam">unset_environment</var>, </td></tr><tr><td> </td><td>const char *<var class="pdparam">format</var>, </td></tr><tr><td> </td><td>...<code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214197057360"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_notify()</code> shall be called
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="sd_notify"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_notify, sd_notifyf — Notify service manager about start-up completion and other daemon status changes</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-daemon.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_notify</b>(</code></td><td>int <var class="pdparam">unset_environment</var>, </td></tr><tr><td> </td><td>const char *<var class="pdparam">state</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_notifyf</b>(</code></td><td>int <var class="pdparam">unset_environment</var>, </td></tr><tr><td> </td><td>const char *<var class="pdparam">format</var>, </td></tr><tr><td> </td><td>...<code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214198380880"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_notify()</code> shall be called
                 by a daemon to notify the init system about status
                 changes. It can be used to send arbitrary information,
                 encoded in an environment-block-like string. Most
@@ -93,7 +93,7 @@
                 for details.</p><p><code class="function">sd_notifyf()</code> is similar to
                 <code class="function">sd_notify()</code> but takes a
                 <code class="function">printf()</code>-like format string plus
-                arguments.</p></div><div class="refsect1"><a name="idm214198382832"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>On failure, these calls return a negative
+                arguments.</p></div><div class="refsect1"><a name="idm214198431088"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>On failure, these calls return a negative
                 errno-style error code. If
                 <code class="varname">$NOTIFY_SOCKET</code> was not set and
                 hence no status data could be sent, 0 is returned. If
                 positive return value. In order to support both, init
                 systems that implement this scheme and those which
                 do not, it is generally recommended to ignore the return
-                value of this call.</p></div><div class="refsect1"><a name="idm214197843232"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p><a name="pkgconfig-text"></a>These APIs are implemented as a shared
+                value of this call.</p></div><div class="refsect1"><a name="idm214198428960"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p><a name="pkgconfig-text"></a>These APIs are implemented as a shared
   library, which can be compiled and linked to with the
   <code class="constant">libsystemd</code> <a href="pkg-config.html"><span class="citerefentry"><span class="refentrytitle">pkg-config</span>(1)</span></a>
   file.</p><p>Internally, these functions send a single
                 <code class="varname">$NOTIFY_SOCKET</code> is "<code class="literal">@</code>", the string is
                 understood as Linux abstract namespace socket. The
                 datagram is accompanied by the process credentials of
-                the sending daemon, using SCM_CREDENTIALS.</p></div><div class="refsect1"><a name="idm214196359440"></a><h2 id="Environment">Environment<a class="headerlink" title="Permalink to this headline" href="#Environment">¶</a></h2><div class="variablelist"><dl class="variablelist"><dt id="$NOTIFY_SOCKET"><span class="term"><code class="varname">$NOTIFY_SOCKET</code></span><a class="headerlink" title="Permalink to this term" href="#%24NOTIFY_SOCKET">¶</a></dt><dd><p>Set by the init system
+                the sending daemon, using SCM_CREDENTIALS.</p></div><div class="refsect1"><a name="idm214198417120"></a><h2 id="Environment">Environment<a class="headerlink" title="Permalink to this headline" href="#Environment">¶</a></h2><div class="variablelist"><dl class="variablelist"><dt id="$NOTIFY_SOCKET"><span class="term"><code class="varname">$NOTIFY_SOCKET</code></span><a class="headerlink" title="Permalink to this term" href="#%24NOTIFY_SOCKET">¶</a></dt><dd><p>Set by the init system
                                 for supervised processes for status
                                 and start-up completion
                                 notification. This environment variable
                                 specifies the socket
                                 <code class="function">sd_notify()</code> talks
-                                to. See above for details.</p></dd></dl></div></div><div class="refsect1"><a name="idm214195992736"></a><h2 id="Examples">Examples<a class="headerlink" title="Permalink to this headline" href="#Examples">¶</a></h2><div class="example"><a name="idm214196376304"></a><p class="title"><b>Example 1. Start-up Notification</b></p><div class="example-contents"><p>When a daemon finished starting up, it
+                                to. See above for details.</p></dd></dl></div></div><div class="refsect1"><a name="idm214198413216"></a><h2 id="Examples">Examples<a class="headerlink" title="Permalink to this headline" href="#Examples">¶</a></h2><div class="example"><a name="idm214198412544"></a><p class="title"><b>Example 1. Start-up Notification</b></p><div class="example-contents"><p>When a daemon finished starting up, it
                         might issue the following call to notify
-                        the init system:</p><pre class="programlisting">sd_notify(0, "READY=1");</pre></div></div><br class="example-break"><div class="example"><a name="idm214196110288"></a><p class="title"><b>Example 2. Extended Start-up Notification</b></p><div class="example-contents"><p>A daemon could send the following after
+                        the init system:</p><pre class="programlisting">sd_notify(0, "READY=1");</pre></div></div><br class="example-break"><div class="example"><a name="idm214198410496"></a><p class="title"><b>Example 2. Extended Start-up Notification</b></p><div class="example-contents"><p>A daemon could send the following after
                         completing initialization:</p><pre class="programlisting">sd_notifyf(0, "READY=1\n"
               "STATUS=Processing requests...\n"
               "MAINPID=%lu",
-              (unsigned long) getpid());</pre></div></div><br class="example-break"><div class="example"><a name="idm214197408464"></a><p class="title"><b>Example 3. Error Cause Notification</b></p><div class="example-contents"><p>A daemon could send the following shortly before exiting, on failure</p><pre class="programlisting">sd_notifyf(0, "STATUS=Failed to start up: %s\n"
+              (unsigned long) getpid());</pre></div></div><br class="example-break"><div class="example"><a name="idm214198408368"></a><p class="title"><b>Example 3. Error Cause Notification</b></p><div class="example-contents"><p>A daemon could send the following shortly before exiting, on failure</p><pre class="programlisting">sd_notifyf(0, "STATUS=Failed to start up: %s\n"
               "ERRNO=%i",
               strerror(errno),
-              errno);</pre></div></div><br class="example-break"></div><div class="refsect1"><a name="idm214196863152"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+              errno);</pre></div></div><br class="example-break"></div><div class="refsect1"><a name="idm214198406240"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
                         <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
                         <a href="sd-daemon.html"><span class="citerefentry"><span class="refentrytitle">sd-daemon</span>(3)</span></a>,
                         <a href="daemon.html"><span class="citerefentry"><span class="refentrytitle">daemon</span>(7)</span></a>,
index 3ac08d611e75553c81aa8e179cf0877095dc7013..541808f63fd04bc949f749ca4f40cd3dcf391b2d 100644 (file)
@@ -19,9 +19,9 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="sd_pid_get_session"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_pid_get_session, sd_pid_get_unit, sd_pid_get_user_unit, sd_pid_get_owner_uid, sd_pid_get_machine_name, sd_pid_get_slice, sd_peer_get_session, sd_peer_get_unit, sd_peer_get_user_unit, sd_peer_get_owner_uid, sd_peer_get_machine_name, sd_peer_get_slice — Determine session, service, owner of a
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="sd_pid_get_session"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_pid_get_session, sd_pid_get_unit, sd_pid_get_user_unit, sd_pid_get_owner_uid, sd_pid_get_machine_name, sd_pid_get_slice, sd_peer_get_session, sd_peer_get_unit, sd_peer_get_user_unit, sd_peer_get_owner_uid, sd_peer_get_machine_name, sd_peer_get_slice — Determine session, service, owner of a
                 session, container/VM or slice of a specific
-                PID or socket peer</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-login.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_pid_get_session</b>(</code></td><td>pid_t <var class="pdparam">pid</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">session</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_pid_get_unit</b>(</code></td><td>pid_t <var class="pdparam">pid</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">unit</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_pid_get_user_unit</b>(</code></td><td>pid_t <var class="pdparam">pid</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">unit</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_pid_get_owner_uid</b>(</code></td><td>pid_t <var class="pdparam">pid</var>, </td></tr><tr><td> </td><td>uid_t *<var class="pdparam">uid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_pid_get_machine_name</b>(</code></td><td>pid_t <var class="pdparam">pid</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">name</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_pid_get_slice</b>(</code></td><td>pid_t <var class="pdparam">pid</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">slice</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_peer_get_session</b>(</code></td><td>int <var class="pdparam">fd</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">session</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_peer_get_unit</b>(</code></td><td>int <var class="pdparam">fd</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">unit</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_peer_get_user_unit</b>(</code></td><td>int <var class="pdparam">fd</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">unit</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_peer_get_owner_uid</b>(</code></td><td>int <var class="pdparam">fd</var>, </td></tr><tr><td> </td><td>uid_t *<var class="pdparam">uid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_peer_get_machine_name</b>(</code></td><td>int <var class="pdparam">fd</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">name</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_peer_get_slice</b>(</code></td><td>int <var class="pdparam">fd</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">slice</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214194564464"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_pid_get_session()</code> may be
+                PID or socket peer</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-login.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_pid_get_session</b>(</code></td><td>pid_t <var class="pdparam">pid</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">session</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_pid_get_unit</b>(</code></td><td>pid_t <var class="pdparam">pid</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">unit</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_pid_get_user_unit</b>(</code></td><td>pid_t <var class="pdparam">pid</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">unit</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_pid_get_owner_uid</b>(</code></td><td>pid_t <var class="pdparam">pid</var>, </td></tr><tr><td> </td><td>uid_t *<var class="pdparam">uid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_pid_get_machine_name</b>(</code></td><td>pid_t <var class="pdparam">pid</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">name</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_pid_get_slice</b>(</code></td><td>pid_t <var class="pdparam">pid</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">slice</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_peer_get_session</b>(</code></td><td>int <var class="pdparam">fd</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">session</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_peer_get_unit</b>(</code></td><td>int <var class="pdparam">fd</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">unit</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_peer_get_user_unit</b>(</code></td><td>int <var class="pdparam">fd</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">unit</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_peer_get_owner_uid</b>(</code></td><td>int <var class="pdparam">fd</var>, </td></tr><tr><td> </td><td>uid_t *<var class="pdparam">uid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_peer_get_machine_name</b>(</code></td><td>int <var class="pdparam">fd</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">name</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_peer_get_slice</b>(</code></td><td>int <var class="pdparam">fd</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">slice</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214179159952"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_pid_get_session()</code> may be
                 used to determine the login session identifier of a
                 process identified by the specified process
                 identifier. The session identifier is a short string,
@@ -84,9 +84,9 @@
                 <code class="function">sd_peer_get_slice()</code> calls operate
                 similar to their PID counterparts, but operate on a
                 connected AF_UNIX socket and retrieve information
-                about the connected peer process.</p></div><div class="refsect1"><a name="idm214189630000"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>On success, these calls return 0 or a positive
+                about the connected peer process.</p></div><div class="refsect1"><a name="idm214174228912"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>On success, these calls return 0 or a positive
                 integer. On failure, these calls return a negative
-                errno-style error code.</p></div><div class="refsect1"><a name="idm214189628672"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p>The <code class="function">sd_pid_get_session()</code>,
+                errno-style error code.</p></div><div class="refsect1"><a name="idm214174227584"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p>The <code class="function">sd_pid_get_session()</code>,
                 <code class="function">sd_pid_get_unit()</code>,
                 <code class="function">sd_pid_get_user_unit()</code>,
                 <code class="function">sd_pid_get_owner_uid()</code>,
                 returned by <code class="function">sd_pid_get_session()</code>
                 is completely unrelated to the process session
                 identifier as returned by
-                <a href="getsid.html"><span class="citerefentry"><span class="refentrytitle">getsid</span>(2)</span></a>.</p></div><div class="refsect1"><a name="idm214189616800"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+                <a href="getsid.html"><span class="citerefentry"><span class="refentrytitle">getsid</span>(2)</span></a>.</p></div><div class="refsect1"><a name="idm214174215712"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
                         <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
                         <a href="sd-login.html"><span class="citerefentry"><span class="refentrytitle">sd-login</span>(3)</span></a>,
                         <a href="sd_session_is_active.html"><span class="citerefentry"><span class="refentrytitle">sd_session_is_active</span>(3)</span></a>,
index 3ac08d611e75553c81aa8e179cf0877095dc7013..541808f63fd04bc949f749ca4f40cd3dcf391b2d 100644 (file)
@@ -19,9 +19,9 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="sd_pid_get_session"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_pid_get_session, sd_pid_get_unit, sd_pid_get_user_unit, sd_pid_get_owner_uid, sd_pid_get_machine_name, sd_pid_get_slice, sd_peer_get_session, sd_peer_get_unit, sd_peer_get_user_unit, sd_peer_get_owner_uid, sd_peer_get_machine_name, sd_peer_get_slice — Determine session, service, owner of a
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="sd_pid_get_session"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_pid_get_session, sd_pid_get_unit, sd_pid_get_user_unit, sd_pid_get_owner_uid, sd_pid_get_machine_name, sd_pid_get_slice, sd_peer_get_session, sd_peer_get_unit, sd_peer_get_user_unit, sd_peer_get_owner_uid, sd_peer_get_machine_name, sd_peer_get_slice — Determine session, service, owner of a
                 session, container/VM or slice of a specific
-                PID or socket peer</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-login.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_pid_get_session</b>(</code></td><td>pid_t <var class="pdparam">pid</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">session</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_pid_get_unit</b>(</code></td><td>pid_t <var class="pdparam">pid</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">unit</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_pid_get_user_unit</b>(</code></td><td>pid_t <var class="pdparam">pid</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">unit</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_pid_get_owner_uid</b>(</code></td><td>pid_t <var class="pdparam">pid</var>, </td></tr><tr><td> </td><td>uid_t *<var class="pdparam">uid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_pid_get_machine_name</b>(</code></td><td>pid_t <var class="pdparam">pid</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">name</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_pid_get_slice</b>(</code></td><td>pid_t <var class="pdparam">pid</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">slice</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_peer_get_session</b>(</code></td><td>int <var class="pdparam">fd</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">session</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_peer_get_unit</b>(</code></td><td>int <var class="pdparam">fd</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">unit</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_peer_get_user_unit</b>(</code></td><td>int <var class="pdparam">fd</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">unit</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_peer_get_owner_uid</b>(</code></td><td>int <var class="pdparam">fd</var>, </td></tr><tr><td> </td><td>uid_t *<var class="pdparam">uid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_peer_get_machine_name</b>(</code></td><td>int <var class="pdparam">fd</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">name</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_peer_get_slice</b>(</code></td><td>int <var class="pdparam">fd</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">slice</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214194564464"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_pid_get_session()</code> may be
+                PID or socket peer</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-login.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_pid_get_session</b>(</code></td><td>pid_t <var class="pdparam">pid</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">session</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_pid_get_unit</b>(</code></td><td>pid_t <var class="pdparam">pid</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">unit</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_pid_get_user_unit</b>(</code></td><td>pid_t <var class="pdparam">pid</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">unit</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_pid_get_owner_uid</b>(</code></td><td>pid_t <var class="pdparam">pid</var>, </td></tr><tr><td> </td><td>uid_t *<var class="pdparam">uid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_pid_get_machine_name</b>(</code></td><td>pid_t <var class="pdparam">pid</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">name</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_pid_get_slice</b>(</code></td><td>pid_t <var class="pdparam">pid</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">slice</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_peer_get_session</b>(</code></td><td>int <var class="pdparam">fd</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">session</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_peer_get_unit</b>(</code></td><td>int <var class="pdparam">fd</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">unit</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_peer_get_user_unit</b>(</code></td><td>int <var class="pdparam">fd</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">unit</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_peer_get_owner_uid</b>(</code></td><td>int <var class="pdparam">fd</var>, </td></tr><tr><td> </td><td>uid_t *<var class="pdparam">uid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_peer_get_machine_name</b>(</code></td><td>int <var class="pdparam">fd</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">name</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_peer_get_slice</b>(</code></td><td>int <var class="pdparam">fd</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">slice</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214179159952"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_pid_get_session()</code> may be
                 used to determine the login session identifier of a
                 process identified by the specified process
                 identifier. The session identifier is a short string,
@@ -84,9 +84,9 @@
                 <code class="function">sd_peer_get_slice()</code> calls operate
                 similar to their PID counterparts, but operate on a
                 connected AF_UNIX socket and retrieve information
-                about the connected peer process.</p></div><div class="refsect1"><a name="idm214189630000"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>On success, these calls return 0 or a positive
+                about the connected peer process.</p></div><div class="refsect1"><a name="idm214174228912"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>On success, these calls return 0 or a positive
                 integer. On failure, these calls return a negative
-                errno-style error code.</p></div><div class="refsect1"><a name="idm214189628672"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p>The <code class="function">sd_pid_get_session()</code>,
+                errno-style error code.</p></div><div class="refsect1"><a name="idm214174227584"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p>The <code class="function">sd_pid_get_session()</code>,
                 <code class="function">sd_pid_get_unit()</code>,
                 <code class="function">sd_pid_get_user_unit()</code>,
                 <code class="function">sd_pid_get_owner_uid()</code>,
                 returned by <code class="function">sd_pid_get_session()</code>
                 is completely unrelated to the process session
                 identifier as returned by
-                <a href="getsid.html"><span class="citerefentry"><span class="refentrytitle">getsid</span>(2)</span></a>.</p></div><div class="refsect1"><a name="idm214189616800"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+                <a href="getsid.html"><span class="citerefentry"><span class="refentrytitle">getsid</span>(2)</span></a>.</p></div><div class="refsect1"><a name="idm214174215712"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
                         <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
                         <a href="sd-login.html"><span class="citerefentry"><span class="refentrytitle">sd-login</span>(3)</span></a>,
                         <a href="sd_session_is_active.html"><span class="citerefentry"><span class="refentrytitle">sd_session_is_active</span>(3)</span></a>,
index 3ac08d611e75553c81aa8e179cf0877095dc7013..541808f63fd04bc949f749ca4f40cd3dcf391b2d 100644 (file)
@@ -19,9 +19,9 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="sd_pid_get_session"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_pid_get_session, sd_pid_get_unit, sd_pid_get_user_unit, sd_pid_get_owner_uid, sd_pid_get_machine_name, sd_pid_get_slice, sd_peer_get_session, sd_peer_get_unit, sd_peer_get_user_unit, sd_peer_get_owner_uid, sd_peer_get_machine_name, sd_peer_get_slice — Determine session, service, owner of a
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="sd_pid_get_session"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_pid_get_session, sd_pid_get_unit, sd_pid_get_user_unit, sd_pid_get_owner_uid, sd_pid_get_machine_name, sd_pid_get_slice, sd_peer_get_session, sd_peer_get_unit, sd_peer_get_user_unit, sd_peer_get_owner_uid, sd_peer_get_machine_name, sd_peer_get_slice — Determine session, service, owner of a
                 session, container/VM or slice of a specific
-                PID or socket peer</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-login.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_pid_get_session</b>(</code></td><td>pid_t <var class="pdparam">pid</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">session</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_pid_get_unit</b>(</code></td><td>pid_t <var class="pdparam">pid</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">unit</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_pid_get_user_unit</b>(</code></td><td>pid_t <var class="pdparam">pid</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">unit</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_pid_get_owner_uid</b>(</code></td><td>pid_t <var class="pdparam">pid</var>, </td></tr><tr><td> </td><td>uid_t *<var class="pdparam">uid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_pid_get_machine_name</b>(</code></td><td>pid_t <var class="pdparam">pid</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">name</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_pid_get_slice</b>(</code></td><td>pid_t <var class="pdparam">pid</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">slice</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_peer_get_session</b>(</code></td><td>int <var class="pdparam">fd</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">session</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_peer_get_unit</b>(</code></td><td>int <var class="pdparam">fd</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">unit</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_peer_get_user_unit</b>(</code></td><td>int <var class="pdparam">fd</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">unit</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_peer_get_owner_uid</b>(</code></td><td>int <var class="pdparam">fd</var>, </td></tr><tr><td> </td><td>uid_t *<var class="pdparam">uid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_peer_get_machine_name</b>(</code></td><td>int <var class="pdparam">fd</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">name</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_peer_get_slice</b>(</code></td><td>int <var class="pdparam">fd</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">slice</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214194564464"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_pid_get_session()</code> may be
+                PID or socket peer</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-login.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_pid_get_session</b>(</code></td><td>pid_t <var class="pdparam">pid</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">session</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_pid_get_unit</b>(</code></td><td>pid_t <var class="pdparam">pid</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">unit</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_pid_get_user_unit</b>(</code></td><td>pid_t <var class="pdparam">pid</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">unit</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_pid_get_owner_uid</b>(</code></td><td>pid_t <var class="pdparam">pid</var>, </td></tr><tr><td> </td><td>uid_t *<var class="pdparam">uid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_pid_get_machine_name</b>(</code></td><td>pid_t <var class="pdparam">pid</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">name</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_pid_get_slice</b>(</code></td><td>pid_t <var class="pdparam">pid</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">slice</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_peer_get_session</b>(</code></td><td>int <var class="pdparam">fd</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">session</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_peer_get_unit</b>(</code></td><td>int <var class="pdparam">fd</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">unit</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_peer_get_user_unit</b>(</code></td><td>int <var class="pdparam">fd</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">unit</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_peer_get_owner_uid</b>(</code></td><td>int <var class="pdparam">fd</var>, </td></tr><tr><td> </td><td>uid_t *<var class="pdparam">uid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_peer_get_machine_name</b>(</code></td><td>int <var class="pdparam">fd</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">name</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_peer_get_slice</b>(</code></td><td>int <var class="pdparam">fd</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">slice</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214179159952"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_pid_get_session()</code> may be
                 used to determine the login session identifier of a
                 process identified by the specified process
                 identifier. The session identifier is a short string,
@@ -84,9 +84,9 @@
                 <code class="function">sd_peer_get_slice()</code> calls operate
                 similar to their PID counterparts, but operate on a
                 connected AF_UNIX socket and retrieve information
-                about the connected peer process.</p></div><div class="refsect1"><a name="idm214189630000"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>On success, these calls return 0 or a positive
+                about the connected peer process.</p></div><div class="refsect1"><a name="idm214174228912"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>On success, these calls return 0 or a positive
                 integer. On failure, these calls return a negative
-                errno-style error code.</p></div><div class="refsect1"><a name="idm214189628672"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p>The <code class="function">sd_pid_get_session()</code>,
+                errno-style error code.</p></div><div class="refsect1"><a name="idm214174227584"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p>The <code class="function">sd_pid_get_session()</code>,
                 <code class="function">sd_pid_get_unit()</code>,
                 <code class="function">sd_pid_get_user_unit()</code>,
                 <code class="function">sd_pid_get_owner_uid()</code>,
                 returned by <code class="function">sd_pid_get_session()</code>
                 is completely unrelated to the process session
                 identifier as returned by
-                <a href="getsid.html"><span class="citerefentry"><span class="refentrytitle">getsid</span>(2)</span></a>.</p></div><div class="refsect1"><a name="idm214189616800"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+                <a href="getsid.html"><span class="citerefentry"><span class="refentrytitle">getsid</span>(2)</span></a>.</p></div><div class="refsect1"><a name="idm214174215712"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
                         <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
                         <a href="sd-login.html"><span class="citerefentry"><span class="refentrytitle">sd-login</span>(3)</span></a>,
                         <a href="sd_session_is_active.html"><span class="citerefentry"><span class="refentrytitle">sd_session_is_active</span>(3)</span></a>,
index 3ac08d611e75553c81aa8e179cf0877095dc7013..541808f63fd04bc949f749ca4f40cd3dcf391b2d 100644 (file)
@@ -19,9 +19,9 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="sd_pid_get_session"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_pid_get_session, sd_pid_get_unit, sd_pid_get_user_unit, sd_pid_get_owner_uid, sd_pid_get_machine_name, sd_pid_get_slice, sd_peer_get_session, sd_peer_get_unit, sd_peer_get_user_unit, sd_peer_get_owner_uid, sd_peer_get_machine_name, sd_peer_get_slice — Determine session, service, owner of a
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="sd_pid_get_session"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_pid_get_session, sd_pid_get_unit, sd_pid_get_user_unit, sd_pid_get_owner_uid, sd_pid_get_machine_name, sd_pid_get_slice, sd_peer_get_session, sd_peer_get_unit, sd_peer_get_user_unit, sd_peer_get_owner_uid, sd_peer_get_machine_name, sd_peer_get_slice — Determine session, service, owner of a
                 session, container/VM or slice of a specific
-                PID or socket peer</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-login.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_pid_get_session</b>(</code></td><td>pid_t <var class="pdparam">pid</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">session</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_pid_get_unit</b>(</code></td><td>pid_t <var class="pdparam">pid</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">unit</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_pid_get_user_unit</b>(</code></td><td>pid_t <var class="pdparam">pid</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">unit</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_pid_get_owner_uid</b>(</code></td><td>pid_t <var class="pdparam">pid</var>, </td></tr><tr><td> </td><td>uid_t *<var class="pdparam">uid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_pid_get_machine_name</b>(</code></td><td>pid_t <var class="pdparam">pid</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">name</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_pid_get_slice</b>(</code></td><td>pid_t <var class="pdparam">pid</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">slice</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_peer_get_session</b>(</code></td><td>int <var class="pdparam">fd</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">session</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_peer_get_unit</b>(</code></td><td>int <var class="pdparam">fd</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">unit</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_peer_get_user_unit</b>(</code></td><td>int <var class="pdparam">fd</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">unit</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_peer_get_owner_uid</b>(</code></td><td>int <var class="pdparam">fd</var>, </td></tr><tr><td> </td><td>uid_t *<var class="pdparam">uid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_peer_get_machine_name</b>(</code></td><td>int <var class="pdparam">fd</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">name</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_peer_get_slice</b>(</code></td><td>int <var class="pdparam">fd</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">slice</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214194564464"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_pid_get_session()</code> may be
+                PID or socket peer</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-login.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_pid_get_session</b>(</code></td><td>pid_t <var class="pdparam">pid</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">session</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_pid_get_unit</b>(</code></td><td>pid_t <var class="pdparam">pid</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">unit</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_pid_get_user_unit</b>(</code></td><td>pid_t <var class="pdparam">pid</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">unit</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_pid_get_owner_uid</b>(</code></td><td>pid_t <var class="pdparam">pid</var>, </td></tr><tr><td> </td><td>uid_t *<var class="pdparam">uid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_pid_get_machine_name</b>(</code></td><td>pid_t <var class="pdparam">pid</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">name</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_pid_get_slice</b>(</code></td><td>pid_t <var class="pdparam">pid</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">slice</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_peer_get_session</b>(</code></td><td>int <var class="pdparam">fd</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">session</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_peer_get_unit</b>(</code></td><td>int <var class="pdparam">fd</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">unit</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_peer_get_user_unit</b>(</code></td><td>int <var class="pdparam">fd</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">unit</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_peer_get_owner_uid</b>(</code></td><td>int <var class="pdparam">fd</var>, </td></tr><tr><td> </td><td>uid_t *<var class="pdparam">uid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_peer_get_machine_name</b>(</code></td><td>int <var class="pdparam">fd</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">name</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_peer_get_slice</b>(</code></td><td>int <var class="pdparam">fd</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">slice</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214179159952"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_pid_get_session()</code> may be
                 used to determine the login session identifier of a
                 process identified by the specified process
                 identifier. The session identifier is a short string,
@@ -84,9 +84,9 @@
                 <code class="function">sd_peer_get_slice()</code> calls operate
                 similar to their PID counterparts, but operate on a
                 connected AF_UNIX socket and retrieve information
-                about the connected peer process.</p></div><div class="refsect1"><a name="idm214189630000"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>On success, these calls return 0 or a positive
+                about the connected peer process.</p></div><div class="refsect1"><a name="idm214174228912"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>On success, these calls return 0 or a positive
                 integer. On failure, these calls return a negative
-                errno-style error code.</p></div><div class="refsect1"><a name="idm214189628672"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p>The <code class="function">sd_pid_get_session()</code>,
+                errno-style error code.</p></div><div class="refsect1"><a name="idm214174227584"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p>The <code class="function">sd_pid_get_session()</code>,
                 <code class="function">sd_pid_get_unit()</code>,
                 <code class="function">sd_pid_get_user_unit()</code>,
                 <code class="function">sd_pid_get_owner_uid()</code>,
                 returned by <code class="function">sd_pid_get_session()</code>
                 is completely unrelated to the process session
                 identifier as returned by
-                <a href="getsid.html"><span class="citerefentry"><span class="refentrytitle">getsid</span>(2)</span></a>.</p></div><div class="refsect1"><a name="idm214189616800"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+                <a href="getsid.html"><span class="citerefentry"><span class="refentrytitle">getsid</span>(2)</span></a>.</p></div><div class="refsect1"><a name="idm214174215712"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
                         <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
                         <a href="sd-login.html"><span class="citerefentry"><span class="refentrytitle">sd-login</span>(3)</span></a>,
                         <a href="sd_session_is_active.html"><span class="citerefentry"><span class="refentrytitle">sd_session_is_active</span>(3)</span></a>,
index 3ac08d611e75553c81aa8e179cf0877095dc7013..541808f63fd04bc949f749ca4f40cd3dcf391b2d 100644 (file)
@@ -19,9 +19,9 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="sd_pid_get_session"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_pid_get_session, sd_pid_get_unit, sd_pid_get_user_unit, sd_pid_get_owner_uid, sd_pid_get_machine_name, sd_pid_get_slice, sd_peer_get_session, sd_peer_get_unit, sd_peer_get_user_unit, sd_peer_get_owner_uid, sd_peer_get_machine_name, sd_peer_get_slice — Determine session, service, owner of a
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="sd_pid_get_session"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_pid_get_session, sd_pid_get_unit, sd_pid_get_user_unit, sd_pid_get_owner_uid, sd_pid_get_machine_name, sd_pid_get_slice, sd_peer_get_session, sd_peer_get_unit, sd_peer_get_user_unit, sd_peer_get_owner_uid, sd_peer_get_machine_name, sd_peer_get_slice — Determine session, service, owner of a
                 session, container/VM or slice of a specific
-                PID or socket peer</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-login.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_pid_get_session</b>(</code></td><td>pid_t <var class="pdparam">pid</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">session</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_pid_get_unit</b>(</code></td><td>pid_t <var class="pdparam">pid</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">unit</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_pid_get_user_unit</b>(</code></td><td>pid_t <var class="pdparam">pid</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">unit</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_pid_get_owner_uid</b>(</code></td><td>pid_t <var class="pdparam">pid</var>, </td></tr><tr><td> </td><td>uid_t *<var class="pdparam">uid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_pid_get_machine_name</b>(</code></td><td>pid_t <var class="pdparam">pid</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">name</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_pid_get_slice</b>(</code></td><td>pid_t <var class="pdparam">pid</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">slice</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_peer_get_session</b>(</code></td><td>int <var class="pdparam">fd</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">session</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_peer_get_unit</b>(</code></td><td>int <var class="pdparam">fd</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">unit</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_peer_get_user_unit</b>(</code></td><td>int <var class="pdparam">fd</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">unit</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_peer_get_owner_uid</b>(</code></td><td>int <var class="pdparam">fd</var>, </td></tr><tr><td> </td><td>uid_t *<var class="pdparam">uid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_peer_get_machine_name</b>(</code></td><td>int <var class="pdparam">fd</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">name</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_peer_get_slice</b>(</code></td><td>int <var class="pdparam">fd</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">slice</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214194564464"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_pid_get_session()</code> may be
+                PID or socket peer</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-login.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_pid_get_session</b>(</code></td><td>pid_t <var class="pdparam">pid</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">session</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_pid_get_unit</b>(</code></td><td>pid_t <var class="pdparam">pid</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">unit</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_pid_get_user_unit</b>(</code></td><td>pid_t <var class="pdparam">pid</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">unit</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_pid_get_owner_uid</b>(</code></td><td>pid_t <var class="pdparam">pid</var>, </td></tr><tr><td> </td><td>uid_t *<var class="pdparam">uid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_pid_get_machine_name</b>(</code></td><td>pid_t <var class="pdparam">pid</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">name</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_pid_get_slice</b>(</code></td><td>pid_t <var class="pdparam">pid</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">slice</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_peer_get_session</b>(</code></td><td>int <var class="pdparam">fd</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">session</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_peer_get_unit</b>(</code></td><td>int <var class="pdparam">fd</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">unit</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_peer_get_user_unit</b>(</code></td><td>int <var class="pdparam">fd</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">unit</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_peer_get_owner_uid</b>(</code></td><td>int <var class="pdparam">fd</var>, </td></tr><tr><td> </td><td>uid_t *<var class="pdparam">uid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_peer_get_machine_name</b>(</code></td><td>int <var class="pdparam">fd</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">name</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_peer_get_slice</b>(</code></td><td>int <var class="pdparam">fd</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">slice</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214179159952"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_pid_get_session()</code> may be
                 used to determine the login session identifier of a
                 process identified by the specified process
                 identifier. The session identifier is a short string,
@@ -84,9 +84,9 @@
                 <code class="function">sd_peer_get_slice()</code> calls operate
                 similar to their PID counterparts, but operate on a
                 connected AF_UNIX socket and retrieve information
-                about the connected peer process.</p></div><div class="refsect1"><a name="idm214189630000"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>On success, these calls return 0 or a positive
+                about the connected peer process.</p></div><div class="refsect1"><a name="idm214174228912"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>On success, these calls return 0 or a positive
                 integer. On failure, these calls return a negative
-                errno-style error code.</p></div><div class="refsect1"><a name="idm214189628672"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p>The <code class="function">sd_pid_get_session()</code>,
+                errno-style error code.</p></div><div class="refsect1"><a name="idm214174227584"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p>The <code class="function">sd_pid_get_session()</code>,
                 <code class="function">sd_pid_get_unit()</code>,
                 <code class="function">sd_pid_get_user_unit()</code>,
                 <code class="function">sd_pid_get_owner_uid()</code>,
                 returned by <code class="function">sd_pid_get_session()</code>
                 is completely unrelated to the process session
                 identifier as returned by
-                <a href="getsid.html"><span class="citerefentry"><span class="refentrytitle">getsid</span>(2)</span></a>.</p></div><div class="refsect1"><a name="idm214189616800"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+                <a href="getsid.html"><span class="citerefentry"><span class="refentrytitle">getsid</span>(2)</span></a>.</p></div><div class="refsect1"><a name="idm214174215712"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
                         <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
                         <a href="sd-login.html"><span class="citerefentry"><span class="refentrytitle">sd-login</span>(3)</span></a>,
                         <a href="sd_session_is_active.html"><span class="citerefentry"><span class="refentrytitle">sd_session_is_active</span>(3)</span></a>,
index 3ac08d611e75553c81aa8e179cf0877095dc7013..541808f63fd04bc949f749ca4f40cd3dcf391b2d 100644 (file)
@@ -19,9 +19,9 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="sd_pid_get_session"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_pid_get_session, sd_pid_get_unit, sd_pid_get_user_unit, sd_pid_get_owner_uid, sd_pid_get_machine_name, sd_pid_get_slice, sd_peer_get_session, sd_peer_get_unit, sd_peer_get_user_unit, sd_peer_get_owner_uid, sd_peer_get_machine_name, sd_peer_get_slice — Determine session, service, owner of a
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="sd_pid_get_session"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_pid_get_session, sd_pid_get_unit, sd_pid_get_user_unit, sd_pid_get_owner_uid, sd_pid_get_machine_name, sd_pid_get_slice, sd_peer_get_session, sd_peer_get_unit, sd_peer_get_user_unit, sd_peer_get_owner_uid, sd_peer_get_machine_name, sd_peer_get_slice — Determine session, service, owner of a
                 session, container/VM or slice of a specific
-                PID or socket peer</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-login.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_pid_get_session</b>(</code></td><td>pid_t <var class="pdparam">pid</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">session</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_pid_get_unit</b>(</code></td><td>pid_t <var class="pdparam">pid</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">unit</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_pid_get_user_unit</b>(</code></td><td>pid_t <var class="pdparam">pid</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">unit</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_pid_get_owner_uid</b>(</code></td><td>pid_t <var class="pdparam">pid</var>, </td></tr><tr><td> </td><td>uid_t *<var class="pdparam">uid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_pid_get_machine_name</b>(</code></td><td>pid_t <var class="pdparam">pid</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">name</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_pid_get_slice</b>(</code></td><td>pid_t <var class="pdparam">pid</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">slice</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_peer_get_session</b>(</code></td><td>int <var class="pdparam">fd</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">session</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_peer_get_unit</b>(</code></td><td>int <var class="pdparam">fd</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">unit</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_peer_get_user_unit</b>(</code></td><td>int <var class="pdparam">fd</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">unit</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_peer_get_owner_uid</b>(</code></td><td>int <var class="pdparam">fd</var>, </td></tr><tr><td> </td><td>uid_t *<var class="pdparam">uid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_peer_get_machine_name</b>(</code></td><td>int <var class="pdparam">fd</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">name</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_peer_get_slice</b>(</code></td><td>int <var class="pdparam">fd</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">slice</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214194564464"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_pid_get_session()</code> may be
+                PID or socket peer</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-login.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_pid_get_session</b>(</code></td><td>pid_t <var class="pdparam">pid</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">session</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_pid_get_unit</b>(</code></td><td>pid_t <var class="pdparam">pid</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">unit</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_pid_get_user_unit</b>(</code></td><td>pid_t <var class="pdparam">pid</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">unit</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_pid_get_owner_uid</b>(</code></td><td>pid_t <var class="pdparam">pid</var>, </td></tr><tr><td> </td><td>uid_t *<var class="pdparam">uid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_pid_get_machine_name</b>(</code></td><td>pid_t <var class="pdparam">pid</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">name</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_pid_get_slice</b>(</code></td><td>pid_t <var class="pdparam">pid</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">slice</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_peer_get_session</b>(</code></td><td>int <var class="pdparam">fd</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">session</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_peer_get_unit</b>(</code></td><td>int <var class="pdparam">fd</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">unit</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_peer_get_user_unit</b>(</code></td><td>int <var class="pdparam">fd</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">unit</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_peer_get_owner_uid</b>(</code></td><td>int <var class="pdparam">fd</var>, </td></tr><tr><td> </td><td>uid_t *<var class="pdparam">uid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_peer_get_machine_name</b>(</code></td><td>int <var class="pdparam">fd</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">name</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_peer_get_slice</b>(</code></td><td>int <var class="pdparam">fd</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">slice</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214179159952"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_pid_get_session()</code> may be
                 used to determine the login session identifier of a
                 process identified by the specified process
                 identifier. The session identifier is a short string,
@@ -84,9 +84,9 @@
                 <code class="function">sd_peer_get_slice()</code> calls operate
                 similar to their PID counterparts, but operate on a
                 connected AF_UNIX socket and retrieve information
-                about the connected peer process.</p></div><div class="refsect1"><a name="idm214189630000"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>On success, these calls return 0 or a positive
+                about the connected peer process.</p></div><div class="refsect1"><a name="idm214174228912"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>On success, these calls return 0 or a positive
                 integer. On failure, these calls return a negative
-                errno-style error code.</p></div><div class="refsect1"><a name="idm214189628672"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p>The <code class="function">sd_pid_get_session()</code>,
+                errno-style error code.</p></div><div class="refsect1"><a name="idm214174227584"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p>The <code class="function">sd_pid_get_session()</code>,
                 <code class="function">sd_pid_get_unit()</code>,
                 <code class="function">sd_pid_get_user_unit()</code>,
                 <code class="function">sd_pid_get_owner_uid()</code>,
                 returned by <code class="function">sd_pid_get_session()</code>
                 is completely unrelated to the process session
                 identifier as returned by
-                <a href="getsid.html"><span class="citerefentry"><span class="refentrytitle">getsid</span>(2)</span></a>.</p></div><div class="refsect1"><a name="idm214189616800"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+                <a href="getsid.html"><span class="citerefentry"><span class="refentrytitle">getsid</span>(2)</span></a>.</p></div><div class="refsect1"><a name="idm214174215712"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
                         <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
                         <a href="sd-login.html"><span class="citerefentry"><span class="refentrytitle">sd-login</span>(3)</span></a>,
                         <a href="sd_session_is_active.html"><span class="citerefentry"><span class="refentrytitle">sd_session_is_active</span>(3)</span></a>,
index 3ac08d611e75553c81aa8e179cf0877095dc7013..541808f63fd04bc949f749ca4f40cd3dcf391b2d 100644 (file)
@@ -19,9 +19,9 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="sd_pid_get_session"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_pid_get_session, sd_pid_get_unit, sd_pid_get_user_unit, sd_pid_get_owner_uid, sd_pid_get_machine_name, sd_pid_get_slice, sd_peer_get_session, sd_peer_get_unit, sd_peer_get_user_unit, sd_peer_get_owner_uid, sd_peer_get_machine_name, sd_peer_get_slice — Determine session, service, owner of a
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="sd_pid_get_session"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_pid_get_session, sd_pid_get_unit, sd_pid_get_user_unit, sd_pid_get_owner_uid, sd_pid_get_machine_name, sd_pid_get_slice, sd_peer_get_session, sd_peer_get_unit, sd_peer_get_user_unit, sd_peer_get_owner_uid, sd_peer_get_machine_name, sd_peer_get_slice — Determine session, service, owner of a
                 session, container/VM or slice of a specific
-                PID or socket peer</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-login.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_pid_get_session</b>(</code></td><td>pid_t <var class="pdparam">pid</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">session</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_pid_get_unit</b>(</code></td><td>pid_t <var class="pdparam">pid</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">unit</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_pid_get_user_unit</b>(</code></td><td>pid_t <var class="pdparam">pid</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">unit</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_pid_get_owner_uid</b>(</code></td><td>pid_t <var class="pdparam">pid</var>, </td></tr><tr><td> </td><td>uid_t *<var class="pdparam">uid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_pid_get_machine_name</b>(</code></td><td>pid_t <var class="pdparam">pid</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">name</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_pid_get_slice</b>(</code></td><td>pid_t <var class="pdparam">pid</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">slice</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_peer_get_session</b>(</code></td><td>int <var class="pdparam">fd</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">session</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_peer_get_unit</b>(</code></td><td>int <var class="pdparam">fd</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">unit</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_peer_get_user_unit</b>(</code></td><td>int <var class="pdparam">fd</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">unit</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_peer_get_owner_uid</b>(</code></td><td>int <var class="pdparam">fd</var>, </td></tr><tr><td> </td><td>uid_t *<var class="pdparam">uid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_peer_get_machine_name</b>(</code></td><td>int <var class="pdparam">fd</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">name</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_peer_get_slice</b>(</code></td><td>int <var class="pdparam">fd</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">slice</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214194564464"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_pid_get_session()</code> may be
+                PID or socket peer</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-login.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_pid_get_session</b>(</code></td><td>pid_t <var class="pdparam">pid</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">session</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_pid_get_unit</b>(</code></td><td>pid_t <var class="pdparam">pid</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">unit</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_pid_get_user_unit</b>(</code></td><td>pid_t <var class="pdparam">pid</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">unit</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_pid_get_owner_uid</b>(</code></td><td>pid_t <var class="pdparam">pid</var>, </td></tr><tr><td> </td><td>uid_t *<var class="pdparam">uid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_pid_get_machine_name</b>(</code></td><td>pid_t <var class="pdparam">pid</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">name</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_pid_get_slice</b>(</code></td><td>pid_t <var class="pdparam">pid</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">slice</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_peer_get_session</b>(</code></td><td>int <var class="pdparam">fd</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">session</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_peer_get_unit</b>(</code></td><td>int <var class="pdparam">fd</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">unit</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_peer_get_user_unit</b>(</code></td><td>int <var class="pdparam">fd</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">unit</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_peer_get_owner_uid</b>(</code></td><td>int <var class="pdparam">fd</var>, </td></tr><tr><td> </td><td>uid_t *<var class="pdparam">uid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_peer_get_machine_name</b>(</code></td><td>int <var class="pdparam">fd</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">name</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_peer_get_slice</b>(</code></td><td>int <var class="pdparam">fd</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">slice</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214179159952"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_pid_get_session()</code> may be
                 used to determine the login session identifier of a
                 process identified by the specified process
                 identifier. The session identifier is a short string,
@@ -84,9 +84,9 @@
                 <code class="function">sd_peer_get_slice()</code> calls operate
                 similar to their PID counterparts, but operate on a
                 connected AF_UNIX socket and retrieve information
-                about the connected peer process.</p></div><div class="refsect1"><a name="idm214189630000"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>On success, these calls return 0 or a positive
+                about the connected peer process.</p></div><div class="refsect1"><a name="idm214174228912"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>On success, these calls return 0 or a positive
                 integer. On failure, these calls return a negative
-                errno-style error code.</p></div><div class="refsect1"><a name="idm214189628672"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p>The <code class="function">sd_pid_get_session()</code>,
+                errno-style error code.</p></div><div class="refsect1"><a name="idm214174227584"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p>The <code class="function">sd_pid_get_session()</code>,
                 <code class="function">sd_pid_get_unit()</code>,
                 <code class="function">sd_pid_get_user_unit()</code>,
                 <code class="function">sd_pid_get_owner_uid()</code>,
                 returned by <code class="function">sd_pid_get_session()</code>
                 is completely unrelated to the process session
                 identifier as returned by
-                <a href="getsid.html"><span class="citerefentry"><span class="refentrytitle">getsid</span>(2)</span></a>.</p></div><div class="refsect1"><a name="idm214189616800"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+                <a href="getsid.html"><span class="citerefentry"><span class="refentrytitle">getsid</span>(2)</span></a>.</p></div><div class="refsect1"><a name="idm214174215712"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
                         <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
                         <a href="sd-login.html"><span class="citerefentry"><span class="refentrytitle">sd-login</span>(3)</span></a>,
                         <a href="sd_session_is_active.html"><span class="citerefentry"><span class="refentrytitle">sd_session_is_active</span>(3)</span></a>,
index 3ac08d611e75553c81aa8e179cf0877095dc7013..541808f63fd04bc949f749ca4f40cd3dcf391b2d 100644 (file)
@@ -19,9 +19,9 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="sd_pid_get_session"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_pid_get_session, sd_pid_get_unit, sd_pid_get_user_unit, sd_pid_get_owner_uid, sd_pid_get_machine_name, sd_pid_get_slice, sd_peer_get_session, sd_peer_get_unit, sd_peer_get_user_unit, sd_peer_get_owner_uid, sd_peer_get_machine_name, sd_peer_get_slice — Determine session, service, owner of a
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="sd_pid_get_session"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_pid_get_session, sd_pid_get_unit, sd_pid_get_user_unit, sd_pid_get_owner_uid, sd_pid_get_machine_name, sd_pid_get_slice, sd_peer_get_session, sd_peer_get_unit, sd_peer_get_user_unit, sd_peer_get_owner_uid, sd_peer_get_machine_name, sd_peer_get_slice — Determine session, service, owner of a
                 session, container/VM or slice of a specific
-                PID or socket peer</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-login.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_pid_get_session</b>(</code></td><td>pid_t <var class="pdparam">pid</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">session</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_pid_get_unit</b>(</code></td><td>pid_t <var class="pdparam">pid</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">unit</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_pid_get_user_unit</b>(</code></td><td>pid_t <var class="pdparam">pid</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">unit</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_pid_get_owner_uid</b>(</code></td><td>pid_t <var class="pdparam">pid</var>, </td></tr><tr><td> </td><td>uid_t *<var class="pdparam">uid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_pid_get_machine_name</b>(</code></td><td>pid_t <var class="pdparam">pid</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">name</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_pid_get_slice</b>(</code></td><td>pid_t <var class="pdparam">pid</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">slice</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_peer_get_session</b>(</code></td><td>int <var class="pdparam">fd</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">session</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_peer_get_unit</b>(</code></td><td>int <var class="pdparam">fd</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">unit</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_peer_get_user_unit</b>(</code></td><td>int <var class="pdparam">fd</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">unit</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_peer_get_owner_uid</b>(</code></td><td>int <var class="pdparam">fd</var>, </td></tr><tr><td> </td><td>uid_t *<var class="pdparam">uid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_peer_get_machine_name</b>(</code></td><td>int <var class="pdparam">fd</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">name</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_peer_get_slice</b>(</code></td><td>int <var class="pdparam">fd</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">slice</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214194564464"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_pid_get_session()</code> may be
+                PID or socket peer</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-login.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_pid_get_session</b>(</code></td><td>pid_t <var class="pdparam">pid</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">session</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_pid_get_unit</b>(</code></td><td>pid_t <var class="pdparam">pid</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">unit</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_pid_get_user_unit</b>(</code></td><td>pid_t <var class="pdparam">pid</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">unit</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_pid_get_owner_uid</b>(</code></td><td>pid_t <var class="pdparam">pid</var>, </td></tr><tr><td> </td><td>uid_t *<var class="pdparam">uid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_pid_get_machine_name</b>(</code></td><td>pid_t <var class="pdparam">pid</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">name</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_pid_get_slice</b>(</code></td><td>pid_t <var class="pdparam">pid</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">slice</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_peer_get_session</b>(</code></td><td>int <var class="pdparam">fd</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">session</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_peer_get_unit</b>(</code></td><td>int <var class="pdparam">fd</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">unit</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_peer_get_user_unit</b>(</code></td><td>int <var class="pdparam">fd</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">unit</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_peer_get_owner_uid</b>(</code></td><td>int <var class="pdparam">fd</var>, </td></tr><tr><td> </td><td>uid_t *<var class="pdparam">uid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_peer_get_machine_name</b>(</code></td><td>int <var class="pdparam">fd</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">name</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_peer_get_slice</b>(</code></td><td>int <var class="pdparam">fd</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">slice</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214179159952"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_pid_get_session()</code> may be
                 used to determine the login session identifier of a
                 process identified by the specified process
                 identifier. The session identifier is a short string,
@@ -84,9 +84,9 @@
                 <code class="function">sd_peer_get_slice()</code> calls operate
                 similar to their PID counterparts, but operate on a
                 connected AF_UNIX socket and retrieve information
-                about the connected peer process.</p></div><div class="refsect1"><a name="idm214189630000"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>On success, these calls return 0 or a positive
+                about the connected peer process.</p></div><div class="refsect1"><a name="idm214174228912"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>On success, these calls return 0 or a positive
                 integer. On failure, these calls return a negative
-                errno-style error code.</p></div><div class="refsect1"><a name="idm214189628672"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p>The <code class="function">sd_pid_get_session()</code>,
+                errno-style error code.</p></div><div class="refsect1"><a name="idm214174227584"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p>The <code class="function">sd_pid_get_session()</code>,
                 <code class="function">sd_pid_get_unit()</code>,
                 <code class="function">sd_pid_get_user_unit()</code>,
                 <code class="function">sd_pid_get_owner_uid()</code>,
                 returned by <code class="function">sd_pid_get_session()</code>
                 is completely unrelated to the process session
                 identifier as returned by
-                <a href="getsid.html"><span class="citerefentry"><span class="refentrytitle">getsid</span>(2)</span></a>.</p></div><div class="refsect1"><a name="idm214189616800"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+                <a href="getsid.html"><span class="citerefentry"><span class="refentrytitle">getsid</span>(2)</span></a>.</p></div><div class="refsect1"><a name="idm214174215712"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
                         <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
                         <a href="sd-login.html"><span class="citerefentry"><span class="refentrytitle">sd-login</span>(3)</span></a>,
                         <a href="sd_session_is_active.html"><span class="citerefentry"><span class="refentrytitle">sd_session_is_active</span>(3)</span></a>,
index 480ce4615cc06436ae9e6d2a9bbcbf44b04f55b6..ec0467ce8b3efb875361727c2bb3c727ef55c756 100644 (file)
@@ -1,5 +1,5 @@
 '\" t
-.TH "SD_PID_GET_SESSION" "3" "" "systemd 214" "sd_pid_get_session"
+.TH "SD_PID_GET_SESSION" "3" "" "systemd 215" "sd_pid_get_session"
 .\" -----------------------------------------------------------------
 .\" * Define some portability stuff
 .\" -----------------------------------------------------------------
index 3ac08d611e75553c81aa8e179cf0877095dc7013..541808f63fd04bc949f749ca4f40cd3dcf391b2d 100644 (file)
@@ -19,9 +19,9 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="sd_pid_get_session"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_pid_get_session, sd_pid_get_unit, sd_pid_get_user_unit, sd_pid_get_owner_uid, sd_pid_get_machine_name, sd_pid_get_slice, sd_peer_get_session, sd_peer_get_unit, sd_peer_get_user_unit, sd_peer_get_owner_uid, sd_peer_get_machine_name, sd_peer_get_slice — Determine session, service, owner of a
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="sd_pid_get_session"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_pid_get_session, sd_pid_get_unit, sd_pid_get_user_unit, sd_pid_get_owner_uid, sd_pid_get_machine_name, sd_pid_get_slice, sd_peer_get_session, sd_peer_get_unit, sd_peer_get_user_unit, sd_peer_get_owner_uid, sd_peer_get_machine_name, sd_peer_get_slice — Determine session, service, owner of a
                 session, container/VM or slice of a specific
-                PID or socket peer</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-login.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_pid_get_session</b>(</code></td><td>pid_t <var class="pdparam">pid</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">session</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_pid_get_unit</b>(</code></td><td>pid_t <var class="pdparam">pid</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">unit</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_pid_get_user_unit</b>(</code></td><td>pid_t <var class="pdparam">pid</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">unit</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_pid_get_owner_uid</b>(</code></td><td>pid_t <var class="pdparam">pid</var>, </td></tr><tr><td> </td><td>uid_t *<var class="pdparam">uid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_pid_get_machine_name</b>(</code></td><td>pid_t <var class="pdparam">pid</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">name</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_pid_get_slice</b>(</code></td><td>pid_t <var class="pdparam">pid</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">slice</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_peer_get_session</b>(</code></td><td>int <var class="pdparam">fd</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">session</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_peer_get_unit</b>(</code></td><td>int <var class="pdparam">fd</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">unit</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_peer_get_user_unit</b>(</code></td><td>int <var class="pdparam">fd</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">unit</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_peer_get_owner_uid</b>(</code></td><td>int <var class="pdparam">fd</var>, </td></tr><tr><td> </td><td>uid_t *<var class="pdparam">uid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_peer_get_machine_name</b>(</code></td><td>int <var class="pdparam">fd</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">name</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_peer_get_slice</b>(</code></td><td>int <var class="pdparam">fd</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">slice</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214194564464"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_pid_get_session()</code> may be
+                PID or socket peer</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-login.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_pid_get_session</b>(</code></td><td>pid_t <var class="pdparam">pid</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">session</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_pid_get_unit</b>(</code></td><td>pid_t <var class="pdparam">pid</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">unit</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_pid_get_user_unit</b>(</code></td><td>pid_t <var class="pdparam">pid</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">unit</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_pid_get_owner_uid</b>(</code></td><td>pid_t <var class="pdparam">pid</var>, </td></tr><tr><td> </td><td>uid_t *<var class="pdparam">uid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_pid_get_machine_name</b>(</code></td><td>pid_t <var class="pdparam">pid</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">name</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_pid_get_slice</b>(</code></td><td>pid_t <var class="pdparam">pid</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">slice</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_peer_get_session</b>(</code></td><td>int <var class="pdparam">fd</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">session</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_peer_get_unit</b>(</code></td><td>int <var class="pdparam">fd</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">unit</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_peer_get_user_unit</b>(</code></td><td>int <var class="pdparam">fd</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">unit</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_peer_get_owner_uid</b>(</code></td><td>int <var class="pdparam">fd</var>, </td></tr><tr><td> </td><td>uid_t *<var class="pdparam">uid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_peer_get_machine_name</b>(</code></td><td>int <var class="pdparam">fd</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">name</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_peer_get_slice</b>(</code></td><td>int <var class="pdparam">fd</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">slice</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214179159952"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_pid_get_session()</code> may be
                 used to determine the login session identifier of a
                 process identified by the specified process
                 identifier. The session identifier is a short string,
@@ -84,9 +84,9 @@
                 <code class="function">sd_peer_get_slice()</code> calls operate
                 similar to their PID counterparts, but operate on a
                 connected AF_UNIX socket and retrieve information
-                about the connected peer process.</p></div><div class="refsect1"><a name="idm214189630000"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>On success, these calls return 0 or a positive
+                about the connected peer process.</p></div><div class="refsect1"><a name="idm214174228912"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>On success, these calls return 0 or a positive
                 integer. On failure, these calls return a negative
-                errno-style error code.</p></div><div class="refsect1"><a name="idm214189628672"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p>The <code class="function">sd_pid_get_session()</code>,
+                errno-style error code.</p></div><div class="refsect1"><a name="idm214174227584"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p>The <code class="function">sd_pid_get_session()</code>,
                 <code class="function">sd_pid_get_unit()</code>,
                 <code class="function">sd_pid_get_user_unit()</code>,
                 <code class="function">sd_pid_get_owner_uid()</code>,
                 returned by <code class="function">sd_pid_get_session()</code>
                 is completely unrelated to the process session
                 identifier as returned by
-                <a href="getsid.html"><span class="citerefentry"><span class="refentrytitle">getsid</span>(2)</span></a>.</p></div><div class="refsect1"><a name="idm214189616800"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+                <a href="getsid.html"><span class="citerefentry"><span class="refentrytitle">getsid</span>(2)</span></a>.</p></div><div class="refsect1"><a name="idm214174215712"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
                         <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
                         <a href="sd-login.html"><span class="citerefentry"><span class="refentrytitle">sd-login</span>(3)</span></a>,
                         <a href="sd_session_is_active.html"><span class="citerefentry"><span class="refentrytitle">sd_session_is_active</span>(3)</span></a>,
index 3ac08d611e75553c81aa8e179cf0877095dc7013..541808f63fd04bc949f749ca4f40cd3dcf391b2d 100644 (file)
@@ -19,9 +19,9 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="sd_pid_get_session"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_pid_get_session, sd_pid_get_unit, sd_pid_get_user_unit, sd_pid_get_owner_uid, sd_pid_get_machine_name, sd_pid_get_slice, sd_peer_get_session, sd_peer_get_unit, sd_peer_get_user_unit, sd_peer_get_owner_uid, sd_peer_get_machine_name, sd_peer_get_slice — Determine session, service, owner of a
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="sd_pid_get_session"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_pid_get_session, sd_pid_get_unit, sd_pid_get_user_unit, sd_pid_get_owner_uid, sd_pid_get_machine_name, sd_pid_get_slice, sd_peer_get_session, sd_peer_get_unit, sd_peer_get_user_unit, sd_peer_get_owner_uid, sd_peer_get_machine_name, sd_peer_get_slice — Determine session, service, owner of a
                 session, container/VM or slice of a specific
-                PID or socket peer</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-login.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_pid_get_session</b>(</code></td><td>pid_t <var class="pdparam">pid</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">session</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_pid_get_unit</b>(</code></td><td>pid_t <var class="pdparam">pid</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">unit</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_pid_get_user_unit</b>(</code></td><td>pid_t <var class="pdparam">pid</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">unit</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_pid_get_owner_uid</b>(</code></td><td>pid_t <var class="pdparam">pid</var>, </td></tr><tr><td> </td><td>uid_t *<var class="pdparam">uid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_pid_get_machine_name</b>(</code></td><td>pid_t <var class="pdparam">pid</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">name</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_pid_get_slice</b>(</code></td><td>pid_t <var class="pdparam">pid</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">slice</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_peer_get_session</b>(</code></td><td>int <var class="pdparam">fd</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">session</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_peer_get_unit</b>(</code></td><td>int <var class="pdparam">fd</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">unit</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_peer_get_user_unit</b>(</code></td><td>int <var class="pdparam">fd</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">unit</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_peer_get_owner_uid</b>(</code></td><td>int <var class="pdparam">fd</var>, </td></tr><tr><td> </td><td>uid_t *<var class="pdparam">uid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_peer_get_machine_name</b>(</code></td><td>int <var class="pdparam">fd</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">name</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_peer_get_slice</b>(</code></td><td>int <var class="pdparam">fd</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">slice</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214194564464"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_pid_get_session()</code> may be
+                PID or socket peer</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-login.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_pid_get_session</b>(</code></td><td>pid_t <var class="pdparam">pid</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">session</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_pid_get_unit</b>(</code></td><td>pid_t <var class="pdparam">pid</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">unit</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_pid_get_user_unit</b>(</code></td><td>pid_t <var class="pdparam">pid</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">unit</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_pid_get_owner_uid</b>(</code></td><td>pid_t <var class="pdparam">pid</var>, </td></tr><tr><td> </td><td>uid_t *<var class="pdparam">uid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_pid_get_machine_name</b>(</code></td><td>pid_t <var class="pdparam">pid</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">name</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_pid_get_slice</b>(</code></td><td>pid_t <var class="pdparam">pid</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">slice</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_peer_get_session</b>(</code></td><td>int <var class="pdparam">fd</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">session</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_peer_get_unit</b>(</code></td><td>int <var class="pdparam">fd</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">unit</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_peer_get_user_unit</b>(</code></td><td>int <var class="pdparam">fd</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">unit</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_peer_get_owner_uid</b>(</code></td><td>int <var class="pdparam">fd</var>, </td></tr><tr><td> </td><td>uid_t *<var class="pdparam">uid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_peer_get_machine_name</b>(</code></td><td>int <var class="pdparam">fd</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">name</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_peer_get_slice</b>(</code></td><td>int <var class="pdparam">fd</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">slice</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214179159952"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_pid_get_session()</code> may be
                 used to determine the login session identifier of a
                 process identified by the specified process
                 identifier. The session identifier is a short string,
@@ -84,9 +84,9 @@
                 <code class="function">sd_peer_get_slice()</code> calls operate
                 similar to their PID counterparts, but operate on a
                 connected AF_UNIX socket and retrieve information
-                about the connected peer process.</p></div><div class="refsect1"><a name="idm214189630000"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>On success, these calls return 0 or a positive
+                about the connected peer process.</p></div><div class="refsect1"><a name="idm214174228912"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>On success, these calls return 0 or a positive
                 integer. On failure, these calls return a negative
-                errno-style error code.</p></div><div class="refsect1"><a name="idm214189628672"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p>The <code class="function">sd_pid_get_session()</code>,
+                errno-style error code.</p></div><div class="refsect1"><a name="idm214174227584"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p>The <code class="function">sd_pid_get_session()</code>,
                 <code class="function">sd_pid_get_unit()</code>,
                 <code class="function">sd_pid_get_user_unit()</code>,
                 <code class="function">sd_pid_get_owner_uid()</code>,
                 returned by <code class="function">sd_pid_get_session()</code>
                 is completely unrelated to the process session
                 identifier as returned by
-                <a href="getsid.html"><span class="citerefentry"><span class="refentrytitle">getsid</span>(2)</span></a>.</p></div><div class="refsect1"><a name="idm214189616800"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+                <a href="getsid.html"><span class="citerefentry"><span class="refentrytitle">getsid</span>(2)</span></a>.</p></div><div class="refsect1"><a name="idm214174215712"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
                         <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
                         <a href="sd-login.html"><span class="citerefentry"><span class="refentrytitle">sd-login</span>(3)</span></a>,
                         <a href="sd_session_is_active.html"><span class="citerefentry"><span class="refentrytitle">sd_session_is_active</span>(3)</span></a>,
index 3ac08d611e75553c81aa8e179cf0877095dc7013..541808f63fd04bc949f749ca4f40cd3dcf391b2d 100644 (file)
@@ -19,9 +19,9 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="sd_pid_get_session"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_pid_get_session, sd_pid_get_unit, sd_pid_get_user_unit, sd_pid_get_owner_uid, sd_pid_get_machine_name, sd_pid_get_slice, sd_peer_get_session, sd_peer_get_unit, sd_peer_get_user_unit, sd_peer_get_owner_uid, sd_peer_get_machine_name, sd_peer_get_slice — Determine session, service, owner of a
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="sd_pid_get_session"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_pid_get_session, sd_pid_get_unit, sd_pid_get_user_unit, sd_pid_get_owner_uid, sd_pid_get_machine_name, sd_pid_get_slice, sd_peer_get_session, sd_peer_get_unit, sd_peer_get_user_unit, sd_peer_get_owner_uid, sd_peer_get_machine_name, sd_peer_get_slice — Determine session, service, owner of a
                 session, container/VM or slice of a specific
-                PID or socket peer</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-login.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_pid_get_session</b>(</code></td><td>pid_t <var class="pdparam">pid</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">session</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_pid_get_unit</b>(</code></td><td>pid_t <var class="pdparam">pid</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">unit</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_pid_get_user_unit</b>(</code></td><td>pid_t <var class="pdparam">pid</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">unit</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_pid_get_owner_uid</b>(</code></td><td>pid_t <var class="pdparam">pid</var>, </td></tr><tr><td> </td><td>uid_t *<var class="pdparam">uid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_pid_get_machine_name</b>(</code></td><td>pid_t <var class="pdparam">pid</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">name</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_pid_get_slice</b>(</code></td><td>pid_t <var class="pdparam">pid</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">slice</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_peer_get_session</b>(</code></td><td>int <var class="pdparam">fd</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">session</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_peer_get_unit</b>(</code></td><td>int <var class="pdparam">fd</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">unit</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_peer_get_user_unit</b>(</code></td><td>int <var class="pdparam">fd</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">unit</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_peer_get_owner_uid</b>(</code></td><td>int <var class="pdparam">fd</var>, </td></tr><tr><td> </td><td>uid_t *<var class="pdparam">uid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_peer_get_machine_name</b>(</code></td><td>int <var class="pdparam">fd</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">name</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_peer_get_slice</b>(</code></td><td>int <var class="pdparam">fd</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">slice</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214194564464"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_pid_get_session()</code> may be
+                PID or socket peer</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-login.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_pid_get_session</b>(</code></td><td>pid_t <var class="pdparam">pid</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">session</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_pid_get_unit</b>(</code></td><td>pid_t <var class="pdparam">pid</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">unit</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_pid_get_user_unit</b>(</code></td><td>pid_t <var class="pdparam">pid</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">unit</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_pid_get_owner_uid</b>(</code></td><td>pid_t <var class="pdparam">pid</var>, </td></tr><tr><td> </td><td>uid_t *<var class="pdparam">uid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_pid_get_machine_name</b>(</code></td><td>pid_t <var class="pdparam">pid</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">name</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_pid_get_slice</b>(</code></td><td>pid_t <var class="pdparam">pid</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">slice</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_peer_get_session</b>(</code></td><td>int <var class="pdparam">fd</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">session</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_peer_get_unit</b>(</code></td><td>int <var class="pdparam">fd</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">unit</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_peer_get_user_unit</b>(</code></td><td>int <var class="pdparam">fd</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">unit</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_peer_get_owner_uid</b>(</code></td><td>int <var class="pdparam">fd</var>, </td></tr><tr><td> </td><td>uid_t *<var class="pdparam">uid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_peer_get_machine_name</b>(</code></td><td>int <var class="pdparam">fd</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">name</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_peer_get_slice</b>(</code></td><td>int <var class="pdparam">fd</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">slice</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214179159952"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_pid_get_session()</code> may be
                 used to determine the login session identifier of a
                 process identified by the specified process
                 identifier. The session identifier is a short string,
@@ -84,9 +84,9 @@
                 <code class="function">sd_peer_get_slice()</code> calls operate
                 similar to their PID counterparts, but operate on a
                 connected AF_UNIX socket and retrieve information
-                about the connected peer process.</p></div><div class="refsect1"><a name="idm214189630000"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>On success, these calls return 0 or a positive
+                about the connected peer process.</p></div><div class="refsect1"><a name="idm214174228912"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>On success, these calls return 0 or a positive
                 integer. On failure, these calls return a negative
-                errno-style error code.</p></div><div class="refsect1"><a name="idm214189628672"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p>The <code class="function">sd_pid_get_session()</code>,
+                errno-style error code.</p></div><div class="refsect1"><a name="idm214174227584"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p>The <code class="function">sd_pid_get_session()</code>,
                 <code class="function">sd_pid_get_unit()</code>,
                 <code class="function">sd_pid_get_user_unit()</code>,
                 <code class="function">sd_pid_get_owner_uid()</code>,
                 returned by <code class="function">sd_pid_get_session()</code>
                 is completely unrelated to the process session
                 identifier as returned by
-                <a href="getsid.html"><span class="citerefentry"><span class="refentrytitle">getsid</span>(2)</span></a>.</p></div><div class="refsect1"><a name="idm214189616800"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+                <a href="getsid.html"><span class="citerefentry"><span class="refentrytitle">getsid</span>(2)</span></a>.</p></div><div class="refsect1"><a name="idm214174215712"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
                         <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
                         <a href="sd-login.html"><span class="citerefentry"><span class="refentrytitle">sd-login</span>(3)</span></a>,
                         <a href="sd_session_is_active.html"><span class="citerefentry"><span class="refentrytitle">sd_session_is_active</span>(3)</span></a>,
index 3ac08d611e75553c81aa8e179cf0877095dc7013..541808f63fd04bc949f749ca4f40cd3dcf391b2d 100644 (file)
@@ -19,9 +19,9 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="sd_pid_get_session"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_pid_get_session, sd_pid_get_unit, sd_pid_get_user_unit, sd_pid_get_owner_uid, sd_pid_get_machine_name, sd_pid_get_slice, sd_peer_get_session, sd_peer_get_unit, sd_peer_get_user_unit, sd_peer_get_owner_uid, sd_peer_get_machine_name, sd_peer_get_slice — Determine session, service, owner of a
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="sd_pid_get_session"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_pid_get_session, sd_pid_get_unit, sd_pid_get_user_unit, sd_pid_get_owner_uid, sd_pid_get_machine_name, sd_pid_get_slice, sd_peer_get_session, sd_peer_get_unit, sd_peer_get_user_unit, sd_peer_get_owner_uid, sd_peer_get_machine_name, sd_peer_get_slice — Determine session, service, owner of a
                 session, container/VM or slice of a specific
-                PID or socket peer</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-login.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_pid_get_session</b>(</code></td><td>pid_t <var class="pdparam">pid</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">session</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_pid_get_unit</b>(</code></td><td>pid_t <var class="pdparam">pid</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">unit</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_pid_get_user_unit</b>(</code></td><td>pid_t <var class="pdparam">pid</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">unit</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_pid_get_owner_uid</b>(</code></td><td>pid_t <var class="pdparam">pid</var>, </td></tr><tr><td> </td><td>uid_t *<var class="pdparam">uid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_pid_get_machine_name</b>(</code></td><td>pid_t <var class="pdparam">pid</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">name</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_pid_get_slice</b>(</code></td><td>pid_t <var class="pdparam">pid</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">slice</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_peer_get_session</b>(</code></td><td>int <var class="pdparam">fd</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">session</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_peer_get_unit</b>(</code></td><td>int <var class="pdparam">fd</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">unit</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_peer_get_user_unit</b>(</code></td><td>int <var class="pdparam">fd</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">unit</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_peer_get_owner_uid</b>(</code></td><td>int <var class="pdparam">fd</var>, </td></tr><tr><td> </td><td>uid_t *<var class="pdparam">uid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_peer_get_machine_name</b>(</code></td><td>int <var class="pdparam">fd</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">name</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_peer_get_slice</b>(</code></td><td>int <var class="pdparam">fd</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">slice</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214194564464"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_pid_get_session()</code> may be
+                PID or socket peer</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-login.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_pid_get_session</b>(</code></td><td>pid_t <var class="pdparam">pid</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">session</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_pid_get_unit</b>(</code></td><td>pid_t <var class="pdparam">pid</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">unit</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_pid_get_user_unit</b>(</code></td><td>pid_t <var class="pdparam">pid</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">unit</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_pid_get_owner_uid</b>(</code></td><td>pid_t <var class="pdparam">pid</var>, </td></tr><tr><td> </td><td>uid_t *<var class="pdparam">uid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_pid_get_machine_name</b>(</code></td><td>pid_t <var class="pdparam">pid</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">name</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_pid_get_slice</b>(</code></td><td>pid_t <var class="pdparam">pid</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">slice</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_peer_get_session</b>(</code></td><td>int <var class="pdparam">fd</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">session</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_peer_get_unit</b>(</code></td><td>int <var class="pdparam">fd</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">unit</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_peer_get_user_unit</b>(</code></td><td>int <var class="pdparam">fd</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">unit</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_peer_get_owner_uid</b>(</code></td><td>int <var class="pdparam">fd</var>, </td></tr><tr><td> </td><td>uid_t *<var class="pdparam">uid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_peer_get_machine_name</b>(</code></td><td>int <var class="pdparam">fd</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">name</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_peer_get_slice</b>(</code></td><td>int <var class="pdparam">fd</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">slice</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214179159952"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_pid_get_session()</code> may be
                 used to determine the login session identifier of a
                 process identified by the specified process
                 identifier. The session identifier is a short string,
@@ -84,9 +84,9 @@
                 <code class="function">sd_peer_get_slice()</code> calls operate
                 similar to their PID counterparts, but operate on a
                 connected AF_UNIX socket and retrieve information
-                about the connected peer process.</p></div><div class="refsect1"><a name="idm214189630000"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>On success, these calls return 0 or a positive
+                about the connected peer process.</p></div><div class="refsect1"><a name="idm214174228912"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>On success, these calls return 0 or a positive
                 integer. On failure, these calls return a negative
-                errno-style error code.</p></div><div class="refsect1"><a name="idm214189628672"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p>The <code class="function">sd_pid_get_session()</code>,
+                errno-style error code.</p></div><div class="refsect1"><a name="idm214174227584"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p>The <code class="function">sd_pid_get_session()</code>,
                 <code class="function">sd_pid_get_unit()</code>,
                 <code class="function">sd_pid_get_user_unit()</code>,
                 <code class="function">sd_pid_get_owner_uid()</code>,
                 returned by <code class="function">sd_pid_get_session()</code>
                 is completely unrelated to the process session
                 identifier as returned by
-                <a href="getsid.html"><span class="citerefentry"><span class="refentrytitle">getsid</span>(2)</span></a>.</p></div><div class="refsect1"><a name="idm214189616800"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+                <a href="getsid.html"><span class="citerefentry"><span class="refentrytitle">getsid</span>(2)</span></a>.</p></div><div class="refsect1"><a name="idm214174215712"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
                         <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
                         <a href="sd-login.html"><span class="citerefentry"><span class="refentrytitle">sd-login</span>(3)</span></a>,
                         <a href="sd_session_is_active.html"><span class="citerefentry"><span class="refentrytitle">sd_session_is_active</span>(3)</span></a>,
index fee2d73875a332b5f7ba88c57159330be61476c1..c2b0e126fedb541cdb08e77648dce63dda329b51 100644 (file)
@@ -1,5 +1,5 @@
 '\" t
-.TH "SD_READAHEAD" "3" "" "systemd 214" "sd_readahead"
+.TH "SD_READAHEAD" "3" "" "systemd 215" "sd_readahead"
 .\" -----------------------------------------------------------------
 .\" * Define some portability stuff
 .\" -----------------------------------------------------------------
index fdc62ab1b0fc847fa2bd8f18d03e1cf6f70b0744..2d63b7d6151bfd01bc7df4e88803b133dcb1f2e8 100644 (file)
@@ -19,7 +19,7 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="sd_readahead"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_readahead — Control ongoing disk boot-time read-ahead operations</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include "sd-readahead.h"</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_readahead</b>(</code></td><td>const char *<var class="pdparam">action</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214194633440"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_readahead()</code> may be
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="sd_readahead"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_readahead — Control ongoing disk boot-time read-ahead operations</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include "sd-readahead.h"</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_readahead</b>(</code></td><td>const char *<var class="pdparam">action</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214180411520"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_readahead()</code> may be
                 called by programs involved with early boot-up to
                 control ongoing boot-time disk read-ahead operations. It may be
                 used to terminate read-ahead operations in case an
@@ -35,9 +35,9 @@
                                 read-ahead data collected during this
                                 boot-up around for use during
                                 subsequent boot-ups.</p></dd><dt id="noreplay"><span class="term">noreplay</span><a class="headerlink" title="Permalink to this term" href="#noreplay">¶</a></dt><dd><p>Terminates read-ahead
-                                replay.</p></dd></dl></div></div><div class="refsect1"><a name="idm214190871104"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>On failure, these calls return a negative
+                                replay.</p></dd></dl></div></div><div class="refsect1"><a name="idm214180403328"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>On failure, these calls return a negative
                 errno-style error code. It is generally recommended to
-                ignore the return value of this call.</p></div><div class="refsect1"><a name="idm214190869744"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p>This function is provided by the reference
+                ignore the return value of this call.</p></div><div class="refsect1"><a name="idm214180401968"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p>This function is provided by the reference
                 implementation of APIs for controlling boot-time
                 read-ahead and distributed with the systemd
                 package. The algorithm it implements is simple, and
                 details about the reference implementation, see
                 <a href="sd-readahead.html"><span class="citerefentry"><span class="refentrytitle">sd-readahead</span>(3)</span></a></p><p>If -DDISABLE_SYSTEMD is set during compilation,
                 this function will always return 0 and otherwise
-                become a NOP.</p></div><div class="refsect1"><a name="idm214190861584"></a><h2 id="Examples">Examples<a class="headerlink" title="Permalink to this headline" href="#Examples">¶</a></h2><div class="example"><a name="idm214190860912"></a><p class="title"><b>Example 1. Cancelling all read-ahead operations</b></p><div class="example-contents"><p>During boots where SELinux has to
+                become a NOP.</p></div><div class="refsect1"><a name="idm214184347568"></a><h2 id="Examples">Examples<a class="headerlink" title="Permalink to this headline" href="#Examples">¶</a></h2><div class="example"><a name="idm214184346896"></a><p class="title"><b>Example 1. Cancelling all read-ahead operations</b></p><div class="example-contents"><p>During boots where SELinux has to
                         relabel the file system hierarchy, it will
                         create a large amount of disk accesses that
                         are not necessary during normal boots. Hence
                         it is a good idea to disable both read-ahead replay and read-ahead collection.
                         </p><pre class="programlisting">sd_readahead("cancel");
-sd_readahead("noreplay");</pre></div></div><br class="example-break"></div><div class="refsect1"><a name="idm214190858544"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+sd_readahead("noreplay");</pre></div></div><br class="example-break"></div><div class="refsect1"><a name="idm214184344576"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
                         <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
                         <a href="sd-readahead.html"><span class="citerefentry"><span class="refentrytitle">sd-readahead</span>(3)</span></a>,
                         <a href="daemon.html"><span class="citerefentry"><span class="refentrytitle">daemon</span>(7)</span></a>
index 044a50c3f6de99408b500e6c598a7dc7739aaa71..2dddb5d81d85f6bd1b3c8f1e92b2e46459b7a2d4 100644 (file)
@@ -19,7 +19,7 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="sd_seat_get_active"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_seat_get_active, sd_seat_get_sessions, sd_seat_can_multi_session, sd_seat_can_tty, sd_seat_can_graphical — Determine state of a specific seat</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-login.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_seat_get_active</b>(</code></td><td>const char *<var class="pdparam">seat</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">session</var>, </td></tr><tr><td> </td><td>uid_t *<var class="pdparam">uid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_seat_get_sessions</b>(</code></td><td>const char *<var class="pdparam">seat</var>, </td></tr><tr><td> </td><td>char ***<var class="pdparam">sessions</var>, </td></tr><tr><td> </td><td>uid_t **<var class="pdparam">uid</var>, </td></tr><tr><td> </td><td>unsigned int *<var class="pdparam">n_uids</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_seat_can_multi_session</b>(</code></td><td>const char *<var class="pdparam">seat</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_seat_can_tty</b>(</code></td><td>const char *<var class="pdparam">seat</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_seat_can_graphical</b>(</code></td><td>const char *<var class="pdparam">seat</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214179516240"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_seat_get_active()</code> may be
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="sd_seat_get_active"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_seat_get_active, sd_seat_get_sessions, sd_seat_can_multi_session, sd_seat_can_tty, sd_seat_can_graphical — Determine state of a specific seat</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-login.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_seat_get_active</b>(</code></td><td>const char *<var class="pdparam">seat</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">session</var>, </td></tr><tr><td> </td><td>uid_t *<var class="pdparam">uid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_seat_get_sessions</b>(</code></td><td>const char *<var class="pdparam">seat</var>, </td></tr><tr><td> </td><td>char ***<var class="pdparam">sessions</var>, </td></tr><tr><td> </td><td>uid_t **<var class="pdparam">uid</var>, </td></tr><tr><td> </td><td>unsigned int *<var class="pdparam">n_uids</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_seat_can_multi_session</b>(</code></td><td>const char *<var class="pdparam">seat</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_seat_can_tty</b>(</code></td><td>const char *<var class="pdparam">seat</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_seat_can_graphical</b>(</code></td><td>const char *<var class="pdparam">seat</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214195794128"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_seat_get_active()</code> may be
                 used to determine which session is currently active on
                 a seat, if there is any. Returns the session
                 identifier and the user identifier of the Unix user
@@ -56,7 +56,7 @@
                 of these functions is passed as
                 <code class="constant">NULL</code>, the operation is executed
                 for the seat of the session of the calling process, if
-                there is any.</p></div><div class="refsect1"><a name="idm214179504144"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p> On success,
+                there is any.</p></div><div class="refsect1"><a name="idm214195782032"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p> On success,
                 <code class="function">sd_seat_get_active()</code>
                 returns 0 or a positive integer. On success,
                 <code class="function">sd_seat_get_sessions()</code> returns
@@ -66,7 +66,7 @@
                 <code class="function">sd_seat_can_tty</code> and
                 <code class="function">sd_seat_can_graphical</code> return a
                 positive integer, if it fails 0. On failure, these
-                calls return a negative errno-style error code.</p></div><div class="refsect1"><a name="idm214179491728"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p>The <code class="function">sd_seat_get_active()</code>,
+                calls return a negative errno-style error code.</p></div><div class="refsect1"><a name="idm214195769616"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p>The <code class="function">sd_seat_get_active()</code>,
                 <code class="function">sd_seat_get_sessions()</code>,
                 <code class="function">sd_seat_can_multi_session()</code>,
                 <code class="function">sd_seat_can_tty()</code> and
@@ -74,7 +74,7 @@
                 are available as a shared library, which can be compiled
                 and linked to with the
                 <code class="constant">libsystemd</code> <a href="pkg-config.html"><span class="citerefentry"><span class="refentrytitle">pkg-config</span>(1)</span></a>
-                file.</p></div><div class="refsect1"><a name="idm214179485488"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+                file.</p></div><div class="refsect1"><a name="idm214195763328"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
                         <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
                         <a href="sd-login.html"><span class="citerefentry"><span class="refentrytitle">sd-login</span>(3)</span></a>,
                         <a href="sd_session_get_seat.html"><span class="citerefentry"><span class="refentrytitle">sd_session_get_seat</span>(3)</span></a>
index 044a50c3f6de99408b500e6c598a7dc7739aaa71..2dddb5d81d85f6bd1b3c8f1e92b2e46459b7a2d4 100644 (file)
@@ -19,7 +19,7 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="sd_seat_get_active"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_seat_get_active, sd_seat_get_sessions, sd_seat_can_multi_session, sd_seat_can_tty, sd_seat_can_graphical — Determine state of a specific seat</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-login.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_seat_get_active</b>(</code></td><td>const char *<var class="pdparam">seat</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">session</var>, </td></tr><tr><td> </td><td>uid_t *<var class="pdparam">uid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_seat_get_sessions</b>(</code></td><td>const char *<var class="pdparam">seat</var>, </td></tr><tr><td> </td><td>char ***<var class="pdparam">sessions</var>, </td></tr><tr><td> </td><td>uid_t **<var class="pdparam">uid</var>, </td></tr><tr><td> </td><td>unsigned int *<var class="pdparam">n_uids</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_seat_can_multi_session</b>(</code></td><td>const char *<var class="pdparam">seat</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_seat_can_tty</b>(</code></td><td>const char *<var class="pdparam">seat</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_seat_can_graphical</b>(</code></td><td>const char *<var class="pdparam">seat</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214179516240"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_seat_get_active()</code> may be
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="sd_seat_get_active"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_seat_get_active, sd_seat_get_sessions, sd_seat_can_multi_session, sd_seat_can_tty, sd_seat_can_graphical — Determine state of a specific seat</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-login.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_seat_get_active</b>(</code></td><td>const char *<var class="pdparam">seat</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">session</var>, </td></tr><tr><td> </td><td>uid_t *<var class="pdparam">uid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_seat_get_sessions</b>(</code></td><td>const char *<var class="pdparam">seat</var>, </td></tr><tr><td> </td><td>char ***<var class="pdparam">sessions</var>, </td></tr><tr><td> </td><td>uid_t **<var class="pdparam">uid</var>, </td></tr><tr><td> </td><td>unsigned int *<var class="pdparam">n_uids</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_seat_can_multi_session</b>(</code></td><td>const char *<var class="pdparam">seat</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_seat_can_tty</b>(</code></td><td>const char *<var class="pdparam">seat</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_seat_can_graphical</b>(</code></td><td>const char *<var class="pdparam">seat</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214195794128"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_seat_get_active()</code> may be
                 used to determine which session is currently active on
                 a seat, if there is any. Returns the session
                 identifier and the user identifier of the Unix user
@@ -56,7 +56,7 @@
                 of these functions is passed as
                 <code class="constant">NULL</code>, the operation is executed
                 for the seat of the session of the calling process, if
-                there is any.</p></div><div class="refsect1"><a name="idm214179504144"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p> On success,
+                there is any.</p></div><div class="refsect1"><a name="idm214195782032"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p> On success,
                 <code class="function">sd_seat_get_active()</code>
                 returns 0 or a positive integer. On success,
                 <code class="function">sd_seat_get_sessions()</code> returns
@@ -66,7 +66,7 @@
                 <code class="function">sd_seat_can_tty</code> and
                 <code class="function">sd_seat_can_graphical</code> return a
                 positive integer, if it fails 0. On failure, these
-                calls return a negative errno-style error code.</p></div><div class="refsect1"><a name="idm214179491728"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p>The <code class="function">sd_seat_get_active()</code>,
+                calls return a negative errno-style error code.</p></div><div class="refsect1"><a name="idm214195769616"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p>The <code class="function">sd_seat_get_active()</code>,
                 <code class="function">sd_seat_get_sessions()</code>,
                 <code class="function">sd_seat_can_multi_session()</code>,
                 <code class="function">sd_seat_can_tty()</code> and
@@ -74,7 +74,7 @@
                 are available as a shared library, which can be compiled
                 and linked to with the
                 <code class="constant">libsystemd</code> <a href="pkg-config.html"><span class="citerefentry"><span class="refentrytitle">pkg-config</span>(1)</span></a>
-                file.</p></div><div class="refsect1"><a name="idm214179485488"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+                file.</p></div><div class="refsect1"><a name="idm214195763328"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
                         <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
                         <a href="sd-login.html"><span class="citerefentry"><span class="refentrytitle">sd-login</span>(3)</span></a>,
                         <a href="sd_session_get_seat.html"><span class="citerefentry"><span class="refentrytitle">sd_session_get_seat</span>(3)</span></a>
index 044a50c3f6de99408b500e6c598a7dc7739aaa71..2dddb5d81d85f6bd1b3c8f1e92b2e46459b7a2d4 100644 (file)
@@ -19,7 +19,7 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="sd_seat_get_active"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_seat_get_active, sd_seat_get_sessions, sd_seat_can_multi_session, sd_seat_can_tty, sd_seat_can_graphical — Determine state of a specific seat</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-login.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_seat_get_active</b>(</code></td><td>const char *<var class="pdparam">seat</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">session</var>, </td></tr><tr><td> </td><td>uid_t *<var class="pdparam">uid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_seat_get_sessions</b>(</code></td><td>const char *<var class="pdparam">seat</var>, </td></tr><tr><td> </td><td>char ***<var class="pdparam">sessions</var>, </td></tr><tr><td> </td><td>uid_t **<var class="pdparam">uid</var>, </td></tr><tr><td> </td><td>unsigned int *<var class="pdparam">n_uids</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_seat_can_multi_session</b>(</code></td><td>const char *<var class="pdparam">seat</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_seat_can_tty</b>(</code></td><td>const char *<var class="pdparam">seat</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_seat_can_graphical</b>(</code></td><td>const char *<var class="pdparam">seat</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214179516240"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_seat_get_active()</code> may be
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="sd_seat_get_active"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_seat_get_active, sd_seat_get_sessions, sd_seat_can_multi_session, sd_seat_can_tty, sd_seat_can_graphical — Determine state of a specific seat</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-login.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_seat_get_active</b>(</code></td><td>const char *<var class="pdparam">seat</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">session</var>, </td></tr><tr><td> </td><td>uid_t *<var class="pdparam">uid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_seat_get_sessions</b>(</code></td><td>const char *<var class="pdparam">seat</var>, </td></tr><tr><td> </td><td>char ***<var class="pdparam">sessions</var>, </td></tr><tr><td> </td><td>uid_t **<var class="pdparam">uid</var>, </td></tr><tr><td> </td><td>unsigned int *<var class="pdparam">n_uids</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_seat_can_multi_session</b>(</code></td><td>const char *<var class="pdparam">seat</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_seat_can_tty</b>(</code></td><td>const char *<var class="pdparam">seat</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_seat_can_graphical</b>(</code></td><td>const char *<var class="pdparam">seat</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214195794128"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_seat_get_active()</code> may be
                 used to determine which session is currently active on
                 a seat, if there is any. Returns the session
                 identifier and the user identifier of the Unix user
@@ -56,7 +56,7 @@
                 of these functions is passed as
                 <code class="constant">NULL</code>, the operation is executed
                 for the seat of the session of the calling process, if
-                there is any.</p></div><div class="refsect1"><a name="idm214179504144"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p> On success,
+                there is any.</p></div><div class="refsect1"><a name="idm214195782032"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p> On success,
                 <code class="function">sd_seat_get_active()</code>
                 returns 0 or a positive integer. On success,
                 <code class="function">sd_seat_get_sessions()</code> returns
@@ -66,7 +66,7 @@
                 <code class="function">sd_seat_can_tty</code> and
                 <code class="function">sd_seat_can_graphical</code> return a
                 positive integer, if it fails 0. On failure, these
-                calls return a negative errno-style error code.</p></div><div class="refsect1"><a name="idm214179491728"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p>The <code class="function">sd_seat_get_active()</code>,
+                calls return a negative errno-style error code.</p></div><div class="refsect1"><a name="idm214195769616"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p>The <code class="function">sd_seat_get_active()</code>,
                 <code class="function">sd_seat_get_sessions()</code>,
                 <code class="function">sd_seat_can_multi_session()</code>,
                 <code class="function">sd_seat_can_tty()</code> and
@@ -74,7 +74,7 @@
                 are available as a shared library, which can be compiled
                 and linked to with the
                 <code class="constant">libsystemd</code> <a href="pkg-config.html"><span class="citerefentry"><span class="refentrytitle">pkg-config</span>(1)</span></a>
-                file.</p></div><div class="refsect1"><a name="idm214179485488"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+                file.</p></div><div class="refsect1"><a name="idm214195763328"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
                         <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
                         <a href="sd-login.html"><span class="citerefentry"><span class="refentrytitle">sd-login</span>(3)</span></a>,
                         <a href="sd_session_get_seat.html"><span class="citerefentry"><span class="refentrytitle">sd_session_get_seat</span>(3)</span></a>
index 410ac841c3b9e21ba0a56bda68bf2d4369d150ec..4e1dd2fe26d62cbbc4bb2f126fec12060c2b8ff3 100644 (file)
@@ -1,5 +1,5 @@
 '\" t
-.TH "SD_SEAT_GET_ACTIVE" "3" "" "systemd 214" "sd_seat_get_active"
+.TH "SD_SEAT_GET_ACTIVE" "3" "" "systemd 215" "sd_seat_get_active"
 .\" -----------------------------------------------------------------
 .\" * Define some portability stuff
 .\" -----------------------------------------------------------------
index 044a50c3f6de99408b500e6c598a7dc7739aaa71..2dddb5d81d85f6bd1b3c8f1e92b2e46459b7a2d4 100644 (file)
@@ -19,7 +19,7 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="sd_seat_get_active"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_seat_get_active, sd_seat_get_sessions, sd_seat_can_multi_session, sd_seat_can_tty, sd_seat_can_graphical — Determine state of a specific seat</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-login.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_seat_get_active</b>(</code></td><td>const char *<var class="pdparam">seat</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">session</var>, </td></tr><tr><td> </td><td>uid_t *<var class="pdparam">uid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_seat_get_sessions</b>(</code></td><td>const char *<var class="pdparam">seat</var>, </td></tr><tr><td> </td><td>char ***<var class="pdparam">sessions</var>, </td></tr><tr><td> </td><td>uid_t **<var class="pdparam">uid</var>, </td></tr><tr><td> </td><td>unsigned int *<var class="pdparam">n_uids</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_seat_can_multi_session</b>(</code></td><td>const char *<var class="pdparam">seat</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_seat_can_tty</b>(</code></td><td>const char *<var class="pdparam">seat</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_seat_can_graphical</b>(</code></td><td>const char *<var class="pdparam">seat</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214179516240"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_seat_get_active()</code> may be
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="sd_seat_get_active"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_seat_get_active, sd_seat_get_sessions, sd_seat_can_multi_session, sd_seat_can_tty, sd_seat_can_graphical — Determine state of a specific seat</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-login.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_seat_get_active</b>(</code></td><td>const char *<var class="pdparam">seat</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">session</var>, </td></tr><tr><td> </td><td>uid_t *<var class="pdparam">uid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_seat_get_sessions</b>(</code></td><td>const char *<var class="pdparam">seat</var>, </td></tr><tr><td> </td><td>char ***<var class="pdparam">sessions</var>, </td></tr><tr><td> </td><td>uid_t **<var class="pdparam">uid</var>, </td></tr><tr><td> </td><td>unsigned int *<var class="pdparam">n_uids</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_seat_can_multi_session</b>(</code></td><td>const char *<var class="pdparam">seat</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_seat_can_tty</b>(</code></td><td>const char *<var class="pdparam">seat</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_seat_can_graphical</b>(</code></td><td>const char *<var class="pdparam">seat</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214195794128"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_seat_get_active()</code> may be
                 used to determine which session is currently active on
                 a seat, if there is any. Returns the session
                 identifier and the user identifier of the Unix user
@@ -56,7 +56,7 @@
                 of these functions is passed as
                 <code class="constant">NULL</code>, the operation is executed
                 for the seat of the session of the calling process, if
-                there is any.</p></div><div class="refsect1"><a name="idm214179504144"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p> On success,
+                there is any.</p></div><div class="refsect1"><a name="idm214195782032"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p> On success,
                 <code class="function">sd_seat_get_active()</code>
                 returns 0 or a positive integer. On success,
                 <code class="function">sd_seat_get_sessions()</code> returns
@@ -66,7 +66,7 @@
                 <code class="function">sd_seat_can_tty</code> and
                 <code class="function">sd_seat_can_graphical</code> return a
                 positive integer, if it fails 0. On failure, these
-                calls return a negative errno-style error code.</p></div><div class="refsect1"><a name="idm214179491728"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p>The <code class="function">sd_seat_get_active()</code>,
+                calls return a negative errno-style error code.</p></div><div class="refsect1"><a name="idm214195769616"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p>The <code class="function">sd_seat_get_active()</code>,
                 <code class="function">sd_seat_get_sessions()</code>,
                 <code class="function">sd_seat_can_multi_session()</code>,
                 <code class="function">sd_seat_can_tty()</code> and
@@ -74,7 +74,7 @@
                 are available as a shared library, which can be compiled
                 and linked to with the
                 <code class="constant">libsystemd</code> <a href="pkg-config.html"><span class="citerefentry"><span class="refentrytitle">pkg-config</span>(1)</span></a>
-                file.</p></div><div class="refsect1"><a name="idm214179485488"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+                file.</p></div><div class="refsect1"><a name="idm214195763328"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
                         <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
                         <a href="sd-login.html"><span class="citerefentry"><span class="refentrytitle">sd-login</span>(3)</span></a>,
                         <a href="sd_session_get_seat.html"><span class="citerefentry"><span class="refentrytitle">sd_session_get_seat</span>(3)</span></a>
index 044a50c3f6de99408b500e6c598a7dc7739aaa71..2dddb5d81d85f6bd1b3c8f1e92b2e46459b7a2d4 100644 (file)
@@ -19,7 +19,7 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="sd_seat_get_active"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_seat_get_active, sd_seat_get_sessions, sd_seat_can_multi_session, sd_seat_can_tty, sd_seat_can_graphical — Determine state of a specific seat</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-login.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_seat_get_active</b>(</code></td><td>const char *<var class="pdparam">seat</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">session</var>, </td></tr><tr><td> </td><td>uid_t *<var class="pdparam">uid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_seat_get_sessions</b>(</code></td><td>const char *<var class="pdparam">seat</var>, </td></tr><tr><td> </td><td>char ***<var class="pdparam">sessions</var>, </td></tr><tr><td> </td><td>uid_t **<var class="pdparam">uid</var>, </td></tr><tr><td> </td><td>unsigned int *<var class="pdparam">n_uids</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_seat_can_multi_session</b>(</code></td><td>const char *<var class="pdparam">seat</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_seat_can_tty</b>(</code></td><td>const char *<var class="pdparam">seat</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_seat_can_graphical</b>(</code></td><td>const char *<var class="pdparam">seat</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214179516240"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_seat_get_active()</code> may be
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="sd_seat_get_active"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_seat_get_active, sd_seat_get_sessions, sd_seat_can_multi_session, sd_seat_can_tty, sd_seat_can_graphical — Determine state of a specific seat</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-login.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_seat_get_active</b>(</code></td><td>const char *<var class="pdparam">seat</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">session</var>, </td></tr><tr><td> </td><td>uid_t *<var class="pdparam">uid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_seat_get_sessions</b>(</code></td><td>const char *<var class="pdparam">seat</var>, </td></tr><tr><td> </td><td>char ***<var class="pdparam">sessions</var>, </td></tr><tr><td> </td><td>uid_t **<var class="pdparam">uid</var>, </td></tr><tr><td> </td><td>unsigned int *<var class="pdparam">n_uids</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_seat_can_multi_session</b>(</code></td><td>const char *<var class="pdparam">seat</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_seat_can_tty</b>(</code></td><td>const char *<var class="pdparam">seat</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_seat_can_graphical</b>(</code></td><td>const char *<var class="pdparam">seat</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214195794128"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_seat_get_active()</code> may be
                 used to determine which session is currently active on
                 a seat, if there is any. Returns the session
                 identifier and the user identifier of the Unix user
@@ -56,7 +56,7 @@
                 of these functions is passed as
                 <code class="constant">NULL</code>, the operation is executed
                 for the seat of the session of the calling process, if
-                there is any.</p></div><div class="refsect1"><a name="idm214179504144"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p> On success,
+                there is any.</p></div><div class="refsect1"><a name="idm214195782032"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p> On success,
                 <code class="function">sd_seat_get_active()</code>
                 returns 0 or a positive integer. On success,
                 <code class="function">sd_seat_get_sessions()</code> returns
@@ -66,7 +66,7 @@
                 <code class="function">sd_seat_can_tty</code> and
                 <code class="function">sd_seat_can_graphical</code> return a
                 positive integer, if it fails 0. On failure, these
-                calls return a negative errno-style error code.</p></div><div class="refsect1"><a name="idm214179491728"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p>The <code class="function">sd_seat_get_active()</code>,
+                calls return a negative errno-style error code.</p></div><div class="refsect1"><a name="idm214195769616"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p>The <code class="function">sd_seat_get_active()</code>,
                 <code class="function">sd_seat_get_sessions()</code>,
                 <code class="function">sd_seat_can_multi_session()</code>,
                 <code class="function">sd_seat_can_tty()</code> and
@@ -74,7 +74,7 @@
                 are available as a shared library, which can be compiled
                 and linked to with the
                 <code class="constant">libsystemd</code> <a href="pkg-config.html"><span class="citerefentry"><span class="refentrytitle">pkg-config</span>(1)</span></a>
-                file.</p></div><div class="refsect1"><a name="idm214179485488"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+                file.</p></div><div class="refsect1"><a name="idm214195763328"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
                         <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
                         <a href="sd-login.html"><span class="citerefentry"><span class="refentrytitle">sd-login</span>(3)</span></a>,
                         <a href="sd_session_get_seat.html"><span class="citerefentry"><span class="refentrytitle">sd_session_get_seat</span>(3)</span></a>
index cdae5b8fc3df2fb5faff5e0f31b39650908084cc..a1ad58aea8b30c899c0ca7ad71e0efc8ae27d3f2 100644 (file)
@@ -19,7 +19,7 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="sd_session_is_active"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_session_is_active, sd_session_is_remote, sd_session_get_state, sd_session_get_uid, sd_session_get_seat, sd_session_get_service, sd_session_get_type, sd_session_get_class, sd_session_get_display, sd_session_get_tty, sd_session_get_vt, sd_session_get_remote_host, sd_session_get_remote_user — Determine state of a specific session</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-login.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_is_active</b>(</code></td><td>const char *<var class="pdparam">session</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_is_remote</b>(</code></td><td>const char *<var class="pdparam">session</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_get_state</b>(</code></td><td>const char *<var class="pdparam">session</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">state</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_get_uid</b>(</code></td><td>const char *<var class="pdparam">session</var>, </td></tr><tr><td> </td><td>uid_t *<var class="pdparam">uid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_get_seat</b>(</code></td><td>const char *<var class="pdparam">session</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">seat</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_get_service</b>(</code></td><td>const char *<var class="pdparam">session</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">service</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_get_type</b>(</code></td><td>const char *<var class="pdparam">session</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">type</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_get_class</b>(</code></td><td>const char *<var class="pdparam">session</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">class</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_get_display</b>(</code></td><td>const char *<var class="pdparam">session</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">display</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_get_remote_host</b>(</code></td><td>const char *<var class="pdparam">session</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">remote_host</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_get_remote_user</b>(</code></td><td>const char *<var class="pdparam">session</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">remote_user</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_get_tty</b>(</code></td><td>const char *<var class="pdparam">session</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">tty</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_get_vt</b>(</code></td><td>const char *<var class="pdparam">session</var>, </td></tr><tr><td> </td><td>unsigned int *<var class="pdparam">vt</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214187472368"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_session_is_active()</code> may
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="sd_session_is_active"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_session_is_active, sd_session_is_remote, sd_session_get_state, sd_session_get_uid, sd_session_get_seat, sd_session_get_service, sd_session_get_type, sd_session_get_class, sd_session_get_display, sd_session_get_tty, sd_session_get_vt, sd_session_get_remote_host, sd_session_get_remote_user — Determine state of a specific session</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-login.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_is_active</b>(</code></td><td>const char *<var class="pdparam">session</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_is_remote</b>(</code></td><td>const char *<var class="pdparam">session</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_get_state</b>(</code></td><td>const char *<var class="pdparam">session</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">state</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_get_uid</b>(</code></td><td>const char *<var class="pdparam">session</var>, </td></tr><tr><td> </td><td>uid_t *<var class="pdparam">uid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_get_seat</b>(</code></td><td>const char *<var class="pdparam">session</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">seat</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_get_service</b>(</code></td><td>const char *<var class="pdparam">session</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">service</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_get_type</b>(</code></td><td>const char *<var class="pdparam">session</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">type</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_get_class</b>(</code></td><td>const char *<var class="pdparam">session</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">class</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_get_display</b>(</code></td><td>const char *<var class="pdparam">session</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">display</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_get_remote_host</b>(</code></td><td>const char *<var class="pdparam">session</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">remote_host</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_get_remote_user</b>(</code></td><td>const char *<var class="pdparam">session</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">remote_user</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_get_tty</b>(</code></td><td>const char *<var class="pdparam">session</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">tty</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_get_vt</b>(</code></td><td>const char *<var class="pdparam">session</var>, </td></tr><tr><td> </td><td>unsigned int *<var class="pdparam">vt</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214172690320"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_session_is_active()</code> may
                 be used to determine whether the session identified by
                 the specified session identifier is currently active
                 (i.e. currently in the foreground and available for
                 any of these functions is passed as
                 <code class="constant">NULL</code>, the operation is executed
                 for the session the calling process is a member of, if
-                there is any.</p></div><div class="refsect1"><a name="idm214182525232"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>If the test succeeds,
+                there is any.</p></div><div class="refsect1"><a name="idm214167746672"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>If the test succeeds,
                 <code class="function">sd_session_is_active()</code> and
                 <code class="function">sd_session_is_remote()</code> return a
                 positive integer; if it fails, 0.  On success,
                 <code class="function">sd_session_get_remote_host()</code> and
                 <code class="function">sd_session_get_tty()</code> return 0 or
                 a positive integer. On failure, these calls return a
-                negative errno-style error code.</p></div><div class="refsect1"><a name="idm214182516336"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p>The <code class="function">sd_session_is_active()</code>,
+                negative errno-style error code.</p></div><div class="refsect1"><a name="idm214167737776"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p>The <code class="function">sd_session_is_active()</code>,
                 <code class="function">sd_session_get_state()</code>,
                 <code class="function">sd_session_get_uid()</code>,
                 <code class="function">sd_session_get_seat()</code>,
                 interfaces are available as a shared library, which can
                 be compiled and linked to with the
                 <code class="constant">libsystemd</code> <a href="pkg-config.html"><span class="citerefentry"><span class="refentrytitle">pkg-config</span>(1)</span></a>
-                file.</p></div><div class="refsect1"><a name="idm214182507008"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+                file.</p></div><div class="refsect1"><a name="idm214167728448"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
                         <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
                         <a href="sd-login.html"><span class="citerefentry"><span class="refentrytitle">sd-login</span>(3)</span></a>,
                         <a href="sd_pid_get_session.html"><span class="citerefentry"><span class="refentrytitle">sd_pid_get_session</span>(3)</span></a>
index cdae5b8fc3df2fb5faff5e0f31b39650908084cc..a1ad58aea8b30c899c0ca7ad71e0efc8ae27d3f2 100644 (file)
@@ -19,7 +19,7 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="sd_session_is_active"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_session_is_active, sd_session_is_remote, sd_session_get_state, sd_session_get_uid, sd_session_get_seat, sd_session_get_service, sd_session_get_type, sd_session_get_class, sd_session_get_display, sd_session_get_tty, sd_session_get_vt, sd_session_get_remote_host, sd_session_get_remote_user — Determine state of a specific session</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-login.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_is_active</b>(</code></td><td>const char *<var class="pdparam">session</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_is_remote</b>(</code></td><td>const char *<var class="pdparam">session</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_get_state</b>(</code></td><td>const char *<var class="pdparam">session</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">state</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_get_uid</b>(</code></td><td>const char *<var class="pdparam">session</var>, </td></tr><tr><td> </td><td>uid_t *<var class="pdparam">uid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_get_seat</b>(</code></td><td>const char *<var class="pdparam">session</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">seat</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_get_service</b>(</code></td><td>const char *<var class="pdparam">session</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">service</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_get_type</b>(</code></td><td>const char *<var class="pdparam">session</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">type</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_get_class</b>(</code></td><td>const char *<var class="pdparam">session</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">class</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_get_display</b>(</code></td><td>const char *<var class="pdparam">session</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">display</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_get_remote_host</b>(</code></td><td>const char *<var class="pdparam">session</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">remote_host</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_get_remote_user</b>(</code></td><td>const char *<var class="pdparam">session</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">remote_user</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_get_tty</b>(</code></td><td>const char *<var class="pdparam">session</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">tty</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_get_vt</b>(</code></td><td>const char *<var class="pdparam">session</var>, </td></tr><tr><td> </td><td>unsigned int *<var class="pdparam">vt</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214187472368"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_session_is_active()</code> may
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="sd_session_is_active"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_session_is_active, sd_session_is_remote, sd_session_get_state, sd_session_get_uid, sd_session_get_seat, sd_session_get_service, sd_session_get_type, sd_session_get_class, sd_session_get_display, sd_session_get_tty, sd_session_get_vt, sd_session_get_remote_host, sd_session_get_remote_user — Determine state of a specific session</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-login.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_is_active</b>(</code></td><td>const char *<var class="pdparam">session</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_is_remote</b>(</code></td><td>const char *<var class="pdparam">session</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_get_state</b>(</code></td><td>const char *<var class="pdparam">session</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">state</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_get_uid</b>(</code></td><td>const char *<var class="pdparam">session</var>, </td></tr><tr><td> </td><td>uid_t *<var class="pdparam">uid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_get_seat</b>(</code></td><td>const char *<var class="pdparam">session</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">seat</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_get_service</b>(</code></td><td>const char *<var class="pdparam">session</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">service</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_get_type</b>(</code></td><td>const char *<var class="pdparam">session</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">type</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_get_class</b>(</code></td><td>const char *<var class="pdparam">session</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">class</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_get_display</b>(</code></td><td>const char *<var class="pdparam">session</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">display</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_get_remote_host</b>(</code></td><td>const char *<var class="pdparam">session</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">remote_host</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_get_remote_user</b>(</code></td><td>const char *<var class="pdparam">session</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">remote_user</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_get_tty</b>(</code></td><td>const char *<var class="pdparam">session</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">tty</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_get_vt</b>(</code></td><td>const char *<var class="pdparam">session</var>, </td></tr><tr><td> </td><td>unsigned int *<var class="pdparam">vt</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214172690320"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_session_is_active()</code> may
                 be used to determine whether the session identified by
                 the specified session identifier is currently active
                 (i.e. currently in the foreground and available for
                 any of these functions is passed as
                 <code class="constant">NULL</code>, the operation is executed
                 for the session the calling process is a member of, if
-                there is any.</p></div><div class="refsect1"><a name="idm214182525232"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>If the test succeeds,
+                there is any.</p></div><div class="refsect1"><a name="idm214167746672"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>If the test succeeds,
                 <code class="function">sd_session_is_active()</code> and
                 <code class="function">sd_session_is_remote()</code> return a
                 positive integer; if it fails, 0.  On success,
                 <code class="function">sd_session_get_remote_host()</code> and
                 <code class="function">sd_session_get_tty()</code> return 0 or
                 a positive integer. On failure, these calls return a
-                negative errno-style error code.</p></div><div class="refsect1"><a name="idm214182516336"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p>The <code class="function">sd_session_is_active()</code>,
+                negative errno-style error code.</p></div><div class="refsect1"><a name="idm214167737776"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p>The <code class="function">sd_session_is_active()</code>,
                 <code class="function">sd_session_get_state()</code>,
                 <code class="function">sd_session_get_uid()</code>,
                 <code class="function">sd_session_get_seat()</code>,
                 interfaces are available as a shared library, which can
                 be compiled and linked to with the
                 <code class="constant">libsystemd</code> <a href="pkg-config.html"><span class="citerefentry"><span class="refentrytitle">pkg-config</span>(1)</span></a>
-                file.</p></div><div class="refsect1"><a name="idm214182507008"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+                file.</p></div><div class="refsect1"><a name="idm214167728448"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
                         <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
                         <a href="sd-login.html"><span class="citerefentry"><span class="refentrytitle">sd-login</span>(3)</span></a>,
                         <a href="sd_pid_get_session.html"><span class="citerefentry"><span class="refentrytitle">sd_pid_get_session</span>(3)</span></a>
index cdae5b8fc3df2fb5faff5e0f31b39650908084cc..a1ad58aea8b30c899c0ca7ad71e0efc8ae27d3f2 100644 (file)
@@ -19,7 +19,7 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="sd_session_is_active"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_session_is_active, sd_session_is_remote, sd_session_get_state, sd_session_get_uid, sd_session_get_seat, sd_session_get_service, sd_session_get_type, sd_session_get_class, sd_session_get_display, sd_session_get_tty, sd_session_get_vt, sd_session_get_remote_host, sd_session_get_remote_user — Determine state of a specific session</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-login.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_is_active</b>(</code></td><td>const char *<var class="pdparam">session</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_is_remote</b>(</code></td><td>const char *<var class="pdparam">session</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_get_state</b>(</code></td><td>const char *<var class="pdparam">session</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">state</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_get_uid</b>(</code></td><td>const char *<var class="pdparam">session</var>, </td></tr><tr><td> </td><td>uid_t *<var class="pdparam">uid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_get_seat</b>(</code></td><td>const char *<var class="pdparam">session</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">seat</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_get_service</b>(</code></td><td>const char *<var class="pdparam">session</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">service</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_get_type</b>(</code></td><td>const char *<var class="pdparam">session</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">type</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_get_class</b>(</code></td><td>const char *<var class="pdparam">session</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">class</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_get_display</b>(</code></td><td>const char *<var class="pdparam">session</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">display</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_get_remote_host</b>(</code></td><td>const char *<var class="pdparam">session</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">remote_host</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_get_remote_user</b>(</code></td><td>const char *<var class="pdparam">session</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">remote_user</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_get_tty</b>(</code></td><td>const char *<var class="pdparam">session</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">tty</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_get_vt</b>(</code></td><td>const char *<var class="pdparam">session</var>, </td></tr><tr><td> </td><td>unsigned int *<var class="pdparam">vt</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214187472368"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_session_is_active()</code> may
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="sd_session_is_active"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_session_is_active, sd_session_is_remote, sd_session_get_state, sd_session_get_uid, sd_session_get_seat, sd_session_get_service, sd_session_get_type, sd_session_get_class, sd_session_get_display, sd_session_get_tty, sd_session_get_vt, sd_session_get_remote_host, sd_session_get_remote_user — Determine state of a specific session</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-login.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_is_active</b>(</code></td><td>const char *<var class="pdparam">session</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_is_remote</b>(</code></td><td>const char *<var class="pdparam">session</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_get_state</b>(</code></td><td>const char *<var class="pdparam">session</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">state</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_get_uid</b>(</code></td><td>const char *<var class="pdparam">session</var>, </td></tr><tr><td> </td><td>uid_t *<var class="pdparam">uid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_get_seat</b>(</code></td><td>const char *<var class="pdparam">session</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">seat</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_get_service</b>(</code></td><td>const char *<var class="pdparam">session</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">service</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_get_type</b>(</code></td><td>const char *<var class="pdparam">session</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">type</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_get_class</b>(</code></td><td>const char *<var class="pdparam">session</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">class</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_get_display</b>(</code></td><td>const char *<var class="pdparam">session</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">display</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_get_remote_host</b>(</code></td><td>const char *<var class="pdparam">session</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">remote_host</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_get_remote_user</b>(</code></td><td>const char *<var class="pdparam">session</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">remote_user</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_get_tty</b>(</code></td><td>const char *<var class="pdparam">session</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">tty</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_get_vt</b>(</code></td><td>const char *<var class="pdparam">session</var>, </td></tr><tr><td> </td><td>unsigned int *<var class="pdparam">vt</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214172690320"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_session_is_active()</code> may
                 be used to determine whether the session identified by
                 the specified session identifier is currently active
                 (i.e. currently in the foreground and available for
                 any of these functions is passed as
                 <code class="constant">NULL</code>, the operation is executed
                 for the session the calling process is a member of, if
-                there is any.</p></div><div class="refsect1"><a name="idm214182525232"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>If the test succeeds,
+                there is any.</p></div><div class="refsect1"><a name="idm214167746672"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>If the test succeeds,
                 <code class="function">sd_session_is_active()</code> and
                 <code class="function">sd_session_is_remote()</code> return a
                 positive integer; if it fails, 0.  On success,
                 <code class="function">sd_session_get_remote_host()</code> and
                 <code class="function">sd_session_get_tty()</code> return 0 or
                 a positive integer. On failure, these calls return a
-                negative errno-style error code.</p></div><div class="refsect1"><a name="idm214182516336"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p>The <code class="function">sd_session_is_active()</code>,
+                negative errno-style error code.</p></div><div class="refsect1"><a name="idm214167737776"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p>The <code class="function">sd_session_is_active()</code>,
                 <code class="function">sd_session_get_state()</code>,
                 <code class="function">sd_session_get_uid()</code>,
                 <code class="function">sd_session_get_seat()</code>,
                 interfaces are available as a shared library, which can
                 be compiled and linked to with the
                 <code class="constant">libsystemd</code> <a href="pkg-config.html"><span class="citerefentry"><span class="refentrytitle">pkg-config</span>(1)</span></a>
-                file.</p></div><div class="refsect1"><a name="idm214182507008"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+                file.</p></div><div class="refsect1"><a name="idm214167728448"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
                         <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
                         <a href="sd-login.html"><span class="citerefentry"><span class="refentrytitle">sd-login</span>(3)</span></a>,
                         <a href="sd_pid_get_session.html"><span class="citerefentry"><span class="refentrytitle">sd_pid_get_session</span>(3)</span></a>
index cdae5b8fc3df2fb5faff5e0f31b39650908084cc..a1ad58aea8b30c899c0ca7ad71e0efc8ae27d3f2 100644 (file)
@@ -19,7 +19,7 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="sd_session_is_active"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_session_is_active, sd_session_is_remote, sd_session_get_state, sd_session_get_uid, sd_session_get_seat, sd_session_get_service, sd_session_get_type, sd_session_get_class, sd_session_get_display, sd_session_get_tty, sd_session_get_vt, sd_session_get_remote_host, sd_session_get_remote_user — Determine state of a specific session</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-login.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_is_active</b>(</code></td><td>const char *<var class="pdparam">session</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_is_remote</b>(</code></td><td>const char *<var class="pdparam">session</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_get_state</b>(</code></td><td>const char *<var class="pdparam">session</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">state</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_get_uid</b>(</code></td><td>const char *<var class="pdparam">session</var>, </td></tr><tr><td> </td><td>uid_t *<var class="pdparam">uid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_get_seat</b>(</code></td><td>const char *<var class="pdparam">session</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">seat</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_get_service</b>(</code></td><td>const char *<var class="pdparam">session</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">service</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_get_type</b>(</code></td><td>const char *<var class="pdparam">session</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">type</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_get_class</b>(</code></td><td>const char *<var class="pdparam">session</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">class</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_get_display</b>(</code></td><td>const char *<var class="pdparam">session</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">display</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_get_remote_host</b>(</code></td><td>const char *<var class="pdparam">session</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">remote_host</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_get_remote_user</b>(</code></td><td>const char *<var class="pdparam">session</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">remote_user</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_get_tty</b>(</code></td><td>const char *<var class="pdparam">session</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">tty</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_get_vt</b>(</code></td><td>const char *<var class="pdparam">session</var>, </td></tr><tr><td> </td><td>unsigned int *<var class="pdparam">vt</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214187472368"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_session_is_active()</code> may
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="sd_session_is_active"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_session_is_active, sd_session_is_remote, sd_session_get_state, sd_session_get_uid, sd_session_get_seat, sd_session_get_service, sd_session_get_type, sd_session_get_class, sd_session_get_display, sd_session_get_tty, sd_session_get_vt, sd_session_get_remote_host, sd_session_get_remote_user — Determine state of a specific session</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-login.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_is_active</b>(</code></td><td>const char *<var class="pdparam">session</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_is_remote</b>(</code></td><td>const char *<var class="pdparam">session</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_get_state</b>(</code></td><td>const char *<var class="pdparam">session</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">state</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_get_uid</b>(</code></td><td>const char *<var class="pdparam">session</var>, </td></tr><tr><td> </td><td>uid_t *<var class="pdparam">uid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_get_seat</b>(</code></td><td>const char *<var class="pdparam">session</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">seat</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_get_service</b>(</code></td><td>const char *<var class="pdparam">session</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">service</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_get_type</b>(</code></td><td>const char *<var class="pdparam">session</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">type</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_get_class</b>(</code></td><td>const char *<var class="pdparam">session</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">class</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_get_display</b>(</code></td><td>const char *<var class="pdparam">session</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">display</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_get_remote_host</b>(</code></td><td>const char *<var class="pdparam">session</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">remote_host</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_get_remote_user</b>(</code></td><td>const char *<var class="pdparam">session</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">remote_user</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_get_tty</b>(</code></td><td>const char *<var class="pdparam">session</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">tty</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_get_vt</b>(</code></td><td>const char *<var class="pdparam">session</var>, </td></tr><tr><td> </td><td>unsigned int *<var class="pdparam">vt</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214172690320"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_session_is_active()</code> may
                 be used to determine whether the session identified by
                 the specified session identifier is currently active
                 (i.e. currently in the foreground and available for
                 any of these functions is passed as
                 <code class="constant">NULL</code>, the operation is executed
                 for the session the calling process is a member of, if
-                there is any.</p></div><div class="refsect1"><a name="idm214182525232"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>If the test succeeds,
+                there is any.</p></div><div class="refsect1"><a name="idm214167746672"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>If the test succeeds,
                 <code class="function">sd_session_is_active()</code> and
                 <code class="function">sd_session_is_remote()</code> return a
                 positive integer; if it fails, 0.  On success,
                 <code class="function">sd_session_get_remote_host()</code> and
                 <code class="function">sd_session_get_tty()</code> return 0 or
                 a positive integer. On failure, these calls return a
-                negative errno-style error code.</p></div><div class="refsect1"><a name="idm214182516336"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p>The <code class="function">sd_session_is_active()</code>,
+                negative errno-style error code.</p></div><div class="refsect1"><a name="idm214167737776"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p>The <code class="function">sd_session_is_active()</code>,
                 <code class="function">sd_session_get_state()</code>,
                 <code class="function">sd_session_get_uid()</code>,
                 <code class="function">sd_session_get_seat()</code>,
                 interfaces are available as a shared library, which can
                 be compiled and linked to with the
                 <code class="constant">libsystemd</code> <a href="pkg-config.html"><span class="citerefentry"><span class="refentrytitle">pkg-config</span>(1)</span></a>
-                file.</p></div><div class="refsect1"><a name="idm214182507008"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+                file.</p></div><div class="refsect1"><a name="idm214167728448"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
                         <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
                         <a href="sd-login.html"><span class="citerefentry"><span class="refentrytitle">sd-login</span>(3)</span></a>,
                         <a href="sd_pid_get_session.html"><span class="citerefentry"><span class="refentrytitle">sd_pid_get_session</span>(3)</span></a>
index cdae5b8fc3df2fb5faff5e0f31b39650908084cc..a1ad58aea8b30c899c0ca7ad71e0efc8ae27d3f2 100644 (file)
@@ -19,7 +19,7 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="sd_session_is_active"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_session_is_active, sd_session_is_remote, sd_session_get_state, sd_session_get_uid, sd_session_get_seat, sd_session_get_service, sd_session_get_type, sd_session_get_class, sd_session_get_display, sd_session_get_tty, sd_session_get_vt, sd_session_get_remote_host, sd_session_get_remote_user — Determine state of a specific session</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-login.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_is_active</b>(</code></td><td>const char *<var class="pdparam">session</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_is_remote</b>(</code></td><td>const char *<var class="pdparam">session</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_get_state</b>(</code></td><td>const char *<var class="pdparam">session</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">state</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_get_uid</b>(</code></td><td>const char *<var class="pdparam">session</var>, </td></tr><tr><td> </td><td>uid_t *<var class="pdparam">uid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_get_seat</b>(</code></td><td>const char *<var class="pdparam">session</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">seat</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_get_service</b>(</code></td><td>const char *<var class="pdparam">session</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">service</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_get_type</b>(</code></td><td>const char *<var class="pdparam">session</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">type</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_get_class</b>(</code></td><td>const char *<var class="pdparam">session</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">class</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_get_display</b>(</code></td><td>const char *<var class="pdparam">session</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">display</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_get_remote_host</b>(</code></td><td>const char *<var class="pdparam">session</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">remote_host</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_get_remote_user</b>(</code></td><td>const char *<var class="pdparam">session</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">remote_user</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_get_tty</b>(</code></td><td>const char *<var class="pdparam">session</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">tty</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_get_vt</b>(</code></td><td>const char *<var class="pdparam">session</var>, </td></tr><tr><td> </td><td>unsigned int *<var class="pdparam">vt</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214187472368"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_session_is_active()</code> may
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="sd_session_is_active"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_session_is_active, sd_session_is_remote, sd_session_get_state, sd_session_get_uid, sd_session_get_seat, sd_session_get_service, sd_session_get_type, sd_session_get_class, sd_session_get_display, sd_session_get_tty, sd_session_get_vt, sd_session_get_remote_host, sd_session_get_remote_user — Determine state of a specific session</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-login.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_is_active</b>(</code></td><td>const char *<var class="pdparam">session</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_is_remote</b>(</code></td><td>const char *<var class="pdparam">session</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_get_state</b>(</code></td><td>const char *<var class="pdparam">session</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">state</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_get_uid</b>(</code></td><td>const char *<var class="pdparam">session</var>, </td></tr><tr><td> </td><td>uid_t *<var class="pdparam">uid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_get_seat</b>(</code></td><td>const char *<var class="pdparam">session</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">seat</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_get_service</b>(</code></td><td>const char *<var class="pdparam">session</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">service</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_get_type</b>(</code></td><td>const char *<var class="pdparam">session</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">type</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_get_class</b>(</code></td><td>const char *<var class="pdparam">session</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">class</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_get_display</b>(</code></td><td>const char *<var class="pdparam">session</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">display</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_get_remote_host</b>(</code></td><td>const char *<var class="pdparam">session</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">remote_host</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_get_remote_user</b>(</code></td><td>const char *<var class="pdparam">session</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">remote_user</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_get_tty</b>(</code></td><td>const char *<var class="pdparam">session</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">tty</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_get_vt</b>(</code></td><td>const char *<var class="pdparam">session</var>, </td></tr><tr><td> </td><td>unsigned int *<var class="pdparam">vt</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214172690320"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_session_is_active()</code> may
                 be used to determine whether the session identified by
                 the specified session identifier is currently active
                 (i.e. currently in the foreground and available for
                 any of these functions is passed as
                 <code class="constant">NULL</code>, the operation is executed
                 for the session the calling process is a member of, if
-                there is any.</p></div><div class="refsect1"><a name="idm214182525232"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>If the test succeeds,
+                there is any.</p></div><div class="refsect1"><a name="idm214167746672"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>If the test succeeds,
                 <code class="function">sd_session_is_active()</code> and
                 <code class="function">sd_session_is_remote()</code> return a
                 positive integer; if it fails, 0.  On success,
                 <code class="function">sd_session_get_remote_host()</code> and
                 <code class="function">sd_session_get_tty()</code> return 0 or
                 a positive integer. On failure, these calls return a
-                negative errno-style error code.</p></div><div class="refsect1"><a name="idm214182516336"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p>The <code class="function">sd_session_is_active()</code>,
+                negative errno-style error code.</p></div><div class="refsect1"><a name="idm214167737776"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p>The <code class="function">sd_session_is_active()</code>,
                 <code class="function">sd_session_get_state()</code>,
                 <code class="function">sd_session_get_uid()</code>,
                 <code class="function">sd_session_get_seat()</code>,
                 interfaces are available as a shared library, which can
                 be compiled and linked to with the
                 <code class="constant">libsystemd</code> <a href="pkg-config.html"><span class="citerefentry"><span class="refentrytitle">pkg-config</span>(1)</span></a>
-                file.</p></div><div class="refsect1"><a name="idm214182507008"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+                file.</p></div><div class="refsect1"><a name="idm214167728448"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
                         <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
                         <a href="sd-login.html"><span class="citerefentry"><span class="refentrytitle">sd-login</span>(3)</span></a>,
                         <a href="sd_pid_get_session.html"><span class="citerefentry"><span class="refentrytitle">sd_pid_get_session</span>(3)</span></a>
index cdae5b8fc3df2fb5faff5e0f31b39650908084cc..a1ad58aea8b30c899c0ca7ad71e0efc8ae27d3f2 100644 (file)
@@ -19,7 +19,7 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="sd_session_is_active"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_session_is_active, sd_session_is_remote, sd_session_get_state, sd_session_get_uid, sd_session_get_seat, sd_session_get_service, sd_session_get_type, sd_session_get_class, sd_session_get_display, sd_session_get_tty, sd_session_get_vt, sd_session_get_remote_host, sd_session_get_remote_user — Determine state of a specific session</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-login.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_is_active</b>(</code></td><td>const char *<var class="pdparam">session</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_is_remote</b>(</code></td><td>const char *<var class="pdparam">session</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_get_state</b>(</code></td><td>const char *<var class="pdparam">session</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">state</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_get_uid</b>(</code></td><td>const char *<var class="pdparam">session</var>, </td></tr><tr><td> </td><td>uid_t *<var class="pdparam">uid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_get_seat</b>(</code></td><td>const char *<var class="pdparam">session</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">seat</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_get_service</b>(</code></td><td>const char *<var class="pdparam">session</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">service</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_get_type</b>(</code></td><td>const char *<var class="pdparam">session</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">type</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_get_class</b>(</code></td><td>const char *<var class="pdparam">session</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">class</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_get_display</b>(</code></td><td>const char *<var class="pdparam">session</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">display</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_get_remote_host</b>(</code></td><td>const char *<var class="pdparam">session</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">remote_host</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_get_remote_user</b>(</code></td><td>const char *<var class="pdparam">session</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">remote_user</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_get_tty</b>(</code></td><td>const char *<var class="pdparam">session</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">tty</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_get_vt</b>(</code></td><td>const char *<var class="pdparam">session</var>, </td></tr><tr><td> </td><td>unsigned int *<var class="pdparam">vt</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214187472368"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_session_is_active()</code> may
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="sd_session_is_active"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_session_is_active, sd_session_is_remote, sd_session_get_state, sd_session_get_uid, sd_session_get_seat, sd_session_get_service, sd_session_get_type, sd_session_get_class, sd_session_get_display, sd_session_get_tty, sd_session_get_vt, sd_session_get_remote_host, sd_session_get_remote_user — Determine state of a specific session</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-login.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_is_active</b>(</code></td><td>const char *<var class="pdparam">session</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_is_remote</b>(</code></td><td>const char *<var class="pdparam">session</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_get_state</b>(</code></td><td>const char *<var class="pdparam">session</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">state</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_get_uid</b>(</code></td><td>const char *<var class="pdparam">session</var>, </td></tr><tr><td> </td><td>uid_t *<var class="pdparam">uid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_get_seat</b>(</code></td><td>const char *<var class="pdparam">session</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">seat</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_get_service</b>(</code></td><td>const char *<var class="pdparam">session</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">service</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_get_type</b>(</code></td><td>const char *<var class="pdparam">session</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">type</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_get_class</b>(</code></td><td>const char *<var class="pdparam">session</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">class</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_get_display</b>(</code></td><td>const char *<var class="pdparam">session</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">display</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_get_remote_host</b>(</code></td><td>const char *<var class="pdparam">session</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">remote_host</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_get_remote_user</b>(</code></td><td>const char *<var class="pdparam">session</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">remote_user</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_get_tty</b>(</code></td><td>const char *<var class="pdparam">session</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">tty</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_get_vt</b>(</code></td><td>const char *<var class="pdparam">session</var>, </td></tr><tr><td> </td><td>unsigned int *<var class="pdparam">vt</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214172690320"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_session_is_active()</code> may
                 be used to determine whether the session identified by
                 the specified session identifier is currently active
                 (i.e. currently in the foreground and available for
                 any of these functions is passed as
                 <code class="constant">NULL</code>, the operation is executed
                 for the session the calling process is a member of, if
-                there is any.</p></div><div class="refsect1"><a name="idm214182525232"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>If the test succeeds,
+                there is any.</p></div><div class="refsect1"><a name="idm214167746672"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>If the test succeeds,
                 <code class="function">sd_session_is_active()</code> and
                 <code class="function">sd_session_is_remote()</code> return a
                 positive integer; if it fails, 0.  On success,
                 <code class="function">sd_session_get_remote_host()</code> and
                 <code class="function">sd_session_get_tty()</code> return 0 or
                 a positive integer. On failure, these calls return a
-                negative errno-style error code.</p></div><div class="refsect1"><a name="idm214182516336"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p>The <code class="function">sd_session_is_active()</code>,
+                negative errno-style error code.</p></div><div class="refsect1"><a name="idm214167737776"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p>The <code class="function">sd_session_is_active()</code>,
                 <code class="function">sd_session_get_state()</code>,
                 <code class="function">sd_session_get_uid()</code>,
                 <code class="function">sd_session_get_seat()</code>,
                 interfaces are available as a shared library, which can
                 be compiled and linked to with the
                 <code class="constant">libsystemd</code> <a href="pkg-config.html"><span class="citerefentry"><span class="refentrytitle">pkg-config</span>(1)</span></a>
-                file.</p></div><div class="refsect1"><a name="idm214182507008"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+                file.</p></div><div class="refsect1"><a name="idm214167728448"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
                         <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
                         <a href="sd-login.html"><span class="citerefentry"><span class="refentrytitle">sd-login</span>(3)</span></a>,
                         <a href="sd_pid_get_session.html"><span class="citerefentry"><span class="refentrytitle">sd_pid_get_session</span>(3)</span></a>
index cdae5b8fc3df2fb5faff5e0f31b39650908084cc..a1ad58aea8b30c899c0ca7ad71e0efc8ae27d3f2 100644 (file)
@@ -19,7 +19,7 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="sd_session_is_active"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_session_is_active, sd_session_is_remote, sd_session_get_state, sd_session_get_uid, sd_session_get_seat, sd_session_get_service, sd_session_get_type, sd_session_get_class, sd_session_get_display, sd_session_get_tty, sd_session_get_vt, sd_session_get_remote_host, sd_session_get_remote_user — Determine state of a specific session</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-login.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_is_active</b>(</code></td><td>const char *<var class="pdparam">session</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_is_remote</b>(</code></td><td>const char *<var class="pdparam">session</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_get_state</b>(</code></td><td>const char *<var class="pdparam">session</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">state</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_get_uid</b>(</code></td><td>const char *<var class="pdparam">session</var>, </td></tr><tr><td> </td><td>uid_t *<var class="pdparam">uid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_get_seat</b>(</code></td><td>const char *<var class="pdparam">session</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">seat</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_get_service</b>(</code></td><td>const char *<var class="pdparam">session</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">service</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_get_type</b>(</code></td><td>const char *<var class="pdparam">session</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">type</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_get_class</b>(</code></td><td>const char *<var class="pdparam">session</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">class</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_get_display</b>(</code></td><td>const char *<var class="pdparam">session</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">display</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_get_remote_host</b>(</code></td><td>const char *<var class="pdparam">session</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">remote_host</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_get_remote_user</b>(</code></td><td>const char *<var class="pdparam">session</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">remote_user</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_get_tty</b>(</code></td><td>const char *<var class="pdparam">session</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">tty</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_get_vt</b>(</code></td><td>const char *<var class="pdparam">session</var>, </td></tr><tr><td> </td><td>unsigned int *<var class="pdparam">vt</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214187472368"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_session_is_active()</code> may
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="sd_session_is_active"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_session_is_active, sd_session_is_remote, sd_session_get_state, sd_session_get_uid, sd_session_get_seat, sd_session_get_service, sd_session_get_type, sd_session_get_class, sd_session_get_display, sd_session_get_tty, sd_session_get_vt, sd_session_get_remote_host, sd_session_get_remote_user — Determine state of a specific session</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-login.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_is_active</b>(</code></td><td>const char *<var class="pdparam">session</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_is_remote</b>(</code></td><td>const char *<var class="pdparam">session</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_get_state</b>(</code></td><td>const char *<var class="pdparam">session</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">state</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_get_uid</b>(</code></td><td>const char *<var class="pdparam">session</var>, </td></tr><tr><td> </td><td>uid_t *<var class="pdparam">uid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_get_seat</b>(</code></td><td>const char *<var class="pdparam">session</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">seat</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_get_service</b>(</code></td><td>const char *<var class="pdparam">session</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">service</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_get_type</b>(</code></td><td>const char *<var class="pdparam">session</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">type</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_get_class</b>(</code></td><td>const char *<var class="pdparam">session</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">class</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_get_display</b>(</code></td><td>const char *<var class="pdparam">session</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">display</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_get_remote_host</b>(</code></td><td>const char *<var class="pdparam">session</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">remote_host</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_get_remote_user</b>(</code></td><td>const char *<var class="pdparam">session</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">remote_user</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_get_tty</b>(</code></td><td>const char *<var class="pdparam">session</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">tty</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_get_vt</b>(</code></td><td>const char *<var class="pdparam">session</var>, </td></tr><tr><td> </td><td>unsigned int *<var class="pdparam">vt</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214172690320"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_session_is_active()</code> may
                 be used to determine whether the session identified by
                 the specified session identifier is currently active
                 (i.e. currently in the foreground and available for
                 any of these functions is passed as
                 <code class="constant">NULL</code>, the operation is executed
                 for the session the calling process is a member of, if
-                there is any.</p></div><div class="refsect1"><a name="idm214182525232"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>If the test succeeds,
+                there is any.</p></div><div class="refsect1"><a name="idm214167746672"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>If the test succeeds,
                 <code class="function">sd_session_is_active()</code> and
                 <code class="function">sd_session_is_remote()</code> return a
                 positive integer; if it fails, 0.  On success,
                 <code class="function">sd_session_get_remote_host()</code> and
                 <code class="function">sd_session_get_tty()</code> return 0 or
                 a positive integer. On failure, these calls return a
-                negative errno-style error code.</p></div><div class="refsect1"><a name="idm214182516336"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p>The <code class="function">sd_session_is_active()</code>,
+                negative errno-style error code.</p></div><div class="refsect1"><a name="idm214167737776"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p>The <code class="function">sd_session_is_active()</code>,
                 <code class="function">sd_session_get_state()</code>,
                 <code class="function">sd_session_get_uid()</code>,
                 <code class="function">sd_session_get_seat()</code>,
                 interfaces are available as a shared library, which can
                 be compiled and linked to with the
                 <code class="constant">libsystemd</code> <a href="pkg-config.html"><span class="citerefentry"><span class="refentrytitle">pkg-config</span>(1)</span></a>
-                file.</p></div><div class="refsect1"><a name="idm214182507008"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+                file.</p></div><div class="refsect1"><a name="idm214167728448"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
                         <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
                         <a href="sd-login.html"><span class="citerefentry"><span class="refentrytitle">sd-login</span>(3)</span></a>,
                         <a href="sd_pid_get_session.html"><span class="citerefentry"><span class="refentrytitle">sd_pid_get_session</span>(3)</span></a>
index cdae5b8fc3df2fb5faff5e0f31b39650908084cc..a1ad58aea8b30c899c0ca7ad71e0efc8ae27d3f2 100644 (file)
@@ -19,7 +19,7 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="sd_session_is_active"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_session_is_active, sd_session_is_remote, sd_session_get_state, sd_session_get_uid, sd_session_get_seat, sd_session_get_service, sd_session_get_type, sd_session_get_class, sd_session_get_display, sd_session_get_tty, sd_session_get_vt, sd_session_get_remote_host, sd_session_get_remote_user — Determine state of a specific session</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-login.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_is_active</b>(</code></td><td>const char *<var class="pdparam">session</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_is_remote</b>(</code></td><td>const char *<var class="pdparam">session</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_get_state</b>(</code></td><td>const char *<var class="pdparam">session</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">state</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_get_uid</b>(</code></td><td>const char *<var class="pdparam">session</var>, </td></tr><tr><td> </td><td>uid_t *<var class="pdparam">uid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_get_seat</b>(</code></td><td>const char *<var class="pdparam">session</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">seat</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_get_service</b>(</code></td><td>const char *<var class="pdparam">session</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">service</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_get_type</b>(</code></td><td>const char *<var class="pdparam">session</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">type</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_get_class</b>(</code></td><td>const char *<var class="pdparam">session</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">class</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_get_display</b>(</code></td><td>const char *<var class="pdparam">session</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">display</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_get_remote_host</b>(</code></td><td>const char *<var class="pdparam">session</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">remote_host</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_get_remote_user</b>(</code></td><td>const char *<var class="pdparam">session</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">remote_user</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_get_tty</b>(</code></td><td>const char *<var class="pdparam">session</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">tty</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_get_vt</b>(</code></td><td>const char *<var class="pdparam">session</var>, </td></tr><tr><td> </td><td>unsigned int *<var class="pdparam">vt</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214187472368"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_session_is_active()</code> may
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="sd_session_is_active"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_session_is_active, sd_session_is_remote, sd_session_get_state, sd_session_get_uid, sd_session_get_seat, sd_session_get_service, sd_session_get_type, sd_session_get_class, sd_session_get_display, sd_session_get_tty, sd_session_get_vt, sd_session_get_remote_host, sd_session_get_remote_user — Determine state of a specific session</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-login.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_is_active</b>(</code></td><td>const char *<var class="pdparam">session</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_is_remote</b>(</code></td><td>const char *<var class="pdparam">session</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_get_state</b>(</code></td><td>const char *<var class="pdparam">session</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">state</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_get_uid</b>(</code></td><td>const char *<var class="pdparam">session</var>, </td></tr><tr><td> </td><td>uid_t *<var class="pdparam">uid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_get_seat</b>(</code></td><td>const char *<var class="pdparam">session</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">seat</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_get_service</b>(</code></td><td>const char *<var class="pdparam">session</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">service</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_get_type</b>(</code></td><td>const char *<var class="pdparam">session</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">type</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_get_class</b>(</code></td><td>const char *<var class="pdparam">session</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">class</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_get_display</b>(</code></td><td>const char *<var class="pdparam">session</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">display</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_get_remote_host</b>(</code></td><td>const char *<var class="pdparam">session</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">remote_host</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_get_remote_user</b>(</code></td><td>const char *<var class="pdparam">session</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">remote_user</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_get_tty</b>(</code></td><td>const char *<var class="pdparam">session</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">tty</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_get_vt</b>(</code></td><td>const char *<var class="pdparam">session</var>, </td></tr><tr><td> </td><td>unsigned int *<var class="pdparam">vt</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214172690320"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_session_is_active()</code> may
                 be used to determine whether the session identified by
                 the specified session identifier is currently active
                 (i.e. currently in the foreground and available for
                 any of these functions is passed as
                 <code class="constant">NULL</code>, the operation is executed
                 for the session the calling process is a member of, if
-                there is any.</p></div><div class="refsect1"><a name="idm214182525232"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>If the test succeeds,
+                there is any.</p></div><div class="refsect1"><a name="idm214167746672"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>If the test succeeds,
                 <code class="function">sd_session_is_active()</code> and
                 <code class="function">sd_session_is_remote()</code> return a
                 positive integer; if it fails, 0.  On success,
                 <code class="function">sd_session_get_remote_host()</code> and
                 <code class="function">sd_session_get_tty()</code> return 0 or
                 a positive integer. On failure, these calls return a
-                negative errno-style error code.</p></div><div class="refsect1"><a name="idm214182516336"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p>The <code class="function">sd_session_is_active()</code>,
+                negative errno-style error code.</p></div><div class="refsect1"><a name="idm214167737776"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p>The <code class="function">sd_session_is_active()</code>,
                 <code class="function">sd_session_get_state()</code>,
                 <code class="function">sd_session_get_uid()</code>,
                 <code class="function">sd_session_get_seat()</code>,
                 interfaces are available as a shared library, which can
                 be compiled and linked to with the
                 <code class="constant">libsystemd</code> <a href="pkg-config.html"><span class="citerefentry"><span class="refentrytitle">pkg-config</span>(1)</span></a>
-                file.</p></div><div class="refsect1"><a name="idm214182507008"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+                file.</p></div><div class="refsect1"><a name="idm214167728448"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
                         <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
                         <a href="sd-login.html"><span class="citerefentry"><span class="refentrytitle">sd-login</span>(3)</span></a>,
                         <a href="sd_pid_get_session.html"><span class="citerefentry"><span class="refentrytitle">sd_pid_get_session</span>(3)</span></a>
index cdae5b8fc3df2fb5faff5e0f31b39650908084cc..a1ad58aea8b30c899c0ca7ad71e0efc8ae27d3f2 100644 (file)
@@ -19,7 +19,7 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="sd_session_is_active"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_session_is_active, sd_session_is_remote, sd_session_get_state, sd_session_get_uid, sd_session_get_seat, sd_session_get_service, sd_session_get_type, sd_session_get_class, sd_session_get_display, sd_session_get_tty, sd_session_get_vt, sd_session_get_remote_host, sd_session_get_remote_user — Determine state of a specific session</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-login.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_is_active</b>(</code></td><td>const char *<var class="pdparam">session</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_is_remote</b>(</code></td><td>const char *<var class="pdparam">session</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_get_state</b>(</code></td><td>const char *<var class="pdparam">session</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">state</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_get_uid</b>(</code></td><td>const char *<var class="pdparam">session</var>, </td></tr><tr><td> </td><td>uid_t *<var class="pdparam">uid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_get_seat</b>(</code></td><td>const char *<var class="pdparam">session</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">seat</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_get_service</b>(</code></td><td>const char *<var class="pdparam">session</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">service</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_get_type</b>(</code></td><td>const char *<var class="pdparam">session</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">type</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_get_class</b>(</code></td><td>const char *<var class="pdparam">session</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">class</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_get_display</b>(</code></td><td>const char *<var class="pdparam">session</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">display</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_get_remote_host</b>(</code></td><td>const char *<var class="pdparam">session</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">remote_host</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_get_remote_user</b>(</code></td><td>const char *<var class="pdparam">session</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">remote_user</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_get_tty</b>(</code></td><td>const char *<var class="pdparam">session</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">tty</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_get_vt</b>(</code></td><td>const char *<var class="pdparam">session</var>, </td></tr><tr><td> </td><td>unsigned int *<var class="pdparam">vt</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214187472368"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_session_is_active()</code> may
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="sd_session_is_active"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_session_is_active, sd_session_is_remote, sd_session_get_state, sd_session_get_uid, sd_session_get_seat, sd_session_get_service, sd_session_get_type, sd_session_get_class, sd_session_get_display, sd_session_get_tty, sd_session_get_vt, sd_session_get_remote_host, sd_session_get_remote_user — Determine state of a specific session</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-login.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_is_active</b>(</code></td><td>const char *<var class="pdparam">session</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_is_remote</b>(</code></td><td>const char *<var class="pdparam">session</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_get_state</b>(</code></td><td>const char *<var class="pdparam">session</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">state</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_get_uid</b>(</code></td><td>const char *<var class="pdparam">session</var>, </td></tr><tr><td> </td><td>uid_t *<var class="pdparam">uid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_get_seat</b>(</code></td><td>const char *<var class="pdparam">session</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">seat</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_get_service</b>(</code></td><td>const char *<var class="pdparam">session</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">service</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_get_type</b>(</code></td><td>const char *<var class="pdparam">session</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">type</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_get_class</b>(</code></td><td>const char *<var class="pdparam">session</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">class</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_get_display</b>(</code></td><td>const char *<var class="pdparam">session</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">display</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_get_remote_host</b>(</code></td><td>const char *<var class="pdparam">session</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">remote_host</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_get_remote_user</b>(</code></td><td>const char *<var class="pdparam">session</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">remote_user</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_get_tty</b>(</code></td><td>const char *<var class="pdparam">session</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">tty</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_get_vt</b>(</code></td><td>const char *<var class="pdparam">session</var>, </td></tr><tr><td> </td><td>unsigned int *<var class="pdparam">vt</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214172690320"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_session_is_active()</code> may
                 be used to determine whether the session identified by
                 the specified session identifier is currently active
                 (i.e. currently in the foreground and available for
                 any of these functions is passed as
                 <code class="constant">NULL</code>, the operation is executed
                 for the session the calling process is a member of, if
-                there is any.</p></div><div class="refsect1"><a name="idm214182525232"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>If the test succeeds,
+                there is any.</p></div><div class="refsect1"><a name="idm214167746672"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>If the test succeeds,
                 <code class="function">sd_session_is_active()</code> and
                 <code class="function">sd_session_is_remote()</code> return a
                 positive integer; if it fails, 0.  On success,
                 <code class="function">sd_session_get_remote_host()</code> and
                 <code class="function">sd_session_get_tty()</code> return 0 or
                 a positive integer. On failure, these calls return a
-                negative errno-style error code.</p></div><div class="refsect1"><a name="idm214182516336"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p>The <code class="function">sd_session_is_active()</code>,
+                negative errno-style error code.</p></div><div class="refsect1"><a name="idm214167737776"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p>The <code class="function">sd_session_is_active()</code>,
                 <code class="function">sd_session_get_state()</code>,
                 <code class="function">sd_session_get_uid()</code>,
                 <code class="function">sd_session_get_seat()</code>,
                 interfaces are available as a shared library, which can
                 be compiled and linked to with the
                 <code class="constant">libsystemd</code> <a href="pkg-config.html"><span class="citerefentry"><span class="refentrytitle">pkg-config</span>(1)</span></a>
-                file.</p></div><div class="refsect1"><a name="idm214182507008"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+                file.</p></div><div class="refsect1"><a name="idm214167728448"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
                         <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
                         <a href="sd-login.html"><span class="citerefentry"><span class="refentrytitle">sd-login</span>(3)</span></a>,
                         <a href="sd_pid_get_session.html"><span class="citerefentry"><span class="refentrytitle">sd_pid_get_session</span>(3)</span></a>
index cdae5b8fc3df2fb5faff5e0f31b39650908084cc..a1ad58aea8b30c899c0ca7ad71e0efc8ae27d3f2 100644 (file)
@@ -19,7 +19,7 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="sd_session_is_active"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_session_is_active, sd_session_is_remote, sd_session_get_state, sd_session_get_uid, sd_session_get_seat, sd_session_get_service, sd_session_get_type, sd_session_get_class, sd_session_get_display, sd_session_get_tty, sd_session_get_vt, sd_session_get_remote_host, sd_session_get_remote_user — Determine state of a specific session</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-login.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_is_active</b>(</code></td><td>const char *<var class="pdparam">session</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_is_remote</b>(</code></td><td>const char *<var class="pdparam">session</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_get_state</b>(</code></td><td>const char *<var class="pdparam">session</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">state</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_get_uid</b>(</code></td><td>const char *<var class="pdparam">session</var>, </td></tr><tr><td> </td><td>uid_t *<var class="pdparam">uid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_get_seat</b>(</code></td><td>const char *<var class="pdparam">session</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">seat</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_get_service</b>(</code></td><td>const char *<var class="pdparam">session</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">service</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_get_type</b>(</code></td><td>const char *<var class="pdparam">session</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">type</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_get_class</b>(</code></td><td>const char *<var class="pdparam">session</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">class</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_get_display</b>(</code></td><td>const char *<var class="pdparam">session</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">display</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_get_remote_host</b>(</code></td><td>const char *<var class="pdparam">session</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">remote_host</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_get_remote_user</b>(</code></td><td>const char *<var class="pdparam">session</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">remote_user</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_get_tty</b>(</code></td><td>const char *<var class="pdparam">session</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">tty</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_get_vt</b>(</code></td><td>const char *<var class="pdparam">session</var>, </td></tr><tr><td> </td><td>unsigned int *<var class="pdparam">vt</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214187472368"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_session_is_active()</code> may
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="sd_session_is_active"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_session_is_active, sd_session_is_remote, sd_session_get_state, sd_session_get_uid, sd_session_get_seat, sd_session_get_service, sd_session_get_type, sd_session_get_class, sd_session_get_display, sd_session_get_tty, sd_session_get_vt, sd_session_get_remote_host, sd_session_get_remote_user — Determine state of a specific session</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-login.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_is_active</b>(</code></td><td>const char *<var class="pdparam">session</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_is_remote</b>(</code></td><td>const char *<var class="pdparam">session</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_get_state</b>(</code></td><td>const char *<var class="pdparam">session</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">state</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_get_uid</b>(</code></td><td>const char *<var class="pdparam">session</var>, </td></tr><tr><td> </td><td>uid_t *<var class="pdparam">uid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_get_seat</b>(</code></td><td>const char *<var class="pdparam">session</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">seat</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_get_service</b>(</code></td><td>const char *<var class="pdparam">session</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">service</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_get_type</b>(</code></td><td>const char *<var class="pdparam">session</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">type</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_get_class</b>(</code></td><td>const char *<var class="pdparam">session</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">class</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_get_display</b>(</code></td><td>const char *<var class="pdparam">session</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">display</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_get_remote_host</b>(</code></td><td>const char *<var class="pdparam">session</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">remote_host</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_get_remote_user</b>(</code></td><td>const char *<var class="pdparam">session</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">remote_user</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_get_tty</b>(</code></td><td>const char *<var class="pdparam">session</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">tty</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_get_vt</b>(</code></td><td>const char *<var class="pdparam">session</var>, </td></tr><tr><td> </td><td>unsigned int *<var class="pdparam">vt</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214172690320"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_session_is_active()</code> may
                 be used to determine whether the session identified by
                 the specified session identifier is currently active
                 (i.e. currently in the foreground and available for
                 any of these functions is passed as
                 <code class="constant">NULL</code>, the operation is executed
                 for the session the calling process is a member of, if
-                there is any.</p></div><div class="refsect1"><a name="idm214182525232"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>If the test succeeds,
+                there is any.</p></div><div class="refsect1"><a name="idm214167746672"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>If the test succeeds,
                 <code class="function">sd_session_is_active()</code> and
                 <code class="function">sd_session_is_remote()</code> return a
                 positive integer; if it fails, 0.  On success,
                 <code class="function">sd_session_get_remote_host()</code> and
                 <code class="function">sd_session_get_tty()</code> return 0 or
                 a positive integer. On failure, these calls return a
-                negative errno-style error code.</p></div><div class="refsect1"><a name="idm214182516336"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p>The <code class="function">sd_session_is_active()</code>,
+                negative errno-style error code.</p></div><div class="refsect1"><a name="idm214167737776"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p>The <code class="function">sd_session_is_active()</code>,
                 <code class="function">sd_session_get_state()</code>,
                 <code class="function">sd_session_get_uid()</code>,
                 <code class="function">sd_session_get_seat()</code>,
                 interfaces are available as a shared library, which can
                 be compiled and linked to with the
                 <code class="constant">libsystemd</code> <a href="pkg-config.html"><span class="citerefentry"><span class="refentrytitle">pkg-config</span>(1)</span></a>
-                file.</p></div><div class="refsect1"><a name="idm214182507008"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+                file.</p></div><div class="refsect1"><a name="idm214167728448"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
                         <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
                         <a href="sd-login.html"><span class="citerefentry"><span class="refentrytitle">sd-login</span>(3)</span></a>,
                         <a href="sd_pid_get_session.html"><span class="citerefentry"><span class="refentrytitle">sd_pid_get_session</span>(3)</span></a>
index cdae5b8fc3df2fb5faff5e0f31b39650908084cc..a1ad58aea8b30c899c0ca7ad71e0efc8ae27d3f2 100644 (file)
@@ -19,7 +19,7 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="sd_session_is_active"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_session_is_active, sd_session_is_remote, sd_session_get_state, sd_session_get_uid, sd_session_get_seat, sd_session_get_service, sd_session_get_type, sd_session_get_class, sd_session_get_display, sd_session_get_tty, sd_session_get_vt, sd_session_get_remote_host, sd_session_get_remote_user — Determine state of a specific session</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-login.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_is_active</b>(</code></td><td>const char *<var class="pdparam">session</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_is_remote</b>(</code></td><td>const char *<var class="pdparam">session</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_get_state</b>(</code></td><td>const char *<var class="pdparam">session</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">state</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_get_uid</b>(</code></td><td>const char *<var class="pdparam">session</var>, </td></tr><tr><td> </td><td>uid_t *<var class="pdparam">uid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_get_seat</b>(</code></td><td>const char *<var class="pdparam">session</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">seat</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_get_service</b>(</code></td><td>const char *<var class="pdparam">session</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">service</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_get_type</b>(</code></td><td>const char *<var class="pdparam">session</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">type</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_get_class</b>(</code></td><td>const char *<var class="pdparam">session</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">class</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_get_display</b>(</code></td><td>const char *<var class="pdparam">session</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">display</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_get_remote_host</b>(</code></td><td>const char *<var class="pdparam">session</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">remote_host</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_get_remote_user</b>(</code></td><td>const char *<var class="pdparam">session</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">remote_user</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_get_tty</b>(</code></td><td>const char *<var class="pdparam">session</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">tty</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_get_vt</b>(</code></td><td>const char *<var class="pdparam">session</var>, </td></tr><tr><td> </td><td>unsigned int *<var class="pdparam">vt</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214187472368"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_session_is_active()</code> may
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="sd_session_is_active"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_session_is_active, sd_session_is_remote, sd_session_get_state, sd_session_get_uid, sd_session_get_seat, sd_session_get_service, sd_session_get_type, sd_session_get_class, sd_session_get_display, sd_session_get_tty, sd_session_get_vt, sd_session_get_remote_host, sd_session_get_remote_user — Determine state of a specific session</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-login.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_is_active</b>(</code></td><td>const char *<var class="pdparam">session</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_is_remote</b>(</code></td><td>const char *<var class="pdparam">session</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_get_state</b>(</code></td><td>const char *<var class="pdparam">session</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">state</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_get_uid</b>(</code></td><td>const char *<var class="pdparam">session</var>, </td></tr><tr><td> </td><td>uid_t *<var class="pdparam">uid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_get_seat</b>(</code></td><td>const char *<var class="pdparam">session</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">seat</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_get_service</b>(</code></td><td>const char *<var class="pdparam">session</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">service</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_get_type</b>(</code></td><td>const char *<var class="pdparam">session</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">type</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_get_class</b>(</code></td><td>const char *<var class="pdparam">session</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">class</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_get_display</b>(</code></td><td>const char *<var class="pdparam">session</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">display</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_get_remote_host</b>(</code></td><td>const char *<var class="pdparam">session</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">remote_host</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_get_remote_user</b>(</code></td><td>const char *<var class="pdparam">session</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">remote_user</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_get_tty</b>(</code></td><td>const char *<var class="pdparam">session</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">tty</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_get_vt</b>(</code></td><td>const char *<var class="pdparam">session</var>, </td></tr><tr><td> </td><td>unsigned int *<var class="pdparam">vt</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214172690320"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_session_is_active()</code> may
                 be used to determine whether the session identified by
                 the specified session identifier is currently active
                 (i.e. currently in the foreground and available for
                 any of these functions is passed as
                 <code class="constant">NULL</code>, the operation is executed
                 for the session the calling process is a member of, if
-                there is any.</p></div><div class="refsect1"><a name="idm214182525232"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>If the test succeeds,
+                there is any.</p></div><div class="refsect1"><a name="idm214167746672"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>If the test succeeds,
                 <code class="function">sd_session_is_active()</code> and
                 <code class="function">sd_session_is_remote()</code> return a
                 positive integer; if it fails, 0.  On success,
                 <code class="function">sd_session_get_remote_host()</code> and
                 <code class="function">sd_session_get_tty()</code> return 0 or
                 a positive integer. On failure, these calls return a
-                negative errno-style error code.</p></div><div class="refsect1"><a name="idm214182516336"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p>The <code class="function">sd_session_is_active()</code>,
+                negative errno-style error code.</p></div><div class="refsect1"><a name="idm214167737776"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p>The <code class="function">sd_session_is_active()</code>,
                 <code class="function">sd_session_get_state()</code>,
                 <code class="function">sd_session_get_uid()</code>,
                 <code class="function">sd_session_get_seat()</code>,
                 interfaces are available as a shared library, which can
                 be compiled and linked to with the
                 <code class="constant">libsystemd</code> <a href="pkg-config.html"><span class="citerefentry"><span class="refentrytitle">pkg-config</span>(1)</span></a>
-                file.</p></div><div class="refsect1"><a name="idm214182507008"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+                file.</p></div><div class="refsect1"><a name="idm214167728448"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
                         <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
                         <a href="sd-login.html"><span class="citerefentry"><span class="refentrytitle">sd-login</span>(3)</span></a>,
                         <a href="sd_pid_get_session.html"><span class="citerefentry"><span class="refentrytitle">sd_pid_get_session</span>(3)</span></a>
index e29ec5fe95a09c85f0ad55e3c385707307c57de5..9fe5bafabc5a45b0b6977936ca5612aefef21ef3 100644 (file)
@@ -1,5 +1,5 @@
 '\" t
-.TH "SD_SESSION_IS_ACTIVE" "3" "" "systemd 214" "sd_session_is_active"
+.TH "SD_SESSION_IS_ACTIVE" "3" "" "systemd 215" "sd_session_is_active"
 .\" -----------------------------------------------------------------
 .\" * Define some portability stuff
 .\" -----------------------------------------------------------------
index cdae5b8fc3df2fb5faff5e0f31b39650908084cc..a1ad58aea8b30c899c0ca7ad71e0efc8ae27d3f2 100644 (file)
@@ -19,7 +19,7 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="sd_session_is_active"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_session_is_active, sd_session_is_remote, sd_session_get_state, sd_session_get_uid, sd_session_get_seat, sd_session_get_service, sd_session_get_type, sd_session_get_class, sd_session_get_display, sd_session_get_tty, sd_session_get_vt, sd_session_get_remote_host, sd_session_get_remote_user — Determine state of a specific session</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-login.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_is_active</b>(</code></td><td>const char *<var class="pdparam">session</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_is_remote</b>(</code></td><td>const char *<var class="pdparam">session</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_get_state</b>(</code></td><td>const char *<var class="pdparam">session</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">state</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_get_uid</b>(</code></td><td>const char *<var class="pdparam">session</var>, </td></tr><tr><td> </td><td>uid_t *<var class="pdparam">uid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_get_seat</b>(</code></td><td>const char *<var class="pdparam">session</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">seat</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_get_service</b>(</code></td><td>const char *<var class="pdparam">session</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">service</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_get_type</b>(</code></td><td>const char *<var class="pdparam">session</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">type</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_get_class</b>(</code></td><td>const char *<var class="pdparam">session</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">class</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_get_display</b>(</code></td><td>const char *<var class="pdparam">session</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">display</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_get_remote_host</b>(</code></td><td>const char *<var class="pdparam">session</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">remote_host</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_get_remote_user</b>(</code></td><td>const char *<var class="pdparam">session</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">remote_user</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_get_tty</b>(</code></td><td>const char *<var class="pdparam">session</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">tty</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_get_vt</b>(</code></td><td>const char *<var class="pdparam">session</var>, </td></tr><tr><td> </td><td>unsigned int *<var class="pdparam">vt</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214187472368"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_session_is_active()</code> may
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="sd_session_is_active"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_session_is_active, sd_session_is_remote, sd_session_get_state, sd_session_get_uid, sd_session_get_seat, sd_session_get_service, sd_session_get_type, sd_session_get_class, sd_session_get_display, sd_session_get_tty, sd_session_get_vt, sd_session_get_remote_host, sd_session_get_remote_user — Determine state of a specific session</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-login.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_is_active</b>(</code></td><td>const char *<var class="pdparam">session</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_is_remote</b>(</code></td><td>const char *<var class="pdparam">session</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_get_state</b>(</code></td><td>const char *<var class="pdparam">session</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">state</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_get_uid</b>(</code></td><td>const char *<var class="pdparam">session</var>, </td></tr><tr><td> </td><td>uid_t *<var class="pdparam">uid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_get_seat</b>(</code></td><td>const char *<var class="pdparam">session</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">seat</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_get_service</b>(</code></td><td>const char *<var class="pdparam">session</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">service</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_get_type</b>(</code></td><td>const char *<var class="pdparam">session</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">type</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_get_class</b>(</code></td><td>const char *<var class="pdparam">session</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">class</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_get_display</b>(</code></td><td>const char *<var class="pdparam">session</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">display</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_get_remote_host</b>(</code></td><td>const char *<var class="pdparam">session</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">remote_host</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_get_remote_user</b>(</code></td><td>const char *<var class="pdparam">session</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">remote_user</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_get_tty</b>(</code></td><td>const char *<var class="pdparam">session</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">tty</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_get_vt</b>(</code></td><td>const char *<var class="pdparam">session</var>, </td></tr><tr><td> </td><td>unsigned int *<var class="pdparam">vt</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214172690320"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_session_is_active()</code> may
                 be used to determine whether the session identified by
                 the specified session identifier is currently active
                 (i.e. currently in the foreground and available for
                 any of these functions is passed as
                 <code class="constant">NULL</code>, the operation is executed
                 for the session the calling process is a member of, if
-                there is any.</p></div><div class="refsect1"><a name="idm214182525232"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>If the test succeeds,
+                there is any.</p></div><div class="refsect1"><a name="idm214167746672"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>If the test succeeds,
                 <code class="function">sd_session_is_active()</code> and
                 <code class="function">sd_session_is_remote()</code> return a
                 positive integer; if it fails, 0.  On success,
                 <code class="function">sd_session_get_remote_host()</code> and
                 <code class="function">sd_session_get_tty()</code> return 0 or
                 a positive integer. On failure, these calls return a
-                negative errno-style error code.</p></div><div class="refsect1"><a name="idm214182516336"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p>The <code class="function">sd_session_is_active()</code>,
+                negative errno-style error code.</p></div><div class="refsect1"><a name="idm214167737776"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p>The <code class="function">sd_session_is_active()</code>,
                 <code class="function">sd_session_get_state()</code>,
                 <code class="function">sd_session_get_uid()</code>,
                 <code class="function">sd_session_get_seat()</code>,
                 interfaces are available as a shared library, which can
                 be compiled and linked to with the
                 <code class="constant">libsystemd</code> <a href="pkg-config.html"><span class="citerefentry"><span class="refentrytitle">pkg-config</span>(1)</span></a>
-                file.</p></div><div class="refsect1"><a name="idm214182507008"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+                file.</p></div><div class="refsect1"><a name="idm214167728448"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
                         <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
                         <a href="sd-login.html"><span class="citerefentry"><span class="refentrytitle">sd-login</span>(3)</span></a>,
                         <a href="sd_pid_get_session.html"><span class="citerefentry"><span class="refentrytitle">sd_pid_get_session</span>(3)</span></a>
index cdae5b8fc3df2fb5faff5e0f31b39650908084cc..a1ad58aea8b30c899c0ca7ad71e0efc8ae27d3f2 100644 (file)
@@ -19,7 +19,7 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="sd_session_is_active"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_session_is_active, sd_session_is_remote, sd_session_get_state, sd_session_get_uid, sd_session_get_seat, sd_session_get_service, sd_session_get_type, sd_session_get_class, sd_session_get_display, sd_session_get_tty, sd_session_get_vt, sd_session_get_remote_host, sd_session_get_remote_user — Determine state of a specific session</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-login.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_is_active</b>(</code></td><td>const char *<var class="pdparam">session</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_is_remote</b>(</code></td><td>const char *<var class="pdparam">session</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_get_state</b>(</code></td><td>const char *<var class="pdparam">session</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">state</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_get_uid</b>(</code></td><td>const char *<var class="pdparam">session</var>, </td></tr><tr><td> </td><td>uid_t *<var class="pdparam">uid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_get_seat</b>(</code></td><td>const char *<var class="pdparam">session</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">seat</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_get_service</b>(</code></td><td>const char *<var class="pdparam">session</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">service</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_get_type</b>(</code></td><td>const char *<var class="pdparam">session</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">type</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_get_class</b>(</code></td><td>const char *<var class="pdparam">session</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">class</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_get_display</b>(</code></td><td>const char *<var class="pdparam">session</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">display</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_get_remote_host</b>(</code></td><td>const char *<var class="pdparam">session</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">remote_host</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_get_remote_user</b>(</code></td><td>const char *<var class="pdparam">session</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">remote_user</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_get_tty</b>(</code></td><td>const char *<var class="pdparam">session</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">tty</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_get_vt</b>(</code></td><td>const char *<var class="pdparam">session</var>, </td></tr><tr><td> </td><td>unsigned int *<var class="pdparam">vt</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214187472368"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_session_is_active()</code> may
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="sd_session_is_active"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_session_is_active, sd_session_is_remote, sd_session_get_state, sd_session_get_uid, sd_session_get_seat, sd_session_get_service, sd_session_get_type, sd_session_get_class, sd_session_get_display, sd_session_get_tty, sd_session_get_vt, sd_session_get_remote_host, sd_session_get_remote_user — Determine state of a specific session</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-login.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_is_active</b>(</code></td><td>const char *<var class="pdparam">session</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_is_remote</b>(</code></td><td>const char *<var class="pdparam">session</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_get_state</b>(</code></td><td>const char *<var class="pdparam">session</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">state</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_get_uid</b>(</code></td><td>const char *<var class="pdparam">session</var>, </td></tr><tr><td> </td><td>uid_t *<var class="pdparam">uid</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_get_seat</b>(</code></td><td>const char *<var class="pdparam">session</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">seat</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_get_service</b>(</code></td><td>const char *<var class="pdparam">session</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">service</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_get_type</b>(</code></td><td>const char *<var class="pdparam">session</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">type</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_get_class</b>(</code></td><td>const char *<var class="pdparam">session</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">class</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_get_display</b>(</code></td><td>const char *<var class="pdparam">session</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">display</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_get_remote_host</b>(</code></td><td>const char *<var class="pdparam">session</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">remote_host</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_get_remote_user</b>(</code></td><td>const char *<var class="pdparam">session</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">remote_user</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_get_tty</b>(</code></td><td>const char *<var class="pdparam">session</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">tty</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_session_get_vt</b>(</code></td><td>const char *<var class="pdparam">session</var>, </td></tr><tr><td> </td><td>unsigned int *<var class="pdparam">vt</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214172690320"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_session_is_active()</code> may
                 be used to determine whether the session identified by
                 the specified session identifier is currently active
                 (i.e. currently in the foreground and available for
                 any of these functions is passed as
                 <code class="constant">NULL</code>, the operation is executed
                 for the session the calling process is a member of, if
-                there is any.</p></div><div class="refsect1"><a name="idm214182525232"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>If the test succeeds,
+                there is any.</p></div><div class="refsect1"><a name="idm214167746672"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>If the test succeeds,
                 <code class="function">sd_session_is_active()</code> and
                 <code class="function">sd_session_is_remote()</code> return a
                 positive integer; if it fails, 0.  On success,
                 <code class="function">sd_session_get_remote_host()</code> and
                 <code class="function">sd_session_get_tty()</code> return 0 or
                 a positive integer. On failure, these calls return a
-                negative errno-style error code.</p></div><div class="refsect1"><a name="idm214182516336"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p>The <code class="function">sd_session_is_active()</code>,
+                negative errno-style error code.</p></div><div class="refsect1"><a name="idm214167737776"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p>The <code class="function">sd_session_is_active()</code>,
                 <code class="function">sd_session_get_state()</code>,
                 <code class="function">sd_session_get_uid()</code>,
                 <code class="function">sd_session_get_seat()</code>,
                 interfaces are available as a shared library, which can
                 be compiled and linked to with the
                 <code class="constant">libsystemd</code> <a href="pkg-config.html"><span class="citerefentry"><span class="refentrytitle">pkg-config</span>(1)</span></a>
-                file.</p></div><div class="refsect1"><a name="idm214182507008"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+                file.</p></div><div class="refsect1"><a name="idm214167728448"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
                         <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
                         <a href="sd-login.html"><span class="citerefentry"><span class="refentrytitle">sd-login</span>(3)</span></a>,
                         <a href="sd_pid_get_session.html"><span class="citerefentry"><span class="refentrytitle">sd_pid_get_session</span>(3)</span></a>
index ad880d1281005bb4740bd5004207c5e5fafcb9ce..eb0bb356aa3996144ce7b50087049ccf36609a1d 100644 (file)
@@ -19,7 +19,7 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="sd_uid_get_state"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_uid_get_state, sd_uid_is_on_seat, sd_uid_get_sessions, sd_uid_get_seats, sd_uid_get_display — Determine login state of a specific Unix user ID</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-login.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_uid_get_state</b>(</code></td><td>uid_t <var class="pdparam">uid</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">state</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_uid_is_on_seat</b>(</code></td><td>uid_t <var class="pdparam">uid</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">require_active</var>, </td></tr><tr><td> </td><td>const char *<var class="pdparam">seat</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_uid_get_sessions</b>(</code></td><td>uid_t <var class="pdparam">uid</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">require_active</var>, </td></tr><tr><td> </td><td>char ***<var class="pdparam">sessions</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_uid_get_seats</b>(</code></td><td>uid_t <var class="pdparam">uid</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">require_active</var>, </td></tr><tr><td> </td><td>char ***<var class="pdparam">seats</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_uid_get_display</b>(</code></td><td>uid_t <var class="pdparam">uid</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">session</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214170342560"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_uid_get_state()</code> may be
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="sd_uid_get_state"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_uid_get_state, sd_uid_is_on_seat, sd_uid_get_sessions, sd_uid_get_seats, sd_uid_get_display — Determine login state of a specific Unix user ID</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-login.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_uid_get_state</b>(</code></td><td>uid_t <var class="pdparam">uid</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">state</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_uid_is_on_seat</b>(</code></td><td>uid_t <var class="pdparam">uid</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">require_active</var>, </td></tr><tr><td> </td><td>const char *<var class="pdparam">seat</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_uid_get_sessions</b>(</code></td><td>uid_t <var class="pdparam">uid</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">require_active</var>, </td></tr><tr><td> </td><td>char ***<var class="pdparam">sessions</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_uid_get_seats</b>(</code></td><td>uid_t <var class="pdparam">uid</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">require_active</var>, </td></tr><tr><td> </td><td>char ***<var class="pdparam">seats</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_uid_get_display</b>(</code></td><td>uid_t <var class="pdparam">uid</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">session</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214192661936"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_uid_get_state()</code> may be
                 used to determine the login state of a specific Unix
                 user identifier. The following states are currently
                 known: "<code class="literal">offline</code>" (user not logged in
@@ -77,7 +77,7 @@
                 returns the name of the "primary" session of a user.
                 If the user has graphical sessions, it will be the
                 oldest graphical session. Otherwise, it will be the
-                oldest open session.</p></div><div class="refsect1"><a name="idm214170316800"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>On success,
+                oldest open session.</p></div><div class="refsect1"><a name="idm214192636272"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>On success,
                 <code class="function">sd_uid_get_state()</code> returns 0 or a
                 positive integer. If the test succeeds,
                 <code class="function">sd_uid_is_on_seat()</code> returns a
                 <code class="function">sd_uid_get_display()</code> returns
                 a non-negative code on success. On failure,
                 these calls return a negative errno-style error
-                code.</p></div><div class="refsect1"><a name="idm214170311808"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p>Functions described here are available as a
+                code.</p></div><div class="refsect1"><a name="idm214192631280"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p>Functions described here are available as a
                 shared library, and can be compiled and linked to
                 using the
                 <code class="constant">libsystemd</code> <a href="pkg-config.html"><span class="citerefentry"><span class="refentrytitle">pkg-config</span>(1)</span></a>
-                entry.</p></div><div class="refsect1"><a name="idm214170309168"></a><h2 id="History">History<a class="headerlink" title="Permalink to this headline" href="#History">¶</a></h2><code class="function">sd_uid_get_state()</code>,
+                entry.</p></div><div class="refsect1"><a name="idm214192628592"></a><h2 id="History">History<a class="headerlink" title="Permalink to this headline" href="#History">¶</a></h2><code class="function">sd_uid_get_state()</code>,
                 <code class="function">sd_uid_is_on_seat()</code>,
                 <code class="function">sd_uid_get_sessions()</code>,
                 and <code class="function">sd_uid_get_seats()</code> functions
                 were added in systemd-31.
 
                 <p><code class="function">sd_uid_get_display()</code> was
-                added in systemd-213.</p></div><div class="refsect1"><a name="idm214170304576"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+                added in systemd-213.</p></div><div class="refsect1"><a name="idm214192624000"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
                         <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
                         <a href="sd-login.html"><span class="citerefentry"><span class="refentrytitle">sd-login</span>(3)</span></a>,
                         <a href="sd_pid_get_owner_uid.html"><span class="citerefentry"><span class="refentrytitle">sd_pid_get_owner_uid</span>(3)</span></a>
index ad880d1281005bb4740bd5004207c5e5fafcb9ce..eb0bb356aa3996144ce7b50087049ccf36609a1d 100644 (file)
@@ -19,7 +19,7 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="sd_uid_get_state"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_uid_get_state, sd_uid_is_on_seat, sd_uid_get_sessions, sd_uid_get_seats, sd_uid_get_display — Determine login state of a specific Unix user ID</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-login.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_uid_get_state</b>(</code></td><td>uid_t <var class="pdparam">uid</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">state</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_uid_is_on_seat</b>(</code></td><td>uid_t <var class="pdparam">uid</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">require_active</var>, </td></tr><tr><td> </td><td>const char *<var class="pdparam">seat</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_uid_get_sessions</b>(</code></td><td>uid_t <var class="pdparam">uid</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">require_active</var>, </td></tr><tr><td> </td><td>char ***<var class="pdparam">sessions</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_uid_get_seats</b>(</code></td><td>uid_t <var class="pdparam">uid</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">require_active</var>, </td></tr><tr><td> </td><td>char ***<var class="pdparam">seats</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_uid_get_display</b>(</code></td><td>uid_t <var class="pdparam">uid</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">session</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214170342560"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_uid_get_state()</code> may be
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="sd_uid_get_state"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_uid_get_state, sd_uid_is_on_seat, sd_uid_get_sessions, sd_uid_get_seats, sd_uid_get_display — Determine login state of a specific Unix user ID</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-login.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_uid_get_state</b>(</code></td><td>uid_t <var class="pdparam">uid</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">state</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_uid_is_on_seat</b>(</code></td><td>uid_t <var class="pdparam">uid</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">require_active</var>, </td></tr><tr><td> </td><td>const char *<var class="pdparam">seat</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_uid_get_sessions</b>(</code></td><td>uid_t <var class="pdparam">uid</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">require_active</var>, </td></tr><tr><td> </td><td>char ***<var class="pdparam">sessions</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_uid_get_seats</b>(</code></td><td>uid_t <var class="pdparam">uid</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">require_active</var>, </td></tr><tr><td> </td><td>char ***<var class="pdparam">seats</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_uid_get_display</b>(</code></td><td>uid_t <var class="pdparam">uid</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">session</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214192661936"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_uid_get_state()</code> may be
                 used to determine the login state of a specific Unix
                 user identifier. The following states are currently
                 known: "<code class="literal">offline</code>" (user not logged in
@@ -77,7 +77,7 @@
                 returns the name of the "primary" session of a user.
                 If the user has graphical sessions, it will be the
                 oldest graphical session. Otherwise, it will be the
-                oldest open session.</p></div><div class="refsect1"><a name="idm214170316800"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>On success,
+                oldest open session.</p></div><div class="refsect1"><a name="idm214192636272"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>On success,
                 <code class="function">sd_uid_get_state()</code> returns 0 or a
                 positive integer. If the test succeeds,
                 <code class="function">sd_uid_is_on_seat()</code> returns a
                 <code class="function">sd_uid_get_display()</code> returns
                 a non-negative code on success. On failure,
                 these calls return a negative errno-style error
-                code.</p></div><div class="refsect1"><a name="idm214170311808"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p>Functions described here are available as a
+                code.</p></div><div class="refsect1"><a name="idm214192631280"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p>Functions described here are available as a
                 shared library, and can be compiled and linked to
                 using the
                 <code class="constant">libsystemd</code> <a href="pkg-config.html"><span class="citerefentry"><span class="refentrytitle">pkg-config</span>(1)</span></a>
-                entry.</p></div><div class="refsect1"><a name="idm214170309168"></a><h2 id="History">History<a class="headerlink" title="Permalink to this headline" href="#History">¶</a></h2><code class="function">sd_uid_get_state()</code>,
+                entry.</p></div><div class="refsect1"><a name="idm214192628592"></a><h2 id="History">History<a class="headerlink" title="Permalink to this headline" href="#History">¶</a></h2><code class="function">sd_uid_get_state()</code>,
                 <code class="function">sd_uid_is_on_seat()</code>,
                 <code class="function">sd_uid_get_sessions()</code>,
                 and <code class="function">sd_uid_get_seats()</code> functions
                 were added in systemd-31.
 
                 <p><code class="function">sd_uid_get_display()</code> was
-                added in systemd-213.</p></div><div class="refsect1"><a name="idm214170304576"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+                added in systemd-213.</p></div><div class="refsect1"><a name="idm214192624000"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
                         <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
                         <a href="sd-login.html"><span class="citerefentry"><span class="refentrytitle">sd-login</span>(3)</span></a>,
                         <a href="sd_pid_get_owner_uid.html"><span class="citerefentry"><span class="refentrytitle">sd_pid_get_owner_uid</span>(3)</span></a>
index ad880d1281005bb4740bd5004207c5e5fafcb9ce..eb0bb356aa3996144ce7b50087049ccf36609a1d 100644 (file)
@@ -19,7 +19,7 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="sd_uid_get_state"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_uid_get_state, sd_uid_is_on_seat, sd_uid_get_sessions, sd_uid_get_seats, sd_uid_get_display — Determine login state of a specific Unix user ID</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-login.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_uid_get_state</b>(</code></td><td>uid_t <var class="pdparam">uid</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">state</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_uid_is_on_seat</b>(</code></td><td>uid_t <var class="pdparam">uid</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">require_active</var>, </td></tr><tr><td> </td><td>const char *<var class="pdparam">seat</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_uid_get_sessions</b>(</code></td><td>uid_t <var class="pdparam">uid</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">require_active</var>, </td></tr><tr><td> </td><td>char ***<var class="pdparam">sessions</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_uid_get_seats</b>(</code></td><td>uid_t <var class="pdparam">uid</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">require_active</var>, </td></tr><tr><td> </td><td>char ***<var class="pdparam">seats</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_uid_get_display</b>(</code></td><td>uid_t <var class="pdparam">uid</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">session</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214170342560"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_uid_get_state()</code> may be
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="sd_uid_get_state"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_uid_get_state, sd_uid_is_on_seat, sd_uid_get_sessions, sd_uid_get_seats, sd_uid_get_display — Determine login state of a specific Unix user ID</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-login.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_uid_get_state</b>(</code></td><td>uid_t <var class="pdparam">uid</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">state</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_uid_is_on_seat</b>(</code></td><td>uid_t <var class="pdparam">uid</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">require_active</var>, </td></tr><tr><td> </td><td>const char *<var class="pdparam">seat</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_uid_get_sessions</b>(</code></td><td>uid_t <var class="pdparam">uid</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">require_active</var>, </td></tr><tr><td> </td><td>char ***<var class="pdparam">sessions</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_uid_get_seats</b>(</code></td><td>uid_t <var class="pdparam">uid</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">require_active</var>, </td></tr><tr><td> </td><td>char ***<var class="pdparam">seats</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_uid_get_display</b>(</code></td><td>uid_t <var class="pdparam">uid</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">session</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214192661936"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_uid_get_state()</code> may be
                 used to determine the login state of a specific Unix
                 user identifier. The following states are currently
                 known: "<code class="literal">offline</code>" (user not logged in
@@ -77,7 +77,7 @@
                 returns the name of the "primary" session of a user.
                 If the user has graphical sessions, it will be the
                 oldest graphical session. Otherwise, it will be the
-                oldest open session.</p></div><div class="refsect1"><a name="idm214170316800"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>On success,
+                oldest open session.</p></div><div class="refsect1"><a name="idm214192636272"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>On success,
                 <code class="function">sd_uid_get_state()</code> returns 0 or a
                 positive integer. If the test succeeds,
                 <code class="function">sd_uid_is_on_seat()</code> returns a
                 <code class="function">sd_uid_get_display()</code> returns
                 a non-negative code on success. On failure,
                 these calls return a negative errno-style error
-                code.</p></div><div class="refsect1"><a name="idm214170311808"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p>Functions described here are available as a
+                code.</p></div><div class="refsect1"><a name="idm214192631280"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p>Functions described here are available as a
                 shared library, and can be compiled and linked to
                 using the
                 <code class="constant">libsystemd</code> <a href="pkg-config.html"><span class="citerefentry"><span class="refentrytitle">pkg-config</span>(1)</span></a>
-                entry.</p></div><div class="refsect1"><a name="idm214170309168"></a><h2 id="History">History<a class="headerlink" title="Permalink to this headline" href="#History">¶</a></h2><code class="function">sd_uid_get_state()</code>,
+                entry.</p></div><div class="refsect1"><a name="idm214192628592"></a><h2 id="History">History<a class="headerlink" title="Permalink to this headline" href="#History">¶</a></h2><code class="function">sd_uid_get_state()</code>,
                 <code class="function">sd_uid_is_on_seat()</code>,
                 <code class="function">sd_uid_get_sessions()</code>,
                 and <code class="function">sd_uid_get_seats()</code> functions
                 were added in systemd-31.
 
                 <p><code class="function">sd_uid_get_display()</code> was
-                added in systemd-213.</p></div><div class="refsect1"><a name="idm214170304576"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+                added in systemd-213.</p></div><div class="refsect1"><a name="idm214192624000"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
                         <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
                         <a href="sd-login.html"><span class="citerefentry"><span class="refentrytitle">sd-login</span>(3)</span></a>,
                         <a href="sd_pid_get_owner_uid.html"><span class="citerefentry"><span class="refentrytitle">sd_pid_get_owner_uid</span>(3)</span></a>
index b096ca7857ea33ba0d7f80794123d9226d95b177..2f55772b964d4715dfbdbe090d24929c1b5346df 100644 (file)
@@ -1,5 +1,5 @@
 '\" t
-.TH "SD_UID_GET_STATE" "3" "" "systemd 214" "sd_uid_get_state"
+.TH "SD_UID_GET_STATE" "3" "" "systemd 215" "sd_uid_get_state"
 .\" -----------------------------------------------------------------
 .\" * Define some portability stuff
 .\" -----------------------------------------------------------------
index ad880d1281005bb4740bd5004207c5e5fafcb9ce..eb0bb356aa3996144ce7b50087049ccf36609a1d 100644 (file)
@@ -19,7 +19,7 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="sd_uid_get_state"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_uid_get_state, sd_uid_is_on_seat, sd_uid_get_sessions, sd_uid_get_seats, sd_uid_get_display — Determine login state of a specific Unix user ID</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-login.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_uid_get_state</b>(</code></td><td>uid_t <var class="pdparam">uid</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">state</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_uid_is_on_seat</b>(</code></td><td>uid_t <var class="pdparam">uid</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">require_active</var>, </td></tr><tr><td> </td><td>const char *<var class="pdparam">seat</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_uid_get_sessions</b>(</code></td><td>uid_t <var class="pdparam">uid</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">require_active</var>, </td></tr><tr><td> </td><td>char ***<var class="pdparam">sessions</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_uid_get_seats</b>(</code></td><td>uid_t <var class="pdparam">uid</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">require_active</var>, </td></tr><tr><td> </td><td>char ***<var class="pdparam">seats</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_uid_get_display</b>(</code></td><td>uid_t <var class="pdparam">uid</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">session</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214170342560"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_uid_get_state()</code> may be
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="sd_uid_get_state"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_uid_get_state, sd_uid_is_on_seat, sd_uid_get_sessions, sd_uid_get_seats, sd_uid_get_display — Determine login state of a specific Unix user ID</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-login.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_uid_get_state</b>(</code></td><td>uid_t <var class="pdparam">uid</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">state</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_uid_is_on_seat</b>(</code></td><td>uid_t <var class="pdparam">uid</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">require_active</var>, </td></tr><tr><td> </td><td>const char *<var class="pdparam">seat</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_uid_get_sessions</b>(</code></td><td>uid_t <var class="pdparam">uid</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">require_active</var>, </td></tr><tr><td> </td><td>char ***<var class="pdparam">sessions</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_uid_get_seats</b>(</code></td><td>uid_t <var class="pdparam">uid</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">require_active</var>, </td></tr><tr><td> </td><td>char ***<var class="pdparam">seats</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_uid_get_display</b>(</code></td><td>uid_t <var class="pdparam">uid</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">session</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214192661936"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_uid_get_state()</code> may be
                 used to determine the login state of a specific Unix
                 user identifier. The following states are currently
                 known: "<code class="literal">offline</code>" (user not logged in
@@ -77,7 +77,7 @@
                 returns the name of the "primary" session of a user.
                 If the user has graphical sessions, it will be the
                 oldest graphical session. Otherwise, it will be the
-                oldest open session.</p></div><div class="refsect1"><a name="idm214170316800"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>On success,
+                oldest open session.</p></div><div class="refsect1"><a name="idm214192636272"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>On success,
                 <code class="function">sd_uid_get_state()</code> returns 0 or a
                 positive integer. If the test succeeds,
                 <code class="function">sd_uid_is_on_seat()</code> returns a
                 <code class="function">sd_uid_get_display()</code> returns
                 a non-negative code on success. On failure,
                 these calls return a negative errno-style error
-                code.</p></div><div class="refsect1"><a name="idm214170311808"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p>Functions described here are available as a
+                code.</p></div><div class="refsect1"><a name="idm214192631280"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p>Functions described here are available as a
                 shared library, and can be compiled and linked to
                 using the
                 <code class="constant">libsystemd</code> <a href="pkg-config.html"><span class="citerefentry"><span class="refentrytitle">pkg-config</span>(1)</span></a>
-                entry.</p></div><div class="refsect1"><a name="idm214170309168"></a><h2 id="History">History<a class="headerlink" title="Permalink to this headline" href="#History">¶</a></h2><code class="function">sd_uid_get_state()</code>,
+                entry.</p></div><div class="refsect1"><a name="idm214192628592"></a><h2 id="History">History<a class="headerlink" title="Permalink to this headline" href="#History">¶</a></h2><code class="function">sd_uid_get_state()</code>,
                 <code class="function">sd_uid_is_on_seat()</code>,
                 <code class="function">sd_uid_get_sessions()</code>,
                 and <code class="function">sd_uid_get_seats()</code> functions
                 were added in systemd-31.
 
                 <p><code class="function">sd_uid_get_display()</code> was
-                added in systemd-213.</p></div><div class="refsect1"><a name="idm214170304576"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+                added in systemd-213.</p></div><div class="refsect1"><a name="idm214192624000"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
                         <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
                         <a href="sd-login.html"><span class="citerefentry"><span class="refentrytitle">sd-login</span>(3)</span></a>,
                         <a href="sd_pid_get_owner_uid.html"><span class="citerefentry"><span class="refentrytitle">sd_pid_get_owner_uid</span>(3)</span></a>
index ad880d1281005bb4740bd5004207c5e5fafcb9ce..eb0bb356aa3996144ce7b50087049ccf36609a1d 100644 (file)
@@ -19,7 +19,7 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="sd_uid_get_state"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_uid_get_state, sd_uid_is_on_seat, sd_uid_get_sessions, sd_uid_get_seats, sd_uid_get_display — Determine login state of a specific Unix user ID</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-login.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_uid_get_state</b>(</code></td><td>uid_t <var class="pdparam">uid</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">state</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_uid_is_on_seat</b>(</code></td><td>uid_t <var class="pdparam">uid</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">require_active</var>, </td></tr><tr><td> </td><td>const char *<var class="pdparam">seat</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_uid_get_sessions</b>(</code></td><td>uid_t <var class="pdparam">uid</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">require_active</var>, </td></tr><tr><td> </td><td>char ***<var class="pdparam">sessions</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_uid_get_seats</b>(</code></td><td>uid_t <var class="pdparam">uid</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">require_active</var>, </td></tr><tr><td> </td><td>char ***<var class="pdparam">seats</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_uid_get_display</b>(</code></td><td>uid_t <var class="pdparam">uid</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">session</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214170342560"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_uid_get_state()</code> may be
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="sd_uid_get_state"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_uid_get_state, sd_uid_is_on_seat, sd_uid_get_sessions, sd_uid_get_seats, sd_uid_get_display — Determine login state of a specific Unix user ID</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-login.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_uid_get_state</b>(</code></td><td>uid_t <var class="pdparam">uid</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">state</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_uid_is_on_seat</b>(</code></td><td>uid_t <var class="pdparam">uid</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">require_active</var>, </td></tr><tr><td> </td><td>const char *<var class="pdparam">seat</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_uid_get_sessions</b>(</code></td><td>uid_t <var class="pdparam">uid</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">require_active</var>, </td></tr><tr><td> </td><td>char ***<var class="pdparam">sessions</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_uid_get_seats</b>(</code></td><td>uid_t <var class="pdparam">uid</var>, </td></tr><tr><td> </td><td>int <var class="pdparam">require_active</var>, </td></tr><tr><td> </td><td>char ***<var class="pdparam">seats</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_uid_get_display</b>(</code></td><td>uid_t <var class="pdparam">uid</var>, </td></tr><tr><td> </td><td>char **<var class="pdparam">session</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214192661936"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_uid_get_state()</code> may be
                 used to determine the login state of a specific Unix
                 user identifier. The following states are currently
                 known: "<code class="literal">offline</code>" (user not logged in
@@ -77,7 +77,7 @@
                 returns the name of the "primary" session of a user.
                 If the user has graphical sessions, it will be the
                 oldest graphical session. Otherwise, it will be the
-                oldest open session.</p></div><div class="refsect1"><a name="idm214170316800"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>On success,
+                oldest open session.</p></div><div class="refsect1"><a name="idm214192636272"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>On success,
                 <code class="function">sd_uid_get_state()</code> returns 0 or a
                 positive integer. If the test succeeds,
                 <code class="function">sd_uid_is_on_seat()</code> returns a
                 <code class="function">sd_uid_get_display()</code> returns
                 a non-negative code on success. On failure,
                 these calls return a negative errno-style error
-                code.</p></div><div class="refsect1"><a name="idm214170311808"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p>Functions described here are available as a
+                code.</p></div><div class="refsect1"><a name="idm214192631280"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p>Functions described here are available as a
                 shared library, and can be compiled and linked to
                 using the
                 <code class="constant">libsystemd</code> <a href="pkg-config.html"><span class="citerefentry"><span class="refentrytitle">pkg-config</span>(1)</span></a>
-                entry.</p></div><div class="refsect1"><a name="idm214170309168"></a><h2 id="History">History<a class="headerlink" title="Permalink to this headline" href="#History">¶</a></h2><code class="function">sd_uid_get_state()</code>,
+                entry.</p></div><div class="refsect1"><a name="idm214192628592"></a><h2 id="History">History<a class="headerlink" title="Permalink to this headline" href="#History">¶</a></h2><code class="function">sd_uid_get_state()</code>,
                 <code class="function">sd_uid_is_on_seat()</code>,
                 <code class="function">sd_uid_get_sessions()</code>,
                 and <code class="function">sd_uid_get_seats()</code> functions
                 were added in systemd-31.
 
                 <p><code class="function">sd_uid_get_display()</code> was
-                added in systemd-213.</p></div><div class="refsect1"><a name="idm214170304576"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+                added in systemd-213.</p></div><div class="refsect1"><a name="idm214192624000"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
                         <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
                         <a href="sd-login.html"><span class="citerefentry"><span class="refentrytitle">sd-login</span>(3)</span></a>,
                         <a href="sd_pid_get_owner_uid.html"><span class="citerefentry"><span class="refentrytitle">sd_pid_get_owner_uid</span>(3)</span></a>
index b4d76ce58cfab17eda6a9275c61996ba3f6e841e..b6cfa63a30c20b9a4e6d5cd04153fe8ac0c18b53 100644 (file)
@@ -1,5 +1,5 @@
 '\" t
-.TH "SD_WATCHDOG_ENABLED" "3" "" "systemd 214" "sd_watchdog_enabled"
+.TH "SD_WATCHDOG_ENABLED" "3" "" "systemd 215" "sd_watchdog_enabled"
 .\" -----------------------------------------------------------------
 .\" * Define some portability stuff
 .\" -----------------------------------------------------------------
@@ -29,7 +29,7 @@ sd_watchdog_enabled \- Check whether the service manager expects watchdog keep\-
 .fi
 .ft
 .HP \w'int\ sd_watchdog_enabled('u
-.BI "int sd_watchdog_enabled(int\ " "unset_environment" ", const\ uint64_t\ *" "usec" ");"
+.BI "int sd_watchdog_enabled(int\ " "unset_environment" ", uint64_t\ *" "usec" ");"
 .SH "DESCRIPTION"
 .PP
 \fBsd_watchdog_enabled()\fR
index 7ef5aa439592c2a1db388c03316f725b5bafb16e..53efa4ce4c44aabeb0df618aaddf64f8d25120fe 100644 (file)
@@ -19,7 +19,7 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="sd_watchdog_enabled"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_watchdog_enabled — Check whether the service manager expects watchdog keep-alive notifications from a service</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-daemon.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_watchdog_enabled</b>(</code></td><td>int <var class="pdparam">unset_environment</var>, </td></tr><tr><td> </td><td>const uint64_t *<var class="pdparam">usec</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214188950800"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_watchdog_enabled()</code> may
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="sd_watchdog_enabled"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sd_watchdog_enabled — Check whether the service manager expects watchdog keep-alive notifications from a service</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><pre class="funcsynopsisinfo">#include &lt;systemd/sd-daemon.h&gt;</pre><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">sd_watchdog_enabled</b>(</code></td><td>int <var class="pdparam">unset_environment</var>, </td></tr><tr><td> </td><td>uint64_t *<var class="pdparam">usec</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm214185911456"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="function">sd_watchdog_enabled()</code> may
                 be called by a service to detect whether the service
                 manager expects regular keep-alive watchdog
                 notification events from it, and the timeout after
                 logic, use <code class="varname">WatchdogSec=</code> in service
                 files. See
                 <a href="systemd.service.html"><span class="citerefentry"><span class="refentrytitle">systemd.service</span>(5)</span></a>
-                for details.</p></div><div class="refsect1"><a name="idm214190777808"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>On failure, this call returns a negative
+                for details.</p></div><div class="refsect1"><a name="idm214185975520"></a><h2 id="Return Value">Return Value<a class="headerlink" title="Permalink to this headline" href="#Return%20Value">¶</a></h2><p>On failure, this call returns a negative
                 errno-style error code. If the service manager expects
                 watchdog keep-alive notification messages to be sent,
                 &gt; 0 is returned, otherwise 0 is returned. Only if
                 the return value is &gt; 0, the
                 <em class="parameter"><code>usec</code></em> parameter is valid after
-                the call.</p></div><div class="refsect1"><a name="idm214190410576"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p><a name="pkgconfig-text"></a>These APIs are implemented as a shared
+                the call.</p></div><div class="refsect1"><a name="idm214185902512"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p><a name="pkgconfig-text"></a>These APIs are implemented as a shared
   library, which can be compiled and linked to with the
   <code class="constant">libsystemd</code> <a href="pkg-config.html"><span class="citerefentry"><span class="refentrytitle">pkg-config</span>(1)</span></a>
   file.</p><p>Internally, this functions parses the
@@ -65,7 +65,7 @@
                 <code class="varname">$WATCHDOG_PID</code> does containe the PID
                 of the current process, under the assumption that in
                 that case, the variables were set for a different
-                process further up the process tree.</p></div><div class="refsect1"><a name="idm214189186128"></a><h2 id="Environment">Environment<a class="headerlink" title="Permalink to this headline" href="#Environment">¶</a></h2><div class="variablelist"><dl class="variablelist"><dt id="$WATCHDOG_PID"><span class="term"><code class="varname">$WATCHDOG_PID</code></span><a class="headerlink" title="Permalink to this term" href="#%24WATCHDOG_PID">¶</a></dt><dd><p>Set by the system
+                process further up the process tree.</p></div><div class="refsect1"><a name="idm214185898800"></a><h2 id="Environment">Environment<a class="headerlink" title="Permalink to this headline" href="#Environment">¶</a></h2><div class="variablelist"><dl class="variablelist"><dt id="$WATCHDOG_PID"><span class="term"><code class="varname">$WATCHDOG_PID</code></span><a class="headerlink" title="Permalink to this term" href="#%24WATCHDOG_PID">¶</a></dt><dd><p>Set by the system
                                 manager for supervised process for
                                 which watchdog support is enabled, and
                                 contains the PID of that process. See
@@ -74,7 +74,7 @@
                                 which watchdog support is enabled, and
                                 contains the watchdog timeout in µs
                                 See above for
-                                details.</p></dd></dl></div></div><div class="refsect1"><a name="idm214189804720"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+                                details.</p></dd></dl></div></div><div class="refsect1"><a name="idm214186040224"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
                         <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
                         <a href="sd-daemon.html"><span class="citerefentry"><span class="refentrytitle">sd-daemon</span>(3)</span></a>,
                         <a href="daemon.html"><span class="citerefentry"><span class="refentrytitle">daemon</span>(7)</span></a>,
index 88d1e5b8de4098acf2ef2db75ef0cd6d766962c9..41640276405080abeb041d31cbb13ca536ee06c9 100644 (file)
@@ -55,7 +55,7 @@
                         <funcprototype>
                                 <funcdef>int <function>sd_watchdog_enabled</function></funcdef>
                                 <paramdef>int <parameter>unset_environment</parameter></paramdef>
-                                <paramdef>const uint64_t *<parameter>usec</parameter></paramdef>
+                                <paramdef>uint64_t *<parameter>usec</parameter></paramdef>
                         </funcprototype>
                 </funcsynopsis>
         </refsynopsisdiv>
index efecbdd0ae8da5d2feba6b466c7ebca200c05a5c..6064a884dcb7ac50fb9912dcff6541b9e1ce093e 100644 (file)
@@ -1,5 +1,5 @@
 '\" t
-.TH "SHUTDOWN" "8" "" "systemd 214" "shutdown"
+.TH "SHUTDOWN" "8" "" "systemd 215" "shutdown"
 .\" -----------------------------------------------------------------
 .\" * Define some portability stuff
 .\" -----------------------------------------------------------------
index 27018edeeb3155385f8ff69c3e91751a12dc68b3..bee7b21e66b7ce29fbe00e3c2cd6a0bb7cd58e57 100644 (file)
@@ -19,7 +19,7 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="shutdown"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>shutdown — Halt, power-off or reboot the machine</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="cmdsynopsis"><p><code class="command">shutdown [OPTIONS...]  [TIME]  [WALL...]</code> </p></div></div><div class="refsect1"><a name="idm214194470896"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><span class="command"><strong>shutdown</strong></span> may be used to halt,
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="shutdown"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>shutdown — Halt, power-off or reboot the machine</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="cmdsynopsis"><p><code class="command">shutdown [OPTIONS...]  [TIME]  [WALL...]</code> </p></div></div><div class="refsect1"><a name="idm214194988640"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><span class="command"><strong>shutdown</strong></span> may be used to halt,
                 power-off or reboot the machine.</p><p>The first argument may be a time string (which
                 is usually "<code class="literal">now</code>"). Optionally, this
                 may be followed by a wall message to be sent to all
@@ -37,7 +37,7 @@
                 before the system goes down the
                 <code class="filename">/run/nologin</code> file is created to
                 ensure that further logins shall not be
-                allowed.</p></div><div class="refsect1"><a name="idm214194239456"></a><h2 id="Options">Options<a class="headerlink" title="Permalink to this headline" href="#Options">¶</a></h2><p>The following options are understood:</p><div class="variablelist"><dl class="variablelist"><dt id="--help"><span class="term"><code class="option">--help</code></span><a class="headerlink" title="Permalink to this term" href="#--help">¶</a></dt><dd><p><a name="help-text"></a>Print a short help text and exit.
+                allowed.</p></div><div class="refsect1"><a name="idm214195054320"></a><h2 id="Options">Options<a class="headerlink" title="Permalink to this headline" href="#Options">¶</a></h2><p>The following options are understood:</p><div class="variablelist"><dl class="variablelist"><dt id="--help"><span class="term"><code class="option">--help</code></span><a class="headerlink" title="Permalink to this term" href="#--help">¶</a></dt><dd><p><a name="help-text"></a>Print a short help text and exit.
     </p></dd><dt id="-H"><span class="term"><code class="option">-H</code>, </span><span class="term"><code class="option">--halt</code></span><a class="headerlink" title="Permalink to this term" href="#-H">¶</a></dt><dd><p>Halt the machine.</p></dd><dt id="-P"><span class="term"><code class="option">-P</code>, </span><span class="term"><code class="option">--poweroff</code></span><a class="headerlink" title="Permalink to this term" href="#-P">¶</a></dt><dd><p>Power-off the
                                 machine (the default).</p></dd><dt id="-r"><span class="term"><code class="option">-r</code>, </span><span class="term"><code class="option">--reboot</code></span><a class="headerlink" title="Permalink to this term" href="#-r">¶</a></dt><dd><p>Reboot the
                                 machine.</p></dd><dt id="-h"><span class="term"><code class="option">-h</code></span><a class="headerlink" title="Permalink to this term" href="#-h">¶</a></dt><dd><p>Equivalent to
@@ -53,8 +53,8 @@
                                 <span class="command"><strong>shutdown</strong></span> with a
                                 time argument that is not
                                 "<code class="literal">+0</code>" or
-                                "<code class="literal">now</code>".</p></dd></dl></div></div><div class="refsect1"><a name="idm214194940352"></a><h2 id="Exit status">Exit status<a class="headerlink" title="Permalink to this headline" href="#Exit%20status">¶</a></h2><p>On success, 0 is returned, a non-zero failure
-                code otherwise.</p></div><div class="refsect1"><a name="idm214194660208"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+                                "<code class="literal">now</code>".</p></dd></dl></div></div><div class="refsect1"><a name="idm214195111840"></a><h2 id="Exit status">Exit status<a class="headerlink" title="Permalink to this headline" href="#Exit%20status">¶</a></h2><p>On success, 0 is returned, a non-zero failure
+                code otherwise.</p></div><div class="refsect1"><a name="idm214195110656"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
                         <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
                         <a href="systemctl.html"><span class="citerefentry"><span class="refentrytitle">systemctl</span>(1)</span></a>,
                         <a href="halt.html"><span class="citerefentry"><span class="refentrytitle">halt</span>(8)</span></a>,
index c853fd8af4d4e8dea2d8c6c378e12ec28157126e..9b1ae9acbeb85e7c2eaba0306f8cb19a022266c3 100644 (file)
@@ -1,5 +1,5 @@
 '\" t
-.TH "SYSCTL\&.D" "5" "" "systemd 214" "sysctl.d"
+.TH "SYSCTL\&.D" "5" "" "systemd 215" "sysctl.d"
 .\" -----------------------------------------------------------------
 .\" * Define some portability stuff
 .\" -----------------------------------------------------------------
@@ -43,6 +43,20 @@ or
 ";"
 are ignored\&.
 .PP
+Each configuration file shall be named in the style of
+\fIprogram\fR\&.conf\&. Files in
+/etc/
+override files with the same name in
+/usr/lib/
+and
+/run/\&. Files in
+/run/
+override files with the same name in
+/usr/lib/\&. Packages should install their configuration files in
+/usr/lib/\&. Files in
+/etc/
+are reserved for the local administrator, who may use this logic to override the configuration files installed by vendor packages\&. All configuration files are sorted by their filename in lexicographic order, regardless of which of the directories they reside in\&. If multiple files specify the same variable name, the entry in the file with the lexicographically latest name will be applied\&. It is recommended to prefix all filenames with a two\-digit number and a dash, to simplify the ordering of the files\&.
+.PP
 Note that either
 "/"
 or
@@ -61,20 +75,6 @@ or
 may be used to refer to
 /proc/sys/net/ipv4/conf/enp3s0\&.200/forwarding\&.
 .PP
-Each configuration file shall be named in the style of
-\fIprogram\fR\&.conf\&. Files in
-/etc/
-override files with the same name in
-/usr/lib/
-and
-/run/\&. Files in
-/run/
-override files with the same name in
-/usr/lib/\&. Packages should install their configuration files in
-/usr/lib/\&. Files in
-/etc/
-are reserved for the local administrator, who may use this logic to override the configuration files installed by vendor packages\&. All configuration files are sorted by their filename in lexicographic order, regardless of which of the directories they reside in\&. If multiple files specify the same variable name, the entry in the file with the lexicographically latest name will be applied\&. It is recommended to prefix all filenames with a two\-digit number and a dash, to simplify the ordering of the files\&.
-.PP
 If the administrator wants to disable a configuration file supplied by the vendor, the recommended way is to place a symlink to
 /dev/null
 in
@@ -88,25 +88,89 @@ net\&.ipv4\&.conf\&.*,
 net\&.ipv6\&.conf\&.*,
 net\&.ipv4\&.neigh\&.*
 and
-net\&.ipv6\&.neigh\&.*)
-.SH "EXAMPLE"
+net\&.ipv6\&.neigh\&.*)\&.
 .PP
-\fBExample\ \&1.\ \&/etc/sysctl.d/domain-name.conf example:\fR
+Many sysctl parameters only become available when certain kernel modules are loaded\&. Modules are usually loaded on demand, e\&.g\&. when certain hardware is plugged in or network brought up\&. This means that
+\fBsystemd-sysctl.service\fR(8)
+which runs during early boot will not configure such parameters if they become available after it has run\&. To set such parameters, it is recommended to add an
+\fBudev\fR(7)
+rule to set those parameters when they become available\&. Alternatively, a slightly simpler and less efficient option is to add the module to
+\fBmodules-load.d\fR(5), causing it to be loaded statically before sysctl settings are applied (see example below)\&.
+.SH "EXAMPLES"
+.PP
+\fBExample\ \&1.\ \&Set kernel YP domain name\fR
+.PP
+/etc/sysctl\&.d/domain\-name\&.conf:
 .sp
 .if n \{\
 .RS 4
 .\}
 .nf
-# Set kernel YP domain name
 kernel\&.domainname=example\&.com
 .fi
 .if n \{\
 .RE
 .\}
+.PP
+\fBExample\ \&2.\ \&Disable packet filter on bridged packets (method one)\fR
+.PP
+/etc/udev/rules\&.d/99\-bridge\&.conf:
+.sp
+.if n \{\
+.RS 4
+.\}
+.nf
+ACTION=="add", SUBSYSTEM=="module", KERNEL=="bridge", RUN+="/usr/lib/systemd/systemd\-sysctl \-\-prefix=/proc/sys/net/bridge"
+.fi
+.if n \{\
+.RE
+.\}
+.PP
+/etc/sysctl\&.d/bridge\&.conf:
+.sp
+.if n \{\
+.RS 4
+.\}
+.nf
+net\&.bridge\&.bridge\-nf\-call\-ip6tables = 0
+net\&.bridge\&.bridge\-nf\-call\-iptables = 0
+net\&.bridge\&.bridge\-nf\-call\-arptables = 0
+.fi
+.if n \{\
+.RE
+.\}
+.PP
+\fBExample\ \&3.\ \&Disable packet filter on bridged packets (method two)\fR
+.PP
+/etc/modules\-load\&.d/bridge\&.conf:
+.sp
+.if n \{\
+.RS 4
+.\}
+.nf
+bridge
+.fi
+.if n \{\
+.RE
+.\}
+.PP
+/etc/sysctl\&.d/bridge\&.conf:
+.sp
+.if n \{\
+.RS 4
+.\}
+.nf
+net\&.bridge\&.bridge\-nf\-call\-ip6tables = 0
+net\&.bridge\&.bridge\-nf\-call\-iptables = 0
+net\&.bridge\&.bridge\-nf\-call\-arptables = 0
+.fi
+.if n \{\
+.RE
+.\}
 .SH "SEE ALSO"
 .PP
 \fBsystemd\fR(1),
 \fBsystemd-sysctl.service\fR(8),
 \fBsystemd-delta\fR(1),
 \fBsysctl\fR(8),
-\fBsysctl.conf\fR(5)
+\fBsysctl.conf\fR(5)\fBmodprobe\fR(8)
index 4681d4c9361cb0f6628aa9138ea992ef23a0fbe9..52df8ce0dc471604577e0393920a08cc71f12b15 100644 (file)
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="sysctl.d"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sysctl.d — Configure kernel parameters at boot</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><p><code class="filename">/etc/sysctl.d/*.conf</code></p><p><code class="filename">/run/sysctl.d/*.conf</code></p><p><code class="filename">/usr/lib/sysctl.d/*.conf</code></p></div><div class="refsect1"><a name="idm214188131520"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p>At boot,
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="sysctl.d"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sysctl.d — Configure kernel parameters at boot</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><p><code class="filename">/etc/sysctl.d/*.conf</code></p><p><code class="filename">/run/sysctl.d/*.conf</code></p><p><code class="filename">/usr/lib/sysctl.d/*.conf</code></p></div><div class="refsect1"><a name="idm214178788384"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p>At boot,
                 <a href="systemd-sysctl.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-sysctl.service</span>(8)</span></a>
                 reads configuration files from the above directories
                 to configure
                 <a href="sysctl.html"><span class="citerefentry"><span class="refentrytitle">sysctl</span>(8)</span></a>
-                kernel parameters.</p></div><div class="refsect1"><a name="idm214188802640"></a><h2 id="Configuration Format">Configuration Format<a class="headerlink" title="Permalink to this headline" href="#Configuration%20Format">¶</a></h2><p>The configuration files contain a list of
+                kernel parameters.</p></div><div class="refsect1"><a name="idm214180384960"></a><h2 id="Configuration Format">Configuration Format<a class="headerlink" title="Permalink to this headline" href="#Configuration%20Format">¶</a></h2><p>The configuration files contain a list of
                 variable assignments, separated by newlines. Empty
                 lines and lines whose first non-whitespace character
                 is "<code class="literal">#</code>" or "<code class="literal">;</code>" are
-                ignored.</p><p>Note that either "<code class="literal">/</code>" or
-                "<code class="literal">.</code>" may be used as separators within
-                sysctl variable names. If the first separator is a
-                slash, remaining slashes and dots are left intact. If
-                the first separator is a dot, dots and slashes are
-                interchanged. "<code class="literal">kernel.domainname=foo</code>"
-                and "<code class="literal">kernel/domainname=foo</code>" are
-                equivalent and will cause "<code class="literal">foo</code>" to
-                be written to
-                <code class="filename">/proc/sys/kernel/domainname</code>.
-                Either
-                "<code class="literal">net.ipv4.conf.enp3s0/200.forwarding</code>"
-                or
-                "<code class="literal">net/ipv4/conf/enp3s0.200/forwarding</code>"
-                may be used to refer to
-                <code class="filename">/proc/sys/net/ipv4/conf/enp3s0.200/forwarding</code>.
-                </p><p>Each configuration file shall be named in the
+                ignored.</p><p>Each configuration file shall be named in the
                 style of <code class="filename"><em class="replaceable"><code>program</code></em>.conf</code>.
                 Files in <code class="filename">/etc/</code> override files
                 with the same name in <code class="filename">/usr/lib/</code>
                 lexicographically latest name will be applied. It is
                 recommended to prefix all filenames with a two-digit
                 number and a dash, to simplify the ordering of the
-                files.</p><p>If the administrator wants to disable a
+                files.</p><p>Note that either "<code class="literal">/</code>" or
+                "<code class="literal">.</code>" may be used as separators within
+                sysctl variable names. If the first separator is a
+                slash, remaining slashes and dots are left intact. If
+                the first separator is a dot, dots and slashes are
+                interchanged. "<code class="literal">kernel.domainname=foo</code>"
+                and "<code class="literal">kernel/domainname=foo</code>" are
+                equivalent and will cause "<code class="literal">foo</code>" to
+                be written to
+                <code class="filename">/proc/sys/kernel/domainname</code>.
+                Either
+                "<code class="literal">net.ipv4.conf.enp3s0/200.forwarding</code>"
+                or
+                "<code class="literal">net/ipv4/conf/enp3s0.200/forwarding</code>"
+                may be used to refer to
+                <code class="filename">/proc/sys/net/ipv4/conf/enp3s0.200/forwarding</code>.
+                </p><p>If the administrator wants to disable a
                 configuration file supplied by the vendor, the
                 recommended way is to place a symlink to
                 <code class="filename">/dev/null</code> in
                 specifically,
                 <code class="filename">net.ipv4.conf.*</code>,
                 <code class="filename">net.ipv6.conf.*</code>,
-                <code class="filename">net.ipv4.neigh.*</code> and <code class="filename">net.ipv6.neigh.*</code>)</p></div><div class="refsect1"><a name="idm214188146352"></a><h2 id="Example">Example<a class="headerlink" title="Permalink to this headline" href="#Example">¶</a></h2><div class="example"><a name="idm214189983344"></a><p class="title"><b>Example 1. /etc/sysctl.d/domain-name.conf example:</b></p><div class="example-contents"><pre class="programlisting"># Set kernel YP domain name
-kernel.domainname=example.com</pre></div></div><br class="example-break"></div><div class="refsect1"><a name="idm214189776704"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+                <code class="filename">net.ipv4.neigh.*</code> and <code class="filename">net.ipv6.neigh.*</code>).</p><p>Many sysctl parameters only become available
+                when certain kernel modules are loaded. Modules are
+                usually loaded on demand, e.g. when certain hardware
+                is plugged in or network brought up. This means that
+                <a href="systemd-sysctl.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-sysctl.service</span>(8)</span></a> which runs
+                during early boot will not configure such parameters
+                if they become available after it has run. To
+                set such parameters, it is recommended to add
+                an <a href="udev.html"><span class="citerefentry"><span class="refentrytitle">udev</span>(7)</span></a> rule to set those parameters when they become
+                available. Alternatively, a slightly simpler and
+                less efficient option is to add the module to
+                <a href="modules-load.d.html"><span class="citerefentry"><span class="refentrytitle">modules-load.d</span>(5)</span></a>, causing it to be loaded statically
+                before sysctl settings are applied (see
+                example below).</p></div><div class="refsect1"><a name="idm214180508656"></a><h2 id="Examples">Examples<a class="headerlink" title="Permalink to this headline" href="#Examples">¶</a></h2><div class="example"><a name="idm214180507984"></a><p class="title"><b>Example 1. Set kernel YP domain name</b></p><div class="example-contents"><p><code class="filename">/etc/sysctl.d/domain-name.conf</code>:
+                        </p><pre class="programlisting">kernel.domainname=example.com</pre></div></div><br class="example-break"><div class="example"><a name="idm214180505408"></a><p class="title"><b>Example 2. Disable packet filter on bridged packets (method one)</b></p><div class="example-contents"><p><code class="filename">/etc/udev/rules.d/99-bridge.conf</code>:
+                        </p><pre class="programlisting">ACTION=="add", SUBSYSTEM=="module", KERNEL=="bridge", RUN+="/usr/lib/systemd/systemd-sysctl --prefix=/proc/sys/net/bridge"
+</pre><p><code class="filename">/etc/sysctl.d/bridge.conf</code>:
+                        </p><pre class="programlisting">net.bridge.bridge-nf-call-ip6tables = 0
+net.bridge.bridge-nf-call-iptables = 0
+net.bridge.bridge-nf-call-arptables = 0
+</pre></div></div><br class="example-break"><div class="example"><a name="idm214180493760"></a><p class="title"><b>Example 3. Disable packet filter on bridged packets (method two)</b></p><div class="example-contents"><p><code class="filename">/etc/modules-load.d/bridge.conf</code>:
+                        </p><pre class="programlisting">bridge</pre><p><code class="filename">/etc/sysctl.d/bridge.conf</code>:
+                        </p><pre class="programlisting">net.bridge.bridge-nf-call-ip6tables = 0
+net.bridge.bridge-nf-call-iptables = 0
+net.bridge.bridge-nf-call-arptables = 0
+</pre></div></div><br class="example-break"></div><div class="refsect1"><a name="idm214180489376"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
                         <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
                         <a href="systemd-sysctl.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-sysctl.service</span>(8)</span></a>,
                         <a href="systemd-delta.html"><span class="citerefentry"><span class="refentrytitle">systemd-delta</span>(1)</span></a>,
                         <a href="sysctl.html"><span class="citerefentry"><span class="refentrytitle">sysctl</span>(8)</span></a>,
                         <a href="sysctl.conf.html"><span class="citerefentry"><span class="refentrytitle">sysctl.conf</span>(5)</span></a>
+                        <a href="modprobe.html"><span class="citerefentry"><span class="refentrytitle">modprobe</span>(8)</span></a>
                 </p></div></div></body></html>
index db53b495998b27671662d0c31619305a6fd93670..dd73f922363081ab76f68570d1557782e4a5d113 100644 (file)
                 is <literal>#</literal> or <literal>;</literal> are
                 ignored.</para>
 
-                <para>Note that either <literal>/</literal> or
-                <literal>.</literal> may be used as separators within
-                sysctl variable names. If the first separator is a
-                slash, remaining slashes and dots are left intact. If
-                the first separator is a dot, dots and slashes are
-                interchanged. <literal>kernel.domainname=foo</literal>
-                and <literal>kernel/domainname=foo</literal> are
-                equivalent and will cause <literal>foo</literal> to
-                be written to
-                <filename>/proc/sys/kernel/domainname</filename>.
-                Either
-                <literal>net.ipv4.conf.enp3s0/200.forwarding</literal>
-                or
-                <literal>net/ipv4/conf/enp3s0.200/forwarding</literal>
-                may be used to refer to
-                <filename>/proc/sys/net/ipv4/conf/enp3s0.200/forwarding</filename>.
-                </para>
-
                 <para>Each configuration file shall be named in the
                 style of <filename><replaceable>program</replaceable>.conf</filename>.
                 Files in <filename>/etc/</filename> override files
                 number and a dash, to simplify the ordering of the
                 files.</para>
 
+                <para>Note that either <literal>/</literal> or
+                <literal>.</literal> may be used as separators within
+                sysctl variable names. If the first separator is a
+                slash, remaining slashes and dots are left intact. If
+                the first separator is a dot, dots and slashes are
+                interchanged. <literal>kernel.domainname=foo</literal>
+                and <literal>kernel/domainname=foo</literal> are
+                equivalent and will cause <literal>foo</literal> to
+                be written to
+                <filename>/proc/sys/kernel/domainname</filename>.
+                Either
+                <literal>net.ipv4.conf.enp3s0/200.forwarding</literal>
+                or
+                <literal>net/ipv4/conf/enp3s0.200/forwarding</literal>
+                may be used to refer to
+                <filename>/proc/sys/net/ipv4/conf/enp3s0.200/forwarding</filename>.
+                </para>
+
                 <para>If the administrator wants to disable a
                 configuration file supplied by the vendor, the
                 recommended way is to place a symlink to
                 specifically,
                 <filename>net.ipv4.conf.*</filename>,
                 <filename>net.ipv6.conf.*</filename>,
-                <filename>net.ipv4.neigh.*</filename> and <filename>net.ipv6.neigh.*</filename>)</para>
+                <filename>net.ipv4.neigh.*</filename> and <filename>net.ipv6.neigh.*</filename>).</para>
+
+                <para>Many sysctl parameters only become available
+                when certain kernel modules are loaded. Modules are
+                usually loaded on demand, e.g. when certain hardware
+                is plugged in or network brought up. This means that
+                <citerefentry><refentrytitle>systemd-sysctl.service</refentrytitle><manvolnum>8</manvolnum></citerefentry> which runs
+                during early boot will not configure such parameters
+                if they become available after it has run. To
+                set such parameters, it is recommended to add
+                an <citerefentry><refentrytitle>udev</refentrytitle><manvolnum>7</manvolnum></citerefentry> rule to set those parameters when they become
+                available. Alternatively, a slightly simpler and
+                less efficient option is to add the module to
+                <citerefentry><refentrytitle>modules-load.d</refentrytitle><manvolnum>5</manvolnum></citerefentry>, causing it to be loaded statically
+                before sysctl settings are applied (see
+                example below).</para>
         </refsect1>
 
         <refsect1>
-                <title>Example</title>
+                <title>Examples</title>
                 <example>
-                        <title>/etc/sysctl.d/domain-name.conf example:</title>
+                        <title>Set kernel YP domain name</title>
+                        <para><filename>/etc/sysctl.d/domain-name.conf</filename>:
+                        </para>
+
+                        <programlisting>kernel.domainname=example.com</programlisting>
+                </example>
+
+                <example>
+                        <title>Disable packet filter on bridged packets (method one)</title>
+                        <para><filename>/etc/udev/rules.d/99-bridge.conf</filename>:
+                        </para>
+
+                        <programlisting>ACTION=="add", SUBSYSTEM=="module", KERNEL=="bridge", RUN+="/usr/lib/systemd/systemd-sysctl --prefix=/proc/sys/net/bridge"
+</programlisting>
+
+                        <para><filename>/etc/sysctl.d/bridge.conf</filename>:
+                        </para>
+
+                        <programlisting>net.bridge.bridge-nf-call-ip6tables = 0
+net.bridge.bridge-nf-call-iptables = 0
+net.bridge.bridge-nf-call-arptables = 0
+</programlisting>
+                </example>
+
+                <example>
+                        <title>Disable packet filter on bridged packets (method two)</title>
+                        <para><filename>/etc/modules-load.d/bridge.conf</filename>:
+                        </para>
+
+                        <programlisting>bridge</programlisting>
+
+                        <para><filename>/etc/sysctl.d/bridge.conf</filename>:
+                        </para>
 
-                        <programlisting># Set kernel YP domain name
-kernel.domainname=example.com</programlisting>
+                        <programlisting>net.bridge.bridge-nf-call-ip6tables = 0
+net.bridge.bridge-nf-call-iptables = 0
+net.bridge.bridge-nf-call-arptables = 0
+</programlisting>
                 </example>
         </refsect1>
 
@@ -146,6 +195,7 @@ kernel.domainname=example.com</programlisting>
                         <citerefentry><refentrytitle>systemd-delta</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
                         <citerefentry><refentrytitle>sysctl</refentrytitle><manvolnum>8</manvolnum></citerefentry>,
                         <citerefentry><refentrytitle>sysctl.conf</refentrytitle><manvolnum>5</manvolnum></citerefentry>
+                        <citerefentry><refentrytitle>modprobe</refentrytitle><manvolnum>8</manvolnum></citerefentry>
                 </para>
         </refsect1>
 
index 95425d09e76af236fa2461b6ad7100989ec39f37..504e36d2098c47b994b77c3e46b96daadb560370 100644 (file)
@@ -1,5 +1,5 @@
 '\" t
-.TH "SYSTEMCTL" "1" "" "systemd 214" "systemctl"
+.TH "SYSTEMCTL" "1" "" "systemd 215" "systemctl"
 .\" -----------------------------------------------------------------
 .\" * Define some portability stuff
 .\" -----------------------------------------------------------------
@@ -180,6 +180,8 @@ Suppress output to standard output in
 \fBsnapshot\fR,
 \fBis\-active\fR,
 \fBis\-failed\fR,
+\fBis\-enabled\fR,
+\fBis\-system\-running\fR,
 \fBenable\fR
 and
 \fBdisable\fR\&.
@@ -310,6 +312,19 @@ Similarly, when used with
 \fBset\-property\fR, make changes only temporarily, so that they are lost on the next reboot\&.
 .RE
 .PP
+\fB\-\-preset\-mode=\fR
+.RS 4
+Takes one of
+"full"
+(the default),
+"enable\-only",
+"disable\-only"\&. When used with the
+\fBpreset\fR
+or
+\fBpreset\-all\fR
+commands, controls whether units shall be disabled and enabled according to the preset rules, or only enabled, or only disabled\&.
+.RE
+.PP
 \fB\-n\fR, \fB\-\-lines=\fR
 .RS 4
 When used with
@@ -332,8 +347,10 @@ When used with
 .PP
 \fB\-H\fR, \fB\-\-host=\fR
 .RS 4
-Execute the operation remotely\&. Specify a hostname, or username and hostname separated by
-"@", to connect to\&. This will use SSH to talk to the remote machine manager instance\&.
+Execute the operation remotely\&. Specify a hostname, or a username and hostname separated by
+"@", to connect to\&. The hostname may optionally be suffixed by a container name, separated by
+":", which connects directly to a specific container on the specified host\&. This will use SSH to talk to the remote machine manager instance\&. Container names may be enumerated with
+\fBmachinectl \-H \fR\fB\fIHOST\fR\fR\&.
 .RE
 .PP
 \fB\-M\fR, \fB\-\-machine=\fR
@@ -727,12 +744,27 @@ section of the unit file\&.
 Reset one or more unit files, as specified on the command line, to the defaults configured in the preset policy files\&. This has the same effect as
 \fBdisable\fR
 or
-\fBenable\fR, depending how the unit is listed in the preset files\&. For more information on the preset policy format, see
+\fBenable\fR, depending how the unit is listed in the preset files\&.
+.sp
+Use
+\fB\-\-preset\-mode=\fR
+to control whether units shall be enabled and disabled, or only enabled, or only disabled\&.
+.sp
+For more information on the preset policy format, see
 \fBsystemd.preset\fR(5)\&. For more information on the concept of presets, please consult the
 \m[blue]\fBPreset\fR\m[]\&\s-2\u[1]\d\s+2
 document\&.
 .RE
 .PP
+\fBpreset\-all\fR
+.RS 4
+Resets all installed unit files to the defaults configured in the preset policy file (see above)\&.
+.sp
+Use
+\fB\-\-preset\-mode=\fR
+to control whether units shall be enabled and disabled, or only enabled, or only disabled\&.
+.RE
+.PP
 \fBmask \fR\fB\fINAME\fR\fR\fB\&.\&.\&.\fR
 .RS 4
 Mask one or more unit files, as specified on the command line\&. This will link these units to
@@ -849,6 +881,13 @@ Reexecute the systemd manager\&. This will serialize the manager state, reexecut
 .RE
 .SS "System Commands"
 .PP
+\fBis\-system\-running\fR
+.RS 4
+Checks whether the system is running\&. This returns success when the system is fully up and running, meaning not in startup, shutdown or maintainance mode\&. Failure is returned otherwise\&. In addition, the current state is printed in a short string to standard output\&. Use
+\fB\-\-quiet\fR
+to suppress output of this state string\&.
+.RE
+.PP
 \fBdefault\fR
 .RS 4
 Enter default mode\&. This is mostly equivalent to
index 8c1e3b8d3f53547ecb2ed34c9548504a3e010412..5780ae2565e2636556057806cbbb975e7f8787f5 100644 (file)
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="systemctl"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>systemctl — Control the systemd system and service manager</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="cmdsynopsis"><p><code class="command">systemctl</code>  [OPTIONS...]  COMMAND  [NAME...]</p></div></div><div class="refsect1"><a name="idm214192531264"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><span class="command"><strong>systemctl</strong></span> may be used to
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="systemctl"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>systemctl — Control the systemd system and service manager</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="cmdsynopsis"><p><code class="command">systemctl</code>  [OPTIONS...]  COMMAND  [NAME...]</p></div></div><div class="refsect1"><a name="idm214173287904"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><span class="command"><strong>systemctl</strong></span> may be used to
     introspect and control the state of the
     <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>
-    system and service manager.</p></div><div class="refsect1"><a name="idm214195015744"></a><h2 id="Options">Options<a class="headerlink" title="Permalink to this headline" href="#Options">¶</a></h2><p>The following options are understood:</p><div class="variablelist"><dl class="variablelist"><dt id="-t"><span class="term"><code class="option">-t</code>, </span><span class="term"><code class="option">--type=</code></span><a class="headerlink" title="Permalink to this term" href="#-t">¶</a></dt><dd><p>The argument should be a comma-separated list of unit
+    system and service manager.</p></div><div class="refsect1"><a name="idm214173285312"></a><h2 id="Options">Options<a class="headerlink" title="Permalink to this headline" href="#Options">¶</a></h2><p>The following options are understood:</p><div class="variablelist"><dl class="variablelist"><dt id="-t"><span class="term"><code class="option">-t</code>, </span><span class="term"><code class="option">--type=</code></span><a class="headerlink" title="Permalink to this term" href="#-t">¶</a></dt><dd><p>The argument should be a comma-separated list of unit
           types such as <code class="option">service</code> and
           <code class="option">socket</code>.
           </p><p>If one of the arguments is a unit type, when listing
           <span class="command"><strong>snapshot</strong></span>,
           <span class="command"><strong>is-active</strong></span>,
           <span class="command"><strong>is-failed</strong></span>,
+          <span class="command"><strong>is-enabled</strong></span>,
+          <span class="command"><strong>is-system-running</strong></span>,
           <span class="command"><strong>enable</strong></span> and
         <span class="command"><strong>disable</strong></span>.</p></dd><dt id="--no-block"><span class="term"><code class="option">--no-block</code></span><a class="headerlink" title="Permalink to this term" href="#--no-block">¶</a></dt><dd><p>Do not synchronously wait for the requested operation
           to finish. If this is not specified, the job will be
           is lost on reboot, the changes are lost too.</p><p>Similarly, when used with
           <span class="command"><strong>set-property</strong></span>, make changes only
           temporarily, so that they are lost on the next
-          reboot.</p></dd><dt id="-n"><span class="term"><code class="option">-n</code>, </span><span class="term"><code class="option">--lines=</code></span><a class="headerlink" title="Permalink to this term" href="#-n">¶</a></dt><dd><p>When used with <span class="command"><strong>status</strong></span>, controls the
+          reboot.</p></dd><dt id="--preset-mode="><span class="term"><code class="option">--preset-mode=</code></span><a class="headerlink" title="Permalink to this term" href="#--preset-mode=">¶</a></dt><dd><p>Takes one of "<code class="literal">full</code>" (the default),
+          "<code class="literal">enable-only</code>",
+          "<code class="literal">disable-only</code>". When used with the
+          <span class="command"><strong>preset</strong></span> or <span class="command"><strong>preset-all</strong></span>
+          commands, controls whether units shall be disabled and
+          enabled according to the preset rules, or only enabled, or
+          only disabled.</p></dd><dt id="-n"><span class="term"><code class="option">-n</code>, </span><span class="term"><code class="option">--lines=</code></span><a class="headerlink" title="Permalink to this term" href="#-n">¶</a></dt><dd><p>When used with <span class="command"><strong>status</strong></span>, controls the
           number of journal lines to show, counting from the most
           recent ones. Takes a positive integer argument. Defaults to
           10.</p></dd><dt id="-o"><span class="term"><code class="option">-o</code>, </span><span class="term"><code class="option">--output=</code></span><a class="headerlink" title="Permalink to this term" href="#-o">¶</a></dt><dd><p>When used with <span class="command"><strong>status</strong></span>, controls the
           available choices, see
           <a href="journalctl.html"><span class="citerefentry"><span class="refentrytitle">journalctl</span>(1)</span></a>.
           Defaults to "<code class="literal">short</code>".</p></dd><dt id="--plain"><span class="term"><code class="option">--plain</code></span><a class="headerlink" title="Permalink to this term" href="#--plain">¶</a></dt><dd><p>When used with <span class="command"><strong>list-dependencies</strong></span>,
-          the output is printed as a list instead of a tree.</p></dd><dt id="-H"><span class="term"><code class="option">-H</code>, </span><span class="term"><code class="option">--host=</code></span><a class="headerlink" title="Permalink to this term" href="#-H">¶</a></dt><dd><p><a name="host-text"></a>Execute the operation remotely. Specify a hostname, or
+          the output is printed as a list instead of a tree.</p></dd><dt id="-H"><span class="term"><code class="option">-H</code>, </span><span class="term"><code class="option">--host=</code></span><a class="headerlink" title="Permalink to this term" href="#-H">¶</a></dt><dd><p><a name="host-text"></a>Execute the operation remotely. Specify a hostname, or a
       username and hostname separated by "<code class="literal">@</code>", to
-      connect to. This will use SSH to talk to the remote machine
-      manager instance.</p></dd><dt id="-M"><span class="term"><code class="option">-M</code>, </span><span class="term"><code class="option">--machine=</code></span><a class="headerlink" title="Permalink to this term" href="#-M">¶</a></dt><dd><p><a name="machine-text"></a>Execute operation on a local container. Specify a
+      connect to. The hostname may optionally be suffixed by a
+      container name, separated by "<code class="literal">:</code>", which
+      connects directly to a specific container on the specified
+      host. This will use SSH to talk to the remote machine manager
+      instance. Container names may be enumerated with
+      <span class="command"><strong>machinectl -H
+      <em class="replaceable"><code>HOST</code></em></strong></span>.</p></dd><dt id="-M"><span class="term"><code class="option">-M</code>, </span><span class="term"><code class="option">--machine=</code></span><a class="headerlink" title="Permalink to this term" href="#-M">¶</a></dt><dd><p><a name="machine-text"></a>Execute operation on a local container. Specify a
       container name to connect to.</p></dd><dt id="-h"><span class="term"><code class="option">-h</code>, </span><span class="term"><code class="option">--help</code></span><a class="headerlink" title="Permalink to this term" href="#-h">¶</a></dt><dd><p><a name="help-text"></a>Print a short help text and exit.
-    </p></dd><dt id="--version"><span class="term"><code class="option">--version</code></span><a class="headerlink" title="Permalink to this term" href="#--version">¶</a></dt><dd><p><a name="version-text"></a>Print a short version string and exit.</p></dd><dt id="--no-pager"><span class="term"><code class="option">--no-pager</code></span><a class="headerlink" title="Permalink to this term" href="#--no-pager">¶</a></dt><dd><p>Do not pipe output into a pager.</p></dd></dl></div></div><div class="refsect1"><a name="idm214197337648"></a><h2 id="Commands">Commands<a class="headerlink" title="Permalink to this headline" href="#Commands">¶</a></h2><p>The following commands are understood:</p><div class="refsect2"><a name="idm214197336544"></a><h3 id="Unit Commands">Unit Commands<a class="headerlink" title="Permalink to this headline" href="#Unit%20Commands">¶</a></h3><div class="variablelist"><dl class="variablelist"><dt id="list-units PATTERN..."><span class="term"><span class="command"><strong>list-units [<span class="optional"><em class="replaceable"><code>PATTERN</code></em>...</span>]</strong></span></span><a class="headerlink" title="Permalink to this term" href="#list-units%20PATTERN...">¶</a></dt><dd><p>List known units (subject to limitations specified
+    </p></dd><dt id="--version"><span class="term"><code class="option">--version</code></span><a class="headerlink" title="Permalink to this term" href="#--version">¶</a></dt><dd><p><a name="version-text"></a>Print a short version string and exit.</p></dd><dt id="--no-pager"><span class="term"><code class="option">--no-pager</code></span><a class="headerlink" title="Permalink to this term" href="#--no-pager">¶</a></dt><dd><p>Do not pipe output into a pager.</p></dd></dl></div></div><div class="refsect1"><a name="idm214168669712"></a><h2 id="Commands">Commands<a class="headerlink" title="Permalink to this headline" href="#Commands">¶</a></h2><p>The following commands are understood:</p><div class="refsect2"><a name="idm214168668688"></a><h3 id="Unit Commands">Unit Commands<a class="headerlink" title="Permalink to this headline" href="#Unit%20Commands">¶</a></h3><div class="variablelist"><dl class="variablelist"><dt id="list-units PATTERN..."><span class="term"><span class="command"><strong>list-units [<span class="optional"><em class="replaceable"><code>PATTERN</code></em>...</span>]</strong></span></span><a class="headerlink" title="Permalink to this term" href="#list-units%20PATTERN...">¶</a></dt><dd><p>List known units (subject to limitations specified
             with <code class="option">-t</code>). If one or more
             <em class="replaceable"><code>PATTERN</code></em>s are specified, only
             units matching one of them are shown.</p><p>This is the default command.</p></dd><dt id="list-sockets PATTERN..."><span class="term"><span class="command"><strong>list-sockets [<span class="optional"><em class="replaceable"><code>PATTERN</code></em>...</span>]</strong></span></span><a class="headerlink" title="Permalink to this term" href="#list-sockets%20PATTERN...">¶</a></dt><dd><p>List socket units ordered by listening address.
@@ -344,7 +357,7 @@ kobject-uevent 1 systemd-udevd-kernel.socket systemd-udevd.service
             <code class="filename">default.target</code> is implied. Target units
             are recursively expanded.  When <code class="option">--all</code> is
             passed, all other units are recursively expanded as
-            well.</p></dd></dl></div></div><div class="refsect2"><a name="idm214195442112"></a><h3 id="Unit File Commands">Unit File Commands<a class="headerlink" title="Permalink to this headline" href="#Unit%20File%20Commands">¶</a></h3><div class="variablelist"><dl class="variablelist"><dt id="list-unit-files PATTERN..."><span class="term"><span class="command"><strong>list-unit-files [<span class="optional"><em class="replaceable"><code>PATTERN...</code></em></span>]</strong></span></span><a class="headerlink" title="Permalink to this term" href="#list-unit-files%20PATTERN...">¶</a></dt><dd><p>List installed unit files. If one or more
+            well.</p></dd></dl></div></div><div class="refsect2"><a name="idm214168583040"></a><h3 id="Unit File Commands">Unit File Commands<a class="headerlink" title="Permalink to this headline" href="#Unit%20File%20Commands">¶</a></h3><div class="variablelist"><dl class="variablelist"><dt id="list-unit-files PATTERN..."><span class="term"><span class="command"><strong>list-unit-files [<span class="optional"><em class="replaceable"><code>PATTERN...</code></em></span>]</strong></span></span><a class="headerlink" title="Permalink to this term" href="#list-unit-files%20PATTERN...">¶</a></dt><dd><p>List installed unit files. If one or more
             <em class="replaceable"><code>PATTERN</code></em>s are specified, only
             units whose filename (just the last component of the path)
             matches one of them are shown.</p></dd><dt id="enable NAME..."><span class="term"><span class="command"><strong>enable <em class="replaceable"><code>NAME</code></em>...</strong></span></span><a class="headerlink" title="Permalink to this term" href="#enable%20NAME...">¶</a></dt><dd><p>Enable one or more unit files or unit file instances,
@@ -408,7 +421,7 @@ kobject-uevent 1 systemd-udevd-kernel.socket systemd-udevd.service
             exit code of 0 if at least one is enabled, non-zero
             otherwise. Prints the current enable status (see table).
             To suppress this output, use <code class="option">--quiet</code>.
-            </p><div class="table"><a name="idm214192417056"></a><p class="title"><b>Table 1. 
+            </p><div class="table"><a name="idm214168555792"></a><p class="title"><b>Table 1. 
                 <span class="command">is-enabled</span> output
               </b></p><div class="table-contents"><table summary="
                 is-enabled output
@@ -421,13 +434,17 @@ kobject-uevent 1 systemd-udevd-kernel.socket systemd-udevd.service
             command line, to the defaults configured in the preset
             policy files. This has the same effect as
             <span class="command"><strong>disable</strong></span> or <span class="command"><strong>enable</strong></span>,
-            depending how the unit is listed in the preset files. For
-            more information on the preset policy format, see
+            depending how the unit is listed in the preset files.</p><p>Use <code class="option">--preset-mode=</code> to control
+            whether units shall be enabled and disabled, or only
+            enabled, or only disabled.</p><p>For more information on the preset policy format,
+            see
             <a href="systemd.preset.html"><span class="citerefentry"><span class="refentrytitle">systemd.preset</span>(5)</span></a>.
             For more information on the concept of presets, please
-            consult the
-            <a class="ulink" href="http://freedesktop.org/wiki/Software/systemd/Preset" target="_top">Preset</a>
-            document.</p></dd><dt id="mask NAME..."><span class="term"><span class="command"><strong>mask <em class="replaceable"><code>NAME</code></em>...</strong></span></span><a class="headerlink" title="Permalink to this term" href="#mask%20NAME...">¶</a></dt><dd><p>Mask one or more unit files, as specified on the
+            consult the <a class="ulink" href="http://freedesktop.org/wiki/Software/systemd/Preset" target="_top">Preset</a>
+            document.</p></dd><dt id="preset-all"><span class="term"><span class="command"><strong>preset-all</strong></span></span><a class="headerlink" title="Permalink to this term" href="#preset-all">¶</a></dt><dd><p>Resets all installed unit files to the defaults
+            configured in the preset policy file (see above).</p><p>Use <code class="option">--preset-mode=</code> to control
+            whether units shall be enabled and disabled, or only
+            enabled, or only disabled.</p></dd><dt id="mask NAME..."><span class="term"><span class="command"><strong>mask <em class="replaceable"><code>NAME</code></em>...</strong></span></span><a class="headerlink" title="Permalink to this term" href="#mask%20NAME...">¶</a></dt><dd><p>Mask one or more unit files, as specified on the
             command line. This will link these units to
             <code class="filename">/dev/null</code>, making it impossible to
             start them. This is a stronger version of
@@ -445,15 +462,15 @@ kobject-uevent 1 systemd-udevd-kernel.socket systemd-udevd.service
             <span class="command"><strong>start</strong></span> and other commands although it
             is not installed directly in the unit search path.</p></dd><dt id="get-default"><span class="term"><span class="command"><strong>get-default</strong></span></span><a class="headerlink" title="Permalink to this term" href="#get-default">¶</a></dt><dd><p>Get the default target specified
             via <code class="filename">default.target</code> link.</p></dd><dt id="set-default NAME"><span class="term"><span class="command"><strong>set-default <em class="replaceable"><code>NAME</code></em></strong></span></span><a class="headerlink" title="Permalink to this term" href="#set-default%20NAME">¶</a></dt><dd><p>Set the default target to boot into. Command links
-            <code class="filename">default.target</code> to the given unit.</p></dd></dl></div></div><div class="refsect2"><a name="idm214192368240"></a><h3 id="Machine Commands">Machine Commands<a class="headerlink" title="Permalink to this headline" href="#Machine%20Commands">¶</a></h3><div class="variablelist"><dl class="variablelist"><dt id="list-machines PATTERN..."><span class="term"><span class="command"><strong>list-machines [<span class="optional"><em class="replaceable"><code>PATTERN</code></em>...</span>]</strong></span></span><a class="headerlink" title="Permalink to this term" href="#list-machines%20PATTERN...">¶</a></dt><dd><p>List the host and all running local containers with
+            <code class="filename">default.target</code> to the given unit.</p></dd></dl></div></div><div class="refsect2"><a name="idm214168502768"></a><h3 id="Machine Commands">Machine Commands<a class="headerlink" title="Permalink to this headline" href="#Machine%20Commands">¶</a></h3><div class="variablelist"><dl class="variablelist"><dt id="list-machines PATTERN..."><span class="term"><span class="command"><strong>list-machines [<span class="optional"><em class="replaceable"><code>PATTERN</code></em>...</span>]</strong></span></span><a class="headerlink" title="Permalink to this term" href="#list-machines%20PATTERN...">¶</a></dt><dd><p>List the host and all running local containers with
             their state. If one or more
             <em class="replaceable"><code>PATTERN</code></em>s are specified, only
             containers matching one of them are shown.
-            </p></dd></dl></div></div><div class="refsect2"><a name="idm214192364048"></a><h3 id="Job Commands">Job Commands<a class="headerlink" title="Permalink to this headline" href="#Job%20Commands">¶</a></h3><div class="variablelist"><dl class="variablelist"><dt id="list-jobs PATTERN..."><span class="term"><span class="command"><strong>list-jobs [<span class="optional"><em class="replaceable"><code>PATTERN...</code></em></span>]</strong></span></span><a class="headerlink" title="Permalink to this term" href="#list-jobs%20PATTERN...">¶</a></dt><dd><p>List jobs that are in progress. If one or more
+            </p></dd></dl></div></div><div class="refsect2"><a name="idm214168498576"></a><h3 id="Job Commands">Job Commands<a class="headerlink" title="Permalink to this headline" href="#Job%20Commands">¶</a></h3><div class="variablelist"><dl class="variablelist"><dt id="list-jobs PATTERN..."><span class="term"><span class="command"><strong>list-jobs [<span class="optional"><em class="replaceable"><code>PATTERN...</code></em></span>]</strong></span></span><a class="headerlink" title="Permalink to this term" href="#list-jobs%20PATTERN...">¶</a></dt><dd><p>List jobs that are in progress. If one or more
             <em class="replaceable"><code>PATTERN</code></em>s are specified, only
             jobs for units matching one of them are shown.</p></dd><dt id="cancel JOB..."><span class="term"><span class="command"><strong>cancel <em class="replaceable"><code>JOB</code></em>...</strong></span></span><a class="headerlink" title="Permalink to this term" href="#cancel%20JOB...">¶</a></dt><dd><p>Cancel one or more jobs specified on the command line
             by their numeric job IDs. If no job ID is specified, cancel
-            all pending jobs.</p></dd></dl></div></div><div class="refsect2"><a name="idm214192357584"></a><h3 id="Snapshot Commands">Snapshot Commands<a class="headerlink" title="Permalink to this headline" href="#Snapshot%20Commands">¶</a></h3><div class="variablelist"><dl class="variablelist"><dt id="snapshot NAME"><span class="term"><span class="command"><strong>snapshot [<span class="optional"><em class="replaceable"><code>NAME</code></em></span>]</strong></span></span><a class="headerlink" title="Permalink to this term" href="#snapshot%20NAME">¶</a></dt><dd><p>Create a snapshot. If a snapshot name is specified,
+            all pending jobs.</p></dd></dl></div></div><div class="refsect2"><a name="idm214168492112"></a><h3 id="Snapshot Commands">Snapshot Commands<a class="headerlink" title="Permalink to this headline" href="#Snapshot%20Commands">¶</a></h3><div class="variablelist"><dl class="variablelist"><dt id="snapshot NAME"><span class="term"><span class="command"><strong>snapshot [<span class="optional"><em class="replaceable"><code>NAME</code></em></span>]</strong></span></span><a class="headerlink" title="Permalink to this term" href="#snapshot%20NAME">¶</a></dt><dd><p>Create a snapshot. If a snapshot name is specified,
             the new snapshot will be named after it. If none is
             specified, an automatic snapshot name is generated. In
             either case, the snapshot name used is printed to standard
@@ -468,7 +485,7 @@ kobject-uevent 1 systemd-udevd-kernel.socket systemd-udevd.service
             which units are running or are stopped, they do not
             save/restore any other state. Snapshots are dynamic and lost
             on reboot.</p></dd><dt id="delete PATTERN..."><span class="term"><span class="command"><strong>delete <em class="replaceable"><code>PATTERN</code></em>...</strong></span></span><a class="headerlink" title="Permalink to this term" href="#delete%20PATTERN...">¶</a></dt><dd><p>Remove a snapshot previously created with
-            <span class="command"><strong>snapshot</strong></span>.</p></dd></dl></div></div><div class="refsect2"><a name="idm214192348592"></a><h3 id="Environment Commands">Environment Commands<a class="headerlink" title="Permalink to this headline" href="#Environment%20Commands">¶</a></h3><div class="variablelist"><dl class="variablelist"><dt id="show-environment"><span class="term"><span class="command"><strong>show-environment</strong></span></span><a class="headerlink" title="Permalink to this term" href="#show-environment">¶</a></dt><dd><p>Dump the systemd manager environment block. The
+            <span class="command"><strong>snapshot</strong></span>.</p></dd></dl></div></div><div class="refsect2"><a name="idm214168483120"></a><h3 id="Environment Commands">Environment Commands<a class="headerlink" title="Permalink to this headline" href="#Environment%20Commands">¶</a></h3><div class="variablelist"><dl class="variablelist"><dt id="show-environment"><span class="term"><span class="command"><strong>show-environment</strong></span></span><a class="headerlink" title="Permalink to this term" href="#show-environment">¶</a></dt><dd><p>Dump the systemd manager environment block. The
             environment block will be dumped in straight-forward form
             suitable for sourcing into a shell script. This environment
             block will be passed to all processes the manager
@@ -483,7 +500,7 @@ kobject-uevent 1 systemd-udevd-kernel.socket systemd-udevd.service
             imported. Otherwise, a list of one or more environment
             variable names should be passed, whose client-side values
             are then imported into the manager's environment
-            block.</p></dd></dl></div></div><div class="refsect2"><a name="idm214192337536"></a><h3 id="Manager Lifecycle Commands">Manager Lifecycle Commands<a class="headerlink" title="Permalink to this headline" href="#Manager%20Lifecycle%20Commands">¶</a></h3><div class="variablelist"><dl class="variablelist"><dt id="daemon-reload"><span class="term"><span class="command"><strong>daemon-reload</strong></span></span><a class="headerlink" title="Permalink to this term" href="#daemon-reload">¶</a></dt><dd><p>Reload systemd manager configuration. This will reload
+            block.</p></dd></dl></div></div><div class="refsect2"><a name="idm214173480768"></a><h3 id="Manager Lifecycle Commands">Manager Lifecycle Commands<a class="headerlink" title="Permalink to this headline" href="#Manager%20Lifecycle%20Commands">¶</a></h3><div class="variablelist"><dl class="variablelist"><dt id="daemon-reload"><span class="term"><span class="command"><strong>daemon-reload</strong></span></span><a class="headerlink" title="Permalink to this term" href="#daemon-reload">¶</a></dt><dd><p>Reload systemd manager configuration. This will reload
             all unit files and recreate the entire dependency
             tree. While the daemon is being reloaded, all sockets systemd
             listens on on behalf of user configuration will stay
@@ -496,7 +513,13 @@ kobject-uevent 1 systemd-udevd-kernel.socket systemd-udevd.service
             helpful as a heavy-weight <span class="command"><strong>daemon-reload</strong></span>.
             While the daemon is being reexecuted, all sockets systemd listening
             on behalf of user configuration will stay accessible.
-            </p></dd></dl></div></div><div class="refsect2"><a name="idm214192329472"></a><h3 id="System Commands">System Commands<a class="headerlink" title="Permalink to this headline" href="#System%20Commands">¶</a></h3><div class="variablelist"><dl class="variablelist"><dt id="default"><span class="term"><span class="command"><strong>default</strong></span></span><a class="headerlink" title="Permalink to this term" href="#default">¶</a></dt><dd><p>Enter default mode. This is mostly equivalent to
+            </p></dd></dl></div></div><div class="refsect2"><a name="idm214168455376"></a><h3 id="System Commands">System Commands<a class="headerlink" title="Permalink to this headline" href="#System%20Commands">¶</a></h3><div class="variablelist"><dl class="variablelist"><dt id="is-system-running"><span class="term"><span class="command"><strong>is-system-running</strong></span></span><a class="headerlink" title="Permalink to this term" href="#is-system-running">¶</a></dt><dd><p>Checks whether the system is running. This returns
+            success when the system is fully up and running, meaning
+            not in startup, shutdown or maintainance mode. Failure is
+            returned otherwise. In addition, the current state is
+            printed in a short string to standard output. Use
+            <code class="option">--quiet</code> to suppress output of this state
+            string.</p></dd><dt id="default"><span class="term"><span class="command"><strong>default</strong></span></span><a class="headerlink" title="Permalink to this term" href="#default">¶</a></dt><dd><p>Enter default mode. This is mostly equivalent to
             <span class="command"><strong>isolate default.target</strong></span>.</p></dd><dt id="rescue"><span class="term"><span class="command"><strong>rescue</strong></span></span><a class="headerlink" title="Permalink to this term" href="#rescue">¶</a></dt><dd><p>Enter rescue mode. This is mostly equivalent to
             <span class="command"><strong>isolate rescue.target</strong></span>, but also prints a
             wall message to all users.</p></dd><dt id="emergency"><span class="term"><span class="command"><strong>emergency</strong></span></span><a class="headerlink" title="Permalink to this term" href="#emergency">¶</a></dt><dd><p>Enter emergency mode. This is mostly equivalent to
@@ -564,7 +587,7 @@ kobject-uevent 1 systemd-udevd-kernel.socket systemd-udevd.service
             equal to the empty string, the state of the initrd's system
             manager process is passed to the main system manager, which
             allows later introspection of the state of the services
-            involved in the initrd boot.</p></dd></dl></div></div><div class="refsect2"><a name="idm214197414976"></a><h3 id="Parameter Syntax">Parameter Syntax<a class="headerlink" title="Permalink to this headline" href="#Parameter%20Syntax">¶</a></h3><p>Unit commands listed above take either a single unit name
+            involved in the initrd boot.</p></dd></dl></div></div><div class="refsect2"><a name="idm214168410608"></a><h3 id="Parameter Syntax">Parameter Syntax<a class="headerlink" title="Permalink to this headline" href="#Parameter%20Syntax">¶</a></h3><p>Unit commands listed above take either a single unit name
       (designated as <em class="replaceable"><code>NAME</code></em>), or multiple
       unit specifications (designated as
       <em class="replaceable"><code>PATTERN</code></em>...). In the first case, the
@@ -608,8 +631,8 @@ kobject-uevent 1 systemd-udevd-kernel.socket systemd-udevd.service
       </p><pre class="programlisting"># systemctl enable foo.service</pre><p>
       or
       </p><pre class="programlisting"># systemctl link /path/to/foo.service</pre><p>
-      </p></div></div><div class="refsect1"><a name="idm214192263520"></a><h2 id="Exit status">Exit status<a class="headerlink" title="Permalink to this headline" href="#Exit%20status">¶</a></h2><p>On success, 0 is returned, a non-zero failure
-    code otherwise.</p></div><div class="refsect1"><a name="idm214178830064"></a><h2 id="Environment">Environment<a class="headerlink" title="Permalink to this headline" href="#Environment">¶</a></h2><div class="variablelist"><dl class="variablelist"><dt id="$SYSTEMD_PAGER"><span class="term"><code class="varname">$SYSTEMD_PAGER</code></span><a class="headerlink" title="Permalink to this term" href="#%24SYSTEMD_PAGER">¶</a></dt><dd><p>Pager to use when
+      </p></div></div><div class="refsect1"><a name="idm214168395616"></a><h2 id="Exit status">Exit status<a class="headerlink" title="Permalink to this headline" href="#Exit%20status">¶</a></h2><p>On success, 0 is returned, a non-zero failure
+    code otherwise.</p></div><div class="refsect1"><a name="idm214152885568"></a><h2 id="Environment">Environment<a class="headerlink" title="Permalink to this headline" href="#Environment">¶</a></h2><div class="variablelist"><dl class="variablelist"><dt id="$SYSTEMD_PAGER"><span class="term"><code class="varname">$SYSTEMD_PAGER</code></span><a class="headerlink" title="Permalink to this term" href="#%24SYSTEMD_PAGER">¶</a></dt><dd><p>Pager to use when
                         <code class="option">--no-pager</code> is not given;
                         overrides <code class="varname">$PAGER</code>.  Setting
                         this to an empty string or the value
@@ -617,7 +640,7 @@ kobject-uevent 1 systemd-udevd-kernel.socket systemd-udevd.service
                         <code class="option">--no-pager</code>.</p></dd><dt id="$SYSTEMD_LESS"><span class="term"><code class="varname">$SYSTEMD_LESS</code></span><a class="headerlink" title="Permalink to this term" href="#%24SYSTEMD_LESS">¶</a></dt><dd><p>Override the default
                         options passed to
                         <span class="command"><strong>less</strong></span>
-                        ("<code class="literal">FRSXMK</code>").</p></dd></dl></div></div><div class="refsect1"><a name="idm214192261792"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+                        ("<code class="literal">FRSXMK</code>").</p></dd></dl></div></div><div class="refsect1"><a name="idm214168393888"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
       <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
       <a href="systemadm.html"><span class="citerefentry"><span class="refentrytitle">systemadm</span>(1)</span></a>,
       <a href="journalctl.html"><span class="citerefentry"><span class="refentrytitle">journalctl</span>(1)</span></a>,
index e971b3422a4e9bf0e6ad8481819a62c1a214c568..a1f170e43061d5f742b67449ef6868f7cd20f000 100644 (file)
@@ -288,6 +288,8 @@ along with systemd; If not, see <http://www.gnu.org/licenses/>.
           <command>snapshot</command>,
           <command>is-active</command>,
           <command>is-failed</command>,
+          <command>is-enabled</command>,
+          <command>is-system-running</command>,
           <command>enable</command> and
         <command>disable</command>.</para>
         </listitem>
@@ -476,6 +478,20 @@ along with systemd; If not, see <http://www.gnu.org/licenses/>.
         </listitem>
       </varlistentry>
 
+      <varlistentry>
+        <term><option>--preset-mode=</option></term>
+
+        <listitem>
+          <para>Takes one of <literal>full</literal> (the default),
+          <literal>enable-only</literal>,
+          <literal>disable-only</literal>. When used with the
+          <command>preset</command> or <command>preset-all</command>
+          commands, controls whether units shall be disabled and
+          enabled according to the preset rules, or only enabled, or
+          only disabled.</para>
+        </listitem>
+      </varlistentry>
+
       <varlistentry>
         <term><option>-n</option></term>
         <term><option>--lines=</option></term>
@@ -1025,16 +1041,35 @@ kobject-uevent 1 systemd-udevd-kernel.socket systemd-udevd.service
             command line, to the defaults configured in the preset
             policy files. This has the same effect as
             <command>disable</command> or <command>enable</command>,
-            depending how the unit is listed in the preset files. For
-            more information on the preset policy format, see
+            depending how the unit is listed in the preset files.</para>
+
+            <para>Use <option>--preset-mode=</option> to control
+            whether units shall be enabled and disabled, or only
+            enabled, or only disabled.</para>
+
+            <para>For more information on the preset policy format,
+            see
             <citerefentry><refentrytitle>systemd.preset</refentrytitle><manvolnum>5</manvolnum></citerefentry>.
             For more information on the concept of presets, please
-            consult the
-            <ulink url="http://freedesktop.org/wiki/Software/systemd/Preset">Preset</ulink>
+            consult the <ulink
+            url="http://freedesktop.org/wiki/Software/systemd/Preset">Preset</ulink>
             document.</para>
           </listitem>
         </varlistentry>
 
+        <varlistentry>
+          <term><command>preset-all</command></term>
+
+          <listitem>
+            <para>Resets all installed unit files to the defaults
+            configured in the preset policy file (see above).</para>
+
+            <para>Use <option>--preset-mode=</option> to control
+            whether units shall be enabled and disabled, or only
+            enabled, or only disabled.</para>
+          </listitem>
+        </varlistentry>
+
         <varlistentry>
           <term><command>mask <replaceable>NAME</replaceable>...</command></term>
 
@@ -1266,6 +1301,20 @@ kobject-uevent 1 systemd-udevd-kernel.socket systemd-udevd.service
       <title>System Commands</title>
 
       <variablelist>
+        <varlistentry>
+          <term><command>is-system-running</command></term>
+
+          <listitem>
+            <para>Checks whether the system is running. This returns
+            success when the system is fully up and running, meaning
+            not in startup, shutdown or maintainance mode. Failure is
+            returned otherwise. In addition, the current state is
+            printed in a short string to standard output. Use
+            <option>--quiet</option> to suppress output of this state
+            string.</para>
+          </listitem>
+        </varlistentry>
+
         <varlistentry>
           <term><command>default</command></term>
 
@@ -1274,6 +1323,7 @@ kobject-uevent 1 systemd-udevd-kernel.socket systemd-udevd.service
             <command>isolate default.target</command>.</para>
           </listitem>
         </varlistentry>
+
         <varlistentry>
           <term><command>rescue</command></term>
 
index 5cd06c00c8e25c6d12e04f8c220c4566fb962d35..b5adf99c85b3a0998516a2d09b684961614adf2e 100644 (file)
@@ -1,5 +1,5 @@
 '\" t
-.TH "SYSTEMD\-ACTIVATE" "8" "" "systemd 214" "systemd-activate"
+.TH "SYSTEMD\-ACTIVATE" "8" "" "systemd 215" "systemd-activate"
 .\" -----------------------------------------------------------------
 .\" * Define some portability stuff
 .\" -----------------------------------------------------------------
index f48b8afa409ac727ed75201651938cf17310b491..fe6f0f4a981d3fc45660e05760662e7c86a1073e 100644 (file)
@@ -19,7 +19,7 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="systemd-activate"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>systemd-activate — Test socket activation of daemons</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="cmdsynopsis"><p><code class="command">/usr/lib/systemd/systemd-activate</code>  [OPTIONS...]  <em class="replaceable"><code>daemon</code></em>  [OPTIONS...]</p></div></div><div class="refsect1"><a name="idm214168112624"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><span class="command"><strong>systemd-activate</strong></span> can be used to
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="systemd-activate"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>systemd-activate — Test socket activation of daemons</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="cmdsynopsis"><p><code class="command">/usr/lib/systemd/systemd-activate</code>  [OPTIONS...]  <em class="replaceable"><code>daemon</code></em>  [OPTIONS...]</p></div></div><div class="refsect1"><a name="idm214176941344"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><span class="command"><strong>systemd-activate</strong></span> can be used to
     launch a socket activated daemon from the command-line for
     testing purposes. It can also be used to launch single instances
     of the daemon per connection (inetd-style).
@@ -33,7 +33,7 @@
     to <span class="command"><strong>systemd-activate</strong></span> will be passed through to
     the dameon, in the original positions. Other sockets specified
     with <code class="option">--listen</code> will use consecutive descriptors.
-    </p></div><div class="refsect1"><a name="idm214167863312"></a><h2 id="Options">Options<a class="headerlink" title="Permalink to this headline" href="#Options">¶</a></h2><div class="variablelist"><dl class="variablelist"><dt id="-l address"><span class="term"><code class="option">-l <em class="replaceable"><code>address</code></em></code>, </span><span class="term"><code class="option">--listen=<em class="replaceable"><code>address</code></em></code></span><a class="headerlink" title="Permalink to this term" href="#-l%20address">¶</a></dt><dd><p>Listen on this <em class="replaceable"><code>address</code></em>.
+    </p></div><div class="refsect1"><a name="idm214177010960"></a><h2 id="Options">Options<a class="headerlink" title="Permalink to this headline" href="#Options">¶</a></h2><div class="variablelist"><dl class="variablelist"><dt id="-l address"><span class="term"><code class="option">-l <em class="replaceable"><code>address</code></em></code>, </span><span class="term"><code class="option">--listen=<em class="replaceable"><code>address</code></em></code></span><a class="headerlink" title="Permalink to this term" href="#-l%20address">¶</a></dt><dd><p>Listen on this <em class="replaceable"><code>address</code></em>.
         Takes a string like "<code class="literal">2000</code>" or
         "<code class="literal">127.0.0.1:2001</code>".</p></dd><dt id="-a"><span class="term"><code class="option">-a</code>, </span><span class="term"><code class="option">--accept</code></span><a class="headerlink" title="Permalink to this term" href="#-a">¶</a></dt><dd><p>Launch a separate instance of daemon per
         connection and pass the connection socket as standard input
         variable–value pair. Otherwise, obtain the value from the
         environment of <span class="command"><strong>systemd-activate</strong></span> itself.
         </p></dd><dt id="-h"><span class="term"><code class="option">-h</code>, </span><span class="term"><code class="option">--help</code></span><a class="headerlink" title="Permalink to this term" href="#-h">¶</a></dt><dd><p><a name="help-text"></a>Print a short help text and exit.
-    </p></dd><dt id="--version"><span class="term"><code class="option">--version</code></span><a class="headerlink" title="Permalink to this term" href="#--version">¶</a></dt><dd><p><a name="version-text"></a>Print a short version string and exit.</p></dd></dl></div></div><div class="refsect1"><a name="idm214166852464"></a><h2 id="Environment variables">Environment variables<a class="headerlink" title="Permalink to this headline" href="#Environment%20variables">¶</a></h2><div class="variablelist"><dl class="variablelist"><dt id="$LISTEN_FDS"><span class="term"><code class="varname">$LISTEN_FDS</code>, </span><span class="term"><code class="varname">$LISTEN_PID</code></span><a class="headerlink" title="Permalink to this term" href="#%24LISTEN_FDS">¶</a></dt><dd><p>See
+    </p></dd><dt id="--version"><span class="term"><code class="option">--version</code></span><a class="headerlink" title="Permalink to this term" href="#--version">¶</a></dt><dd><p><a name="version-text"></a>Print a short version string and exit.</p></dd></dl></div></div><div class="refsect1"><a name="idm214177071616"></a><h2 id="Environment variables">Environment variables<a class="headerlink" title="Permalink to this headline" href="#Environment%20variables">¶</a></h2><div class="variablelist"><dl class="variablelist"><dt id="$LISTEN_FDS"><span class="term"><code class="varname">$LISTEN_FDS</code>, </span><span class="term"><code class="varname">$LISTEN_PID</code></span><a class="headerlink" title="Permalink to this term" href="#%24LISTEN_FDS">¶</a></dt><dd><p>See
         <a href="sd_listen_fds.html"><span class="citerefentry"><span class="refentrytitle">sd_listen_fds</span>(3)</span></a>.</p></dd><dt id="$SYSTEMD_LOG_TARGET"><span class="term"><code class="varname">$SYSTEMD_LOG_TARGET</code>, </span><span class="term"><code class="varname">$SYSTEMD_LOG_LEVEL</code>, </span><span class="term"><code class="varname">$SYSTEMD_LOG_COLOR</code>, </span><span class="term"><code class="varname">$SYSTEMD_LOG_LOCATION</code></span><a class="headerlink" title="Permalink to this term" href="#%24SYSTEMD_LOG_TARGET">¶</a></dt><dd><p>Same as in
-        <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>.</p></dd></dl></div></div><div class="refsect1"><a name="idm214169549648"></a><h2 id="Example 1">Example 1<a class="headerlink" title="Permalink to this headline" href="#Example%201">¶</a></h2><pre class="programlisting">$ /usr/lib/systemd/systemd-activate -l 2000 -a cat</pre><p>This runs an echo server on port 2000.</p></div><div class="refsect1"><a name="idm214168395680"></a><h2 id="Example 2">Example 2<a class="headerlink" title="Permalink to this headline" href="#Example%202">¶</a></h2><pre class="programlisting">$ /usr/lib/systemd/systemd-activate -l 19531 /usr/lib/systemd/systemd-journal-gatewayd</pre><p>This runs a socket activated instance of
-    <a href="systemd-journal-gatewayd.html"><span class="citerefentry"><span class="refentrytitle">systemd-journal-gatewayd</span>(8)</span></a>.</p></div><div class="refsect1"><a name="idm214167080880"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+        <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>.</p></dd></dl></div></div><div class="refsect1"><a name="idm214177063344"></a><h2 id="Example 1">Example 1<a class="headerlink" title="Permalink to this headline" href="#Example%201">¶</a></h2><pre class="programlisting">$ /usr/lib/systemd/systemd-activate -l 2000 -a cat</pre><p>This runs an echo server on port 2000.</p></div><div class="refsect1"><a name="idm214177061456"></a><h2 id="Example 2">Example 2<a class="headerlink" title="Permalink to this headline" href="#Example%202">¶</a></h2><pre class="programlisting">$ /usr/lib/systemd/systemd-activate -l 19531 /usr/lib/systemd/systemd-journal-gatewayd</pre><p>This runs a socket activated instance of
+    <a href="systemd-journal-gatewayd.html"><span class="citerefentry"><span class="refentrytitle">systemd-journal-gatewayd</span>(8)</span></a>.</p></div><div class="refsect1"><a name="idm214177058800"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
       <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
       <a href="systemd.socket.html"><span class="citerefentry"><span class="refentrytitle">systemd.socket</span>(5)</span></a>,
       <a href="systemd.service.html"><span class="citerefentry"><span class="refentrytitle">systemd.service</span>(5)</span></a>,
index 4e36ffe4c2c4f35ab9d7000c408acc1f945f8f88..6073a49e5852ba58fa46257e43f920a3ecb942b5 100644 (file)
@@ -1,5 +1,5 @@
 '\" t
-.TH "SYSTEMD\-ANALYZE" "1" "" "systemd 214" "systemd-analyze"
+.TH "SYSTEMD\-ANALYZE" "1" "" "systemd 215" "systemd-analyze"
 .\" -----------------------------------------------------------------
 .\" * Define some portability stuff
 .\" -----------------------------------------------------------------
@@ -141,8 +141,10 @@ is seconds unless specified with a different unit, e\&.g\&. "50ms"\&.
 .PP
 \fB\-H\fR, \fB\-\-host=\fR
 .RS 4
-Execute the operation remotely\&. Specify a hostname, or username and hostname separated by
-"@", to connect to\&. This will use SSH to talk to the remote machine manager instance\&.
+Execute the operation remotely\&. Specify a hostname, or a username and hostname separated by
+"@", to connect to\&. The hostname may optionally be suffixed by a container name, separated by
+":", which connects directly to a specific container on the specified host\&. This will use SSH to talk to the remote machine manager instance\&. Container names may be enumerated with
+\fBmachinectl \-H \fR\fB\fIHOST\fR\fR\&.
 .RE
 .PP
 \fB\-M\fR, \fB\-\-machine=\fR
index 1c6f6a8f88f2b398419f770c17b78aa78875e800..2e10ebba007e224f81daf52a5877c1057abecbce 100644 (file)
@@ -19,7 +19,7 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="systemd-analyze"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>systemd-analyze — Analyze system boot-up performance</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="cmdsynopsis"><p><code class="command">systemd-analyze</code>  [OPTIONS...] [time]</p></div><div class="cmdsynopsis"><p><code class="command">systemd-analyze</code>  [OPTIONS...]  blame </p></div><div class="cmdsynopsis"><p><code class="command">systemd-analyze</code>  [OPTIONS...]  critical-chain  [<em class="replaceable"><code>UNIT</code></em>...]</p></div><div class="cmdsynopsis"><p><code class="command">systemd-analyze</code>  [OPTIONS...]  plot  [&gt; file.svg]</p></div><div class="cmdsynopsis"><p><code class="command">systemd-analyze</code>  [OPTIONS...]  dot  [<em class="replaceable"><code>PATTERN</code></em>...] [&gt; file.dot]</p></div><div class="cmdsynopsis"><p><code class="command">systemd-analyze</code>  [OPTIONS...]  dump </p></div><div class="cmdsynopsis"><p><code class="command">systemd-analyze</code>  [OPTIONS...]  set-log-level  [<em class="replaceable"><code>LEVEL</code></em>]</p></div></div><div class="refsect1"><a name="idm214180780064"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><span class="command"><strong>systemd-analyze</strong></span> may be used
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="systemd-analyze"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>systemd-analyze — Analyze system boot-up performance</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="cmdsynopsis"><p><code class="command">systemd-analyze</code>  [OPTIONS...] [time]</p></div><div class="cmdsynopsis"><p><code class="command">systemd-analyze</code>  [OPTIONS...]  blame </p></div><div class="cmdsynopsis"><p><code class="command">systemd-analyze</code>  [OPTIONS...]  critical-chain  [<em class="replaceable"><code>UNIT</code></em>...]</p></div><div class="cmdsynopsis"><p><code class="command">systemd-analyze</code>  [OPTIONS...]  plot  [&gt; file.svg]</p></div><div class="cmdsynopsis"><p><code class="command">systemd-analyze</code>  [OPTIONS...]  dot  [<em class="replaceable"><code>PATTERN</code></em>...] [&gt; file.dot]</p></div><div class="cmdsynopsis"><p><code class="command">systemd-analyze</code>  [OPTIONS...]  dump </p></div><div class="cmdsynopsis"><p><code class="command">systemd-analyze</code>  [OPTIONS...]  set-log-level  [<em class="replaceable"><code>LEVEL</code></em>]</p></div></div><div class="refsect1"><a name="idm214183644624"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><span class="command"><strong>systemd-analyze</strong></span> may be used
                 to determine system boot-up performance statistics and
                 retrieve other state and tracing information from the
                 system and service manager.</p><p><span class="command"><strong>systemd-analyze time</strong></span>
@@ -75,7 +75,7 @@
                 the same values as <code class="option">--log-level=</code>
                 described in
                 <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>).</p><p>If no command is passed, <span class="command"><strong>systemd-analyze
-                time</strong></span> is implied.</p></div><div class="refsect1"><a name="idm214180753776"></a><h2 id="Options">Options<a class="headerlink" title="Permalink to this headline" href="#Options">¶</a></h2><p>The following options are understood:</p><div class="variablelist"><dl class="variablelist"><dt id="--user"><span class="term"><code class="option">--user</code></span><a class="headerlink" title="Permalink to this term" href="#--user">¶</a></dt><dd><p>Shows performance data
+                time</strong></span> is implied.</p></div><div class="refsect1"><a name="idm214183618672"></a><h2 id="Options">Options<a class="headerlink" title="Permalink to this headline" href="#Options">¶</a></h2><p>The following options are understood:</p><div class="variablelist"><dl class="variablelist"><dt id="--user"><span class="term"><code class="option">--user</code></span><a class="headerlink" title="Permalink to this term" href="#--user">¶</a></dt><dd><p>Shows performance data
                                 of user sessions instead of the system
                                 manager.</p></dd><dt id="--system"><span class="term"><code class="option">--system</code></span><a class="headerlink" title="Permalink to this term" href="#--system">¶</a></dt><dd><p>Shows performance data
                                 of the system manager. This is the
                                 latest unit in the same level. The unit of
                                 <em class="replaceable"><code>timespan</code></em> is seconds
                                 unless specified with a different unit,
-                                e.g. "50ms".</p></dd><dt id="-H"><span class="term"><code class="option">-H</code>, </span><span class="term"><code class="option">--host=</code></span><a class="headerlink" title="Permalink to this term" href="#-H">¶</a></dt><dd><p><a name="host-text"></a>Execute the operation remotely. Specify a hostname, or
+                                e.g. "50ms".</p></dd><dt id="-H"><span class="term"><code class="option">-H</code>, </span><span class="term"><code class="option">--host=</code></span><a class="headerlink" title="Permalink to this term" href="#-H">¶</a></dt><dd><p><a name="host-text"></a>Execute the operation remotely. Specify a hostname, or a
       username and hostname separated by "<code class="literal">@</code>", to
-      connect to. This will use SSH to talk to the remote machine
-      manager instance.</p></dd><dt id="-M"><span class="term"><code class="option">-M</code>, </span><span class="term"><code class="option">--machine=</code></span><a class="headerlink" title="Permalink to this term" href="#-M">¶</a></dt><dd><p><a name="machine-text"></a>Execute operation on a local container. Specify a
+      connect to. The hostname may optionally be suffixed by a
+      container name, separated by "<code class="literal">:</code>", which
+      connects directly to a specific container on the specified
+      host. This will use SSH to talk to the remote machine manager
+      instance. Container names may be enumerated with
+      <span class="command"><strong>machinectl -H
+      <em class="replaceable"><code>HOST</code></em></strong></span>.</p></dd><dt id="-M"><span class="term"><code class="option">-M</code>, </span><span class="term"><code class="option">--machine=</code></span><a class="headerlink" title="Permalink to this term" href="#-M">¶</a></dt><dd><p><a name="machine-text"></a>Execute operation on a local container. Specify a
       container name to connect to.</p></dd><dt id="-h"><span class="term"><code class="option">-h</code>, </span><span class="term"><code class="option">--help</code></span><a class="headerlink" title="Permalink to this term" href="#-h">¶</a></dt><dd><p><a name="help-text"></a>Print a short help text and exit.
-    </p></dd><dt id="--version"><span class="term"><code class="option">--version</code></span><a class="headerlink" title="Permalink to this term" href="#--version">¶</a></dt><dd><p><a name="version-text"></a>Print a short version string and exit.</p></dd><dt id="--no-pager"><span class="term"><code class="option">--no-pager</code></span><a class="headerlink" title="Permalink to this term" href="#--no-pager">¶</a></dt><dd><p>Do not pipe output into a pager.</p></dd></dl></div></div><div class="refsect1"><a name="idm214175820960"></a><h2 id="Exit status">Exit status<a class="headerlink" title="Permalink to this headline" href="#Exit%20status">¶</a></h2><p>On success, 0 is returned, a non-zero failure
-                code otherwise.</p></div><div class="refsect1"><a name="idm214175819808"></a><h2 id="Examples">Examples<a class="headerlink" title="Permalink to this headline" href="#Examples">¶</a></h2><p>This plots all dependencies of any unit whose
+    </p></dd><dt id="--version"><span class="term"><code class="option">--version</code></span><a class="headerlink" title="Permalink to this term" href="#--version">¶</a></dt><dd><p><a name="version-text"></a>Print a short version string and exit.</p></dd><dt id="--no-pager"><span class="term"><code class="option">--no-pager</code></span><a class="headerlink" title="Permalink to this term" href="#--no-pager">¶</a></dt><dd><p>Do not pipe output into a pager.</p></dd></dl></div></div><div class="refsect1"><a name="idm214178965472"></a><h2 id="Exit status">Exit status<a class="headerlink" title="Permalink to this headline" href="#Exit%20status">¶</a></h2><p>On success, 0 is returned, a non-zero failure
+                code otherwise.</p></div><div class="refsect1"><a name="idm214178964320"></a><h2 id="Examples">Examples<a class="headerlink" title="Permalink to this headline" href="#Examples">¶</a></h2><p>This plots all dependencies of any unit whose
                 name starts with "<code class="literal">avahi-daemon.</code>":</p><pre class="programlisting">$ systemd-analyze dot 'avahi-daemon.*' | dot -Tsvg &gt; avahi.svg
 $ eog avahi.svg</pre><p>This plots the dependencies between all known target units:</p><pre class="programlisting">systemd-analyze dot --to-pattern='*.target' --from-pattern='*.target' | dot -Tsvg &gt; targets.svg
-$ eog targets.svg</pre></div><div class="refsect1"><a name="idm214163648976"></a><h2 id="Environment">Environment<a class="headerlink" title="Permalink to this headline" href="#Environment">¶</a></h2><div class="variablelist"><dl class="variablelist"><dt id="$SYSTEMD_PAGER"><span class="term"><code class="varname">$SYSTEMD_PAGER</code></span><a class="headerlink" title="Permalink to this term" href="#%24SYSTEMD_PAGER">¶</a></dt><dd><p>Pager to use when
+$ eog targets.svg</pre></div><div class="refsect1"><a name="idm214166569984"></a><h2 id="Environment">Environment<a class="headerlink" title="Permalink to this headline" href="#Environment">¶</a></h2><div class="variablelist"><dl class="variablelist"><dt id="$SYSTEMD_PAGER"><span class="term"><code class="varname">$SYSTEMD_PAGER</code></span><a class="headerlink" title="Permalink to this term" href="#%24SYSTEMD_PAGER">¶</a></dt><dd><p>Pager to use when
                         <code class="option">--no-pager</code> is not given;
                         overrides <code class="varname">$PAGER</code>.  Setting
                         this to an empty string or the value
@@ -135,7 +140,7 @@ $ eog targets.svg</pre></div><div class="refsect1"><a name="idm214163648976"></a
                         <code class="option">--no-pager</code>.</p></dd><dt id="$SYSTEMD_LESS"><span class="term"><code class="varname">$SYSTEMD_LESS</code></span><a class="headerlink" title="Permalink to this term" href="#%24SYSTEMD_LESS">¶</a></dt><dd><p>Override the default
                         options passed to
                         <span class="command"><strong>less</strong></span>
-                        ("<code class="literal">FRSXMK</code>").</p></dd></dl></div></div><div class="refsect1"><a name="idm214175815776"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+                        ("<code class="literal">FRSXMK</code>").</p></dd></dl></div></div><div class="refsect1"><a name="idm214178960288"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
                         <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
                         <a href="systemctl.html"><span class="citerefentry"><span class="refentrytitle">systemctl</span>(1)</span></a>
                 </p></div></div></body></html>
index dc06479e38f6e600ace54336c7af80c926d685df..c9c494fff792e42bc8b7d94736d40fbdf2d3ea09 100644 (file)
@@ -19,8 +19,8 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="systemd-ask-password-console.service"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>systemd-ask-password-console.service, systemd-ask-password-console.path, systemd-ask-password-wall.service, systemd-ask-password-wall.path — Query the user for system passwords on the
-                console and via wall</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><p><code class="filename">systemd-ask-password-console.service</code></p><p><code class="filename">systemd-ask-password-console.path</code></p><p><code class="filename">systemd-ask-password-wall.service</code></p><p><code class="filename">systemd-ask-password-wall.path</code></p></div><div class="refsect1"><a name="idm214192625168"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="filename">systemd-ask-password-console.service</code>
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="systemd-ask-password-console.service"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>systemd-ask-password-console.service, systemd-ask-password-console.path, systemd-ask-password-wall.service, systemd-ask-password-wall.path — Query the user for system passwords on the
+                console and via wall</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><p><code class="filename">systemd-ask-password-console.service</code></p><p><code class="filename">systemd-ask-password-console.path</code></p><p><code class="filename">systemd-ask-password-wall.service</code></p><p><code class="filename">systemd-ask-password-wall.path</code></p></div><div class="refsect1"><a name="idm214174234032"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="filename">systemd-ask-password-console.service</code>
                 is a system service that queries the user for system
                 passwords (such as hard disk encryption keys and SSL
                 certificate passphrases) on the console. It is
@@ -37,7 +37,7 @@
                 <a href="systemd-tty-ask-password-agent.html"><span class="citerefentry"><span class="refentrytitle">systemd-tty-ask-password-agent</span>(1)</span></a>
                 with either the <span class="command"><strong>--watch --console</strong></span>
                 or <span class="command"><strong>--watch --wall</strong></span> command line
-                parameters.</p></div><div class="refsect1"><a name="idm214192617536"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+                parameters.</p></div><div class="refsect1"><a name="idm214174221776"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
                         <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
                         <a href="systemd-tty-ask-password-agent.html"><span class="citerefentry"><span class="refentrytitle">systemd-tty-ask-password-agent</span>(1)</span></a>,
                         <a href="wall.html"><span class="citerefentry"><span class="refentrytitle">wall</span>(1)</span></a>
index 4c67041af14236c9e7605276490cd89e54e5d243..3836de551ac814d1df71528a03e02c121b71f873 100644 (file)
@@ -1,5 +1,5 @@
 '\" t
-.TH "SYSTEMD\-ASK\-PASSWORD\-CONSOLE\&.SERVICE" "8" "" "systemd 214" "systemd-ask-password-console.service"
+.TH "SYSTEMD\-ASK\-PASSWORD\-CONSOLE\&.SERVICE" "8" "" "systemd 215" "systemd-ask-password-console.service"
 .\" -----------------------------------------------------------------
 .\" * Define some portability stuff
 .\" -----------------------------------------------------------------
index dc06479e38f6e600ace54336c7af80c926d685df..c9c494fff792e42bc8b7d94736d40fbdf2d3ea09 100644 (file)
@@ -19,8 +19,8 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="systemd-ask-password-console.service"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>systemd-ask-password-console.service, systemd-ask-password-console.path, systemd-ask-password-wall.service, systemd-ask-password-wall.path — Query the user for system passwords on the
-                console and via wall</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><p><code class="filename">systemd-ask-password-console.service</code></p><p><code class="filename">systemd-ask-password-console.path</code></p><p><code class="filename">systemd-ask-password-wall.service</code></p><p><code class="filename">systemd-ask-password-wall.path</code></p></div><div class="refsect1"><a name="idm214192625168"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="filename">systemd-ask-password-console.service</code>
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="systemd-ask-password-console.service"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>systemd-ask-password-console.service, systemd-ask-password-console.path, systemd-ask-password-wall.service, systemd-ask-password-wall.path — Query the user for system passwords on the
+                console and via wall</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><p><code class="filename">systemd-ask-password-console.service</code></p><p><code class="filename">systemd-ask-password-console.path</code></p><p><code class="filename">systemd-ask-password-wall.service</code></p><p><code class="filename">systemd-ask-password-wall.path</code></p></div><div class="refsect1"><a name="idm214174234032"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="filename">systemd-ask-password-console.service</code>
                 is a system service that queries the user for system
                 passwords (such as hard disk encryption keys and SSL
                 certificate passphrases) on the console. It is
@@ -37,7 +37,7 @@
                 <a href="systemd-tty-ask-password-agent.html"><span class="citerefentry"><span class="refentrytitle">systemd-tty-ask-password-agent</span>(1)</span></a>
                 with either the <span class="command"><strong>--watch --console</strong></span>
                 or <span class="command"><strong>--watch --wall</strong></span> command line
-                parameters.</p></div><div class="refsect1"><a name="idm214192617536"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+                parameters.</p></div><div class="refsect1"><a name="idm214174221776"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
                         <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
                         <a href="systemd-tty-ask-password-agent.html"><span class="citerefentry"><span class="refentrytitle">systemd-tty-ask-password-agent</span>(1)</span></a>,
                         <a href="wall.html"><span class="citerefentry"><span class="refentrytitle">wall</span>(1)</span></a>
index dc06479e38f6e600ace54336c7af80c926d685df..c9c494fff792e42bc8b7d94736d40fbdf2d3ea09 100644 (file)
@@ -19,8 +19,8 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="systemd-ask-password-console.service"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>systemd-ask-password-console.service, systemd-ask-password-console.path, systemd-ask-password-wall.service, systemd-ask-password-wall.path — Query the user for system passwords on the
-                console and via wall</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><p><code class="filename">systemd-ask-password-console.service</code></p><p><code class="filename">systemd-ask-password-console.path</code></p><p><code class="filename">systemd-ask-password-wall.service</code></p><p><code class="filename">systemd-ask-password-wall.path</code></p></div><div class="refsect1"><a name="idm214192625168"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="filename">systemd-ask-password-console.service</code>
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="systemd-ask-password-console.service"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>systemd-ask-password-console.service, systemd-ask-password-console.path, systemd-ask-password-wall.service, systemd-ask-password-wall.path — Query the user for system passwords on the
+                console and via wall</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><p><code class="filename">systemd-ask-password-console.service</code></p><p><code class="filename">systemd-ask-password-console.path</code></p><p><code class="filename">systemd-ask-password-wall.service</code></p><p><code class="filename">systemd-ask-password-wall.path</code></p></div><div class="refsect1"><a name="idm214174234032"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="filename">systemd-ask-password-console.service</code>
                 is a system service that queries the user for system
                 passwords (such as hard disk encryption keys and SSL
                 certificate passphrases) on the console. It is
@@ -37,7 +37,7 @@
                 <a href="systemd-tty-ask-password-agent.html"><span class="citerefentry"><span class="refentrytitle">systemd-tty-ask-password-agent</span>(1)</span></a>
                 with either the <span class="command"><strong>--watch --console</strong></span>
                 or <span class="command"><strong>--watch --wall</strong></span> command line
-                parameters.</p></div><div class="refsect1"><a name="idm214192617536"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+                parameters.</p></div><div class="refsect1"><a name="idm214174221776"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
                         <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
                         <a href="systemd-tty-ask-password-agent.html"><span class="citerefentry"><span class="refentrytitle">systemd-tty-ask-password-agent</span>(1)</span></a>,
                         <a href="wall.html"><span class="citerefentry"><span class="refentrytitle">wall</span>(1)</span></a>
index dc06479e38f6e600ace54336c7af80c926d685df..c9c494fff792e42bc8b7d94736d40fbdf2d3ea09 100644 (file)
@@ -19,8 +19,8 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="systemd-ask-password-console.service"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>systemd-ask-password-console.service, systemd-ask-password-console.path, systemd-ask-password-wall.service, systemd-ask-password-wall.path — Query the user for system passwords on the
-                console and via wall</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><p><code class="filename">systemd-ask-password-console.service</code></p><p><code class="filename">systemd-ask-password-console.path</code></p><p><code class="filename">systemd-ask-password-wall.service</code></p><p><code class="filename">systemd-ask-password-wall.path</code></p></div><div class="refsect1"><a name="idm214192625168"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="filename">systemd-ask-password-console.service</code>
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="systemd-ask-password-console.service"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>systemd-ask-password-console.service, systemd-ask-password-console.path, systemd-ask-password-wall.service, systemd-ask-password-wall.path — Query the user for system passwords on the
+                console and via wall</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><p><code class="filename">systemd-ask-password-console.service</code></p><p><code class="filename">systemd-ask-password-console.path</code></p><p><code class="filename">systemd-ask-password-wall.service</code></p><p><code class="filename">systemd-ask-password-wall.path</code></p></div><div class="refsect1"><a name="idm214174234032"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="filename">systemd-ask-password-console.service</code>
                 is a system service that queries the user for system
                 passwords (such as hard disk encryption keys and SSL
                 certificate passphrases) on the console. It is
@@ -37,7 +37,7 @@
                 <a href="systemd-tty-ask-password-agent.html"><span class="citerefentry"><span class="refentrytitle">systemd-tty-ask-password-agent</span>(1)</span></a>
                 with either the <span class="command"><strong>--watch --console</strong></span>
                 or <span class="command"><strong>--watch --wall</strong></span> command line
-                parameters.</p></div><div class="refsect1"><a name="idm214192617536"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+                parameters.</p></div><div class="refsect1"><a name="idm214174221776"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
                         <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
                         <a href="systemd-tty-ask-password-agent.html"><span class="citerefentry"><span class="refentrytitle">systemd-tty-ask-password-agent</span>(1)</span></a>,
                         <a href="wall.html"><span class="citerefentry"><span class="refentrytitle">wall</span>(1)</span></a>
index d3bc3b0fe2f449b20c03b26f978ac6725dd9c87c..a88cf250a1eb3880a8f9477544ca0ca70bb13e64 100644 (file)
@@ -1,5 +1,5 @@
 '\" t
-.TH "SYSTEMD\-ASK\-PASSWORD" "1" "" "systemd 214" "systemd-ask-password"
+.TH "SYSTEMD\-ASK\-PASSWORD" "1" "" "systemd 215" "systemd-ask-password"
 .\" -----------------------------------------------------------------
 .\" * Define some portability stuff
 .\" -----------------------------------------------------------------
index 47686a56567368e3b17c1f16c8a2d454416aac4d..3ec0c4641c33b458b2d09ceff5008f94c36586f3 100644 (file)
@@ -19,7 +19,7 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="systemd-ask-password"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>systemd-ask-password — Query the user for a system password</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="cmdsynopsis"><p><code class="command">systemd-ask-password [OPTIONS...]  [MESSAGE]</code> </p></div></div><div class="refsect1"><a name="idm214198536528"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><span class="command"><strong>systemd-ask-password</strong></span> may be
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="systemd-ask-password"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>systemd-ask-password — Query the user for a system password</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="cmdsynopsis"><p><code class="command">systemd-ask-password [OPTIONS...]  [MESSAGE]</code> </p></div></div><div class="refsect1"><a name="idm214169972928"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><span class="command"><strong>systemd-ask-password</strong></span> may be
                 used to query a system password or passphrase from the
                 user, using a question message specified on the
                 command line. When run from a TTY it will query a
@@ -47,7 +47,7 @@
                 Password Agent Specification</a>.</p><p>If a password is queried on a TTY, the user may
                 press TAB to hide the asterisks normally shown for
                 each character typed. Pressing Backspace as first key
-                achieves the same effect.</p></div><div class="refsect1"><a name="idm214198528832"></a><h2 id="Options">Options<a class="headerlink" title="Permalink to this headline" href="#Options">¶</a></h2><p>The following options are understood:</p><div class="variablelist"><dl class="variablelist"><dt id="--icon="><span class="term"><code class="option">--icon=</code></span><a class="headerlink" title="Permalink to this term" href="#--icon=">¶</a></dt><dd><p>Specify an icon name
+                achieves the same effect.</p></div><div class="refsect1"><a name="idm214173855824"></a><h2 id="Options">Options<a class="headerlink" title="Permalink to this headline" href="#Options">¶</a></h2><p>The following options are understood:</p><div class="variablelist"><dl class="variablelist"><dt id="--icon="><span class="term"><code class="option">--icon=</code></span><a class="headerlink" title="Permalink to this term" href="#--icon=">¶</a></dt><dd><p>Specify an icon name
                                 alongside the password query, which may
                                 be used in all agents supporting
                                 graphical display. The icon name
@@ -67,8 +67,8 @@
                                 accept multiple passwords. This will
                                 output one password per
                                 line.</p></dd><dt id="-h"><span class="term"><code class="option">-h</code>, </span><span class="term"><code class="option">--help</code></span><a class="headerlink" title="Permalink to this term" href="#-h">¶</a></dt><dd><p><a name="help-text"></a>Print a short help text and exit.
-    </p></dd></dl></div></div><div class="refsect1"><a name="idm214202413696"></a><h2 id="Exit status">Exit status<a class="headerlink" title="Permalink to this headline" href="#Exit%20status">¶</a></h2><p>On success, 0 is returned, a non-zero failure
-                code otherwise.</p></div><div class="refsect1"><a name="idm214202412512"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+    </p></dd></dl></div></div><div class="refsect1"><a name="idm214173749680"></a><h2 id="Exit status">Exit status<a class="headerlink" title="Permalink to this headline" href="#Exit%20status">¶</a></h2><p>On success, 0 is returned, a non-zero failure
+                code otherwise.</p></div><div class="refsect1"><a name="idm214173748496"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
                         <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
                         <a href="systemctl.html"><span class="citerefentry"><span class="refentrytitle">systemctl</span>(1)</span></a>,
                         <a href="plymouth.html"><span class="citerefentry"><span class="refentrytitle">plymouth</span>(8)</span></a>,
index e5a4f79aa3604d69f25b0daf9b6082d25c700ad9..6c48f7c57c551633b6bdd9f47da40e1db6e5688a 100644 (file)
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="systemd-backlight@.service"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>systemd-backlight@.service, systemd-backlight — Load and save the display backlight brightness at boot and shutdown</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><p><code class="filename">systemd-backlight@.service</code></p><p><code class="filename">/usr/lib/systemd/systemd-backlight</code></p></div><div class="refsect1"><a name="idm214199017552"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="filename">systemd-backlight@.service</code>
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="systemd-backlight@.service"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>systemd-backlight@.service, systemd-backlight — Load and save the display backlight brightness at boot and shutdown</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><p><code class="filename">systemd-backlight@.service</code></p><p><code class="filename">/usr/lib/systemd/systemd-backlight</code></p></div><div class="refsect1"><a name="idm214201334672"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="filename">systemd-backlight@.service</code>
                 is a service that restores the display backlight
                 brightness at early boot and saves it at shutdown. On
                 disk, the backlight brightness is stored in
-                <code class="filename">/var/lib/systemd/backlight/</code>.</p></div><div class="refsect1"><a name="idm214199014864"></a><h2 id="Kernel Command Line">Kernel Command Line<a class="headerlink" title="Permalink to this headline" href="#Kernel%20Command%20Line">¶</a></h2><p><code class="filename">systemd-backlight</code> understands
+                <code class="filename">/var/lib/systemd/backlight/</code>.</p></div><div class="refsect1"><a name="idm214202765200"></a><h2 id="Kernel Command Line">Kernel Command Line<a class="headerlink" title="Permalink to this headline" href="#Kernel%20Command%20Line">¶</a></h2><p><code class="filename">systemd-backlight</code> understands
                 the following kernel command line parameter:</p><div class="variablelist"><dl class="variablelist"><dt id="systemd.restore_state="><span class="term"><code class="varname">systemd.restore_state=</code></span><a class="headerlink" title="Permalink to this term" href="#systemd.restore_state=">¶</a></dt><dd><p>Takes a boolean
                                 argument. Defaults to
                                 "<code class="literal">1</code>". If
                                 "<code class="literal">0</code>", does not restore
                                 the backlight settings on boot. However,
                                 settings will still be stored on shutdown.
-                                </p></dd></dl></div></div><div class="refsect1"><a name="idm214199009280"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+                                </p></dd></dl></div></div><div class="refsect1"><a name="idm214199022576"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
                         <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>
                 </p></div></div></body></html>
index 734419956865d013591cd79cee05e335e7ae648a..f85c5981fb858f1f1f4ab5f5de85bbe4d2bc5626 100644 (file)
@@ -1,5 +1,5 @@
 '\" t
-.TH "SYSTEMD\-BACKLIGHT@\&.SERVICE" "8" "" "systemd 214" "systemd-backlight@.service"
+.TH "SYSTEMD\-BACKLIGHT@\&.SERVICE" "8" "" "systemd 215" "systemd-backlight@.service"
 .\" -----------------------------------------------------------------
 .\" * Define some portability stuff
 .\" -----------------------------------------------------------------
index e5a4f79aa3604d69f25b0daf9b6082d25c700ad9..6c48f7c57c551633b6bdd9f47da40e1db6e5688a 100644 (file)
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="systemd-backlight@.service"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>systemd-backlight@.service, systemd-backlight — Load and save the display backlight brightness at boot and shutdown</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><p><code class="filename">systemd-backlight@.service</code></p><p><code class="filename">/usr/lib/systemd/systemd-backlight</code></p></div><div class="refsect1"><a name="idm214199017552"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="filename">systemd-backlight@.service</code>
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="systemd-backlight@.service"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>systemd-backlight@.service, systemd-backlight — Load and save the display backlight brightness at boot and shutdown</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><p><code class="filename">systemd-backlight@.service</code></p><p><code class="filename">/usr/lib/systemd/systemd-backlight</code></p></div><div class="refsect1"><a name="idm214201334672"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="filename">systemd-backlight@.service</code>
                 is a service that restores the display backlight
                 brightness at early boot and saves it at shutdown. On
                 disk, the backlight brightness is stored in
-                <code class="filename">/var/lib/systemd/backlight/</code>.</p></div><div class="refsect1"><a name="idm214199014864"></a><h2 id="Kernel Command Line">Kernel Command Line<a class="headerlink" title="Permalink to this headline" href="#Kernel%20Command%20Line">¶</a></h2><p><code class="filename">systemd-backlight</code> understands
+                <code class="filename">/var/lib/systemd/backlight/</code>.</p></div><div class="refsect1"><a name="idm214202765200"></a><h2 id="Kernel Command Line">Kernel Command Line<a class="headerlink" title="Permalink to this headline" href="#Kernel%20Command%20Line">¶</a></h2><p><code class="filename">systemd-backlight</code> understands
                 the following kernel command line parameter:</p><div class="variablelist"><dl class="variablelist"><dt id="systemd.restore_state="><span class="term"><code class="varname">systemd.restore_state=</code></span><a class="headerlink" title="Permalink to this term" href="#systemd.restore_state=">¶</a></dt><dd><p>Takes a boolean
                                 argument. Defaults to
                                 "<code class="literal">1</code>". If
                                 "<code class="literal">0</code>", does not restore
                                 the backlight settings on boot. However,
                                 settings will still be stored on shutdown.
-                                </p></dd></dl></div></div><div class="refsect1"><a name="idm214199009280"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+                                </p></dd></dl></div></div><div class="refsect1"><a name="idm214199022576"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
                         <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>
                 </p></div></div></body></html>
index a689c6b5dd76ec084bd8c6db384e52b7f051b3db..683892d27c9fe4c81b744020edb80499d8306819 100644 (file)
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="systemd-binfmt.service"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>systemd-binfmt.service, systemd-binfmt — Configure additional binary formats for executables at boot</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><p><code class="filename">systemd-binfmt.service</code></p><p><code class="filename">/usr/lib/systemd/systemd-binfmt</code></p></div><div class="refsect1"><a name="idm214199515040"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="filename">systemd-binfmt.service</code> is
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="systemd-binfmt.service"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>systemd-binfmt.service, systemd-binfmt — Configure additional binary formats for executables at boot</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><p><code class="filename">systemd-binfmt.service</code></p><p><code class="filename">/usr/lib/systemd/systemd-binfmt</code></p></div><div class="refsect1"><a name="idm214195358608"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="filename">systemd-binfmt.service</code> is
                 an early-boot service that registers additional binary
                 formats for executables in the kernel.</p><p>See
                 <a href="binfmt.d.html"><span class="citerefentry"><span class="refentrytitle">binfmt.d</span>(5)</span></a>
                 for information about the configuration of this
-                service.</p></div><div class="refsect1"><a name="idm214199539440"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+                service.</p></div><div class="refsect1"><a name="idm214196788528"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
                         <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
                         <a href="binfmt.d.html"><span class="citerefentry"><span class="refentrytitle">binfmt.d</span>(5)</span></a>,
                         <a href="wine.html"><span class="citerefentry"><span class="refentrytitle">wine</span>(8)</span></a>
index 6c57ce2c7a71b51c104eff64e0ec4c0ce4252486..516e9150f12c5ebb8788172a88b49afcb8a69ac7 100644 (file)
@@ -1,5 +1,5 @@
 '\" t
-.TH "SYSTEMD\-BINFMT\&.SERVICE" "8" "" "systemd 214" "systemd-binfmt.service"
+.TH "SYSTEMD\-BINFMT\&.SERVICE" "8" "" "systemd 215" "systemd-binfmt.service"
 .\" -----------------------------------------------------------------
 .\" * Define some portability stuff
 .\" -----------------------------------------------------------------
index a689c6b5dd76ec084bd8c6db384e52b7f051b3db..683892d27c9fe4c81b744020edb80499d8306819 100644 (file)
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="systemd-binfmt.service"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>systemd-binfmt.service, systemd-binfmt — Configure additional binary formats for executables at boot</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><p><code class="filename">systemd-binfmt.service</code></p><p><code class="filename">/usr/lib/systemd/systemd-binfmt</code></p></div><div class="refsect1"><a name="idm214199515040"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="filename">systemd-binfmt.service</code> is
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="systemd-binfmt.service"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>systemd-binfmt.service, systemd-binfmt — Configure additional binary formats for executables at boot</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><p><code class="filename">systemd-binfmt.service</code></p><p><code class="filename">/usr/lib/systemd/systemd-binfmt</code></p></div><div class="refsect1"><a name="idm214195358608"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="filename">systemd-binfmt.service</code> is
                 an early-boot service that registers additional binary
                 formats for executables in the kernel.</p><p>See
                 <a href="binfmt.d.html"><span class="citerefentry"><span class="refentrytitle">binfmt.d</span>(5)</span></a>
                 for information about the configuration of this
-                service.</p></div><div class="refsect1"><a name="idm214199539440"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+                service.</p></div><div class="refsect1"><a name="idm214196788528"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
                         <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
                         <a href="binfmt.d.html"><span class="citerefentry"><span class="refentrytitle">binfmt.d</span>(5)</span></a>,
                         <a href="wine.html"><span class="citerefentry"><span class="refentrytitle">wine</span>(8)</span></a>
index 9972c4472a1fa96a1dcd32dd63c93e34b97f4cd1..4682bec1771ae76ff5e61efd15e9ca281a6647b7 100644 (file)
@@ -1,5 +1,5 @@
 '\" t
-.TH "SYSTEMD\-BOOTCHART" "1" "" "systemd 214" "systemd-bootchart"
+.TH "SYSTEMD\-BOOTCHART" "1" "" "systemd 215" "systemd-bootchart"
 .\" -----------------------------------------------------------------
 .\" * Define some portability stuff
 .\" -----------------------------------------------------------------
index 4071d8badd221b343e1379d95ecdfdd78f780ca2..1b7a8da36c2fd7c929aaab08543e23900caf521b 100644 (file)
@@ -19,7 +19,7 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="systemd-bootchart"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>systemd-bootchart — Boot performance graphing tool</p></div><div class="refsect1"><a name="idm214174416304"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p>
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="systemd-bootchart"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>systemd-bootchart — Boot performance graphing tool</p></div><div class="refsect1"><a name="idm214173999824"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p>
                         <span class="command"><strong>systemd-bootchart</strong></span> is a
                         tool, usually run at system startup, that
                         collects the CPU load, disk load, memory
@@ -59,7 +59,7 @@
                         <code class="varname">MESSAGE_ID=9f26aa562cf440c2b16c773d0479b518</code>.
                         Journal field <code class="varname">BOOTCHART=</code> contains
                         the bootchart in SVG format.
-                </p></div><div class="refsect1"><a name="idm214175197856"></a><h2 id="Invocation">Invocation<a class="headerlink" title="Permalink to this headline" href="#Invocation">¶</a></h2><p><span class="command"><strong>systemd-bootchart</strong></span> can be invoked in several different ways:</p><div class="variablelist"><dl class="variablelist"><dt id="Kernel invocation"><span class="term"><span class="emphasis"><em>Kernel invocation</em></span></span><a class="headerlink" title="Permalink to this term" href="#Kernel%20invocation">¶</a></dt><dd><p>The kernel can invoke
+                </p></div><div class="refsect1"><a name="idm214174603200"></a><h2 id="Invocation">Invocation<a class="headerlink" title="Permalink to this headline" href="#Invocation">¶</a></h2><p><span class="command"><strong>systemd-bootchart</strong></span> can be invoked in several different ways:</p><div class="variablelist"><dl class="variablelist"><dt id="Kernel invocation"><span class="term"><span class="emphasis"><em>Kernel invocation</em></span></span><a class="headerlink" title="Permalink to this term" href="#Kernel%20invocation">¶</a></dt><dd><p>The kernel can invoke
                                 <span class="command"><strong>systemd-bootchart</strong></span>
                                 instead of the init process. In turn,
                                 <span class="command"><strong>systemd-bootchart</strong></span>
@@ -73,7 +73,7 @@
                                 not graph the time elapsed since boot
                                 and before systemd-bootchart was
                                 started, as it may result in extremely
-                                large graphs.  </p></dd></dl></div></div><div class="refsect1"><a name="idm214175188960"></a><h2 id="Options">Options<a class="headerlink" title="Permalink to this headline" href="#Options">¶</a></h2><p>These options can also be set in the
+                                large graphs.  </p></dd></dl></div></div><div class="refsect1"><a name="idm214174594304"></a><h2 id="Options">Options<a class="headerlink" title="Permalink to this headline" href="#Options">¶</a></h2><p>These options can also be set in the
                 <code class="filename">/etc/systemd/bootchart.conf</code>
                 file. See
                 <a href="bootchart.conf.html"><span class="citerefentry"><span class="refentrytitle">bootchart.conf</span>(5)</span></a>.
                                 </p></dd><dt id="-e"><span class="term"><code class="option">-e</code>, </span><span class="term"><code class="option">--entropy</code></span><a class="headerlink" title="Permalink to this term" href="#-e">¶</a></dt><dd><p>Enable logging and graphing
                                 of the kernel random entropy pool size.</p></dd><dt id="-x"><span class="term"><code class="option">-x</code>, </span><span class="term"><code class="option">--scale-x <em class="replaceable"><code>N</code></em></code></span><a class="headerlink" title="Permalink to this term" href="#-x">¶</a></dt><dd><p>Horizontal scaling factor for all variable
                                 graph components.</p></dd><dt id="-y"><span class="term"><code class="option">-y</code>, </span><span class="term"><code class="option">--scale-y <em class="replaceable"><code>N</code></em></code></span><a class="headerlink" title="Permalink to this term" href="#-y">¶</a></dt><dd><p>Vertical scaling factor for all variable
-                                graph components.</p></dd></dl></div></div><div class="refsect1"><a name="idm214179101872"></a><h2 id="Output">Output<a class="headerlink" title="Permalink to this headline" href="#Output">¶</a></h2><p><span class="command"><strong>systemd-bootchart</strong></span> generates SVG graphs. In order to render those
+                                graph components.</p></dd></dl></div></div><div class="refsect1"><a name="idm214178454400"></a><h2 id="Output">Output<a class="headerlink" title="Permalink to this headline" href="#Output">¶</a></h2><p><span class="command"><strong>systemd-bootchart</strong></span> generates SVG graphs. In order to render those
                 on a graphical display any SVG capable viewer can be used. It should be
                 noted that the SVG render engines in most browsers (including Chrome
                 and Firefox) are many times faster than dedicated graphical applications
                 like Gimp and Inkscape.  Just point your browser at <a class="ulink" href="file:///run/log/" target="_top">file:///run/log/</a>!
-                </p></div><div class="refsect1"><a name="idm214179099168"></a><h2 id="History">History<a class="headerlink" title="Permalink to this headline" href="#History">¶</a></h2><p>This version of bootchart was implemented from
+                </p></div><div class="refsect1"><a name="idm214178451696"></a><h2 id="History">History<a class="headerlink" title="Permalink to this headline" href="#History">¶</a></h2><p>This version of bootchart was implemented from
                 scratch, but is inspired by former bootchart
                 incantations:</p><div class="variablelist"><dl class="variablelist"><dt id="Original bash"><span class="term"><span class="emphasis"><em>Original bash</em></span></span><a class="headerlink" title="Permalink to this term" href="#Original%20bash">¶</a></dt><dd><p>The original bash/shell code implemented
                                 bootchart. This version created a compressed tarball for
                 efficient and simpler. There are no longer any timing issues with the data
                 collector and the grapher, as the graphing cannot be run until the data
                 has been collected. Also, the data kept in memory is reduced to the absolute
-                minimum needed.</p></div><div class="refsect1"><a name="idm214174409584"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+                minimum needed.</p></div><div class="refsect1"><a name="idm214178442608"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
                         <a href="bootchart.conf.html"><span class="citerefentry"><span class="refentrytitle">bootchart.conf</span>(5)</span></a>
-                </p></div><div class="refsect1"><a name="idm214174407664"></a><h2 id="Bugs">Bugs<a class="headerlink" title="Permalink to this headline" href="#Bugs">¶</a></h2><p>systemd-bootchart does not get the model information for the hard drive
+                </p></div><div class="refsect1"><a name="idm214173815824"></a><h2 id="Bugs">Bugs<a class="headerlink" title="Permalink to this headline" href="#Bugs">¶</a></h2><p>systemd-bootchart does not get the model information for the hard drive
                 unless the root device is specified with <code class="code">root=/dev/sdxY</code>. Using
                 UUIDs or PARTUUIDs will boot fine, but the hard drive model will not be
                 added to the chart.</p><p>For bugs, please contact the author and current maintainer:</p><table border="0" summary="Simple list" class="simplelist"><tr><td>Auke Kok <code class="email">&lt;<a class="email" href="mailto:auke-jan.h.kok@intel.com">auke-jan.h.kok@intel.com</a>&gt;</code></td></tr></table></div></div></body></html>
index a54dc96c316c95e5624c15f75f562d717b8c82d3..481047f5b781bf2736b657ca94df22435dac46c6 100644 (file)
@@ -1,5 +1,5 @@
 '\" t
-.TH "SYSTEMD\-BUS\-PROXYD" "8" "" "systemd 214" "systemd-bus-proxyd"
+.TH "SYSTEMD\-BUS\-PROXYD" "8" "" "systemd 215" "systemd-bus-proxyd"
 .\" -----------------------------------------------------------------
 .\" * Define some portability stuff
 .\" -----------------------------------------------------------------
index 889d8a5d867d06168066697ece182f740aa2b9f0..221c7f8b01c53d70090c00f2e4633c2170c92edc 100644 (file)
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="systemd-bus-proxyd"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>systemd-bus-proxyd — Connect STDIO or a socket to a given bus address</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="cmdsynopsis"><p><code class="command">/usr/lib/systemd/systemd-bus-proxyd</code>  [OPTIONS...] [<em class="replaceable"><code>PLACEHOLDER</code></em>]</p></div></div><div class="refsect1"><a name="idm214181379264"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><span class="command"><strong>systemd-bus-proxyd</strong></span> will proxy D-Bus
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="systemd-bus-proxyd"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>systemd-bus-proxyd — Connect STDIO or a socket to a given bus address</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="cmdsynopsis"><p><code class="command">/usr/lib/systemd/systemd-bus-proxyd</code>  [OPTIONS...] [<em class="replaceable"><code>PLACEHOLDER</code></em>]</p></div></div><div class="refsect1"><a name="idm214171683136"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><span class="command"><strong>systemd-bus-proxyd</strong></span> will proxy D-Bus
     messages to and from a bus. The will be either the system bus or
     the bus specified with <code class="option">--address</code> when that option
     is given. Messages will be proxied to/from standard input and
     output, or the socket received through socket activation.</p><p>This program can be used to connect a program using classic
-    D-Bus to kdbus.</p></div><div class="refsect1"><a name="idm214179777360"></a><h2 id="Options and Arguments">Options and Arguments<a class="headerlink" title="Permalink to this headline" href="#Options%20and%20Arguments">¶</a></h2><p>The following options are understood:</p><div class="variablelist"><dl class="variablelist"><dt id="--address=ADDRESS:ADDRESS..."><span class="term"><code class="option">--address=<em class="replaceable"><code>ADDRESS</code></em>[<span class="optional">:<em class="replaceable"><code>ADDRESS...</code></em></span>]</code></span><a class="headerlink" title="Permalink to this term" href="#--address=ADDRESS:ADDRESS...">¶</a></dt><dd><p>Connect to the bus specified by
+    D-Bus to kdbus.</p></div><div class="refsect1"><a name="idm214171680304"></a><h2 id="Options and Arguments">Options and Arguments<a class="headerlink" title="Permalink to this headline" href="#Options%20and%20Arguments">¶</a></h2><p>The following options are understood:</p><div class="variablelist"><dl class="variablelist"><dt id="--address=ADDRESS:ADDRESS..."><span class="term"><code class="option">--address=<em class="replaceable"><code>ADDRESS</code></em>[<span class="optional">:<em class="replaceable"><code>ADDRESS...</code></em></span>]</code></span><a class="headerlink" title="Permalink to this term" href="#--address=ADDRESS:ADDRESS...">¶</a></dt><dd><p>Connect to the bus specified by
           <em class="replaceable"><code>ADDRESS</code></em>. Multiple colon-seperated
           addresses can be specified, in which case
           <span class="command"><strong>systemd-bus-proxyd</strong></span> will attempt to
@@ -32,7 +32,7 @@
     </p></dd><dt id="--version"><span class="term"><code class="option">--version</code></span><a class="headerlink" title="Permalink to this term" href="#--version">¶</a></dt><dd><p><a name="version-text"></a>Print a short version string and exit.</p></dd></dl></div><p><em class="replaceable"><code>PLACEHOLDER</code></em>, if given, must be a string
     of "<code class="literal">x</code>" and will be used to display information about
     the process that <span class="command"><strong>systemd-bus-proxyd</strong></span> is forwarding
-    messages for.</p></div><div class="refsect1"><a name="idm214180014864"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+    messages for.</p></div><div class="refsect1"><a name="idm214171671136"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
       <a href="dbus-daemon.html"><span class="citerefentry"><span class="refentrytitle">dbus-daemon</span>(1)</span></a>,
       <a class="ulink" href="http://freedesktop.org/wiki/Software/dbus" target="_top">D-Bus</a>,
       <a class="ulink" href="https://code.google.com/p/d-bus/" target="_top">kdbus</a>
index da96a712b0d1edba1935bb73a13cb9888ca79742..7f9f239f34e9033a59eefb98bb62ae097199d61f 100644 (file)
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="systemd-bus-proxyd@.service"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>systemd-bus-proxyd@.service, systemd-bus-proxyd.socket — Proxy classic D-Bus clients to kdbus</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><p><code class="filename">systemd-bus-proxyd@.service</code></p><p><code class="filename">systemd-bus-proxyd.socket</code></p></div><div class="refsect1"><a name="idm214172982624"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="filename">systemd-bus-proxyd.socket</code> will launch
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="systemd-bus-proxyd@.service"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>systemd-bus-proxyd@.service, systemd-bus-proxyd.socket — Proxy classic D-Bus clients to kdbus</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><p><code class="filename">systemd-bus-proxyd@.service</code></p><p><code class="filename">systemd-bus-proxyd.socket</code></p></div><div class="refsect1"><a name="idm214195818032"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="filename">systemd-bus-proxyd.socket</code> will launch
     <code class="filename">systemd-bus-proxyd@.service</code> for connections
     to the classic D-Bus socket in
     <code class="filename">/var/run/dbus/system_bus_socket</code>.</p><p><code class="filename">systemd-bus-proxyd@.service</code> is launched
     for an existing D-Bus connection and will use
     <span class="command"><strong>systemd-bus-proxyd</strong></span> to proxy messages from this
     connection to the system bus (either kdbus or classic D-Bus).
-    </p></div><div class="refsect1"><a name="idm214172977664"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+    </p></div><div class="refsect1"><a name="idm214195813072"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
       <a href="systemd-bus-proxyd.html"><span class="citerefentry"><span class="refentrytitle">systemd-bus-proxyd</span>(8)</span></a>
       <a href="dbus-daemon.html"><span class="citerefentry"><span class="refentrytitle">dbus-daemon</span>(1)</span></a>
       <a class="ulink" href="http://freedesktop.org/wiki/Software/dbus" target="_top">D-Bus</a>
index afad0deb2b77f9aee82187fd96c36075f78ac520..03e5dc35159da780de9fd1429d9f1dbc3f5f61ec 100644 (file)
@@ -1,5 +1,5 @@
 '\" t
-.TH "SYSTEMD\-BUS\-PROXYD@\&.SERVICE" "8" "" "systemd 214" "systemd-bus-proxyd@.service"
+.TH "SYSTEMD\-BUS\-PROXYD@\&.SERVICE" "8" "" "systemd 215" "systemd-bus-proxyd@.service"
 .\" -----------------------------------------------------------------
 .\" * Define some portability stuff
 .\" -----------------------------------------------------------------
index da96a712b0d1edba1935bb73a13cb9888ca79742..7f9f239f34e9033a59eefb98bb62ae097199d61f 100644 (file)
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="systemd-bus-proxyd@.service"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>systemd-bus-proxyd@.service, systemd-bus-proxyd.socket — Proxy classic D-Bus clients to kdbus</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><p><code class="filename">systemd-bus-proxyd@.service</code></p><p><code class="filename">systemd-bus-proxyd.socket</code></p></div><div class="refsect1"><a name="idm214172982624"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="filename">systemd-bus-proxyd.socket</code> will launch
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="systemd-bus-proxyd@.service"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>systemd-bus-proxyd@.service, systemd-bus-proxyd.socket — Proxy classic D-Bus clients to kdbus</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><p><code class="filename">systemd-bus-proxyd@.service</code></p><p><code class="filename">systemd-bus-proxyd.socket</code></p></div><div class="refsect1"><a name="idm214195818032"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="filename">systemd-bus-proxyd.socket</code> will launch
     <code class="filename">systemd-bus-proxyd@.service</code> for connections
     to the classic D-Bus socket in
     <code class="filename">/var/run/dbus/system_bus_socket</code>.</p><p><code class="filename">systemd-bus-proxyd@.service</code> is launched
     for an existing D-Bus connection and will use
     <span class="command"><strong>systemd-bus-proxyd</strong></span> to proxy messages from this
     connection to the system bus (either kdbus or classic D-Bus).
-    </p></div><div class="refsect1"><a name="idm214172977664"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+    </p></div><div class="refsect1"><a name="idm214195813072"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
       <a href="systemd-bus-proxyd.html"><span class="citerefentry"><span class="refentrytitle">systemd-bus-proxyd</span>(8)</span></a>
       <a href="dbus-daemon.html"><span class="citerefentry"><span class="refentrytitle">dbus-daemon</span>(1)</span></a>
       <a class="ulink" href="http://freedesktop.org/wiki/Software/dbus" target="_top">D-Bus</a>
index bf42f1112e512c79cac3247d41c4b554ccb65239..0280d83c3d86c76e5cdf11a01c387ace7305facb 100644 (file)
@@ -1,5 +1,5 @@
 '\" t
-.TH "SYSTEMD\-CAT" "1" "" "systemd 214" "systemd-cat"
+.TH "SYSTEMD\-CAT" "1" "" "systemd 215" "systemd-cat"
 .\" -----------------------------------------------------------------
 .\" * Define some portability stuff
 .\" -----------------------------------------------------------------
index 65b7e2467885cee94202f4d9d627003086bfac00..f94e6c4b2c0f41cb361a0a1aff87a17f70ec9c53 100644 (file)
@@ -19,7 +19,7 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="systemd-cat"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>systemd-cat — Connect a pipeline or program's output with the journal</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="cmdsynopsis"><p><code class="command">systemd-cat [OPTIONS...]  [COMMAND]  [ARGUMENTS...]</code> </p></div><div class="cmdsynopsis"><p><code class="command">systemd-cat [OPTIONS...]</code> </p></div></div><div class="refsect1"><a name="idm214192899024"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><span class="command"><strong>systemd-cat</strong></span> may be used to
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="systemd-cat"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>systemd-cat — Connect a pipeline or program's output with the journal</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="cmdsynopsis"><p><code class="command">systemd-cat [OPTIONS...]  [COMMAND]  [ARGUMENTS...]</code> </p></div><div class="cmdsynopsis"><p><code class="command">systemd-cat [OPTIONS...]</code> </p></div></div><div class="refsect1"><a name="idm214173873072"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><span class="command"><strong>systemd-cat</strong></span> may be used to
                 connect the standard input and output of a process to the
                 journal, or as a filter tool in a shell pipeline to
                 pass the output the previous pipeline element
@@ -28,7 +28,7 @@
                 everything it reads from standard input (stdin) to the journal.</p><p>If parameters are passed, they are executed as
                 command line with standard output (stdout) and standard
                 error output (stderr) connected to the journal, so
-                that all it writes is stored in the journal.</p></div><div class="refsect1"><a name="idm214192895184"></a><h2 id="Options">Options<a class="headerlink" title="Permalink to this headline" href="#Options">¶</a></h2><p>The following options are understood:</p><div class="variablelist"><dl class="variablelist"><dt id="-h"><span class="term"><code class="option">-h</code>, </span><span class="term"><code class="option">--help</code></span><a class="headerlink" title="Permalink to this term" href="#-h">¶</a></dt><dd><p><a name="help-text"></a>Print a short help text and exit.
+                that all it writes is stored in the journal.</p></div><div class="refsect1"><a name="idm214173943168"></a><h2 id="Options">Options<a class="headerlink" title="Permalink to this headline" href="#Options">¶</a></h2><p>The following options are understood:</p><div class="variablelist"><dl class="variablelist"><dt id="-h"><span class="term"><code class="option">-h</code>, </span><span class="term"><code class="option">--help</code></span><a class="headerlink" title="Permalink to this term" href="#-h">¶</a></dt><dd><p><a name="help-text"></a>Print a short help text and exit.
     </p></dd><dt id="--version"><span class="term"><code class="option">--version</code></span><a class="headerlink" title="Permalink to this term" href="#--version">¶</a></dt><dd><p><a name="version-text"></a>Print a short version string and exit.</p></dd><dt id="-t"><span class="term"><code class="option">-t</code>, </span><span class="term"><code class="option">--identifier=</code></span><a class="headerlink" title="Permalink to this term" href="#-t">¶</a></dt><dd><p>Specify a short string
                                 that is used to identify the logging
                                 tool. If not specified, no identification
                                 ("<code class="literal">notice</code>"), and
                                 similar for the other priority
                                 levels. Takes a boolean
-                                argument.</p></dd></dl></div></div><div class="refsect1"><a name="idm214196772960"></a><h2 id="Exit status">Exit status<a class="headerlink" title="Permalink to this headline" href="#Exit%20status">¶</a></h2><p>On success, 0 is returned, a non-zero failure
-                code otherwise.</p></div><div class="refsect1"><a name="idm214196771776"></a><h2 id="Examples">Examples<a class="headerlink" title="Permalink to this headline" href="#Examples">¶</a></h2><div class="example"><a name="idm214196771104"></a><p class="title"><b>Example 1. Invoke a program</b></p><div class="example-contents"><p>This calls <code class="filename">/bin/ls</code>
+                                argument.</p></dd></dl></div></div><div class="refsect1"><a name="idm214173999760"></a><h2 id="Exit status">Exit status<a class="headerlink" title="Permalink to this headline" href="#Exit%20status">¶</a></h2><p>On success, 0 is returned, a non-zero failure
+                code otherwise.</p></div><div class="refsect1"><a name="idm214173998576"></a><h2 id="Examples">Examples<a class="headerlink" title="Permalink to this headline" href="#Examples">¶</a></h2><div class="example"><a name="idm214173997904"></a><p class="title"><b>Example 1. Invoke a program</b></p><div class="example-contents"><p>This calls <code class="filename">/bin/ls</code>
                         with standard output and error connected to the
-                        journal:</p><pre class="programlisting"># systemd-cat ls</pre></div></div><br class="example-break"><div class="example"><a name="idm214196760640"></a><p class="title"><b>Example 2. Usage in a shell pipeline</b></p><div class="example-contents"><p>This builds a shell pipeline also
+                        journal:</p><pre class="programlisting"># systemd-cat ls</pre></div></div><br class="example-break"><div class="example"><a name="idm214173994912"></a><p class="title"><b>Example 2. Usage in a shell pipeline</b></p><div class="example-contents"><p>This builds a shell pipeline also
                         invoking <code class="filename">/bin/ls</code> and
                         writes the output it generates to the
                         journal:</p><pre class="programlisting"># ls | systemd-cat</pre></div></div><br class="example-break"><p>Even though the two examples have very similar
                 effects the first is preferable since only one process
                 is running at a time, and both stdout and stderr are
                 captured while in the second example, only stdout is
-                captured.</p></div><div class="refsect1"><a name="idm214196757136"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+                captured.</p></div><div class="refsect1"><a name="idm214173991408"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
                         <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
                         <a href="systemctl.html"><span class="citerefentry"><span class="refentrytitle">systemctl</span>(1)</span></a>,
                         <a href="logger.html"><span class="citerefentry"><span class="refentrytitle">logger</span>(1)</span></a>
index 8b70d738d2d7cb53edfb1e15bcad48264da7c38c..e9f732b6d4eb7b5a1a8a272187df1c1d808d5d8a 100644 (file)
@@ -1,5 +1,5 @@
 '\" t
-.TH "SYSTEMD\-CGLS" "1" "" "systemd 214" "systemd-cgls"
+.TH "SYSTEMD\-CGLS" "1" "" "systemd 215" "systemd-cgls"
 .\" -----------------------------------------------------------------
 .\" * Define some portability stuff
 .\" -----------------------------------------------------------------
index 3f7d15166a674462b24c9fdee6a19139a1c3f69b..29cf4bfa8a57d47f07f71ab6bfdf9f1a9d326e71 100644 (file)
@@ -19,7 +19,7 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="systemd-cgls"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>systemd-cgls — Recursively show control group contents</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="cmdsynopsis"><p><code class="command">systemd-cgls</code>  [OPTIONS...] [CGROUP...]</p></div></div><div class="refsect1"><a name="idm214170640048"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><span class="command"><strong>systemd-cgls</strong></span> recursively
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="systemd-cgls"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>systemd-cgls — Recursively show control group contents</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="cmdsynopsis"><p><code class="command">systemd-cgls</code>  [OPTIONS...] [CGROUP...]</p></div></div><div class="refsect1"><a name="idm214184118624"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><span class="command"><strong>systemd-cgls</strong></span> recursively
                 shows the contents of the selected Linux control group
                 hierarchy in a tree. If arguments are specified, shows
                 all member processes of the specified control groups
@@ -32,7 +32,7 @@
                 of the control group the working directory refers
                 to. Otherwise, the full systemd control group hierarchy
                 is shown.</p><p>By default, empty control groups are not
-                shown.</p></div><div class="refsect1"><a name="idm214170636416"></a><h2 id="Options">Options<a class="headerlink" title="Permalink to this headline" href="#Options">¶</a></h2><p>The following options are understood:</p><div class="variablelist"><dl class="variablelist"><dt id="--all"><span class="term"><code class="option">--all</code></span><a class="headerlink" title="Permalink to this term" href="#--all">¶</a></dt><dd><p>Do not hide empty
+                shown.</p></div><div class="refsect1"><a name="idm214187929552"></a><h2 id="Options">Options<a class="headerlink" title="Permalink to this headline" href="#Options">¶</a></h2><p>The following options are understood:</p><div class="variablelist"><dl class="variablelist"><dt id="--all"><span class="term"><code class="option">--all</code></span><a class="headerlink" title="Permalink to this term" href="#--all">¶</a></dt><dd><p>Do not hide empty
                                 control groups in the
                                 output.</p></dd><dt id="-l"><span class="term"><code class="option">-l</code>, </span><span class="term"><code class="option">--full</code></span><a class="headerlink" title="Permalink to this term" href="#-l">¶</a></dt><dd><p>Do not ellipsize
                                 process tree members.</p></dd><dt id="-k"><span class="term"><code class="option">-k</code></span><a class="headerlink" title="Permalink to this term" href="#-k">¶</a></dt><dd><p>Include kernel
@@ -40,8 +40,8 @@
                                 the part corresponding to the
                                 container <em class="replaceable"><code>MACHINE</code></em>.
                                 </p></dd><dt id="-h"><span class="term"><code class="option">-h</code>, </span><span class="term"><code class="option">--help</code></span><a class="headerlink" title="Permalink to this term" href="#-h">¶</a></dt><dd><p><a name="help-text"></a>Print a short help text and exit.
-    </p></dd><dt id="--version"><span class="term"><code class="option">--version</code></span><a class="headerlink" title="Permalink to this term" href="#--version">¶</a></dt><dd><p><a name="version-text"></a>Print a short version string and exit.</p></dd><dt id="--no-pager"><span class="term"><code class="option">--no-pager</code></span><a class="headerlink" title="Permalink to this term" href="#--no-pager">¶</a></dt><dd><p>Do not pipe output into a pager.</p></dd></dl></div></div><div class="refsect1"><a name="idm214174521488"></a><h2 id="Exit status">Exit status<a class="headerlink" title="Permalink to this headline" href="#Exit%20status">¶</a></h2><p>On success, 0 is returned, a non-zero failure
-                code otherwise.</p></div><div class="refsect1"><a name="idm214174520304"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+    </p></dd><dt id="--version"><span class="term"><code class="option">--version</code></span><a class="headerlink" title="Permalink to this term" href="#--version">¶</a></dt><dd><p><a name="version-text"></a>Print a short version string and exit.</p></dd><dt id="--no-pager"><span class="term"><code class="option">--no-pager</code></span><a class="headerlink" title="Permalink to this term" href="#--no-pager">¶</a></dt><dd><p>Do not pipe output into a pager.</p></dd></dl></div></div><div class="refsect1"><a name="idm214187869968"></a><h2 id="Exit status">Exit status<a class="headerlink" title="Permalink to this headline" href="#Exit%20status">¶</a></h2><p>On success, 0 is returned, a non-zero failure
+                code otherwise.</p></div><div class="refsect1"><a name="idm214187868784"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
                         <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
                         <a href="systemctl.html"><span class="citerefentry"><span class="refentrytitle">systemctl</span>(1)</span></a>,
                         <a href="systemd-cgtop.html"><span class="citerefentry"><span class="refentrytitle">systemd-cgtop</span>(1)</span></a>,
index e561cb4bfa6af2805c5d7437ec1bd84cccb92864..68d7b304f198a228469dc0fefb47c38fa3d26e14 100644 (file)
@@ -1,5 +1,5 @@
 '\" t
-.TH "SYSTEMD\-CGTOP" "1" "" "systemd 214" "systemd-cgtop"
+.TH "SYSTEMD\-CGTOP" "1" "" "systemd 215" "systemd-cgtop"
 .\" -----------------------------------------------------------------
 .\" * Define some portability stuff
 .\" -----------------------------------------------------------------
index 94c59217610dbf7d75444a2e84c03b2a9715b7f6..4f157ea6fbb8400f65bba6244b0c0cedbdb5b7a7 100644 (file)
@@ -19,7 +19,7 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="systemd-cgtop"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>systemd-cgtop — Show top control groups by their resource usage</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="cmdsynopsis"><p><code class="command">systemd-cgtop</code>  [OPTIONS...]</p></div></div><div class="refsect1"><a name="idm214198637328"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><span class="command"><strong>systemd-cgtop</strong></span> shows the top
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="systemd-cgtop"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>systemd-cgtop — Show top control groups by their resource usage</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="cmdsynopsis"><p><code class="command">systemd-cgtop</code>  [OPTIONS...]</p></div></div><div class="refsect1"><a name="idm214195806768"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><span class="command"><strong>systemd-cgtop</strong></span> shows the top
                 control groups of the local Linux control group
                 hierarchy, ordered by their CPU, memory, or disk I/O load. The
                 display is refreshed in regular intervals (by default
@@ -48,7 +48,7 @@
                 the services in question, no resource accounting will
                 be available for system services and the data shown by
                 <span class="command"><strong>systemd-cgtop</strong></span> will be
-                incomplete.</p></div><div class="refsect1"><a name="idm214198625184"></a><h2 id="Options">Options<a class="headerlink" title="Permalink to this headline" href="#Options">¶</a></h2><p>The following options are understood:</p><div class="variablelist"><dl class="variablelist"><dt id="-p"><span class="term"><code class="option">-p</code></span><a class="headerlink" title="Permalink to this term" href="#-p">¶</a></dt><dd><p>Order by control group
+                incomplete.</p></div><div class="refsect1"><a name="idm214199989184"></a><h2 id="Options">Options<a class="headerlink" title="Permalink to this headline" href="#Options">¶</a></h2><p>The following options are understood:</p><div class="variablelist"><dl class="variablelist"><dt id="-p"><span class="term"><code class="option">-p</code></span><a class="headerlink" title="Permalink to this term" href="#-p">¶</a></dt><dd><p>Order by control group
                                 path name.</p></dd><dt id="-t"><span class="term"><code class="option">-t</code></span><a class="headerlink" title="Permalink to this term" href="#-t">¶</a></dt><dd><p>Order by number of
                                 tasks in control
                                 group (i.e. threads and processes).</p></dd><dt id="-c"><span class="term"><code class="option">-c</code></span><a class="headerlink" title="Permalink to this term" href="#-c">¶</a></dt><dd><p>Order by CPU load.</p></dd><dt id="-m"><span class="term"><code class="option">-m</code></span><a class="headerlink" title="Permalink to this term" href="#-m">¶</a></dt><dd><p>Order by memory usage.</p></dd><dt id="-i"><span class="term"><code class="option">-i</code></span><a class="headerlink" title="Permalink to this term" href="#-i">¶</a></dt><dd><p>Order by disk I/O load.</p></dd><dt id="-b"><span class="term"><code class="option">-b</code>, </span><span class="term"><code class="option">--batch</code></span><a class="headerlink" title="Permalink to this term" href="#-b">¶</a></dt><dd><p>Run in "batch" mode:
@@ -75,7 +75,7 @@
                                 only the first level of control groups
                                 is monitored, and so on. Defaults to
                                 3.</p></dd><dt id="-h"><span class="term"><code class="option">-h</code>, </span><span class="term"><code class="option">--help</code></span><a class="headerlink" title="Permalink to this term" href="#-h">¶</a></dt><dd><p><a name="help-text"></a>Print a short help text and exit.
-    </p></dd><dt id="--version"><span class="term"><code class="option">--version</code></span><a class="headerlink" title="Permalink to this term" href="#--version">¶</a></dt><dd><p><a name="version-text"></a>Print a short version string and exit.</p></dd></dl></div></div><div class="refsect1"><a name="idm214202491696"></a><h2 id="Keys">Keys<a class="headerlink" title="Permalink to this headline" href="#Keys">¶</a></h2><p><span class="command"><strong>systemd-cgtop</strong></span> is an
+    </p></dd><dt id="--version"><span class="term"><code class="option">--version</code></span><a class="headerlink" title="Permalink to this term" href="#--version">¶</a></dt><dd><p><a name="version-text"></a>Print a short version string and exit.</p></dd></dl></div></div><div class="refsect1"><a name="idm214200041872"></a><h2 id="Keys">Keys<a class="headerlink" title="Permalink to this headline" href="#Keys">¶</a></h2><p><span class="command"><strong>systemd-cgtop</strong></span> is an
                 interactive tool and may be controlled via user input
                 using the following keys:</p><div class="variablelist"><dl class="variablelist"><dt id="h"><span class="term">h</span><a class="headerlink" title="Permalink to this term" href="#h">¶</a></dt><dd><p>Shows a short help text.</p></dd><dt id="SPACE"><span class="term">SPACE</span><a class="headerlink" title="Permalink to this term" href="#SPACE">¶</a></dt><dd><p>Immediately refresh output.</p></dd><dt id="q"><span class="term">q</span><a class="headerlink" title="Permalink to this term" href="#q">¶</a></dt><dd><p>Terminate the program.</p></dd><dt id="p"><span class="term">p, </span><span class="term">t, </span><span class="term">c, </span><span class="term">m, </span><span class="term">i</span><a class="headerlink" title="Permalink to this term" href="#p">¶</a></dt><dd><p>Sort the control groups
                                 by path, number of tasks, CPU load,
@@ -83,8 +83,8 @@
                                 load, respectively.</p></dd><dt id="%"><span class="term">%</span><a class="headerlink" title="Permalink to this term" href="#%">¶</a></dt><dd><p>Toggle between showing CPU time as
                                 time or percentage.</p></dd><dt id="+"><span class="term">+, </span><span class="term">-</span><a class="headerlink" title="Permalink to this term" href="#+">¶</a></dt><dd><p>Increase
                                 or decrease refresh
-                                delay, respectively.</p></dd></dl></div></div><div class="refsect1"><a name="idm214202479104"></a><h2 id="Exit status">Exit status<a class="headerlink" title="Permalink to this headline" href="#Exit%20status">¶</a></h2><p>On success, 0 is returned, a non-zero failure
-                code otherwise.</p></div><div class="refsect1"><a name="idm214202477920"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+                                delay, respectively.</p></dd></dl></div></div><div class="refsect1"><a name="idm214200022192"></a><h2 id="Exit status">Exit status<a class="headerlink" title="Permalink to this headline" href="#Exit%20status">¶</a></h2><p>On success, 0 is returned, a non-zero failure
+                code otherwise.</p></div><div class="refsect1"><a name="idm214200021008"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
                         <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
                         <a href="systemctl.html"><span class="citerefentry"><span class="refentrytitle">systemctl</span>(1)</span></a>,
                         <a href="systemd-cgls.html"><span class="citerefentry"><span class="refentrytitle">systemd-cgls</span>(1)</span></a>,
diff --git a/man/systemd-coredumpctl.1 b/man/systemd-coredumpctl.1
deleted file mode 100644 (file)
index 4b7388e..0000000
+++ /dev/null
@@ -1,116 +0,0 @@
-'\" t
-.TH "SYSTEMD\-COREDUMPCTL" "1" "" "systemd 214" "systemd-coredumpctl"
-.\" -----------------------------------------------------------------
-.\" * Define some portability stuff
-.\" -----------------------------------------------------------------
-.\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-.\" http://bugs.debian.org/507673
-.\" http://lists.gnu.org/archive/html/groff/2009-02/msg00013.html
-.\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-.ie \n(.g .ds Aq \(aq
-.el       .ds Aq '
-.\" -----------------------------------------------------------------
-.\" * set default formatting
-.\" -----------------------------------------------------------------
-.\" disable hyphenation
-.nh
-.\" disable justification (adjust text to left margin only)
-.ad l
-.\" -----------------------------------------------------------------
-.\" * MAIN CONTENT STARTS HERE *
-.\" -----------------------------------------------------------------
-.SH "NAME"
-systemd-coredumpctl \- Retrieve coredumps from the journal
-.SH "SYNOPSIS"
-.HP \w'\fBsystemd\-coredumpctl\fR\ 'u
-\fBsystemd\-coredumpctl\fR [OPTIONS...] {COMMAND} [PID|COMM|EXE|MATCH...]
-.SH "DESCRIPTION"
-.PP
-\fBsystemd\-coredumpctl\fR
-may be used to retrieve coredumps from
-\fBsystemd-journald\fR(8)\&.
-.SH "OPTIONS"
-.PP
-The following options are understood:
-.PP
-\fB\-F\fR, \fB\-\-field=\fR
-.RS 4
-Print all possible data values the specified field takes in matching coredump entries of the journal\&.
-.RE
-.PP
-\fB\-o\fR, \fB\-\-output=FILE\fR
-.RS 4
-Write the core to
-\fBFILE\fR\&.
-.RE
-.PP
-\fB\-\-no\-legend\fR
-.RS 4
-Do not print the column headers\&.
-.RE
-.PP
-\fB\-h\fR, \fB\-\-help\fR
-.RS 4
-Print a short help text and exit\&.
-.RE
-.PP
-\fB\-\-version\fR
-.RS 4
-Print a short version string and exit\&.
-.RE
-.PP
-\fB\-\-no\-pager\fR
-.RS 4
-Do not pipe output into a pager\&.
-.RE
-.PP
-The following commands are understood:
-.PP
-\fBlist\fR
-.RS 4
-List coredumps captured in the journal matching specified characteristics\&.
-.RE
-.PP
-\fBdump\fR
-.RS 4
-Extract the last coredump matching specified characteristics\&. The coredump will be written on standard output, unless an output file is specified with
-\fB\-o/\-\-output\fR\&.
-.RE
-.PP
-\fBgdb\fR
-.RS 4
-Invoke the GNU debugger on the last coredump matching specified characteristics\&.
-.RE
-.SH "MATCHING"
-.PP
-Match can be:
-.PP
-\fIPID\fR
-.RS 4
-Process ID of the process that dumped core\&. An integer\&.
-.RE
-.PP
-\fICOMM\fR
-.RS 4
-Name of the executable (matches
-\fBCOREDUMP_COMM=\fR)\&. Must not contain slashes\&.
-.RE
-.PP
-\fIEXE\fR
-.RS 4
-Path to the executable (matches
-\fBCOREDUMP_EXE=\fR)\&. Must contain at least one slash\&.
-.RE
-.PP
-\fIMATCH\fR
-.RS 4
-General journalctl predicates (see
-\fBjournalctl\fR(1))\&. Must contain an equals sign\&.
-.RE
-.SH "EXIT STATUS"
-.PP
-On success, 0 is returned; otherwise, a non\-zero failure code is returned\&. Not finding any matching coredumps is treated as failure\&.
-.SH "SEE ALSO"
-.PP
-\fBsystemd-journald.service\fR(8),
-\fBgdb\fR(1)
diff --git a/man/systemd-coredumpctl.html b/man/systemd-coredumpctl.html
deleted file mode 100644 (file)
index a60f98c..0000000
+++ /dev/null
@@ -1,56 +0,0 @@
-<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>systemd-coredumpctl</title><meta name="generator" content="DocBook XSL Stylesheets V1.78.1"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><style>
-    a.headerlink {
-      color: #c60f0f;
-      font-size: 0.8em;
-      padding: 0 4px 0 4px;
-      text-decoration: none;
-      visibility: hidden;
-    }
-
-    a.headerlink:hover {
-      background-color: #c60f0f;
-      color: white;
-    }
-
-    h1:hover > a.headerlink, h2:hover > a.headerlink, h3:hover > a.headerlink, dt:hover > a.headerlink {
-      visibility: visible;
-    }
-  </style><a href="index.html">Index </a>·
-  <a href="systemd.directives.html">Directives </a>·
-  <a href="../python-systemd/index.html">Python </a>·
-  <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="systemd-coredumpctl"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>systemd-coredumpctl — Retrieve coredumps from the journal</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="cmdsynopsis"><p><code class="command">systemd-coredumpctl</code>  [OPTIONS...] {COMMAND} [PID|COMM|EXE|MATCH...]</p></div></div><div class="refsect1"><a name="idm214170585728"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><span class="command"><strong>systemd-coredumpctl</strong></span> may be used to
-                retrieve coredumps from
-                <a href="systemd-journald.html"><span class="citerefentry"><span class="refentrytitle">systemd-journald</span>(8)</span></a>.</p></div><div class="refsect1"><a name="idm214170583184"></a><h2 id="Options">Options<a class="headerlink" title="Permalink to this headline" href="#Options">¶</a></h2><p>The following options are understood:</p><div class="variablelist"><dl class="variablelist"><dt id="-F"><span class="term"><code class="option">-F</code>, </span><span class="term"><code class="option">--field=</code></span><a class="headerlink" title="Permalink to this term" href="#-F">¶</a></dt><dd><p>Print all possible
-                                data values the specified field
-                                takes in matching coredump entries of the
-                                journal.</p></dd><dt id="-o"><span class="term"><code class="option">-o</code>, </span><span class="term"><code class="option">--output=FILE</code></span><a class="headerlink" title="Permalink to this term" href="#-o">¶</a></dt><dd><p>Write the core to
-                                <code class="option">FILE</code>.</p></dd><dt id="--no-legend"><span class="term"><code class="option">--no-legend</code></span><a class="headerlink" title="Permalink to this term" href="#--no-legend">¶</a></dt><dd><p>Do not print the column headers.
-                                </p></dd><dt id="-h"><span class="term"><code class="option">-h</code>, </span><span class="term"><code class="option">--help</code></span><a class="headerlink" title="Permalink to this term" href="#-h">¶</a></dt><dd><p><a name="help-text"></a>Print a short help text and exit.
-    </p></dd><dt id="--version"><span class="term"><code class="option">--version</code></span><a class="headerlink" title="Permalink to this term" href="#--version">¶</a></dt><dd><p><a name="version-text"></a>Print a short version string and exit.</p></dd><dt id="--no-pager"><span class="term"><code class="option">--no-pager</code></span><a class="headerlink" title="Permalink to this term" href="#--no-pager">¶</a></dt><dd><p>Do not pipe output into a pager.</p></dd></dl></div><p>The following commands are understood:</p><div class="variablelist"><dl class="variablelist"><dt id="list"><span class="term"><span class="command"><strong>list</strong></span></span><a class="headerlink" title="Permalink to this term" href="#list">¶</a></dt><dd><p>List coredumps captured in the journal
-                                matching specified characteristics.</p></dd><dt id="dump"><span class="term"><span class="command"><strong>dump</strong></span></span><a class="headerlink" title="Permalink to this term" href="#dump">¶</a></dt><dd><p>Extract the last coredump
-                                matching specified characteristics.
-                                The coredump will be written on standard output,
-                                unless an output file is specified with
-                                <code class="option">-o/--output</code>.
-                                </p></dd><dt id="gdb"><span class="term"><span class="command"><strong>gdb</strong></span></span><a class="headerlink" title="Permalink to this term" href="#gdb">¶</a></dt><dd><p>Invoke the GNU
-                                debugger on the last coredump matching
-                                specified characteristics.
-                                </p></dd></dl></div></div><div class="refsect1"><a name="idm214170684464"></a><h2 id="Matching">Matching<a class="headerlink" title="Permalink to this headline" href="#Matching">¶</a></h2><p>Match can be:</p><div class="variablelist"><dl class="variablelist"><dt id="PID"><span class="term"><em class="replaceable"><code>PID</code></em></span><a class="headerlink" title="Permalink to this term" href="#PID">¶</a></dt><dd><p>Process ID of the
-                                process that dumped
-                                core. An integer.</p></dd><dt id="COMM"><span class="term"><em class="replaceable"><code>COMM</code></em></span><a class="headerlink" title="Permalink to this term" href="#COMM">¶</a></dt><dd><p>Name of the executable
-                                (matches <code class="option">COREDUMP_COMM=</code>).
-                                Must not contain slashes.
-                                </p></dd><dt id="EXE"><span class="term"><em class="replaceable"><code>EXE</code></em></span><a class="headerlink" title="Permalink to this term" href="#EXE">¶</a></dt><dd><p>Path to the executable
-                                (matches <code class="option">COREDUMP_EXE=</code>).
-                                Must contain at least one slash.
-                                </p></dd><dt id="MATCH"><span class="term"><em class="replaceable"><code>MATCH</code></em></span><a class="headerlink" title="Permalink to this term" href="#MATCH">¶</a></dt><dd><p>General journalctl predicates
-                                (see <a href="journalctl.html"><span class="citerefentry"><span class="refentrytitle">journalctl</span>(1)</span></a>).
-                                Must contain an equals sign.
-                                </p></dd></dl></div></div><div class="refsect1"><a name="idm214170675024"></a><h2 id="Exit status">Exit status<a class="headerlink" title="Permalink to this headline" href="#Exit%20status">¶</a></h2><p>On success, 0 is returned; otherwise, a non-zero failure
-                code is returned. Not finding any matching coredumps is treated
-                as failure.
-                </p></div><div class="refsect1"><a name="idm214170673648"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
-                        <a href="systemd-journald.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-journald.service</span>(8)</span></a>,
-                        <a href="gdb.html"><span class="citerefentry"><span class="refentrytitle">gdb</span>(1)</span></a>
-                </p></div></div></body></html>
diff --git a/man/systemd-coredumpctl.xml b/man/systemd-coredumpctl.xml
deleted file mode 100644 (file)
index 092ec56..0000000
+++ /dev/null
@@ -1,198 +0,0 @@
-<?xml version='1.0'?> <!--*-nxml-*-->
-<!DOCTYPE refentry PUBLIC "-//OASIS//DTD DocBook XML V4.2//EN"
-        "http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd">
-
-<!--
-  This file is part of systemd.
-
-  Copyright 2012 Zbigniew Jędrzejewski-Szmek
-
-  systemd is free software; you can redistribute it and/or modify it
-  under the terms of the GNU Lesser General Public License as published by
-  the Free Software Foundation; either version 2.1 of the License, or
-  (at your option) any later version.
-
-  systemd is distributed in the hope that it will be useful, but
-  WITHOUT ANY WARRANTY; without even the implied warranty of
-  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-  Lesser General Public License for more details.
-
-  You should have received a copy of the GNU Lesser General Public License
-  along with systemd; If not, see <http://www.gnu.org/licenses/>.
--->
-
-<refentry id="systemd-coredumpctl" conditional='ENABLE_COREDUMP'
-          xmlns:xi="http://www.w3.org/2001/XInclude">
-
-        <refentryinfo>
-                <title>systemd-coredumpctl</title>
-                <productname>systemd</productname>
-
-                <authorgroup>
-                        <author>
-                                <contrib>Developer</contrib>
-                                <firstname>Zbigniew</firstname>
-                                <surname>Jędrzejewski-Szmek</surname>
-                                <email>zbyszek@in.waw.pl</email>
-                        </author>
-                </authorgroup>
-        </refentryinfo>
-
-        <refmeta>
-                <refentrytitle>systemd-coredumpctl</refentrytitle>
-                <manvolnum>1</manvolnum>
-        </refmeta>
-
-        <refnamediv>
-                <refname>systemd-coredumpctl</refname>
-                <refpurpose>Retrieve coredumps from the journal</refpurpose>
-        </refnamediv>
-
-        <refsynopsisdiv>
-                <cmdsynopsis>
-                        <command>systemd-coredumpctl</command>
-                        <arg choice="opt" rep="repeat">OPTIONS</arg>
-                        <arg choice="req">COMMAND</arg>
-                        <arg choice="opt" rep="repeat">PID|COMM|EXE|MATCH</arg>
-                </cmdsynopsis>
-        </refsynopsisdiv>
-
-        <refsect1>
-                <title>Description</title>
-
-                <para><command>systemd-coredumpctl</command> may be used to
-                retrieve coredumps from
-                <citerefentry><refentrytitle>systemd-journald</refentrytitle><manvolnum>8</manvolnum></citerefentry>.</para>
-        </refsect1>
-
-        <refsect1>
-                <title>Options</title>
-
-                <para>The following options are understood:</para>
-
-                <variablelist>
-                        <varlistentry>
-                                <term><option>-F</option></term>
-                                <term><option>--field=</option></term>
-
-                                <listitem><para>Print all possible
-                                data values the specified field
-                                takes in matching coredump entries of the
-                                journal.</para></listitem>
-                        </varlistentry>
-
-                        <varlistentry>
-                                <term><option>-o</option></term>
-                                <term><option>--output=FILE</option></term>
-
-                                <listitem><para>Write the core to
-                                <option>FILE</option>.</para></listitem>
-                        </varlistentry>
-
-                        <varlistentry>
-                                <term><option>--no-legend</option></term>
-
-                                <listitem><para>Do not print the column headers.
-                                </para></listitem>
-                        </varlistentry>
-
-                        <xi:include href="standard-options.xml" xpointer="help" />
-                        <xi:include href="standard-options.xml" xpointer="version" />
-                        <xi:include href="standard-options.xml" xpointer="no-pager" />
-                </variablelist>
-
-                <para>The following commands are understood:</para>
-
-                <variablelist>
-                        <varlistentry>
-                                <term><command>list</command></term>
-
-                                <listitem><para>List coredumps captured in the journal
-                                matching specified characteristics.</para></listitem>
-                        </varlistentry>
-
-                        <varlistentry>
-                                <term><command>dump</command></term>
-
-                                <listitem><para>Extract the last coredump
-                                matching specified characteristics.
-                                The coredump will be written on standard output,
-                                unless an output file is specified with
-                                <option>-o/--output</option>.
-                                </para></listitem>
-                        </varlistentry>
-
-
-                        <varlistentry>
-                                <term><command>gdb</command></term>
-
-                                <listitem><para>Invoke the GNU
-                                debugger on the last coredump matching
-                                specified characteristics.
-                                </para></listitem>
-                        </varlistentry>
-
-                </variablelist>
-
-        </refsect1>
-
-        <refsect1>
-                <title>Matching</title>
-
-                <para>Match can be:</para>
-
-                <variablelist>
-                        <varlistentry>
-                                <term><replaceable>PID</replaceable></term>
-
-                                <listitem><para>Process ID of the
-                                process that dumped
-                                core. An integer.</para></listitem>
-                        </varlistentry>
-
-                        <varlistentry>
-                                <term><replaceable>COMM</replaceable></term>
-
-                                <listitem><para>Name of the executable
-                                (matches <option>COREDUMP_COMM=</option>).
-                                Must not contain slashes.
-                                </para></listitem>
-                        </varlistentry>
-
-                        <varlistentry>
-                                <term><replaceable>EXE</replaceable></term>
-
-                                <listitem><para>Path to the executable
-                                (matches <option>COREDUMP_EXE=</option>).
-                                Must contain at least one slash.
-                                </para></listitem>
-                        </varlistentry>
-
-                        <varlistentry>
-                                <term><replaceable>MATCH</replaceable></term>
-
-                                <listitem><para>General journalctl predicates
-                                (see <citerefentry><refentrytitle>journalctl</refentrytitle><manvolnum>1</manvolnum></citerefentry>).
-                                Must contain an equals sign.
-                                </para></listitem>
-                        </varlistentry>
-                </variablelist>
-        </refsect1>
-
-        <refsect1>
-                <title>Exit status</title>
-                <para>On success, 0 is returned; otherwise, a non-zero failure
-                code is returned. Not finding any matching coredumps is treated
-                as failure.
-                </para>
-        </refsect1>
-
-        <refsect1>
-                <title>See Also</title>
-                <para>
-                        <citerefentry><refentrytitle>systemd-journald.service</refentrytitle><manvolnum>8</manvolnum></citerefentry>,
-                        <citerefentry><refentrytitle>gdb</refentrytitle><manvolnum>1</manvolnum></citerefentry>
-                </para>
-        </refsect1>
-
-</refentry>
index 705c5f4c96fcbca3747779ce20dae9b9f49bc250..a85ee5876ad4074600218284d6f453925921407c 100644 (file)
@@ -1,5 +1,5 @@
 '\" t
-.TH "SYSTEMD\-CRYPTSETUP\-GENERATOR" "8" "" "systemd 214" "systemd-cryptsetup-generator"
+.TH "SYSTEMD\-CRYPTSETUP\-GENERATOR" "8" "" "systemd 215" "systemd-cryptsetup-generator"
 .\" -----------------------------------------------------------------
 .\" * Define some portability stuff
 .\" -----------------------------------------------------------------
index 36e68bb321ec79f577c48b251d6e8524e33bfffa..f3dfb64fcac0e0300dc8a6b4eb82694ff9d65cd1 100644 (file)
@@ -19,7 +19,7 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="systemd-cryptsetup-generator"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>systemd-cryptsetup-generator — Unit generator for <code class="filename">/etc/crypttab</code></p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><p><code class="filename">/usr/lib/systemd/system-generators/systemd-cryptsetup-generator</code></p></div><div class="refsect1"><a name="idm214181276000"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="filename">systemd-cryptsetup-generator</code>
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="systemd-cryptsetup-generator"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>systemd-cryptsetup-generator — Unit generator for <code class="filename">/etc/crypttab</code></p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><p><code class="filename">/usr/lib/systemd/system-generators/systemd-cryptsetup-generator</code></p></div><div class="refsect1"><a name="idm214192676864"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="filename">systemd-cryptsetup-generator</code>
                 is a generator that translates
                 <code class="filename">/etc/crypttab</code> into native systemd
                 units early at boot and when configuration of the
@@ -27,7 +27,7 @@
                 <a href="systemd-cryptsetup@.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-cryptsetup@.service</span>(8)</span></a>
                 units as necessary.</p><p><code class="filename">systemd-cryptsetup-generator</code>
                 implements the <a class="ulink" href="http://www.freedesktop.org/wiki/Software/systemd/Generators" target="_top">generator
-                specification</a>.</p></div><div class="refsect1"><a name="idm214181656544"></a><h2 id="Kernel Command Line">Kernel Command Line<a class="headerlink" title="Permalink to this headline" href="#Kernel%20Command%20Line">¶</a></h2><p><code class="filename">systemd-cryptsetup-generator</code> understands
+                specification</a>.</p></div><div class="refsect1"><a name="idm214192674672"></a><h2 id="Kernel Command Line">Kernel Command Line<a class="headerlink" title="Permalink to this headline" href="#Kernel%20Command%20Line">¶</a></h2><p><code class="filename">systemd-cryptsetup-generator</code> understands
                 the following kernel command line parameters:</p><div class="variablelist"><dl class="variablelist"><dt id="luks="><span class="term"><code class="varname">luks=</code>, </span><span class="term"><code class="varname">rd.luks=</code></span><a class="headerlink" title="Permalink to this term" href="#luks=">¶</a></dt><dd><p>Takes a boolean
                                 argument. Defaults to
                                 "<code class="literal">yes</code>". If
@@ -90,7 +90,7 @@
                                 (initrd) while
                                 <code class="varname">luks.key=</code> is
                                 honored by both the main system and
-                                the initrd.</p></dd></dl></div></div><div class="refsect1"><a name="idm214182005056"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+                                the initrd.</p></dd></dl></div></div><div class="refsect1"><a name="idm214192788848"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
                         <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
                         <a href="crypttab.html"><span class="citerefentry"><span class="refentrytitle">crypttab</span>(5)</span></a>,
                         <a href="systemd-cryptsetup@.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-cryptsetup@.service</span>(8)</span></a>,
index c9cc3407905ac8a35cf56817affb27f4767aee88..5a165512d3aa2133be8deb0ce23e2dc599937a8b 100644 (file)
@@ -19,7 +19,7 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="systemd-cryptsetup@.service"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>systemd-cryptsetup@.service, systemd-cryptsetup — Full disk decryption logic</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><p><code class="filename">systemd-cryptsetup@.service</code></p><p><code class="filename">/usr/lib/systemd/systemd-cryptsetup</code></p></div><div class="refsect1"><a name="idm214169779760"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="filename">systemd-cryptsetup@.service</code>
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="systemd-cryptsetup@.service"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>systemd-cryptsetup@.service, systemd-cryptsetup — Full disk decryption logic</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><p><code class="filename">systemd-cryptsetup@.service</code></p><p><code class="filename">/usr/lib/systemd/systemd-cryptsetup</code></p></div><div class="refsect1"><a name="idm214177258816"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="filename">systemd-cryptsetup@.service</code>
                 is a service responsible for setting up encrypted
                 block devices. It is instantiated for each device that
                 requires decryption for access.</p><p><code class="filename">systemd-cryptsetup@.service</code>
@@ -31,7 +31,7 @@
                 <code class="filename">/etc/crypttab</code> is translated into
                 <code class="filename">systemd-cryptsetup@.service</code> units
                 by
-                <a href="systemd-cryptsetup-generator.html"><span class="citerefentry"><span class="refentrytitle">systemd-cryptsetup-generator</span>(8)</span></a>.</p></div><div class="refsect1"><a name="idm214169930304"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+                <a href="systemd-cryptsetup-generator.html"><span class="citerefentry"><span class="refentrytitle">systemd-cryptsetup-generator</span>(8)</span></a>.</p></div><div class="refsect1"><a name="idm214173494288"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
                         <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
                         <a href="systemd-cryptsetup-generator.html"><span class="citerefentry"><span class="refentrytitle">systemd-cryptsetup-generator</span>(8)</span></a>,
                         <a href="crypttab.html"><span class="citerefentry"><span class="refentrytitle">crypttab</span>(5)</span></a>,
index 60d144dcabd98e4a6f9490f17c1835ac0a279fbe..94285dabe1aee9e7d4fbb0033d2a43743a6c9538 100644 (file)
@@ -1,5 +1,5 @@
 '\" t
-.TH "SYSTEMD\-CRYPTSETUP@\&.SERVICE" "8" "" "systemd 214" "systemd-cryptsetup@.service"
+.TH "SYSTEMD\-CRYPTSETUP@\&.SERVICE" "8" "" "systemd 215" "systemd-cryptsetup@.service"
 .\" -----------------------------------------------------------------
 .\" * Define some portability stuff
 .\" -----------------------------------------------------------------
index c9cc3407905ac8a35cf56817affb27f4767aee88..5a165512d3aa2133be8deb0ce23e2dc599937a8b 100644 (file)
@@ -19,7 +19,7 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="systemd-cryptsetup@.service"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>systemd-cryptsetup@.service, systemd-cryptsetup — Full disk decryption logic</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><p><code class="filename">systemd-cryptsetup@.service</code></p><p><code class="filename">/usr/lib/systemd/systemd-cryptsetup</code></p></div><div class="refsect1"><a name="idm214169779760"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="filename">systemd-cryptsetup@.service</code>
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="systemd-cryptsetup@.service"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>systemd-cryptsetup@.service, systemd-cryptsetup — Full disk decryption logic</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><p><code class="filename">systemd-cryptsetup@.service</code></p><p><code class="filename">/usr/lib/systemd/systemd-cryptsetup</code></p></div><div class="refsect1"><a name="idm214177258816"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="filename">systemd-cryptsetup@.service</code>
                 is a service responsible for setting up encrypted
                 block devices. It is instantiated for each device that
                 requires decryption for access.</p><p><code class="filename">systemd-cryptsetup@.service</code>
@@ -31,7 +31,7 @@
                 <code class="filename">/etc/crypttab</code> is translated into
                 <code class="filename">systemd-cryptsetup@.service</code> units
                 by
-                <a href="systemd-cryptsetup-generator.html"><span class="citerefentry"><span class="refentrytitle">systemd-cryptsetup-generator</span>(8)</span></a>.</p></div><div class="refsect1"><a name="idm214169930304"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+                <a href="systemd-cryptsetup-generator.html"><span class="citerefentry"><span class="refentrytitle">systemd-cryptsetup-generator</span>(8)</span></a>.</p></div><div class="refsect1"><a name="idm214173494288"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
                         <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
                         <a href="systemd-cryptsetup-generator.html"><span class="citerefentry"><span class="refentrytitle">systemd-cryptsetup-generator</span>(8)</span></a>,
                         <a href="crypttab.html"><span class="citerefentry"><span class="refentrytitle">crypttab</span>(5)</span></a>,
diff --git a/man/systemd-debug-generator.8 b/man/systemd-debug-generator.8
new file mode 100644 (file)
index 0000000..1e435a9
--- /dev/null
@@ -0,0 +1,65 @@
+'\" t
+.TH "SYSTEMD\-DEBUG\-GENERATOR" "8" "" "systemd 215" "systemd-debug-generator"
+.\" -----------------------------------------------------------------
+.\" * Define some portability stuff
+.\" -----------------------------------------------------------------
+.\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+.\" http://bugs.debian.org/507673
+.\" http://lists.gnu.org/archive/html/groff/2009-02/msg00013.html
+.\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+.ie \n(.g .ds Aq \(aq
+.el       .ds Aq '
+.\" -----------------------------------------------------------------
+.\" * set default formatting
+.\" -----------------------------------------------------------------
+.\" disable hyphenation
+.nh
+.\" disable justification (adjust text to left margin only)
+.ad l
+.\" -----------------------------------------------------------------
+.\" * MAIN CONTENT STARTS HERE *
+.\" -----------------------------------------------------------------
+.SH "NAME"
+systemd-debug-generator \- Generator for enabling a runtime debug shell and masking specific units at boot
+.SH "SYNOPSIS"
+.PP
+/usr/lib/systemd/system\-generators/systemd\-debug\-generator
+.SH "DESCRIPTION"
+.PP
+systemd\-debug\-generator
+is a generator that reads the kernel command line and understands three options:
+.PP
+If the
+\fBsystemd\&.mask=\fR
+option is specified and followed by a unit name, this unit is masked for the runtime, similar to the effect of
+\fBsystemctl\fR(1)\*(Aqs
+\fBmask\fR
+command\&. This is useful to boot with certain units removed from the initial boot transaction for debugging system startup\&. May be specified more than once\&.
+.PP
+If the
+\fBsystemd\&.wants=\fR
+option is specified and followed by a unit name, a start job for this unit is added to the initial transaction\&. This is useful to start one ore more additional units at boot\&. May be specified more than once\&.
+.PP
+If the
+\fBsystemd\&.debug\-shell\fR
+option is specified, the debug shell service
+"debug\-shell\&.service"
+is pulled into the boot transaction\&. It will spawn a debug shell on tty9 during early system startup\&. Note that the shell may also be turned on persistently by enabling it with
+\fBsystemctl\fR(1)\*(Aqs
+\fBenable\fR
+command\&.
+.PP
+systemd\-debug\-generator
+implements the
+\m[blue]\fBgenerator specification\fR\m[]\&\s-2\u[1]\d\s+2\&.
+.SH "SEE ALSO"
+.PP
+\fBsystemd\fR(1),
+\fBsystemctl\fR(1),
+\fBkernel-command-line\fR(7)
+.SH "NOTES"
+.IP " 1." 4
+generator specification
+.RS 4
+\%http://www.freedesktop.org/wiki/Software/systemd/Generators
+.RE
diff --git a/man/systemd-debug-generator.html b/man/systemd-debug-generator.html
new file mode 100644 (file)
index 0000000..80ec5a5
--- /dev/null
@@ -0,0 +1,48 @@
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>systemd-debug-generator</title><meta name="generator" content="DocBook XSL Stylesheets V1.78.1"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><style>
+    a.headerlink {
+      color: #c60f0f;
+      font-size: 0.8em;
+      padding: 0 4px 0 4px;
+      text-decoration: none;
+      visibility: hidden;
+    }
+
+    a.headerlink:hover {
+      background-color: #c60f0f;
+      color: white;
+    }
+
+    h1:hover > a.headerlink, h2:hover > a.headerlink, h3:hover > a.headerlink, dt:hover > a.headerlink {
+      visibility: visible;
+    }
+  </style><a href="index.html">Index </a>·
+  <a href="systemd.directives.html">Directives </a>·
+  <a href="../python-systemd/index.html">Python </a>·
+  <a href="../libudev/index.html">libudev </a>·
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="systemd-debug-generator"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>systemd-debug-generator — Generator for enabling a runtime debug shell and masking specific units at boot</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><p><code class="filename">/usr/lib/systemd/system-generators/systemd-debug-generator</code></p></div><div class="refsect1"><a name="idm214183945248"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="filename">systemd-debug-generator</code> is
+                a generator that reads the kernel command line and
+                understands three options:</p><p>If the <code class="option">systemd.mask=</code> option is
+                specified and followed by a unit name, this unit is
+                masked for the runtime, similar to the effect of
+                <a href="systemctl.html"><span class="citerefentry"><span class="refentrytitle">systemctl</span>(1)</span></a>'s
+                <span class="command"><strong>mask</strong></span> command. This is useful to
+                boot with certain units removed from the initial boot
+                transaction for debugging system startup. May be
+                specified more than once.</p><p>If the <code class="option">systemd.wants=</code> option is
+                specified and followed by a unit name, a start job for
+                this unit is added to the initial transaction. This is
+                useful to start one ore more additional units at
+                boot. May be specified more than once.</p><p>If the <code class="option">systemd.debug-shell</code>
+                option is specified, the debug shell service
+                "<code class="literal">debug-shell.service</code>" is pulled into
+                the boot transaction. It will spawn a debug shell on
+                tty9 during early system startup. Note that the shell
+                may also be turned on persistently by enabling it with
+                <a href="systemctl.html"><span class="citerefentry"><span class="refentrytitle">systemctl</span>(1)</span></a>'s
+                <span class="command"><strong>enable</strong></span> command.</p><p><code class="filename">systemd-debug-generator</code>
+                implements the <a class="ulink" href="http://www.freedesktop.org/wiki/Software/systemd/Generators" target="_top">generator
+                specification</a>.</p></div><div class="refsect1"><a name="idm214187199856"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+                        <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
+                        <a href="systemctl.html"><span class="citerefentry"><span class="refentrytitle">systemctl</span>(1)</span></a>,
+                        <a href="kernel-command-line.html"><span class="citerefentry"><span class="refentrytitle">kernel-command-line</span>(7)</span></a>
+                </p></div></div></body></html>
diff --git a/man/systemd-debug-generator.xml b/man/systemd-debug-generator.xml
new file mode 100644 (file)
index 0000000..ce4750e
--- /dev/null
@@ -0,0 +1,98 @@
+<?xml version="1.0"?>
+<!--*-nxml-*-->
+<!DOCTYPE refentry PUBLIC "-//OASIS//DTD DocBook XML V4.2//EN" "http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd">
+<!--
+  This file is part of systemd.
+
+  Copyright 2014 Lennart Poettering
+
+  systemd is free software; you can redistribute it and/or modify it
+  under the terms of the GNU Lesser General Public License as published by
+  the Free Software Foundation; either version 2.1 of the License, or
+  (at your option) any later version.
+
+  systemd is distributed in the hope that it will be useful, but
+  WITHOUT ANY WARRANTY; without even the implied warranty of
+  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+  Lesser General Public License for more details.
+
+  You should have received a copy of the GNU Lesser General Public License
+  along with systemd; If not, see <http://www.gnu.org/licenses/>.
+-->
+<refentry id="systemd-debug-generator">
+
+        <refentryinfo>
+                <title>systemd-debug-generator</title>
+                <productname>systemd</productname>
+
+                <authorgroup>
+                        <author>
+                                <contrib>Developer</contrib>
+                                <firstname>Lennart</firstname>
+                                <surname>Poettering</surname>
+                                <email>lennart@poettering.net</email>
+                        </author>
+                </authorgroup>
+        </refentryinfo>
+
+        <refmeta>
+                <refentrytitle>systemd-debug-generator</refentrytitle>
+                <manvolnum>8</manvolnum>
+        </refmeta>
+
+        <refnamediv>
+                <refname>systemd-debug-generator</refname>
+                <refpurpose>Generator for enabling a runtime debug shell and masking specific units at boot</refpurpose>
+        </refnamediv>
+
+        <refsynopsisdiv>
+                <para><filename>/usr/lib/systemd/system-generators/systemd-debug-generator</filename></para>
+        </refsynopsisdiv>
+
+        <refsect1>
+                <title>Description</title>
+
+                <para><filename>systemd-debug-generator</filename> is
+                a generator that reads the kernel command line and
+                understands three options:</para>
+
+                <para>If the <option>systemd.mask=</option> option is
+                specified and followed by a unit name, this unit is
+                masked for the runtime, similar to the effect of
+                <citerefentry><refentrytitle>systemctl</refentrytitle><manvolnum>1</manvolnum></citerefentry>'s
+                <command>mask</command> command. This is useful to
+                boot with certain units removed from the initial boot
+                transaction for debugging system startup. May be
+                specified more than once.</para>
+
+                <para>If the <option>systemd.wants=</option> option is
+                specified and followed by a unit name, a start job for
+                this unit is added to the initial transaction. This is
+                useful to start one ore more additional units at
+                boot. May be specified more than once.</para>
+
+                <para>If the <option>systemd.debug-shell</option>
+                option is specified, the debug shell service
+                <literal>debug-shell.service</literal> is pulled into
+                the boot transaction. It will spawn a debug shell on
+                tty9 during early system startup. Note that the shell
+                may also be turned on persistently by enabling it with
+                <citerefentry><refentrytitle>systemctl</refentrytitle><manvolnum>1</manvolnum></citerefentry>'s
+                <command>enable</command> command.</para>
+
+                <para><filename>systemd-debug-generator</filename>
+                implements the <ulink
+                url="http://www.freedesktop.org/wiki/Software/systemd/Generators">generator
+                specification</ulink>.</para>
+        </refsect1>
+
+        <refsect1>
+                <title>See Also</title>
+                <para>
+                        <citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
+                        <citerefentry><refentrytitle>systemctl</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
+                        <citerefentry><refentrytitle>kernel-command-line</refentrytitle><manvolnum>7</manvolnum></citerefentry>
+                </para>
+        </refsect1>
+
+</refentry>
index 66b88c64f6122df58134094a520d6dcf2c0aa273..9a303508b8756cd93c6ed9b562542ec2f9d6d703 100644 (file)
@@ -1,5 +1,5 @@
 '\" t
-.TH "SYSTEMD\-DELTA" "1" "" "systemd 214" "systemd-delta"
+.TH "SYSTEMD\-DELTA" "1" "" "systemd 215" "systemd-delta"
 .\" -----------------------------------------------------------------
 .\" * Define some portability stuff
 .\" -----------------------------------------------------------------
index 681338bd2938f562fa771b2f4c670b5d2e9e6aa9..c2364f006280eac194f871a8c0a12b57af92d7e0 100644 (file)
@@ -19,7 +19,7 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="systemd-delta"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>systemd-delta — Find overridden configuration files</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="cmdsynopsis"><p><code class="command">systemd-delta</code>  [OPTIONS...] [<em class="replaceable"><code>PREFIX</code></em>[<span class="optional">/<em class="replaceable"><code>SUFFIX</code></em></span>]|<em class="replaceable"><code>SUFFIX</code></em>...]</p></div></div><div class="refsect1"><a name="idm214169442352"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><span class="command"><strong>systemd-delta</strong></span> may be used to
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="systemd-delta"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>systemd-delta — Find overridden configuration files</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="cmdsynopsis"><p><code class="command">systemd-delta</code>  [OPTIONS...] [<em class="replaceable"><code>PREFIX</code></em>[<span class="optional">/<em class="replaceable"><code>SUFFIX</code></em></span>]|<em class="replaceable"><code>SUFFIX</code></em>...]</p></div></div><div class="refsect1"><a name="idm214187729312"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><span class="command"><strong>systemd-delta</strong></span> may be used to
                 identify and compare configuration files that override
                 other configuration files. Files in
                 <code class="filename">/etc</code> have highest priority, files
@@ -57,7 +57,7 @@
                 all configuration files will be analyzed. If the
                 commandline argument is not given at all, all
                 configuration files will be analyzed. See below for
-                some examples.</p></div><div class="refsect1"><a name="idm214168463456"></a><h2 id="Options">Options<a class="headerlink" title="Permalink to this headline" href="#Options">¶</a></h2><p>The following options are understood:</p><div class="variablelist"><dl class="variablelist"><dt id="-t"><span class="term"><code class="option">-t</code>, </span><span class="term"><code class="option">--type=</code></span><a class="headerlink" title="Permalink to this term" href="#-t">¶</a></dt><dd><p>When listing the
+                some examples.</p></div><div class="refsect1"><a name="idm214191606976"></a><h2 id="Options">Options<a class="headerlink" title="Permalink to this headline" href="#Options">¶</a></h2><p>The following options are understood:</p><div class="variablelist"><dl class="variablelist"><dt id="-t"><span class="term"><code class="option">-t</code>, </span><span class="term"><code class="option">--type=</code></span><a class="headerlink" title="Permalink to this term" href="#-t">¶</a></dt><dd><p>When listing the
                                 differences, only list those that are
                                 asked for. The list itself is a
                                 comma-separated list of desired
@@ -75,8 +75,8 @@
                                 diff as well. This option takes a
                                 boolean argument. If omitted, it defaults
                                 to <code class="option">true</code>.</p></dd><dt id="-h"><span class="term"><code class="option">-h</code>, </span><span class="term"><code class="option">--help</code></span><a class="headerlink" title="Permalink to this term" href="#-h">¶</a></dt><dd><p><a name="help-text"></a>Print a short help text and exit.
-    </p></dd><dt id="--version"><span class="term"><code class="option">--version</code></span><a class="headerlink" title="Permalink to this term" href="#--version">¶</a></dt><dd><p><a name="version-text"></a>Print a short version string and exit.</p></dd><dt id="--no-pager"><span class="term"><code class="option">--no-pager</code></span><a class="headerlink" title="Permalink to this term" href="#--no-pager">¶</a></dt><dd><p>Do not pipe output into a pager.</p></dd></dl></div></div><div class="refsect1"><a name="idm214172345232"></a><h2 id="Examples">Examples<a class="headerlink" title="Permalink to this headline" href="#Examples">¶</a></h2><p>To see all local configuration:</p><pre class="programlisting">systemd-delta</pre><p>To see all runtime configuration:</p><pre class="programlisting">systemd-delta /run</pre><p>To see all system unit configuration changes:</p><pre class="programlisting">systemd-delta systemd/system</pre><p>To see all runtime "drop-in" changes for system units:</p><pre class="programlisting">systemd-delta --type=extended /run/systemd/system</pre></div><div class="refsect1"><a name="idm214172340064"></a><h2 id="Exit status">Exit status<a class="headerlink" title="Permalink to this headline" href="#Exit%20status">¶</a></h2><p>On success, 0 is returned, a non-zero failure
-                code otherwise.</p></div><div class="refsect1"><a name="idm214172338880"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+    </p></dd><dt id="--version"><span class="term"><code class="option">--version</code></span><a class="headerlink" title="Permalink to this term" href="#--version">¶</a></dt><dd><p><a name="version-text"></a>Print a short version string and exit.</p></dd><dt id="--no-pager"><span class="term"><code class="option">--no-pager</code></span><a class="headerlink" title="Permalink to this term" href="#--no-pager">¶</a></dt><dd><p>Do not pipe output into a pager.</p></dd></dl></div></div><div class="refsect1"><a name="idm214191664528"></a><h2 id="Examples">Examples<a class="headerlink" title="Permalink to this headline" href="#Examples">¶</a></h2><p>To see all local configuration:</p><pre class="programlisting">systemd-delta</pre><p>To see all runtime configuration:</p><pre class="programlisting">systemd-delta /run</pre><p>To see all system unit configuration changes:</p><pre class="programlisting">systemd-delta systemd/system</pre><p>To see all runtime "drop-in" changes for system units:</p><pre class="programlisting">systemd-delta --type=extended /run/systemd/system</pre></div><div class="refsect1"><a name="idm214191659360"></a><h2 id="Exit status">Exit status<a class="headerlink" title="Permalink to this headline" href="#Exit%20status">¶</a></h2><p>On success, 0 is returned, a non-zero failure
+                code otherwise.</p></div><div class="refsect1"><a name="idm214191658176"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
                         <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
                         <a href="systemd.unit.html"><span class="citerefentry"><span class="refentrytitle">systemd.unit</span>(5)</span></a>
                 </p></div></div></body></html>
index d9772e839c1f011bf5e8087da72f673a44daa15e..3bcdf53b3b55a9bb8f50ad5239983f4480374a33 100644 (file)
@@ -1,5 +1,5 @@
 '\" t
-.TH "SYSTEMD\-DETECT\-VIRT" "1" "" "systemd 214" "systemd-detect-virt"
+.TH "SYSTEMD\-DETECT\-VIRT" "1" "" "systemd 215" "systemd-detect-virt"
 .\" -----------------------------------------------------------------
 .\" * Define some portability stuff
 .\" -----------------------------------------------------------------
index 52c509c3b7ea010880d3ad21b70bbe35363ee68f..503292fa5025742d773a357232af5ef0893f53e4 100644 (file)
@@ -19,7 +19,7 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="systemd-detect-virt"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>systemd-detect-virt — Detect execution in a virtualized environment</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="cmdsynopsis"><p><code class="command">systemd-detect-virt [OPTIONS...]</code> </p></div></div><div class="refsect1"><a name="idm214180312864"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><span class="command"><strong>systemd-detect-virt</strong></span> detects
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="systemd-detect-virt"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>systemd-detect-virt — Detect execution in a virtualized environment</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="cmdsynopsis"><p><code class="command">systemd-detect-virt [OPTIONS...]</code> </p></div></div><div class="refsect1"><a name="idm214176292544"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><span class="command"><strong>systemd-detect-virt</strong></span> detects
                 execution in a virtualized environment. It identifies
                 the virtualization technology and can distinguish full
                 VM virtualization from container
                 means if both VM virtualization and container
                 virtualization are used in conjunction, only the latter
                 will be identified (unless <code class="option">--vm</code> is
-                passed).</p></div><div class="refsect1"><a name="idm214180308016"></a><h2 id="Options">Options<a class="headerlink" title="Permalink to this headline" href="#Options">¶</a></h2><p>The following options are understood:</p><div class="variablelist"><dl class="variablelist"><dt id="-c"><span class="term"><code class="option">-c</code>, </span><span class="term"><code class="option">--container</code></span><a class="headerlink" title="Permalink to this term" href="#-c">¶</a></dt><dd><p>Only detects container
+                passed).</p></div><div class="refsect1"><a name="idm214180477776"></a><h2 id="Options">Options<a class="headerlink" title="Permalink to this headline" href="#Options">¶</a></h2><p>The following options are understood:</p><div class="variablelist"><dl class="variablelist"><dt id="-c"><span class="term"><code class="option">-c</code>, </span><span class="term"><code class="option">--container</code></span><a class="headerlink" title="Permalink to this term" href="#-c">¶</a></dt><dd><p>Only detects container
                                 virtualization (i.e. shared kernel
                                 virtualization).</p></dd><dt id="-v"><span class="term"><code class="option">-v</code>, </span><span class="term"><code class="option">--vm</code></span><a class="headerlink" title="Permalink to this term" href="#-v">¶</a></dt><dd><p>Only detects VM
                                 virtualization (i.e. full hardware
                                 virtualization).</p></dd><dt id="-q"><span class="term"><code class="option">-q</code>, </span><span class="term"><code class="option">--quiet</code></span><a class="headerlink" title="Permalink to this term" href="#-q">¶</a></dt><dd><p>Suppress output of the
                                 virtualization technology
                                 identifier.</p></dd><dt id="-h"><span class="term"><code class="option">-h</code>, </span><span class="term"><code class="option">--help</code></span><a class="headerlink" title="Permalink to this term" href="#-h">¶</a></dt><dd><p><a name="help-text"></a>Print a short help text and exit.
-    </p></dd><dt id="--version"><span class="term"><code class="option">--version</code></span><a class="headerlink" title="Permalink to this term" href="#--version">¶</a></dt><dd><p><a name="version-text"></a>Print a short version string and exit.</p></dd></dl></div></div><div class="refsect1"><a name="idm214180298304"></a><h2 id="Exit status">Exit status<a class="headerlink" title="Permalink to this headline" href="#Exit%20status">¶</a></h2><p>If a virtualization technology is detected, 0 is
-                returned, a non-zero code otherwise.</p></div><div class="refsect1"><a name="idm214180297008"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+    </p></dd><dt id="--version"><span class="term"><code class="option">--version</code></span><a class="headerlink" title="Permalink to this term" href="#--version">¶</a></dt><dd><p><a name="version-text"></a>Print a short version string and exit.</p></dd></dl></div></div><div class="refsect1"><a name="idm214180374080"></a><h2 id="Exit status">Exit status<a class="headerlink" title="Permalink to this headline" href="#Exit%20status">¶</a></h2><p>If a virtualization technology is detected, 0 is
+                returned, a non-zero code otherwise.</p></div><div class="refsect1"><a name="idm214180372784"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
                         <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>
                 </p></div></div></body></html>
index 8c04feec46a4371963d6bc852b29d03ff06c04d1..d1ebfbbd829f1413dd196af2b620f44b0f318a4c 100644 (file)
@@ -1,5 +1,5 @@
 '\" t
-.TH "SYSTEMD\-EFI\-BOOT\-GENERATOR" "8" "" "systemd 214" "systemd-efi-boot-generator"
+.TH "SYSTEMD\-EFI\-BOOT\-GENERATOR" "8" "" "systemd 215" "systemd-efi-boot-generator"
 .\" -----------------------------------------------------------------
 .\" * Define some portability stuff
 .\" -----------------------------------------------------------------
index cb1aa5817233ccf3e171a59328f6ea0d7cf540d8..e36a0c40bac71e723701d6f37be988b0d7e82a1d 100644 (file)
@@ -19,9 +19,9 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="systemd-efi-boot-generator"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>systemd-efi-boot-generator — Generator for automatically mounting the
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="systemd-efi-boot-generator"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>systemd-efi-boot-generator — Generator for automatically mounting the
                 EFI System Partition used by the current boot to
-                <code class="filename">/boot</code></p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><p><code class="filename">/usr/lib/systemd/system-generators/systemd-efi-boot-generator</code></p></div><div class="refsect1"><a name="idm214192877216"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="filename">systemd-efi-boot-generator</code>
+                <code class="filename">/boot</code></p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><p><code class="filename">/usr/lib/systemd/system-generators/systemd-efi-boot-generator</code></p></div><div class="refsect1"><a name="idm214175786880"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="filename">systemd-efi-boot-generator</code>
                 is a generator that automatically creates mount and
                 automount units for the EFI System Partition (ESP),
                 mounting it to <code class="filename">/boot</code>. Note that
@@ -34,7 +34,7 @@
                 automount unit, the mount will only be activated
                 on-demand, when accessed.</p><p><code class="filename">systemd-efi-boot-generator</code>
                 implements the <a class="ulink" href="http://www.freedesktop.org/wiki/Software/systemd/Generators" target="_top">generator
-                specification</a>.</p></div><div class="refsect1"><a name="idm214196228176"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+                specification</a>.</p></div><div class="refsect1"><a name="idm214178650096"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
                         <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
                         <a href="systemd.mount.html"><span class="citerefentry"><span class="refentrytitle">systemd.mount</span>(5)</span></a>,
                         <a href="systemd.automount.html"><span class="citerefentry"><span class="refentrytitle">systemd.automount</span>(5)</span></a>,
index 393a383aba803b1450bc09da0dfdd5716cb82868..620237e6e1902bf5f779be64bd43ca0d426f1c8f 100644 (file)
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="systemd-fsck@.service"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>systemd-fsck@.service, systemd-fsck-root.service, systemd-fsck — File system checker logic</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><p><code class="filename">systemd-fsck@.service</code></p><p><code class="filename">systemd-fsck-root.service</code></p><p><code class="filename">/usr/lib/systemd/systemd-fsck</code></p></div><div class="refsect1"><a name="idm214189485840"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="filename">systemd-fsck@.service</code> is a
-                service responsible for file system checks. It is
-                instantiated for each device that requires a file
-                system
-                check. <code class="filename">systemd-fsck-root.service</code> is
-                responsible for file system checks on the root
-                file system. The root file system check is performed
-                before the other file systems. Either service is enabled
-                at boot if passno in <code class="filename">/etc/fstab</code> for
-                the file system is set to a value greater than zero.</p><p><code class="filename">systemd-fsck</code> will
-                forward file system checking progress to the
-                console. If a file system check fails, emergency mode
-                is activated, by isolating to
-                <code class="filename">emergency.target</code>.</p></div><div class="refsect1"><a name="idm214193594368"></a><h2 id="Kernel Command Line">Kernel Command Line<a class="headerlink" title="Permalink to this headline" href="#Kernel%20Command%20Line">¶</a></h2><p><code class="filename">systemd-fsck</code> understands
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="systemd-fsck@.service"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>systemd-fsck@.service, systemd-fsck-root.service, systemd-fsck — File system checker logic</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><p><code class="filename">systemd-fsck@.service</code></p><p><code class="filename">systemd-fsck-root.service</code></p><p><code class="filename">/usr/lib/systemd/systemd-fsck</code></p></div><div class="refsect1"><a name="idm214190706880"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="filename">systemd-fsck@.service</code> and
+                <code class="filename">systemd-fsck-root.service</code> are
+                services responsible for file system checks. They are
+                instantiated for each device that is configured for
+                file system checking.
+                <code class="filename">systemd-fsck-root.service</code> is
+                responsible for file system checks on the root file
+                system, but in only if the root filesystem wasn't
+                checked in the initramfs.
+                <code class="filename">systemd-fsck@.service</code> is used for
+                all other file systems and for the root file system in
+                the initramfs.</p><p>Those services are started at boot if
+                <code class="option">passno</code> in
+                <code class="filename">/etc/fstab</code> for the file system is
+                set to a value greater than zero. The file system
+                check for root is performed before the other file
+                systems. Other file systems may be checked in
+                parallel, except when they are one the same rotating
+                disk.</p><p><code class="filename">systemd-fsck</code> does not know
+                any details about specific filesystems, and simply
+                executes file system checkers specific to each
+                filesystem type (<code class="filename">/sbin/fsck.*</code>).
+                This helper will decide if the filesystem should
+                actually be checked based on the time since last
+                check, number of mounts, unclean unmount, etc.</p><p><code class="filename">systemd-fsck</code> will forward
+                file system checking progress to the console. If a
+                file system check fails for a service without
+                <code class="option">nofail</code>, emergency mode is activated,
+                by isolating to
+                <code class="filename">emergency.target</code>.</p></div><div class="refsect1"><a name="idm214194586864"></a><h2 id="Kernel Command Line">Kernel Command Line<a class="headerlink" title="Permalink to this headline" href="#Kernel%20Command%20Line">¶</a></h2><p><code class="filename">systemd-fsck</code> understands
                 one kernel command line parameter:</p><div class="variablelist"><dl class="variablelist"><dt id="fsck.mode="><span class="term"><code class="varname">fsck.mode=</code></span><a class="headerlink" title="Permalink to this term" href="#fsck.mode=">¶</a></dt><dd><p>One of
                                 "<code class="literal">auto</code>",
                                 "<code class="literal">force</code>",
                                 </code>" will answer yes to all questions by
                                 fsck and "<code class="literal">no</code>" will answer no to
                                 all questions.
-                                </p></dd></dl></div></div><div class="refsect1"><a name="idm214189795280"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+                                </p></dd></dl></div></div><div class="refsect1"><a name="idm214194648592"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
                         <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
                         <a href="fsck.html"><span class="citerefentry"><span class="refentrytitle">fsck</span>(8)</span></a>,
-                        <a href="systemd-quotacheck.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-quotacheck.service</span>(8)</span></a>
+                        <a href="systemd-quotacheck.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-quotacheck.service</span>(8)</span></a>,
+                        <a href="fsck.btrfs.html"><span class="citerefentry"><span class="refentrytitle">fsck.btrfs</span>(8)</span></a>,
+                        <a href="fsck.cramfs.html"><span class="citerefentry"><span class="refentrytitle">fsck.cramfs</span>(8)</span></a>,
+                        <a href="fsck.ext4.html"><span class="citerefentry"><span class="refentrytitle">fsck.ext4</span>(8)</span></a>,
+                        <a href="fsck.fat.html"><span class="citerefentry"><span class="refentrytitle">fsck.fat</span>(8)</span></a>,
+                        <a href="fsck.hfsplus.html"><span class="citerefentry"><span class="refentrytitle">fsck.hfsplus</span>(8)</span></a>,
+                        <a href="fsck.minix.html"><span class="citerefentry"><span class="refentrytitle">fsck.minix</span>(8)</span></a>,
+                        <a href="fsck.ntfs.html"><span class="citerefentry"><span class="refentrytitle">fsck.ntfs</span>(8)</span></a>,
+                        <a href="fsck.xfs.html"><span class="citerefentry"><span class="refentrytitle">fsck.xfs</span>(8)</span></a>
                 </p></div></div></body></html>
index 393a383aba803b1450bc09da0dfdd5716cb82868..620237e6e1902bf5f779be64bd43ca0d426f1c8f 100644 (file)
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="systemd-fsck@.service"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>systemd-fsck@.service, systemd-fsck-root.service, systemd-fsck — File system checker logic</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><p><code class="filename">systemd-fsck@.service</code></p><p><code class="filename">systemd-fsck-root.service</code></p><p><code class="filename">/usr/lib/systemd/systemd-fsck</code></p></div><div class="refsect1"><a name="idm214189485840"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="filename">systemd-fsck@.service</code> is a
-                service responsible for file system checks. It is
-                instantiated for each device that requires a file
-                system
-                check. <code class="filename">systemd-fsck-root.service</code> is
-                responsible for file system checks on the root
-                file system. The root file system check is performed
-                before the other file systems. Either service is enabled
-                at boot if passno in <code class="filename">/etc/fstab</code> for
-                the file system is set to a value greater than zero.</p><p><code class="filename">systemd-fsck</code> will
-                forward file system checking progress to the
-                console. If a file system check fails, emergency mode
-                is activated, by isolating to
-                <code class="filename">emergency.target</code>.</p></div><div class="refsect1"><a name="idm214193594368"></a><h2 id="Kernel Command Line">Kernel Command Line<a class="headerlink" title="Permalink to this headline" href="#Kernel%20Command%20Line">¶</a></h2><p><code class="filename">systemd-fsck</code> understands
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="systemd-fsck@.service"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>systemd-fsck@.service, systemd-fsck-root.service, systemd-fsck — File system checker logic</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><p><code class="filename">systemd-fsck@.service</code></p><p><code class="filename">systemd-fsck-root.service</code></p><p><code class="filename">/usr/lib/systemd/systemd-fsck</code></p></div><div class="refsect1"><a name="idm214190706880"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="filename">systemd-fsck@.service</code> and
+                <code class="filename">systemd-fsck-root.service</code> are
+                services responsible for file system checks. They are
+                instantiated for each device that is configured for
+                file system checking.
+                <code class="filename">systemd-fsck-root.service</code> is
+                responsible for file system checks on the root file
+                system, but in only if the root filesystem wasn't
+                checked in the initramfs.
+                <code class="filename">systemd-fsck@.service</code> is used for
+                all other file systems and for the root file system in
+                the initramfs.</p><p>Those services are started at boot if
+                <code class="option">passno</code> in
+                <code class="filename">/etc/fstab</code> for the file system is
+                set to a value greater than zero. The file system
+                check for root is performed before the other file
+                systems. Other file systems may be checked in
+                parallel, except when they are one the same rotating
+                disk.</p><p><code class="filename">systemd-fsck</code> does not know
+                any details about specific filesystems, and simply
+                executes file system checkers specific to each
+                filesystem type (<code class="filename">/sbin/fsck.*</code>).
+                This helper will decide if the filesystem should
+                actually be checked based on the time since last
+                check, number of mounts, unclean unmount, etc.</p><p><code class="filename">systemd-fsck</code> will forward
+                file system checking progress to the console. If a
+                file system check fails for a service without
+                <code class="option">nofail</code>, emergency mode is activated,
+                by isolating to
+                <code class="filename">emergency.target</code>.</p></div><div class="refsect1"><a name="idm214194586864"></a><h2 id="Kernel Command Line">Kernel Command Line<a class="headerlink" title="Permalink to this headline" href="#Kernel%20Command%20Line">¶</a></h2><p><code class="filename">systemd-fsck</code> understands
                 one kernel command line parameter:</p><div class="variablelist"><dl class="variablelist"><dt id="fsck.mode="><span class="term"><code class="varname">fsck.mode=</code></span><a class="headerlink" title="Permalink to this term" href="#fsck.mode=">¶</a></dt><dd><p>One of
                                 "<code class="literal">auto</code>",
                                 "<code class="literal">force</code>",
                                 </code>" will answer yes to all questions by
                                 fsck and "<code class="literal">no</code>" will answer no to
                                 all questions.
-                                </p></dd></dl></div></div><div class="refsect1"><a name="idm214189795280"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+                                </p></dd></dl></div></div><div class="refsect1"><a name="idm214194648592"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
                         <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
                         <a href="fsck.html"><span class="citerefentry"><span class="refentrytitle">fsck</span>(8)</span></a>,
-                        <a href="systemd-quotacheck.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-quotacheck.service</span>(8)</span></a>
+                        <a href="systemd-quotacheck.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-quotacheck.service</span>(8)</span></a>,
+                        <a href="fsck.btrfs.html"><span class="citerefentry"><span class="refentrytitle">fsck.btrfs</span>(8)</span></a>,
+                        <a href="fsck.cramfs.html"><span class="citerefentry"><span class="refentrytitle">fsck.cramfs</span>(8)</span></a>,
+                        <a href="fsck.ext4.html"><span class="citerefentry"><span class="refentrytitle">fsck.ext4</span>(8)</span></a>,
+                        <a href="fsck.fat.html"><span class="citerefentry"><span class="refentrytitle">fsck.fat</span>(8)</span></a>,
+                        <a href="fsck.hfsplus.html"><span class="citerefentry"><span class="refentrytitle">fsck.hfsplus</span>(8)</span></a>,
+                        <a href="fsck.minix.html"><span class="citerefentry"><span class="refentrytitle">fsck.minix</span>(8)</span></a>,
+                        <a href="fsck.ntfs.html"><span class="citerefentry"><span class="refentrytitle">fsck.ntfs</span>(8)</span></a>,
+                        <a href="fsck.xfs.html"><span class="citerefentry"><span class="refentrytitle">fsck.xfs</span>(8)</span></a>
                 </p></div></div></body></html>
index 839bed3058f71c16b063407624c147b3cdc818ea..9e7f3c09e36a6d268b7e2a09ed686ef77e639729 100644 (file)
@@ -1,5 +1,5 @@
 '\" t
-.TH "SYSTEMD\-FSCK@\&.SERVICE" "8" "" "systemd 214" "systemd-fsck@.service"
+.TH "SYSTEMD\-FSCK@\&.SERVICE" "8" "" "systemd 215" "systemd-fsck@.service"
 .\" -----------------------------------------------------------------
 .\" * Define some portability stuff
 .\" -----------------------------------------------------------------
@@ -31,14 +31,26 @@ systemd\-fsck\-root\&.service
 .SH "DESCRIPTION"
 .PP
 systemd\-fsck@\&.service
-is a service responsible for file system checks\&. It is instantiated for each device that requires a file system check\&.
+and
 systemd\-fsck\-root\&.service
-is responsible for file system checks on the root file system\&. The root file system check is performed before the other file systems\&. Either service is enabled at boot if passno in
+are services responsible for file system checks\&. They are instantiated for each device that is configured for file system checking\&.
+systemd\-fsck\-root\&.service
+is responsible for file system checks on the root file system, but in only if the root filesystem wasn\*(Aqt checked in the initramfs\&.
+systemd\-fsck@\&.service
+is used for all other file systems and for the root file system in the initramfs\&.
+.PP
+Those services are started at boot if
+\fBpassno\fR
+in
 /etc/fstab
-for the file system is set to a value greater than zero\&.
+for the file system is set to a value greater than zero\&. The file system check for root is performed before the other file systems\&. Other file systems may be checked in parallel, except when they are one the same rotating disk\&.
+.PP
+systemd\-fsck
+does not know any details about specific filesystems, and simply executes file system checkers specific to each filesystem type (/sbin/fsck\&.*)\&. This helper will decide if the filesystem should actually be checked based on the time since last check, number of mounts, unclean unmount, etc\&.
 .PP
 systemd\-fsck
-will forward file system checking progress to the console\&. If a file system check fails, emergency mode is activated, by isolating to
+will forward file system checking progress to the console\&. If a file system check fails for a service without
+\fBnofail\fR, emergency mode is activated, by isolating to
 emergency\&.target\&.
 .SH "KERNEL COMMAND LINE"
 .PP
@@ -74,4 +86,12 @@ will answer no to all questions\&.
 .PP
 \fBsystemd\fR(1),
 \fBfsck\fR(8),
-\fBsystemd-quotacheck.service\fR(8)
+\fBsystemd-quotacheck.service\fR(8),
+\fBfsck.btrfs\fR(8),
+\fBfsck.cramfs\fR(8),
+\fBfsck.ext4\fR(8),
+\fBfsck.fat\fR(8),
+\fBfsck.hfsplus\fR(8),
+\fBfsck.minix\fR(8),
+\fBfsck.ntfs\fR(8),
+\fBfsck.xfs\fR(8)
index 393a383aba803b1450bc09da0dfdd5716cb82868..620237e6e1902bf5f779be64bd43ca0d426f1c8f 100644 (file)
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="systemd-fsck@.service"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>systemd-fsck@.service, systemd-fsck-root.service, systemd-fsck — File system checker logic</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><p><code class="filename">systemd-fsck@.service</code></p><p><code class="filename">systemd-fsck-root.service</code></p><p><code class="filename">/usr/lib/systemd/systemd-fsck</code></p></div><div class="refsect1"><a name="idm214189485840"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="filename">systemd-fsck@.service</code> is a
-                service responsible for file system checks. It is
-                instantiated for each device that requires a file
-                system
-                check. <code class="filename">systemd-fsck-root.service</code> is
-                responsible for file system checks on the root
-                file system. The root file system check is performed
-                before the other file systems. Either service is enabled
-                at boot if passno in <code class="filename">/etc/fstab</code> for
-                the file system is set to a value greater than zero.</p><p><code class="filename">systemd-fsck</code> will
-                forward file system checking progress to the
-                console. If a file system check fails, emergency mode
-                is activated, by isolating to
-                <code class="filename">emergency.target</code>.</p></div><div class="refsect1"><a name="idm214193594368"></a><h2 id="Kernel Command Line">Kernel Command Line<a class="headerlink" title="Permalink to this headline" href="#Kernel%20Command%20Line">¶</a></h2><p><code class="filename">systemd-fsck</code> understands
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="systemd-fsck@.service"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>systemd-fsck@.service, systemd-fsck-root.service, systemd-fsck — File system checker logic</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><p><code class="filename">systemd-fsck@.service</code></p><p><code class="filename">systemd-fsck-root.service</code></p><p><code class="filename">/usr/lib/systemd/systemd-fsck</code></p></div><div class="refsect1"><a name="idm214190706880"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="filename">systemd-fsck@.service</code> and
+                <code class="filename">systemd-fsck-root.service</code> are
+                services responsible for file system checks. They are
+                instantiated for each device that is configured for
+                file system checking.
+                <code class="filename">systemd-fsck-root.service</code> is
+                responsible for file system checks on the root file
+                system, but in only if the root filesystem wasn't
+                checked in the initramfs.
+                <code class="filename">systemd-fsck@.service</code> is used for
+                all other file systems and for the root file system in
+                the initramfs.</p><p>Those services are started at boot if
+                <code class="option">passno</code> in
+                <code class="filename">/etc/fstab</code> for the file system is
+                set to a value greater than zero. The file system
+                check for root is performed before the other file
+                systems. Other file systems may be checked in
+                parallel, except when they are one the same rotating
+                disk.</p><p><code class="filename">systemd-fsck</code> does not know
+                any details about specific filesystems, and simply
+                executes file system checkers specific to each
+                filesystem type (<code class="filename">/sbin/fsck.*</code>).
+                This helper will decide if the filesystem should
+                actually be checked based on the time since last
+                check, number of mounts, unclean unmount, etc.</p><p><code class="filename">systemd-fsck</code> will forward
+                file system checking progress to the console. If a
+                file system check fails for a service without
+                <code class="option">nofail</code>, emergency mode is activated,
+                by isolating to
+                <code class="filename">emergency.target</code>.</p></div><div class="refsect1"><a name="idm214194586864"></a><h2 id="Kernel Command Line">Kernel Command Line<a class="headerlink" title="Permalink to this headline" href="#Kernel%20Command%20Line">¶</a></h2><p><code class="filename">systemd-fsck</code> understands
                 one kernel command line parameter:</p><div class="variablelist"><dl class="variablelist"><dt id="fsck.mode="><span class="term"><code class="varname">fsck.mode=</code></span><a class="headerlink" title="Permalink to this term" href="#fsck.mode=">¶</a></dt><dd><p>One of
                                 "<code class="literal">auto</code>",
                                 "<code class="literal">force</code>",
                                 </code>" will answer yes to all questions by
                                 fsck and "<code class="literal">no</code>" will answer no to
                                 all questions.
-                                </p></dd></dl></div></div><div class="refsect1"><a name="idm214189795280"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+                                </p></dd></dl></div></div><div class="refsect1"><a name="idm214194648592"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
                         <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
                         <a href="fsck.html"><span class="citerefentry"><span class="refentrytitle">fsck</span>(8)</span></a>,
-                        <a href="systemd-quotacheck.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-quotacheck.service</span>(8)</span></a>
+                        <a href="systemd-quotacheck.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-quotacheck.service</span>(8)</span></a>,
+                        <a href="fsck.btrfs.html"><span class="citerefentry"><span class="refentrytitle">fsck.btrfs</span>(8)</span></a>,
+                        <a href="fsck.cramfs.html"><span class="citerefentry"><span class="refentrytitle">fsck.cramfs</span>(8)</span></a>,
+                        <a href="fsck.ext4.html"><span class="citerefentry"><span class="refentrytitle">fsck.ext4</span>(8)</span></a>,
+                        <a href="fsck.fat.html"><span class="citerefentry"><span class="refentrytitle">fsck.fat</span>(8)</span></a>,
+                        <a href="fsck.hfsplus.html"><span class="citerefentry"><span class="refentrytitle">fsck.hfsplus</span>(8)</span></a>,
+                        <a href="fsck.minix.html"><span class="citerefentry"><span class="refentrytitle">fsck.minix</span>(8)</span></a>,
+                        <a href="fsck.ntfs.html"><span class="citerefentry"><span class="refentrytitle">fsck.ntfs</span>(8)</span></a>,
+                        <a href="fsck.xfs.html"><span class="citerefentry"><span class="refentrytitle">fsck.xfs</span>(8)</span></a>
                 </p></div></div></body></html>
index afd8d9b5eaac13c00b17ebc49192c0a2a105eebe..ee66f3712d3a931f6de8796386fa1f6541b13593 100644 (file)
         <refsect1>
                 <title>Description</title>
 
-                <para><filename>systemd-fsck@.service</filename> is a
-                service responsible for file system checks. It is
-                instantiated for each device that requires a file
-                system
-                check. <filename>systemd-fsck-root.service</filename> is
-                responsible for file system checks on the root
-                file system. The root file system check is performed
-                before the other file systems. Either service is enabled
-                at boot if passno in <filename>/etc/fstab</filename> for
-                the file system is set to a value greater than zero.</para>
-
-                <para><filename>systemd-fsck</filename> will
-                forward file system checking progress to the
-                console. If a file system check fails, emergency mode
-                is activated, by isolating to
+                <para><filename>systemd-fsck@.service</filename> and
+                <filename>systemd-fsck-root.service</filename> are
+                services responsible for file system checks. They are
+                instantiated for each device that is configured for
+                file system checking.
+                <filename>systemd-fsck-root.service</filename> is
+                responsible for file system checks on the root file
+                system, but in only if the root filesystem wasn't
+                checked in the initramfs.
+                <filename>systemd-fsck@.service</filename> is used for
+                all other file systems and for the root file system in
+                the initramfs.</para>
+
+                <para>Those services are started at boot if
+                <option>passno</option> in
+                <filename>/etc/fstab</filename> for the file system is
+                set to a value greater than zero. The file system
+                check for root is performed before the other file
+                systems. Other file systems may be checked in
+                parallel, except when they are one the same rotating
+                disk.</para>
+
+                <para><filename>systemd-fsck</filename> does not know
+                any details about specific filesystems, and simply
+                executes file system checkers specific to each
+                filesystem type (<filename>/sbin/fsck.*</filename>).
+                This helper will decide if the filesystem should
+                actually be checked based on the time since last
+                check, number of mounts, unclean unmount, etc.</para>
+
+                <para><filename>systemd-fsck</filename> will forward
+                file system checking progress to the console. If a
+                file system check fails for a service without
+                <option>nofail</option>, emergency mode is activated,
+                by isolating to
                 <filename>emergency.target</filename>.</para>
         </refsect1>
 
                 <para>
                         <citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
                         <citerefentry><refentrytitle>fsck</refentrytitle><manvolnum>8</manvolnum></citerefentry>,
-                        <citerefentry><refentrytitle>systemd-quotacheck.service</refentrytitle><manvolnum>8</manvolnum></citerefentry>
+                        <citerefentry><refentrytitle>systemd-quotacheck.service</refentrytitle><manvolnum>8</manvolnum></citerefentry>,
+                        <citerefentry><refentrytitle>fsck.btrfs</refentrytitle><manvolnum>8</manvolnum></citerefentry>,
+                        <citerefentry><refentrytitle>fsck.cramfs</refentrytitle><manvolnum>8</manvolnum></citerefentry>,
+                        <citerefentry><refentrytitle>fsck.ext4</refentrytitle><manvolnum>8</manvolnum></citerefentry>,
+                        <citerefentry><refentrytitle>fsck.fat</refentrytitle><manvolnum>8</manvolnum></citerefentry>,
+                        <citerefentry><refentrytitle>fsck.hfsplus</refentrytitle><manvolnum>8</manvolnum></citerefentry>,
+                        <citerefentry><refentrytitle>fsck.minix</refentrytitle><manvolnum>8</manvolnum></citerefentry>,
+                        <citerefentry><refentrytitle>fsck.ntfs</refentrytitle><manvolnum>8</manvolnum></citerefentry>,
+                        <citerefentry><refentrytitle>fsck.xfs</refentrytitle><manvolnum>8</manvolnum></citerefentry>
                 </para>
         </refsect1>
 
index d387c5563cb4595ee66ba2fa08ef465bc1a963af..2d919574fe5d40459578ec55963f9ed985c32f5f 100644 (file)
@@ -1,5 +1,5 @@
 '\" t
-.TH "SYSTEMD\-FSTAB\-GENERATOR" "8" "" "systemd 214" "systemd-fstab-generator"
+.TH "SYSTEMD\-FSTAB\-GENERATOR" "8" "" "systemd 215" "systemd-fstab-generator"
 .\" -----------------------------------------------------------------
 .\" * Define some portability stuff
 .\" -----------------------------------------------------------------
index d0ed8bea29fd0a815f81d7ba668f1f29d0755b1b..18f7f8c9feb2660e7f0a15fa22fa4f6fb8883b65 100644 (file)
@@ -19,7 +19,7 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="systemd-fstab-generator"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>systemd-fstab-generator — Unit generator for /etc/fstab</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><p><code class="filename">/usr/lib/systemd/system-generators/systemd-fstab-generator</code></p></div><div class="refsect1"><a name="idm214189604656"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="filename">systemd-fstab-generator</code> is
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="systemd-fstab-generator"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>systemd-fstab-generator — Unit generator for /etc/fstab</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><p><code class="filename">/usr/lib/systemd/system-generators/systemd-fstab-generator</code></p></div><div class="refsect1"><a name="idm214184883232"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="filename">systemd-fstab-generator</code> is
                 a generator that translates
                 <code class="filename">/etc/fstab</code> (see
                 <a href="fstab.html"><span class="citerefentry"><span class="refentrytitle">fstab</span>(5)</span></a>
@@ -38,7 +38,7 @@
                 <code class="filename">/etc/fstab</code> mount options this
                 generator understands.</p><p><code class="filename">systemd-fstab-generator</code>
                 implements the <a class="ulink" href="http://www.freedesktop.org/wiki/Software/systemd/Generators" target="_top">generator
-                specification</a>.</p></div><div class="refsect1"><a name="idm214193822704"></a><h2 id="Kernel Command Line">Kernel Command Line<a class="headerlink" title="Permalink to this headline" href="#Kernel%20Command%20Line">¶</a></h2><p><code class="filename">systemd-fstab-generator</code> understands
+                specification</a>.</p></div><div class="refsect1"><a name="idm214188139680"></a><h2 id="Kernel Command Line">Kernel Command Line<a class="headerlink" title="Permalink to this headline" href="#Kernel%20Command%20Line">¶</a></h2><p><code class="filename">systemd-fstab-generator</code> understands
                 the following kernel command line parameters:</p><div class="variablelist"><dl class="variablelist"><dt id="fstab="><span class="term"><code class="varname">fstab=</code>, </span><span class="term"><code class="varname">rd.fstab=</code></span><a class="headerlink" title="Permalink to this term" href="#fstab=">¶</a></dt><dd><p>Takes a boolean
                                 argument. Defaults to
                                 "<code class="literal">yes</code>". If
@@ -50,7 +50,7 @@
                                 (initrd) while
                                 <code class="varname">fstab=</code> is
                                 honored by both the main system and
-                                the initrd.  </p></dd></dl></div></div><div class="refsect1"><a name="idm214190030224"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+                                the initrd.  </p></dd></dl></div></div><div class="refsect1"><a name="idm214188037552"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
                         <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
                         <a href="fstab.html"><span class="citerefentry"><span class="refentrytitle">fstab</span>(5)</span></a>,
                         <a href="systemd.mount.html"><span class="citerefentry"><span class="refentrytitle">systemd.mount</span>(5)</span></a>,
index 760c7c141cc1bd066f2680e81479b5ee8767f32b..4f2c22bb95687b7f9773e06435eae4966af6ab3a 100644 (file)
@@ -1,5 +1,5 @@
 '\" t
-.TH "SYSTEMD\-GETTY\-GENERATOR" "8" "" "systemd 214" "systemd-getty-generator"
+.TH "SYSTEMD\-GETTY\-GENERATOR" "8" "" "systemd 215" "systemd-getty-generator"
 .\" -----------------------------------------------------------------
 .\" * Define some portability stuff
 .\" -----------------------------------------------------------------
index 7585708651124d9dc0fcd3a8f0f013c3371ae697..be3ff82dbb7ce5efb5f6974af13aca23f8bd5083 100644 (file)
@@ -19,8 +19,8 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="systemd-getty-generator"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>systemd-getty-generator — Generator for enabling getty instances on
-                the console</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><p><code class="filename">/usr/lib/systemd/system-generators/systemd-getty-generator</code></p></div><div class="refsect1"><a name="idm214167134000"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="filename">systemd-getty-generator</code> is
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="systemd-getty-generator"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>systemd-getty-generator — Generator for enabling getty instances on
+                the console</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><p><code class="filename">/usr/lib/systemd/system-generators/systemd-getty-generator</code></p></div><div class="refsect1"><a name="idm214186861600"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="filename">systemd-getty-generator</code> is
                 a generator that automatically instantiates
                 <code class="filename">serial-getty@.service</code> on the
                 kernel console <code class="filename">/dev/console</code> if
@@ -46,7 +46,7 @@
                 specification</a>.</p><p>Further information about configuration of
                 gettys you may find in <a class="ulink" href="http://0pointer.de/blog/projects/serial-console.html" target="_top">systemd
                 for Administrators, Part XVI: Gettys on Serial
-                Consoles (and Elsewhere)</a>.</p></div><div class="refsect1"><a name="idm214167565424"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+                Consoles (and Elsewhere)</a>.</p></div><div class="refsect1"><a name="idm214190115808"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
                         <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
                         <a href="agetty.html"><span class="citerefentry"><span class="refentrytitle">agetty</span>(8)</span></a>
                 </p></div></div></body></html>
index a198a305eaba5dcfe8dd5e1e701f089a65a12751..d5b25bb1aed7416bff601a537fe3463ca62d5ae5 100644 (file)
@@ -1,5 +1,5 @@
 '\" t
-.TH "SYSTEMD\-GPT\-AUTO\-GENERATOR" "8" "" "systemd 214" "systemd-gpt-auto-generator"
+.TH "SYSTEMD\-GPT\-AUTO\-GENERATOR" "8" "" "systemd 215" "systemd-gpt-auto-generator"
 .\" -----------------------------------------------------------------
 .\" * Define some portability stuff
 .\" -----------------------------------------------------------------
index e7cfe5eb63fdc96b0f935c9aaa38a1ef960424f2..2acc82ece1b36592d52cab22e0d2886685021b50 100644 (file)
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="systemd-gpt-auto-generator"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>systemd-gpt-auto-generator — Generator for automatically discovering
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="systemd-gpt-auto-generator"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>systemd-gpt-auto-generator — Generator for automatically discovering
                 and mounting root, <code class="filename">/home</code> and
                 <code class="filename">/srv</code> partitions, as well as
                 discovering and enabling swap partitions, based on GPT
-                partition type GUIDs.</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><p><code class="filename">/usr/lib/systemd/system-generators/systemd-gpt-auto-generator</code></p></div><div class="refsect1"><a name="idm214181526112"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="filename">systemd-gpt-auto-generator</code>
+                partition type GUIDs.</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><p><code class="filename">/usr/lib/systemd/system-generators/systemd-gpt-auto-generator</code></p></div><div class="refsect1"><a name="idm214198372016"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="filename">systemd-gpt-auto-generator</code>
                 is a unit generator that automatically discovers root,
                 <code class="filename">/home</code>, <code class="filename">/srv</code>
                 and swap partitions and creates mount and swap units
@@ -47,7 +47,7 @@
                 in <code class="filename">/etc/fstab</code> or suchlike
                 unnecessary.</p><p>This generator looks for the partitions based on
                 their partition type GUID. The following partition
-                type GUIDs are identified:</p><div class="table"><a name="idm214181423392"></a><p class="title"><b>Table 1. Partition Type GUIDs</b></p><div class="table-contents"><table summary="Partition Type GUIDs" border="1"><colgroup><col align="left" class="guid"><col align="left" class="name"><col align="left" class="explanation"></colgroup><thead><tr><th align="left">Partition Type GUID</th><th align="left">Name</th><th align="left">Explanation</th></tr></thead><tbody><tr><td align="left">44479540-f297-41b2-9af7-d131d5f0458a</td><td align="left"><code class="filename">Root Partition (x86)</code></td><td align="left">On 32-bit x86 systems, the first x86 root partition on the disk the EFI ESP is located on is mounted to the root directory <code class="filename">/</code>.</td></tr><tr><td align="left">4f68bce3-e8cd-4db1-96e7-fbcaf984b709</td><td align="left"><code class="filename">Root Partition (x86-64)</code></td><td align="left">On 64-bit x86 systems, the first x86-64 root partition on the disk the EFI ESP is located on is mounted to the root directory <code class="filename">/</code>.</td></tr><tr><td align="left">69dad710-2ce4-4e3c-b16c-21a1d49abed3</td><td align="left"><code class="filename">Root Partition (32-bit ARM)</code></td><td align="left">On 32-bit ARM systems, the first ARM root partition on the disk the EFI ESP is located on is mounted to the root directory <code class="filename">/</code>.</td></tr><tr><td align="left">b921b045-1df0-41c3-af44-4c6f280d3fae</td><td align="left"><code class="filename">Root Partition (64-bit ARM)</code></td><td align="left">On 64-bit ARM systems, the first ARM root partition on the disk the EFI ESP is located on is mounted to the root directory <code class="filename">/</code>.</td></tr><tr><td align="left">933ac7e1-2eb4-4f13-b844-0e14e2aef915</td><td align="left">Home Partition</td><td align="left">The first home partition on the disk the root partition is located on is mounted to <code class="filename">/home</code>.</td></tr><tr><td align="left">3b8f8425-20e0-4f3b-907f-1a25a76f98e8</td><td align="left">Server Data Partition</td><td align="left">The first server data partition on the disk the root partition is located on is mounted to <code class="filename">/srv</code>.</td></tr><tr><td align="left">0657fd6d-a4ab-43c4-84e5-0933c84b4f4f</td><td align="left">Swap</td><td align="left">All swap partitions located on the disk the root partition is located on are enabled.</td></tr></tbody></table></div></div><br class="table-break"><p>The <code class="filename">/home</code> and
+                type GUIDs are identified:</p><div class="table"><a name="idm214198412432"></a><p class="title"><b>Table 1. Partition Type GUIDs</b></p><div class="table-contents"><table summary="Partition Type GUIDs" border="1"><colgroup><col align="left" class="guid"><col align="left" class="name"><col align="left" class="explanation"></colgroup><thead><tr><th align="left">Partition Type GUID</th><th align="left">Name</th><th align="left">Explanation</th></tr></thead><tbody><tr><td align="left">44479540-f297-41b2-9af7-d131d5f0458a</td><td align="left"><code class="filename">Root Partition (x86)</code></td><td align="left">On 32-bit x86 systems, the first x86 root partition on the disk the EFI ESP is located on is mounted to the root directory <code class="filename">/</code>.</td></tr><tr><td align="left">4f68bce3-e8cd-4db1-96e7-fbcaf984b709</td><td align="left"><code class="filename">Root Partition (x86-64)</code></td><td align="left">On 64-bit x86 systems, the first x86-64 root partition on the disk the EFI ESP is located on is mounted to the root directory <code class="filename">/</code>.</td></tr><tr><td align="left">69dad710-2ce4-4e3c-b16c-21a1d49abed3</td><td align="left"><code class="filename">Root Partition (32-bit ARM)</code></td><td align="left">On 32-bit ARM systems, the first ARM root partition on the disk the EFI ESP is located on is mounted to the root directory <code class="filename">/</code>.</td></tr><tr><td align="left">b921b045-1df0-41c3-af44-4c6f280d3fae</td><td align="left"><code class="filename">Root Partition (64-bit ARM)</code></td><td align="left">On 64-bit ARM systems, the first ARM root partition on the disk the EFI ESP is located on is mounted to the root directory <code class="filename">/</code>.</td></tr><tr><td align="left">933ac7e1-2eb4-4f13-b844-0e14e2aef915</td><td align="left">Home Partition</td><td align="left">The first home partition on the disk the root partition is located on is mounted to <code class="filename">/home</code>.</td></tr><tr><td align="left">3b8f8425-20e0-4f3b-907f-1a25a76f98e8</td><td align="left">Server Data Partition</td><td align="left">The first server data partition on the disk the root partition is located on is mounted to <code class="filename">/srv</code>.</td></tr><tr><td align="left">0657fd6d-a4ab-43c4-84e5-0933c84b4f4f</td><td align="left">Swap</td><td align="left">All swap partitions located on the disk the root partition is located on are enabled.</td></tr></tbody></table></div></div><br class="table-break"><p>The <code class="filename">/home</code> and
                 <code class="filename">/srv</code> partitions may be encrypted
                 in LUKS format. In this case a device mapper device is
                 set up under the names
@@ -63,7 +63,7 @@
                 default subvolumes on them, using <span class="command"><strong>btrfs
                 subvolume set-default</strong></span>.</p><p><code class="filename">systemd-gpt-auto-generator</code>
                 implements the <a class="ulink" href="http://www.freedesktop.org/wiki/Software/systemd/Generators" target="_top">Generator
-                Specification</a>.</p></div><div class="refsect1"><a name="idm214185283680"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+                Specification</a>.</p></div><div class="refsect1"><a name="idm214198458240"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
                         <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
                         <a href="systemd.mount.html"><span class="citerefentry"><span class="refentrytitle">systemd.mount</span>(5)</span></a>,
                         <a href="systemd.swap.html"><span class="citerefentry"><span class="refentrytitle">systemd.swap</span>(5)</span></a>,
index c33284ace023d7222a45b253cfc30fd3ec04c392..b0613e9b2533f6095f59cd88afd71cd52563938b 100644 (file)
@@ -1,5 +1,5 @@
 '\" t
-.TH "SYSTEMD\-HALT\&.SERVICE" "8" "" "systemd 214" "systemd-halt.service"
+.TH "SYSTEMD\-HALT\&.SERVICE" "8" "" "systemd 215" "systemd-halt.service"
 .\" -----------------------------------------------------------------
 .\" * Define some portability stuff
 .\" -----------------------------------------------------------------
index b03dd784bdca665cc3e5a1877c722055e18db837..4a22e8c9fc16e31eab8579fee56de6f97e42887b 100644 (file)
@@ -19,7 +19,7 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="systemd-halt.service"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>systemd-halt.service, systemd-poweroff.service, systemd-reboot.service, systemd-kexec.service, systemd-shutdown — System shutdown logic</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><p><code class="filename">systemd-halt.service</code></p><p><code class="filename">systemd-poweroff.service</code></p><p><code class="filename">systemd-reboot.service</code></p><p><code class="filename">systemd-kexec.service</code></p><p><code class="filename">/usr/lib/systemd/systemd-shutdown</code></p></div><div class="refsect1"><a name="idm214170881184"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="filename">systemd-halt.service</code> is a
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="systemd-halt.service"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>systemd-halt.service, systemd-poweroff.service, systemd-reboot.service, systemd-kexec.service, systemd-shutdown — System shutdown logic</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><p><code class="filename">systemd-halt.service</code></p><p><code class="filename">systemd-poweroff.service</code></p><p><code class="filename">systemd-reboot.service</code></p><p><code class="filename">systemd-kexec.service</code></p><p><code class="filename">/usr/lib/systemd/systemd-shutdown</code></p></div><div class="refsect1"><a name="idm214183037312"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="filename">systemd-halt.service</code> is a
                 system service that is pulled in by
                 <code class="filename">halt.target</code> and is responsible
                 for the actual system halt. Similarly,
@@ -57,7 +57,7 @@
                 related units) should never be executed
                 directly. Instead, trigger system shutdown with a
                 command such as "<code class="literal">systemctl halt</code>" or
-                suchlike.</p></div><div class="refsect1"><a name="idm214167153872"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+                suchlike.</p></div><div class="refsect1"><a name="idm214183155536"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
                         <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
                         <a href="systemctl.html"><span class="citerefentry"><span class="refentrytitle">systemctl</span>(1)</span></a>,
                         <a href="systemd.special.html"><span class="citerefentry"><span class="refentrytitle">systemd.special</span>(7)</span></a>,
index 027b233c042675bb23c675ca2fd407ecc08e95d8..854aa8358db1a2e9d7b3422eff57678fa1e24f0d 100644 (file)
@@ -19,7 +19,7 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="systemd-suspend.service"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>systemd-suspend.service, systemd-hibernate.service, systemd-hybrid-sleep.service, systemd-sleep — System sleep state logic</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><p><code class="filename">systemd-suspend.service</code></p><p><code class="filename">systemd-hibernate.service</code></p><p><code class="filename">systemd-hybrid-sleep.service</code></p><p><code class="filename">/usr/lib/systemd/systemd-sleep</code></p></div><div class="refsect1"><a name="idm214190297200"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="filename">systemd-suspend.service</code> is
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="systemd-suspend.service"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>systemd-suspend.service, systemd-hibernate.service, systemd-hybrid-sleep.service, systemd-sleep — System sleep state logic</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><p><code class="filename">systemd-suspend.service</code></p><p><code class="filename">systemd-hibernate.service</code></p><p><code class="filename">systemd-hybrid-sleep.service</code></p><p><code class="filename">/usr/lib/systemd/systemd-sleep</code></p></div><div class="refsect1"><a name="idm214187249136"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="filename">systemd-suspend.service</code> is
                 a system service that is pulled in by
                 <code class="filename">suspend.target</code> and is responsible
                 for the actual system suspend. Similarly,
                 where can be configured in the "<code class="literal">[Sleep]</code>"
                 section of <code class="filename">/etc/systemd/sleep.conf</code>.
                 See <a href="systemd-sleep.conf.html"><span class="citerefentry"><span class="refentrytitle">systemd-sleep.conf</span>(5)</span></a>.
-                </p></div><div class="refsect1"><a name="idm214194175168"></a><h2 id="Options">Options<a class="headerlink" title="Permalink to this headline" href="#Options">¶</a></h2><p><span class="command"><strong>systemd-sleep</strong></span> understands the
+                </p></div><div class="refsect1"><a name="idm214191127792"></a><h2 id="Options">Options<a class="headerlink" title="Permalink to this headline" href="#Options">¶</a></h2><p><span class="command"><strong>systemd-sleep</strong></span> understands the
                 following commands:</p><div class="variablelist"><dl class="variablelist"><dt id="-h"><span class="term"><code class="option">-h</code>, </span><span class="term"><code class="option">--help</code></span><a class="headerlink" title="Permalink to this term" href="#-h">¶</a></dt><dd><p><a name="help-text"></a>Print a short help text and exit.
     </p></dd><dt id="--version"><span class="term"><code class="option">--version</code></span><a class="headerlink" title="Permalink to this term" href="#--version">¶</a></dt><dd><p><a name="version-text"></a>Print a short version string and exit.</p></dd><dt id="suspend"><span class="term"><code class="option">suspend</code>, </span><span class="term"><code class="option">hibernate</code>, </span><span class="term"><code class="option">hybrid-sleep</code></span><a class="headerlink" title="Permalink to this term" href="#suspend">¶</a></dt><dd><p>Suspend, hibernate, or
-                                put the system to hybrid sleep.</p></dd></dl></div></div><div class="refsect1"><a name="idm214194168640"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+                                put the system to hybrid sleep.</p></dd></dl></div></div><div class="refsect1"><a name="idm214191121168"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
                         <a href="systemd-sleep.conf.html"><span class="citerefentry"><span class="refentrytitle">systemd-sleep.conf</span>(5)</span></a>,
                         <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
                         <a href="systemctl.html"><span class="citerefentry"><span class="refentrytitle">systemctl</span>(1)</span></a>,
index 5f59fabf1e98ed118215b8643e686da5ca8289f1..e5cf0a077425db02ba7425632f2e6cb73e3b721e 100644 (file)
@@ -19,7 +19,7 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="systemd-hostnamed.service"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>systemd-hostnamed.service, systemd-hostnamed — Host name bus mechanism</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><p><code class="filename">systemd-hostnamed.service</code></p><p><code class="filename">/usr/lib/systemd/systemd-hostnamed</code></p></div><div class="refsect1"><a name="idm214194607904"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="filename">systemd-hostnamed</code> is a system
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="systemd-hostnamed.service"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>systemd-hostnamed.service, systemd-hostnamed — Host name bus mechanism</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><p><code class="filename">systemd-hostnamed.service</code></p><p><code class="filename">/usr/lib/systemd/systemd-hostnamed</code></p></div><div class="refsect1"><a name="idm214196354864"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="filename">systemd-hostnamed</code> is a system
                 service that may be used as a mechanism to change the
                 system's hostname. <code class="filename">systemd-hostnamed</code> is
                 automatically activated on request and terminates
@@ -28,7 +28,7 @@
                 is a command-line client to this service.</p><p>See the <a class="ulink" href="http://www.freedesktop.org/wiki/Software/systemd/hostnamed" target="_top">
                 developer documentation</a> for information about
                 the APIs <code class="filename">systemd-hostnamed</code>
-                provides.</p></div><div class="refsect1"><a name="idm214190793584"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+                provides.</p></div><div class="refsect1"><a name="idm214194413056"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
                         <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
                         <a href="hostname.html"><span class="citerefentry"><span class="refentrytitle">hostname</span>(5)</span></a>,
                         <a href="machine-info.html"><span class="citerefentry"><span class="refentrytitle">machine-info</span>(5)</span></a>,
index 7294d8e511672498a031985f26c89eefea510a2c..bddca889e133fb7c43813256df17d619704e1804 100644 (file)
@@ -1,5 +1,5 @@
 '\" t
-.TH "SYSTEMD\-HOSTNAMED\&.SERVICE" "8" "" "systemd 214" "systemd-hostnamed.service"
+.TH "SYSTEMD\-HOSTNAMED\&.SERVICE" "8" "" "systemd 215" "systemd-hostnamed.service"
 .\" -----------------------------------------------------------------
 .\" * Define some portability stuff
 .\" -----------------------------------------------------------------
index 5f59fabf1e98ed118215b8643e686da5ca8289f1..e5cf0a077425db02ba7425632f2e6cb73e3b721e 100644 (file)
@@ -19,7 +19,7 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="systemd-hostnamed.service"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>systemd-hostnamed.service, systemd-hostnamed — Host name bus mechanism</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><p><code class="filename">systemd-hostnamed.service</code></p><p><code class="filename">/usr/lib/systemd/systemd-hostnamed</code></p></div><div class="refsect1"><a name="idm214194607904"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="filename">systemd-hostnamed</code> is a system
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="systemd-hostnamed.service"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>systemd-hostnamed.service, systemd-hostnamed — Host name bus mechanism</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><p><code class="filename">systemd-hostnamed.service</code></p><p><code class="filename">/usr/lib/systemd/systemd-hostnamed</code></p></div><div class="refsect1"><a name="idm214196354864"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="filename">systemd-hostnamed</code> is a system
                 service that may be used as a mechanism to change the
                 system's hostname. <code class="filename">systemd-hostnamed</code> is
                 automatically activated on request and terminates
@@ -28,7 +28,7 @@
                 is a command-line client to this service.</p><p>See the <a class="ulink" href="http://www.freedesktop.org/wiki/Software/systemd/hostnamed" target="_top">
                 developer documentation</a> for information about
                 the APIs <code class="filename">systemd-hostnamed</code>
-                provides.</p></div><div class="refsect1"><a name="idm214190793584"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+                provides.</p></div><div class="refsect1"><a name="idm214194413056"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
                         <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
                         <a href="hostname.html"><span class="citerefentry"><span class="refentrytitle">hostname</span>(5)</span></a>,
                         <a href="machine-info.html"><span class="citerefentry"><span class="refentrytitle">machine-info</span>(5)</span></a>,
index 027b233c042675bb23c675ca2fd407ecc08e95d8..854aa8358db1a2e9d7b3422eff57678fa1e24f0d 100644 (file)
@@ -19,7 +19,7 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="systemd-suspend.service"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>systemd-suspend.service, systemd-hibernate.service, systemd-hybrid-sleep.service, systemd-sleep — System sleep state logic</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><p><code class="filename">systemd-suspend.service</code></p><p><code class="filename">systemd-hibernate.service</code></p><p><code class="filename">systemd-hybrid-sleep.service</code></p><p><code class="filename">/usr/lib/systemd/systemd-sleep</code></p></div><div class="refsect1"><a name="idm214190297200"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="filename">systemd-suspend.service</code> is
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="systemd-suspend.service"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>systemd-suspend.service, systemd-hibernate.service, systemd-hybrid-sleep.service, systemd-sleep — System sleep state logic</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><p><code class="filename">systemd-suspend.service</code></p><p><code class="filename">systemd-hibernate.service</code></p><p><code class="filename">systemd-hybrid-sleep.service</code></p><p><code class="filename">/usr/lib/systemd/systemd-sleep</code></p></div><div class="refsect1"><a name="idm214187249136"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="filename">systemd-suspend.service</code> is
                 a system service that is pulled in by
                 <code class="filename">suspend.target</code> and is responsible
                 for the actual system suspend. Similarly,
                 where can be configured in the "<code class="literal">[Sleep]</code>"
                 section of <code class="filename">/etc/systemd/sleep.conf</code>.
                 See <a href="systemd-sleep.conf.html"><span class="citerefentry"><span class="refentrytitle">systemd-sleep.conf</span>(5)</span></a>.
-                </p></div><div class="refsect1"><a name="idm214194175168"></a><h2 id="Options">Options<a class="headerlink" title="Permalink to this headline" href="#Options">¶</a></h2><p><span class="command"><strong>systemd-sleep</strong></span> understands the
+                </p></div><div class="refsect1"><a name="idm214191127792"></a><h2 id="Options">Options<a class="headerlink" title="Permalink to this headline" href="#Options">¶</a></h2><p><span class="command"><strong>systemd-sleep</strong></span> understands the
                 following commands:</p><div class="variablelist"><dl class="variablelist"><dt id="-h"><span class="term"><code class="option">-h</code>, </span><span class="term"><code class="option">--help</code></span><a class="headerlink" title="Permalink to this term" href="#-h">¶</a></dt><dd><p><a name="help-text"></a>Print a short help text and exit.
     </p></dd><dt id="--version"><span class="term"><code class="option">--version</code></span><a class="headerlink" title="Permalink to this term" href="#--version">¶</a></dt><dd><p><a name="version-text"></a>Print a short version string and exit.</p></dd><dt id="suspend"><span class="term"><code class="option">suspend</code>, </span><span class="term"><code class="option">hibernate</code>, </span><span class="term"><code class="option">hybrid-sleep</code></span><a class="headerlink" title="Permalink to this term" href="#suspend">¶</a></dt><dd><p>Suspend, hibernate, or
-                                put the system to hybrid sleep.</p></dd></dl></div></div><div class="refsect1"><a name="idm214194168640"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+                                put the system to hybrid sleep.</p></dd></dl></div></div><div class="refsect1"><a name="idm214191121168"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
                         <a href="systemd-sleep.conf.html"><span class="citerefentry"><span class="refentrytitle">systemd-sleep.conf</span>(5)</span></a>,
                         <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
                         <a href="systemctl.html"><span class="citerefentry"><span class="refentrytitle">systemctl</span>(1)</span></a>,
index 124dfb539febf74c520d7e6db8603ebd3d72e1f4..81964bbad2b8406307a01f4242fb067680775f55 100644 (file)
@@ -1,5 +1,5 @@
 '\" t
-.TH "SYSTEMD\-INHIBIT" "1" "" "systemd 214" "systemd-inhibit"
+.TH "SYSTEMD\-INHIBIT" "1" "" "systemd 215" "systemd-inhibit"
 .\" -----------------------------------------------------------------
 .\" * Define some portability stuff
 .\" -----------------------------------------------------------------
index 1b266782904546aaa730a3891ea20744525d2ec2..911459fcf037a85d5215f27564b22ee2a44e46f6 100644 (file)
@@ -19,7 +19,7 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="systemd-inhibit"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>systemd-inhibit — Execute a program with an inhibition lock taken</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="cmdsynopsis"><p><code class="command">systemd-inhibit [OPTIONS...]  [COMMAND]  [ARGUMENTS...]</code> </p></div><div class="cmdsynopsis"><p><code class="command">systemd-inhibit [OPTIONS...] --list</code> </p></div></div><div class="refsect1"><a name="idm214188217008"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><span class="command"><strong>systemd-inhibit</strong></span> may be used
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="systemd-inhibit"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>systemd-inhibit — Execute a program with an inhibition lock taken</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="cmdsynopsis"><p><code class="command">systemd-inhibit [OPTIONS...]  [COMMAND]  [ARGUMENTS...]</code> </p></div><div class="cmdsynopsis"><p><code class="command">systemd-inhibit [OPTIONS...] --list</code> </p></div></div><div class="refsect1"><a name="idm214188595296"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><span class="command"><strong>systemd-inhibit</strong></span> may be used
                 to execute a program with a shutdown, sleep or idle
                 inhibitor lock taken. The lock will be acquired before
                 the specified command line is executed and released
@@ -29,7 +29,7 @@
                 to avoid system suspends while an optical disc is
                 being recorded, or similar operations that should not
                 be interrupted.</p><p>For more information see the <a class="ulink" href="http://www.freedesktop.org/wiki/Software/systemd/inhibit" target="_top">Inhibitor
-                Lock Developer Documentation</a>.</p></div><div class="refsect1"><a name="idm214188213200"></a><h2 id="Options">Options<a class="headerlink" title="Permalink to this headline" href="#Options">¶</a></h2><p>The following options are understood:</p><div class="variablelist"><dl class="variablelist"><dt id="--what="><span class="term"><code class="option">--what=</code></span><a class="headerlink" title="Permalink to this term" href="#--what=">¶</a></dt><dd><p>Takes a colon-separated
+                Lock Developer Documentation</a>.</p></div><div class="refsect1"><a name="idm214188640000"></a><h2 id="Options">Options<a class="headerlink" title="Permalink to this headline" href="#Options">¶</a></h2><p>The following options are understood:</p><div class="variablelist"><dl class="variablelist"><dt id="--what="><span class="term"><code class="option">--what=</code></span><a class="headerlink" title="Permalink to this term" href="#--what=">¶</a></dt><dd><p>Takes a colon-separated
                                 list of one or more
                                 operations to inhibit:
                                 "<code class="literal">shutdown</code>",
                                 "<code class="literal">shutdown</code>".</p></dd><dt id="--list"><span class="term"><code class="option">--list</code></span><a class="headerlink" title="Permalink to this term" href="#--list">¶</a></dt><dd><p>Lists all active
                                 inhibition locks instead of acquiring
                                 one.</p></dd><dt id="-h"><span class="term"><code class="option">-h</code>, </span><span class="term"><code class="option">--help</code></span><a class="headerlink" title="Permalink to this term" href="#-h">¶</a></dt><dd><p><a name="help-text"></a>Print a short help text and exit.
-    </p></dd><dt id="--version"><span class="term"><code class="option">--version</code></span><a class="headerlink" title="Permalink to this term" href="#--version">¶</a></dt><dd><p><a name="version-text"></a>Print a short version string and exit.</p></dd></dl></div></div><div class="refsect1"><a name="idm214192085792"></a><h2 id="Exit status">Exit status<a class="headerlink" title="Permalink to this headline" href="#Exit%20status">¶</a></h2><p>Returns the exit status of the executed program.</p></div><div class="refsect1"><a name="idm214192084608"></a><h2 id="Example">Example<a class="headerlink" title="Permalink to this headline" href="#Example">¶</a></h2><pre class="programlisting"># systemd-inhibit wodim foobar.iso</pre><p>This burns the ISO image
+    </p></dd><dt id="--version"><span class="term"><code class="option">--version</code></span><a class="headerlink" title="Permalink to this term" href="#--version">¶</a></dt><dd><p><a name="version-text"></a>Print a short version string and exit.</p></dd></dl></div></div><div class="refsect1"><a name="idm214188694752"></a><h2 id="Exit status">Exit status<a class="headerlink" title="Permalink to this headline" href="#Exit%20status">¶</a></h2><p>Returns the exit status of the executed program.</p></div><div class="refsect1"><a name="idm214188693568"></a><h2 id="Example">Example<a class="headerlink" title="Permalink to this headline" href="#Example">¶</a></h2><pre class="programlisting"># systemd-inhibit wodim foobar.iso</pre><p>This burns the ISO image
                 <code class="filename">foobar.iso</code> on a CD using
                 <a href="wodim.html"><span class="citerefentry"><span class="refentrytitle">wodim</span>(1)</span></a>,
                 and inhibits system sleeping, shutdown and idle while
-                doing so.</p></div><div class="refsect1"><a name="idm214192081120"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+                doing so.</p></div><div class="refsect1"><a name="idm214188690080"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
                         <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
                         <a href="logind.conf.html"><span class="citerefentry"><span class="refentrytitle">logind.conf</span>(5)</span></a>
                 </p></div></div></body></html>
index 2cfa395788470548ef5a3d048b944c55198e36d1..47264459929e16978536676f713d8f31d45a72d0 100644 (file)
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="systemd-initctl.service"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>systemd-initctl.service, systemd-initctl.socket, systemd-initctl — /dev/initctl compatibility</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><p><code class="filename">systemd-initctl.service</code></p><p><code class="filename">systemd-initctl.socket</code></p><p><code class="filename">/usr/lib/systemd/systemd-initctl</code></p></div><div class="refsect1"><a name="idm214186204864"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="filename">systemd-initctl</code> is a system
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="systemd-initctl.service"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>systemd-initctl.service, systemd-initctl.socket, systemd-initctl — /dev/initctl compatibility</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><p><code class="filename">systemd-initctl.service</code></p><p><code class="filename">systemd-initctl.socket</code></p><p><code class="filename">/usr/lib/systemd/systemd-initctl</code></p></div><div class="refsect1"><a name="idm214170800944"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="filename">systemd-initctl</code> is a system
                 service that implements compatibility with the
                 <code class="filename">/dev/initctl</code> FIFO file system
                 object, as implemented by the SysV init system. <code class="filename">systemd-initctl</code> is
                 automatically activated on request and terminates
-                itself when it is unused.</p></div><div class="refsect1"><a name="idm214186201504"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+                itself when it is unused.</p></div><div class="refsect1"><a name="idm214170797584"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
                         <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>
                 </p></div></div></body></html>
index fe1b182bb59aedd14cfdaa67135522acc2cedc99..fa0bf96e05d99c863524f3b504ca3cdc95b5ef16 100644 (file)
@@ -1,5 +1,5 @@
 '\" t
-.TH "SYSTEMD\-INITCTL\&.SERVICE" "8" "" "systemd 214" "systemd-initctl.service"
+.TH "SYSTEMD\-INITCTL\&.SERVICE" "8" "" "systemd 215" "systemd-initctl.service"
 .\" -----------------------------------------------------------------
 .\" * Define some portability stuff
 .\" -----------------------------------------------------------------
index 2cfa395788470548ef5a3d048b944c55198e36d1..47264459929e16978536676f713d8f31d45a72d0 100644 (file)
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="systemd-initctl.service"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>systemd-initctl.service, systemd-initctl.socket, systemd-initctl — /dev/initctl compatibility</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><p><code class="filename">systemd-initctl.service</code></p><p><code class="filename">systemd-initctl.socket</code></p><p><code class="filename">/usr/lib/systemd/systemd-initctl</code></p></div><div class="refsect1"><a name="idm214186204864"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="filename">systemd-initctl</code> is a system
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="systemd-initctl.service"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>systemd-initctl.service, systemd-initctl.socket, systemd-initctl — /dev/initctl compatibility</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><p><code class="filename">systemd-initctl.service</code></p><p><code class="filename">systemd-initctl.socket</code></p><p><code class="filename">/usr/lib/systemd/systemd-initctl</code></p></div><div class="refsect1"><a name="idm214170800944"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="filename">systemd-initctl</code> is a system
                 service that implements compatibility with the
                 <code class="filename">/dev/initctl</code> FIFO file system
                 object, as implemented by the SysV init system. <code class="filename">systemd-initctl</code> is
                 automatically activated on request and terminates
-                itself when it is unused.</p></div><div class="refsect1"><a name="idm214186201504"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+                itself when it is unused.</p></div><div class="refsect1"><a name="idm214170797584"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
                         <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>
                 </p></div></div></body></html>
index 2cfa395788470548ef5a3d048b944c55198e36d1..47264459929e16978536676f713d8f31d45a72d0 100644 (file)
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="systemd-initctl.service"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>systemd-initctl.service, systemd-initctl.socket, systemd-initctl — /dev/initctl compatibility</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><p><code class="filename">systemd-initctl.service</code></p><p><code class="filename">systemd-initctl.socket</code></p><p><code class="filename">/usr/lib/systemd/systemd-initctl</code></p></div><div class="refsect1"><a name="idm214186204864"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="filename">systemd-initctl</code> is a system
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="systemd-initctl.service"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>systemd-initctl.service, systemd-initctl.socket, systemd-initctl — /dev/initctl compatibility</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><p><code class="filename">systemd-initctl.service</code></p><p><code class="filename">systemd-initctl.socket</code></p><p><code class="filename">/usr/lib/systemd/systemd-initctl</code></p></div><div class="refsect1"><a name="idm214170800944"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="filename">systemd-initctl</code> is a system
                 service that implements compatibility with the
                 <code class="filename">/dev/initctl</code> FIFO file system
                 object, as implemented by the SysV init system. <code class="filename">systemd-initctl</code> is
                 automatically activated on request and terminates
-                itself when it is unused.</p></div><div class="refsect1"><a name="idm214186201504"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+                itself when it is unused.</p></div><div class="refsect1"><a name="idm214170797584"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
                         <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>
                 </p></div></div></body></html>
index d7f8ccbc52bea00ff2af8d3f3abf5016a7fd7222..3fbf8e6c6f49fb42a23664fb5e537ffa2dfff230 100644 (file)
@@ -19,7 +19,7 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="systemd-journal-gatewayd.service"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>systemd-journal-gatewayd.service, systemd-journal-gatewayd.socket, systemd-journal-gatewayd — HTTP server for journal events</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><p><code class="filename">systemd-journal-gatewayd.service</code></p><p><code class="filename">systemd-journal-gatewayd.socket</code></p><div class="cmdsynopsis"><p><code class="command">/usr/lib/systemd/systemd-journal-gatewayd</code>  [OPTIONS...]</p></div></div><div class="refsect1"><a name="idm214193892400"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><span class="command"><strong>systemd-journal-gatewayd</strong></span> serves journal
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="systemd-journal-gatewayd.service"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>systemd-journal-gatewayd.service, systemd-journal-gatewayd.socket, systemd-journal-gatewayd — HTTP server for journal events</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><p><code class="filename">systemd-journal-gatewayd.service</code></p><p><code class="filename">systemd-journal-gatewayd.socket</code></p><div class="cmdsynopsis"><p><code class="command">/usr/lib/systemd/systemd-journal-gatewayd</code>  [OPTIONS...]</p></div></div><div class="refsect1"><a name="idm214188770192"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><span class="command"><strong>systemd-journal-gatewayd</strong></span> serves journal
     events over the network. Clients must connect using
     HTTP. The server listens on port 19531 by default.
     If <code class="option">--cert=</code> is specified, the server expects
     and expects to receive a single socket. Use
     <span class="command"><strong>systemctl start systemd-journal-gatewayd.socket</strong></span> to start
     the service, and <span class="command"><strong>systemctl enable systemd-journal-gatewayd.socket</strong></span>
-    to have it started on boot.</p></div><div class="refsect1"><a name="idm214192520976"></a><h2 id="Options">Options<a class="headerlink" title="Permalink to this headline" href="#Options">¶</a></h2><p>The following options are understood:</p><div class="variablelist"><dl class="variablelist"><dt id="--cert="><span class="term"><code class="option">--cert=</code></span><a class="headerlink" title="Permalink to this term" href="#--cert=">¶</a></dt><dd><p>Specify the path to a file containing a server
+    to have it started on boot.</p></div><div class="refsect1"><a name="idm214184977408"></a><h2 id="Options">Options<a class="headerlink" title="Permalink to this headline" href="#Options">¶</a></h2><p>The following options are understood:</p><div class="variablelist"><dl class="variablelist"><dt id="--cert="><span class="term"><code class="option">--cert=</code></span><a class="headerlink" title="Permalink to this term" href="#--cert=">¶</a></dt><dd><p>Specify the path to a file containing a server
         certificate in PEM format. This option switches
         <span class="command"><strong>systemd-journal-gatewayd</strong></span> into HTTPS mode
         and must be used together with
         <code class="option">--key=</code>.</p></dd><dt id="--key="><span class="term"><code class="option">--key=</code></span><a class="headerlink" title="Permalink to this term" href="#--key=">¶</a></dt><dd><p>Specify the path to a file containing a server
         key in PEM format corresponding to the certificate specified
         with <code class="option">--cert=</code>.</p></dd><dt id="-h"><span class="term"><code class="option">-h</code>, </span><span class="term"><code class="option">--help</code></span><a class="headerlink" title="Permalink to this term" href="#-h">¶</a></dt><dd><p><a name="help-text"></a>Print a short help text and exit.
-    </p></dd><dt id="--version"><span class="term"><code class="option">--version</code></span><a class="headerlink" title="Permalink to this term" href="#--version">¶</a></dt><dd><p><a name="version-text"></a>Print a short version string and exit.</p></dd></dl></div></div><div class="refsect1"><a name="idm214196162016"></a><h2 id="Supported URLs">Supported URLs<a class="headerlink" title="Permalink to this headline" href="#Supported%20URLs">¶</a></h2><p>The following URLs are recognized:</p><div class="variablelist"><dl class="variablelist"><dt id="/browse"><span class="term"><code class="uri">/browse</code></span><a class="headerlink" title="Permalink to this term" href="#/browse">¶</a></dt><dd><p>Interactive browsing.</p></dd><dt id="/entries[?option1&amp;option2=value...]"><span class="term"><code class="uri">/entries[?option1&amp;option2=value...]</code></span><a class="headerlink" title="Permalink to this term" href="#/entries%5B?option1&amp;option2=value...%5D">¶</a></dt><dd><p>Retrieval of events in various formats.</p><p>The <code class="option">Accept:</code> part of the HTTP header
+    </p></dd><dt id="--version"><span class="term"><code class="option">--version</code></span><a class="headerlink" title="Permalink to this term" href="#--version">¶</a></dt><dd><p><a name="version-text"></a>Print a short version string and exit.</p></dd></dl></div></div><div class="refsect1"><a name="idm214184969312"></a><h2 id="Supported URLs">Supported URLs<a class="headerlink" title="Permalink to this headline" href="#Supported%20URLs">¶</a></h2><p>The following URLs are recognized:</p><div class="variablelist"><dl class="variablelist"><dt id="/browse"><span class="term"><code class="uri">/browse</code></span><a class="headerlink" title="Permalink to this term" href="#/browse">¶</a></dt><dd><p>Interactive browsing.</p></dd><dt id="/entries[?option1&amp;option2=value...]"><span class="term"><code class="uri">/entries[?option1&amp;option2=value...]</code></span><a class="headerlink" title="Permalink to this term" href="#/entries%5B?option1&amp;option2=value...%5D">¶</a></dt><dd><p>Retrieval of events in various formats.</p><p>The <code class="option">Accept:</code> part of the HTTP header
         determines the format. Supported values are described below.
         </p><p>The <code class="option">Range:</code> part of the HTTP header
         determines the range of events returned. Supported values are
@@ -48,7 +48,7 @@
   "os_pretty_name" : "Fedora 19 (Rawhide)",
   "virtualization" : "kvm",
   ...}</pre><p>
-        </p></dd><dt id="/fields/FIELD_NAME"><span class="term"><code class="uri">/fields/<em class="replaceable"><code>FIELD_NAME</code></em></code></span><a class="headerlink" title="Permalink to this term" href="#/fields/FIELD_NAME">¶</a></dt><dd><p>Return a list of values of this field present in the logs.</p></dd></dl></div></div><div class="refsect1"><a name="idm214192369200"></a><h2 id="Accept header">Accept header<a class="headerlink" title="Permalink to this headline" href="#Accept%20header">¶</a></h2><p>
+        </p></dd><dt id="/fields/FIELD_NAME"><span class="term"><code class="uri">/fields/<em class="replaceable"><code>FIELD_NAME</code></em></code></span><a class="headerlink" title="Permalink to this term" href="#/fields/FIELD_NAME">¶</a></dt><dd><p>Return a list of values of this field present in the logs.</p></dd></dl></div></div><div class="refsect1"><a name="idm214188863728"></a><h2 id="Accept header">Accept header<a class="headerlink" title="Permalink to this headline" href="#Accept%20header">¶</a></h2><p>
       <code class="option">Accept: <em class="replaceable"><code>format</code></em></code>
     </p><p>Recognized formats:</p><div class="variablelist"><dl class="variablelist"><dt id="text/plain"><span class="term"><code class="constant">text/plain</code></span><a class="headerlink" title="Permalink to this term" href="#text/plain">¶</a></dt><dd><p>The default. Plaintext syslog-like output,
         one line per journal entry
         transfer
         (like <span class="command"><strong>journalctl --output export</strong></span>).
         See <a class="ulink" href="http://www.freedesktop.org/wiki/Software/systemd/export" target="_top">Journal
-        Export Format</a> for more information.</p></dd></dl></div></div><div class="refsect1"><a name="idm214196251840"></a><h2 id="Range header">Range header<a class="headerlink" title="Permalink to this headline" href="#Range%20header">¶</a></h2><p>
+        Export Format</a> for more information.</p></dd></dl></div></div><div class="refsect1"><a name="idm214188842016"></a><h2 id="Range header">Range header<a class="headerlink" title="Permalink to this headline" href="#Range%20header">¶</a></h2><p>
       <code class="option">Range: entries=<em class="replaceable"><code>cursor</code></em>[[:<em class="replaceable"><code>num_skip</code></em>]:<em class="replaceable"><code>num_entries</code></em>]</code>
     </p><p>where
       <code class="option">cursor</code> is a cursor string,
       <code class="option">num_skip</code> is an integer,
       <code class="option">num_entries</code> is an unsigned integer.
-    </p><p>Range defaults to all available events.</p></div><div class="refsect1"><a name="idm214196246672"></a><h2 id="URL GET parameters">URL GET parameters<a class="headerlink" title="Permalink to this headline" href="#URL%20GET%20parameters">¶</a></h2><p>Following parameters can be used as part of the URL:</p><div class="variablelist"><dl class="variablelist"><dt id="follow"><span class="term"><code class="uri">follow</code></span><a class="headerlink" title="Permalink to this term" href="#follow">¶</a></dt><dd><p>wait for new events
+    </p><p>Range defaults to all available events.</p></div><div class="refsect1"><a name="idm214188836848"></a><h2 id="URL GET parameters">URL GET parameters<a class="headerlink" title="Permalink to this headline" href="#URL%20GET%20parameters">¶</a></h2><p>Following parameters can be used as part of the URL:</p><div class="variablelist"><dl class="variablelist"><dt id="follow"><span class="term"><code class="uri">follow</code></span><a class="headerlink" title="Permalink to this term" href="#follow">¶</a></dt><dd><p>wait for new events
         (like <span class="command"><strong>journalctl --follow</strong></span>, except that
         the number of events returned is not limited).</p></dd><dt id="discrete"><span class="term"><code class="uri">discrete</code></span><a class="headerlink" title="Permalink to this term" href="#discrete">¶</a></dt><dd><p>Test that the specified cursor refers to an
         entry in the journal. Returns just this entry.</p></dd><dt id="boot"><span class="term"><code class="uri">boot</code></span><a class="headerlink" title="Permalink to this term" href="#boot">¶</a></dt><dd><p>Limit events to the current boot of the system
         (like <span class="command"><strong>journalctl --this--boot</strong></span>).</p></dd><dt id="KEY=match"><span class="term"><code class="uri"><em class="replaceable"><code>KEY</code></em>=<em class="replaceable"><code>match</code></em></code></span><a class="headerlink" title="Permalink to this term" href="#KEY=match">¶</a></dt><dd><p>Match journal fields. See
-        <a href="systemd.journal-fields.html"><span class="citerefentry"><span class="refentrytitle">systemd.journal-fields</span>(7)</span></a>.</p></dd></dl></div></div><div class="refsect1"><a name="idm214196228816"></a><h2 id="Examples">Examples<a class="headerlink" title="Permalink to this headline" href="#Examples">¶</a></h2><p>Retrieve events from this boot from local journal
+        <a href="systemd.journal-fields.html"><span class="citerefentry"><span class="refentrytitle">systemd.journal-fields</span>(7)</span></a>.</p></dd></dl></div></div><div class="refsect1"><a name="idm214188826192"></a><h2 id="Examples">Examples<a class="headerlink" title="Permalink to this headline" href="#Examples">¶</a></h2><p>Retrieve events from this boot from local journal
     in <a class="ulink" href="http://www.freedesktop.org/wiki/Software/systemd/export" target="_top">Journal
     Export Format</a>:
     </p><pre class="programlisting">curl --silent -H'Accept: application/vnd.fdo.journal' \
        'http://localhost:19531/entries?boot'</pre><p>
     </p><p>Listen for core dumps:
-    </p><pre class="programlisting">curl 'http://localhost:19531/entries?follow&amp;MESSAGE_ID=fc2e22bc6ee647b6b90729ab34a250b1'</pre></div><div class="refsect1"><a name="idm214196225088"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+    </p><pre class="programlisting">curl 'http://localhost:19531/entries?follow&amp;MESSAGE_ID=fc2e22bc6ee647b6b90729ab34a250b1'</pre></div><div class="refsect1"><a name="idm214184189536"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
       <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
       <a href="journalctl.html"><span class="citerefentry"><span class="refentrytitle">journalctl</span>(1)</span></a>,
       <a href="systemd-journald.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-journald.service</span>(8)</span></a>,
index 3caa969a3134443eba23e72f38c568438a5c4134..804f8af709330ea8777a40f4cc0e2511382a7463 100644 (file)
@@ -1,5 +1,5 @@
 '\" t
-.TH "SYSTEMD\-JOURNAL\-GATEWAYD\&.SERVICE" "8" "" "systemd 214" "systemd-journal-gatewayd.service"
+.TH "SYSTEMD\-JOURNAL\-GATEWAYD\&.SERVICE" "8" "" "systemd 215" "systemd-journal-gatewayd.service"
 .\" -----------------------------------------------------------------
 .\" * Define some portability stuff
 .\" -----------------------------------------------------------------
index d7f8ccbc52bea00ff2af8d3f3abf5016a7fd7222..3fbf8e6c6f49fb42a23664fb5e537ffa2dfff230 100644 (file)
@@ -19,7 +19,7 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="systemd-journal-gatewayd.service"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>systemd-journal-gatewayd.service, systemd-journal-gatewayd.socket, systemd-journal-gatewayd — HTTP server for journal events</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><p><code class="filename">systemd-journal-gatewayd.service</code></p><p><code class="filename">systemd-journal-gatewayd.socket</code></p><div class="cmdsynopsis"><p><code class="command">/usr/lib/systemd/systemd-journal-gatewayd</code>  [OPTIONS...]</p></div></div><div class="refsect1"><a name="idm214193892400"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><span class="command"><strong>systemd-journal-gatewayd</strong></span> serves journal
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="systemd-journal-gatewayd.service"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>systemd-journal-gatewayd.service, systemd-journal-gatewayd.socket, systemd-journal-gatewayd — HTTP server for journal events</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><p><code class="filename">systemd-journal-gatewayd.service</code></p><p><code class="filename">systemd-journal-gatewayd.socket</code></p><div class="cmdsynopsis"><p><code class="command">/usr/lib/systemd/systemd-journal-gatewayd</code>  [OPTIONS...]</p></div></div><div class="refsect1"><a name="idm214188770192"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><span class="command"><strong>systemd-journal-gatewayd</strong></span> serves journal
     events over the network. Clients must connect using
     HTTP. The server listens on port 19531 by default.
     If <code class="option">--cert=</code> is specified, the server expects
     and expects to receive a single socket. Use
     <span class="command"><strong>systemctl start systemd-journal-gatewayd.socket</strong></span> to start
     the service, and <span class="command"><strong>systemctl enable systemd-journal-gatewayd.socket</strong></span>
-    to have it started on boot.</p></div><div class="refsect1"><a name="idm214192520976"></a><h2 id="Options">Options<a class="headerlink" title="Permalink to this headline" href="#Options">¶</a></h2><p>The following options are understood:</p><div class="variablelist"><dl class="variablelist"><dt id="--cert="><span class="term"><code class="option">--cert=</code></span><a class="headerlink" title="Permalink to this term" href="#--cert=">¶</a></dt><dd><p>Specify the path to a file containing a server
+    to have it started on boot.</p></div><div class="refsect1"><a name="idm214184977408"></a><h2 id="Options">Options<a class="headerlink" title="Permalink to this headline" href="#Options">¶</a></h2><p>The following options are understood:</p><div class="variablelist"><dl class="variablelist"><dt id="--cert="><span class="term"><code class="option">--cert=</code></span><a class="headerlink" title="Permalink to this term" href="#--cert=">¶</a></dt><dd><p>Specify the path to a file containing a server
         certificate in PEM format. This option switches
         <span class="command"><strong>systemd-journal-gatewayd</strong></span> into HTTPS mode
         and must be used together with
         <code class="option">--key=</code>.</p></dd><dt id="--key="><span class="term"><code class="option">--key=</code></span><a class="headerlink" title="Permalink to this term" href="#--key=">¶</a></dt><dd><p>Specify the path to a file containing a server
         key in PEM format corresponding to the certificate specified
         with <code class="option">--cert=</code>.</p></dd><dt id="-h"><span class="term"><code class="option">-h</code>, </span><span class="term"><code class="option">--help</code></span><a class="headerlink" title="Permalink to this term" href="#-h">¶</a></dt><dd><p><a name="help-text"></a>Print a short help text and exit.
-    </p></dd><dt id="--version"><span class="term"><code class="option">--version</code></span><a class="headerlink" title="Permalink to this term" href="#--version">¶</a></dt><dd><p><a name="version-text"></a>Print a short version string and exit.</p></dd></dl></div></div><div class="refsect1"><a name="idm214196162016"></a><h2 id="Supported URLs">Supported URLs<a class="headerlink" title="Permalink to this headline" href="#Supported%20URLs">¶</a></h2><p>The following URLs are recognized:</p><div class="variablelist"><dl class="variablelist"><dt id="/browse"><span class="term"><code class="uri">/browse</code></span><a class="headerlink" title="Permalink to this term" href="#/browse">¶</a></dt><dd><p>Interactive browsing.</p></dd><dt id="/entries[?option1&amp;option2=value...]"><span class="term"><code class="uri">/entries[?option1&amp;option2=value...]</code></span><a class="headerlink" title="Permalink to this term" href="#/entries%5B?option1&amp;option2=value...%5D">¶</a></dt><dd><p>Retrieval of events in various formats.</p><p>The <code class="option">Accept:</code> part of the HTTP header
+    </p></dd><dt id="--version"><span class="term"><code class="option">--version</code></span><a class="headerlink" title="Permalink to this term" href="#--version">¶</a></dt><dd><p><a name="version-text"></a>Print a short version string and exit.</p></dd></dl></div></div><div class="refsect1"><a name="idm214184969312"></a><h2 id="Supported URLs">Supported URLs<a class="headerlink" title="Permalink to this headline" href="#Supported%20URLs">¶</a></h2><p>The following URLs are recognized:</p><div class="variablelist"><dl class="variablelist"><dt id="/browse"><span class="term"><code class="uri">/browse</code></span><a class="headerlink" title="Permalink to this term" href="#/browse">¶</a></dt><dd><p>Interactive browsing.</p></dd><dt id="/entries[?option1&amp;option2=value...]"><span class="term"><code class="uri">/entries[?option1&amp;option2=value...]</code></span><a class="headerlink" title="Permalink to this term" href="#/entries%5B?option1&amp;option2=value...%5D">¶</a></dt><dd><p>Retrieval of events in various formats.</p><p>The <code class="option">Accept:</code> part of the HTTP header
         determines the format. Supported values are described below.
         </p><p>The <code class="option">Range:</code> part of the HTTP header
         determines the range of events returned. Supported values are
@@ -48,7 +48,7 @@
   "os_pretty_name" : "Fedora 19 (Rawhide)",
   "virtualization" : "kvm",
   ...}</pre><p>
-        </p></dd><dt id="/fields/FIELD_NAME"><span class="term"><code class="uri">/fields/<em class="replaceable"><code>FIELD_NAME</code></em></code></span><a class="headerlink" title="Permalink to this term" href="#/fields/FIELD_NAME">¶</a></dt><dd><p>Return a list of values of this field present in the logs.</p></dd></dl></div></div><div class="refsect1"><a name="idm214192369200"></a><h2 id="Accept header">Accept header<a class="headerlink" title="Permalink to this headline" href="#Accept%20header">¶</a></h2><p>
+        </p></dd><dt id="/fields/FIELD_NAME"><span class="term"><code class="uri">/fields/<em class="replaceable"><code>FIELD_NAME</code></em></code></span><a class="headerlink" title="Permalink to this term" href="#/fields/FIELD_NAME">¶</a></dt><dd><p>Return a list of values of this field present in the logs.</p></dd></dl></div></div><div class="refsect1"><a name="idm214188863728"></a><h2 id="Accept header">Accept header<a class="headerlink" title="Permalink to this headline" href="#Accept%20header">¶</a></h2><p>
       <code class="option">Accept: <em class="replaceable"><code>format</code></em></code>
     </p><p>Recognized formats:</p><div class="variablelist"><dl class="variablelist"><dt id="text/plain"><span class="term"><code class="constant">text/plain</code></span><a class="headerlink" title="Permalink to this term" href="#text/plain">¶</a></dt><dd><p>The default. Plaintext syslog-like output,
         one line per journal entry
         transfer
         (like <span class="command"><strong>journalctl --output export</strong></span>).
         See <a class="ulink" href="http://www.freedesktop.org/wiki/Software/systemd/export" target="_top">Journal
-        Export Format</a> for more information.</p></dd></dl></div></div><div class="refsect1"><a name="idm214196251840"></a><h2 id="Range header">Range header<a class="headerlink" title="Permalink to this headline" href="#Range%20header">¶</a></h2><p>
+        Export Format</a> for more information.</p></dd></dl></div></div><div class="refsect1"><a name="idm214188842016"></a><h2 id="Range header">Range header<a class="headerlink" title="Permalink to this headline" href="#Range%20header">¶</a></h2><p>
       <code class="option">Range: entries=<em class="replaceable"><code>cursor</code></em>[[:<em class="replaceable"><code>num_skip</code></em>]:<em class="replaceable"><code>num_entries</code></em>]</code>
     </p><p>where
       <code class="option">cursor</code> is a cursor string,
       <code class="option">num_skip</code> is an integer,
       <code class="option">num_entries</code> is an unsigned integer.
-    </p><p>Range defaults to all available events.</p></div><div class="refsect1"><a name="idm214196246672"></a><h2 id="URL GET parameters">URL GET parameters<a class="headerlink" title="Permalink to this headline" href="#URL%20GET%20parameters">¶</a></h2><p>Following parameters can be used as part of the URL:</p><div class="variablelist"><dl class="variablelist"><dt id="follow"><span class="term"><code class="uri">follow</code></span><a class="headerlink" title="Permalink to this term" href="#follow">¶</a></dt><dd><p>wait for new events
+    </p><p>Range defaults to all available events.</p></div><div class="refsect1"><a name="idm214188836848"></a><h2 id="URL GET parameters">URL GET parameters<a class="headerlink" title="Permalink to this headline" href="#URL%20GET%20parameters">¶</a></h2><p>Following parameters can be used as part of the URL:</p><div class="variablelist"><dl class="variablelist"><dt id="follow"><span class="term"><code class="uri">follow</code></span><a class="headerlink" title="Permalink to this term" href="#follow">¶</a></dt><dd><p>wait for new events
         (like <span class="command"><strong>journalctl --follow</strong></span>, except that
         the number of events returned is not limited).</p></dd><dt id="discrete"><span class="term"><code class="uri">discrete</code></span><a class="headerlink" title="Permalink to this term" href="#discrete">¶</a></dt><dd><p>Test that the specified cursor refers to an
         entry in the journal. Returns just this entry.</p></dd><dt id="boot"><span class="term"><code class="uri">boot</code></span><a class="headerlink" title="Permalink to this term" href="#boot">¶</a></dt><dd><p>Limit events to the current boot of the system
         (like <span class="command"><strong>journalctl --this--boot</strong></span>).</p></dd><dt id="KEY=match"><span class="term"><code class="uri"><em class="replaceable"><code>KEY</code></em>=<em class="replaceable"><code>match</code></em></code></span><a class="headerlink" title="Permalink to this term" href="#KEY=match">¶</a></dt><dd><p>Match journal fields. See
-        <a href="systemd.journal-fields.html"><span class="citerefentry"><span class="refentrytitle">systemd.journal-fields</span>(7)</span></a>.</p></dd></dl></div></div><div class="refsect1"><a name="idm214196228816"></a><h2 id="Examples">Examples<a class="headerlink" title="Permalink to this headline" href="#Examples">¶</a></h2><p>Retrieve events from this boot from local journal
+        <a href="systemd.journal-fields.html"><span class="citerefentry"><span class="refentrytitle">systemd.journal-fields</span>(7)</span></a>.</p></dd></dl></div></div><div class="refsect1"><a name="idm214188826192"></a><h2 id="Examples">Examples<a class="headerlink" title="Permalink to this headline" href="#Examples">¶</a></h2><p>Retrieve events from this boot from local journal
     in <a class="ulink" href="http://www.freedesktop.org/wiki/Software/systemd/export" target="_top">Journal
     Export Format</a>:
     </p><pre class="programlisting">curl --silent -H'Accept: application/vnd.fdo.journal' \
        'http://localhost:19531/entries?boot'</pre><p>
     </p><p>Listen for core dumps:
-    </p><pre class="programlisting">curl 'http://localhost:19531/entries?follow&amp;MESSAGE_ID=fc2e22bc6ee647b6b90729ab34a250b1'</pre></div><div class="refsect1"><a name="idm214196225088"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+    </p><pre class="programlisting">curl 'http://localhost:19531/entries?follow&amp;MESSAGE_ID=fc2e22bc6ee647b6b90729ab34a250b1'</pre></div><div class="refsect1"><a name="idm214184189536"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
       <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
       <a href="journalctl.html"><span class="citerefentry"><span class="refentrytitle">journalctl</span>(1)</span></a>,
       <a href="systemd-journald.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-journald.service</span>(8)</span></a>,
index d7f8ccbc52bea00ff2af8d3f3abf5016a7fd7222..3fbf8e6c6f49fb42a23664fb5e537ffa2dfff230 100644 (file)
@@ -19,7 +19,7 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="systemd-journal-gatewayd.service"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>systemd-journal-gatewayd.service, systemd-journal-gatewayd.socket, systemd-journal-gatewayd — HTTP server for journal events</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><p><code class="filename">systemd-journal-gatewayd.service</code></p><p><code class="filename">systemd-journal-gatewayd.socket</code></p><div class="cmdsynopsis"><p><code class="command">/usr/lib/systemd/systemd-journal-gatewayd</code>  [OPTIONS...]</p></div></div><div class="refsect1"><a name="idm214193892400"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><span class="command"><strong>systemd-journal-gatewayd</strong></span> serves journal
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="systemd-journal-gatewayd.service"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>systemd-journal-gatewayd.service, systemd-journal-gatewayd.socket, systemd-journal-gatewayd — HTTP server for journal events</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><p><code class="filename">systemd-journal-gatewayd.service</code></p><p><code class="filename">systemd-journal-gatewayd.socket</code></p><div class="cmdsynopsis"><p><code class="command">/usr/lib/systemd/systemd-journal-gatewayd</code>  [OPTIONS...]</p></div></div><div class="refsect1"><a name="idm214188770192"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><span class="command"><strong>systemd-journal-gatewayd</strong></span> serves journal
     events over the network. Clients must connect using
     HTTP. The server listens on port 19531 by default.
     If <code class="option">--cert=</code> is specified, the server expects
     and expects to receive a single socket. Use
     <span class="command"><strong>systemctl start systemd-journal-gatewayd.socket</strong></span> to start
     the service, and <span class="command"><strong>systemctl enable systemd-journal-gatewayd.socket</strong></span>
-    to have it started on boot.</p></div><div class="refsect1"><a name="idm214192520976"></a><h2 id="Options">Options<a class="headerlink" title="Permalink to this headline" href="#Options">¶</a></h2><p>The following options are understood:</p><div class="variablelist"><dl class="variablelist"><dt id="--cert="><span class="term"><code class="option">--cert=</code></span><a class="headerlink" title="Permalink to this term" href="#--cert=">¶</a></dt><dd><p>Specify the path to a file containing a server
+    to have it started on boot.</p></div><div class="refsect1"><a name="idm214184977408"></a><h2 id="Options">Options<a class="headerlink" title="Permalink to this headline" href="#Options">¶</a></h2><p>The following options are understood:</p><div class="variablelist"><dl class="variablelist"><dt id="--cert="><span class="term"><code class="option">--cert=</code></span><a class="headerlink" title="Permalink to this term" href="#--cert=">¶</a></dt><dd><p>Specify the path to a file containing a server
         certificate in PEM format. This option switches
         <span class="command"><strong>systemd-journal-gatewayd</strong></span> into HTTPS mode
         and must be used together with
         <code class="option">--key=</code>.</p></dd><dt id="--key="><span class="term"><code class="option">--key=</code></span><a class="headerlink" title="Permalink to this term" href="#--key=">¶</a></dt><dd><p>Specify the path to a file containing a server
         key in PEM format corresponding to the certificate specified
         with <code class="option">--cert=</code>.</p></dd><dt id="-h"><span class="term"><code class="option">-h</code>, </span><span class="term"><code class="option">--help</code></span><a class="headerlink" title="Permalink to this term" href="#-h">¶</a></dt><dd><p><a name="help-text"></a>Print a short help text and exit.
-    </p></dd><dt id="--version"><span class="term"><code class="option">--version</code></span><a class="headerlink" title="Permalink to this term" href="#--version">¶</a></dt><dd><p><a name="version-text"></a>Print a short version string and exit.</p></dd></dl></div></div><div class="refsect1"><a name="idm214196162016"></a><h2 id="Supported URLs">Supported URLs<a class="headerlink" title="Permalink to this headline" href="#Supported%20URLs">¶</a></h2><p>The following URLs are recognized:</p><div class="variablelist"><dl class="variablelist"><dt id="/browse"><span class="term"><code class="uri">/browse</code></span><a class="headerlink" title="Permalink to this term" href="#/browse">¶</a></dt><dd><p>Interactive browsing.</p></dd><dt id="/entries[?option1&amp;option2=value...]"><span class="term"><code class="uri">/entries[?option1&amp;option2=value...]</code></span><a class="headerlink" title="Permalink to this term" href="#/entries%5B?option1&amp;option2=value...%5D">¶</a></dt><dd><p>Retrieval of events in various formats.</p><p>The <code class="option">Accept:</code> part of the HTTP header
+    </p></dd><dt id="--version"><span class="term"><code class="option">--version</code></span><a class="headerlink" title="Permalink to this term" href="#--version">¶</a></dt><dd><p><a name="version-text"></a>Print a short version string and exit.</p></dd></dl></div></div><div class="refsect1"><a name="idm214184969312"></a><h2 id="Supported URLs">Supported URLs<a class="headerlink" title="Permalink to this headline" href="#Supported%20URLs">¶</a></h2><p>The following URLs are recognized:</p><div class="variablelist"><dl class="variablelist"><dt id="/browse"><span class="term"><code class="uri">/browse</code></span><a class="headerlink" title="Permalink to this term" href="#/browse">¶</a></dt><dd><p>Interactive browsing.</p></dd><dt id="/entries[?option1&amp;option2=value...]"><span class="term"><code class="uri">/entries[?option1&amp;option2=value...]</code></span><a class="headerlink" title="Permalink to this term" href="#/entries%5B?option1&amp;option2=value...%5D">¶</a></dt><dd><p>Retrieval of events in various formats.</p><p>The <code class="option">Accept:</code> part of the HTTP header
         determines the format. Supported values are described below.
         </p><p>The <code class="option">Range:</code> part of the HTTP header
         determines the range of events returned. Supported values are
@@ -48,7 +48,7 @@
   "os_pretty_name" : "Fedora 19 (Rawhide)",
   "virtualization" : "kvm",
   ...}</pre><p>
-        </p></dd><dt id="/fields/FIELD_NAME"><span class="term"><code class="uri">/fields/<em class="replaceable"><code>FIELD_NAME</code></em></code></span><a class="headerlink" title="Permalink to this term" href="#/fields/FIELD_NAME">¶</a></dt><dd><p>Return a list of values of this field present in the logs.</p></dd></dl></div></div><div class="refsect1"><a name="idm214192369200"></a><h2 id="Accept header">Accept header<a class="headerlink" title="Permalink to this headline" href="#Accept%20header">¶</a></h2><p>
+        </p></dd><dt id="/fields/FIELD_NAME"><span class="term"><code class="uri">/fields/<em class="replaceable"><code>FIELD_NAME</code></em></code></span><a class="headerlink" title="Permalink to this term" href="#/fields/FIELD_NAME">¶</a></dt><dd><p>Return a list of values of this field present in the logs.</p></dd></dl></div></div><div class="refsect1"><a name="idm214188863728"></a><h2 id="Accept header">Accept header<a class="headerlink" title="Permalink to this headline" href="#Accept%20header">¶</a></h2><p>
       <code class="option">Accept: <em class="replaceable"><code>format</code></em></code>
     </p><p>Recognized formats:</p><div class="variablelist"><dl class="variablelist"><dt id="text/plain"><span class="term"><code class="constant">text/plain</code></span><a class="headerlink" title="Permalink to this term" href="#text/plain">¶</a></dt><dd><p>The default. Plaintext syslog-like output,
         one line per journal entry
         transfer
         (like <span class="command"><strong>journalctl --output export</strong></span>).
         See <a class="ulink" href="http://www.freedesktop.org/wiki/Software/systemd/export" target="_top">Journal
-        Export Format</a> for more information.</p></dd></dl></div></div><div class="refsect1"><a name="idm214196251840"></a><h2 id="Range header">Range header<a class="headerlink" title="Permalink to this headline" href="#Range%20header">¶</a></h2><p>
+        Export Format</a> for more information.</p></dd></dl></div></div><div class="refsect1"><a name="idm214188842016"></a><h2 id="Range header">Range header<a class="headerlink" title="Permalink to this headline" href="#Range%20header">¶</a></h2><p>
       <code class="option">Range: entries=<em class="replaceable"><code>cursor</code></em>[[:<em class="replaceable"><code>num_skip</code></em>]:<em class="replaceable"><code>num_entries</code></em>]</code>
     </p><p>where
       <code class="option">cursor</code> is a cursor string,
       <code class="option">num_skip</code> is an integer,
       <code class="option">num_entries</code> is an unsigned integer.
-    </p><p>Range defaults to all available events.</p></div><div class="refsect1"><a name="idm214196246672"></a><h2 id="URL GET parameters">URL GET parameters<a class="headerlink" title="Permalink to this headline" href="#URL%20GET%20parameters">¶</a></h2><p>Following parameters can be used as part of the URL:</p><div class="variablelist"><dl class="variablelist"><dt id="follow"><span class="term"><code class="uri">follow</code></span><a class="headerlink" title="Permalink to this term" href="#follow">¶</a></dt><dd><p>wait for new events
+    </p><p>Range defaults to all available events.</p></div><div class="refsect1"><a name="idm214188836848"></a><h2 id="URL GET parameters">URL GET parameters<a class="headerlink" title="Permalink to this headline" href="#URL%20GET%20parameters">¶</a></h2><p>Following parameters can be used as part of the URL:</p><div class="variablelist"><dl class="variablelist"><dt id="follow"><span class="term"><code class="uri">follow</code></span><a class="headerlink" title="Permalink to this term" href="#follow">¶</a></dt><dd><p>wait for new events
         (like <span class="command"><strong>journalctl --follow</strong></span>, except that
         the number of events returned is not limited).</p></dd><dt id="discrete"><span class="term"><code class="uri">discrete</code></span><a class="headerlink" title="Permalink to this term" href="#discrete">¶</a></dt><dd><p>Test that the specified cursor refers to an
         entry in the journal. Returns just this entry.</p></dd><dt id="boot"><span class="term"><code class="uri">boot</code></span><a class="headerlink" title="Permalink to this term" href="#boot">¶</a></dt><dd><p>Limit events to the current boot of the system
         (like <span class="command"><strong>journalctl --this--boot</strong></span>).</p></dd><dt id="KEY=match"><span class="term"><code class="uri"><em class="replaceable"><code>KEY</code></em>=<em class="replaceable"><code>match</code></em></code></span><a class="headerlink" title="Permalink to this term" href="#KEY=match">¶</a></dt><dd><p>Match journal fields. See
-        <a href="systemd.journal-fields.html"><span class="citerefentry"><span class="refentrytitle">systemd.journal-fields</span>(7)</span></a>.</p></dd></dl></div></div><div class="refsect1"><a name="idm214196228816"></a><h2 id="Examples">Examples<a class="headerlink" title="Permalink to this headline" href="#Examples">¶</a></h2><p>Retrieve events from this boot from local journal
+        <a href="systemd.journal-fields.html"><span class="citerefentry"><span class="refentrytitle">systemd.journal-fields</span>(7)</span></a>.</p></dd></dl></div></div><div class="refsect1"><a name="idm214188826192"></a><h2 id="Examples">Examples<a class="headerlink" title="Permalink to this headline" href="#Examples">¶</a></h2><p>Retrieve events from this boot from local journal
     in <a class="ulink" href="http://www.freedesktop.org/wiki/Software/systemd/export" target="_top">Journal
     Export Format</a>:
     </p><pre class="programlisting">curl --silent -H'Accept: application/vnd.fdo.journal' \
        'http://localhost:19531/entries?boot'</pre><p>
     </p><p>Listen for core dumps:
-    </p><pre class="programlisting">curl 'http://localhost:19531/entries?follow&amp;MESSAGE_ID=fc2e22bc6ee647b6b90729ab34a250b1'</pre></div><div class="refsect1"><a name="idm214196225088"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+    </p><pre class="programlisting">curl 'http://localhost:19531/entries?follow&amp;MESSAGE_ID=fc2e22bc6ee647b6b90729ab34a250b1'</pre></div><div class="refsect1"><a name="idm214184189536"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
       <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
       <a href="journalctl.html"><span class="citerefentry"><span class="refentrytitle">journalctl</span>(1)</span></a>,
       <a href="systemd-journald.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-journald.service</span>(8)</span></a>,
index 5cfb310d363255a13ca99e918a2f5aa38b8f1d06..af336e874230fcef2ce17a70136d419c8ec4b611 100644 (file)
@@ -1,5 +1,5 @@
 '\" t
-.TH "SYSTEMD\-JOURNAL\-REMOTE" "8" "" "systemd 214" "systemd-journal-remote"
+.TH "SYSTEMD\-JOURNAL\-REMOTE" "8" "" "systemd 215" "systemd-journal-remote"
 .\" -----------------------------------------------------------------
 .\" * Define some portability stuff
 .\" -----------------------------------------------------------------
index d68250329540f262d6b6ae6c05fe67fd42168dc1..ef90cc0f6840aa86deb414c6000f89751255ca17 100644 (file)
@@ -19,7 +19,7 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="systemd-journal-remote"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>systemd-journal-remote — Stream journal messages over the network</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="cmdsynopsis"><p><code class="command">systemd-journal-remote</code>  [OPTIONS...] [-o/--output=DIR|FILE] [SOURCES...]</p></div></div><div class="refsect1"><a name="idm214186238144"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p>
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="systemd-journal-remote"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>systemd-journal-remote — Stream journal messages over the network</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="cmdsynopsis"><p><code class="command">systemd-journal-remote</code>  [OPTIONS...] [-o/--output=DIR|FILE] [SOURCES...]</p></div></div><div class="refsect1"><a name="idm214192157056"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p>
       <code class="filename">systemd-journal-remote</code> is a command to
       receive serialized journal events and store them to the journal.
       Input streams must be in the
@@ -28,7 +28,7 @@
       </a>,
       i.e. like the output from
       <span class="command"><strong>journalctl --output=export</strong></span>.
-    </p></div><div class="refsect1"><a name="idm214187377520"></a><h2 id="Sources">Sources<a class="headerlink" title="Permalink to this headline" href="#Sources">¶</a></h2><p>
+    </p></div><div class="refsect1"><a name="idm214188367888"></a><h2 id="Sources">Sources<a class="headerlink" title="Permalink to this headline" href="#Sources">¶</a></h2><p>
       Sources can be either "active"
       (<span class="command"><strong>systemd-journal-remote</strong></span> requests and pulls
       the data), or "passive"
@@ -86,7 +86,7 @@
         <code class="option">--listen-https=-<em class="replaceable"><code>n</code></em></code>
         above. In the latter case, an HTTP or HTTPS server will be
         spawned using this descriptor and connections must be made
-        over the HTTP protocol.</p></dd></dl></div></div><div class="refsect1"><a name="idm214190283216"></a><h2 id="Sinks">Sinks<a class="headerlink" title="Permalink to this headline" href="#Sinks">¶</a></h2><p>The location of the output journal can be specified
+        over the HTTP protocol.</p></dd></dl></div></div><div class="refsect1"><a name="idm214192241888"></a><h2 id="Sinks">Sinks<a class="headerlink" title="Permalink to this headline" href="#Sinks">¶</a></h2><p>The location of the output journal can be specified
     with <code class="option">-o</code> or <code class="option">--output=</code>.
     </p><div class="variablelist"><dl class="variablelist"><dt id="--output=FILE"><span class="term"><code class="option">--output=<em class="replaceable"><code>FILE</code></em></code></span><a class="headerlink" title="Permalink to this term" href="#--output=FILE">¶</a></dt><dd><p>Will write to this journal. The filename must
         end with <code class="filename">.journal</code>. The file will be
     Otherwise, local address and port number will be used, or
     "<code class="literal">stdin</code>" for events passed over standard
     input, and "<code class="literal">multiple</code>" if more than one source
-    is specified.</p></div><div class="refsect1"><a name="idm214190268112"></a><h2 id="Options">Options<a class="headerlink" title="Permalink to this headline" href="#Options">¶</a></h2><p>The following options are understood:</p><div class="variablelist"><dl class="variablelist"><dt id="--help"><span class="term"><code class="option">--help</code>, </span><span class="term"><code class="option">-h</code></span><a class="headerlink" title="Permalink to this term" href="#--help">¶</a></dt><dd><p>Print a short help
+    is specified.</p></div><div class="refsect1"><a name="idm214192219344"></a><h2 id="Options">Options<a class="headerlink" title="Permalink to this headline" href="#Options">¶</a></h2><p>The following options are understood:</p><div class="variablelist"><dl class="variablelist"><dt id="--help"><span class="term"><code class="option">--help</code>, </span><span class="term"><code class="option">-h</code></span><a class="headerlink" title="Permalink to this term" href="#--help">¶</a></dt><dd><p>Print a short help
         text and exit.</p></dd><dt id="--version"><span class="term"><code class="option">--version</code></span><a class="headerlink" title="Permalink to this term" href="#--version">¶</a></dt><dd><p>Print a short version
         string and exit.</p></dd><dt id="--compress"><span class="term"><code class="option">--compress</code>, </span><span class="term"><code class="option">--no-compress</code></span><a class="headerlink" title="Permalink to this term" href="#--compress">¶</a></dt><dd><p>Compress or not, respectively, the data in the
         journal using XZ.</p></dd><dt id="--seal"><span class="term"><code class="option">--seal</code>, </span><span class="term"><code class="option">--no-seal</code></span><a class="headerlink" title="Permalink to this term" href="#--seal">¶</a></dt><dd><p>Periodically sign or not, respectively, the
         data in the journal using Forward Secure Sealing.
         </p></dd><dt id="--getter=PROG --option1 --option2"><span class="term"><code class="option">--getter=<em class="replaceable"><code>PROG --option1 --option2</code></em></code></span><a class="headerlink" title="Permalink to this term" href="#--getter=PROG%20--option1%20--option2">¶</a></dt><dd><p>Program to invoke to retrieve data. The journal
-        event stream must be generated on standard output.</p><p>Examples:</p><pre class="programlisting">--getter='curl "-HAccept: application/vnd.fdo.journal" https://some.host:19531/'</pre><pre class="programlisting">--getter='wget --header="Accept: application/vnd.fdo.journal" -O- https://some.host:19531/'</pre></dd></dl></div></div><div class="refsect1"><a name="idm214190247648"></a><h2 id="Examples">Examples<a class="headerlink" title="Permalink to this headline" href="#Examples">¶</a></h2><p>Copy local journal events to a different journal directory:
+        event stream must be generated on standard output.</p><p>Examples:</p><pre class="programlisting">--getter='curl "-HAccept: application/vnd.fdo.journal" https://some.host:19531/'</pre><pre class="programlisting">--getter='wget --header="Accept: application/vnd.fdo.journal" -O- https://some.host:19531/'</pre></dd></dl></div></div><div class="refsect1"><a name="idm214187575664"></a><h2 id="Examples">Examples<a class="headerlink" title="Permalink to this headline" href="#Examples">¶</a></h2><p>Copy local journal events to a different journal directory:
     </p><pre class="programlisting">
 journalctl -o export | systemd-journal-remote -o /tmp/dir -
     </pre><p>
@@ -130,7 +130,7 @@ journalctl -o export | systemd-journal-remote -o /tmp/dir -
     </p><pre class="programlisting">
 systemd-journal-remote --url http://some.host:19531/
     </pre><p>
-    </p></div><div class="refsect1"><a name="idm214190243168"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+    </p></div><div class="refsect1"><a name="idm214187571248"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
       <a href="journalctl.html"><span class="citerefentry"><span class="refentrytitle">journalctl</span>(1)</span></a>,
       <a href="systemd-journald.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-journald.service</span>(8)</span></a>,
       <a href="systemd-journal-gatewayd.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-journal-gatewayd.service</span>(8)</span></a>.
diff --git a/man/systemd-journald-dev-log.socket.8 b/man/systemd-journald-dev-log.socket.8
new file mode 100644 (file)
index 0000000..59737ad
--- /dev/null
@@ -0,0 +1 @@
+.so man8/systemd-journald.service.8
diff --git a/man/systemd-journald-dev-log.socket.html b/man/systemd-journald-dev-log.socket.html
new file mode 100644 (file)
index 0000000..3e6678f
--- /dev/null
@@ -0,0 +1,125 @@
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>systemd-journald.service</title><meta name="generator" content="DocBook XSL Stylesheets V1.78.1"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><style>
+    a.headerlink {
+      color: #c60f0f;
+      font-size: 0.8em;
+      padding: 0 4px 0 4px;
+      text-decoration: none;
+      visibility: hidden;
+    }
+
+    a.headerlink:hover {
+      background-color: #c60f0f;
+      color: white;
+    }
+
+    h1:hover > a.headerlink, h2:hover > a.headerlink, h3:hover > a.headerlink, dt:hover > a.headerlink {
+      visibility: visible;
+    }
+  </style><a href="index.html">Index </a>·
+  <a href="systemd.directives.html">Directives </a>·
+  <a href="../python-systemd/index.html">Python </a>·
+  <a href="../libudev/index.html">libudev </a>·
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="systemd-journald.service"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>systemd-journald.service, systemd-journald.socket, systemd-journald-dev-log.socket, systemd-journald — Journal service</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><p><code class="filename">systemd-journald.service</code></p><p><code class="filename">systemd-journald.socket</code></p><p><code class="filename">systemd-journald-dev-log.socket</code></p><p><code class="filename">/usr/lib/systemd/systemd-journald</code></p></div><div class="refsect1"><a name="idm214181031376"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="filename">systemd-journald</code> is a
+                system service that collects and stores logging data.
+                It creates and maintains structured, indexed journals
+                based on logging information that is received from the
+                kernel, from user processes via the libc
+                <a href="syslog.html"><span class="citerefentry"><span class="refentrytitle">syslog</span>(3)</span></a>
+                call, from standard input and standard error of system
+                services or via its native API. It will implicitly
+                collect numerous metadata fields for each log
+                messages in a secure and unfakeable way. See
+                <a href="systemd.journal-fields.html"><span class="citerefentry"><span class="refentrytitle">systemd.journal-fields</span>(7)</span></a>
+                for more information about the collected metadata.
+                </p><p>Log data collected by the journal is primarily
+                text-based but can also include binary data where
+                necessary. All objects stored in the journal can be up
+                to 2^64-1 bytes in size.</p><p>By default, the journal stores log data in
+                <code class="filename">/run/log/journal/</code>. Since
+                <code class="filename">/run/</code> is volatile, log data is
+                lost at reboot. To make the data persistent, it
+                is sufficient to create
+                <code class="filename">/var/log/journal/</code> where
+                <code class="filename">systemd-journald</code> will then store
+                the data.</p><p><code class="filename">systemd-journald</code> will
+                forward all received log messages to the <code class="constant">AF_UNIX</code>
+                <code class="constant">SOCK_DGRAM</code> socket
+                <code class="filename">/run/systemd/journal/syslog</code>, if it exists, which
+                may be used by Unix syslog daemons to process the data
+                further.</p><p>See
+                <a href="journald.conf.html"><span class="citerefentry"><span class="refentrytitle">journald.conf</span>(5)</span></a>
+                for information about the configuration of this
+                service.</p></div><div class="refsect1"><a name="idm214181154000"></a><h2 id="Signals">Signals<a class="headerlink" title="Permalink to this headline" href="#Signals">¶</a></h2><div class="variablelist"><dl class="variablelist"><dt id="SIGUSR1"><span class="term">SIGUSR1</span><a class="headerlink" title="Permalink to this term" href="#SIGUSR1">¶</a></dt><dd><p>Request that journal
+                                data from <code class="filename">/run/</code>
+                                is flushed to
+                                <code class="filename">/var/</code> in order to
+                                make it persistent (if this is
+                                enabled). This must be used after
+                                <code class="filename">/var/</code> is mounted,
+                                as otherwise log data from
+                                <code class="filename">/run</code> is never
+                                flushed to <code class="filename">/var</code>
+                                regardless of the
+                                configuration.</p></dd><dt id="SIGUSR2"><span class="term">SIGUSR2</span><a class="headerlink" title="Permalink to this term" href="#SIGUSR2">¶</a></dt><dd><p>Request immediate
+                                rotation of the journal
+                                files.</p></dd></dl></div></div><div class="refsect1"><a name="idm214181146192"></a><h2 id="Kernel Command Line">Kernel Command Line<a class="headerlink" title="Permalink to this headline" href="#Kernel%20Command%20Line">¶</a></h2><p>A few configuration parameters from
+                <code class="filename">journald.conf</code> may be overridden on
+                the kernel command line:</p><div class="variablelist"><dl class="variablelist"><dt id="systemd.journald.forward_to_syslog="><span class="term"><code class="varname">systemd.journald.forward_to_syslog=</code>, </span><span class="term"><code class="varname">systemd.journald.forward_to_kmsg=</code>, </span><span class="term"><code class="varname">systemd.journald.forward_to_console=</code>, </span><span class="term"><code class="varname">systemd.journald.forward_to_wall=</code></span><a class="headerlink" title="Permalink to this term" href="#systemd.journald.forward_to_syslog=">¶</a></dt><dd><p>Enables/disables
+                                forwarding of collected log messages
+                                to syslog, the kernel log buffer, the
+                                system console or wall.
+                                </p><p>See
+                                <a href="journald.conf.html"><span class="citerefentry"><span class="refentrytitle">journald.conf</span>(5)</span></a>
+                                for information about these settings.</p></dd></dl></div></div><div class="refsect1"><a name="idm214181138896"></a><h2 id="Access Control">Access Control<a class="headerlink" title="Permalink to this headline" href="#Access%20Control">¶</a></h2><p>Journal files are, by default, owned and readable
+                by the "<code class="literal">systemd-journal</code>" system group
+                but are not writable. Adding a user to this group thus
+                enables her/him to read the journal files.</p><p>By default, each logged in user will get her/his
+                own set of journal files in
+                <code class="filename">/var/log/journal/</code>. These files
+                will not be owned by the user, however, in order to
+                avoid that the user can write to them
+                directly. Instead, file system ACLs are used to ensure
+                the user gets read access only.</p><p>Additional users and groups may be granted
+                access to journal files via file system access control
+                lists (ACL). Distributions and administrators may
+                choose to grant read access to all members of the
+                "<code class="literal">wheel</code>" and "<code class="literal">adm</code>"
+                system groups with a command such as the
+                following:</p><pre class="programlisting"># setfacl -Rnm g:wheel:rx,d:g:wheel:rx,g:adm:rx,d:g:adm:rx /var/log/journal/</pre><p>Note that this command will update the ACLs both
+                for existing journal files and for future journal
+                files created in the
+                <code class="filename">/var/log/journal/</code>
+                directory.</p></div><div class="refsect1"><a name="idm214181124160"></a><h2 id="Files">Files<a class="headerlink" title="Permalink to this headline" href="#Files">¶</a></h2><div class="variablelist"><dl class="variablelist"><dt id="/etc/systemd/journald.conf"><span class="term"><code class="filename">/etc/systemd/journald.conf</code></span><a class="headerlink" title="Permalink to this term" href="#/etc/systemd/journald.conf">¶</a></dt><dd><p>Configure
+                                <span class="command"><strong>systemd-journald</strong></span>
+                                behaviour. See
+                                <a href="journald.conf.html"><span class="citerefentry"><span class="refentrytitle">journald.conf</span>(5)</span></a>.
+                                </p></dd><dt id="/run/log/journal/machine-id/*.journal"><span class="term"><code class="filename">/run/log/journal/<em class="replaceable"><code>machine-id</code></em>/*.journal</code>, </span><span class="term"><code class="filename">/run/log/journal/<em class="replaceable"><code>machine-id</code></em>/*.journal~</code>, </span><span class="term"><code class="filename">/var/log/journal/<em class="replaceable"><code>machine-id</code></em>/*.journal</code>, </span><span class="term"><code class="filename">/var/log/journal/<em class="replaceable"><code>machine-id</code></em>/*.journal~</code></span><a class="headerlink" title="Permalink to this term" href="#/run/log/journal/machine-id/*.journal">¶</a></dt><dd><p><span class="command"><strong>systemd-journald</strong></span>
+                                writes entries to files in
+                                <code class="filename">/run/log/journal/<em class="replaceable"><code>machine-id</code></em>/</code>
+                                or
+                                <code class="filename">/var/log/journal/<em class="replaceable"><code>machine-id</code></em>/</code>
+                                with the "<code class="literal">.journal</code>"
+                                suffix. If the daemon is stopped
+                                uncleanly, or if the files are found
+                                to be corrupted, they are renamed
+                                using the "<code class="literal">.journal~</code>"
+                                suffix, and
+                                <span class="command"><strong>systemd-journald</strong></span>
+                                starts writing to a new
+                                file. <code class="filename">/run</code> is
+                                used when
+                                <code class="filename">/var/log/journal</code>
+                                is not available, or when
+                                <code class="option">Storage=volatile</code> is
+                                set in the
+                                <a href="journald.conf.html"><span class="citerefentry"><span class="refentrytitle">journald.conf</span>(5)</span></a>
+                                configuration file.
+                                </p></dd></dl></div></div><div class="refsect1"><a name="idm214176140576"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+                        <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
+                        <a href="journalctl.html"><span class="citerefentry"><span class="refentrytitle">journalctl</span>(1)</span></a>,
+                        <a href="journald.conf.html"><span class="citerefentry"><span class="refentrytitle">journald.conf</span>(5)</span></a>,
+                        <a href="systemd.journal-fields.html"><span class="citerefentry"><span class="refentrytitle">systemd.journal-fields</span>(7)</span></a>,
+                        <a href="sd-journal.html"><span class="citerefentry"><span class="refentrytitle">sd-journal</span>(3)</span></a>,
+                        <a href="setfacl.html"><span class="citerefentry"><span class="refentrytitle">setfacl</span>(1)</span></a>,
+                        <span class="command"><strong>pydoc systemd.journal</strong></span>.
+                </p></div></div></body></html>
index 5447f485bc30082d5805b237e56c3e9b449b3f4a..3e6678fc734e689057e2882f78304a97f575b1f8 100644 (file)
@@ -19,7 +19,7 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="systemd-journald.service"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>systemd-journald.service, systemd-journald.socket, systemd-journald-dev-log.socket, systemd-journald — Journal service</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><p><code class="filename">systemd-journald.service</code></p><p><code class="filename">systemd-journald.socket</code></p><p><code class="filename">systemd-journald-dev-log.socket</code></p><p><code class="filename">/usr/lib/systemd/systemd-journald</code></p></div><div class="refsect1"><a name="idm214193916096"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="filename">systemd-journald</code> is a
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="systemd-journald.service"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>systemd-journald.service, systemd-journald.socket, systemd-journald-dev-log.socket, systemd-journald — Journal service</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><p><code class="filename">systemd-journald.service</code></p><p><code class="filename">systemd-journald.socket</code></p><p><code class="filename">systemd-journald-dev-log.socket</code></p><p><code class="filename">/usr/lib/systemd/systemd-journald</code></p></div><div class="refsect1"><a name="idm214181031376"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="filename">systemd-journald</code> is a
                 system service that collects and stores logging data.
                 It creates and maintains structured, indexed journals
                 based on logging information that is received from the
@@ -49,7 +49,7 @@
                 further.</p><p>See
                 <a href="journald.conf.html"><span class="citerefentry"><span class="refentrytitle">journald.conf</span>(5)</span></a>
                 for information about the configuration of this
-                service.</p></div><div class="refsect1"><a name="idm214197808224"></a><h2 id="Signals">Signals<a class="headerlink" title="Permalink to this headline" href="#Signals">¶</a></h2><div class="variablelist"><dl class="variablelist"><dt id="SIGUSR1"><span class="term">SIGUSR1</span><a class="headerlink" title="Permalink to this term" href="#SIGUSR1">¶</a></dt><dd><p>Request that journal
+                service.</p></div><div class="refsect1"><a name="idm214181154000"></a><h2 id="Signals">Signals<a class="headerlink" title="Permalink to this headline" href="#Signals">¶</a></h2><div class="variablelist"><dl class="variablelist"><dt id="SIGUSR1"><span class="term">SIGUSR1</span><a class="headerlink" title="Permalink to this term" href="#SIGUSR1">¶</a></dt><dd><p>Request that journal
                                 data from <code class="filename">/run/</code>
                                 is flushed to
                                 <code class="filename">/var/</code> in order to
@@ -62,7 +62,7 @@
                                 regardless of the
                                 configuration.</p></dd><dt id="SIGUSR2"><span class="term">SIGUSR2</span><a class="headerlink" title="Permalink to this term" href="#SIGUSR2">¶</a></dt><dd><p>Request immediate
                                 rotation of the journal
-                                files.</p></dd></dl></div></div><div class="refsect1"><a name="idm214197800320"></a><h2 id="Kernel Command Line">Kernel Command Line<a class="headerlink" title="Permalink to this headline" href="#Kernel%20Command%20Line">¶</a></h2><p>A few configuration parameters from
+                                files.</p></dd></dl></div></div><div class="refsect1"><a name="idm214181146192"></a><h2 id="Kernel Command Line">Kernel Command Line<a class="headerlink" title="Permalink to this headline" href="#Kernel%20Command%20Line">¶</a></h2><p>A few configuration parameters from
                 <code class="filename">journald.conf</code> may be overridden on
                 the kernel command line:</p><div class="variablelist"><dl class="variablelist"><dt id="systemd.journald.forward_to_syslog="><span class="term"><code class="varname">systemd.journald.forward_to_syslog=</code>, </span><span class="term"><code class="varname">systemd.journald.forward_to_kmsg=</code>, </span><span class="term"><code class="varname">systemd.journald.forward_to_console=</code>, </span><span class="term"><code class="varname">systemd.journald.forward_to_wall=</code></span><a class="headerlink" title="Permalink to this term" href="#systemd.journald.forward_to_syslog=">¶</a></dt><dd><p>Enables/disables
                                 forwarding of collected log messages
@@ -70,7 +70,7 @@
                                 system console or wall.
                                 </p><p>See
                                 <a href="journald.conf.html"><span class="citerefentry"><span class="refentrytitle">journald.conf</span>(5)</span></a>
-                                for information about these settings.</p></dd></dl></div></div><div class="refsect1"><a name="idm214197793024"></a><h2 id="Access Control">Access Control<a class="headerlink" title="Permalink to this headline" href="#Access%20Control">¶</a></h2><p>Journal files are, by default, owned and readable
+                                for information about these settings.</p></dd></dl></div></div><div class="refsect1"><a name="idm214181138896"></a><h2 id="Access Control">Access Control<a class="headerlink" title="Permalink to this headline" href="#Access%20Control">¶</a></h2><p>Journal files are, by default, owned and readable
                 by the "<code class="literal">systemd-journal</code>" system group
                 but are not writable. Adding a user to this group thus
                 enables her/him to read the journal files.</p><p>By default, each logged in user will get her/his
@@ -89,7 +89,7 @@
                 for existing journal files and for future journal
                 files created in the
                 <code class="filename">/var/log/journal/</code>
-                directory.</p></div><div class="refsect1"><a name="idm214197778064"></a><h2 id="Files">Files<a class="headerlink" title="Permalink to this headline" href="#Files">¶</a></h2><div class="variablelist"><dl class="variablelist"><dt id="/etc/systemd/journald.conf"><span class="term"><code class="filename">/etc/systemd/journald.conf</code></span><a class="headerlink" title="Permalink to this term" href="#/etc/systemd/journald.conf">¶</a></dt><dd><p>Configure
+                directory.</p></div><div class="refsect1"><a name="idm214181124160"></a><h2 id="Files">Files<a class="headerlink" title="Permalink to this headline" href="#Files">¶</a></h2><div class="variablelist"><dl class="variablelist"><dt id="/etc/systemd/journald.conf"><span class="term"><code class="filename">/etc/systemd/journald.conf</code></span><a class="headerlink" title="Permalink to this term" href="#/etc/systemd/journald.conf">¶</a></dt><dd><p>Configure
                                 <span class="command"><strong>systemd-journald</strong></span>
                                 behaviour. See
                                 <a href="journald.conf.html"><span class="citerefentry"><span class="refentrytitle">journald.conf</span>(5)</span></a>.
                                 set in the
                                 <a href="journald.conf.html"><span class="citerefentry"><span class="refentrytitle">journald.conf</span>(5)</span></a>
                                 configuration file.
-                                </p></dd></dl></div></div><div class="refsect1"><a name="idm214192844208"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+                                </p></dd></dl></div></div><div class="refsect1"><a name="idm214176140576"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
                         <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
                         <a href="journalctl.html"><span class="citerefentry"><span class="refentrytitle">journalctl</span>(1)</span></a>,
                         <a href="journald.conf.html"><span class="citerefentry"><span class="refentrytitle">journald.conf</span>(5)</span></a>,
index 7e77e707449e75565cee51de725ad013261d0222..dd937031e634a085873cf3bc25b4b660d679c182 100644 (file)
@@ -1,5 +1,5 @@
 '\" t
-.TH "SYSTEMD\-JOURNALD\&.SERVICE" "8" "" "systemd 214" "systemd-journald.service"
+.TH "SYSTEMD\-JOURNALD\&.SERVICE" "8" "" "systemd 215" "systemd-journald.service"
 .\" -----------------------------------------------------------------
 .\" * Define some portability stuff
 .\" -----------------------------------------------------------------
index 5447f485bc30082d5805b237e56c3e9b449b3f4a..3e6678fc734e689057e2882f78304a97f575b1f8 100644 (file)
@@ -19,7 +19,7 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="systemd-journald.service"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>systemd-journald.service, systemd-journald.socket, systemd-journald-dev-log.socket, systemd-journald — Journal service</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><p><code class="filename">systemd-journald.service</code></p><p><code class="filename">systemd-journald.socket</code></p><p><code class="filename">systemd-journald-dev-log.socket</code></p><p><code class="filename">/usr/lib/systemd/systemd-journald</code></p></div><div class="refsect1"><a name="idm214193916096"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="filename">systemd-journald</code> is a
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="systemd-journald.service"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>systemd-journald.service, systemd-journald.socket, systemd-journald-dev-log.socket, systemd-journald — Journal service</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><p><code class="filename">systemd-journald.service</code></p><p><code class="filename">systemd-journald.socket</code></p><p><code class="filename">systemd-journald-dev-log.socket</code></p><p><code class="filename">/usr/lib/systemd/systemd-journald</code></p></div><div class="refsect1"><a name="idm214181031376"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="filename">systemd-journald</code> is a
                 system service that collects and stores logging data.
                 It creates and maintains structured, indexed journals
                 based on logging information that is received from the
@@ -49,7 +49,7 @@
                 further.</p><p>See
                 <a href="journald.conf.html"><span class="citerefentry"><span class="refentrytitle">journald.conf</span>(5)</span></a>
                 for information about the configuration of this
-                service.</p></div><div class="refsect1"><a name="idm214197808224"></a><h2 id="Signals">Signals<a class="headerlink" title="Permalink to this headline" href="#Signals">¶</a></h2><div class="variablelist"><dl class="variablelist"><dt id="SIGUSR1"><span class="term">SIGUSR1</span><a class="headerlink" title="Permalink to this term" href="#SIGUSR1">¶</a></dt><dd><p>Request that journal
+                service.</p></div><div class="refsect1"><a name="idm214181154000"></a><h2 id="Signals">Signals<a class="headerlink" title="Permalink to this headline" href="#Signals">¶</a></h2><div class="variablelist"><dl class="variablelist"><dt id="SIGUSR1"><span class="term">SIGUSR1</span><a class="headerlink" title="Permalink to this term" href="#SIGUSR1">¶</a></dt><dd><p>Request that journal
                                 data from <code class="filename">/run/</code>
                                 is flushed to
                                 <code class="filename">/var/</code> in order to
@@ -62,7 +62,7 @@
                                 regardless of the
                                 configuration.</p></dd><dt id="SIGUSR2"><span class="term">SIGUSR2</span><a class="headerlink" title="Permalink to this term" href="#SIGUSR2">¶</a></dt><dd><p>Request immediate
                                 rotation of the journal
-                                files.</p></dd></dl></div></div><div class="refsect1"><a name="idm214197800320"></a><h2 id="Kernel Command Line">Kernel Command Line<a class="headerlink" title="Permalink to this headline" href="#Kernel%20Command%20Line">¶</a></h2><p>A few configuration parameters from
+                                files.</p></dd></dl></div></div><div class="refsect1"><a name="idm214181146192"></a><h2 id="Kernel Command Line">Kernel Command Line<a class="headerlink" title="Permalink to this headline" href="#Kernel%20Command%20Line">¶</a></h2><p>A few configuration parameters from
                 <code class="filename">journald.conf</code> may be overridden on
                 the kernel command line:</p><div class="variablelist"><dl class="variablelist"><dt id="systemd.journald.forward_to_syslog="><span class="term"><code class="varname">systemd.journald.forward_to_syslog=</code>, </span><span class="term"><code class="varname">systemd.journald.forward_to_kmsg=</code>, </span><span class="term"><code class="varname">systemd.journald.forward_to_console=</code>, </span><span class="term"><code class="varname">systemd.journald.forward_to_wall=</code></span><a class="headerlink" title="Permalink to this term" href="#systemd.journald.forward_to_syslog=">¶</a></dt><dd><p>Enables/disables
                                 forwarding of collected log messages
@@ -70,7 +70,7 @@
                                 system console or wall.
                                 </p><p>See
                                 <a href="journald.conf.html"><span class="citerefentry"><span class="refentrytitle">journald.conf</span>(5)</span></a>
-                                for information about these settings.</p></dd></dl></div></div><div class="refsect1"><a name="idm214197793024"></a><h2 id="Access Control">Access Control<a class="headerlink" title="Permalink to this headline" href="#Access%20Control">¶</a></h2><p>Journal files are, by default, owned and readable
+                                for information about these settings.</p></dd></dl></div></div><div class="refsect1"><a name="idm214181138896"></a><h2 id="Access Control">Access Control<a class="headerlink" title="Permalink to this headline" href="#Access%20Control">¶</a></h2><p>Journal files are, by default, owned and readable
                 by the "<code class="literal">systemd-journal</code>" system group
                 but are not writable. Adding a user to this group thus
                 enables her/him to read the journal files.</p><p>By default, each logged in user will get her/his
@@ -89,7 +89,7 @@
                 for existing journal files and for future journal
                 files created in the
                 <code class="filename">/var/log/journal/</code>
-                directory.</p></div><div class="refsect1"><a name="idm214197778064"></a><h2 id="Files">Files<a class="headerlink" title="Permalink to this headline" href="#Files">¶</a></h2><div class="variablelist"><dl class="variablelist"><dt id="/etc/systemd/journald.conf"><span class="term"><code class="filename">/etc/systemd/journald.conf</code></span><a class="headerlink" title="Permalink to this term" href="#/etc/systemd/journald.conf">¶</a></dt><dd><p>Configure
+                directory.</p></div><div class="refsect1"><a name="idm214181124160"></a><h2 id="Files">Files<a class="headerlink" title="Permalink to this headline" href="#Files">¶</a></h2><div class="variablelist"><dl class="variablelist"><dt id="/etc/systemd/journald.conf"><span class="term"><code class="filename">/etc/systemd/journald.conf</code></span><a class="headerlink" title="Permalink to this term" href="#/etc/systemd/journald.conf">¶</a></dt><dd><p>Configure
                                 <span class="command"><strong>systemd-journald</strong></span>
                                 behaviour. See
                                 <a href="journald.conf.html"><span class="citerefentry"><span class="refentrytitle">journald.conf</span>(5)</span></a>.
                                 set in the
                                 <a href="journald.conf.html"><span class="citerefentry"><span class="refentrytitle">journald.conf</span>(5)</span></a>
                                 configuration file.
-                                </p></dd></dl></div></div><div class="refsect1"><a name="idm214192844208"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+                                </p></dd></dl></div></div><div class="refsect1"><a name="idm214176140576"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
                         <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
                         <a href="journalctl.html"><span class="citerefentry"><span class="refentrytitle">journalctl</span>(1)</span></a>,
                         <a href="journald.conf.html"><span class="citerefentry"><span class="refentrytitle">journald.conf</span>(5)</span></a>,
index 5447f485bc30082d5805b237e56c3e9b449b3f4a..3e6678fc734e689057e2882f78304a97f575b1f8 100644 (file)
@@ -19,7 +19,7 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="systemd-journald.service"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>systemd-journald.service, systemd-journald.socket, systemd-journald-dev-log.socket, systemd-journald — Journal service</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><p><code class="filename">systemd-journald.service</code></p><p><code class="filename">systemd-journald.socket</code></p><p><code class="filename">systemd-journald-dev-log.socket</code></p><p><code class="filename">/usr/lib/systemd/systemd-journald</code></p></div><div class="refsect1"><a name="idm214193916096"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="filename">systemd-journald</code> is a
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="systemd-journald.service"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>systemd-journald.service, systemd-journald.socket, systemd-journald-dev-log.socket, systemd-journald — Journal service</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><p><code class="filename">systemd-journald.service</code></p><p><code class="filename">systemd-journald.socket</code></p><p><code class="filename">systemd-journald-dev-log.socket</code></p><p><code class="filename">/usr/lib/systemd/systemd-journald</code></p></div><div class="refsect1"><a name="idm214181031376"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="filename">systemd-journald</code> is a
                 system service that collects and stores logging data.
                 It creates and maintains structured, indexed journals
                 based on logging information that is received from the
@@ -49,7 +49,7 @@
                 further.</p><p>See
                 <a href="journald.conf.html"><span class="citerefentry"><span class="refentrytitle">journald.conf</span>(5)</span></a>
                 for information about the configuration of this
-                service.</p></div><div class="refsect1"><a name="idm214197808224"></a><h2 id="Signals">Signals<a class="headerlink" title="Permalink to this headline" href="#Signals">¶</a></h2><div class="variablelist"><dl class="variablelist"><dt id="SIGUSR1"><span class="term">SIGUSR1</span><a class="headerlink" title="Permalink to this term" href="#SIGUSR1">¶</a></dt><dd><p>Request that journal
+                service.</p></div><div class="refsect1"><a name="idm214181154000"></a><h2 id="Signals">Signals<a class="headerlink" title="Permalink to this headline" href="#Signals">¶</a></h2><div class="variablelist"><dl class="variablelist"><dt id="SIGUSR1"><span class="term">SIGUSR1</span><a class="headerlink" title="Permalink to this term" href="#SIGUSR1">¶</a></dt><dd><p>Request that journal
                                 data from <code class="filename">/run/</code>
                                 is flushed to
                                 <code class="filename">/var/</code> in order to
@@ -62,7 +62,7 @@
                                 regardless of the
                                 configuration.</p></dd><dt id="SIGUSR2"><span class="term">SIGUSR2</span><a class="headerlink" title="Permalink to this term" href="#SIGUSR2">¶</a></dt><dd><p>Request immediate
                                 rotation of the journal
-                                files.</p></dd></dl></div></div><div class="refsect1"><a name="idm214197800320"></a><h2 id="Kernel Command Line">Kernel Command Line<a class="headerlink" title="Permalink to this headline" href="#Kernel%20Command%20Line">¶</a></h2><p>A few configuration parameters from
+                                files.</p></dd></dl></div></div><div class="refsect1"><a name="idm214181146192"></a><h2 id="Kernel Command Line">Kernel Command Line<a class="headerlink" title="Permalink to this headline" href="#Kernel%20Command%20Line">¶</a></h2><p>A few configuration parameters from
                 <code class="filename">journald.conf</code> may be overridden on
                 the kernel command line:</p><div class="variablelist"><dl class="variablelist"><dt id="systemd.journald.forward_to_syslog="><span class="term"><code class="varname">systemd.journald.forward_to_syslog=</code>, </span><span class="term"><code class="varname">systemd.journald.forward_to_kmsg=</code>, </span><span class="term"><code class="varname">systemd.journald.forward_to_console=</code>, </span><span class="term"><code class="varname">systemd.journald.forward_to_wall=</code></span><a class="headerlink" title="Permalink to this term" href="#systemd.journald.forward_to_syslog=">¶</a></dt><dd><p>Enables/disables
                                 forwarding of collected log messages
@@ -70,7 +70,7 @@
                                 system console or wall.
                                 </p><p>See
                                 <a href="journald.conf.html"><span class="citerefentry"><span class="refentrytitle">journald.conf</span>(5)</span></a>
-                                for information about these settings.</p></dd></dl></div></div><div class="refsect1"><a name="idm214197793024"></a><h2 id="Access Control">Access Control<a class="headerlink" title="Permalink to this headline" href="#Access%20Control">¶</a></h2><p>Journal files are, by default, owned and readable
+                                for information about these settings.</p></dd></dl></div></div><div class="refsect1"><a name="idm214181138896"></a><h2 id="Access Control">Access Control<a class="headerlink" title="Permalink to this headline" href="#Access%20Control">¶</a></h2><p>Journal files are, by default, owned and readable
                 by the "<code class="literal">systemd-journal</code>" system group
                 but are not writable. Adding a user to this group thus
                 enables her/him to read the journal files.</p><p>By default, each logged in user will get her/his
@@ -89,7 +89,7 @@
                 for existing journal files and for future journal
                 files created in the
                 <code class="filename">/var/log/journal/</code>
-                directory.</p></div><div class="refsect1"><a name="idm214197778064"></a><h2 id="Files">Files<a class="headerlink" title="Permalink to this headline" href="#Files">¶</a></h2><div class="variablelist"><dl class="variablelist"><dt id="/etc/systemd/journald.conf"><span class="term"><code class="filename">/etc/systemd/journald.conf</code></span><a class="headerlink" title="Permalink to this term" href="#/etc/systemd/journald.conf">¶</a></dt><dd><p>Configure
+                directory.</p></div><div class="refsect1"><a name="idm214181124160"></a><h2 id="Files">Files<a class="headerlink" title="Permalink to this headline" href="#Files">¶</a></h2><div class="variablelist"><dl class="variablelist"><dt id="/etc/systemd/journald.conf"><span class="term"><code class="filename">/etc/systemd/journald.conf</code></span><a class="headerlink" title="Permalink to this term" href="#/etc/systemd/journald.conf">¶</a></dt><dd><p>Configure
                                 <span class="command"><strong>systemd-journald</strong></span>
                                 behaviour. See
                                 <a href="journald.conf.html"><span class="citerefentry"><span class="refentrytitle">journald.conf</span>(5)</span></a>.
                                 set in the
                                 <a href="journald.conf.html"><span class="citerefentry"><span class="refentrytitle">journald.conf</span>(5)</span></a>
                                 configuration file.
-                                </p></dd></dl></div></div><div class="refsect1"><a name="idm214192844208"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+                                </p></dd></dl></div></div><div class="refsect1"><a name="idm214176140576"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
                         <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
                         <a href="journalctl.html"><span class="citerefentry"><span class="refentrytitle">journalctl</span>(1)</span></a>,
                         <a href="journald.conf.html"><span class="citerefentry"><span class="refentrytitle">journald.conf</span>(5)</span></a>,
index b03dd784bdca665cc3e5a1877c722055e18db837..4a22e8c9fc16e31eab8579fee56de6f97e42887b 100644 (file)
@@ -19,7 +19,7 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="systemd-halt.service"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>systemd-halt.service, systemd-poweroff.service, systemd-reboot.service, systemd-kexec.service, systemd-shutdown — System shutdown logic</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><p><code class="filename">systemd-halt.service</code></p><p><code class="filename">systemd-poweroff.service</code></p><p><code class="filename">systemd-reboot.service</code></p><p><code class="filename">systemd-kexec.service</code></p><p><code class="filename">/usr/lib/systemd/systemd-shutdown</code></p></div><div class="refsect1"><a name="idm214170881184"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="filename">systemd-halt.service</code> is a
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="systemd-halt.service"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>systemd-halt.service, systemd-poweroff.service, systemd-reboot.service, systemd-kexec.service, systemd-shutdown — System shutdown logic</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><p><code class="filename">systemd-halt.service</code></p><p><code class="filename">systemd-poweroff.service</code></p><p><code class="filename">systemd-reboot.service</code></p><p><code class="filename">systemd-kexec.service</code></p><p><code class="filename">/usr/lib/systemd/systemd-shutdown</code></p></div><div class="refsect1"><a name="idm214183037312"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="filename">systemd-halt.service</code> is a
                 system service that is pulled in by
                 <code class="filename">halt.target</code> and is responsible
                 for the actual system halt. Similarly,
@@ -57,7 +57,7 @@
                 related units) should never be executed
                 directly. Instead, trigger system shutdown with a
                 command such as "<code class="literal">systemctl halt</code>" or
-                suchlike.</p></div><div class="refsect1"><a name="idm214167153872"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+                suchlike.</p></div><div class="refsect1"><a name="idm214183155536"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
                         <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
                         <a href="systemctl.html"><span class="citerefentry"><span class="refentrytitle">systemctl</span>(1)</span></a>,
                         <a href="systemd.special.html"><span class="citerefentry"><span class="refentrytitle">systemd.special</span>(7)</span></a>,
index 401e23d33500bdd1ea503acca3e6d3b50924bbc1..e92a1efa11adbc344fffd8d18371de64bc3831ee 100644 (file)
@@ -19,7 +19,7 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="systemd-localed.service"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>systemd-localed.service, systemd-localed — Locale bus mechanism</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><p><code class="filename">systemd-localed.service</code></p><p><code class="filename">/usr/lib/systemd/systemd-localed</code></p></div><div class="refsect1"><a name="idm214167485904"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="filename">systemd-localed</code> is a system
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="systemd-localed.service"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>systemd-localed.service, systemd-localed — Locale bus mechanism</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><p><code class="filename">systemd-localed.service</code></p><p><code class="filename">/usr/lib/systemd/systemd-localed</code></p></div><div class="refsect1"><a name="idm214174064512"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="filename">systemd-localed</code> is a system
                 service that may be used as mechanism to change the
                 system locale settings, as well as the console key
                 mapping and default X11 key
@@ -30,7 +30,7 @@
                 is a command line client to this service.</p><p>See the <a class="ulink" href="http://www.freedesktop.org/wiki/Software/systemd/localed" target="_top">
                 developer documentation</a> for information about
                 the APIs <code class="filename">systemd-localed</code>
-                provides.</p></div><div class="refsect1"><a name="idm214167480096"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+                provides.</p></div><div class="refsect1"><a name="idm214174058656"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
                         <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
                         <a href="locale.conf.html"><span class="citerefentry"><span class="refentrytitle">locale.conf</span>(5)</span></a>,
                         <a href="vconsole.conf.html"><span class="citerefentry"><span class="refentrytitle">vconsole.conf</span>(5)</span></a>,
index 4d875dc09b03d0631bf6bff85798956f3bdd8d24..e1b929b15668e5b05b9d323e11e0aed2cf2bf233 100644 (file)
@@ -1,5 +1,5 @@
 '\" t
-.TH "SYSTEMD\-LOCALED\&.SERVICE" "8" "" "systemd 214" "systemd-localed.service"
+.TH "SYSTEMD\-LOCALED\&.SERVICE" "8" "" "systemd 215" "systemd-localed.service"
 .\" -----------------------------------------------------------------
 .\" * Define some portability stuff
 .\" -----------------------------------------------------------------
index 401e23d33500bdd1ea503acca3e6d3b50924bbc1..e92a1efa11adbc344fffd8d18371de64bc3831ee 100644 (file)
@@ -19,7 +19,7 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="systemd-localed.service"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>systemd-localed.service, systemd-localed — Locale bus mechanism</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><p><code class="filename">systemd-localed.service</code></p><p><code class="filename">/usr/lib/systemd/systemd-localed</code></p></div><div class="refsect1"><a name="idm214167485904"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="filename">systemd-localed</code> is a system
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="systemd-localed.service"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>systemd-localed.service, systemd-localed — Locale bus mechanism</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><p><code class="filename">systemd-localed.service</code></p><p><code class="filename">/usr/lib/systemd/systemd-localed</code></p></div><div class="refsect1"><a name="idm214174064512"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="filename">systemd-localed</code> is a system
                 service that may be used as mechanism to change the
                 system locale settings, as well as the console key
                 mapping and default X11 key
@@ -30,7 +30,7 @@
                 is a command line client to this service.</p><p>See the <a class="ulink" href="http://www.freedesktop.org/wiki/Software/systemd/localed" target="_top">
                 developer documentation</a> for information about
                 the APIs <code class="filename">systemd-localed</code>
-                provides.</p></div><div class="refsect1"><a name="idm214167480096"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+                provides.</p></div><div class="refsect1"><a name="idm214174058656"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
                         <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
                         <a href="locale.conf.html"><span class="citerefentry"><span class="refentrytitle">locale.conf</span>(5)</span></a>,
                         <a href="vconsole.conf.html"><span class="citerefentry"><span class="refentrytitle">vconsole.conf</span>(5)</span></a>,
index 789ae042eddf9bad03cf4f2dfac6a965e1b3bc74..bfa2dcfb55fe6cdac45de355c6f8cea1b155ca63 100644 (file)
@@ -19,7 +19,7 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="systemd-logind.service"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>systemd-logind.service, systemd-logind — Login manager</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><p><code class="filename">systemd-logind.service</code></p><p><code class="filename">/usr/lib/systemd/systemd-logind</code></p></div><div class="refsect1"><a name="idm214189120976"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><span class="command"><strong>systemd-logind</strong></span> is a system
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="systemd-logind.service"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>systemd-logind.service, systemd-logind — Login manager</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><p><code class="filename">systemd-logind.service</code></p><p><code class="filename">/usr/lib/systemd/systemd-logind</code></p></div><div class="refsect1"><a name="idm214173995056"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><span class="command"><strong>systemd-logind</strong></span> is a system
                 service that manages user logins. It is responsible
                 for:</p><div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "><li class="listitem"><p>Keeping track of users and
                         sessions, their processes and their idle
@@ -46,7 +46,7 @@
                 the APIs <code class="filename">systemd-logind</code>
                 provides.</p><p>For more information on the inhibition logic see
                 the <a class="ulink" href="http://www.freedesktop.org/wiki/Software/systemd/inhibit" target="_top">Inhibitor
-                Lock Developer Documentation</a>.</p></div><div class="refsect1"><a name="idm214189107376"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+                Lock Developer Documentation</a>.</p></div><div class="refsect1"><a name="idm214173981456"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
                         <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
                         <a href="systemd-user-sessions.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-user-sessions.service</span>(8)</span></a>,
                         <a href="loginctl.html"><span class="citerefentry"><span class="refentrytitle">loginctl</span>(1)</span></a>,
index ddf31386461b668386adb51298e8fb1f8fca8bcc..3ab8f7e2219921fa92f86274f01e42f6aadff0a1 100644 (file)
@@ -1,5 +1,5 @@
 '\" t
-.TH "SYSTEMD\-LOGIND\&.SERVICE" "8" "" "systemd 214" "systemd-logind.service"
+.TH "SYSTEMD\-LOGIND\&.SERVICE" "8" "" "systemd 215" "systemd-logind.service"
 .\" -----------------------------------------------------------------
 .\" * Define some portability stuff
 .\" -----------------------------------------------------------------
index 789ae042eddf9bad03cf4f2dfac6a965e1b3bc74..bfa2dcfb55fe6cdac45de355c6f8cea1b155ca63 100644 (file)
@@ -19,7 +19,7 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="systemd-logind.service"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>systemd-logind.service, systemd-logind — Login manager</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><p><code class="filename">systemd-logind.service</code></p><p><code class="filename">/usr/lib/systemd/systemd-logind</code></p></div><div class="refsect1"><a name="idm214189120976"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><span class="command"><strong>systemd-logind</strong></span> is a system
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="systemd-logind.service"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>systemd-logind.service, systemd-logind — Login manager</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><p><code class="filename">systemd-logind.service</code></p><p><code class="filename">/usr/lib/systemd/systemd-logind</code></p></div><div class="refsect1"><a name="idm214173995056"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><span class="command"><strong>systemd-logind</strong></span> is a system
                 service that manages user logins. It is responsible
                 for:</p><div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "><li class="listitem"><p>Keeping track of users and
                         sessions, their processes and their idle
@@ -46,7 +46,7 @@
                 the APIs <code class="filename">systemd-logind</code>
                 provides.</p><p>For more information on the inhibition logic see
                 the <a class="ulink" href="http://www.freedesktop.org/wiki/Software/systemd/inhibit" target="_top">Inhibitor
-                Lock Developer Documentation</a>.</p></div><div class="refsect1"><a name="idm214189107376"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+                Lock Developer Documentation</a>.</p></div><div class="refsect1"><a name="idm214173981456"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
                         <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
                         <a href="systemd-user-sessions.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-user-sessions.service</span>(8)</span></a>,
                         <a href="loginctl.html"><span class="citerefentry"><span class="refentrytitle">loginctl</span>(1)</span></a>,
index cee4b1f145a9c6a18037fae19ffc1240b13ba3e7..70ba638b84c432089d5de79e36982fe050a0c555 100644 (file)
@@ -1,5 +1,5 @@
 '\" t
-.TH "SYSTEMD\-MACHINE\-ID\-SETUP" "1" "" "systemd 214" "systemd-machine-id-setup"
+.TH "SYSTEMD\-MACHINE\-ID\-SETUP" "1" "" "systemd 215" "systemd-machine-id-setup"
 .\" -----------------------------------------------------------------
 .\" * Define some portability stuff
 .\" -----------------------------------------------------------------
index febc353ddb17982f92661cb7958c53fa8959f27a..d8e7338c8b3aa70aafe1ca382025de61c784b944 100644 (file)
@@ -19,7 +19,7 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="systemd-machine-id-setup"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>systemd-machine-id-setup — Initialize the machine ID in /etc/machine-id</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="cmdsynopsis"><p><code class="command">systemd-machine-id-setup</code> </p></div></div><div class="refsect1"><a name="idm214197540336"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><span class="command"><strong>systemd-machine-id-setup</strong></span> may
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="systemd-machine-id-setup"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>systemd-machine-id-setup — Initialize the machine ID in /etc/machine-id</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="cmdsynopsis"><p><code class="command">systemd-machine-id-setup</code> </p></div></div><div class="refsect1"><a name="idm214188444320"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><span class="command"><strong>systemd-machine-id-setup</strong></span> may
                 be used by system installer tools to initialize the
                 machine ID stored in
                 <code class="filename">/etc/machine-id</code> at install time
                 environment and a UUID is set for the container this
                 is used to initialize the machine ID. For details see
                 the documentation of the <a class="ulink" href="http://www.freedesktop.org/wiki/Software/systemd/ContainerInterface" target="_top">Container
-                Interface</a>.</p></div><div class="refsect1"><a name="idm214197532208"></a><h2 id="Options">Options<a class="headerlink" title="Permalink to this headline" href="#Options">¶</a></h2><p>The following options are understood:</p><div class="variablelist"><dl class="variablelist"><dt id="--root=root"><span class="term"><code class="option">--root=<em class="replaceable"><code>root</code></em></code></span><a class="headerlink" title="Permalink to this term" href="#--root=root">¶</a></dt><dd><p>Takes a directory path
+                Interface</a>.</p></div><div class="refsect1"><a name="idm214188484688"></a><h2 id="Options">Options<a class="headerlink" title="Permalink to this headline" href="#Options">¶</a></h2><p>The following options are understood:</p><div class="variablelist"><dl class="variablelist"><dt id="--root=root"><span class="term"><code class="option">--root=<em class="replaceable"><code>root</code></em></code></span><a class="headerlink" title="Permalink to this term" href="#--root=root">¶</a></dt><dd><p>Takes a directory path
                                 as an argument. All paths will be
                                 prefixed with the given alternate
                                 <em class="replaceable"><code>root</code></em> path,
                                 including config search paths.
                                 </p></dd><dt id="-h"><span class="term"><code class="option">-h</code>, </span><span class="term"><code class="option">--help</code></span><a class="headerlink" title="Permalink to this term" href="#-h">¶</a></dt><dd><p><a name="help-text"></a>Print a short help text and exit.
-    </p></dd><dt id="--version"><span class="term"><code class="option">--version</code></span><a class="headerlink" title="Permalink to this term" href="#--version">¶</a></dt><dd><p><a name="version-text"></a>Print a short version string and exit.</p></dd></dl></div></div><div class="refsect1"><a name="idm214197526432"></a><h2 id="Exit status">Exit status<a class="headerlink" title="Permalink to this headline" href="#Exit%20status">¶</a></h2><p>On success, 0 is returned, a non-zero failure
-                code otherwise.</p></div><div class="refsect1"><a name="idm214201429360"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+    </p></dd><dt id="--version"><span class="term"><code class="option">--version</code></span><a class="headerlink" title="Permalink to this term" href="#--version">¶</a></dt><dd><p><a name="version-text"></a>Print a short version string and exit.</p></dd></dl></div></div><div class="refsect1"><a name="idm214188478912"></a><h2 id="Exit status">Exit status<a class="headerlink" title="Permalink to this headline" href="#Exit%20status">¶</a></h2><p>On success, 0 is returned, a non-zero failure
+                code otherwise.</p></div><div class="refsect1"><a name="idm214188437312"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
                         <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
                         <a href="machine-id.html"><span class="citerefentry"><span class="refentrytitle">machine-id</span>(5)</span></a>,
                         <a href="dbus-uuidgen.html"><span class="citerefentry"><span class="refentrytitle">dbus-uuidgen</span>(1)</span></a>
index c0f959a8af31eb6f0539c64732f5cadea83797dd..e047ff1dcc01a7b16a539367f198f45f772be772 100644 (file)
@@ -19,7 +19,7 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="systemd-machined.service"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>systemd-machined.service, systemd-machined — Virtual machine and container registration manager</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><p><code class="filename">systemd-machined.service</code></p><p><code class="filename">/usr/lib/systemd/systemd-machined</code></p></div><div class="refsect1"><a name="idm214195272464"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><span class="command"><strong>systemd-machined</strong></span> is a
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="systemd-machined.service"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>systemd-machined.service, systemd-machined — Virtual machine and container registration manager</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><p><code class="filename">systemd-machined.service</code></p><p><code class="filename">/usr/lib/systemd/systemd-machined</code></p></div><div class="refsect1"><a name="idm214184685392"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><span class="command"><strong>systemd-machined</strong></span> is a
                 system service that keeps track of virtual machines
                 and containers, and processes belonging to
                 them.</p><p>See
@@ -28,7 +28,7 @@
                 way.</p><p>See the <a class="ulink" href="http://www.freedesktop.org/wiki/Software/systemd/machined" target="_top">
                 machined D-Bus API Documentation</a> for information about
                 the APIs <code class="filename">systemd-machined</code>
-                provides.</p></div><div class="refsect1"><a name="idm214195294240"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+                provides.</p></div><div class="refsect1"><a name="idm214184680320"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
                         <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
                         <a href="machinectl.html"><span class="citerefentry"><span class="refentrytitle">machinectl</span>(1)</span></a>,
                         <a href="systemd.special.html"><span class="citerefentry"><span class="refentrytitle">systemd.special</span>(7)</span></a>.
index 51678b1ca960a0d5445441ade1be710aeffb27ef..a1cc2a7b5cdea11bd6758c93bc6eaf59619e6615 100644 (file)
@@ -1,5 +1,5 @@
 '\" t
-.TH "SYSTEMD\-MACHINED\&.SERVICE" "8" "" "systemd 214" "systemd-machined.service"
+.TH "SYSTEMD\-MACHINED\&.SERVICE" "8" "" "systemd 215" "systemd-machined.service"
 .\" -----------------------------------------------------------------
 .\" * Define some portability stuff
 .\" -----------------------------------------------------------------
index c0f959a8af31eb6f0539c64732f5cadea83797dd..e047ff1dcc01a7b16a539367f198f45f772be772 100644 (file)
@@ -19,7 +19,7 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="systemd-machined.service"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>systemd-machined.service, systemd-machined — Virtual machine and container registration manager</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><p><code class="filename">systemd-machined.service</code></p><p><code class="filename">/usr/lib/systemd/systemd-machined</code></p></div><div class="refsect1"><a name="idm214195272464"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><span class="command"><strong>systemd-machined</strong></span> is a
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="systemd-machined.service"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>systemd-machined.service, systemd-machined — Virtual machine and container registration manager</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><p><code class="filename">systemd-machined.service</code></p><p><code class="filename">/usr/lib/systemd/systemd-machined</code></p></div><div class="refsect1"><a name="idm214184685392"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><span class="command"><strong>systemd-machined</strong></span> is a
                 system service that keeps track of virtual machines
                 and containers, and processes belonging to
                 them.</p><p>See
@@ -28,7 +28,7 @@
                 way.</p><p>See the <a class="ulink" href="http://www.freedesktop.org/wiki/Software/systemd/machined" target="_top">
                 machined D-Bus API Documentation</a> for information about
                 the APIs <code class="filename">systemd-machined</code>
-                provides.</p></div><div class="refsect1"><a name="idm214195294240"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+                provides.</p></div><div class="refsect1"><a name="idm214184680320"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
                         <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
                         <a href="machinectl.html"><span class="citerefentry"><span class="refentrytitle">machinectl</span>(1)</span></a>,
                         <a href="systemd.special.html"><span class="citerefentry"><span class="refentrytitle">systemd.special</span>(7)</span></a>.
index 779c4260f127880dca50d2cc2b04cea9071a1755..7b0ca8374021a07028392ed0db281e348b3573eb 100644 (file)
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="systemd-modules-load.service"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>systemd-modules-load.service, systemd-modules-load — Configure kernel modules to load at boot</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><p><code class="filename">systemd-modules-load.service</code></p><p><code class="filename">/usr/lib/systemd/systemd-modules-load</code></p></div><div class="refsect1"><a name="idm214181802064"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="filename">systemd-modules-load.service</code>
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="systemd-modules-load.service"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>systemd-modules-load.service, systemd-modules-load — Configure kernel modules to load at boot</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><p><code class="filename">systemd-modules-load.service</code></p><p><code class="filename">/usr/lib/systemd/systemd-modules-load</code></p></div><div class="refsect1"><a name="idm214192618816"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="filename">systemd-modules-load.service</code>
                 is an early-boot service that loads kernel modules
                 from static configuration.</p><p>See
                 <a href="modules-load.d.html"><span class="citerefentry"><span class="refentrytitle">modules-load.d</span>(5)</span></a>
                 for information about the configuration of this
-                service.</p></div><div class="refsect1"><a name="idm214182445392"></a><h2 id="Kernel Command Line">Kernel Command Line<a class="headerlink" title="Permalink to this headline" href="#Kernel%20Command%20Line">¶</a></h2><p><code class="filename">systemd-modules-load.service</code> understands
+                service.</p></div><div class="refsect1"><a name="idm214192643280"></a><h2 id="Kernel Command Line">Kernel Command Line<a class="headerlink" title="Permalink to this headline" href="#Kernel%20Command%20Line">¶</a></h2><p><code class="filename">systemd-modules-load.service</code> understands
                 the following kernel command line parameters:</p><div class="variablelist"><dl class="variablelist"><dt id="modules-load="><span class="term"><code class="varname">modules-load=</code>, </span><span class="term"><code class="varname">rd.modules-load=</code></span><a class="headerlink" title="Permalink to this term" href="#modules-load=">¶</a></dt><dd><p>Takes a comma-separated
                                 list of kernel modules to
                                 statically load during early boot. The
                                 option prefixed with
                                 "<code class="literal">rd.</code>" is read by the
                                 initial RAM disk
-                                only.</p></dd></dl></div></div><div class="refsect1"><a name="idm214183323152"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+                                only.</p></dd></dl></div></div><div class="refsect1"><a name="idm214188851968"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
                         <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
                         <a href="modules-load.d.html"><span class="citerefentry"><span class="refentrytitle">modules-load.d</span>(5)</span></a>,
                 </p></div></div></body></html>
index ba7030349e7dbe60d49ff7e42c430a1c8d6d5217..56a64f3f624a09def3e280a0400f73f221ed5f11 100644 (file)
@@ -1,5 +1,5 @@
 '\" t
-.TH "SYSTEMD\-MODULES\-LOAD\&.SERVICE" "8" "" "systemd 214" "systemd-modules-load.service"
+.TH "SYSTEMD\-MODULES\-LOAD\&.SERVICE" "8" "" "systemd 215" "systemd-modules-load.service"
 .\" -----------------------------------------------------------------
 .\" * Define some portability stuff
 .\" -----------------------------------------------------------------
index 779c4260f127880dca50d2cc2b04cea9071a1755..7b0ca8374021a07028392ed0db281e348b3573eb 100644 (file)
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="systemd-modules-load.service"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>systemd-modules-load.service, systemd-modules-load — Configure kernel modules to load at boot</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><p><code class="filename">systemd-modules-load.service</code></p><p><code class="filename">/usr/lib/systemd/systemd-modules-load</code></p></div><div class="refsect1"><a name="idm214181802064"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="filename">systemd-modules-load.service</code>
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="systemd-modules-load.service"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>systemd-modules-load.service, systemd-modules-load — Configure kernel modules to load at boot</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><p><code class="filename">systemd-modules-load.service</code></p><p><code class="filename">/usr/lib/systemd/systemd-modules-load</code></p></div><div class="refsect1"><a name="idm214192618816"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="filename">systemd-modules-load.service</code>
                 is an early-boot service that loads kernel modules
                 from static configuration.</p><p>See
                 <a href="modules-load.d.html"><span class="citerefentry"><span class="refentrytitle">modules-load.d</span>(5)</span></a>
                 for information about the configuration of this
-                service.</p></div><div class="refsect1"><a name="idm214182445392"></a><h2 id="Kernel Command Line">Kernel Command Line<a class="headerlink" title="Permalink to this headline" href="#Kernel%20Command%20Line">¶</a></h2><p><code class="filename">systemd-modules-load.service</code> understands
+                service.</p></div><div class="refsect1"><a name="idm214192643280"></a><h2 id="Kernel Command Line">Kernel Command Line<a class="headerlink" title="Permalink to this headline" href="#Kernel%20Command%20Line">¶</a></h2><p><code class="filename">systemd-modules-load.service</code> understands
                 the following kernel command line parameters:</p><div class="variablelist"><dl class="variablelist"><dt id="modules-load="><span class="term"><code class="varname">modules-load=</code>, </span><span class="term"><code class="varname">rd.modules-load=</code></span><a class="headerlink" title="Permalink to this term" href="#modules-load=">¶</a></dt><dd><p>Takes a comma-separated
                                 list of kernel modules to
                                 statically load during early boot. The
                                 option prefixed with
                                 "<code class="literal">rd.</code>" is read by the
                                 initial RAM disk
-                                only.</p></dd></dl></div></div><div class="refsect1"><a name="idm214183323152"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+                                only.</p></dd></dl></div></div><div class="refsect1"><a name="idm214188851968"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
                         <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
                         <a href="modules-load.d.html"><span class="citerefentry"><span class="refentrytitle">modules-load.d</span>(5)</span></a>,
                 </p></div></div></body></html>
index f07a0c8bda69558eda04382d6d16db129fc0c499..fc03d13b8d826150913ba3b24f904eb423348880 100644 (file)
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="systemd-networkd-wait-online.service"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>systemd-networkd-wait-online.service, systemd-networkd-wait-online — Wait for network to come online</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><p><code class="filename">systemd-networkd-wait-online.service</code></p><p><code class="filename">/usr/lib/systemd/systemd-networkd-wait-online</code></p></div><div class="refsect1"><a name="idm214178785776"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><span class="command"><strong>systemd-networkd-wait-online</strong></span> is a
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="systemd-networkd-wait-online.service"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>systemd-networkd-wait-online.service, systemd-networkd-wait-online — Wait for network to come online</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><p><code class="filename">systemd-networkd-wait-online.service</code></p><p><code class="filename">/usr/lib/systemd/systemd-networkd-wait-online</code></p></div><div class="refsect1"><a name="idm214180302848"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><span class="command"><strong>systemd-networkd-wait-online</strong></span> is a
                 one-shot system service that waits for the network to be configured.
                 By default, it will wait for all links it is aware of and which are managed by
                 <a href="systemd-networkd.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-networkd.service</span>(8)</span></a>
                 to be fully configured or failed, and for at least one link to gain a
-                carrier.</p></div><div class="refsect1"><a name="idm214181741504"></a><h2 id="Options">Options<a class="headerlink" title="Permalink to this headline" href="#Options">¶</a></h2><p>The following options are understood:</p><div class="variablelist"><dl class="variablelist"><dt id="-i"><span class="term"><code class="option">-i</code>, </span><span class="term"><code class="option">--interface=</code></span><a class="headerlink" title="Permalink to this term" href="#-i">¶</a></dt><dd><p>Network interface to wait for
+                carrier.</p></div><div class="refsect1"><a name="idm214180299920"></a><h2 id="Options">Options<a class="headerlink" title="Permalink to this headline" href="#Options">¶</a></h2><p>The following options are understood:</p><div class="variablelist"><dl class="variablelist"><dt id="-i"><span class="term"><code class="option">-i</code>, </span><span class="term"><code class="option">--interface=</code></span><a class="headerlink" title="Permalink to this term" href="#-i">¶</a></dt><dd><p>Network interface to wait for
                                 before deciding if the system is online. This is
                                 useful when a system has several interfaces which
                                 will be configured, but a particular one is necessary
                                 to access some network resources. This option may be
                                 used more than once to wait for multiple network
-                                interfaces.</p></dd></dl></div></div><div class="refsect1"><a name="idm214177983472"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+                                interfaces.</p></dd></dl></div></div><div class="refsect1"><a name="idm214180295792"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
                         <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
                         <a href="systemd-networkd.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-networkd.service</span>(8)</span></a>
                 </p></div></div></body></html>
index c77f039c0efed51de88f7257be63e34e0b4057b6..09a17fc17b47399e69c5aafdb9a0504c4ebe1820 100644 (file)
@@ -1,5 +1,5 @@
 '\" t
-.TH "SYSTEMD\-NETWORKD\-WAIT\-ONLINE\&.SERVICE" "8" "" "systemd 214" "systemd-networkd.service"
+.TH "SYSTEMD\-NETWORKD\-WAIT\-ONLINE\&.SERVICE" "8" "" "systemd 215" "systemd-networkd.service"
 .\" -----------------------------------------------------------------
 .\" * Define some portability stuff
 .\" -----------------------------------------------------------------
index f07a0c8bda69558eda04382d6d16db129fc0c499..fc03d13b8d826150913ba3b24f904eb423348880 100644 (file)
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="systemd-networkd-wait-online.service"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>systemd-networkd-wait-online.service, systemd-networkd-wait-online — Wait for network to come online</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><p><code class="filename">systemd-networkd-wait-online.service</code></p><p><code class="filename">/usr/lib/systemd/systemd-networkd-wait-online</code></p></div><div class="refsect1"><a name="idm214178785776"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><span class="command"><strong>systemd-networkd-wait-online</strong></span> is a
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="systemd-networkd-wait-online.service"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>systemd-networkd-wait-online.service, systemd-networkd-wait-online — Wait for network to come online</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><p><code class="filename">systemd-networkd-wait-online.service</code></p><p><code class="filename">/usr/lib/systemd/systemd-networkd-wait-online</code></p></div><div class="refsect1"><a name="idm214180302848"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><span class="command"><strong>systemd-networkd-wait-online</strong></span> is a
                 one-shot system service that waits for the network to be configured.
                 By default, it will wait for all links it is aware of and which are managed by
                 <a href="systemd-networkd.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-networkd.service</span>(8)</span></a>
                 to be fully configured or failed, and for at least one link to gain a
-                carrier.</p></div><div class="refsect1"><a name="idm214181741504"></a><h2 id="Options">Options<a class="headerlink" title="Permalink to this headline" href="#Options">¶</a></h2><p>The following options are understood:</p><div class="variablelist"><dl class="variablelist"><dt id="-i"><span class="term"><code class="option">-i</code>, </span><span class="term"><code class="option">--interface=</code></span><a class="headerlink" title="Permalink to this term" href="#-i">¶</a></dt><dd><p>Network interface to wait for
+                carrier.</p></div><div class="refsect1"><a name="idm214180299920"></a><h2 id="Options">Options<a class="headerlink" title="Permalink to this headline" href="#Options">¶</a></h2><p>The following options are understood:</p><div class="variablelist"><dl class="variablelist"><dt id="-i"><span class="term"><code class="option">-i</code>, </span><span class="term"><code class="option">--interface=</code></span><a class="headerlink" title="Permalink to this term" href="#-i">¶</a></dt><dd><p>Network interface to wait for
                                 before deciding if the system is online. This is
                                 useful when a system has several interfaces which
                                 will be configured, but a particular one is necessary
                                 to access some network resources. This option may be
                                 used more than once to wait for multiple network
-                                interfaces.</p></dd></dl></div></div><div class="refsect1"><a name="idm214177983472"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+                                interfaces.</p></dd></dl></div></div><div class="refsect1"><a name="idm214180295792"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
                         <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
                         <a href="systemd-networkd.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-networkd.service</span>(8)</span></a>
                 </p></div></div></body></html>
index ebbdb422f155b95fdec547b84c5b146d139ac47c..8702ad5f257ccc6b34379345726ce6359f76b58e 100644 (file)
@@ -19,7 +19,7 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="systemd-networkd.service"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>systemd-networkd.service, systemd-networkd — Network manager</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><p><code class="filename">systemd-networkd.service</code></p><p><code class="filename">/usr/lib/systemd/systemd-networkd</code></p></div><div class="refsect1"><a name="idm214170770320"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><span class="command"><strong>systemd-networkd</strong></span> is a system
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="systemd-networkd.service"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>systemd-networkd.service, systemd-networkd — Network manager</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><p><code class="filename">systemd-networkd.service</code></p><p><code class="filename">/usr/lib/systemd/systemd-networkd</code></p></div><div class="refsect1"><a name="idm214195650544"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><span class="command"><strong>systemd-networkd</strong></span> is a system
                 service that manages networks. It detects and configures
                 network devices as they appear, as well as creating virtual
                 network devices.</p><p>To configure low-level link settings independently of
@@ -30,7 +30,7 @@
                 networkd may also optionally be left in place on shutdown. This ensures
                 restarting networkd does not cut the network connection, and, in particular,
                 that it is safe to transition between the initrd and the real root,
-                and back.</p></div><div class="refsect1"><a name="idm214170792944"></a><h2 id="Configuration Files">Configuration Files<a class="headerlink" title="Permalink to this headline" href="#Configuration%20Files">¶</a></h2><p>The configuration files are read from the files located in the
+                and back.</p></div><div class="refsect1"><a name="idm214195646336"></a><h2 id="Configuration Files">Configuration Files<a class="headerlink" title="Permalink to this headline" href="#Configuration%20Files">¶</a></h2><p>The configuration files are read from the files located in the
                 system network directory <code class="filename">/usr/lib/systemd/network</code>,
                 the volatile runtime network directory
                 <code class="filename">/run/systemd/network</code> and the local administration
@@ -38,7 +38,7 @@
                 <a href="systemd.network.html"><span class="citerefentry"><span class="refentrytitle">systemd.network</span>(5)</span></a>,
                 and virtual network devices are configured in <code class="filename">.netdev</code> files, see
                 <a href="systemd.netdev.html"><span class="citerefentry"><span class="refentrytitle">systemd.netdev</span>(5)</span></a>.
-                </p></div><div class="refsect1"><a name="idm214167004496"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+                </p></div><div class="refsect1"><a name="idm214195639536"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
                         <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
                         <a href="systemd.link.html"><span class="citerefentry"><span class="refentrytitle">systemd.link</span>(5)</span></a>,
                         <a href="systemd.network.html"><span class="citerefentry"><span class="refentrytitle">systemd.network</span>(5)</span></a>,
index 18747efa92cc094d756d1ccd14d039471d1cbc61..3284ffa9a512636d2b7e84a436604d310f973da9 100644 (file)
@@ -1,5 +1,5 @@
 '\" t
-.TH "SYSTEMD\-NETWORKD\&.SERVICE" "8" "" "systemd 214" "systemd-networkd.service"
+.TH "SYSTEMD\-NETWORKD\&.SERVICE" "8" "" "systemd 215" "systemd-networkd.service"
 .\" -----------------------------------------------------------------
 .\" * Define some portability stuff
 .\" -----------------------------------------------------------------
index ebbdb422f155b95fdec547b84c5b146d139ac47c..8702ad5f257ccc6b34379345726ce6359f76b58e 100644 (file)
@@ -19,7 +19,7 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="systemd-networkd.service"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>systemd-networkd.service, systemd-networkd — Network manager</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><p><code class="filename">systemd-networkd.service</code></p><p><code class="filename">/usr/lib/systemd/systemd-networkd</code></p></div><div class="refsect1"><a name="idm214170770320"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><span class="command"><strong>systemd-networkd</strong></span> is a system
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="systemd-networkd.service"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>systemd-networkd.service, systemd-networkd — Network manager</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><p><code class="filename">systemd-networkd.service</code></p><p><code class="filename">/usr/lib/systemd/systemd-networkd</code></p></div><div class="refsect1"><a name="idm214195650544"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><span class="command"><strong>systemd-networkd</strong></span> is a system
                 service that manages networks. It detects and configures
                 network devices as they appear, as well as creating virtual
                 network devices.</p><p>To configure low-level link settings independently of
@@ -30,7 +30,7 @@
                 networkd may also optionally be left in place on shutdown. This ensures
                 restarting networkd does not cut the network connection, and, in particular,
                 that it is safe to transition between the initrd and the real root,
-                and back.</p></div><div class="refsect1"><a name="idm214170792944"></a><h2 id="Configuration Files">Configuration Files<a class="headerlink" title="Permalink to this headline" href="#Configuration%20Files">¶</a></h2><p>The configuration files are read from the files located in the
+                and back.</p></div><div class="refsect1"><a name="idm214195646336"></a><h2 id="Configuration Files">Configuration Files<a class="headerlink" title="Permalink to this headline" href="#Configuration%20Files">¶</a></h2><p>The configuration files are read from the files located in the
                 system network directory <code class="filename">/usr/lib/systemd/network</code>,
                 the volatile runtime network directory
                 <code class="filename">/run/systemd/network</code> and the local administration
@@ -38,7 +38,7 @@
                 <a href="systemd.network.html"><span class="citerefentry"><span class="refentrytitle">systemd.network</span>(5)</span></a>,
                 and virtual network devices are configured in <code class="filename">.netdev</code> files, see
                 <a href="systemd.netdev.html"><span class="citerefentry"><span class="refentrytitle">systemd.netdev</span>(5)</span></a>.
-                </p></div><div class="refsect1"><a name="idm214167004496"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+                </p></div><div class="refsect1"><a name="idm214195639536"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
                         <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
                         <a href="systemd.link.html"><span class="citerefentry"><span class="refentrytitle">systemd.link</span>(5)</span></a>,
                         <a href="systemd.network.html"><span class="citerefentry"><span class="refentrytitle">systemd.network</span>(5)</span></a>,
index 69a8f6ef0e2a11aa8973b970444978df1a7ed544..1e5ec0f3c1c9a988bc88a5ffb88004465769f43d 100644 (file)
@@ -1,5 +1,5 @@
 '\" t
-.TH "SYSTEMD\-NOTIFY" "1" "" "systemd 214" "systemd-notify"
+.TH "SYSTEMD\-NOTIFY" "1" "" "systemd 215" "systemd-notify"
 .\" -----------------------------------------------------------------
 .\" * Define some portability stuff
 .\" -----------------------------------------------------------------
index 969271c3d1a52721c6e0187f94a59e2595e168e0..b9bb2260f359576afe28edb21037300f41d6ae0d 100644 (file)
@@ -19,7 +19,7 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="systemd-notify"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>systemd-notify — Notify service manager about start-up completion and other daemon status changes</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="cmdsynopsis"><p><code class="command">systemd-notify [OPTIONS...]  [VARIABLE=VALUE...]</code> </p></div></div><div class="refsect1"><a name="idm214182358912"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><span class="command"><strong>systemd-notify</strong></span> may be
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="systemd-notify"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>systemd-notify — Notify service manager about start-up completion and other daemon status changes</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="cmdsynopsis"><p><code class="command">systemd-notify [OPTIONS...]  [VARIABLE=VALUE...]</code> </p></div></div><div class="refsect1"><a name="idm214188130944"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><span class="command"><strong>systemd-notify</strong></span> may be
                 called by daemon scripts to notify the init system
                 about status changes. It can be used to send arbitrary
                 information, encoded in an environment-block-like list
@@ -33,7 +33,7 @@
                 update.</p><p>Note that systemd will refuse reception of
                 status updates from this command unless
                 <code class="varname">NotifyAccess=all</code> is set for the
-                service unit this command is called from.</p></div><div class="refsect1"><a name="idm214182353344"></a><h2 id="Options">Options<a class="headerlink" title="Permalink to this headline" href="#Options">¶</a></h2><p>The following options are understood:</p><div class="variablelist"><dl class="variablelist"><dt id="--ready"><span class="term"><code class="option">--ready</code></span><a class="headerlink" title="Permalink to this term" href="#--ready">¶</a></dt><dd><p>Inform the init system
+                service unit this command is called from.</p></div><div class="refsect1"><a name="idm214188174048"></a><h2 id="Options">Options<a class="headerlink" title="Permalink to this headline" href="#Options">¶</a></h2><p>The following options are understood:</p><div class="variablelist"><dl class="variablelist"><dt id="--ready"><span class="term"><code class="option">--ready</code></span><a class="headerlink" title="Permalink to this term" href="#--ready">¶</a></dt><dd><p>Inform the init system
                                 about service start-up
                                 completion. This is equivalent to
                                 <span class="command"><strong>systemd-notify
@@ -69,8 +69,8 @@
                                 "done" or "noreplay". For details
                                 about the semantics of this option see
                                 <a href="sd_readahead.html"><span class="citerefentry"><span class="refentrytitle">sd_readahead</span>(3)</span></a>.</p></dd><dt id="-h"><span class="term"><code class="option">-h</code>, </span><span class="term"><code class="option">--help</code></span><a class="headerlink" title="Permalink to this term" href="#-h">¶</a></dt><dd><p><a name="help-text"></a>Print a short help text and exit.
-    </p></dd><dt id="--version"><span class="term"><code class="option">--version</code></span><a class="headerlink" title="Permalink to this term" href="#--version">¶</a></dt><dd><p><a name="version-text"></a>Print a short version string and exit.</p></dd></dl></div></div><div class="refsect1"><a name="idm214186238048"></a><h2 id="Exit status">Exit status<a class="headerlink" title="Permalink to this headline" href="#Exit%20status">¶</a></h2><p>On success, 0 is returned, a non-zero failure
-                code otherwise.</p></div><div class="refsect1"><a name="idm214186236864"></a><h2 id="Example">Example<a class="headerlink" title="Permalink to this headline" href="#Example">¶</a></h2><div class="example"><a name="idm214186236192"></a><p class="title"><b>Example 1. Start-up Notification and Status Updates</b></p><div class="example-contents"><p>A simple shell daemon that sends
+    </p></dd><dt id="--version"><span class="term"><code class="option">--version</code></span><a class="headerlink" title="Permalink to this term" href="#--version">¶</a></dt><dd><p><a name="version-text"></a>Print a short version string and exit.</p></dd></dl></div></div><div class="refsect1"><a name="idm214188240592"></a><h2 id="Exit status">Exit status<a class="headerlink" title="Permalink to this headline" href="#Exit%20status">¶</a></h2><p>On success, 0 is returned, a non-zero failure
+                code otherwise.</p></div><div class="refsect1"><a name="idm214188239408"></a><h2 id="Example">Example<a class="headerlink" title="Permalink to this headline" href="#Example">¶</a></h2><div class="example"><a name="idm214188238736"></a><p class="title"><b>Example 1. Start-up Notification and Status Updates</b></p><div class="example-contents"><p>A simple shell daemon that sends
                         start-up notifications after having set up its
                         communication channel. During runtime it sends
                         further status updates to the init
@@ -86,7 +86,7 @@ while : ; do
         # Do something with $a ...
 
         systemd-notify --status="Waiting for data..."
-done</pre></div></div><br class="example-break"></div><div class="refsect1"><a name="idm214186225920"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+done</pre></div></div><br class="example-break"></div><div class="refsect1"><a name="idm214188235728"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
                         <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
                         <a href="systemctl.html"><span class="citerefentry"><span class="refentrytitle">systemctl</span>(1)</span></a>,
                         <a href="systemd.unit.html"><span class="citerefentry"><span class="refentrytitle">systemd.unit</span>(5)</span></a>,
index 4f339569f726655e4976e1939eb3d5863589b4a1..bc66b6a3f6d33d736c00e9732907670a798f55da 100644 (file)
@@ -1,5 +1,5 @@
 '\" t
-.TH "SYSTEMD\-NSPAWN" "1" "" "systemd 214" "systemd-nspawn"
+.TH "SYSTEMD\-NSPAWN" "1" "" "systemd 215" "systemd-nspawn"
 .\" -----------------------------------------------------------------
 .\" * Define some portability stuff
 .\" -----------------------------------------------------------------
@@ -77,6 +77,8 @@ specification\&.
 As a safety check
 \fBsystemd\-nspawn\fR
 will verify the existence of
+/usr/lib/os\-release
+or
 /etc/os\-release
 in the container tree before starting the container (see
 \fBos-release\fR(5))\&. It might be necessary to add this file to the container tree manually if the OS of the container is too old to contain this file out\-of\-the\-box\&.
index e1c2e9805cb35dce3d5d28abab0b21b22578c966..157ce0a98e0d94e66e0dd85bd48ec3e93228e986 100644 (file)
@@ -19,9 +19,9 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="systemd-nspawn"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>systemd-nspawn — Spawn a namespace container for debugging, testing and building</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="cmdsynopsis"><p><code class="command">systemd-nspawn</code>  [OPTIONS...] [<em class="replaceable"><code>COMMAND</code></em>
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="systemd-nspawn"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>systemd-nspawn — Spawn a namespace container for debugging, testing and building</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="cmdsynopsis"><p><code class="command">systemd-nspawn</code>  [OPTIONS...] [<em class="replaceable"><code>COMMAND</code></em>
                          [ARGS...]
-                        ]</p></div><div class="cmdsynopsis"><p><code class="command">systemd-nspawn</code>   -b  [OPTIONS...] [ARGS...]</p></div></div><div class="refsect1"><a name="idm214177110544"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><span class="command"><strong>systemd-nspawn</strong></span> may be used to
+                        ]</p></div><div class="cmdsynopsis"><p><code class="command">systemd-nspawn</code>   -b  [OPTIONS...] [ARGS...]</p></div></div><div class="refsect1"><a name="idm214170086240"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><span class="command"><strong>systemd-nspawn</strong></span> may be used to
                 run a command or OS in a light-weight namespace
                 container. In many ways it is similar to
                 <a href="chroot.html"><span class="citerefentry"><span class="refentrytitle">chroot</span>(1)</span></a>,
                 <a class="ulink" href="http://www.freedesktop.org/wiki/Software/systemd/ContainerInterface" target="_top">Container
                 Interface</a> specification.</p><p>As a safety check
                 <span class="command"><strong>systemd-nspawn</strong></span> will verify the
-                existence of <code class="filename">/etc/os-release</code> in
-                the container tree before starting the container (see
+                existence of <code class="filename">/usr/lib/os-release</code>
+                or <code class="filename">/etc/os-release</code> in the
+                container tree before starting the container (see
                 <a href="os-release.html"><span class="citerefentry"><span class="refentrytitle">os-release</span>(5)</span></a>). It
                 might be necessary to add this file to the container
                 tree manually if the OS of the container is too old to
-                contain this file out-of-the-box.</p></div><div class="refsect1"><a name="idm214180990432"></a><h2 id="Options">Options<a class="headerlink" title="Permalink to this headline" href="#Options">¶</a></h2><p>If option <code class="option">-b</code> is specified, the
+                contain this file out-of-the-box.</p></div><div class="refsect1"><a name="idm214170139936"></a><h2 id="Options">Options<a class="headerlink" title="Permalink to this headline" href="#Options">¶</a></h2><p>If option <code class="option">-b</code> is specified, the
                 arguments are used as arguments for the init
                 binary. Otherwise, <em class="replaceable"><code>COMMAND</code></em>
                 specifies the program to launch in the container, and
                                 switch is used, the only output
                                 from nspawn will be the console output
                                 of the container OS itself.</p></dd><dt id="-h"><span class="term"><code class="option">-h</code>, </span><span class="term"><code class="option">--help</code></span><a class="headerlink" title="Permalink to this term" href="#-h">¶</a></dt><dd><p><a name="help-text"></a>Print a short help text and exit.
-    </p></dd><dt id="--version"><span class="term"><code class="option">--version</code></span><a class="headerlink" title="Permalink to this term" href="#--version">¶</a></dt><dd><p><a name="version-text"></a>Print a short version string and exit.</p></dd></dl></div></div><div class="refsect1"><a name="idm214175953952"></a><h2 id="Example 1">Example 1<a class="headerlink" title="Permalink to this headline" href="#Example%201">¶</a></h2><pre class="programlisting"># yum -y --releasever=19 --nogpg --installroot=/srv/mycontainer --disablerepo='*' --enablerepo=fedora install systemd passwd yum fedora-release vim-minimal
+    </p></dd><dt id="--version"><span class="term"><code class="option">--version</code></span><a class="headerlink" title="Permalink to this term" href="#--version">¶</a></dt><dd><p><a name="version-text"></a>Print a short version string and exit.</p></dd></dl></div></div><div class="refsect1"><a name="idm214165060752"></a><h2 id="Example 1">Example 1<a class="headerlink" title="Permalink to this headline" href="#Example%201">¶</a></h2><pre class="programlisting"># yum -y --releasever=19 --nogpg --installroot=/srv/mycontainer --disablerepo='*' --enablerepo=fedora install systemd passwd yum fedora-release vim-minimal
 # systemd-nspawn -bD /srv/mycontainer</pre><p>This installs a minimal Fedora distribution into
                 the directory <code class="filename">/srv/mycontainer/</code> and
                 then boots an OS in a namespace container in
-                it.</p></div><div class="refsect1"><a name="idm214175950912"></a><h2 id="Example 2">Example 2<a class="headerlink" title="Permalink to this headline" href="#Example%202">¶</a></h2><pre class="programlisting"># debootstrap --arch=amd64 unstable ~/debian-tree/
+                it.</p></div><div class="refsect1"><a name="idm214165057712"></a><h2 id="Example 2">Example 2<a class="headerlink" title="Permalink to this headline" href="#Example%202">¶</a></h2><pre class="programlisting"># debootstrap --arch=amd64 unstable ~/debian-tree/
 # systemd-nspawn -D ~/debian-tree/</pre><p>This installs a minimal Debian unstable
                 distribution into the directory
                 <code class="filename">~/debian-tree/</code> and then spawns a
-                shell in a namespace container in it.</p></div><div class="refsect1"><a name="idm214175948192"></a><h2 id="Example 3">Example 3<a class="headerlink" title="Permalink to this headline" href="#Example%203">¶</a></h2><pre class="programlisting"># pacstrap -c -d ~/arch-tree/ base
+                shell in a namespace container in it.</p></div><div class="refsect1"><a name="idm214165054992"></a><h2 id="Example 3">Example 3<a class="headerlink" title="Permalink to this headline" href="#Example%203">¶</a></h2><pre class="programlisting"># pacstrap -c -d ~/arch-tree/ base
 # systemd-nspawn -bD ~/arch-tree/</pre><p>This installs a mimimal Arch Linux distribution into
                 the directory <code class="filename">~/arch-tree/</code> and then
-                boots an OS in a namespace container in it.</p></div><div class="refsect1"><a name="idm214175945696"></a><h2 id="Example 4">Example 4<a class="headerlink" title="Permalink to this headline" href="#Example%204">¶</a></h2><pre class="programlisting"># mv ~/arch-tree /var/lib/container/arch
+                boots an OS in a namespace container in it.</p></div><div class="refsect1"><a name="idm214165052496"></a><h2 id="Example 4">Example 4<a class="headerlink" title="Permalink to this headline" href="#Example%204">¶</a></h2><pre class="programlisting"># mv ~/arch-tree /var/lib/container/arch
 # systemctl enable systemd-nspawn@arch.service
 # systemctl start systemd-nspawn@arch.service</pre><p>This makes the Arch Linux container part of the
                 <code class="filename">multi-user.target</code> on the host.
-                </p></div><div class="refsect1"><a name="idm214175943152"></a><h2 id="Example 5">Example 5<a class="headerlink" title="Permalink to this headline" href="#Example%205">¶</a></h2><pre class="programlisting"># btrfs subvolume snapshot / /.tmp
+                </p></div><div class="refsect1"><a name="idm214165049952"></a><h2 id="Example 5">Example 5<a class="headerlink" title="Permalink to this headline" href="#Example%205">¶</a></h2><pre class="programlisting"># btrfs subvolume snapshot / /.tmp
 # systemd-nspawn --private-network -D /.tmp -b</pre><p>This runs a copy of the host system in a
-                btrfs snapshot.</p></div><div class="refsect1"><a name="idm214175941184"></a><h2 id="Example 6">Example 6<a class="headerlink" title="Permalink to this headline" href="#Example%206">¶</a></h2><pre class="programlisting"># chcon system_u:object_r:svirt_sandbox_file_t:s0:c0,c1 -R /srv/container
-# systemd-nspawn -L system_u:object_r:svirt_sandbox_file_t:s0:c0,c1 -Z system_u:system_r:svirt_lxc_net_t:s0:c0,c1 -D /srv/container /bin/sh</pre><p>This runs a container with SELinux sandbox security contexts.</p></div><div class="refsect1"><a name="idm214175939184"></a><h2 id="Exit status">Exit status<a class="headerlink" title="Permalink to this headline" href="#Exit%20status">¶</a></h2><p>The exit code of the program executed in the
-                container is returned.</p></div><div class="refsect1"><a name="idm214175937936"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+                btrfs snapshot.</p></div><div class="refsect1"><a name="idm214165047984"></a><h2 id="Example 6">Example 6<a class="headerlink" title="Permalink to this headline" href="#Example%206">¶</a></h2><pre class="programlisting"># chcon system_u:object_r:svirt_sandbox_file_t:s0:c0,c1 -R /srv/container
+# systemd-nspawn -L system_u:object_r:svirt_sandbox_file_t:s0:c0,c1 -Z system_u:system_r:svirt_lxc_net_t:s0:c0,c1 -D /srv/container /bin/sh</pre><p>This runs a container with SELinux sandbox security contexts.</p></div><div class="refsect1"><a name="idm214165045984"></a><h2 id="Exit status">Exit status<a class="headerlink" title="Permalink to this headline" href="#Exit%20status">¶</a></h2><p>The exit code of the program executed in the
+                container is returned.</p></div><div class="refsect1"><a name="idm214165044736"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
                         <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
                         <a href="chroot.html"><span class="citerefentry"><span class="refentrytitle">chroot</span>(1)</span></a>,
                         <a href="yum.html"><span class="citerefentry"><span class="refentrytitle">yum</span>(8)</span></a>,
index d6687038af68467bc3adb42d210a71e889ca12bf..950558feec085c53193ab3c2f933a09fa9af51c9 100644 (file)
 
                 <para>As a safety check
                 <command>systemd-nspawn</command> will verify the
-                existence of <filename>/etc/os-release</filename> in
-                the container tree before starting the container (see
+                existence of <filename>/usr/lib/os-release</filename>
+                or <filename>/etc/os-release</filename> in the
+                container tree before starting the container (see
                 <citerefentry><refentrytitle>os-release</refentrytitle><manvolnum>5</manvolnum></citerefentry>). It
                 might be necessary to add this file to the container
                 tree manually if the OS of the container is too old to
diff --git a/man/systemd-path.1 b/man/systemd-path.1
new file mode 100644 (file)
index 0000000..be8a6e9
--- /dev/null
@@ -0,0 +1,61 @@
+'\" t
+.TH "SYSTEMD\-PATH" "1" "" "systemd 215" "systemd-path"
+.\" -----------------------------------------------------------------
+.\" * Define some portability stuff
+.\" -----------------------------------------------------------------
+.\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+.\" http://bugs.debian.org/507673
+.\" http://lists.gnu.org/archive/html/groff/2009-02/msg00013.html
+.\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+.ie \n(.g .ds Aq \(aq
+.el       .ds Aq '
+.\" -----------------------------------------------------------------
+.\" * set default formatting
+.\" -----------------------------------------------------------------
+.\" disable hyphenation
+.nh
+.\" disable justification (adjust text to left margin only)
+.ad l
+.\" -----------------------------------------------------------------
+.\" * MAIN CONTENT STARTS HERE *
+.\" -----------------------------------------------------------------
+.SH "NAME"
+systemd-path \- List and query system and user paths
+.SH "SYNOPSIS"
+.HP \w'\fBsystemd\-path\ \fR\fB[OPTIONS...]\fR\fB\ \fR\fB[NAME...]\fR\ 'u
+\fBsystemd\-path \fR\fB[OPTIONS...]\fR\fB \fR\fB[NAME...]\fR
+.SH "DESCRIPTION"
+.PP
+\fBsystemd\-path\fR
+may be used to query system and user paths\&. The tool makes many of the paths described in
+\fBfile-hierarchy\fR(7)
+queriable\&.
+.PP
+When invoked without arguments a list of known paths and their current values is shown\&. When at least one argument is passed the path with this is name is queried and its value shown\&. The variables whose name begins with
+"search\-"
+don\*(Aqt refer to individual paths, but instead a to a list of colon\-separated search paths, in their order of precedence\&.
+.SH "OPTIONS"
+.PP
+The following options are understood:
+.PP
+\fB\-\-suffix=\fR
+.RS 4
+The printed paths are suffixed by the specified string\&.
+.RE
+.PP
+\fB\-h\fR, \fB\-\-help\fR
+.RS 4
+Print a short help text and exit\&.
+.RE
+.PP
+\fB\-\-version\fR
+.RS 4
+Print a short version string and exit\&.
+.RE
+.SH "EXIT STATUS"
+.PP
+On success, 0 is returned, a non\-zero failure code otherwise\&.
+.SH "SEE ALSO"
+.PP
+\fBsystemd\fR(1),
+\fBfile-hierarchy\fR(7)
diff --git a/man/systemd-path.html b/man/systemd-path.html
new file mode 100644 (file)
index 0000000..12ae0eb
--- /dev/null
@@ -0,0 +1,40 @@
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>systemd-path</title><meta name="generator" content="DocBook XSL Stylesheets V1.78.1"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><style>
+    a.headerlink {
+      color: #c60f0f;
+      font-size: 0.8em;
+      padding: 0 4px 0 4px;
+      text-decoration: none;
+      visibility: hidden;
+    }
+
+    a.headerlink:hover {
+      background-color: #c60f0f;
+      color: white;
+    }
+
+    h1:hover > a.headerlink, h2:hover > a.headerlink, h3:hover > a.headerlink, dt:hover > a.headerlink {
+      visibility: visible;
+    }
+  </style><a href="index.html">Index </a>·
+  <a href="systemd.directives.html">Directives </a>·
+  <a href="../python-systemd/index.html">Python </a>·
+  <a href="../libudev/index.html">libudev </a>·
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="systemd-path"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>systemd-path — List and query system and user paths</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="cmdsynopsis"><p><code class="command">systemd-path [OPTIONS...]  [NAME...]</code> </p></div></div><div class="refsect1"><a name="idm214172603008"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><span class="command"><strong>systemd-path</strong></span> may be used to
+                query system and user paths. The tool makes many of
+                the paths described in
+                <a href="file-hierarchy.html"><span class="citerefentry"><span class="refentrytitle">file-hierarchy</span>(7)</span></a>
+                queriable.</p><p>When invoked without arguments a list of known
+                paths and their current values is shown. When at least
+                one argument is passed the path with this is name is
+                queried and its value shown. The variables whose name
+                begins with "<code class="literal">search-</code>" don't refer to
+                individual paths, but instead a to a list of
+                colon-separated search paths, in their order of
+                precedence.</p></div><div class="refsect1"><a name="idm214172598688"></a><h2 id="Options">Options<a class="headerlink" title="Permalink to this headline" href="#Options">¶</a></h2><p>The following options are understood:</p><div class="variablelist"><dl class="variablelist"><dt id="--suffix="><span class="term"><code class="option">--suffix=</code></span><a class="headerlink" title="Permalink to this term" href="#--suffix=">¶</a></dt><dd><p>The printed paths are
+                                suffixed by the specified
+                                string.</p></dd><dt id="-h"><span class="term"><code class="option">-h</code>, </span><span class="term"><code class="option">--help</code></span><a class="headerlink" title="Permalink to this term" href="#-h">¶</a></dt><dd><p><a name="help-text"></a>Print a short help text and exit.
+    </p></dd><dt id="--version"><span class="term"><code class="option">--version</code></span><a class="headerlink" title="Permalink to this term" href="#--version">¶</a></dt><dd><p><a name="version-text"></a>Print a short version string and exit.</p></dd></dl></div></div><div class="refsect1"><a name="idm214172642528"></a><h2 id="Exit status">Exit status<a class="headerlink" title="Permalink to this headline" href="#Exit%20status">¶</a></h2><p>On success, 0 is returned, a non-zero failure
+                code otherwise.</p></div><div class="refsect1"><a name="idm214172641344"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+                        <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
+                        <a href="file-hierarchy.html"><span class="citerefentry"><span class="refentrytitle">file-hierarchy</span>(7)</span></a>
+                </p></div></div></body></html>
diff --git a/man/systemd-path.xml b/man/systemd-path.xml
new file mode 100644 (file)
index 0000000..fc01d5e
--- /dev/null
@@ -0,0 +1,111 @@
+<?xml version='1.0'?> <!--*-nxml-*-->
+<!DOCTYPE refentry PUBLIC "-//OASIS//DTD DocBook XML V4.2//EN"
+        "http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd">
+
+<!--
+  This file is part of systemd.
+
+  Copyright 2014 Lennart Poettering
+
+  systemd is free software; you can redistribute it and/or modify it
+  under the terms of the GNU Lesser General Public License as published by
+  the Free Software Foundation; either version 2.1 of the License, or
+  (at your option) any later version.
+
+  systemd is distributed in the hope that it will be useful, but
+  WITHOUT ANY WARRANTY; without even the implied warranty of
+  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+  Lesser General Public License for more details.
+
+  You should have received a copy of the GNU Lesser General Public License
+  along with systemd; If not, see <http://www.gnu.org/licenses/>.
+-->
+
+<refentry id="systemd-path"
+          xmlns:xi="http://www.w3.org/2001/XInclude">
+
+        <refentryinfo>
+                <title>systemd-path</title>
+                <productname>systemd</productname>
+
+                <authorgroup>
+                        <author>
+                                <contrib>Developer</contrib>
+                                <firstname>Lennart</firstname>
+                                <surname>Poettering</surname>
+                                <email>lennart@poettering.net</email>
+                        </author>
+                </authorgroup>
+        </refentryinfo>
+
+        <refmeta>
+                <refentrytitle>systemd-path</refentrytitle>
+                <manvolnum>1</manvolnum>
+        </refmeta>
+
+        <refnamediv>
+                <refname>systemd-path</refname>
+                <refpurpose>List and query system and user paths</refpurpose>
+        </refnamediv>
+
+        <refsynopsisdiv>
+                <cmdsynopsis>
+                        <command>systemd-path <arg choice="opt" rep="repeat">OPTIONS</arg> <arg choice="opt" rep="repeat">NAME</arg></command>
+                </cmdsynopsis>
+        </refsynopsisdiv>
+
+        <refsect1>
+                <title>Description</title>
+
+                <para><command>systemd-path</command> may be used to
+                query system and user paths. The tool makes many of
+                the paths described in
+                <citerefentry><refentrytitle>file-hierarchy</refentrytitle><manvolnum>7</manvolnum></citerefentry>
+                queriable.</para>
+
+                <para>When invoked without arguments a list of known
+                paths and their current values is shown. When at least
+                one argument is passed the path with this is name is
+                queried and its value shown. The variables whose name
+                begins with <literal>search-</literal> don't refer to
+                individual paths, but instead a to a list of
+                colon-separated search paths, in their order of
+                precedence.</para>
+        </refsect1>
+
+        <refsect1>
+                <title>Options</title>
+
+                <para>The following options are understood:</para>
+
+                <variablelist>
+                        <varlistentry>
+                                <term><option>--suffix=</option></term>
+
+                                <listitem><para>The printed paths are
+                                suffixed by the specified
+                                string.</para></listitem>
+                        </varlistentry>
+
+                        <xi:include href="standard-options.xml" xpointer="help" />
+                        <xi:include href="standard-options.xml" xpointer="version" />
+                </variablelist>
+
+        </refsect1>
+
+        <refsect1>
+                <title>Exit status</title>
+
+                <para>On success, 0 is returned, a non-zero failure
+                code otherwise.</para>
+        </refsect1>
+
+        <refsect1>
+                <title>See Also</title>
+                <para>
+                        <citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
+                        <citerefentry><refentrytitle>file-hierarchy</refentrytitle><manvolnum>7</manvolnum></citerefentry>
+                </para>
+        </refsect1>
+
+</refentry>
index b03dd784bdca665cc3e5a1877c722055e18db837..4a22e8c9fc16e31eab8579fee56de6f97e42887b 100644 (file)
@@ -19,7 +19,7 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="systemd-halt.service"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>systemd-halt.service, systemd-poweroff.service, systemd-reboot.service, systemd-kexec.service, systemd-shutdown — System shutdown logic</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><p><code class="filename">systemd-halt.service</code></p><p><code class="filename">systemd-poweroff.service</code></p><p><code class="filename">systemd-reboot.service</code></p><p><code class="filename">systemd-kexec.service</code></p><p><code class="filename">/usr/lib/systemd/systemd-shutdown</code></p></div><div class="refsect1"><a name="idm214170881184"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="filename">systemd-halt.service</code> is a
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="systemd-halt.service"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>systemd-halt.service, systemd-poweroff.service, systemd-reboot.service, systemd-kexec.service, systemd-shutdown — System shutdown logic</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><p><code class="filename">systemd-halt.service</code></p><p><code class="filename">systemd-poweroff.service</code></p><p><code class="filename">systemd-reboot.service</code></p><p><code class="filename">systemd-kexec.service</code></p><p><code class="filename">/usr/lib/systemd/systemd-shutdown</code></p></div><div class="refsect1"><a name="idm214183037312"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="filename">systemd-halt.service</code> is a
                 system service that is pulled in by
                 <code class="filename">halt.target</code> and is responsible
                 for the actual system halt. Similarly,
@@ -57,7 +57,7 @@
                 related units) should never be executed
                 directly. Instead, trigger system shutdown with a
                 command such as "<code class="literal">systemctl halt</code>" or
-                suchlike.</p></div><div class="refsect1"><a name="idm214167153872"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+                suchlike.</p></div><div class="refsect1"><a name="idm214183155536"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
                         <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
                         <a href="systemctl.html"><span class="citerefentry"><span class="refentrytitle">systemctl</span>(1)</span></a>,
                         <a href="systemd.special.html"><span class="citerefentry"><span class="refentrytitle">systemd.special</span>(7)</span></a>,
index d4909000447b5d670f73841a114038b6d2a367f2..b4b549efd29a18731c24bbe610086fb48400929a 100644 (file)
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="systemd-quotacheck.service"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>systemd-quotacheck.service, systemd-quotacheck — File system quota checker logic</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><p><code class="filename">systemd-quotacheck.service</code></p><p><code class="filename">/usr/lib/systemd/systemd-quotacheck</code></p></div><div class="refsect1"><a name="idm214199077776"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="filename">systemd-quotacheck.service</code>
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="systemd-quotacheck.service"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>systemd-quotacheck.service, systemd-quotacheck — File system quota checker logic</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><p><code class="filename">systemd-quotacheck.service</code></p><p><code class="filename">/usr/lib/systemd/systemd-quotacheck</code></p></div><div class="refsect1"><a name="idm214197247856"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="filename">systemd-quotacheck.service</code>
                 is a service responsible for file system quota
                 checks. It is run once at boot after all necessary
                 file systems are mounted. It is pulled in only if at
-                least one file system has quotas enabled.</p></div><div class="refsect1"><a name="idm214199074896"></a><h2 id="Kernel Command Line">Kernel Command Line<a class="headerlink" title="Permalink to this headline" href="#Kernel%20Command%20Line">¶</a></h2><p><code class="filename">systemd-quotacheck</code> understands
+                least one file system has quotas enabled.</p></div><div class="refsect1"><a name="idm214197245824"></a><h2 id="Kernel Command Line">Kernel Command Line<a class="headerlink" title="Permalink to this headline" href="#Kernel%20Command%20Line">¶</a></h2><p><code class="filename">systemd-quotacheck</code> understands
                 one kernel command line parameter:</p><div class="variablelist"><dl class="variablelist"><dt id="quotacheck.mode="><span class="term"><code class="varname">quotacheck.mode=</code></span><a class="headerlink" title="Permalink to this term" href="#quotacheck.mode=">¶</a></dt><dd><p>One of
                                 "<code class="literal">auto</code>",
                                 "<code class="literal">force</code>",
@@ -38,7 +38,7 @@
                                 system quota
                                 checks. "<code class="literal">skip</code>" skips
                                 any file system quota
-                                checks.</p></dd></dl></div></div><div class="refsect1"><a name="idm214195312016"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+                                checks.</p></dd></dl></div></div><div class="refsect1"><a name="idm214197237024"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
                         <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
                         <a href="quotacheck.html"><span class="citerefentry"><span class="refentrytitle">quotacheck</span>(8)</span></a>,
                         <a href="systemd-fsck@.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-fsck@.service</span>(8)</span></a>
index 45b031aa3a67e426b4512028062a1d50e2553614..08a249cc97b85540135d3e8f465f5584f14dea0e 100644 (file)
@@ -1,5 +1,5 @@
 '\" t
-.TH "SYSTEMD\-QUOTACHECK\&.SERVICE" "8" "" "systemd 214" "systemd-quotacheck.service"
+.TH "SYSTEMD\-QUOTACHECK\&.SERVICE" "8" "" "systemd 215" "systemd-quotacheck.service"
 .\" -----------------------------------------------------------------
 .\" * Define some portability stuff
 .\" -----------------------------------------------------------------
index d4909000447b5d670f73841a114038b6d2a367f2..b4b549efd29a18731c24bbe610086fb48400929a 100644 (file)
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="systemd-quotacheck.service"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>systemd-quotacheck.service, systemd-quotacheck — File system quota checker logic</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><p><code class="filename">systemd-quotacheck.service</code></p><p><code class="filename">/usr/lib/systemd/systemd-quotacheck</code></p></div><div class="refsect1"><a name="idm214199077776"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="filename">systemd-quotacheck.service</code>
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="systemd-quotacheck.service"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>systemd-quotacheck.service, systemd-quotacheck — File system quota checker logic</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><p><code class="filename">systemd-quotacheck.service</code></p><p><code class="filename">/usr/lib/systemd/systemd-quotacheck</code></p></div><div class="refsect1"><a name="idm214197247856"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="filename">systemd-quotacheck.service</code>
                 is a service responsible for file system quota
                 checks. It is run once at boot after all necessary
                 file systems are mounted. It is pulled in only if at
-                least one file system has quotas enabled.</p></div><div class="refsect1"><a name="idm214199074896"></a><h2 id="Kernel Command Line">Kernel Command Line<a class="headerlink" title="Permalink to this headline" href="#Kernel%20Command%20Line">¶</a></h2><p><code class="filename">systemd-quotacheck</code> understands
+                least one file system has quotas enabled.</p></div><div class="refsect1"><a name="idm214197245824"></a><h2 id="Kernel Command Line">Kernel Command Line<a class="headerlink" title="Permalink to this headline" href="#Kernel%20Command%20Line">¶</a></h2><p><code class="filename">systemd-quotacheck</code> understands
                 one kernel command line parameter:</p><div class="variablelist"><dl class="variablelist"><dt id="quotacheck.mode="><span class="term"><code class="varname">quotacheck.mode=</code></span><a class="headerlink" title="Permalink to this term" href="#quotacheck.mode=">¶</a></dt><dd><p>One of
                                 "<code class="literal">auto</code>",
                                 "<code class="literal">force</code>",
@@ -38,7 +38,7 @@
                                 system quota
                                 checks. "<code class="literal">skip</code>" skips
                                 any file system quota
-                                checks.</p></dd></dl></div></div><div class="refsect1"><a name="idm214195312016"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+                                checks.</p></dd></dl></div></div><div class="refsect1"><a name="idm214197237024"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
                         <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
                         <a href="quotacheck.html"><span class="citerefentry"><span class="refentrytitle">quotacheck</span>(8)</span></a>,
                         <a href="systemd-fsck@.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-fsck@.service</span>(8)</span></a>
index 4d82be086f3656219adad58d6dfc13c06e2e1887..0e645981b91748fdd7e092824a8c11715d2cf10f 100644 (file)
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="systemd-random-seed.service"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>systemd-random-seed.service, systemd-random-seed — Load and save the system random seed at boot and shutdown</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><p><code class="filename">systemd-random-seed.service</code></p><p><code class="filename">/usr/lib/systemd/systemd-random-seed</code></p></div><div class="refsect1"><a name="idm214201252752"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="filename">systemd-random-seed.service</code>
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="systemd-random-seed.service"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>systemd-random-seed.service, systemd-random-seed — Load and save the system random seed at boot and shutdown</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><p><code class="filename">systemd-random-seed.service</code></p><p><code class="filename">/usr/lib/systemd/systemd-random-seed</code></p></div><div class="refsect1"><a name="idm214168092576"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="filename">systemd-random-seed.service</code>
                 is a service that restores the random seed of the
                 system at early-boot and saves it at shutdown. See
                 <a href="random.html"><span class="citerefentry"><span class="refentrytitle">random</span>(4)</span></a>
                 for details. Saving/restoring the random seed across
                 boots increases the amount of available entropy early
                 at boot. On disk the random seed is stored in
-                <code class="filename">/var/lib/systemd/random-seed</code>.</p></div><div class="refsect1"><a name="idm214201275728"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+                <code class="filename">/var/lib/systemd/random-seed</code>.</p></div><div class="refsect1"><a name="idm214168088912"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
                         <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
                         <a href="random.html"><span class="citerefentry"><span class="refentrytitle">random</span>(4)</span></a>
                 </p></div></div></body></html>
index 507fec7c1f77c2c78e38c9770d7519f49229148d..9d370fc42fd5c5d4bddea55eaf07b0a0d2b5c2a9 100644 (file)
@@ -1,5 +1,5 @@
 '\" t
-.TH "SYSTEMD\-RANDOM\-SEED\&.SERVICE" "8" "" "systemd 214" "systemd-random-seed.service"
+.TH "SYSTEMD\-RANDOM\-SEED\&.SERVICE" "8" "" "systemd 215" "systemd-random-seed.service"
 .\" -----------------------------------------------------------------
 .\" * Define some portability stuff
 .\" -----------------------------------------------------------------
index 4d82be086f3656219adad58d6dfc13c06e2e1887..0e645981b91748fdd7e092824a8c11715d2cf10f 100644 (file)
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="systemd-random-seed.service"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>systemd-random-seed.service, systemd-random-seed — Load and save the system random seed at boot and shutdown</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><p><code class="filename">systemd-random-seed.service</code></p><p><code class="filename">/usr/lib/systemd/systemd-random-seed</code></p></div><div class="refsect1"><a name="idm214201252752"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="filename">systemd-random-seed.service</code>
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="systemd-random-seed.service"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>systemd-random-seed.service, systemd-random-seed — Load and save the system random seed at boot and shutdown</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><p><code class="filename">systemd-random-seed.service</code></p><p><code class="filename">/usr/lib/systemd/systemd-random-seed</code></p></div><div class="refsect1"><a name="idm214168092576"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="filename">systemd-random-seed.service</code>
                 is a service that restores the random seed of the
                 system at early-boot and saves it at shutdown. See
                 <a href="random.html"><span class="citerefentry"><span class="refentrytitle">random</span>(4)</span></a>
                 for details. Saving/restoring the random seed across
                 boots increases the amount of available entropy early
                 at boot. On disk the random seed is stored in
-                <code class="filename">/var/lib/systemd/random-seed</code>.</p></div><div class="refsect1"><a name="idm214201275728"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+                <code class="filename">/var/lib/systemd/random-seed</code>.</p></div><div class="refsect1"><a name="idm214168088912"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
                         <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
                         <a href="random.html"><span class="citerefentry"><span class="refentrytitle">random</span>(4)</span></a>
                 </p></div></div></body></html>
index 08f9afa4559398c9fb48c3001b13abcf2982c111..0da54c5166587301ae3cd45536a026b37ac375b1 100644 (file)
@@ -19,7 +19,7 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="systemd-readahead-replay.service"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>systemd-readahead-replay.service, systemd-readahead-collect.service, systemd-readahead-done.service, systemd-readahead-done.timer, systemd-readahead — Disk read ahead logic</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><p><code class="filename">systemd-readahead-replay.service</code></p><p><code class="filename">systemd-readahead-collect.service</code></p><p><code class="filename">systemd-readahead-done.service</code></p><p><code class="filename">systemd-readahead-done.timer</code></p><div class="cmdsynopsis"><p><code class="command">/usr/lib/systemd/systemd-readahead/systemd-readahead</code>  [OPTIONS...]  COMMAND  [DIRECTORY | FILE]</p></div></div><div class="refsect1"><a name="idm214173363184"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="filename">systemd-readahead-collect.service</code>
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="systemd-readahead-replay.service"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>systemd-readahead-replay.service, systemd-readahead-collect.service, systemd-readahead-done.service, systemd-readahead-done.timer, systemd-readahead — Disk read ahead logic</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><p><code class="filename">systemd-readahead-replay.service</code></p><p><code class="filename">systemd-readahead-collect.service</code></p><p><code class="filename">systemd-readahead-done.service</code></p><p><code class="filename">systemd-readahead-done.timer</code></p><div class="cmdsynopsis"><p><code class="command">/usr/lib/systemd/systemd-readahead/systemd-readahead</code>  [OPTIONS...]  COMMAND  [DIRECTORY | FILE]</p></div></div><div class="refsect1"><a name="idm214193075936"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="filename">systemd-readahead-collect.service</code>
                 is a service that collects disk usage patterns at boot
                 time. <code class="filename">systemd-readahead-replay.service</code>
                 is a service that replays this access data collected
@@ -51,7 +51,7 @@
                 it,
                 <code class="filename">systemd-readahead-collect.service</code>
                 will also defragment and rearrange files on disk to
-                optimize subsequent boot times.</p></div><div class="refsect1"><a name="idm214173352320"></a><h2 id="Options">Options<a class="headerlink" title="Permalink to this headline" href="#Options">¶</a></h2><p><code class="filename">systemd-readahead</code> understands
+                optimize subsequent boot times.</p></div><div class="refsect1"><a name="idm214197017776"></a><h2 id="Options">Options<a class="headerlink" title="Permalink to this headline" href="#Options">¶</a></h2><p><code class="filename">systemd-readahead</code> understands
                 the following options:</p><div class="variablelist"><dl class="variablelist"><dt id="--files-max="><span class="term"><code class="option">--files-max=</code></span><a class="headerlink" title="Permalink to this term" href="#--files-max=">¶</a></dt><dd><p>Maximum number of
                                 files to read ahead. Only valid
                                 for thes <span class="command"><strong>collect</strong></span>
@@ -63,7 +63,7 @@
                                 to spend collecting data. Only valid
                                 for the <span class="command"><strong>collect</strong></span>
                                 command.</p></dd><dt id="-h"><span class="term"><code class="option">-h</code>, </span><span class="term"><code class="option">--help</code></span><a class="headerlink" title="Permalink to this term" href="#-h">¶</a></dt><dd><p><a name="help-text"></a>Print a short help text and exit.
-    </p></dd><dt id="--version"><span class="term"><code class="option">--version</code></span><a class="headerlink" title="Permalink to this term" href="#--version">¶</a></dt><dd><p><a name="version-text"></a>Print a short version string and exit.</p></dd></dl></div></div><div class="refsect1"><a name="idm214177240336"></a><h2 id="Commands">Commands<a class="headerlink" title="Permalink to this headline" href="#Commands">¶</a></h2><p>The following commands are understood by
+    </p></dd><dt id="--version"><span class="term"><code class="option">--version</code></span><a class="headerlink" title="Permalink to this term" href="#--version">¶</a></dt><dd><p><a name="version-text"></a>Print a short version string and exit.</p></dd></dl></div></div><div class="refsect1"><a name="idm214197006432"></a><h2 id="Commands">Commands<a class="headerlink" title="Permalink to this headline" href="#Commands">¶</a></h2><p>The following commands are understood by
                 <code class="filename">systemd-readahead</code>:</p><div class="variablelist"><dl class="variablelist"><dt id="collect
                                 [DIRECTORY]"><span class="term"><span class="command"><strong>collect
                                 [<em class="replaceable"><code>DIRECTORY</code></em>]</strong></span></span><a class="headerlink" title="Permalink to this term" href="#collect%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%5BDIRECTORY%5D">¶</a></dt><dd><p>Collect read-ahead data on
@@ -81,6 +81,6 @@
                                         output lists approximately how
                                         much will be read ahead by
                                         the <span class="command"><strong>replay</strong></span>
-                                        command.</p></dd></dl></div></div><div class="refsect1"><a name="idm214177222208"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+                                        command.</p></dd></dl></div></div><div class="refsect1"><a name="idm214196988320"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
                         <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>
                 </p></div></div></body></html>
index 08f9afa4559398c9fb48c3001b13abcf2982c111..0da54c5166587301ae3cd45536a026b37ac375b1 100644 (file)
@@ -19,7 +19,7 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="systemd-readahead-replay.service"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>systemd-readahead-replay.service, systemd-readahead-collect.service, systemd-readahead-done.service, systemd-readahead-done.timer, systemd-readahead — Disk read ahead logic</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><p><code class="filename">systemd-readahead-replay.service</code></p><p><code class="filename">systemd-readahead-collect.service</code></p><p><code class="filename">systemd-readahead-done.service</code></p><p><code class="filename">systemd-readahead-done.timer</code></p><div class="cmdsynopsis"><p><code class="command">/usr/lib/systemd/systemd-readahead/systemd-readahead</code>  [OPTIONS...]  COMMAND  [DIRECTORY | FILE]</p></div></div><div class="refsect1"><a name="idm214173363184"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="filename">systemd-readahead-collect.service</code>
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="systemd-readahead-replay.service"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>systemd-readahead-replay.service, systemd-readahead-collect.service, systemd-readahead-done.service, systemd-readahead-done.timer, systemd-readahead — Disk read ahead logic</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><p><code class="filename">systemd-readahead-replay.service</code></p><p><code class="filename">systemd-readahead-collect.service</code></p><p><code class="filename">systemd-readahead-done.service</code></p><p><code class="filename">systemd-readahead-done.timer</code></p><div class="cmdsynopsis"><p><code class="command">/usr/lib/systemd/systemd-readahead/systemd-readahead</code>  [OPTIONS...]  COMMAND  [DIRECTORY | FILE]</p></div></div><div class="refsect1"><a name="idm214193075936"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="filename">systemd-readahead-collect.service</code>
                 is a service that collects disk usage patterns at boot
                 time. <code class="filename">systemd-readahead-replay.service</code>
                 is a service that replays this access data collected
@@ -51,7 +51,7 @@
                 it,
                 <code class="filename">systemd-readahead-collect.service</code>
                 will also defragment and rearrange files on disk to
-                optimize subsequent boot times.</p></div><div class="refsect1"><a name="idm214173352320"></a><h2 id="Options">Options<a class="headerlink" title="Permalink to this headline" href="#Options">¶</a></h2><p><code class="filename">systemd-readahead</code> understands
+                optimize subsequent boot times.</p></div><div class="refsect1"><a name="idm214197017776"></a><h2 id="Options">Options<a class="headerlink" title="Permalink to this headline" href="#Options">¶</a></h2><p><code class="filename">systemd-readahead</code> understands
                 the following options:</p><div class="variablelist"><dl class="variablelist"><dt id="--files-max="><span class="term"><code class="option">--files-max=</code></span><a class="headerlink" title="Permalink to this term" href="#--files-max=">¶</a></dt><dd><p>Maximum number of
                                 files to read ahead. Only valid
                                 for thes <span class="command"><strong>collect</strong></span>
@@ -63,7 +63,7 @@
                                 to spend collecting data. Only valid
                                 for the <span class="command"><strong>collect</strong></span>
                                 command.</p></dd><dt id="-h"><span class="term"><code class="option">-h</code>, </span><span class="term"><code class="option">--help</code></span><a class="headerlink" title="Permalink to this term" href="#-h">¶</a></dt><dd><p><a name="help-text"></a>Print a short help text and exit.
-    </p></dd><dt id="--version"><span class="term"><code class="option">--version</code></span><a class="headerlink" title="Permalink to this term" href="#--version">¶</a></dt><dd><p><a name="version-text"></a>Print a short version string and exit.</p></dd></dl></div></div><div class="refsect1"><a name="idm214177240336"></a><h2 id="Commands">Commands<a class="headerlink" title="Permalink to this headline" href="#Commands">¶</a></h2><p>The following commands are understood by
+    </p></dd><dt id="--version"><span class="term"><code class="option">--version</code></span><a class="headerlink" title="Permalink to this term" href="#--version">¶</a></dt><dd><p><a name="version-text"></a>Print a short version string and exit.</p></dd></dl></div></div><div class="refsect1"><a name="idm214197006432"></a><h2 id="Commands">Commands<a class="headerlink" title="Permalink to this headline" href="#Commands">¶</a></h2><p>The following commands are understood by
                 <code class="filename">systemd-readahead</code>:</p><div class="variablelist"><dl class="variablelist"><dt id="collect
                                 [DIRECTORY]"><span class="term"><span class="command"><strong>collect
                                 [<em class="replaceable"><code>DIRECTORY</code></em>]</strong></span></span><a class="headerlink" title="Permalink to this term" href="#collect%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%5BDIRECTORY%5D">¶</a></dt><dd><p>Collect read-ahead data on
@@ -81,6 +81,6 @@
                                         output lists approximately how
                                         much will be read ahead by
                                         the <span class="command"><strong>replay</strong></span>
-                                        command.</p></dd></dl></div></div><div class="refsect1"><a name="idm214177222208"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+                                        command.</p></dd></dl></div></div><div class="refsect1"><a name="idm214196988320"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
                         <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>
                 </p></div></div></body></html>
index 08f9afa4559398c9fb48c3001b13abcf2982c111..0da54c5166587301ae3cd45536a026b37ac375b1 100644 (file)
@@ -19,7 +19,7 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="systemd-readahead-replay.service"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>systemd-readahead-replay.service, systemd-readahead-collect.service, systemd-readahead-done.service, systemd-readahead-done.timer, systemd-readahead — Disk read ahead logic</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><p><code class="filename">systemd-readahead-replay.service</code></p><p><code class="filename">systemd-readahead-collect.service</code></p><p><code class="filename">systemd-readahead-done.service</code></p><p><code class="filename">systemd-readahead-done.timer</code></p><div class="cmdsynopsis"><p><code class="command">/usr/lib/systemd/systemd-readahead/systemd-readahead</code>  [OPTIONS...]  COMMAND  [DIRECTORY | FILE]</p></div></div><div class="refsect1"><a name="idm214173363184"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="filename">systemd-readahead-collect.service</code>
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="systemd-readahead-replay.service"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>systemd-readahead-replay.service, systemd-readahead-collect.service, systemd-readahead-done.service, systemd-readahead-done.timer, systemd-readahead — Disk read ahead logic</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><p><code class="filename">systemd-readahead-replay.service</code></p><p><code class="filename">systemd-readahead-collect.service</code></p><p><code class="filename">systemd-readahead-done.service</code></p><p><code class="filename">systemd-readahead-done.timer</code></p><div class="cmdsynopsis"><p><code class="command">/usr/lib/systemd/systemd-readahead/systemd-readahead</code>  [OPTIONS...]  COMMAND  [DIRECTORY | FILE]</p></div></div><div class="refsect1"><a name="idm214193075936"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="filename">systemd-readahead-collect.service</code>
                 is a service that collects disk usage patterns at boot
                 time. <code class="filename">systemd-readahead-replay.service</code>
                 is a service that replays this access data collected
@@ -51,7 +51,7 @@
                 it,
                 <code class="filename">systemd-readahead-collect.service</code>
                 will also defragment and rearrange files on disk to
-                optimize subsequent boot times.</p></div><div class="refsect1"><a name="idm214173352320"></a><h2 id="Options">Options<a class="headerlink" title="Permalink to this headline" href="#Options">¶</a></h2><p><code class="filename">systemd-readahead</code> understands
+                optimize subsequent boot times.</p></div><div class="refsect1"><a name="idm214197017776"></a><h2 id="Options">Options<a class="headerlink" title="Permalink to this headline" href="#Options">¶</a></h2><p><code class="filename">systemd-readahead</code> understands
                 the following options:</p><div class="variablelist"><dl class="variablelist"><dt id="--files-max="><span class="term"><code class="option">--files-max=</code></span><a class="headerlink" title="Permalink to this term" href="#--files-max=">¶</a></dt><dd><p>Maximum number of
                                 files to read ahead. Only valid
                                 for thes <span class="command"><strong>collect</strong></span>
@@ -63,7 +63,7 @@
                                 to spend collecting data. Only valid
                                 for the <span class="command"><strong>collect</strong></span>
                                 command.</p></dd><dt id="-h"><span class="term"><code class="option">-h</code>, </span><span class="term"><code class="option">--help</code></span><a class="headerlink" title="Permalink to this term" href="#-h">¶</a></dt><dd><p><a name="help-text"></a>Print a short help text and exit.
-    </p></dd><dt id="--version"><span class="term"><code class="option">--version</code></span><a class="headerlink" title="Permalink to this term" href="#--version">¶</a></dt><dd><p><a name="version-text"></a>Print a short version string and exit.</p></dd></dl></div></div><div class="refsect1"><a name="idm214177240336"></a><h2 id="Commands">Commands<a class="headerlink" title="Permalink to this headline" href="#Commands">¶</a></h2><p>The following commands are understood by
+    </p></dd><dt id="--version"><span class="term"><code class="option">--version</code></span><a class="headerlink" title="Permalink to this term" href="#--version">¶</a></dt><dd><p><a name="version-text"></a>Print a short version string and exit.</p></dd></dl></div></div><div class="refsect1"><a name="idm214197006432"></a><h2 id="Commands">Commands<a class="headerlink" title="Permalink to this headline" href="#Commands">¶</a></h2><p>The following commands are understood by
                 <code class="filename">systemd-readahead</code>:</p><div class="variablelist"><dl class="variablelist"><dt id="collect
                                 [DIRECTORY]"><span class="term"><span class="command"><strong>collect
                                 [<em class="replaceable"><code>DIRECTORY</code></em>]</strong></span></span><a class="headerlink" title="Permalink to this term" href="#collect%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%5BDIRECTORY%5D">¶</a></dt><dd><p>Collect read-ahead data on
@@ -81,6 +81,6 @@
                                         output lists approximately how
                                         much will be read ahead by
                                         the <span class="command"><strong>replay</strong></span>
-                                        command.</p></dd></dl></div></div><div class="refsect1"><a name="idm214177222208"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+                                        command.</p></dd></dl></div></div><div class="refsect1"><a name="idm214196988320"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
                         <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>
                 </p></div></div></body></html>
index d4d6c5f81e3543ba8b1f51365d3f920ac31400be..84d4455fa2e603bbf727a16acb0dee1b3ad3bdcb 100644 (file)
@@ -1,5 +1,5 @@
 '\" t
-.TH "SYSTEMD\-READAHEAD\-REPLAY\&.SERVICE" "8" "" "systemd 214" "systemd-readahead-replay.service"
+.TH "SYSTEMD\-READAHEAD\-REPLAY\&.SERVICE" "8" "" "systemd 215" "systemd-readahead-replay.service"
 .\" -----------------------------------------------------------------
 .\" * Define some portability stuff
 .\" -----------------------------------------------------------------
index 08f9afa4559398c9fb48c3001b13abcf2982c111..0da54c5166587301ae3cd45536a026b37ac375b1 100644 (file)
@@ -19,7 +19,7 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="systemd-readahead-replay.service"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>systemd-readahead-replay.service, systemd-readahead-collect.service, systemd-readahead-done.service, systemd-readahead-done.timer, systemd-readahead — Disk read ahead logic</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><p><code class="filename">systemd-readahead-replay.service</code></p><p><code class="filename">systemd-readahead-collect.service</code></p><p><code class="filename">systemd-readahead-done.service</code></p><p><code class="filename">systemd-readahead-done.timer</code></p><div class="cmdsynopsis"><p><code class="command">/usr/lib/systemd/systemd-readahead/systemd-readahead</code>  [OPTIONS...]  COMMAND  [DIRECTORY | FILE]</p></div></div><div class="refsect1"><a name="idm214173363184"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="filename">systemd-readahead-collect.service</code>
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="systemd-readahead-replay.service"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>systemd-readahead-replay.service, systemd-readahead-collect.service, systemd-readahead-done.service, systemd-readahead-done.timer, systemd-readahead — Disk read ahead logic</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><p><code class="filename">systemd-readahead-replay.service</code></p><p><code class="filename">systemd-readahead-collect.service</code></p><p><code class="filename">systemd-readahead-done.service</code></p><p><code class="filename">systemd-readahead-done.timer</code></p><div class="cmdsynopsis"><p><code class="command">/usr/lib/systemd/systemd-readahead/systemd-readahead</code>  [OPTIONS...]  COMMAND  [DIRECTORY | FILE]</p></div></div><div class="refsect1"><a name="idm214193075936"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="filename">systemd-readahead-collect.service</code>
                 is a service that collects disk usage patterns at boot
                 time. <code class="filename">systemd-readahead-replay.service</code>
                 is a service that replays this access data collected
@@ -51,7 +51,7 @@
                 it,
                 <code class="filename">systemd-readahead-collect.service</code>
                 will also defragment and rearrange files on disk to
-                optimize subsequent boot times.</p></div><div class="refsect1"><a name="idm214173352320"></a><h2 id="Options">Options<a class="headerlink" title="Permalink to this headline" href="#Options">¶</a></h2><p><code class="filename">systemd-readahead</code> understands
+                optimize subsequent boot times.</p></div><div class="refsect1"><a name="idm214197017776"></a><h2 id="Options">Options<a class="headerlink" title="Permalink to this headline" href="#Options">¶</a></h2><p><code class="filename">systemd-readahead</code> understands
                 the following options:</p><div class="variablelist"><dl class="variablelist"><dt id="--files-max="><span class="term"><code class="option">--files-max=</code></span><a class="headerlink" title="Permalink to this term" href="#--files-max=">¶</a></dt><dd><p>Maximum number of
                                 files to read ahead. Only valid
                                 for thes <span class="command"><strong>collect</strong></span>
@@ -63,7 +63,7 @@
                                 to spend collecting data. Only valid
                                 for the <span class="command"><strong>collect</strong></span>
                                 command.</p></dd><dt id="-h"><span class="term"><code class="option">-h</code>, </span><span class="term"><code class="option">--help</code></span><a class="headerlink" title="Permalink to this term" href="#-h">¶</a></dt><dd><p><a name="help-text"></a>Print a short help text and exit.
-    </p></dd><dt id="--version"><span class="term"><code class="option">--version</code></span><a class="headerlink" title="Permalink to this term" href="#--version">¶</a></dt><dd><p><a name="version-text"></a>Print a short version string and exit.</p></dd></dl></div></div><div class="refsect1"><a name="idm214177240336"></a><h2 id="Commands">Commands<a class="headerlink" title="Permalink to this headline" href="#Commands">¶</a></h2><p>The following commands are understood by
+    </p></dd><dt id="--version"><span class="term"><code class="option">--version</code></span><a class="headerlink" title="Permalink to this term" href="#--version">¶</a></dt><dd><p><a name="version-text"></a>Print a short version string and exit.</p></dd></dl></div></div><div class="refsect1"><a name="idm214197006432"></a><h2 id="Commands">Commands<a class="headerlink" title="Permalink to this headline" href="#Commands">¶</a></h2><p>The following commands are understood by
                 <code class="filename">systemd-readahead</code>:</p><div class="variablelist"><dl class="variablelist"><dt id="collect
                                 [DIRECTORY]"><span class="term"><span class="command"><strong>collect
                                 [<em class="replaceable"><code>DIRECTORY</code></em>]</strong></span></span><a class="headerlink" title="Permalink to this term" href="#collect%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%5BDIRECTORY%5D">¶</a></dt><dd><p>Collect read-ahead data on
@@ -81,6 +81,6 @@
                                         output lists approximately how
                                         much will be read ahead by
                                         the <span class="command"><strong>replay</strong></span>
-                                        command.</p></dd></dl></div></div><div class="refsect1"><a name="idm214177222208"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+                                        command.</p></dd></dl></div></div><div class="refsect1"><a name="idm214196988320"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
                         <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>
                 </p></div></div></body></html>
index 08f9afa4559398c9fb48c3001b13abcf2982c111..0da54c5166587301ae3cd45536a026b37ac375b1 100644 (file)
@@ -19,7 +19,7 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="systemd-readahead-replay.service"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>systemd-readahead-replay.service, systemd-readahead-collect.service, systemd-readahead-done.service, systemd-readahead-done.timer, systemd-readahead — Disk read ahead logic</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><p><code class="filename">systemd-readahead-replay.service</code></p><p><code class="filename">systemd-readahead-collect.service</code></p><p><code class="filename">systemd-readahead-done.service</code></p><p><code class="filename">systemd-readahead-done.timer</code></p><div class="cmdsynopsis"><p><code class="command">/usr/lib/systemd/systemd-readahead/systemd-readahead</code>  [OPTIONS...]  COMMAND  [DIRECTORY | FILE]</p></div></div><div class="refsect1"><a name="idm214173363184"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="filename">systemd-readahead-collect.service</code>
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="systemd-readahead-replay.service"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>systemd-readahead-replay.service, systemd-readahead-collect.service, systemd-readahead-done.service, systemd-readahead-done.timer, systemd-readahead — Disk read ahead logic</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><p><code class="filename">systemd-readahead-replay.service</code></p><p><code class="filename">systemd-readahead-collect.service</code></p><p><code class="filename">systemd-readahead-done.service</code></p><p><code class="filename">systemd-readahead-done.timer</code></p><div class="cmdsynopsis"><p><code class="command">/usr/lib/systemd/systemd-readahead/systemd-readahead</code>  [OPTIONS...]  COMMAND  [DIRECTORY | FILE]</p></div></div><div class="refsect1"><a name="idm214193075936"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="filename">systemd-readahead-collect.service</code>
                 is a service that collects disk usage patterns at boot
                 time. <code class="filename">systemd-readahead-replay.service</code>
                 is a service that replays this access data collected
@@ -51,7 +51,7 @@
                 it,
                 <code class="filename">systemd-readahead-collect.service</code>
                 will also defragment and rearrange files on disk to
-                optimize subsequent boot times.</p></div><div class="refsect1"><a name="idm214173352320"></a><h2 id="Options">Options<a class="headerlink" title="Permalink to this headline" href="#Options">¶</a></h2><p><code class="filename">systemd-readahead</code> understands
+                optimize subsequent boot times.</p></div><div class="refsect1"><a name="idm214197017776"></a><h2 id="Options">Options<a class="headerlink" title="Permalink to this headline" href="#Options">¶</a></h2><p><code class="filename">systemd-readahead</code> understands
                 the following options:</p><div class="variablelist"><dl class="variablelist"><dt id="--files-max="><span class="term"><code class="option">--files-max=</code></span><a class="headerlink" title="Permalink to this term" href="#--files-max=">¶</a></dt><dd><p>Maximum number of
                                 files to read ahead. Only valid
                                 for thes <span class="command"><strong>collect</strong></span>
@@ -63,7 +63,7 @@
                                 to spend collecting data. Only valid
                                 for the <span class="command"><strong>collect</strong></span>
                                 command.</p></dd><dt id="-h"><span class="term"><code class="option">-h</code>, </span><span class="term"><code class="option">--help</code></span><a class="headerlink" title="Permalink to this term" href="#-h">¶</a></dt><dd><p><a name="help-text"></a>Print a short help text and exit.
-    </p></dd><dt id="--version"><span class="term"><code class="option">--version</code></span><a class="headerlink" title="Permalink to this term" href="#--version">¶</a></dt><dd><p><a name="version-text"></a>Print a short version string and exit.</p></dd></dl></div></div><div class="refsect1"><a name="idm214177240336"></a><h2 id="Commands">Commands<a class="headerlink" title="Permalink to this headline" href="#Commands">¶</a></h2><p>The following commands are understood by
+    </p></dd><dt id="--version"><span class="term"><code class="option">--version</code></span><a class="headerlink" title="Permalink to this term" href="#--version">¶</a></dt><dd><p><a name="version-text"></a>Print a short version string and exit.</p></dd></dl></div></div><div class="refsect1"><a name="idm214197006432"></a><h2 id="Commands">Commands<a class="headerlink" title="Permalink to this headline" href="#Commands">¶</a></h2><p>The following commands are understood by
                 <code class="filename">systemd-readahead</code>:</p><div class="variablelist"><dl class="variablelist"><dt id="collect
                                 [DIRECTORY]"><span class="term"><span class="command"><strong>collect
                                 [<em class="replaceable"><code>DIRECTORY</code></em>]</strong></span></span><a class="headerlink" title="Permalink to this term" href="#collect%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%5BDIRECTORY%5D">¶</a></dt><dd><p>Collect read-ahead data on
@@ -81,6 +81,6 @@
                                         output lists approximately how
                                         much will be read ahead by
                                         the <span class="command"><strong>replay</strong></span>
-                                        command.</p></dd></dl></div></div><div class="refsect1"><a name="idm214177222208"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+                                        command.</p></dd></dl></div></div><div class="refsect1"><a name="idm214196988320"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
                         <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>
                 </p></div></div></body></html>
index b03dd784bdca665cc3e5a1877c722055e18db837..4a22e8c9fc16e31eab8579fee56de6f97e42887b 100644 (file)
@@ -19,7 +19,7 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="systemd-halt.service"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>systemd-halt.service, systemd-poweroff.service, systemd-reboot.service, systemd-kexec.service, systemd-shutdown — System shutdown logic</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><p><code class="filename">systemd-halt.service</code></p><p><code class="filename">systemd-poweroff.service</code></p><p><code class="filename">systemd-reboot.service</code></p><p><code class="filename">systemd-kexec.service</code></p><p><code class="filename">/usr/lib/systemd/systemd-shutdown</code></p></div><div class="refsect1"><a name="idm214170881184"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="filename">systemd-halt.service</code> is a
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="systemd-halt.service"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>systemd-halt.service, systemd-poweroff.service, systemd-reboot.service, systemd-kexec.service, systemd-shutdown — System shutdown logic</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><p><code class="filename">systemd-halt.service</code></p><p><code class="filename">systemd-poweroff.service</code></p><p><code class="filename">systemd-reboot.service</code></p><p><code class="filename">systemd-kexec.service</code></p><p><code class="filename">/usr/lib/systemd/systemd-shutdown</code></p></div><div class="refsect1"><a name="idm214183037312"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="filename">systemd-halt.service</code> is a
                 system service that is pulled in by
                 <code class="filename">halt.target</code> and is responsible
                 for the actual system halt. Similarly,
@@ -57,7 +57,7 @@
                 related units) should never be executed
                 directly. Instead, trigger system shutdown with a
                 command such as "<code class="literal">systemctl halt</code>" or
-                suchlike.</p></div><div class="refsect1"><a name="idm214167153872"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+                suchlike.</p></div><div class="refsect1"><a name="idm214183155536"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
                         <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
                         <a href="systemctl.html"><span class="citerefentry"><span class="refentrytitle">systemctl</span>(1)</span></a>,
                         <a href="systemd.special.html"><span class="citerefentry"><span class="refentrytitle">systemd.special</span>(7)</span></a>,
index 231eccd17d044bd4cfb48fac792db57017d711f6..5dfcda49ab896e5d95e457568de2d6e509063f79 100644 (file)
@@ -19,7 +19,7 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="systemd-remount-fs.service"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>systemd-remount-fs.service, systemd-remount-fs — Remount root and kernel file systems</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><p><code class="filename">systemd-remount-fs.service</code></p><p><code class="filename">/usr/lib/systemd/systemd-remount-fs</code></p></div><div class="refsect1"><a name="idm214173684336"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="filename">systemd-remount-fs.service</code>
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="systemd-remount-fs.service"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>systemd-remount-fs.service, systemd-remount-fs — Remount root and kernel file systems</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><p><code class="filename">systemd-remount-fs.service</code></p><p><code class="filename">/usr/lib/systemd/systemd-remount-fs</code></p></div><div class="refsect1"><a name="idm214192871296"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="filename">systemd-remount-fs.service</code>
                 is an early-boot service that applies mount options
                 listed in
                 <a href="fstab.html"><span class="citerefentry"><span class="refentrytitle">fstab</span>(5)</span></a>
@@ -40,7 +40,7 @@
                 exist or lists no entries for the mentioned file
                 systems.</p><p>For a longer discussion of kernel API file
                 systems see <a class="ulink" href="http://www.freedesktop.org/wiki/Software/systemd/APIFileSystems" target="_top">API
-                File Systems</a>.</p></div><div class="refsect1"><a name="idm214173674416"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+                File Systems</a>.</p></div><div class="refsect1"><a name="idm214192910144"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
                         <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
                         <a href="fstab.html"><span class="citerefentry"><span class="refentrytitle">fstab</span>(5)</span></a>,
                         <a href="mount.html"><span class="citerefentry"><span class="refentrytitle">mount</span>(8)</span></a>
index b92e1eb0daa7bd9aa9858c212f766f867ee075ac..72b98d8d254111930c95d7a67624734a22854d31 100644 (file)
@@ -1,5 +1,5 @@
 '\" t
-.TH "SYSTEMD\-REMOUNT\-FS\&.SERVICE" "8" "" "systemd 214" "systemd-remount-fs.service"
+.TH "SYSTEMD\-REMOUNT\-FS\&.SERVICE" "8" "" "systemd 215" "systemd-remount-fs.service"
 .\" -----------------------------------------------------------------
 .\" * Define some portability stuff
 .\" -----------------------------------------------------------------
index 231eccd17d044bd4cfb48fac792db57017d711f6..5dfcda49ab896e5d95e457568de2d6e509063f79 100644 (file)
@@ -19,7 +19,7 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="systemd-remount-fs.service"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>systemd-remount-fs.service, systemd-remount-fs — Remount root and kernel file systems</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><p><code class="filename">systemd-remount-fs.service</code></p><p><code class="filename">/usr/lib/systemd/systemd-remount-fs</code></p></div><div class="refsect1"><a name="idm214173684336"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="filename">systemd-remount-fs.service</code>
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="systemd-remount-fs.service"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>systemd-remount-fs.service, systemd-remount-fs — Remount root and kernel file systems</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><p><code class="filename">systemd-remount-fs.service</code></p><p><code class="filename">/usr/lib/systemd/systemd-remount-fs</code></p></div><div class="refsect1"><a name="idm214192871296"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="filename">systemd-remount-fs.service</code>
                 is an early-boot service that applies mount options
                 listed in
                 <a href="fstab.html"><span class="citerefentry"><span class="refentrytitle">fstab</span>(5)</span></a>
@@ -40,7 +40,7 @@
                 exist or lists no entries for the mentioned file
                 systems.</p><p>For a longer discussion of kernel API file
                 systems see <a class="ulink" href="http://www.freedesktop.org/wiki/Software/systemd/APIFileSystems" target="_top">API
-                File Systems</a>.</p></div><div class="refsect1"><a name="idm214173674416"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+                File Systems</a>.</p></div><div class="refsect1"><a name="idm214192910144"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
                         <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
                         <a href="fstab.html"><span class="citerefentry"><span class="refentrytitle">fstab</span>(5)</span></a>,
                         <a href="mount.html"><span class="citerefentry"><span class="refentrytitle">mount</span>(8)</span></a>
index ae9b4731810ef510e95b972b956a048905f8f42f..cce59f1b6d4ad72c063e46d138b2cf2eaa5faec9 100644 (file)
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="systemd-resolved.service"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>systemd-resolved.service, systemd-resolved — Network Name Resolution manager</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><p><code class="filename">systemd-resolved.service</code></p><p><code class="filename">/usr/lib/systemd/systemd-resolved</code></p></div><div class="refsect1"><a name="idm214168023120"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><span class="command"><strong>systemd-networkd</strong></span> is a system
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="systemd-resolved.service"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>systemd-resolved.service, systemd-resolved — Network Name Resolution manager</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><p><code class="filename">systemd-resolved.service</code></p><p><code class="filename">/usr/lib/systemd/systemd-resolved</code></p></div><div class="refsect1"><a name="idm214173999872"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><span class="command"><strong>systemd-resolved</strong></span> is a system
                 service that manages network name resolution. It does so by
-               generating <code class="filename">/run/systemd/resolve/resolv.conf</code>,
-               which may be symlinked from <code class="filename">/etc/resolv.conf</code>.
-               The contents is generated from the global settings in
+                generating <code class="filename">/run/systemd/resolve/resolv.conf</code>,
+                which may be symlinked from <code class="filename">/etc/resolv.conf</code>.
+                The contents is generated from the global settings in
                 <a href="resolved.conf.html"><span class="citerefentry"><span class="refentrytitle">resolved.conf</span>(5)</span></a>,
-               the per-link static settings in <code class="filename">.network</code> files,
-               and the per-link dynamic settings received over DHCP. See
+                the per-link static settings in <code class="filename">.network</code> files,
+                and the per-link dynamic settings received over DHCP. See
                 <a href="systemd.network.html"><span class="citerefentry"><span class="refentrytitle">systemd.network</span>(5)</span></a>
-               for more details.</p><p>Note that <code class="filename">/run/systemd/resolve/resolv.conf</code>
+                for more details.</p><p>Note that <code class="filename">/run/systemd/resolve/resolv.conf</code>
                 should not be used directly, but only through a symlink from
-               <code class="filename">/etc/resolv.conf</code>.</p></div><div class="refsect1"><a name="idm214169575648"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
-                       <a href="resolved.conf.html"><span class="citerefentry"><span class="refentrytitle">resolved.conf</span>(5)</span></a>,
+                <code class="filename">/etc/resolv.conf</code>.</p></div><div class="refsect1"><a name="idm214173992080"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+                        <a href="resolved.conf.html"><span class="citerefentry"><span class="refentrytitle">resolved.conf</span>(5)</span></a>,
                         <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
                         <a href="systemd.network.html"><span class="citerefentry"><span class="refentrytitle">systemd.network</span>(5)</span></a>,
                         <a href="systemd-networkd.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-networkd.service</span>(8)</span></a>
index 0d2e8a2768030048d33a101ff6bd1c0ecea357eb..cad43f6eea4de58eaecdd47df619ac135ea203c3 100644 (file)
@@ -1,5 +1,5 @@
 '\" t
-.TH "SYSTEMD\-RESOLVED\&.SERVICE" "8" "" "systemd 214" "systemd-resolved.service"
+.TH "SYSTEMD\-RESOLVED\&.SERVICE" "8" "" "systemd 215" "systemd-resolved.service"
 .\" -----------------------------------------------------------------
 .\" * Define some portability stuff
 .\" -----------------------------------------------------------------
@@ -28,7 +28,7 @@ systemd\-resolved\&.service
 /usr/lib/systemd/systemd\-resolved
 .SH "DESCRIPTION"
 .PP
-\fBsystemd\-networkd\fR
+\fBsystemd\-resolved\fR
 is a system service that manages network name resolution\&. It does so by generating
 /run/systemd/resolve/resolv\&.conf, which may be symlinked from
 /etc/resolv\&.conf\&. The contents is generated from the global settings in
index ae9b4731810ef510e95b972b956a048905f8f42f..cce59f1b6d4ad72c063e46d138b2cf2eaa5faec9 100644 (file)
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="systemd-resolved.service"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>systemd-resolved.service, systemd-resolved — Network Name Resolution manager</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><p><code class="filename">systemd-resolved.service</code></p><p><code class="filename">/usr/lib/systemd/systemd-resolved</code></p></div><div class="refsect1"><a name="idm214168023120"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><span class="command"><strong>systemd-networkd</strong></span> is a system
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="systemd-resolved.service"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>systemd-resolved.service, systemd-resolved — Network Name Resolution manager</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><p><code class="filename">systemd-resolved.service</code></p><p><code class="filename">/usr/lib/systemd/systemd-resolved</code></p></div><div class="refsect1"><a name="idm214173999872"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><span class="command"><strong>systemd-resolved</strong></span> is a system
                 service that manages network name resolution. It does so by
-               generating <code class="filename">/run/systemd/resolve/resolv.conf</code>,
-               which may be symlinked from <code class="filename">/etc/resolv.conf</code>.
-               The contents is generated from the global settings in
+                generating <code class="filename">/run/systemd/resolve/resolv.conf</code>,
+                which may be symlinked from <code class="filename">/etc/resolv.conf</code>.
+                The contents is generated from the global settings in
                 <a href="resolved.conf.html"><span class="citerefentry"><span class="refentrytitle">resolved.conf</span>(5)</span></a>,
-               the per-link static settings in <code class="filename">.network</code> files,
-               and the per-link dynamic settings received over DHCP. See
+                the per-link static settings in <code class="filename">.network</code> files,
+                and the per-link dynamic settings received over DHCP. See
                 <a href="systemd.network.html"><span class="citerefentry"><span class="refentrytitle">systemd.network</span>(5)</span></a>
-               for more details.</p><p>Note that <code class="filename">/run/systemd/resolve/resolv.conf</code>
+                for more details.</p><p>Note that <code class="filename">/run/systemd/resolve/resolv.conf</code>
                 should not be used directly, but only through a symlink from
-               <code class="filename">/etc/resolv.conf</code>.</p></div><div class="refsect1"><a name="idm214169575648"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
-                       <a href="resolved.conf.html"><span class="citerefentry"><span class="refentrytitle">resolved.conf</span>(5)</span></a>,
+                <code class="filename">/etc/resolv.conf</code>.</p></div><div class="refsect1"><a name="idm214173992080"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+                        <a href="resolved.conf.html"><span class="citerefentry"><span class="refentrytitle">resolved.conf</span>(5)</span></a>,
                         <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
                         <a href="systemd.network.html"><span class="citerefentry"><span class="refentrytitle">systemd.network</span>(5)</span></a>,
                         <a href="systemd-networkd.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-networkd.service</span>(8)</span></a>
index ed1f5a23658f0616788de498cbd7f2fe70a19031..839f46a12b129daeb28f4254187bf6651c1a679d 100644 (file)
         <refsect1>
                 <title>Description</title>
 
-                <para><command>systemd-networkd</command> is a system
+                <para><command>systemd-resolved</command> is a system
                 service that manages network name resolution. It does so by
-               generating <filename>/run/systemd/resolve/resolv.conf</filename>,
-               which may be symlinked from <filename>/etc/resolv.conf</filename>.
-               The contents is generated from the global settings in
+                generating <filename>/run/systemd/resolve/resolv.conf</filename>,
+                which may be symlinked from <filename>/etc/resolv.conf</filename>.
+                The contents is generated from the global settings in
                 <citerefentry><refentrytitle>resolved.conf</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
-               the per-link static settings in <filename>.network</filename> files,
-               and the per-link dynamic settings received over DHCP. See
+                the per-link static settings in <filename>.network</filename> files,
+                and the per-link dynamic settings received over DHCP. See
                 <citerefentry><refentrytitle>systemd.network</refentrytitle><manvolnum>5</manvolnum></citerefentry>
-               for more details.</para>
+                for more details.</para>
 
                 <para>Note that <filename>/run/systemd/resolve/resolv.conf</filename>
                 should not be used directly, but only through a symlink from
-               <filename>/etc/resolv.conf</filename>.</para>
+                <filename>/etc/resolv.conf</filename>.</para>
         </refsect1>
 
         <refsect1>
                 <title>See Also</title>
                 <para>
-                       <citerefentry><refentrytitle>resolved.conf</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
+                        <citerefentry><refentrytitle>resolved.conf</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
                         <citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
                         <citerefentry><refentrytitle>systemd.network</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
                         <citerefentry><refentrytitle>systemd-networkd.service</refentrytitle><manvolnum>8</manvolnum></citerefentry>
index 2d6ced32bea6879f5fca0aecc88245e92cc1a767..b2696bf51ce8758c986f6d602fef8b5af5695e5b 100644 (file)
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="systemd-rfkill@.service"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>systemd-rfkill@.service, systemd-rfkill — Load and save the RF kill switch state at boot and shutdown</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><p><code class="filename">systemd-rfkill@.service</code></p><p><code class="filename">/usr/lib/systemd/systemd-rfkill</code></p></div><div class="refsect1"><a name="idm214196629584"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="filename">systemd-rfkill@.service</code> is
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="systemd-rfkill@.service"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>systemd-rfkill@.service, systemd-rfkill — Load and save the RF kill switch state at boot and shutdown</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><p><code class="filename">systemd-rfkill@.service</code></p><p><code class="filename">/usr/lib/systemd/systemd-rfkill</code></p></div><div class="refsect1"><a name="idm214183154400"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="filename">systemd-rfkill@.service</code> is
                 a service that restores the RF kill switch state at
                 early boot and saves it at shutdown. On disk, the RF
                 kill switch state is stored in
-                <code class="filename">/var/lib/systemd/rfkill/</code>.</p></div><div class="refsect1"><a name="idm214197137728"></a><h2 id="Kernel Command Line">Kernel Command Line<a class="headerlink" title="Permalink to this headline" href="#Kernel%20Command%20Line">¶</a></h2><p><code class="filename">systemd-rfkill</code> understands
+                <code class="filename">/var/lib/systemd/rfkill/</code>.</p></div><div class="refsect1"><a name="idm214183151840"></a><h2 id="Kernel Command Line">Kernel Command Line<a class="headerlink" title="Permalink to this headline" href="#Kernel%20Command%20Line">¶</a></h2><p><code class="filename">systemd-rfkill</code> understands
                 the following kernel command line parameter:</p><div class="variablelist"><dl class="variablelist"><dt id="systemd.restore_state="><span class="term"><code class="varname">systemd.restore_state=</code></span><a class="headerlink" title="Permalink to this term" href="#systemd.restore_state=">¶</a></dt><dd><p>Takes a boolean
                                 argument. Defaults to
                                 "<code class="literal">1</code>". If
                                 "<code class="literal">0</code>", does not restore
                                 the rfkill settings on boot. However,
                                 settings will still be stored on shutdown.
-                                </p></dd></dl></div></div><div class="refsect1"><a name="idm214195708208"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+                                </p></dd></dl></div></div><div class="refsect1"><a name="idm214183146256"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
                         <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>
                 </p></div></div></body></html>
index d1a77d5c6e4487acbd5b2034d0d5d2cb126e86ef..9d570bf917aa9fa4dd9d5fa0641bea37bbc96649 100644 (file)
@@ -1,5 +1,5 @@
 '\" t
-.TH "SYSTEMD\-RFKILL@\&.SERVICE" "8" "" "systemd 214" "systemd-rfkill@.service"
+.TH "SYSTEMD\-RFKILL@\&.SERVICE" "8" "" "systemd 215" "systemd-rfkill@.service"
 .\" -----------------------------------------------------------------
 .\" * Define some portability stuff
 .\" -----------------------------------------------------------------
index 2d6ced32bea6879f5fca0aecc88245e92cc1a767..b2696bf51ce8758c986f6d602fef8b5af5695e5b 100644 (file)
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="systemd-rfkill@.service"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>systemd-rfkill@.service, systemd-rfkill — Load and save the RF kill switch state at boot and shutdown</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><p><code class="filename">systemd-rfkill@.service</code></p><p><code class="filename">/usr/lib/systemd/systemd-rfkill</code></p></div><div class="refsect1"><a name="idm214196629584"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="filename">systemd-rfkill@.service</code> is
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="systemd-rfkill@.service"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>systemd-rfkill@.service, systemd-rfkill — Load and save the RF kill switch state at boot and shutdown</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><p><code class="filename">systemd-rfkill@.service</code></p><p><code class="filename">/usr/lib/systemd/systemd-rfkill</code></p></div><div class="refsect1"><a name="idm214183154400"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="filename">systemd-rfkill@.service</code> is
                 a service that restores the RF kill switch state at
                 early boot and saves it at shutdown. On disk, the RF
                 kill switch state is stored in
-                <code class="filename">/var/lib/systemd/rfkill/</code>.</p></div><div class="refsect1"><a name="idm214197137728"></a><h2 id="Kernel Command Line">Kernel Command Line<a class="headerlink" title="Permalink to this headline" href="#Kernel%20Command%20Line">¶</a></h2><p><code class="filename">systemd-rfkill</code> understands
+                <code class="filename">/var/lib/systemd/rfkill/</code>.</p></div><div class="refsect1"><a name="idm214183151840"></a><h2 id="Kernel Command Line">Kernel Command Line<a class="headerlink" title="Permalink to this headline" href="#Kernel%20Command%20Line">¶</a></h2><p><code class="filename">systemd-rfkill</code> understands
                 the following kernel command line parameter:</p><div class="variablelist"><dl class="variablelist"><dt id="systemd.restore_state="><span class="term"><code class="varname">systemd.restore_state=</code></span><a class="headerlink" title="Permalink to this term" href="#systemd.restore_state=">¶</a></dt><dd><p>Takes a boolean
                                 argument. Defaults to
                                 "<code class="literal">1</code>". If
                                 "<code class="literal">0</code>", does not restore
                                 the rfkill settings on boot. However,
                                 settings will still be stored on shutdown.
-                                </p></dd></dl></div></div><div class="refsect1"><a name="idm214195708208"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+                                </p></dd></dl></div></div><div class="refsect1"><a name="idm214183146256"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
                         <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>
                 </p></div></div></body></html>
index 3db3e4aec23ad5bc15e4990166226ee5f6264bb1..c776d77e8d060a67ca20066e7cff9ab655379a38 100644 (file)
@@ -1,5 +1,5 @@
 '\" t
-.TH "SYSTEMD\-RUN" "1" "" "systemd 214" "systemd-run"
+.TH "SYSTEMD\-RUN" "1" "" "systemd 215" "systemd-run"
 .\" -----------------------------------------------------------------
 .\" * Define some portability stuff
 .\" -----------------------------------------------------------------
@@ -153,8 +153,10 @@ Talk to the service manager of the system\&. This is the implied default\&.
 .PP
 \fB\-H\fR, \fB\-\-host=\fR
 .RS 4
-Execute the operation remotely\&. Specify a hostname, or username and hostname separated by
-"@", to connect to\&. This will use SSH to talk to the remote machine manager instance\&.
+Execute the operation remotely\&. Specify a hostname, or a username and hostname separated by
+"@", to connect to\&. The hostname may optionally be suffixed by a container name, separated by
+":", which connects directly to a specific container on the specified host\&. This will use SSH to talk to the remote machine manager instance\&. Container names may be enumerated with
+\fBmachinectl \-H \fR\fB\fIHOST\fR\fR\&.
 .RE
 .PP
 \fB\-M\fR, \fB\-\-machine=\fR
index 5e85306f7dbaf90bf04f962b7e5b555060894d14..4fbb55239b6e7e91463126d5c5121852901b0725 100644 (file)
@@ -19,9 +19,9 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="systemd-run"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>systemd-run — Run programs in transient scope or service units</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="cmdsynopsis"><p><code class="command">systemd-run</code>  [OPTIONS...]  <em class="replaceable"><code>COMMAND</code></em>
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="systemd-run"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>systemd-run — Run programs in transient scope or service units</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="cmdsynopsis"><p><code class="command">systemd-run</code>  [OPTIONS...]  <em class="replaceable"><code>COMMAND</code></em>
        [ARGS...]
-       </p></div></div><div class="refsect1"><a name="idm214170655408"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><span class="command"><strong>systemd-run</strong></span> may be used to create and start
+       </p></div></div><div class="refsect1"><a name="idm214192991536"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><span class="command"><strong>systemd-run</strong></span> may be used to create and start
     a transient <code class="filename">.service</code> or a
     <code class="filename">.scope</code> unit and run the specified
     <em class="replaceable"><code>COMMAND</code></em> in it.</p><p>If a command is run as transient service unit, it will be
@@ -36,7 +36,7 @@
     managed by the service manager similar to normal services, and
     will also show up in the output of <span class="command"><strong>systemctl
     list-units</strong></span>. Execution in this case is synchronous, and
-    execution will return only when the command finishes.</p></div><div class="refsect1"><a name="idm214170647616"></a><h2 id="Options">Options<a class="headerlink" title="Permalink to this headline" href="#Options">¶</a></h2><p>The following options are understood:</p><div class="variablelist"><dl class="variablelist"><dt id="--scope"><span class="term"><code class="option">--scope</code></span><a class="headerlink" title="Permalink to this term" href="#--scope">¶</a></dt><dd><p>Create a transient <code class="filename">.scope</code> unit instead of
+    execution will return only when the command finishes.</p></div><div class="refsect1"><a name="idm214193032512"></a><h2 id="Options">Options<a class="headerlink" title="Permalink to this headline" href="#Options">¶</a></h2><p>The following options are understood:</p><div class="variablelist"><dl class="variablelist"><dt id="--scope"><span class="term"><code class="option">--scope</code></span><a class="headerlink" title="Permalink to this term" href="#--scope">¶</a></dt><dd><p>Create a transient <code class="filename">.scope</code> unit instead of
           the default transient <code class="filename">.service</code> unit.
           </p></dd><dt id="--unit="><span class="term"><code class="option">--unit=</code></span><a class="headerlink" title="Permalink to this term" href="#--unit=">¶</a></dt><dd><p>Use this unit name instead of an automatically
         generated one.</p></dd><dt id="--property="><span class="term"><code class="option">--property=</code>, </span><span class="term"><code class="option">-p</code></span><a class="headerlink" title="Permalink to this term" href="#--property=">¶</a></dt><dd><p>Sets a unit property for the scope or service
         <code class="varname">Environment=</code> in
         <a href="systemd.exec.html"><span class="citerefentry"><span class="refentrytitle">systemd.exec</span>(5)</span></a>.</p></dd><dt id="--user"><span class="term"><code class="option">--user</code></span><a class="headerlink" title="Permalink to this term" href="#--user">¶</a></dt><dd><p><a name="user-text"></a>Talk to the service manager of the calling user,
       rather than the service manager of the system.</p></dd><dt id="--system"><span class="term"><code class="option">--system</code></span><a class="headerlink" title="Permalink to this term" href="#--system">¶</a></dt><dd><p><a name="system-text"></a>Talk to the service manager of the system. This is the
-      implied default.</p></dd><dt id="-H"><span class="term"><code class="option">-H</code>, </span><span class="term"><code class="option">--host=</code></span><a class="headerlink" title="Permalink to this term" href="#-H">¶</a></dt><dd><p><a name="host-text"></a>Execute the operation remotely. Specify a hostname, or
+      implied default.</p></dd><dt id="-H"><span class="term"><code class="option">-H</code>, </span><span class="term"><code class="option">--host=</code></span><a class="headerlink" title="Permalink to this term" href="#-H">¶</a></dt><dd><p><a name="host-text"></a>Execute the operation remotely. Specify a hostname, or a
       username and hostname separated by "<code class="literal">@</code>", to
-      connect to. This will use SSH to talk to the remote machine
-      manager instance.</p></dd><dt id="-M"><span class="term"><code class="option">-M</code>, </span><span class="term"><code class="option">--machine=</code></span><a class="headerlink" title="Permalink to this term" href="#-M">¶</a></dt><dd><p><a name="machine-text"></a>Execute operation on a local container. Specify a
+      connect to. The hostname may optionally be suffixed by a
+      container name, separated by "<code class="literal">:</code>", which
+      connects directly to a specific container on the specified
+      host. This will use SSH to talk to the remote machine manager
+      instance. Container names may be enumerated with
+      <span class="command"><strong>machinectl -H
+      <em class="replaceable"><code>HOST</code></em></strong></span>.</p></dd><dt id="-M"><span class="term"><code class="option">-M</code>, </span><span class="term"><code class="option">--machine=</code></span><a class="headerlink" title="Permalink to this term" href="#-M">¶</a></dt><dd><p><a name="machine-text"></a>Execute operation on a local container. Specify a
       container name to connect to.</p></dd><dt id="-h"><span class="term"><code class="option">-h</code>, </span><span class="term"><code class="option">--help</code></span><a class="headerlink" title="Permalink to this term" href="#-h">¶</a></dt><dd><p><a name="help-text"></a>Print a short help text and exit.
     </p></dd><dt id="--version"><span class="term"><code class="option">--version</code></span><a class="headerlink" title="Permalink to this term" href="#--version">¶</a></dt><dd><p><a name="version-text"></a>Print a short version string and exit.</p></dd></dl></div><p>All command-line arguments after the first non-option
     argument become part of the commandline of the launched
     process. If a command is run as service unit, its first argument
-    needs to be an absolute binary path.</p></div><div class="refsect1"><a name="idm214174502736"></a><h2 id="Exit status">Exit status<a class="headerlink" title="Permalink to this headline" href="#Exit%20status">¶</a></h2><p>On success, 0 is returned, a non-zero failure
-    code otherwise.</p></div><div class="refsect1"><a name="idm214174501552"></a><h2 id="Examples">Examples<a class="headerlink" title="Permalink to this headline" href="#Examples">¶</a></h2><p>The following command will log the environment variables
+    needs to be an absolute binary path.</p></div><div class="refsect1"><a name="idm214193069376"></a><h2 id="Exit status">Exit status<a class="headerlink" title="Permalink to this headline" href="#Exit%20status">¶</a></h2><p>On success, 0 is returned, a non-zero failure
+    code otherwise.</p></div><div class="refsect1"><a name="idm214193068192"></a><h2 id="Examples">Examples<a class="headerlink" title="Permalink to this headline" href="#Examples">¶</a></h2><p>The following command will log the environment variables
     provided by systemd to services:</p><pre class="programlisting"># systemd-run env
 Running as unit run-19945.service.
 # journalctl -u run-19945.service
@@ -98,7 +103,7 @@ Sep 08 07:37:21 bupkis env[19948]: BOOT_IMAGE=/vmlinuz-3.11.0-0.rc5.git6.2.fc20.
     tool, but lowers the block IO weight for it to 10. See
     <a href="systemd.resource-control.html"><span class="citerefentry"><span class="refentrytitle">systemd.resource-control</span>(5)</span></a>
     for more information on the <code class="varname">BlockIOWeight=</code>
-    property.</p><pre class="programlisting"># systemd-run -p BlockIOWeight=10 updatedb</pre></div><div class="refsect1"><a name="idm214169581328"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+    property.</p><pre class="programlisting"># systemd-run -p BlockIOWeight=10 updatedb</pre></div><div class="refsect1"><a name="idm214188097824"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
       <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
       <a href="systemctl.html"><span class="citerefentry"><span class="refentrytitle">systemctl</span>(1)</span></a>,
       <a href="systemd.unit.html"><span class="citerefentry"><span class="refentrytitle">systemd.unit</span>(5)</span></a>,
index b03dd784bdca665cc3e5a1877c722055e18db837..4a22e8c9fc16e31eab8579fee56de6f97e42887b 100644 (file)
@@ -19,7 +19,7 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="systemd-halt.service"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>systemd-halt.service, systemd-poweroff.service, systemd-reboot.service, systemd-kexec.service, systemd-shutdown — System shutdown logic</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><p><code class="filename">systemd-halt.service</code></p><p><code class="filename">systemd-poweroff.service</code></p><p><code class="filename">systemd-reboot.service</code></p><p><code class="filename">systemd-kexec.service</code></p><p><code class="filename">/usr/lib/systemd/systemd-shutdown</code></p></div><div class="refsect1"><a name="idm214170881184"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="filename">systemd-halt.service</code> is a
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="systemd-halt.service"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>systemd-halt.service, systemd-poweroff.service, systemd-reboot.service, systemd-kexec.service, systemd-shutdown — System shutdown logic</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><p><code class="filename">systemd-halt.service</code></p><p><code class="filename">systemd-poweroff.service</code></p><p><code class="filename">systemd-reboot.service</code></p><p><code class="filename">systemd-kexec.service</code></p><p><code class="filename">/usr/lib/systemd/systemd-shutdown</code></p></div><div class="refsect1"><a name="idm214183037312"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="filename">systemd-halt.service</code> is a
                 system service that is pulled in by
                 <code class="filename">halt.target</code> and is responsible
                 for the actual system halt. Similarly,
@@ -57,7 +57,7 @@
                 related units) should never be executed
                 directly. Instead, trigger system shutdown with a
                 command such as "<code class="literal">systemctl halt</code>" or
-                suchlike.</p></div><div class="refsect1"><a name="idm214167153872"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+                suchlike.</p></div><div class="refsect1"><a name="idm214183155536"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
                         <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
                         <a href="systemctl.html"><span class="citerefentry"><span class="refentrytitle">systemctl</span>(1)</span></a>,
                         <a href="systemd.special.html"><span class="citerefentry"><span class="refentrytitle">systemd.special</span>(7)</span></a>,
index a5c92038d241b4ab5cf7071eb806abe1662fcdf9..c1d4be749628921d3be8cc94cacf4da6f10062b0 100644 (file)
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="systemd-shutdownd.service"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>systemd-shutdownd.service, systemd-shutdownd.socket, systemd-shutdownd — Scheduled shutdown service</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><p><code class="filename">systemd-shutdownd.service</code></p><p><code class="filename">systemd-shutdownd.socket</code></p><p><code class="filename">/usr/lib/systemd/systemd-shutdownd</code></p></div><div class="refsect1"><a name="idm214197386624"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="filename">systemd-shutdownd.service</code> is a
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="systemd-shutdownd.service"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>systemd-shutdownd.service, systemd-shutdownd.socket, systemd-shutdownd — Scheduled shutdown service</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><p><code class="filename">systemd-shutdownd.service</code></p><p><code class="filename">systemd-shutdownd.socket</code></p><p><code class="filename">/usr/lib/systemd/systemd-shutdownd</code></p></div><div class="refsect1"><a name="idm214188139152"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="filename">systemd-shutdownd.service</code> is a
                 system service that implements scheduled shutdowns, as
                 exposed by
                 <a href="shutdown.html"><span class="citerefentry"><span class="refentrytitle">shutdown</span>(8)</span></a>.
                 <code class="filename">systemd-shutdownd.service</code> is automatically activated on request and terminates
-                itself when it is unused.</p></div><div class="refsect1"><a name="idm214197383072"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+                itself when it is unused.</p></div><div class="refsect1"><a name="idm214188135600"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
                         <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
                         <a href="shutdown.html"><span class="citerefentry"><span class="refentrytitle">shutdown</span>(8)</span></a>
                 </p></div></div></body></html>
index 6f9cea4ba3c06c06ecaeaebeed6871c93dcae35a..279026ea1d27f7c30008f7f7abd7c58b77454c05 100644 (file)
@@ -1,5 +1,5 @@
 '\" t
-.TH "SYSTEMD\-SHUTDOWND\&.SERVICE" "8" "" "systemd 214" "systemd-shutdownd.service"
+.TH "SYSTEMD\-SHUTDOWND\&.SERVICE" "8" "" "systemd 215" "systemd-shutdownd.service"
 .\" -----------------------------------------------------------------
 .\" * Define some portability stuff
 .\" -----------------------------------------------------------------
index a5c92038d241b4ab5cf7071eb806abe1662fcdf9..c1d4be749628921d3be8cc94cacf4da6f10062b0 100644 (file)
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="systemd-shutdownd.service"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>systemd-shutdownd.service, systemd-shutdownd.socket, systemd-shutdownd — Scheduled shutdown service</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><p><code class="filename">systemd-shutdownd.service</code></p><p><code class="filename">systemd-shutdownd.socket</code></p><p><code class="filename">/usr/lib/systemd/systemd-shutdownd</code></p></div><div class="refsect1"><a name="idm214197386624"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="filename">systemd-shutdownd.service</code> is a
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="systemd-shutdownd.service"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>systemd-shutdownd.service, systemd-shutdownd.socket, systemd-shutdownd — Scheduled shutdown service</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><p><code class="filename">systemd-shutdownd.service</code></p><p><code class="filename">systemd-shutdownd.socket</code></p><p><code class="filename">/usr/lib/systemd/systemd-shutdownd</code></p></div><div class="refsect1"><a name="idm214188139152"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="filename">systemd-shutdownd.service</code> is a
                 system service that implements scheduled shutdowns, as
                 exposed by
                 <a href="shutdown.html"><span class="citerefentry"><span class="refentrytitle">shutdown</span>(8)</span></a>.
                 <code class="filename">systemd-shutdownd.service</code> is automatically activated on request and terminates
-                itself when it is unused.</p></div><div class="refsect1"><a name="idm214197383072"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+                itself when it is unused.</p></div><div class="refsect1"><a name="idm214188135600"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
                         <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
                         <a href="shutdown.html"><span class="citerefentry"><span class="refentrytitle">shutdown</span>(8)</span></a>
                 </p></div></div></body></html>
index a5c92038d241b4ab5cf7071eb806abe1662fcdf9..c1d4be749628921d3be8cc94cacf4da6f10062b0 100644 (file)
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="systemd-shutdownd.service"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>systemd-shutdownd.service, systemd-shutdownd.socket, systemd-shutdownd — Scheduled shutdown service</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><p><code class="filename">systemd-shutdownd.service</code></p><p><code class="filename">systemd-shutdownd.socket</code></p><p><code class="filename">/usr/lib/systemd/systemd-shutdownd</code></p></div><div class="refsect1"><a name="idm214197386624"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="filename">systemd-shutdownd.service</code> is a
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="systemd-shutdownd.service"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>systemd-shutdownd.service, systemd-shutdownd.socket, systemd-shutdownd — Scheduled shutdown service</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><p><code class="filename">systemd-shutdownd.service</code></p><p><code class="filename">systemd-shutdownd.socket</code></p><p><code class="filename">/usr/lib/systemd/systemd-shutdownd</code></p></div><div class="refsect1"><a name="idm214188139152"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="filename">systemd-shutdownd.service</code> is a
                 system service that implements scheduled shutdowns, as
                 exposed by
                 <a href="shutdown.html"><span class="citerefentry"><span class="refentrytitle">shutdown</span>(8)</span></a>.
                 <code class="filename">systemd-shutdownd.service</code> is automatically activated on request and terminates
-                itself when it is unused.</p></div><div class="refsect1"><a name="idm214197383072"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+                itself when it is unused.</p></div><div class="refsect1"><a name="idm214188135600"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
                         <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
                         <a href="shutdown.html"><span class="citerefentry"><span class="refentrytitle">shutdown</span>(8)</span></a>
                 </p></div></div></body></html>
index 7e4a6deec4cf7eee9892984085fb7a46c6f4fbda..f8841031c4c2bb6f82293ba456af958b9e9ecc4d 100644 (file)
@@ -1,5 +1,5 @@
 '\" t
-.TH "SYSTEMD\-SLEEP\&.CONF" "5" "" "systemd 214" "systemd-sleep.conf"
+.TH "SYSTEMD\-SLEEP\&.CONF" "5" "" "systemd 215" "systemd-sleep.conf"
 .\" -----------------------------------------------------------------
 .\" * Define some portability stuff
 .\" -----------------------------------------------------------------
index 33804b6822814464799275446f9118dee563f4e0..23ffb33f4ac2cc23b36a9d14bd1a2d693b3f4d24 100644 (file)
@@ -19,7 +19,7 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="systemd-sleep.conf"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>systemd-sleep.conf — Suspend and hibernation configuration file</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><p><code class="filename">/etc/systemd/sleep.conf</code></p></div><div class="refsect1"><a name="idm214182902160"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><span class="command"><strong>systemd</strong></span> supports three general
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="systemd-sleep.conf"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>systemd-sleep.conf — Suspend and hibernation configuration file</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><p><code class="filename">/etc/systemd/sleep.conf</code></p></div><div class="refsect1"><a name="idm214196026528"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><span class="command"><strong>systemd</strong></span> supports three general
     power-saving modes:</p><div class="variablelist"><dl class="variablelist"><dt id="suspend"><span class="term">suspend</span><a class="headerlink" title="Permalink to this term" href="#suspend">¶</a></dt><dd><p>a low-power state
         where execution of the OS is paused,
         and complete power loss might result
@@ -48,7 +48,7 @@
     <a href="systemd-sleep.html"><span class="citerefentry"><span class="refentrytitle">systemd-sleep</span>(8)</span></a>
     when
     <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>
-    attempts to suspend or hibernate the machine.</p></div><div class="refsect1"><a name="idm214182891696"></a><h2 id="Options">Options<a class="headerlink" title="Permalink to this headline" href="#Options">¶</a></h2><p>The following options can be configured in the
+    attempts to suspend or hibernate the machine.</p></div><div class="refsect1"><a name="idm214196016080"></a><h2 id="Options">Options<a class="headerlink" title="Permalink to this headline" href="#Options">¶</a></h2><p>The following options can be configured in the
     "<code class="literal">[Sleep]</code>" section of
     <code class="filename">/etc/systemd/sleep.conf</code>:</p><div class="variablelist"><dl class="variablelist"><dt id="SuspendMode="><span class="term"><code class="varname">SuspendMode=</code>, </span><span class="term"><code class="varname">HibernateMode=</code>, </span><span class="term"><code class="varname">HybridSleepMode=</code></span><a class="headerlink" title="Permalink to this term" href="#SuspendMode=">¶</a></dt><dd><p>The string to be written to
         <code class="filename">/sys/power/disk</code> by,
         multiple values with whitespace. They will be tried
         in turn, until one is written without error. If
         neither succeeds, the operation will be aborted.
-        </p></dd></dl></div></div><div class="refsect1"><a name="idm214186780112"></a><h2 id="Example: freeze">Example: freeze<a class="headerlink" title="Permalink to this headline" href="#Example:%20freeze">¶</a></h2><p>Example: to exploit the <span class="quote">“<span class="quote">freeze</span>”</span> mode added
+        </p></dd></dl></div></div><div class="refsect1"><a name="idm214199900320"></a><h2 id="Example: freeze">Example: freeze<a class="headerlink" title="Permalink to this headline" href="#Example:%20freeze">¶</a></h2><p>Example: to exploit the <span class="quote">“<span class="quote">freeze</span>”</span> mode added
     in Linux 3.9, one can use <span class="command"><strong>systemctl suspend</strong></span>
     with
     </p><pre class="programlisting">[Sleep]
-SuspendState=freeze</pre></div><div class="refsect1"><a name="idm214186777168"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+SuspendState=freeze</pre></div><div class="refsect1"><a name="idm214199897376"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
       <a href="systemd-sleep.html"><span class="citerefentry"><span class="refentrytitle">systemd-sleep</span>(8)</span></a>,
       <a href="systemd-suspend.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-suspend.service</span>(8)</span></a>,
       <a href="systemd-hibernate.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-hibernate.service</span>(8)</span></a>,
index 027b233c042675bb23c675ca2fd407ecc08e95d8..854aa8358db1a2e9d7b3422eff57678fa1e24f0d 100644 (file)
@@ -19,7 +19,7 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="systemd-suspend.service"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>systemd-suspend.service, systemd-hibernate.service, systemd-hybrid-sleep.service, systemd-sleep — System sleep state logic</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><p><code class="filename">systemd-suspend.service</code></p><p><code class="filename">systemd-hibernate.service</code></p><p><code class="filename">systemd-hybrid-sleep.service</code></p><p><code class="filename">/usr/lib/systemd/systemd-sleep</code></p></div><div class="refsect1"><a name="idm214190297200"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="filename">systemd-suspend.service</code> is
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="systemd-suspend.service"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>systemd-suspend.service, systemd-hibernate.service, systemd-hybrid-sleep.service, systemd-sleep — System sleep state logic</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><p><code class="filename">systemd-suspend.service</code></p><p><code class="filename">systemd-hibernate.service</code></p><p><code class="filename">systemd-hybrid-sleep.service</code></p><p><code class="filename">/usr/lib/systemd/systemd-sleep</code></p></div><div class="refsect1"><a name="idm214187249136"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="filename">systemd-suspend.service</code> is
                 a system service that is pulled in by
                 <code class="filename">suspend.target</code> and is responsible
                 for the actual system suspend. Similarly,
                 where can be configured in the "<code class="literal">[Sleep]</code>"
                 section of <code class="filename">/etc/systemd/sleep.conf</code>.
                 See <a href="systemd-sleep.conf.html"><span class="citerefentry"><span class="refentrytitle">systemd-sleep.conf</span>(5)</span></a>.
-                </p></div><div class="refsect1"><a name="idm214194175168"></a><h2 id="Options">Options<a class="headerlink" title="Permalink to this headline" href="#Options">¶</a></h2><p><span class="command"><strong>systemd-sleep</strong></span> understands the
+                </p></div><div class="refsect1"><a name="idm214191127792"></a><h2 id="Options">Options<a class="headerlink" title="Permalink to this headline" href="#Options">¶</a></h2><p><span class="command"><strong>systemd-sleep</strong></span> understands the
                 following commands:</p><div class="variablelist"><dl class="variablelist"><dt id="-h"><span class="term"><code class="option">-h</code>, </span><span class="term"><code class="option">--help</code></span><a class="headerlink" title="Permalink to this term" href="#-h">¶</a></dt><dd><p><a name="help-text"></a>Print a short help text and exit.
     </p></dd><dt id="--version"><span class="term"><code class="option">--version</code></span><a class="headerlink" title="Permalink to this term" href="#--version">¶</a></dt><dd><p><a name="version-text"></a>Print a short version string and exit.</p></dd><dt id="suspend"><span class="term"><code class="option">suspend</code>, </span><span class="term"><code class="option">hibernate</code>, </span><span class="term"><code class="option">hybrid-sleep</code></span><a class="headerlink" title="Permalink to this term" href="#suspend">¶</a></dt><dd><p>Suspend, hibernate, or
-                                put the system to hybrid sleep.</p></dd></dl></div></div><div class="refsect1"><a name="idm214194168640"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+                                put the system to hybrid sleep.</p></dd></dl></div></div><div class="refsect1"><a name="idm214191121168"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
                         <a href="systemd-sleep.conf.html"><span class="citerefentry"><span class="refentrytitle">systemd-sleep.conf</span>(5)</span></a>,
                         <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
                         <a href="systemctl.html"><span class="citerefentry"><span class="refentrytitle">systemctl</span>(1)</span></a>,
index 3a46a66d30d9d6558467cf813fafb3d3e68f3588..632dbed58d602081aad322fc484238856e3d4a0d 100644 (file)
@@ -1,5 +1,5 @@
 '\" t
-.TH "SYSTEMD\-SOCKET\-PROXYD" "8" "" "systemd 214" "systemd-socket-proxyd"
+.TH "SYSTEMD\-SOCKET\-PROXYD" "8" "" "systemd 215" "systemd-socket-proxyd"
 .\" -----------------------------------------------------------------
 .\" * Define some portability stuff
 .\" -----------------------------------------------------------------
index c64902d05320212a3abf047631792322bf5b9755..d07ff560b93dc71461b025803eb0df16188829e5 100644 (file)
@@ -19,8 +19,8 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="systemd-socket-proxyd"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>systemd-socket-proxyd — Bidirectionally proxy local sockets to another (possibly remote) socket.</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="cmdsynopsis"><p><code class="command">systemd-socket-proxyd</code>  [<em class="replaceable"><code>OPTIONS</code></em>...]  <em class="replaceable"><code>HOST</code></em>:<em class="replaceable"><code>PORT</code></em> </p></div><div class="cmdsynopsis"><p><code class="command">systemd-socket-proxyd</code>  [<em class="replaceable"><code>OPTIONS</code></em>...]  <em class="replaceable"><code>UNIX-DOMAIN-SOCKET-PATH</code></em>
-                         </p></div></div><div class="refsect1"><a name="idm214191115840"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p>
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="systemd-socket-proxyd"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>systemd-socket-proxyd — Bidirectionally proxy local sockets to another (possibly remote) socket.</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="cmdsynopsis"><p><code class="command">systemd-socket-proxyd</code>  [<em class="replaceable"><code>OPTIONS</code></em>...]  <em class="replaceable"><code>HOST</code></em>:<em class="replaceable"><code>PORT</code></em> </p></div><div class="cmdsynopsis"><p><code class="command">systemd-socket-proxyd</code>  [<em class="replaceable"><code>OPTIONS</code></em>...]  <em class="replaceable"><code>UNIX-DOMAIN-SOCKET-PATH</code></em>
+                         </p></div></div><div class="refsect1"><a name="idm214196073104"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p>
                 <span class="command"><strong>systemd-socket-proxyd</strong></span> is a generic
                 socket-activated network socket forwarder proxy daemon
                 for IPv4, IPv6 and UNIX stream sockets. It may be used
                 are support for socket activation with
                 "<code class="literal">Accept=false</code>" and an event-driven
                 design that scales better with the number of
-                connections.</p></div><div class="refsect1"><a name="idm214191110064"></a><h2 id="Options">Options<a class="headerlink" title="Permalink to this headline" href="#Options">¶</a></h2><p>The following options are understood:</p><div class="variablelist"><dl class="variablelist"><dt id="-h"><span class="term"><code class="option">-h</code>, </span><span class="term"><code class="option">--help</code></span><a class="headerlink" title="Permalink to this term" href="#-h">¶</a></dt><dd><p><a name="help-text"></a>Print a short help text and exit.
-    </p></dd><dt id="--version"><span class="term"><code class="option">--version</code></span><a class="headerlink" title="Permalink to this term" href="#--version">¶</a></dt><dd><p><a name="version-text"></a>Print a short version string and exit.</p></dd></dl></div></div><div class="refsect1"><a name="idm214195010912"></a><h2 id="Exit status">Exit status<a class="headerlink" title="Permalink to this headline" href="#Exit%20status">¶</a></h2><p>On success, 0 is returned, a non-zero failure
-                code otherwise.</p></div><div class="refsect1"><a name="idm214195009728"></a><h2 id="Examples">Examples<a class="headerlink" title="Permalink to this headline" href="#Examples">¶</a></h2><div class="refsect2"><a name="idm214195009056"></a><h3 id="Simple Example">Simple Example<a class="headerlink" title="Permalink to this headline" href="#Simple%20Example">¶</a></h3><p>Use two services with a dependency
-                        and no namespace isolation.</p><div class="example"><a name="idm214195008000"></a><p class="title"><b>Example 1. proxy-to-nginx.socket</b></p><div class="example-contents"><pre class="programlisting">[Socket]
+                connections.</p></div><div class="refsect1"><a name="idm214196067280"></a><h2 id="Options">Options<a class="headerlink" title="Permalink to this headline" href="#Options">¶</a></h2><p>The following options are understood:</p><div class="variablelist"><dl class="variablelist"><dt id="-h"><span class="term"><code class="option">-h</code>, </span><span class="term"><code class="option">--help</code></span><a class="headerlink" title="Permalink to this term" href="#-h">¶</a></dt><dd><p><a name="help-text"></a>Print a short help text and exit.
+    </p></dd><dt id="--version"><span class="term"><code class="option">--version</code></span><a class="headerlink" title="Permalink to this term" href="#--version">¶</a></dt><dd><p><a name="version-text"></a>Print a short version string and exit.</p></dd></dl></div></div><div class="refsect1"><a name="idm214199963248"></a><h2 id="Exit status">Exit status<a class="headerlink" title="Permalink to this headline" href="#Exit%20status">¶</a></h2><p>On success, 0 is returned, a non-zero failure
+                code otherwise.</p></div><div class="refsect1"><a name="idm214199962064"></a><h2 id="Examples">Examples<a class="headerlink" title="Permalink to this headline" href="#Examples">¶</a></h2><div class="refsect2"><a name="idm214199961392"></a><h3 id="Simple Example">Simple Example<a class="headerlink" title="Permalink to this headline" href="#Simple%20Example">¶</a></h3><p>Use two services with a dependency
+                        and no namespace isolation.</p><div class="example"><a name="idm214199960336"></a><p class="title"><b>Example 1. proxy-to-nginx.socket</b></p><div class="example-contents"><pre class="programlisting">[Socket]
 ListenStream=80
 
 [Install]
-WantedBy=sockets.target</pre></div></div><br class="example-break"><div class="example"><a name="idm214195006432"></a><p class="title"><b>Example 2. proxy-to-nginx.service</b></p><div class="example-contents"><pre class="programlisting">[Unit]
+WantedBy=sockets.target</pre></div></div><br class="example-break"><div class="example"><a name="idm214199958768"></a><p class="title"><b>Example 2. proxy-to-nginx.service</b></p><div class="example-contents"><pre class="programlisting">[Unit]
 Requires=nginx.service
 After=nginx.service
 
 [Service]
 ExecStart=/usr/lib/systemd/systemd-socket-proxyd /tmp/nginx.sock
 PrivateTmp=yes
-PrivateNetwork=yes</pre></div></div><br class="example-break"><div class="example"><a name="idm214195004832"></a><p class="title"><b>Example 3. nginx.conf</b></p><div class="example-contents"><pre class="programlisting">
+PrivateNetwork=yes</pre></div></div><br class="example-break"><div class="example"><a name="idm214199957168"></a><p class="title"><b>Example 3. nginx.conf</b></p><div class="example-contents"><pre class="programlisting">
 [...]
 server {
     listen       unix:/tmp/nginx.sock;
     [...]
-</pre></div></div><br class="example-break"><div class="example"><a name="idm214195003088"></a><p class="title"><b>Example 4. Enabling the proxy</b></p><div class="example-contents"><pre class="programlisting"># systemctl enable proxy-to-nginx.socket
+</pre></div></div><br class="example-break"><div class="example"><a name="idm214199955424"></a><p class="title"><b>Example 4. Enabling the proxy</b></p><div class="example-contents"><pre class="programlisting"># systemctl enable proxy-to-nginx.socket
 # systemctl start proxy-to-nginx.socket
-$ curl http://localhost:80/</pre></div></div><br class="example-break"></div><div class="refsect2"><a name="idm214195001440"></a><h3 id="Namespace Example">Namespace Example<a class="headerlink" title="Permalink to this headline" href="#Namespace%20Example">¶</a></h3><p>Similar as above, but runs the socket
+$ curl http://localhost:80/</pre></div></div><br class="example-break"></div><div class="refsect2"><a name="idm214199953776"></a><h3 id="Namespace Example">Namespace Example<a class="headerlink" title="Permalink to this headline" href="#Namespace%20Example">¶</a></h3><p>Similar as above, but runs the socket
                         proxy and the main service in the same private
                         namespace, assuming that
                         <code class="filename">nginx.service</code> has
                         <code class="varname">PrivateTmp=</code> and
                         <code class="varname">PrivateNetwork=</code> set,
-                        too.</p><div class="example"><a name="idm214194998528"></a><p class="title"><b>Example 5. proxy-to-nginx.socket</b></p><div class="example-contents"><pre class="programlisting">[Socket]
+                        too.</p><div class="example"><a name="idm214199950864"></a><p class="title"><b>Example 5. proxy-to-nginx.socket</b></p><div class="example-contents"><pre class="programlisting">[Socket]
 ListenStream=80
 
 [Install]
-WantedBy=sockets.target</pre></div></div><br class="example-break"><div class="example"><a name="idm214194996960"></a><p class="title"><b>Example 6. proxy-to-nginx.service</b></p><div class="example-contents"><pre class="programlisting">[Unit]
+WantedBy=sockets.target</pre></div></div><br class="example-break"><div class="example"><a name="idm214199949296"></a><p class="title"><b>Example 6. proxy-to-nginx.service</b></p><div class="example-contents"><pre class="programlisting">[Unit]
 Requires=nginx.service
 After=nginx.service
 JoinsNamespaceOf=nginx.service
@@ -77,13 +77,13 @@ JoinsNamespaceOf=nginx.service
 [Service]
 ExecStart=/usr/lib/systemd/systemd-socket-proxyd 127.0.0.1:8080
 PrivateTmp=yes
-PrivateNetwork=yes</pre></div></div><br class="example-break"><div class="example"><a name="idm214194995328"></a><p class="title"><b>Example 7. nginx.conf</b></p><div class="example-contents"><pre class="programlisting">[...]
+PrivateNetwork=yes</pre></div></div><br class="example-break"><div class="example"><a name="idm214199947664"></a><p class="title"><b>Example 7. nginx.conf</b></p><div class="example-contents"><pre class="programlisting">[...]
 server {
     listen       8080;
     listen       unix:/tmp/nginx.sock;
-    [...]</pre></div></div><br class="example-break"><div class="example"><a name="idm214194986256"></a><p class="title"><b>Example 8. Enabling the proxy</b></p><div class="example-contents"><pre class="programlisting"># systemctl enable proxy-to-nginx.socket
+    [...]</pre></div></div><br class="example-break"><div class="example"><a name="idm214199938672"></a><p class="title"><b>Example 8. Enabling the proxy</b></p><div class="example-contents"><pre class="programlisting"># systemctl enable proxy-to-nginx.socket
 # systemctl start proxy-to-nginx.socket
-$ curl http://localhost:80/</pre></div></div><br class="example-break"></div></div><div class="refsect1"><a name="idm214194984448"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+$ curl http://localhost:80/</pre></div></div><br class="example-break"></div></div><div class="refsect1"><a name="idm214199936864"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
                         <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
                         <a href="systemd.socket.html"><span class="citerefentry"><span class="refentrytitle">systemd.socket</span>(5)</span></a>,
                         <a href="systemd.service.html"><span class="citerefentry"><span class="refentrytitle">systemd.service</span>(5)</span></a>,
index f6b8f6eeeac1b458447f4822988b3948eca47bfa..493cfef738f84f3001f1c5df139c63d340696408 100644 (file)
@@ -1,5 +1,5 @@
 '\" t
-.TH "SYSTEMD\-SUSPEND\&.SERVICE" "8" "" "systemd 214" "systemd-suspend.service"
+.TH "SYSTEMD\-SUSPEND\&.SERVICE" "8" "" "systemd 215" "systemd-suspend.service"
 .\" -----------------------------------------------------------------
 .\" * Define some portability stuff
 .\" -----------------------------------------------------------------
index 027b233c042675bb23c675ca2fd407ecc08e95d8..854aa8358db1a2e9d7b3422eff57678fa1e24f0d 100644 (file)
@@ -19,7 +19,7 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="systemd-suspend.service"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>systemd-suspend.service, systemd-hibernate.service, systemd-hybrid-sleep.service, systemd-sleep — System sleep state logic</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><p><code class="filename">systemd-suspend.service</code></p><p><code class="filename">systemd-hibernate.service</code></p><p><code class="filename">systemd-hybrid-sleep.service</code></p><p><code class="filename">/usr/lib/systemd/systemd-sleep</code></p></div><div class="refsect1"><a name="idm214190297200"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="filename">systemd-suspend.service</code> is
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="systemd-suspend.service"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>systemd-suspend.service, systemd-hibernate.service, systemd-hybrid-sleep.service, systemd-sleep — System sleep state logic</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><p><code class="filename">systemd-suspend.service</code></p><p><code class="filename">systemd-hibernate.service</code></p><p><code class="filename">systemd-hybrid-sleep.service</code></p><p><code class="filename">/usr/lib/systemd/systemd-sleep</code></p></div><div class="refsect1"><a name="idm214187249136"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="filename">systemd-suspend.service</code> is
                 a system service that is pulled in by
                 <code class="filename">suspend.target</code> and is responsible
                 for the actual system suspend. Similarly,
                 where can be configured in the "<code class="literal">[Sleep]</code>"
                 section of <code class="filename">/etc/systemd/sleep.conf</code>.
                 See <a href="systemd-sleep.conf.html"><span class="citerefentry"><span class="refentrytitle">systemd-sleep.conf</span>(5)</span></a>.
-                </p></div><div class="refsect1"><a name="idm214194175168"></a><h2 id="Options">Options<a class="headerlink" title="Permalink to this headline" href="#Options">¶</a></h2><p><span class="command"><strong>systemd-sleep</strong></span> understands the
+                </p></div><div class="refsect1"><a name="idm214191127792"></a><h2 id="Options">Options<a class="headerlink" title="Permalink to this headline" href="#Options">¶</a></h2><p><span class="command"><strong>systemd-sleep</strong></span> understands the
                 following commands:</p><div class="variablelist"><dl class="variablelist"><dt id="-h"><span class="term"><code class="option">-h</code>, </span><span class="term"><code class="option">--help</code></span><a class="headerlink" title="Permalink to this term" href="#-h">¶</a></dt><dd><p><a name="help-text"></a>Print a short help text and exit.
     </p></dd><dt id="--version"><span class="term"><code class="option">--version</code></span><a class="headerlink" title="Permalink to this term" href="#--version">¶</a></dt><dd><p><a name="version-text"></a>Print a short version string and exit.</p></dd><dt id="suspend"><span class="term"><code class="option">suspend</code>, </span><span class="term"><code class="option">hibernate</code>, </span><span class="term"><code class="option">hybrid-sleep</code></span><a class="headerlink" title="Permalink to this term" href="#suspend">¶</a></dt><dd><p>Suspend, hibernate, or
-                                put the system to hybrid sleep.</p></dd></dl></div></div><div class="refsect1"><a name="idm214194168640"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+                                put the system to hybrid sleep.</p></dd></dl></div></div><div class="refsect1"><a name="idm214191121168"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
                         <a href="systemd-sleep.conf.html"><span class="citerefentry"><span class="refentrytitle">systemd-sleep.conf</span>(5)</span></a>,
                         <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
                         <a href="systemctl.html"><span class="citerefentry"><span class="refentrytitle">systemctl</span>(1)</span></a>,
index a2af80d4d20189db5ba49374dc66a6731e5d9e0f..78a481bec66c617920801beeebc83ae0bae9cafa 100644 (file)
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="systemd-sysctl.service"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>systemd-sysctl.service, systemd-sysctl — Configure kernel parameters at boot</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><p><code class="filename">systemd-sysctl.service</code></p><p><code class="filename">/usr/lib/systemd/systemd-sysctl</code></p></div><div class="refsect1"><a name="idm214180711104"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="filename">systemd-sysctl.service</code> is
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="systemd-sysctl.service"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>systemd-sysctl.service, systemd-sysctl — Configure kernel parameters at boot</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><p><code class="filename">systemd-sysctl.service</code></p><p><code class="filename">/usr/lib/systemd/systemd-sysctl</code></p></div><div class="refsect1"><a name="idm214190241872"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="filename">systemd-sysctl.service</code> is
                 an early-boot service that configures
                 <a href="sysctl.html"><span class="citerefentry"><span class="refentrytitle">sysctl</span>(8)</span></a>
                 kernel parameters.</p><p>See
                 <a href="sysctl.d.html"><span class="citerefentry"><span class="refentrytitle">sysctl.d</span>(5)</span></a>
                 for information about the configuration of this
-                service.</p></div><div class="refsect1"><a name="idm214180707184"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+                service.</p></div><div class="refsect1"><a name="idm214190237904"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
                         <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
                         <a href="sysctl.d.html"><span class="citerefentry"><span class="refentrytitle">sysctl.d</span>(5)</span></a>,
                         <a href="sysctl.html"><span class="citerefentry"><span class="refentrytitle">sysctl</span>(8)</span></a>,
index 4fd27ccf12297eabeb6f00efeaabf971731a3f53..71760cef0b3671375996fe18fd308ee067b95d76 100644 (file)
@@ -1,5 +1,5 @@
 '\" t
-.TH "SYSTEMD\-SYSCTL\&.SERVICE" "8" "" "systemd 214" "systemd-sysctl.service"
+.TH "SYSTEMD\-SYSCTL\&.SERVICE" "8" "" "systemd 215" "systemd-sysctl.service"
 .\" -----------------------------------------------------------------
 .\" * Define some portability stuff
 .\" -----------------------------------------------------------------
index a2af80d4d20189db5ba49374dc66a6731e5d9e0f..78a481bec66c617920801beeebc83ae0bae9cafa 100644 (file)
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="systemd-sysctl.service"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>systemd-sysctl.service, systemd-sysctl — Configure kernel parameters at boot</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><p><code class="filename">systemd-sysctl.service</code></p><p><code class="filename">/usr/lib/systemd/systemd-sysctl</code></p></div><div class="refsect1"><a name="idm214180711104"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="filename">systemd-sysctl.service</code> is
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="systemd-sysctl.service"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>systemd-sysctl.service, systemd-sysctl — Configure kernel parameters at boot</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><p><code class="filename">systemd-sysctl.service</code></p><p><code class="filename">/usr/lib/systemd/systemd-sysctl</code></p></div><div class="refsect1"><a name="idm214190241872"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="filename">systemd-sysctl.service</code> is
                 an early-boot service that configures
                 <a href="sysctl.html"><span class="citerefentry"><span class="refentrytitle">sysctl</span>(8)</span></a>
                 kernel parameters.</p><p>See
                 <a href="sysctl.d.html"><span class="citerefentry"><span class="refentrytitle">sysctl.d</span>(5)</span></a>
                 for information about the configuration of this
-                service.</p></div><div class="refsect1"><a name="idm214180707184"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+                service.</p></div><div class="refsect1"><a name="idm214190237904"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
                         <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
                         <a href="sysctl.d.html"><span class="citerefentry"><span class="refentrytitle">sysctl.d</span>(5)</span></a>,
                         <a href="sysctl.html"><span class="citerefentry"><span class="refentrytitle">sysctl</span>(8)</span></a>,
index b592a0b14bf85a010ea406b85cddfbc7e721d2f6..c0d6f9d3cfa26bb1c7bc4b92a776dc0ff4adedce 100644 (file)
@@ -1,5 +1,5 @@
 '\" t
-.TH "SYSTEMD\-SYSTEM\-UPDATE\-GENERATOR" "8" "" "systemd 214" "systemd-system-update-generator"
+.TH "SYSTEMD\-SYSTEM\-UPDATE\-GENERATOR" "8" "" "systemd 215" "systemd-system-update-generator"
 .\" -----------------------------------------------------------------
 .\" * Define some portability stuff
 .\" -----------------------------------------------------------------
index 88250e3c1a627ed856aa15f1a654e4379115f9ed..ff92e770870074639ba49ea9763600ebab9d6ecf 100644 (file)
@@ -19,7 +19,7 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="systemd-system-update-generator"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>systemd-system-update-generator — Generator for redirecting boot to offline update mode</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><p><code class="filename">/usr/lib/systemd/system-generators/systemd-system-update-generator</code></p></div><div class="refsect1"><a name="idm214185127696"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="filename">systemd-system-update-generator</code>
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="systemd-system-update-generator"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>systemd-system-update-generator — Generator for redirecting boot to offline update mode</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><p><code class="filename">/usr/lib/systemd/system-generators/systemd-system-update-generator</code></p></div><div class="refsect1"><a name="idm214177526608"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="filename">systemd-system-update-generator</code>
                 is a generator that automatically redirects the boot
                 process to <code class="filename">system-update.target</code>
                 if <code class="filename">/system-update</code> exists. This is
@@ -28,7 +28,7 @@
                 Updates Specification</a>.
                 </p><p><code class="filename">systemd-system-update-generator</code>
                 implements the <a class="ulink" href="http://www.freedesktop.org/wiki/Software/systemd/Generators" target="_top">generator
-                specification</a>.</p></div><div class="refsect1"><a name="idm214185122080"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+                specification</a>.</p></div><div class="refsect1"><a name="idm214177520992"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
                         <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
                         <a href="systemd.special.html"><span class="citerefentry"><span class="refentrytitle">systemd.special</span>(7)</span></a>
                 </p></div></div></body></html>
index 6b7f5642a24549d8428954a575ac6d98de560909..737c604d8f73dc8736de32edd486fca900c26204 100644 (file)
@@ -1,5 +1,5 @@
 '\" t
-.TH "SYSTEMD\-SYSTEM\&.CONF" "5" "" "systemd 214" "systemd-system.conf"
+.TH "SYSTEMD\-SYSTEM\&.CONF" "5" "" "systemd 215" "systemd-system.conf"
 .\" -----------------------------------------------------------------
 .\" * Define some portability stuff
 .\" -----------------------------------------------------------------
index 0631f18dfd75318412394ce075591e695d580886..14058c0a68877061ca605786ed2af7710c7b2b7c 100644 (file)
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="systemd-system.conf"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>systemd-system.conf, systemd-user.conf — System and session service manager configuration file</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><p><code class="filename">/etc/systemd/system.conf</code></p><p><code class="filename">/etc/systemd/user.conf</code></p></div><div class="refsect1"><a name="idm214192577744"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p>When run as system instance systemd reads the
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="systemd-system.conf"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>systemd-system.conf, systemd-user.conf — System and session service manager configuration file</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><p><code class="filename">/etc/systemd/system.conf</code></p><p><code class="filename">/etc/systemd/user.conf</code></p></div><div class="refsect1"><a name="idm214192121936"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p>When run as system instance systemd reads the
                 configuration file <code class="filename">system.conf</code>,
                 otherwise <code class="filename">user.conf</code>. These
                 configuration files contain a few settings controlling
-                basic manager operations.</p></div><div class="refsect1"><a name="idm214192574992"></a><h2 id="Options">Options<a class="headerlink" title="Permalink to this headline" href="#Options">¶</a></h2><p>All options are configured in the
+                basic manager operations.</p></div><div class="refsect1"><a name="idm214192119184"></a><h2 id="Options">Options<a class="headerlink" title="Permalink to this headline" href="#Options">¶</a></h2><p>All options are configured in the
                 "<code class="literal">[Manager]</code>" section:</p><div class="variablelist"><dl class="variablelist"><dt id="LogLevel="><span class="term"><code class="varname">LogLevel=</code>, </span><span class="term"><code class="varname">LogTarget=</code>, </span><span class="term"><code class="varname">LogColor=</code>, </span><span class="term"><code class="varname">LogLocation=</code>, </span><span class="term"><code class="varname">DumpCore=yes</code>, </span><span class="term"><code class="varname">CrashShell=no</code>, </span><span class="term"><code class="varname">ShowStatus=yes</code>, </span><span class="term"><code class="varname">CrashChVT=1</code>, </span><span class="term"><code class="varname">DefaultStandardOutput=journal</code>, </span><span class="term"><code class="varname">DefaultStandardError=inherit</code></span><a class="headerlink" title="Permalink to this term" href="#LogLevel=">¶</a></dt><dd><p>Configures various
                                 parameters of basic manager
                                 operation. These options may be
                                 directives. Note that these resource
                                 limits are only defaults for units,
                                 they are not applied to PID 1
-                                itself.</p></dd></dl></div></div><div class="refsect1"><a name="idm214191475072"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+                                itself.</p></dd></dl></div></div><div class="refsect1"><a name="idm214191021312"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
                           <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
                           <a href="systemd.directives.html"><span class="citerefentry"><span class="refentrytitle">systemd.directives</span>(7)</span></a>,
                           <a href="systemd.exec.html"><span class="citerefentry"><span class="refentrytitle">systemd.exec</span>(5)</span></a>,
diff --git a/man/systemd-sysusers.8 b/man/systemd-sysusers.8
new file mode 100644 (file)
index 0000000..31aa2d5
--- /dev/null
@@ -0,0 +1,64 @@
+'\" t
+.TH "SYSTEMD\-SYSUSERS" "8" "" "systemd 215" "systemd-sysusers"
+.\" -----------------------------------------------------------------
+.\" * Define some portability stuff
+.\" -----------------------------------------------------------------
+.\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+.\" http://bugs.debian.org/507673
+.\" http://lists.gnu.org/archive/html/groff/2009-02/msg00013.html
+.\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+.ie \n(.g .ds Aq \(aq
+.el       .ds Aq '
+.\" -----------------------------------------------------------------
+.\" * set default formatting
+.\" -----------------------------------------------------------------
+.\" disable hyphenation
+.nh
+.\" disable justification (adjust text to left margin only)
+.ad l
+.\" -----------------------------------------------------------------
+.\" * MAIN CONTENT STARTS HERE *
+.\" -----------------------------------------------------------------
+.SH "NAME"
+systemd-sysusers, systemd-sysusers.service \- Allocate system users and groups
+.SH "SYNOPSIS"
+.HP \w'\fBsystemd\-sysusers\fR\ 'u
+\fBsystemd\-sysusers\fR [OPTIONS...] [\fICONFIGFILE\fR...]
+.PP
+systemd\-sysusers\&.service
+.SH "DESCRIPTION"
+.PP
+\fBsystemd\-sysusers\fR
+creates system users and groups, based on the file format and location specified in
+\fBsysusers.d\fR(5)\&.
+.PP
+If invoked with no arguments, it applies all directives from all files found\&. If one or more filenames are passed on the command line, only the directives in these files are applied\&. If only the basename of a file is specified, all directories as specified in
+\fBsysusers.d\fR(5)
+are searched for a matching file\&.
+.SH "OPTIONS"
+.PP
+The following options are understood:
+.PP
+\fB\-\-root=\fR\fB\fIroot\fR\fR
+.RS 4
+Takes a directory path as an argument\&. All paths will be prefixed with the given alternate
+\fIroot\fR
+path, including config search paths\&.
+.RE
+.PP
+\fB\-h\fR, \fB\-\-help\fR
+.RS 4
+Print a short help text and exit\&.
+.RE
+.PP
+\fB\-\-version\fR
+.RS 4
+Print a short version string and exit\&.
+.RE
+.SH "EXIT STATUS"
+.PP
+On success, 0 is returned, a non\-zero failure code otherwise\&.
+.SH "SEE ALSO"
+.PP
+\fBsystemd\fR(1),
+\fBsysusers.d\fR(5)
diff --git a/man/systemd-sysusers.html b/man/systemd-sysusers.html
new file mode 100644 (file)
index 0000000..754d849
--- /dev/null
@@ -0,0 +1,42 @@
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>systemd-sysusers</title><meta name="generator" content="DocBook XSL Stylesheets V1.78.1"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><style>
+    a.headerlink {
+      color: #c60f0f;
+      font-size: 0.8em;
+      padding: 0 4px 0 4px;
+      text-decoration: none;
+      visibility: hidden;
+    }
+
+    a.headerlink:hover {
+      background-color: #c60f0f;
+      color: white;
+    }
+
+    h1:hover > a.headerlink, h2:hover > a.headerlink, h3:hover > a.headerlink, dt:hover > a.headerlink {
+      visibility: visible;
+    }
+  </style><a href="index.html">Index </a>·
+  <a href="systemd.directives.html">Directives </a>·
+  <a href="../python-systemd/index.html">Python </a>·
+  <a href="../libudev/index.html">libudev </a>·
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="systemd-sysusers"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>systemd-sysusers, systemd-sysusers.service — Allocate system users and groups</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="cmdsynopsis"><p><code class="command">systemd-sysusers</code>  [OPTIONS...] [<em class="replaceable"><code>CONFIGFILE</code></em>...]</p></div><p><code class="filename">systemd-sysusers.service</code></p></div><div class="refsect1"><a name="idm214168665600"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><span class="command"><strong>systemd-sysusers</strong></span> creates
+                system users and groups, based on the file format and
+                location specified in
+                <a href="sysusers.d.html"><span class="citerefentry"><span class="refentrytitle">sysusers.d</span>(5)</span></a>.
+                </p><p>If invoked with no arguments, it applies all
+                directives from all files found. If one or more
+                filenames are passed on the command line, only the
+                directives in these files are applied. If only the
+                basename of a file is specified, all directories as
+                specified in
+                <a href="sysusers.d.html"><span class="citerefentry"><span class="refentrytitle">sysusers.d</span>(5)</span></a>
+                are searched for a matching file.</p></div><div class="refsect1"><a name="idm214168661280"></a><h2 id="Options">Options<a class="headerlink" title="Permalink to this headline" href="#Options">¶</a></h2><p>The following options are understood:</p><div class="variablelist"><dl class="variablelist"><dt id="--root=root"><span class="term"><code class="option">--root=<em class="replaceable"><code>root</code></em></code></span><a class="headerlink" title="Permalink to this term" href="#--root=root">¶</a></dt><dd><p>Takes a directory path
+                                as an argument. All paths will be
+                                prefixed with the given alternate <em class="replaceable"><code>root</code></em>
+                                path, including config search paths.
+                                </p></dd><dt id="-h"><span class="term"><code class="option">-h</code>, </span><span class="term"><code class="option">--help</code></span><a class="headerlink" title="Permalink to this term" href="#-h">¶</a></dt><dd><p><a name="help-text"></a>Print a short help text and exit.
+    </p></dd><dt id="--version"><span class="term"><code class="option">--version</code></span><a class="headerlink" title="Permalink to this term" href="#--version">¶</a></dt><dd><p><a name="version-text"></a>Print a short version string and exit.</p></dd></dl></div></div><div class="refsect1"><a name="idm214168655488"></a><h2 id="Exit status">Exit status<a class="headerlink" title="Permalink to this headline" href="#Exit%20status">¶</a></h2><p>On success, 0 is returned, a non-zero failure
+                code otherwise.</p></div><div class="refsect1"><a name="idm214172553520"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+                        <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
+                        <a href="sysusers.d.html"><span class="citerefentry"><span class="refentrytitle">sysusers.d</span>(5)</span></a>
+                </p></div></div></body></html>
diff --git a/man/systemd-sysusers.service.8 b/man/systemd-sysusers.service.8
new file mode 100644 (file)
index 0000000..f521b3e
--- /dev/null
@@ -0,0 +1 @@
+.so man8/systemd-sysusers.8
diff --git a/man/systemd-sysusers.service.html b/man/systemd-sysusers.service.html
new file mode 100644 (file)
index 0000000..754d849
--- /dev/null
@@ -0,0 +1,42 @@
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>systemd-sysusers</title><meta name="generator" content="DocBook XSL Stylesheets V1.78.1"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><style>
+    a.headerlink {
+      color: #c60f0f;
+      font-size: 0.8em;
+      padding: 0 4px 0 4px;
+      text-decoration: none;
+      visibility: hidden;
+    }
+
+    a.headerlink:hover {
+      background-color: #c60f0f;
+      color: white;
+    }
+
+    h1:hover > a.headerlink, h2:hover > a.headerlink, h3:hover > a.headerlink, dt:hover > a.headerlink {
+      visibility: visible;
+    }
+  </style><a href="index.html">Index </a>·
+  <a href="systemd.directives.html">Directives </a>·
+  <a href="../python-systemd/index.html">Python </a>·
+  <a href="../libudev/index.html">libudev </a>·
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="systemd-sysusers"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>systemd-sysusers, systemd-sysusers.service — Allocate system users and groups</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="cmdsynopsis"><p><code class="command">systemd-sysusers</code>  [OPTIONS...] [<em class="replaceable"><code>CONFIGFILE</code></em>...]</p></div><p><code class="filename">systemd-sysusers.service</code></p></div><div class="refsect1"><a name="idm214168665600"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><span class="command"><strong>systemd-sysusers</strong></span> creates
+                system users and groups, based on the file format and
+                location specified in
+                <a href="sysusers.d.html"><span class="citerefentry"><span class="refentrytitle">sysusers.d</span>(5)</span></a>.
+                </p><p>If invoked with no arguments, it applies all
+                directives from all files found. If one or more
+                filenames are passed on the command line, only the
+                directives in these files are applied. If only the
+                basename of a file is specified, all directories as
+                specified in
+                <a href="sysusers.d.html"><span class="citerefentry"><span class="refentrytitle">sysusers.d</span>(5)</span></a>
+                are searched for a matching file.</p></div><div class="refsect1"><a name="idm214168661280"></a><h2 id="Options">Options<a class="headerlink" title="Permalink to this headline" href="#Options">¶</a></h2><p>The following options are understood:</p><div class="variablelist"><dl class="variablelist"><dt id="--root=root"><span class="term"><code class="option">--root=<em class="replaceable"><code>root</code></em></code></span><a class="headerlink" title="Permalink to this term" href="#--root=root">¶</a></dt><dd><p>Takes a directory path
+                                as an argument. All paths will be
+                                prefixed with the given alternate <em class="replaceable"><code>root</code></em>
+                                path, including config search paths.
+                                </p></dd><dt id="-h"><span class="term"><code class="option">-h</code>, </span><span class="term"><code class="option">--help</code></span><a class="headerlink" title="Permalink to this term" href="#-h">¶</a></dt><dd><p><a name="help-text"></a>Print a short help text and exit.
+    </p></dd><dt id="--version"><span class="term"><code class="option">--version</code></span><a class="headerlink" title="Permalink to this term" href="#--version">¶</a></dt><dd><p><a name="version-text"></a>Print a short version string and exit.</p></dd></dl></div></div><div class="refsect1"><a name="idm214168655488"></a><h2 id="Exit status">Exit status<a class="headerlink" title="Permalink to this headline" href="#Exit%20status">¶</a></h2><p>On success, 0 is returned, a non-zero failure
+                code otherwise.</p></div><div class="refsect1"><a name="idm214172553520"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+                        <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
+                        <a href="sysusers.d.html"><span class="citerefentry"><span class="refentrytitle">sysusers.d</span>(5)</span></a>
+                </p></div></div></body></html>
diff --git a/man/systemd-sysusers.xml b/man/systemd-sysusers.xml
new file mode 100644 (file)
index 0000000..4de1973
--- /dev/null
@@ -0,0 +1,117 @@
+<?xml version='1.0'?> <!--*-nxml-*-->
+<!DOCTYPE refentry PUBLIC "-//OASIS//DTD DocBook XML V4.2//EN"
+        "http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd">
+
+<!--
+  This file is part of systemd.
+
+  Copyright 2014 Lennart Poettering
+
+  systemd is free software; you can redistribute it and/or modify it
+  under the terms of the GNU Lesser General Public License as published by
+  the Free Software Foundation; either version 2.1 of the License, or
+  (at your option) any later version.
+
+  systemd is distributed in the hope that it will be useful, but
+  WITHOUT ANY WARRANTY; without even the implied warranty of
+  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+  Lesser General Public License for more details.
+
+  You should have received a copy of the GNU Lesser General Public License
+  along with systemd; If not, see <http://www.gnu.org/licenses/>.
+-->
+
+<refentry id="systemd-sysusers"
+          xmlns:xi="http://www.w3.org/2001/XInclude">
+
+        <refentryinfo>
+                <title>systemd-sysusers</title>
+                <productname>systemd</productname>
+
+                <authorgroup>
+                        <author>
+                                <contrib>Developer</contrib>
+                                <firstname>Lennart</firstname>
+                                <surname>Poettering</surname>
+                                <email>lennart@poettering.net</email>
+                        </author>
+                </authorgroup>
+        </refentryinfo>
+
+        <refmeta>
+                <refentrytitle>systemd-sysusers</refentrytitle>
+                <manvolnum>8</manvolnum>
+        </refmeta>
+
+        <refnamediv>
+                <refname>systemd-sysusers</refname>
+                <refname>systemd-sysusers.service</refname>
+                <refpurpose>Allocate system users and groups</refpurpose>
+        </refnamediv>
+
+        <refsynopsisdiv>
+                <cmdsynopsis>
+                        <command>systemd-sysusers</command>
+                        <arg choice="opt" rep="repeat">OPTIONS</arg>
+                        <arg choice="opt" rep="repeat"><replaceable>CONFIGFILE</replaceable></arg>
+                </cmdsynopsis>
+
+                <para><filename>systemd-sysusers.service</filename></para>
+        </refsynopsisdiv>
+
+        <refsect1>
+                <title>Description</title>
+
+                <para><command>systemd-sysusers</command> creates
+                system users and groups, based on the file format and
+                location specified in
+                <citerefentry><refentrytitle>sysusers.d</refentrytitle><manvolnum>5</manvolnum></citerefentry>.
+                </para>
+
+                <para>If invoked with no arguments, it applies all
+                directives from all files found. If one or more
+                filenames are passed on the command line, only the
+                directives in these files are applied. If only the
+                basename of a file is specified, all directories as
+                specified in
+                <citerefentry><refentrytitle>sysusers.d</refentrytitle><manvolnum>5</manvolnum></citerefentry>
+                are searched for a matching file.</para>
+        </refsect1>
+
+        <refsect1>
+                <title>Options</title>
+
+                <para>The following options are understood:</para>
+
+                <variablelist>
+                        <varlistentry>
+                                <term><option>--root=<replaceable>root</replaceable></option></term>
+                                <listitem><para>Takes a directory path
+                                as an argument. All paths will be
+                                prefixed with the given alternate <replaceable>root</replaceable>
+                                path, including config search paths.
+                                </para></listitem>
+                        </varlistentry>
+
+                        <xi:include href="standard-options.xml" xpointer="help" />
+                        <xi:include href="standard-options.xml" xpointer="version" />
+                </variablelist>
+
+        </refsect1>
+
+        <refsect1>
+                <title>Exit status</title>
+
+                <para>On success, 0 is returned, a non-zero failure
+                code otherwise.</para>
+        </refsect1>
+
+        <refsect1>
+                <title>See Also</title>
+                <para>
+                        <citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
+                        <citerefentry><refentrytitle>sysusers.d</refentrytitle><manvolnum>5</manvolnum></citerefentry>
+                </para>
+        </refsect1>
+
+</refentry>
index cead29dff5b12b4a4bddac0baf7479f25dfda9ed..01a0c0706f3155c48c8b5cd391761c9c59403e5b 100644 (file)
@@ -19,7 +19,7 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="systemd-timedated.service"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>systemd-timedated.service, systemd-timedated — Time and date bus mechanism</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><p><code class="filename">systemd-timedated.service</code></p><p><code class="filename">/usr/lib/systemd/systemd-timedated</code></p></div><div class="refsect1"><a name="idm214189670480"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="filename">systemd-timedated</code> is a
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="systemd-timedated.service"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>systemd-timedated.service, systemd-timedated — Time and date bus mechanism</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><p><code class="filename">systemd-timedated.service</code></p><p><code class="filename">/usr/lib/systemd/systemd-timedated</code></p></div><div class="refsect1"><a name="idm214182363888"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="filename">systemd-timedated</code> is a
                 system service that may be used as a mechanism to change
                 the system clock and timezone, as well as to
                 enable/disable NTP time
@@ -30,7 +30,7 @@
                 is a command-line client to this service.</p><p>See the <a class="ulink" href="http://www.freedesktop.org/wiki/Software/systemd/timedated" target="_top">
                 developer documentation</a> for information about
                 the APIs <code class="filename">systemd-timedated</code>
-                provides.</p></div><div class="refsect1"><a name="idm214190878608"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+                provides.</p></div><div class="refsect1"><a name="idm214182358096"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
                         <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
                         <a href="timedatectl.html"><span class="citerefentry"><span class="refentrytitle">timedatectl</span>(1)</span></a>,
                         <a href="localtime.html"><span class="citerefentry"><span class="refentrytitle">localtime</span>(5)</span></a>,
index 75f1e550360b6702d337b8fac9d8bef971cc2316..c4c70919e77df9fb4afb6c3aeb815243f6cb3942 100644 (file)
@@ -1,5 +1,5 @@
 '\" t
-.TH "SYSTEMD\-TIMEDATED\&.SERVICE" "8" "" "systemd 214" "systemd-timedated.service"
+.TH "SYSTEMD\-TIMEDATED\&.SERVICE" "8" "" "systemd 215" "systemd-timedated.service"
 .\" -----------------------------------------------------------------
 .\" * Define some portability stuff
 .\" -----------------------------------------------------------------
index cead29dff5b12b4a4bddac0baf7479f25dfda9ed..01a0c0706f3155c48c8b5cd391761c9c59403e5b 100644 (file)
@@ -19,7 +19,7 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="systemd-timedated.service"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>systemd-timedated.service, systemd-timedated — Time and date bus mechanism</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><p><code class="filename">systemd-timedated.service</code></p><p><code class="filename">/usr/lib/systemd/systemd-timedated</code></p></div><div class="refsect1"><a name="idm214189670480"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="filename">systemd-timedated</code> is a
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="systemd-timedated.service"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>systemd-timedated.service, systemd-timedated — Time and date bus mechanism</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><p><code class="filename">systemd-timedated.service</code></p><p><code class="filename">/usr/lib/systemd/systemd-timedated</code></p></div><div class="refsect1"><a name="idm214182363888"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="filename">systemd-timedated</code> is a
                 system service that may be used as a mechanism to change
                 the system clock and timezone, as well as to
                 enable/disable NTP time
@@ -30,7 +30,7 @@
                 is a command-line client to this service.</p><p>See the <a class="ulink" href="http://www.freedesktop.org/wiki/Software/systemd/timedated" target="_top">
                 developer documentation</a> for information about
                 the APIs <code class="filename">systemd-timedated</code>
-                provides.</p></div><div class="refsect1"><a name="idm214190878608"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+                provides.</p></div><div class="refsect1"><a name="idm214182358096"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
                         <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
                         <a href="timedatectl.html"><span class="citerefentry"><span class="refentrytitle">timedatectl</span>(1)</span></a>,
                         <a href="localtime.html"><span class="citerefentry"><span class="refentrytitle">localtime</span>(5)</span></a>,
index 92a2d8d508d2a166c0972e69f8ff8f1cc17d671a..2d634889a46e1c53e507e548738af0cab95c6819 100644 (file)
@@ -19,9 +19,9 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="systemd-timesyncd.service"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>systemd-timesyncd.service, systemd-timesyncd — Network Time Synchronization</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><p><code class="filename">systemd-timesyncd.service</code></p><p><code class="filename">/usr/lib/systemd/systemd-timesyncd</code></p></div><div class="refsect1"><a name="idm214180458576"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="filename">systemd-timesyncd</code> is a
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="systemd-timesyncd.service"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>systemd-timesyncd.service, systemd-timesyncd — Network Time Synchronization</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><p><code class="filename">systemd-timesyncd.service</code></p><p><code class="filename">/usr/lib/systemd/systemd-timesyncd</code></p></div><div class="refsect1"><a name="idm214193943296"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="filename">systemd-timesyncd</code> is a
                 system service that may be used to synchronize the local
-                system clock with a Network Time Protocol Server.</p></div><div class="refsect1"><a name="idm214181391200"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+                system clock with a Network Time Protocol Server.</p></div><div class="refsect1"><a name="idm214193941392"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
                         <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
                         <a href="timedatectl.html"><span class="citerefentry"><span class="refentrytitle">timedatectl</span>(1)</span></a>,
                         <a href="localtime.html"><span class="citerefentry"><span class="refentrytitle">localtime</span>(5)</span></a>,
index 46b36e168f8961f243a0c255c8c7971397a8d97d..df33af2cf79d6d9ac78eabf1592e03cc3e792c46 100644 (file)
@@ -1,5 +1,5 @@
 '\" t
-.TH "SYSTEMD\-TIMESYNCD\&.SERVICE" "8" "" "systemd 214" "systemd-timesyncd.service"
+.TH "SYSTEMD\-TIMESYNCD\&.SERVICE" "8" "" "systemd 215" "systemd-timesyncd.service"
 .\" -----------------------------------------------------------------
 .\" * Define some portability stuff
 .\" -----------------------------------------------------------------
index 92a2d8d508d2a166c0972e69f8ff8f1cc17d671a..2d634889a46e1c53e507e548738af0cab95c6819 100644 (file)
@@ -19,9 +19,9 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="systemd-timesyncd.service"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>systemd-timesyncd.service, systemd-timesyncd — Network Time Synchronization</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><p><code class="filename">systemd-timesyncd.service</code></p><p><code class="filename">/usr/lib/systemd/systemd-timesyncd</code></p></div><div class="refsect1"><a name="idm214180458576"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="filename">systemd-timesyncd</code> is a
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="systemd-timesyncd.service"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>systemd-timesyncd.service, systemd-timesyncd — Network Time Synchronization</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><p><code class="filename">systemd-timesyncd.service</code></p><p><code class="filename">/usr/lib/systemd/systemd-timesyncd</code></p></div><div class="refsect1"><a name="idm214193943296"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="filename">systemd-timesyncd</code> is a
                 system service that may be used to synchronize the local
-                system clock with a Network Time Protocol Server.</p></div><div class="refsect1"><a name="idm214181391200"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+                system clock with a Network Time Protocol Server.</p></div><div class="refsect1"><a name="idm214193941392"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
                         <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
                         <a href="timedatectl.html"><span class="citerefentry"><span class="refentrytitle">timedatectl</span>(1)</span></a>,
                         <a href="localtime.html"><span class="citerefentry"><span class="refentrytitle">localtime</span>(5)</span></a>,
index 9e89edd02c7f02811dc7bb5dd6eeccb536ad9a34..545e33fbb9669806e2f786b1e40d568106fe4787 100644 (file)
@@ -19,8 +19,8 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="systemd-tmpfiles"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>systemd-tmpfiles, systemd-tmpfiles-setup.service, systemd-tmpfiles-setup-dev.service, systemd-tmpfiles-clean.service, systemd-tmpfiles-clean.timer — Creates, deletes and cleans up volatile
-                and temporary files and directories</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="cmdsynopsis"><p><code class="command">systemd-tmpfiles</code>  [OPTIONS...] [<em class="replaceable"><code>CONFIGFILE</code></em>...]</p></div><p><code class="filename">systemd-tmpfiles-setup.service</code></p><p><code class="filename">systemd-tmpfiles-setup-dev.service</code></p><p><code class="filename">systemd-tmpfiles-clean.service</code></p><p><code class="filename">systemd-tmpfiles-clean.timer</code></p></div><div class="refsect1"><a name="idm214167343504"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><span class="command"><strong>systemd-tmpfiles</strong></span> creates,
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="systemd-tmpfiles"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>systemd-tmpfiles, systemd-tmpfiles-setup.service, systemd-tmpfiles-setup-dev.service, systemd-tmpfiles-clean.service, systemd-tmpfiles-clean.timer — Creates, deletes and cleans up volatile
+                and temporary files and directories</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="cmdsynopsis"><p><code class="command">systemd-tmpfiles</code>  [OPTIONS...] [<em class="replaceable"><code>CONFIGFILE</code></em>...]</p></div><p><code class="filename">systemd-tmpfiles-setup.service</code></p><p><code class="filename">systemd-tmpfiles-setup-dev.service</code></p><p><code class="filename">systemd-tmpfiles-clean.service</code></p><p><code class="filename">systemd-tmpfiles-clean.timer</code></p></div><div class="refsect1"><a name="idm214182153968"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><span class="command"><strong>systemd-tmpfiles</strong></span> creates,
                 deletes, and cleans up volatile and temporary files and
                 directories, based on the configuration file format and
                 location specified in
@@ -32,7 +32,7 @@
                 the basename of a configuration file is specified,
                 all configuration directories as specified in
                 <a href="tmpfiles.d.html"><span class="citerefentry"><span class="refentrytitle">tmpfiles.d</span>(5)</span></a>
-                are searched for a matching file.</p></div><div class="refsect1"><a name="idm214167339104"></a><h2 id="Options">Options<a class="headerlink" title="Permalink to this headline" href="#Options">¶</a></h2><p>The following options are understood:</p><div class="variablelist"><dl class="variablelist"><dt id="--create"><span class="term"><code class="option">--create</code></span><a class="headerlink" title="Permalink to this term" href="#--create">¶</a></dt><dd><p>If this option is
+                are searched for a matching file.</p></div><div class="refsect1"><a name="idm214182149520"></a><h2 id="Options">Options<a class="headerlink" title="Permalink to this headline" href="#Options">¶</a></h2><p>The following options are understood:</p><div class="variablelist"><dl class="variablelist"><dt id="--create"><span class="term"><code class="option">--create</code></span><a class="headerlink" title="Permalink to this term" href="#--create">¶</a></dt><dd><p>If this option is
                                 passed, all files and directories
                                 marked with <code class="varname">f</code>,
                                 <code class="varname">F</code>,
@@ -77,8 +77,8 @@
                 example, during boot the following command line is
                 executed to ensure that all temporary and volatile
                 directories are removed and created according to the
-                configuration file:</p><pre class="programlisting">systemd-tmpfiles --remove --create</pre></div><div class="refsect1"><a name="idm214171204640"></a><h2 id="Exit status">Exit status<a class="headerlink" title="Permalink to this headline" href="#Exit%20status">¶</a></h2><p>On success, 0 is returned, a non-zero failure
-                code otherwise.</p></div><div class="refsect1"><a name="idm214171203456"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+                configuration file:</p><pre class="programlisting">systemd-tmpfiles --remove --create</pre></div><div class="refsect1"><a name="idm214186015536"></a><h2 id="Exit status">Exit status<a class="headerlink" title="Permalink to this headline" href="#Exit%20status">¶</a></h2><p>On success, 0 is returned, a non-zero failure
+                code otherwise.</p></div><div class="refsect1"><a name="idm214186014352"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
                         <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
                         <a href="tmpfiles.d.html"><span class="citerefentry"><span class="refentrytitle">tmpfiles.d</span>(5)</span></a>
                 </p></div></div></body></html>
index 9e89edd02c7f02811dc7bb5dd6eeccb536ad9a34..545e33fbb9669806e2f786b1e40d568106fe4787 100644 (file)
@@ -19,8 +19,8 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="systemd-tmpfiles"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>systemd-tmpfiles, systemd-tmpfiles-setup.service, systemd-tmpfiles-setup-dev.service, systemd-tmpfiles-clean.service, systemd-tmpfiles-clean.timer — Creates, deletes and cleans up volatile
-                and temporary files and directories</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="cmdsynopsis"><p><code class="command">systemd-tmpfiles</code>  [OPTIONS...] [<em class="replaceable"><code>CONFIGFILE</code></em>...]</p></div><p><code class="filename">systemd-tmpfiles-setup.service</code></p><p><code class="filename">systemd-tmpfiles-setup-dev.service</code></p><p><code class="filename">systemd-tmpfiles-clean.service</code></p><p><code class="filename">systemd-tmpfiles-clean.timer</code></p></div><div class="refsect1"><a name="idm214167343504"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><span class="command"><strong>systemd-tmpfiles</strong></span> creates,
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="systemd-tmpfiles"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>systemd-tmpfiles, systemd-tmpfiles-setup.service, systemd-tmpfiles-setup-dev.service, systemd-tmpfiles-clean.service, systemd-tmpfiles-clean.timer — Creates, deletes and cleans up volatile
+                and temporary files and directories</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="cmdsynopsis"><p><code class="command">systemd-tmpfiles</code>  [OPTIONS...] [<em class="replaceable"><code>CONFIGFILE</code></em>...]</p></div><p><code class="filename">systemd-tmpfiles-setup.service</code></p><p><code class="filename">systemd-tmpfiles-setup-dev.service</code></p><p><code class="filename">systemd-tmpfiles-clean.service</code></p><p><code class="filename">systemd-tmpfiles-clean.timer</code></p></div><div class="refsect1"><a name="idm214182153968"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><span class="command"><strong>systemd-tmpfiles</strong></span> creates,
                 deletes, and cleans up volatile and temporary files and
                 directories, based on the configuration file format and
                 location specified in
@@ -32,7 +32,7 @@
                 the basename of a configuration file is specified,
                 all configuration directories as specified in
                 <a href="tmpfiles.d.html"><span class="citerefentry"><span class="refentrytitle">tmpfiles.d</span>(5)</span></a>
-                are searched for a matching file.</p></div><div class="refsect1"><a name="idm214167339104"></a><h2 id="Options">Options<a class="headerlink" title="Permalink to this headline" href="#Options">¶</a></h2><p>The following options are understood:</p><div class="variablelist"><dl class="variablelist"><dt id="--create"><span class="term"><code class="option">--create</code></span><a class="headerlink" title="Permalink to this term" href="#--create">¶</a></dt><dd><p>If this option is
+                are searched for a matching file.</p></div><div class="refsect1"><a name="idm214182149520"></a><h2 id="Options">Options<a class="headerlink" title="Permalink to this headline" href="#Options">¶</a></h2><p>The following options are understood:</p><div class="variablelist"><dl class="variablelist"><dt id="--create"><span class="term"><code class="option">--create</code></span><a class="headerlink" title="Permalink to this term" href="#--create">¶</a></dt><dd><p>If this option is
                                 passed, all files and directories
                                 marked with <code class="varname">f</code>,
                                 <code class="varname">F</code>,
@@ -77,8 +77,8 @@
                 example, during boot the following command line is
                 executed to ensure that all temporary and volatile
                 directories are removed and created according to the
-                configuration file:</p><pre class="programlisting">systemd-tmpfiles --remove --create</pre></div><div class="refsect1"><a name="idm214171204640"></a><h2 id="Exit status">Exit status<a class="headerlink" title="Permalink to this headline" href="#Exit%20status">¶</a></h2><p>On success, 0 is returned, a non-zero failure
-                code otherwise.</p></div><div class="refsect1"><a name="idm214171203456"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+                configuration file:</p><pre class="programlisting">systemd-tmpfiles --remove --create</pre></div><div class="refsect1"><a name="idm214186015536"></a><h2 id="Exit status">Exit status<a class="headerlink" title="Permalink to this headline" href="#Exit%20status">¶</a></h2><p>On success, 0 is returned, a non-zero failure
+                code otherwise.</p></div><div class="refsect1"><a name="idm214186014352"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
                         <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
                         <a href="tmpfiles.d.html"><span class="citerefentry"><span class="refentrytitle">tmpfiles.d</span>(5)</span></a>
                 </p></div></div></body></html>
index 9e89edd02c7f02811dc7bb5dd6eeccb536ad9a34..545e33fbb9669806e2f786b1e40d568106fe4787 100644 (file)
@@ -19,8 +19,8 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="systemd-tmpfiles"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>systemd-tmpfiles, systemd-tmpfiles-setup.service, systemd-tmpfiles-setup-dev.service, systemd-tmpfiles-clean.service, systemd-tmpfiles-clean.timer — Creates, deletes and cleans up volatile
-                and temporary files and directories</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="cmdsynopsis"><p><code class="command">systemd-tmpfiles</code>  [OPTIONS...] [<em class="replaceable"><code>CONFIGFILE</code></em>...]</p></div><p><code class="filename">systemd-tmpfiles-setup.service</code></p><p><code class="filename">systemd-tmpfiles-setup-dev.service</code></p><p><code class="filename">systemd-tmpfiles-clean.service</code></p><p><code class="filename">systemd-tmpfiles-clean.timer</code></p></div><div class="refsect1"><a name="idm214167343504"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><span class="command"><strong>systemd-tmpfiles</strong></span> creates,
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="systemd-tmpfiles"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>systemd-tmpfiles, systemd-tmpfiles-setup.service, systemd-tmpfiles-setup-dev.service, systemd-tmpfiles-clean.service, systemd-tmpfiles-clean.timer — Creates, deletes and cleans up volatile
+                and temporary files and directories</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="cmdsynopsis"><p><code class="command">systemd-tmpfiles</code>  [OPTIONS...] [<em class="replaceable"><code>CONFIGFILE</code></em>...]</p></div><p><code class="filename">systemd-tmpfiles-setup.service</code></p><p><code class="filename">systemd-tmpfiles-setup-dev.service</code></p><p><code class="filename">systemd-tmpfiles-clean.service</code></p><p><code class="filename">systemd-tmpfiles-clean.timer</code></p></div><div class="refsect1"><a name="idm214182153968"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><span class="command"><strong>systemd-tmpfiles</strong></span> creates,
                 deletes, and cleans up volatile and temporary files and
                 directories, based on the configuration file format and
                 location specified in
@@ -32,7 +32,7 @@
                 the basename of a configuration file is specified,
                 all configuration directories as specified in
                 <a href="tmpfiles.d.html"><span class="citerefentry"><span class="refentrytitle">tmpfiles.d</span>(5)</span></a>
-                are searched for a matching file.</p></div><div class="refsect1"><a name="idm214167339104"></a><h2 id="Options">Options<a class="headerlink" title="Permalink to this headline" href="#Options">¶</a></h2><p>The following options are understood:</p><div class="variablelist"><dl class="variablelist"><dt id="--create"><span class="term"><code class="option">--create</code></span><a class="headerlink" title="Permalink to this term" href="#--create">¶</a></dt><dd><p>If this option is
+                are searched for a matching file.</p></div><div class="refsect1"><a name="idm214182149520"></a><h2 id="Options">Options<a class="headerlink" title="Permalink to this headline" href="#Options">¶</a></h2><p>The following options are understood:</p><div class="variablelist"><dl class="variablelist"><dt id="--create"><span class="term"><code class="option">--create</code></span><a class="headerlink" title="Permalink to this term" href="#--create">¶</a></dt><dd><p>If this option is
                                 passed, all files and directories
                                 marked with <code class="varname">f</code>,
                                 <code class="varname">F</code>,
@@ -77,8 +77,8 @@
                 example, during boot the following command line is
                 executed to ensure that all temporary and volatile
                 directories are removed and created according to the
-                configuration file:</p><pre class="programlisting">systemd-tmpfiles --remove --create</pre></div><div class="refsect1"><a name="idm214171204640"></a><h2 id="Exit status">Exit status<a class="headerlink" title="Permalink to this headline" href="#Exit%20status">¶</a></h2><p>On success, 0 is returned, a non-zero failure
-                code otherwise.</p></div><div class="refsect1"><a name="idm214171203456"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+                configuration file:</p><pre class="programlisting">systemd-tmpfiles --remove --create</pre></div><div class="refsect1"><a name="idm214186015536"></a><h2 id="Exit status">Exit status<a class="headerlink" title="Permalink to this headline" href="#Exit%20status">¶</a></h2><p>On success, 0 is returned, a non-zero failure
+                code otherwise.</p></div><div class="refsect1"><a name="idm214186014352"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
                         <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
                         <a href="tmpfiles.d.html"><span class="citerefentry"><span class="refentrytitle">tmpfiles.d</span>(5)</span></a>
                 </p></div></div></body></html>
index 9e89edd02c7f02811dc7bb5dd6eeccb536ad9a34..545e33fbb9669806e2f786b1e40d568106fe4787 100644 (file)
@@ -19,8 +19,8 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="systemd-tmpfiles"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>systemd-tmpfiles, systemd-tmpfiles-setup.service, systemd-tmpfiles-setup-dev.service, systemd-tmpfiles-clean.service, systemd-tmpfiles-clean.timer — Creates, deletes and cleans up volatile
-                and temporary files and directories</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="cmdsynopsis"><p><code class="command">systemd-tmpfiles</code>  [OPTIONS...] [<em class="replaceable"><code>CONFIGFILE</code></em>...]</p></div><p><code class="filename">systemd-tmpfiles-setup.service</code></p><p><code class="filename">systemd-tmpfiles-setup-dev.service</code></p><p><code class="filename">systemd-tmpfiles-clean.service</code></p><p><code class="filename">systemd-tmpfiles-clean.timer</code></p></div><div class="refsect1"><a name="idm214167343504"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><span class="command"><strong>systemd-tmpfiles</strong></span> creates,
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="systemd-tmpfiles"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>systemd-tmpfiles, systemd-tmpfiles-setup.service, systemd-tmpfiles-setup-dev.service, systemd-tmpfiles-clean.service, systemd-tmpfiles-clean.timer — Creates, deletes and cleans up volatile
+                and temporary files and directories</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="cmdsynopsis"><p><code class="command">systemd-tmpfiles</code>  [OPTIONS...] [<em class="replaceable"><code>CONFIGFILE</code></em>...]</p></div><p><code class="filename">systemd-tmpfiles-setup.service</code></p><p><code class="filename">systemd-tmpfiles-setup-dev.service</code></p><p><code class="filename">systemd-tmpfiles-clean.service</code></p><p><code class="filename">systemd-tmpfiles-clean.timer</code></p></div><div class="refsect1"><a name="idm214182153968"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><span class="command"><strong>systemd-tmpfiles</strong></span> creates,
                 deletes, and cleans up volatile and temporary files and
                 directories, based on the configuration file format and
                 location specified in
@@ -32,7 +32,7 @@
                 the basename of a configuration file is specified,
                 all configuration directories as specified in
                 <a href="tmpfiles.d.html"><span class="citerefentry"><span class="refentrytitle">tmpfiles.d</span>(5)</span></a>
-                are searched for a matching file.</p></div><div class="refsect1"><a name="idm214167339104"></a><h2 id="Options">Options<a class="headerlink" title="Permalink to this headline" href="#Options">¶</a></h2><p>The following options are understood:</p><div class="variablelist"><dl class="variablelist"><dt id="--create"><span class="term"><code class="option">--create</code></span><a class="headerlink" title="Permalink to this term" href="#--create">¶</a></dt><dd><p>If this option is
+                are searched for a matching file.</p></div><div class="refsect1"><a name="idm214182149520"></a><h2 id="Options">Options<a class="headerlink" title="Permalink to this headline" href="#Options">¶</a></h2><p>The following options are understood:</p><div class="variablelist"><dl class="variablelist"><dt id="--create"><span class="term"><code class="option">--create</code></span><a class="headerlink" title="Permalink to this term" href="#--create">¶</a></dt><dd><p>If this option is
                                 passed, all files and directories
                                 marked with <code class="varname">f</code>,
                                 <code class="varname">F</code>,
@@ -77,8 +77,8 @@
                 example, during boot the following command line is
                 executed to ensure that all temporary and volatile
                 directories are removed and created according to the
-                configuration file:</p><pre class="programlisting">systemd-tmpfiles --remove --create</pre></div><div class="refsect1"><a name="idm214171204640"></a><h2 id="Exit status">Exit status<a class="headerlink" title="Permalink to this headline" href="#Exit%20status">¶</a></h2><p>On success, 0 is returned, a non-zero failure
-                code otherwise.</p></div><div class="refsect1"><a name="idm214171203456"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+                configuration file:</p><pre class="programlisting">systemd-tmpfiles --remove --create</pre></div><div class="refsect1"><a name="idm214186015536"></a><h2 id="Exit status">Exit status<a class="headerlink" title="Permalink to this headline" href="#Exit%20status">¶</a></h2><p>On success, 0 is returned, a non-zero failure
+                code otherwise.</p></div><div class="refsect1"><a name="idm214186014352"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
                         <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
                         <a href="tmpfiles.d.html"><span class="citerefentry"><span class="refentrytitle">tmpfiles.d</span>(5)</span></a>
                 </p></div></div></body></html>
index 4526d3ddbe02f633547ee02b997ad1e3e8d35d9b..0d49e68748cbe0b20fca0e15d817d6890ed1df89 100644 (file)
@@ -1,5 +1,5 @@
 '\" t
-.TH "SYSTEMD\-TMPFILES" "8" "" "systemd 214" "systemd-tmpfiles"
+.TH "SYSTEMD\-TMPFILES" "8" "" "systemd 215" "systemd-tmpfiles"
 .\" -----------------------------------------------------------------
 .\" * Define some portability stuff
 .\" -----------------------------------------------------------------
index 9e89edd02c7f02811dc7bb5dd6eeccb536ad9a34..545e33fbb9669806e2f786b1e40d568106fe4787 100644 (file)
@@ -19,8 +19,8 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="systemd-tmpfiles"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>systemd-tmpfiles, systemd-tmpfiles-setup.service, systemd-tmpfiles-setup-dev.service, systemd-tmpfiles-clean.service, systemd-tmpfiles-clean.timer — Creates, deletes and cleans up volatile
-                and temporary files and directories</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="cmdsynopsis"><p><code class="command">systemd-tmpfiles</code>  [OPTIONS...] [<em class="replaceable"><code>CONFIGFILE</code></em>...]</p></div><p><code class="filename">systemd-tmpfiles-setup.service</code></p><p><code class="filename">systemd-tmpfiles-setup-dev.service</code></p><p><code class="filename">systemd-tmpfiles-clean.service</code></p><p><code class="filename">systemd-tmpfiles-clean.timer</code></p></div><div class="refsect1"><a name="idm214167343504"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><span class="command"><strong>systemd-tmpfiles</strong></span> creates,
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="systemd-tmpfiles"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>systemd-tmpfiles, systemd-tmpfiles-setup.service, systemd-tmpfiles-setup-dev.service, systemd-tmpfiles-clean.service, systemd-tmpfiles-clean.timer — Creates, deletes and cleans up volatile
+                and temporary files and directories</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="cmdsynopsis"><p><code class="command">systemd-tmpfiles</code>  [OPTIONS...] [<em class="replaceable"><code>CONFIGFILE</code></em>...]</p></div><p><code class="filename">systemd-tmpfiles-setup.service</code></p><p><code class="filename">systemd-tmpfiles-setup-dev.service</code></p><p><code class="filename">systemd-tmpfiles-clean.service</code></p><p><code class="filename">systemd-tmpfiles-clean.timer</code></p></div><div class="refsect1"><a name="idm214182153968"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><span class="command"><strong>systemd-tmpfiles</strong></span> creates,
                 deletes, and cleans up volatile and temporary files and
                 directories, based on the configuration file format and
                 location specified in
@@ -32,7 +32,7 @@
                 the basename of a configuration file is specified,
                 all configuration directories as specified in
                 <a href="tmpfiles.d.html"><span class="citerefentry"><span class="refentrytitle">tmpfiles.d</span>(5)</span></a>
-                are searched for a matching file.</p></div><div class="refsect1"><a name="idm214167339104"></a><h2 id="Options">Options<a class="headerlink" title="Permalink to this headline" href="#Options">¶</a></h2><p>The following options are understood:</p><div class="variablelist"><dl class="variablelist"><dt id="--create"><span class="term"><code class="option">--create</code></span><a class="headerlink" title="Permalink to this term" href="#--create">¶</a></dt><dd><p>If this option is
+                are searched for a matching file.</p></div><div class="refsect1"><a name="idm214182149520"></a><h2 id="Options">Options<a class="headerlink" title="Permalink to this headline" href="#Options">¶</a></h2><p>The following options are understood:</p><div class="variablelist"><dl class="variablelist"><dt id="--create"><span class="term"><code class="option">--create</code></span><a class="headerlink" title="Permalink to this term" href="#--create">¶</a></dt><dd><p>If this option is
                                 passed, all files and directories
                                 marked with <code class="varname">f</code>,
                                 <code class="varname">F</code>,
@@ -77,8 +77,8 @@
                 example, during boot the following command line is
                 executed to ensure that all temporary and volatile
                 directories are removed and created according to the
-                configuration file:</p><pre class="programlisting">systemd-tmpfiles --remove --create</pre></div><div class="refsect1"><a name="idm214171204640"></a><h2 id="Exit status">Exit status<a class="headerlink" title="Permalink to this headline" href="#Exit%20status">¶</a></h2><p>On success, 0 is returned, a non-zero failure
-                code otherwise.</p></div><div class="refsect1"><a name="idm214171203456"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+                configuration file:</p><pre class="programlisting">systemd-tmpfiles --remove --create</pre></div><div class="refsect1"><a name="idm214186015536"></a><h2 id="Exit status">Exit status<a class="headerlink" title="Permalink to this headline" href="#Exit%20status">¶</a></h2><p>On success, 0 is returned, a non-zero failure
+                code otherwise.</p></div><div class="refsect1"><a name="idm214186014352"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
                         <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
                         <a href="tmpfiles.d.html"><span class="citerefentry"><span class="refentrytitle">tmpfiles.d</span>(5)</span></a>
                 </p></div></div></body></html>
index 41192db3f34238074e2d5fcb0b078d0842207aff..fcb8fcf5d92b46cbab95d3aa856092d75493dc88 100644 (file)
@@ -1,5 +1,5 @@
 '\" t
-.TH "SYSTEMD\-TTY\-ASK\-PASSWORD\-AGENT" "1" "" "systemd 214" "systemd-tty-ask-password-agent"
+.TH "SYSTEMD\-TTY\-ASK\-PASSWORD\-AGENT" "1" "" "systemd 215" "systemd-tty-ask-password-agent"
 .\" -----------------------------------------------------------------
 .\" * Define some portability stuff
 .\" -----------------------------------------------------------------
index ebf095dc87abcea539961becca15368a93d70be7..5ea0056aaab61af331f442e924a3ccdf30295061 100644 (file)
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="systemd-tty-ask-password-agent"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>systemd-tty-ask-password-agent — List or process pending systemd password requests</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="cmdsynopsis"><p><code class="command">systemd-tty-ask-password-agent [OPTIONS...]  [VARIABLE=VALUE...]</code> </p></div></div><div class="refsect1"><a name="idm214178559760"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><span class="command"><strong>systemd-tty-ask-password-agent</strong></span>
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="systemd-tty-ask-password-agent"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>systemd-tty-ask-password-agent — List or process pending systemd password requests</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="cmdsynopsis"><p><code class="command">systemd-tty-ask-password-agent [OPTIONS...]  [VARIABLE=VALUE...]</code> </p></div></div><div class="refsect1"><a name="idm214196749440"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><span class="command"><strong>systemd-tty-ask-password-agent</strong></span>
                 is a password agent that handles password
                 requests of the system, for example for hard disk
                 encryption passwords or SSL certificate passwords that
                 need to be queried at boot-time or during
                 runtime.</p><p><span class="command"><strong>systemd-tty-ask-password-agent</strong></span>
                 implements the <a class="ulink" href="http://www.freedesktop.org/wiki/Software/systemd/PasswordAgents" target="_top">Password
-                Agents Specification</a>.</p></div><div class="refsect1"><a name="idm214178556080"></a><h2 id="Options">Options<a class="headerlink" title="Permalink to this headline" href="#Options">¶</a></h2><p>The following options are understood:</p><div class="variablelist"><dl class="variablelist"><dt id="--list"><span class="term"><code class="option">--list</code></span><a class="headerlink" title="Permalink to this term" href="#--list">¶</a></dt><dd><p>Lists all currently pending system password requests.</p></dd><dt id="--query"><span class="term"><code class="option">--query</code></span><a class="headerlink" title="Permalink to this term" href="#--query">¶</a></dt><dd><p>Process all currently
+                Agents Specification</a>.</p></div><div class="refsect1"><a name="idm214196745760"></a><h2 id="Options">Options<a class="headerlink" title="Permalink to this headline" href="#Options">¶</a></h2><p>The following options are understood:</p><div class="variablelist"><dl class="variablelist"><dt id="--list"><span class="term"><code class="option">--list</code></span><a class="headerlink" title="Permalink to this term" href="#--list">¶</a></dt><dd><p>Lists all currently pending system password requests.</p></dd><dt id="--query"><span class="term"><code class="option">--query</code></span><a class="headerlink" title="Permalink to this term" href="#--query">¶</a></dt><dd><p>Process all currently
                                 pending system password requests by
                                 querying the user on the calling
                                 TTY.</p></dd><dt id="--watch"><span class="term"><code class="option">--watch</code></span><a class="headerlink" title="Permalink to this term" href="#--watch">¶</a></dt><dd><p>Continuously process
@@ -41,8 +41,8 @@
                                 <code class="filename">/dev/console</code>
                                 instead of querying the user on the
                                 calling TTY.  </p></dd><dt id="-h"><span class="term"><code class="option">-h</code>, </span><span class="term"><code class="option">--help</code></span><a class="headerlink" title="Permalink to this term" href="#-h">¶</a></dt><dd><p><a name="help-text"></a>Print a short help text and exit.
-    </p></dd><dt id="--version"><span class="term"><code class="option">--version</code></span><a class="headerlink" title="Permalink to this term" href="#--version">¶</a></dt><dd><p><a name="version-text"></a>Print a short version string and exit.</p></dd></dl></div></div><div class="refsect1"><a name="idm214182439680"></a><h2 id="Exit status">Exit status<a class="headerlink" title="Permalink to this headline" href="#Exit%20status">¶</a></h2><p>On success, 0 is returned, a non-zero failure
-                code otherwise.</p></div><div class="refsect1"><a name="idm214182438496"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+    </p></dd><dt id="--version"><span class="term"><code class="option">--version</code></span><a class="headerlink" title="Permalink to this term" href="#--version">¶</a></dt><dd><p><a name="version-text"></a>Print a short version string and exit.</p></dd></dl></div></div><div class="refsect1"><a name="idm214200629952"></a><h2 id="Exit status">Exit status<a class="headerlink" title="Permalink to this headline" href="#Exit%20status">¶</a></h2><p>On success, 0 is returned, a non-zero failure
+                code otherwise.</p></div><div class="refsect1"><a name="idm214200628768"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
                         <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
                         <a href="systemctl.html"><span class="citerefentry"><span class="refentrytitle">systemctl</span>(1)</span></a>,
                         <a href="systemd-ask-password-console.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-ask-password-console.service</span>(8)</span></a>,
index dee6942137ef310d08dc395f4f49979dbca61493..b733d8718c646d00dad0235a0d12aef525933464 100644 (file)
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="systemd-udevd.service"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>systemd-udevd.service, systemd-udevd-control.socket, systemd-udevd-kernel.socket, systemd-udevd — Device event managing daemon</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><p><code class="filename">systemd-udevd.service</code></p><p><code class="filename">systemd-udevd-control.socket</code></p><p><code class="filename">systemd-udevd-kernel.socket</code></p><div class="cmdsynopsis"><p><code class="command">/usr/lib/systemd/systemd-udevd</code>  [<code class="option">--daemon</code>] [<code class="option">--debug</code>] [<code class="option">--children-max=</code>] [<code class="option">--exec-delay=</code>] [<code class="option">--resolve-names=early|late|never</code>] [<code class="option">--version</code>] [<code class="option">--help</code>]</p></div></div><div class="refsect1"><a name="idm214179734432"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><span class="command"><strong>systemd-udevd</strong></span> listens to kernel uevents.
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="systemd-udevd.service"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>systemd-udevd.service, systemd-udevd-control.socket, systemd-udevd-kernel.socket, systemd-udevd — Device event managing daemon</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><p><code class="filename">systemd-udevd.service</code></p><p><code class="filename">systemd-udevd-control.socket</code></p><p><code class="filename">systemd-udevd-kernel.socket</code></p><div class="cmdsynopsis"><p><code class="command">/usr/lib/systemd/systemd-udevd</code>  [<code class="option">--daemon</code>] [<code class="option">--debug</code>] [<code class="option">--children-max=</code>] [<code class="option">--exec-delay=</code>] [<code class="option">--resolve-names=early|late|never</code>] [<code class="option">--version</code>] [<code class="option">--help</code>]</p></div></div><div class="refsect1"><a name="idm214168457344"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><span class="command"><strong>systemd-udevd</strong></span> listens to kernel uevents.
       For every event, systemd-udevd executes matching instructions
       specified in udev rules. See <a href="udev.html"><span class="citerefentry"><span class="refentrytitle">udev</span>(7)</span></a>.</p><p>The behavior of the running daemon can be changed with
-    <span class="command"><strong>udevadm control</strong></span>.</p></div><div class="refsect1"><a name="idm214179730544"></a><h2 id="Options">Options<a class="headerlink" title="Permalink to this headline" href="#Options">¶</a></h2><div class="variablelist"><dl class="variablelist"><dt id="--daemon"><span class="term"><code class="option">--daemon</code></span><a class="headerlink" title="Permalink to this term" href="#--daemon">¶</a></dt><dd><p>Detach and run in the background.</p></dd><dt id="--debug"><span class="term"><code class="option">--debug</code></span><a class="headerlink" title="Permalink to this term" href="#--debug">¶</a></dt><dd><p>Print debug messages to standard error.</p></dd><dt id="--children-max="><span class="term"><code class="option">--children-max=</code></span><a class="headerlink" title="Permalink to this term" href="#--children-max=">¶</a></dt><dd><p>Limit the number of events executed in parallel.</p></dd><dt id="--exec-delay="><span class="term"><code class="option">--exec-delay=</code></span><a class="headerlink" title="Permalink to this term" href="#--exec-delay=">¶</a></dt><dd><p>Delay the execution of <code class="varname">RUN</code>
+    <span class="command"><strong>udevadm control</strong></span>.</p></div><div class="refsect1"><a name="idm214172352688"></a><h2 id="Options">Options<a class="headerlink" title="Permalink to this headline" href="#Options">¶</a></h2><div class="variablelist"><dl class="variablelist"><dt id="--daemon"><span class="term"><code class="option">--daemon</code></span><a class="headerlink" title="Permalink to this term" href="#--daemon">¶</a></dt><dd><p>Detach and run in the background.</p></dd><dt id="--debug"><span class="term"><code class="option">--debug</code></span><a class="headerlink" title="Permalink to this term" href="#--debug">¶</a></dt><dd><p>Print debug messages to standard error.</p></dd><dt id="--children-max="><span class="term"><code class="option">--children-max=</code></span><a class="headerlink" title="Permalink to this term" href="#--children-max=">¶</a></dt><dd><p>Limit the number of events executed in parallel.</p></dd><dt id="--exec-delay="><span class="term"><code class="option">--exec-delay=</code></span><a class="headerlink" title="Permalink to this term" href="#--exec-delay=">¶</a></dt><dd><p>Delay the execution of <code class="varname">RUN</code>
           instructions by the given number of seconds. This option
           might be useful when debugging system crashes during
           coldplug caused by loading non-working kernel
           <code class="option">late</code>, names will be resolved for every event.
           When set to <code class="option">never</code>, names will never be resolved
           and all devices will be owned by root.</p></dd><dt id="--help"><span class="term"><code class="option">--help</code></span><a class="headerlink" title="Permalink to this term" href="#--help">¶</a></dt><dd><p><a name="help-text"></a>Print a short help text and exit.
-    </p></dd><dt id="--version"><span class="term"><code class="option">--version</code></span><a class="headerlink" title="Permalink to this term" href="#--version">¶</a></dt><dd><p><a name="version-text"></a>Print a short version string and exit.</p></dd></dl></div></div><div class="refsect1"><a name="idm214183614768"></a><h2 id="Environment">Environment<a class="headerlink" title="Permalink to this headline" href="#Environment">¶</a></h2><div class="variablelist"><dl class="variablelist"><dt id="$UDEV_LOG="><span class="term"><code class="varname">$UDEV_LOG=</code></span><a class="headerlink" title="Permalink to this term" href="#%24UDEV_LOG=">¶</a></dt><dd><p>Set the logging priority.</p></dd></dl></div></div><div class="refsect1"><a name="idm214183604816"></a><h2 id="Kernel command line">Kernel command line<a class="headerlink" title="Permalink to this headline" href="#Kernel%20command%20line">¶</a></h2><div class="variablelist"><p>Parameters starting with "rd." will be read when
+    </p></dd><dt id="--version"><span class="term"><code class="option">--version</code></span><a class="headerlink" title="Permalink to this term" href="#--version">¶</a></dt><dd><p><a name="version-text"></a>Print a short version string and exit.</p></dd></dl></div></div><div class="refsect1"><a name="idm214172338224"></a><h2 id="Environment">Environment<a class="headerlink" title="Permalink to this headline" href="#Environment">¶</a></h2><div class="variablelist"><dl class="variablelist"><dt id="$UDEV_LOG="><span class="term"><code class="varname">$UDEV_LOG=</code></span><a class="headerlink" title="Permalink to this term" href="#%24UDEV_LOG=">¶</a></dt><dd><p>Set the logging priority.</p></dd></dl></div></div><div class="refsect1"><a name="idm214172327808"></a><h2 id="Kernel command line">Kernel command line<a class="headerlink" title="Permalink to this headline" href="#Kernel%20command%20line">¶</a></h2><div class="variablelist"><p>Parameters starting with "rd." will be read when
       <span class="command"><strong>systemd-udevd</strong></span> is used in an initrd.</p><dl class="variablelist"><dt id="udev.log-priority="><span class="term"><code class="varname">udev.log-priority=</code>, </span><span class="term"><code class="varname">rd.udev.log-priority=</code></span><a class="headerlink" title="Permalink to this term" href="#udev.log-priority=">¶</a></dt><dd><p>Set the logging priority.</p></dd><dt id="udev.children-max="><span class="term"><code class="varname">udev.children-max=</code>, </span><span class="term"><code class="varname">rd.udev.children-max=</code></span><a class="headerlink" title="Permalink to this term" href="#udev.children-max=">¶</a></dt><dd><p>Limit the number of events executed in parallel.</p></dd><dt id="udev.exec-delay="><span class="term"><code class="varname">udev.exec-delay=</code>, </span><span class="term"><code class="varname">rd.udev.exec-delay=</code></span><a class="headerlink" title="Permalink to this term" href="#udev.exec-delay=">¶</a></dt><dd><p>Delay the execution of <code class="varname">RUN</code> instructions by the given
           number of seconds. This option might be useful when
           debugging system crashes during coldplug caused by loading
           non-working kernel modules.</p></dd><dt id="net.ifnames="><span class="term"><code class="varname">net.ifnames=</code></span><a class="headerlink" title="Permalink to this term" href="#net.ifnames=">¶</a></dt><dd><p>Network interfaces are renamed to give them predictable names
-          when possible. It is enabled by default; specifying 0 disables it.</p></dd></dl></div></div><div class="refsect1"><a name="idm214183592656"></a><h2 id="Configuration file">Configuration file<a class="headerlink" title="Permalink to this headline" href="#Configuration%20file">¶</a></h2><p>udev expects its main configuration file at <code class="filename">/etc/udev/udev.conf</code>.
+          when possible. It is enabled by default; specifying 0 disables it.</p></dd></dl></div></div><div class="refsect1"><a name="idm214172315600"></a><h2 id="Configuration file">Configuration file<a class="headerlink" title="Permalink to this headline" href="#Configuration%20file">¶</a></h2><p>udev expects its main configuration file at <code class="filename">/etc/udev/udev.conf</code>.
    It consists of a set of variables allowing the user to override default udev values. All
    empty lines or lines beginning with '#' are ignored. The following variables can be
    set:</p><div class="variablelist"><dl class="variablelist"><dt id="udev_log"><span class="term"><code class="varname">udev_log</code></span><a class="headerlink" title="Permalink to this term" href="#udev_log">¶</a></dt><dd><p>The logging priority. Valid values are the numerical syslog priorities
          or their textual representations: <code class="option">err</code>, <code class="option">info</code>
-         and <code class="option">debug</code>.</p></dd></dl></div></div><div class="refsect1"><a name="idm214183587008"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p><a href="udev.html"><span class="citerefentry"><span class="refentrytitle">udev</span>(7)</span></a>, <a href="udevadm.html"><span class="citerefentry"><span class="refentrytitle">udevadm</span>(8)</span></a></p></div></div></body></html>
+         and <code class="option">debug</code>.</p></dd></dl></div></div><div class="refsect1"><a name="idm214172310000"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p><a href="udev.html"><span class="citerefentry"><span class="refentrytitle">udev</span>(7)</span></a>, <a href="udevadm.html"><span class="citerefentry"><span class="refentrytitle">udevadm</span>(8)</span></a></p></div></div></body></html>
index dee6942137ef310d08dc395f4f49979dbca61493..b733d8718c646d00dad0235a0d12aef525933464 100644 (file)
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="systemd-udevd.service"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>systemd-udevd.service, systemd-udevd-control.socket, systemd-udevd-kernel.socket, systemd-udevd — Device event managing daemon</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><p><code class="filename">systemd-udevd.service</code></p><p><code class="filename">systemd-udevd-control.socket</code></p><p><code class="filename">systemd-udevd-kernel.socket</code></p><div class="cmdsynopsis"><p><code class="command">/usr/lib/systemd/systemd-udevd</code>  [<code class="option">--daemon</code>] [<code class="option">--debug</code>] [<code class="option">--children-max=</code>] [<code class="option">--exec-delay=</code>] [<code class="option">--resolve-names=early|late|never</code>] [<code class="option">--version</code>] [<code class="option">--help</code>]</p></div></div><div class="refsect1"><a name="idm214179734432"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><span class="command"><strong>systemd-udevd</strong></span> listens to kernel uevents.
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="systemd-udevd.service"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>systemd-udevd.service, systemd-udevd-control.socket, systemd-udevd-kernel.socket, systemd-udevd — Device event managing daemon</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><p><code class="filename">systemd-udevd.service</code></p><p><code class="filename">systemd-udevd-control.socket</code></p><p><code class="filename">systemd-udevd-kernel.socket</code></p><div class="cmdsynopsis"><p><code class="command">/usr/lib/systemd/systemd-udevd</code>  [<code class="option">--daemon</code>] [<code class="option">--debug</code>] [<code class="option">--children-max=</code>] [<code class="option">--exec-delay=</code>] [<code class="option">--resolve-names=early|late|never</code>] [<code class="option">--version</code>] [<code class="option">--help</code>]</p></div></div><div class="refsect1"><a name="idm214168457344"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><span class="command"><strong>systemd-udevd</strong></span> listens to kernel uevents.
       For every event, systemd-udevd executes matching instructions
       specified in udev rules. See <a href="udev.html"><span class="citerefentry"><span class="refentrytitle">udev</span>(7)</span></a>.</p><p>The behavior of the running daemon can be changed with
-    <span class="command"><strong>udevadm control</strong></span>.</p></div><div class="refsect1"><a name="idm214179730544"></a><h2 id="Options">Options<a class="headerlink" title="Permalink to this headline" href="#Options">¶</a></h2><div class="variablelist"><dl class="variablelist"><dt id="--daemon"><span class="term"><code class="option">--daemon</code></span><a class="headerlink" title="Permalink to this term" href="#--daemon">¶</a></dt><dd><p>Detach and run in the background.</p></dd><dt id="--debug"><span class="term"><code class="option">--debug</code></span><a class="headerlink" title="Permalink to this term" href="#--debug">¶</a></dt><dd><p>Print debug messages to standard error.</p></dd><dt id="--children-max="><span class="term"><code class="option">--children-max=</code></span><a class="headerlink" title="Permalink to this term" href="#--children-max=">¶</a></dt><dd><p>Limit the number of events executed in parallel.</p></dd><dt id="--exec-delay="><span class="term"><code class="option">--exec-delay=</code></span><a class="headerlink" title="Permalink to this term" href="#--exec-delay=">¶</a></dt><dd><p>Delay the execution of <code class="varname">RUN</code>
+    <span class="command"><strong>udevadm control</strong></span>.</p></div><div class="refsect1"><a name="idm214172352688"></a><h2 id="Options">Options<a class="headerlink" title="Permalink to this headline" href="#Options">¶</a></h2><div class="variablelist"><dl class="variablelist"><dt id="--daemon"><span class="term"><code class="option">--daemon</code></span><a class="headerlink" title="Permalink to this term" href="#--daemon">¶</a></dt><dd><p>Detach and run in the background.</p></dd><dt id="--debug"><span class="term"><code class="option">--debug</code></span><a class="headerlink" title="Permalink to this term" href="#--debug">¶</a></dt><dd><p>Print debug messages to standard error.</p></dd><dt id="--children-max="><span class="term"><code class="option">--children-max=</code></span><a class="headerlink" title="Permalink to this term" href="#--children-max=">¶</a></dt><dd><p>Limit the number of events executed in parallel.</p></dd><dt id="--exec-delay="><span class="term"><code class="option">--exec-delay=</code></span><a class="headerlink" title="Permalink to this term" href="#--exec-delay=">¶</a></dt><dd><p>Delay the execution of <code class="varname">RUN</code>
           instructions by the given number of seconds. This option
           might be useful when debugging system crashes during
           coldplug caused by loading non-working kernel
           <code class="option">late</code>, names will be resolved for every event.
           When set to <code class="option">never</code>, names will never be resolved
           and all devices will be owned by root.</p></dd><dt id="--help"><span class="term"><code class="option">--help</code></span><a class="headerlink" title="Permalink to this term" href="#--help">¶</a></dt><dd><p><a name="help-text"></a>Print a short help text and exit.
-    </p></dd><dt id="--version"><span class="term"><code class="option">--version</code></span><a class="headerlink" title="Permalink to this term" href="#--version">¶</a></dt><dd><p><a name="version-text"></a>Print a short version string and exit.</p></dd></dl></div></div><div class="refsect1"><a name="idm214183614768"></a><h2 id="Environment">Environment<a class="headerlink" title="Permalink to this headline" href="#Environment">¶</a></h2><div class="variablelist"><dl class="variablelist"><dt id="$UDEV_LOG="><span class="term"><code class="varname">$UDEV_LOG=</code></span><a class="headerlink" title="Permalink to this term" href="#%24UDEV_LOG=">¶</a></dt><dd><p>Set the logging priority.</p></dd></dl></div></div><div class="refsect1"><a name="idm214183604816"></a><h2 id="Kernel command line">Kernel command line<a class="headerlink" title="Permalink to this headline" href="#Kernel%20command%20line">¶</a></h2><div class="variablelist"><p>Parameters starting with "rd." will be read when
+    </p></dd><dt id="--version"><span class="term"><code class="option">--version</code></span><a class="headerlink" title="Permalink to this term" href="#--version">¶</a></dt><dd><p><a name="version-text"></a>Print a short version string and exit.</p></dd></dl></div></div><div class="refsect1"><a name="idm214172338224"></a><h2 id="Environment">Environment<a class="headerlink" title="Permalink to this headline" href="#Environment">¶</a></h2><div class="variablelist"><dl class="variablelist"><dt id="$UDEV_LOG="><span class="term"><code class="varname">$UDEV_LOG=</code></span><a class="headerlink" title="Permalink to this term" href="#%24UDEV_LOG=">¶</a></dt><dd><p>Set the logging priority.</p></dd></dl></div></div><div class="refsect1"><a name="idm214172327808"></a><h2 id="Kernel command line">Kernel command line<a class="headerlink" title="Permalink to this headline" href="#Kernel%20command%20line">¶</a></h2><div class="variablelist"><p>Parameters starting with "rd." will be read when
       <span class="command"><strong>systemd-udevd</strong></span> is used in an initrd.</p><dl class="variablelist"><dt id="udev.log-priority="><span class="term"><code class="varname">udev.log-priority=</code>, </span><span class="term"><code class="varname">rd.udev.log-priority=</code></span><a class="headerlink" title="Permalink to this term" href="#udev.log-priority=">¶</a></dt><dd><p>Set the logging priority.</p></dd><dt id="udev.children-max="><span class="term"><code class="varname">udev.children-max=</code>, </span><span class="term"><code class="varname">rd.udev.children-max=</code></span><a class="headerlink" title="Permalink to this term" href="#udev.children-max=">¶</a></dt><dd><p>Limit the number of events executed in parallel.</p></dd><dt id="udev.exec-delay="><span class="term"><code class="varname">udev.exec-delay=</code>, </span><span class="term"><code class="varname">rd.udev.exec-delay=</code></span><a class="headerlink" title="Permalink to this term" href="#udev.exec-delay=">¶</a></dt><dd><p>Delay the execution of <code class="varname">RUN</code> instructions by the given
           number of seconds. This option might be useful when
           debugging system crashes during coldplug caused by loading
           non-working kernel modules.</p></dd><dt id="net.ifnames="><span class="term"><code class="varname">net.ifnames=</code></span><a class="headerlink" title="Permalink to this term" href="#net.ifnames=">¶</a></dt><dd><p>Network interfaces are renamed to give them predictable names
-          when possible. It is enabled by default; specifying 0 disables it.</p></dd></dl></div></div><div class="refsect1"><a name="idm214183592656"></a><h2 id="Configuration file">Configuration file<a class="headerlink" title="Permalink to this headline" href="#Configuration%20file">¶</a></h2><p>udev expects its main configuration file at <code class="filename">/etc/udev/udev.conf</code>.
+          when possible. It is enabled by default; specifying 0 disables it.</p></dd></dl></div></div><div class="refsect1"><a name="idm214172315600"></a><h2 id="Configuration file">Configuration file<a class="headerlink" title="Permalink to this headline" href="#Configuration%20file">¶</a></h2><p>udev expects its main configuration file at <code class="filename">/etc/udev/udev.conf</code>.
    It consists of a set of variables allowing the user to override default udev values. All
    empty lines or lines beginning with '#' are ignored. The following variables can be
    set:</p><div class="variablelist"><dl class="variablelist"><dt id="udev_log"><span class="term"><code class="varname">udev_log</code></span><a class="headerlink" title="Permalink to this term" href="#udev_log">¶</a></dt><dd><p>The logging priority. Valid values are the numerical syslog priorities
          or their textual representations: <code class="option">err</code>, <code class="option">info</code>
-         and <code class="option">debug</code>.</p></dd></dl></div></div><div class="refsect1"><a name="idm214183587008"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p><a href="udev.html"><span class="citerefentry"><span class="refentrytitle">udev</span>(7)</span></a>, <a href="udevadm.html"><span class="citerefentry"><span class="refentrytitle">udevadm</span>(8)</span></a></p></div></div></body></html>
+         and <code class="option">debug</code>.</p></dd></dl></div></div><div class="refsect1"><a name="idm214172310000"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p><a href="udev.html"><span class="citerefentry"><span class="refentrytitle">udev</span>(7)</span></a>, <a href="udevadm.html"><span class="citerefentry"><span class="refentrytitle">udevadm</span>(8)</span></a></p></div></div></body></html>
index dee6942137ef310d08dc395f4f49979dbca61493..b733d8718c646d00dad0235a0d12aef525933464 100644 (file)
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="systemd-udevd.service"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>systemd-udevd.service, systemd-udevd-control.socket, systemd-udevd-kernel.socket, systemd-udevd — Device event managing daemon</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><p><code class="filename">systemd-udevd.service</code></p><p><code class="filename">systemd-udevd-control.socket</code></p><p><code class="filename">systemd-udevd-kernel.socket</code></p><div class="cmdsynopsis"><p><code class="command">/usr/lib/systemd/systemd-udevd</code>  [<code class="option">--daemon</code>] [<code class="option">--debug</code>] [<code class="option">--children-max=</code>] [<code class="option">--exec-delay=</code>] [<code class="option">--resolve-names=early|late|never</code>] [<code class="option">--version</code>] [<code class="option">--help</code>]</p></div></div><div class="refsect1"><a name="idm214179734432"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><span class="command"><strong>systemd-udevd</strong></span> listens to kernel uevents.
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="systemd-udevd.service"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>systemd-udevd.service, systemd-udevd-control.socket, systemd-udevd-kernel.socket, systemd-udevd — Device event managing daemon</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><p><code class="filename">systemd-udevd.service</code></p><p><code class="filename">systemd-udevd-control.socket</code></p><p><code class="filename">systemd-udevd-kernel.socket</code></p><div class="cmdsynopsis"><p><code class="command">/usr/lib/systemd/systemd-udevd</code>  [<code class="option">--daemon</code>] [<code class="option">--debug</code>] [<code class="option">--children-max=</code>] [<code class="option">--exec-delay=</code>] [<code class="option">--resolve-names=early|late|never</code>] [<code class="option">--version</code>] [<code class="option">--help</code>]</p></div></div><div class="refsect1"><a name="idm214168457344"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><span class="command"><strong>systemd-udevd</strong></span> listens to kernel uevents.
       For every event, systemd-udevd executes matching instructions
       specified in udev rules. See <a href="udev.html"><span class="citerefentry"><span class="refentrytitle">udev</span>(7)</span></a>.</p><p>The behavior of the running daemon can be changed with
-    <span class="command"><strong>udevadm control</strong></span>.</p></div><div class="refsect1"><a name="idm214179730544"></a><h2 id="Options">Options<a class="headerlink" title="Permalink to this headline" href="#Options">¶</a></h2><div class="variablelist"><dl class="variablelist"><dt id="--daemon"><span class="term"><code class="option">--daemon</code></span><a class="headerlink" title="Permalink to this term" href="#--daemon">¶</a></dt><dd><p>Detach and run in the background.</p></dd><dt id="--debug"><span class="term"><code class="option">--debug</code></span><a class="headerlink" title="Permalink to this term" href="#--debug">¶</a></dt><dd><p>Print debug messages to standard error.</p></dd><dt id="--children-max="><span class="term"><code class="option">--children-max=</code></span><a class="headerlink" title="Permalink to this term" href="#--children-max=">¶</a></dt><dd><p>Limit the number of events executed in parallel.</p></dd><dt id="--exec-delay="><span class="term"><code class="option">--exec-delay=</code></span><a class="headerlink" title="Permalink to this term" href="#--exec-delay=">¶</a></dt><dd><p>Delay the execution of <code class="varname">RUN</code>
+    <span class="command"><strong>udevadm control</strong></span>.</p></div><div class="refsect1"><a name="idm214172352688"></a><h2 id="Options">Options<a class="headerlink" title="Permalink to this headline" href="#Options">¶</a></h2><div class="variablelist"><dl class="variablelist"><dt id="--daemon"><span class="term"><code class="option">--daemon</code></span><a class="headerlink" title="Permalink to this term" href="#--daemon">¶</a></dt><dd><p>Detach and run in the background.</p></dd><dt id="--debug"><span class="term"><code class="option">--debug</code></span><a class="headerlink" title="Permalink to this term" href="#--debug">¶</a></dt><dd><p>Print debug messages to standard error.</p></dd><dt id="--children-max="><span class="term"><code class="option">--children-max=</code></span><a class="headerlink" title="Permalink to this term" href="#--children-max=">¶</a></dt><dd><p>Limit the number of events executed in parallel.</p></dd><dt id="--exec-delay="><span class="term"><code class="option">--exec-delay=</code></span><a class="headerlink" title="Permalink to this term" href="#--exec-delay=">¶</a></dt><dd><p>Delay the execution of <code class="varname">RUN</code>
           instructions by the given number of seconds. This option
           might be useful when debugging system crashes during
           coldplug caused by loading non-working kernel
           <code class="option">late</code>, names will be resolved for every event.
           When set to <code class="option">never</code>, names will never be resolved
           and all devices will be owned by root.</p></dd><dt id="--help"><span class="term"><code class="option">--help</code></span><a class="headerlink" title="Permalink to this term" href="#--help">¶</a></dt><dd><p><a name="help-text"></a>Print a short help text and exit.
-    </p></dd><dt id="--version"><span class="term"><code class="option">--version</code></span><a class="headerlink" title="Permalink to this term" href="#--version">¶</a></dt><dd><p><a name="version-text"></a>Print a short version string and exit.</p></dd></dl></div></div><div class="refsect1"><a name="idm214183614768"></a><h2 id="Environment">Environment<a class="headerlink" title="Permalink to this headline" href="#Environment">¶</a></h2><div class="variablelist"><dl class="variablelist"><dt id="$UDEV_LOG="><span class="term"><code class="varname">$UDEV_LOG=</code></span><a class="headerlink" title="Permalink to this term" href="#%24UDEV_LOG=">¶</a></dt><dd><p>Set the logging priority.</p></dd></dl></div></div><div class="refsect1"><a name="idm214183604816"></a><h2 id="Kernel command line">Kernel command line<a class="headerlink" title="Permalink to this headline" href="#Kernel%20command%20line">¶</a></h2><div class="variablelist"><p>Parameters starting with "rd." will be read when
+    </p></dd><dt id="--version"><span class="term"><code class="option">--version</code></span><a class="headerlink" title="Permalink to this term" href="#--version">¶</a></dt><dd><p><a name="version-text"></a>Print a short version string and exit.</p></dd></dl></div></div><div class="refsect1"><a name="idm214172338224"></a><h2 id="Environment">Environment<a class="headerlink" title="Permalink to this headline" href="#Environment">¶</a></h2><div class="variablelist"><dl class="variablelist"><dt id="$UDEV_LOG="><span class="term"><code class="varname">$UDEV_LOG=</code></span><a class="headerlink" title="Permalink to this term" href="#%24UDEV_LOG=">¶</a></dt><dd><p>Set the logging priority.</p></dd></dl></div></div><div class="refsect1"><a name="idm214172327808"></a><h2 id="Kernel command line">Kernel command line<a class="headerlink" title="Permalink to this headline" href="#Kernel%20command%20line">¶</a></h2><div class="variablelist"><p>Parameters starting with "rd." will be read when
       <span class="command"><strong>systemd-udevd</strong></span> is used in an initrd.</p><dl class="variablelist"><dt id="udev.log-priority="><span class="term"><code class="varname">udev.log-priority=</code>, </span><span class="term"><code class="varname">rd.udev.log-priority=</code></span><a class="headerlink" title="Permalink to this term" href="#udev.log-priority=">¶</a></dt><dd><p>Set the logging priority.</p></dd><dt id="udev.children-max="><span class="term"><code class="varname">udev.children-max=</code>, </span><span class="term"><code class="varname">rd.udev.children-max=</code></span><a class="headerlink" title="Permalink to this term" href="#udev.children-max=">¶</a></dt><dd><p>Limit the number of events executed in parallel.</p></dd><dt id="udev.exec-delay="><span class="term"><code class="varname">udev.exec-delay=</code>, </span><span class="term"><code class="varname">rd.udev.exec-delay=</code></span><a class="headerlink" title="Permalink to this term" href="#udev.exec-delay=">¶</a></dt><dd><p>Delay the execution of <code class="varname">RUN</code> instructions by the given
           number of seconds. This option might be useful when
           debugging system crashes during coldplug caused by loading
           non-working kernel modules.</p></dd><dt id="net.ifnames="><span class="term"><code class="varname">net.ifnames=</code></span><a class="headerlink" title="Permalink to this term" href="#net.ifnames=">¶</a></dt><dd><p>Network interfaces are renamed to give them predictable names
-          when possible. It is enabled by default; specifying 0 disables it.</p></dd></dl></div></div><div class="refsect1"><a name="idm214183592656"></a><h2 id="Configuration file">Configuration file<a class="headerlink" title="Permalink to this headline" href="#Configuration%20file">¶</a></h2><p>udev expects its main configuration file at <code class="filename">/etc/udev/udev.conf</code>.
+          when possible. It is enabled by default; specifying 0 disables it.</p></dd></dl></div></div><div class="refsect1"><a name="idm214172315600"></a><h2 id="Configuration file">Configuration file<a class="headerlink" title="Permalink to this headline" href="#Configuration%20file">¶</a></h2><p>udev expects its main configuration file at <code class="filename">/etc/udev/udev.conf</code>.
    It consists of a set of variables allowing the user to override default udev values. All
    empty lines or lines beginning with '#' are ignored. The following variables can be
    set:</p><div class="variablelist"><dl class="variablelist"><dt id="udev_log"><span class="term"><code class="varname">udev_log</code></span><a class="headerlink" title="Permalink to this term" href="#udev_log">¶</a></dt><dd><p>The logging priority. Valid values are the numerical syslog priorities
          or their textual representations: <code class="option">err</code>, <code class="option">info</code>
-         and <code class="option">debug</code>.</p></dd></dl></div></div><div class="refsect1"><a name="idm214183587008"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p><a href="udev.html"><span class="citerefentry"><span class="refentrytitle">udev</span>(7)</span></a>, <a href="udevadm.html"><span class="citerefentry"><span class="refentrytitle">udevadm</span>(8)</span></a></p></div></div></body></html>
+         and <code class="option">debug</code>.</p></dd></dl></div></div><div class="refsect1"><a name="idm214172310000"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p><a href="udev.html"><span class="citerefentry"><span class="refentrytitle">udev</span>(7)</span></a>, <a href="udevadm.html"><span class="citerefentry"><span class="refentrytitle">udevadm</span>(8)</span></a></p></div></div></body></html>
index cc2782fd4844a23396a2305cd1d2bcf084feab1e..5151de099395f4a3ed21c7a5bb9aba4138b8edce 100644 (file)
@@ -1,5 +1,5 @@
 '\" t
-.TH "SYSTEMD\-UDEVD\&.SERVICE" "8" "" "systemd 214" "systemd-udevd.service"
+.TH "SYSTEMD\-UDEVD\&.SERVICE" "8" "" "systemd 215" "systemd-udevd.service"
 .\" -----------------------------------------------------------------
 .\" * Define some portability stuff
 .\" -----------------------------------------------------------------
index dee6942137ef310d08dc395f4f49979dbca61493..b733d8718c646d00dad0235a0d12aef525933464 100644 (file)
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="systemd-udevd.service"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>systemd-udevd.service, systemd-udevd-control.socket, systemd-udevd-kernel.socket, systemd-udevd — Device event managing daemon</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><p><code class="filename">systemd-udevd.service</code></p><p><code class="filename">systemd-udevd-control.socket</code></p><p><code class="filename">systemd-udevd-kernel.socket</code></p><div class="cmdsynopsis"><p><code class="command">/usr/lib/systemd/systemd-udevd</code>  [<code class="option">--daemon</code>] [<code class="option">--debug</code>] [<code class="option">--children-max=</code>] [<code class="option">--exec-delay=</code>] [<code class="option">--resolve-names=early|late|never</code>] [<code class="option">--version</code>] [<code class="option">--help</code>]</p></div></div><div class="refsect1"><a name="idm214179734432"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><span class="command"><strong>systemd-udevd</strong></span> listens to kernel uevents.
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="systemd-udevd.service"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>systemd-udevd.service, systemd-udevd-control.socket, systemd-udevd-kernel.socket, systemd-udevd — Device event managing daemon</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><p><code class="filename">systemd-udevd.service</code></p><p><code class="filename">systemd-udevd-control.socket</code></p><p><code class="filename">systemd-udevd-kernel.socket</code></p><div class="cmdsynopsis"><p><code class="command">/usr/lib/systemd/systemd-udevd</code>  [<code class="option">--daemon</code>] [<code class="option">--debug</code>] [<code class="option">--children-max=</code>] [<code class="option">--exec-delay=</code>] [<code class="option">--resolve-names=early|late|never</code>] [<code class="option">--version</code>] [<code class="option">--help</code>]</p></div></div><div class="refsect1"><a name="idm214168457344"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><span class="command"><strong>systemd-udevd</strong></span> listens to kernel uevents.
       For every event, systemd-udevd executes matching instructions
       specified in udev rules. See <a href="udev.html"><span class="citerefentry"><span class="refentrytitle">udev</span>(7)</span></a>.</p><p>The behavior of the running daemon can be changed with
-    <span class="command"><strong>udevadm control</strong></span>.</p></div><div class="refsect1"><a name="idm214179730544"></a><h2 id="Options">Options<a class="headerlink" title="Permalink to this headline" href="#Options">¶</a></h2><div class="variablelist"><dl class="variablelist"><dt id="--daemon"><span class="term"><code class="option">--daemon</code></span><a class="headerlink" title="Permalink to this term" href="#--daemon">¶</a></dt><dd><p>Detach and run in the background.</p></dd><dt id="--debug"><span class="term"><code class="option">--debug</code></span><a class="headerlink" title="Permalink to this term" href="#--debug">¶</a></dt><dd><p>Print debug messages to standard error.</p></dd><dt id="--children-max="><span class="term"><code class="option">--children-max=</code></span><a class="headerlink" title="Permalink to this term" href="#--children-max=">¶</a></dt><dd><p>Limit the number of events executed in parallel.</p></dd><dt id="--exec-delay="><span class="term"><code class="option">--exec-delay=</code></span><a class="headerlink" title="Permalink to this term" href="#--exec-delay=">¶</a></dt><dd><p>Delay the execution of <code class="varname">RUN</code>
+    <span class="command"><strong>udevadm control</strong></span>.</p></div><div class="refsect1"><a name="idm214172352688"></a><h2 id="Options">Options<a class="headerlink" title="Permalink to this headline" href="#Options">¶</a></h2><div class="variablelist"><dl class="variablelist"><dt id="--daemon"><span class="term"><code class="option">--daemon</code></span><a class="headerlink" title="Permalink to this term" href="#--daemon">¶</a></dt><dd><p>Detach and run in the background.</p></dd><dt id="--debug"><span class="term"><code class="option">--debug</code></span><a class="headerlink" title="Permalink to this term" href="#--debug">¶</a></dt><dd><p>Print debug messages to standard error.</p></dd><dt id="--children-max="><span class="term"><code class="option">--children-max=</code></span><a class="headerlink" title="Permalink to this term" href="#--children-max=">¶</a></dt><dd><p>Limit the number of events executed in parallel.</p></dd><dt id="--exec-delay="><span class="term"><code class="option">--exec-delay=</code></span><a class="headerlink" title="Permalink to this term" href="#--exec-delay=">¶</a></dt><dd><p>Delay the execution of <code class="varname">RUN</code>
           instructions by the given number of seconds. This option
           might be useful when debugging system crashes during
           coldplug caused by loading non-working kernel
           <code class="option">late</code>, names will be resolved for every event.
           When set to <code class="option">never</code>, names will never be resolved
           and all devices will be owned by root.</p></dd><dt id="--help"><span class="term"><code class="option">--help</code></span><a class="headerlink" title="Permalink to this term" href="#--help">¶</a></dt><dd><p><a name="help-text"></a>Print a short help text and exit.
-    </p></dd><dt id="--version"><span class="term"><code class="option">--version</code></span><a class="headerlink" title="Permalink to this term" href="#--version">¶</a></dt><dd><p><a name="version-text"></a>Print a short version string and exit.</p></dd></dl></div></div><div class="refsect1"><a name="idm214183614768"></a><h2 id="Environment">Environment<a class="headerlink" title="Permalink to this headline" href="#Environment">¶</a></h2><div class="variablelist"><dl class="variablelist"><dt id="$UDEV_LOG="><span class="term"><code class="varname">$UDEV_LOG=</code></span><a class="headerlink" title="Permalink to this term" href="#%24UDEV_LOG=">¶</a></dt><dd><p>Set the logging priority.</p></dd></dl></div></div><div class="refsect1"><a name="idm214183604816"></a><h2 id="Kernel command line">Kernel command line<a class="headerlink" title="Permalink to this headline" href="#Kernel%20command%20line">¶</a></h2><div class="variablelist"><p>Parameters starting with "rd." will be read when
+    </p></dd><dt id="--version"><span class="term"><code class="option">--version</code></span><a class="headerlink" title="Permalink to this term" href="#--version">¶</a></dt><dd><p><a name="version-text"></a>Print a short version string and exit.</p></dd></dl></div></div><div class="refsect1"><a name="idm214172338224"></a><h2 id="Environment">Environment<a class="headerlink" title="Permalink to this headline" href="#Environment">¶</a></h2><div class="variablelist"><dl class="variablelist"><dt id="$UDEV_LOG="><span class="term"><code class="varname">$UDEV_LOG=</code></span><a class="headerlink" title="Permalink to this term" href="#%24UDEV_LOG=">¶</a></dt><dd><p>Set the logging priority.</p></dd></dl></div></div><div class="refsect1"><a name="idm214172327808"></a><h2 id="Kernel command line">Kernel command line<a class="headerlink" title="Permalink to this headline" href="#Kernel%20command%20line">¶</a></h2><div class="variablelist"><p>Parameters starting with "rd." will be read when
       <span class="command"><strong>systemd-udevd</strong></span> is used in an initrd.</p><dl class="variablelist"><dt id="udev.log-priority="><span class="term"><code class="varname">udev.log-priority=</code>, </span><span class="term"><code class="varname">rd.udev.log-priority=</code></span><a class="headerlink" title="Permalink to this term" href="#udev.log-priority=">¶</a></dt><dd><p>Set the logging priority.</p></dd><dt id="udev.children-max="><span class="term"><code class="varname">udev.children-max=</code>, </span><span class="term"><code class="varname">rd.udev.children-max=</code></span><a class="headerlink" title="Permalink to this term" href="#udev.children-max=">¶</a></dt><dd><p>Limit the number of events executed in parallel.</p></dd><dt id="udev.exec-delay="><span class="term"><code class="varname">udev.exec-delay=</code>, </span><span class="term"><code class="varname">rd.udev.exec-delay=</code></span><a class="headerlink" title="Permalink to this term" href="#udev.exec-delay=">¶</a></dt><dd><p>Delay the execution of <code class="varname">RUN</code> instructions by the given
           number of seconds. This option might be useful when
           debugging system crashes during coldplug caused by loading
           non-working kernel modules.</p></dd><dt id="net.ifnames="><span class="term"><code class="varname">net.ifnames=</code></span><a class="headerlink" title="Permalink to this term" href="#net.ifnames=">¶</a></dt><dd><p>Network interfaces are renamed to give them predictable names
-          when possible. It is enabled by default; specifying 0 disables it.</p></dd></dl></div></div><div class="refsect1"><a name="idm214183592656"></a><h2 id="Configuration file">Configuration file<a class="headerlink" title="Permalink to this headline" href="#Configuration%20file">¶</a></h2><p>udev expects its main configuration file at <code class="filename">/etc/udev/udev.conf</code>.
+          when possible. It is enabled by default; specifying 0 disables it.</p></dd></dl></div></div><div class="refsect1"><a name="idm214172315600"></a><h2 id="Configuration file">Configuration file<a class="headerlink" title="Permalink to this headline" href="#Configuration%20file">¶</a></h2><p>udev expects its main configuration file at <code class="filename">/etc/udev/udev.conf</code>.
    It consists of a set of variables allowing the user to override default udev values. All
    empty lines or lines beginning with '#' are ignored. The following variables can be
    set:</p><div class="variablelist"><dl class="variablelist"><dt id="udev_log"><span class="term"><code class="varname">udev_log</code></span><a class="headerlink" title="Permalink to this term" href="#udev_log">¶</a></dt><dd><p>The logging priority. Valid values are the numerical syslog priorities
          or their textual representations: <code class="option">err</code>, <code class="option">info</code>
-         and <code class="option">debug</code>.</p></dd></dl></div></div><div class="refsect1"><a name="idm214183587008"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p><a href="udev.html"><span class="citerefentry"><span class="refentrytitle">udev</span>(7)</span></a>, <a href="udevadm.html"><span class="citerefentry"><span class="refentrytitle">udevadm</span>(8)</span></a></p></div></div></body></html>
+         and <code class="option">debug</code>.</p></dd></dl></div></div><div class="refsect1"><a name="idm214172310000"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p><a href="udev.html"><span class="citerefentry"><span class="refentrytitle">udev</span>(7)</span></a>, <a href="udevadm.html"><span class="citerefentry"><span class="refentrytitle">udevadm</span>(8)</span></a></p></div></div></body></html>
diff --git a/man/systemd-update-done.8 b/man/systemd-update-done.8
new file mode 100644 (file)
index 0000000..cf3aadc
--- /dev/null
@@ -0,0 +1 @@
+.so man8/systemd-update-done.service.8
diff --git a/man/systemd-update-done.html b/man/systemd-update-done.html
new file mode 100644 (file)
index 0000000..f121f6f
--- /dev/null
@@ -0,0 +1,53 @@
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>systemd-update-done.service</title><meta name="generator" content="DocBook XSL Stylesheets V1.78.1"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><style>
+    a.headerlink {
+      color: #c60f0f;
+      font-size: 0.8em;
+      padding: 0 4px 0 4px;
+      text-decoration: none;
+      visibility: hidden;
+    }
+
+    a.headerlink:hover {
+      background-color: #c60f0f;
+      color: white;
+    }
+
+    h1:hover > a.headerlink, h2:hover > a.headerlink, h3:hover > a.headerlink, dt:hover > a.headerlink {
+      visibility: visible;
+    }
+  </style><a href="index.html">Index </a>·
+  <a href="systemd.directives.html">Directives </a>·
+  <a href="../python-systemd/index.html">Python </a>·
+  <a href="../libudev/index.html">libudev </a>·
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="systemd-update-done.service"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>systemd-update-done.service, systemd-update-done — Mark <code class="filename">/etc</code> and <code class="filename">/var</code> fully updated</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><p><code class="filename">systemd-update-done.service</code></p><p><code class="filename">/usr/lib/systemd/systemd-update-done</code></p></div><div class="refsect1"><a name="idm214182720160"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="filename">systemd-update-done.service</code>
+                is a service that is invoked as part of the first boot
+                after the vendor operating system resources in
+                <code class="filename">/usr</code> have been updated. This is
+                useful to implement offline updates of
+                <code class="filename">/usr</code> which might requires updates
+                to <code class="filename">/etc</code> or
+                <code class="filename">/var</code> on the following boot.</p><p><code class="filename">systemd-update-done.service</code>
+                updates the file modification time (mtime) of the
+                stamp files <code class="filename">/etc/.updated</code> and
+                <code class="filename">/var/.updated</code> to the modification
+                time of the <code class="filename">/usr</code> directory,
+                unless the stamp files are already newer.</p><p>Services that shall run after offline upgrades
+                of <code class="filename">/usr</code> should order themselves
+                before
+                <code class="filename">systemd-update-done.service</code>, and
+                use the <code class="varname">ConditionNeedsUpdate=</code> (see
+                <a href="systemd.unit.html"><span class="citerefentry"><span class="refentrytitle">systemd.unit</span>(5)</span></a>)
+                condition to make sure to run when
+                <code class="filename">/etc</code> or <code class="filename">/var</code>
+                are older than <code class="filename">/usr</code> according to
+                the modification times of the files described
+                above. This requires that updates to
+                <code class="filename">/usr</code> are always followed by an
+                update of the modification time of
+                <code class="filename">/usr</code>, for example by invoking
+                <a href="touch.html"><span class="citerefentry"><span class="refentrytitle">touch</span>(1)</span></a>
+                on it.</p></div><div class="refsect1"><a name="idm214186603664"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+                        <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
+                        <a href="systemd.unit.html"><span class="citerefentry"><span class="refentrytitle">systemd.unit</span>(5)</span></a>,
+                        <a href="touch.html"><span class="citerefentry"><span class="refentrytitle">touch</span>(1)</span></a>
+                </p></div></div></body></html>
diff --git a/man/systemd-update-done.service.8 b/man/systemd-update-done.service.8
new file mode 100644 (file)
index 0000000..1cee968
--- /dev/null
@@ -0,0 +1,73 @@
+'\" t
+.TH "SYSTEMD\-UPDATE\-DONE\&.SERVICE" "8" "" "systemd 215" "systemd-update-done.service"
+.\" -----------------------------------------------------------------
+.\" * Define some portability stuff
+.\" -----------------------------------------------------------------
+.\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+.\" http://bugs.debian.org/507673
+.\" http://lists.gnu.org/archive/html/groff/2009-02/msg00013.html
+.\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+.ie \n(.g .ds Aq \(aq
+.el       .ds Aq '
+.\" -----------------------------------------------------------------
+.\" * set default formatting
+.\" -----------------------------------------------------------------
+.\" disable hyphenation
+.nh
+.\" disable justification (adjust text to left margin only)
+.ad l
+.\" -----------------------------------------------------------------
+.\" * MAIN CONTENT STARTS HERE *
+.\" -----------------------------------------------------------------
+.SH "NAME"
+systemd-update-done.service, systemd-update-done \- Mark /etc and /var fully updated
+.SH "SYNOPSIS"
+.PP
+systemd\-update\-done\&.service
+.PP
+/usr/lib/systemd/systemd\-update\-done
+.SH "DESCRIPTION"
+.PP
+systemd\-update\-done\&.service
+is a service that is invoked as part of the first boot after the vendor operating system resources in
+/usr
+have been updated\&. This is useful to implement offline updates of
+/usr
+which might requires updates to
+/etc
+or
+/var
+on the following boot\&.
+.PP
+systemd\-update\-done\&.service
+updates the file modification time (mtime) of the stamp files
+/etc/\&.updated
+and
+/var/\&.updated
+to the modification time of the
+/usr
+directory, unless the stamp files are already newer\&.
+.PP
+Services that shall run after offline upgrades of
+/usr
+should order themselves before
+systemd\-update\-done\&.service, and use the
+\fIConditionNeedsUpdate=\fR
+(see
+\fBsystemd.unit\fR(5)) condition to make sure to run when
+/etc
+or
+/var
+are older than
+/usr
+according to the modification times of the files described above\&. This requires that updates to
+/usr
+are always followed by an update of the modification time of
+/usr, for example by invoking
+\fBtouch\fR(1)
+on it\&.
+.SH "SEE ALSO"
+.PP
+\fBsystemd\fR(1),
+\fBsystemd.unit\fR(5),
+\fBtouch\fR(1)
diff --git a/man/systemd-update-done.service.html b/man/systemd-update-done.service.html
new file mode 100644 (file)
index 0000000..f121f6f
--- /dev/null
@@ -0,0 +1,53 @@
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>systemd-update-done.service</title><meta name="generator" content="DocBook XSL Stylesheets V1.78.1"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><style>
+    a.headerlink {
+      color: #c60f0f;
+      font-size: 0.8em;
+      padding: 0 4px 0 4px;
+      text-decoration: none;
+      visibility: hidden;
+    }
+
+    a.headerlink:hover {
+      background-color: #c60f0f;
+      color: white;
+    }
+
+    h1:hover > a.headerlink, h2:hover > a.headerlink, h3:hover > a.headerlink, dt:hover > a.headerlink {
+      visibility: visible;
+    }
+  </style><a href="index.html">Index </a>·
+  <a href="systemd.directives.html">Directives </a>·
+  <a href="../python-systemd/index.html">Python </a>·
+  <a href="../libudev/index.html">libudev </a>·
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="systemd-update-done.service"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>systemd-update-done.service, systemd-update-done — Mark <code class="filename">/etc</code> and <code class="filename">/var</code> fully updated</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><p><code class="filename">systemd-update-done.service</code></p><p><code class="filename">/usr/lib/systemd/systemd-update-done</code></p></div><div class="refsect1"><a name="idm214182720160"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="filename">systemd-update-done.service</code>
+                is a service that is invoked as part of the first boot
+                after the vendor operating system resources in
+                <code class="filename">/usr</code> have been updated. This is
+                useful to implement offline updates of
+                <code class="filename">/usr</code> which might requires updates
+                to <code class="filename">/etc</code> or
+                <code class="filename">/var</code> on the following boot.</p><p><code class="filename">systemd-update-done.service</code>
+                updates the file modification time (mtime) of the
+                stamp files <code class="filename">/etc/.updated</code> and
+                <code class="filename">/var/.updated</code> to the modification
+                time of the <code class="filename">/usr</code> directory,
+                unless the stamp files are already newer.</p><p>Services that shall run after offline upgrades
+                of <code class="filename">/usr</code> should order themselves
+                before
+                <code class="filename">systemd-update-done.service</code>, and
+                use the <code class="varname">ConditionNeedsUpdate=</code> (see
+                <a href="systemd.unit.html"><span class="citerefentry"><span class="refentrytitle">systemd.unit</span>(5)</span></a>)
+                condition to make sure to run when
+                <code class="filename">/etc</code> or <code class="filename">/var</code>
+                are older than <code class="filename">/usr</code> according to
+                the modification times of the files described
+                above. This requires that updates to
+                <code class="filename">/usr</code> are always followed by an
+                update of the modification time of
+                <code class="filename">/usr</code>, for example by invoking
+                <a href="touch.html"><span class="citerefentry"><span class="refentrytitle">touch</span>(1)</span></a>
+                on it.</p></div><div class="refsect1"><a name="idm214186603664"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+                        <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
+                        <a href="systemd.unit.html"><span class="citerefentry"><span class="refentrytitle">systemd.unit</span>(5)</span></a>,
+                        <a href="touch.html"><span class="citerefentry"><span class="refentrytitle">touch</span>(1)</span></a>
+                </p></div></div></body></html>
diff --git a/man/systemd-update-done.service.xml b/man/systemd-update-done.service.xml
new file mode 100644 (file)
index 0000000..a791bea
--- /dev/null
@@ -0,0 +1,101 @@
+<?xml version="1.0"?>
+<!--*-nxml-*-->
+<!DOCTYPE refentry PUBLIC "-//OASIS//DTD DocBook XML V4.2//EN" "http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd">
+<!--
+  This file is part of systemd.
+
+  Copyright 2014 Lennart Poettering
+
+  systemd is free software; you can redistribute it and/or modify it
+  under the terms of the GNU Lesser General Public License as published by
+  the Free Software Foundation; either version 2.1 of the License, or
+  (at your option) any later version.
+
+  systemd is distributed in the hope that it will be useful, but
+  WITHOUT ANY WARRANTY; without even the implied warranty of
+  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+  Lesser General Public License for more details.
+
+  You should have received a copy of the GNU Lesser General Public License
+  along with systemd; If not, see <http://www.gnu.org/licenses/>.
+-->
+<refentry id="systemd-update-done.service">
+
+        <refentryinfo>
+                <title>systemd-update-done.service</title>
+                <productname>systemd</productname>
+
+                <authorgroup>
+                        <author>
+                                <contrib>Developer</contrib>
+                                <firstname>Lennart</firstname>
+                                <surname>Poettering</surname>
+                                <email>lennart@poettering.net</email>
+                        </author>
+                </authorgroup>
+        </refentryinfo>
+
+        <refmeta>
+                <refentrytitle>systemd-update-done.service</refentrytitle>
+                <manvolnum>8</manvolnum>
+        </refmeta>
+
+        <refnamediv>
+                <refname>systemd-update-done.service</refname>
+                <refname>systemd-update-done</refname>
+                <refpurpose>Mark <filename>/etc</filename> and <filename>/var</filename> fully updated</refpurpose>
+        </refnamediv>
+
+        <refsynopsisdiv>
+                <para><filename>systemd-update-done.service</filename></para>
+                <para><filename>/usr/lib/systemd/systemd-update-done</filename></para>
+        </refsynopsisdiv>
+
+        <refsect1>
+                <title>Description</title>
+
+                <para><filename>systemd-update-done.service</filename>
+                is a service that is invoked as part of the first boot
+                after the vendor operating system resources in
+                <filename>/usr</filename> have been updated. This is
+                useful to implement offline updates of
+                <filename>/usr</filename> which might requires updates
+                to <filename>/etc</filename> or
+                <filename>/var</filename> on the following boot.</para>
+
+                <para><filename>systemd-update-done.service</filename>
+                updates the file modification time (mtime) of the
+                stamp files <filename>/etc/.updated</filename> and
+                <filename>/var/.updated</filename> to the modification
+                time of the <filename>/usr</filename> directory,
+                unless the stamp files are already newer.</para>
+
+                <para>Services that shall run after offline upgrades
+                of <filename>/usr</filename> should order themselves
+                before
+                <filename>systemd-update-done.service</filename>, and
+                use the <varname>ConditionNeedsUpdate=</varname> (see
+                <citerefentry><refentrytitle>systemd.unit</refentrytitle><manvolnum>5</manvolnum></citerefentry>)
+                condition to make sure to run when
+                <filename>/etc</filename> or <filename>/var</filename>
+                are older than <filename>/usr</filename> according to
+                the modification times of the files described
+                above. This requires that updates to
+                <filename>/usr</filename> are always followed by an
+                update of the modification time of
+                <filename>/usr</filename>, for example by invoking
+                <citerefentry><refentrytitle>touch</refentrytitle><manvolnum>1</manvolnum></citerefentry>
+                on it.</para>
+
+        </refsect1>
+
+        <refsect1>
+                <title>See Also</title>
+                <para>
+                        <citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
+                        <citerefentry><refentrytitle>systemd.unit</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
+                        <citerefentry><refentrytitle>touch</refentrytitle><manvolnum>1</manvolnum></citerefentry>
+                </para>
+        </refsect1>
+
+</refentry>
index 707e1de3d2c39ffcb807eb172f09ade321906d19..cd42c35b4c58f527a318fadd8838037dc0ade731 100644 (file)
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="systemd-update-utmp.service"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>systemd-update-utmp.service, systemd-update-utmp-runlevel.service, systemd-update-utmp — Write audit and utmp updates at bootup, runlevel
-                changes and shutdown</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><p><code class="filename">systemd-update-utmp.service</code></p><p><code class="filename">systemd-update-utmp-runlevel.service</code></p><p><code class="filename">/usr/lib/systemd/systemd-update-utmp</code></p></div><div class="refsect1"><a name="idm214174315920"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="filename">systemd-update-utmp-runlevel.service</code>
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="systemd-update-utmp.service"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>systemd-update-utmp.service, systemd-update-utmp-runlevel.service, systemd-update-utmp — Write audit and utmp updates at bootup, runlevel
+                changes and shutdown</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><p><code class="filename">systemd-update-utmp.service</code></p><p><code class="filename">systemd-update-utmp-runlevel.service</code></p><p><code class="filename">/usr/lib/systemd/systemd-update-utmp</code></p></div><div class="refsect1"><a name="idm214191805296"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="filename">systemd-update-utmp-runlevel.service</code>
                 is a service that writes SysV runlevel changes to utmp
                 and wtmp, as well as the audit logs, as they
                 occur. <code class="filename">systemd-update-utmp.service</code>
-                does the same for system reboots and shutdown requests.</p></div><div class="refsect1"><a name="idm214174313280"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+                does the same for system reboots and shutdown requests.</p></div><div class="refsect1"><a name="idm214191802656"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
                         <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
                         <a href="utmp.html"><span class="citerefentry"><span class="refentrytitle">utmp</span>(5)</span></a>,
                         <a href="auditd.html"><span class="citerefentry"><span class="refentrytitle">auditd</span>(8)</span></a>
index 707e1de3d2c39ffcb807eb172f09ade321906d19..cd42c35b4c58f527a318fadd8838037dc0ade731 100644 (file)
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="systemd-update-utmp.service"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>systemd-update-utmp.service, systemd-update-utmp-runlevel.service, systemd-update-utmp — Write audit and utmp updates at bootup, runlevel
-                changes and shutdown</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><p><code class="filename">systemd-update-utmp.service</code></p><p><code class="filename">systemd-update-utmp-runlevel.service</code></p><p><code class="filename">/usr/lib/systemd/systemd-update-utmp</code></p></div><div class="refsect1"><a name="idm214174315920"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="filename">systemd-update-utmp-runlevel.service</code>
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="systemd-update-utmp.service"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>systemd-update-utmp.service, systemd-update-utmp-runlevel.service, systemd-update-utmp — Write audit and utmp updates at bootup, runlevel
+                changes and shutdown</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><p><code class="filename">systemd-update-utmp.service</code></p><p><code class="filename">systemd-update-utmp-runlevel.service</code></p><p><code class="filename">/usr/lib/systemd/systemd-update-utmp</code></p></div><div class="refsect1"><a name="idm214191805296"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="filename">systemd-update-utmp-runlevel.service</code>
                 is a service that writes SysV runlevel changes to utmp
                 and wtmp, as well as the audit logs, as they
                 occur. <code class="filename">systemd-update-utmp.service</code>
-                does the same for system reboots and shutdown requests.</p></div><div class="refsect1"><a name="idm214174313280"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+                does the same for system reboots and shutdown requests.</p></div><div class="refsect1"><a name="idm214191802656"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
                         <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
                         <a href="utmp.html"><span class="citerefentry"><span class="refentrytitle">utmp</span>(5)</span></a>,
                         <a href="auditd.html"><span class="citerefentry"><span class="refentrytitle">auditd</span>(8)</span></a>
index de6f3acfd743dbd2b18d0c9c3d9d2c8a5edbf43f..14b1b72d5216f301900779fa8fe83119e4b77af1 100644 (file)
@@ -1,5 +1,5 @@
 '\" t
-.TH "SYSTEMD\-UPDATE\-UTMP\&.SERVICE" "8" "" "systemd 214" "systemd-update-utmp.service"
+.TH "SYSTEMD\-UPDATE\-UTMP\&.SERVICE" "8" "" "systemd 215" "systemd-update-utmp.service"
 .\" -----------------------------------------------------------------
 .\" * Define some portability stuff
 .\" -----------------------------------------------------------------
index 707e1de3d2c39ffcb807eb172f09ade321906d19..cd42c35b4c58f527a318fadd8838037dc0ade731 100644 (file)
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="systemd-update-utmp.service"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>systemd-update-utmp.service, systemd-update-utmp-runlevel.service, systemd-update-utmp — Write audit and utmp updates at bootup, runlevel
-                changes and shutdown</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><p><code class="filename">systemd-update-utmp.service</code></p><p><code class="filename">systemd-update-utmp-runlevel.service</code></p><p><code class="filename">/usr/lib/systemd/systemd-update-utmp</code></p></div><div class="refsect1"><a name="idm214174315920"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="filename">systemd-update-utmp-runlevel.service</code>
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="systemd-update-utmp.service"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>systemd-update-utmp.service, systemd-update-utmp-runlevel.service, systemd-update-utmp — Write audit and utmp updates at bootup, runlevel
+                changes and shutdown</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><p><code class="filename">systemd-update-utmp.service</code></p><p><code class="filename">systemd-update-utmp-runlevel.service</code></p><p><code class="filename">/usr/lib/systemd/systemd-update-utmp</code></p></div><div class="refsect1"><a name="idm214191805296"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="filename">systemd-update-utmp-runlevel.service</code>
                 is a service that writes SysV runlevel changes to utmp
                 and wtmp, as well as the audit logs, as they
                 occur. <code class="filename">systemd-update-utmp.service</code>
-                does the same for system reboots and shutdown requests.</p></div><div class="refsect1"><a name="idm214174313280"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+                does the same for system reboots and shutdown requests.</p></div><div class="refsect1"><a name="idm214191802656"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
                         <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
                         <a href="utmp.html"><span class="citerefentry"><span class="refentrytitle">utmp</span>(5)</span></a>,
                         <a href="auditd.html"><span class="citerefentry"><span class="refentrytitle">auditd</span>(8)</span></a>
index bca4e9f236a6376562d62a6baf7a302dcf1dd02a..49196d383635695f9f318fa4aaebc0fa4ce923e5 100644 (file)
@@ -19,7 +19,7 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="systemd-user-sessions.service"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>systemd-user-sessions.service, systemd-user-sessions — Permit user logins after boot, prohibit user logins at shutdown</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><p><code class="filename">systemd-user-sessions.service</code></p><p><code class="filename">/usr/lib/systemd/systemd-user-sessions</code></p></div><div class="refsect1"><a name="idm214198839808"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="filename">systemd-user-sessions.service</code>
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="systemd-user-sessions.service"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>systemd-user-sessions.service, systemd-user-sessions — Permit user logins after boot, prohibit user logins at shutdown</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><p><code class="filename">systemd-user-sessions.service</code></p><p><code class="filename">/usr/lib/systemd/systemd-user-sessions</code></p></div><div class="refsect1"><a name="idm214173200672"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="filename">systemd-user-sessions.service</code>
                 is a service that controls user logins. After basic
                 system initialization is complete it removes
                 <code class="filename">/run/nologin</code>, thus permitting
@@ -27,7 +27,7 @@
                 <code class="filename">/run/nologin</code>, thus prohibiting
                 further logins. At the same time it also kills all
                 user processes, so that system shutdown may proceed
-                without any remaining user processes around.</p></div><div class="refsect1"><a name="idm214198836176"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+                without any remaining user processes around.</p></div><div class="refsect1"><a name="idm214173197040"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
                         <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
                         <a href="systemd-logind.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-logind.service</span>(8)</span></a>,
                         <a href="pam_nologin.html"><span class="citerefentry"><span class="refentrytitle">pam_nologin</span>(8)</span></a>
index 82e42365f11b2fe74731b2d401ef3b4a5fc8a88e..52d68ac1e9fc61291ab52b60c87b45c04f4320b7 100644 (file)
@@ -1,5 +1,5 @@
 '\" t
-.TH "SYSTEMD\-USER\-SESSIONS\&.SERVICE" "8" "" "systemd 214" "systemd-user-sessions.service"
+.TH "SYSTEMD\-USER\-SESSIONS\&.SERVICE" "8" "" "systemd 215" "systemd-user-sessions.service"
 .\" -----------------------------------------------------------------
 .\" * Define some portability stuff
 .\" -----------------------------------------------------------------
index bca4e9f236a6376562d62a6baf7a302dcf1dd02a..49196d383635695f9f318fa4aaebc0fa4ce923e5 100644 (file)
@@ -19,7 +19,7 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="systemd-user-sessions.service"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>systemd-user-sessions.service, systemd-user-sessions — Permit user logins after boot, prohibit user logins at shutdown</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><p><code class="filename">systemd-user-sessions.service</code></p><p><code class="filename">/usr/lib/systemd/systemd-user-sessions</code></p></div><div class="refsect1"><a name="idm214198839808"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="filename">systemd-user-sessions.service</code>
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="systemd-user-sessions.service"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>systemd-user-sessions.service, systemd-user-sessions — Permit user logins after boot, prohibit user logins at shutdown</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><p><code class="filename">systemd-user-sessions.service</code></p><p><code class="filename">/usr/lib/systemd/systemd-user-sessions</code></p></div><div class="refsect1"><a name="idm214173200672"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="filename">systemd-user-sessions.service</code>
                 is a service that controls user logins. After basic
                 system initialization is complete it removes
                 <code class="filename">/run/nologin</code>, thus permitting
@@ -27,7 +27,7 @@
                 <code class="filename">/run/nologin</code>, thus prohibiting
                 further logins. At the same time it also kills all
                 user processes, so that system shutdown may proceed
-                without any remaining user processes around.</p></div><div class="refsect1"><a name="idm214198836176"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+                without any remaining user processes around.</p></div><div class="refsect1"><a name="idm214173197040"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
                         <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
                         <a href="systemd-logind.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-logind.service</span>(8)</span></a>,
                         <a href="pam_nologin.html"><span class="citerefentry"><span class="refentrytitle">pam_nologin</span>(8)</span></a>
index 0631f18dfd75318412394ce075591e695d580886..14058c0a68877061ca605786ed2af7710c7b2b7c 100644 (file)
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="systemd-system.conf"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>systemd-system.conf, systemd-user.conf — System and session service manager configuration file</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><p><code class="filename">/etc/systemd/system.conf</code></p><p><code class="filename">/etc/systemd/user.conf</code></p></div><div class="refsect1"><a name="idm214192577744"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p>When run as system instance systemd reads the
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="systemd-system.conf"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>systemd-system.conf, systemd-user.conf — System and session service manager configuration file</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><p><code class="filename">/etc/systemd/system.conf</code></p><p><code class="filename">/etc/systemd/user.conf</code></p></div><div class="refsect1"><a name="idm214192121936"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p>When run as system instance systemd reads the
                 configuration file <code class="filename">system.conf</code>,
                 otherwise <code class="filename">user.conf</code>. These
                 configuration files contain a few settings controlling
-                basic manager operations.</p></div><div class="refsect1"><a name="idm214192574992"></a><h2 id="Options">Options<a class="headerlink" title="Permalink to this headline" href="#Options">¶</a></h2><p>All options are configured in the
+                basic manager operations.</p></div><div class="refsect1"><a name="idm214192119184"></a><h2 id="Options">Options<a class="headerlink" title="Permalink to this headline" href="#Options">¶</a></h2><p>All options are configured in the
                 "<code class="literal">[Manager]</code>" section:</p><div class="variablelist"><dl class="variablelist"><dt id="LogLevel="><span class="term"><code class="varname">LogLevel=</code>, </span><span class="term"><code class="varname">LogTarget=</code>, </span><span class="term"><code class="varname">LogColor=</code>, </span><span class="term"><code class="varname">LogLocation=</code>, </span><span class="term"><code class="varname">DumpCore=yes</code>, </span><span class="term"><code class="varname">CrashShell=no</code>, </span><span class="term"><code class="varname">ShowStatus=yes</code>, </span><span class="term"><code class="varname">CrashChVT=1</code>, </span><span class="term"><code class="varname">DefaultStandardOutput=journal</code>, </span><span class="term"><code class="varname">DefaultStandardError=inherit</code></span><a class="headerlink" title="Permalink to this term" href="#LogLevel=">¶</a></dt><dd><p>Configures various
                                 parameters of basic manager
                                 operation. These options may be
                                 directives. Note that these resource
                                 limits are only defaults for units,
                                 they are not applied to PID 1
-                                itself.</p></dd></dl></div></div><div class="refsect1"><a name="idm214191475072"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+                                itself.</p></dd></dl></div></div><div class="refsect1"><a name="idm214191021312"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
                           <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
                           <a href="systemd.directives.html"><span class="citerefentry"><span class="refentrytitle">systemd.directives</span>(7)</span></a>,
                           <a href="systemd.exec.html"><span class="citerefentry"><span class="refentrytitle">systemd.exec</span>(5)</span></a>,
index 6f5c68ddbb6e5ef7dbfbb218b31b450b2bc96eb1..815cb91ef6d9c2c0b97c2a078bd971f1dff896dc 100644 (file)
@@ -19,7 +19,7 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="systemd-vconsole-setup.service"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>systemd-vconsole-setup.service, systemd-vconsole-setup — Configure the virtual console at boot</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><p><code class="filename">systemd-vconsole-setup.service</code></p><p><code class="filename">/usr/lib/systemd/systemd-vconsole-setup</code></p></div><div class="refsect1"><a name="idm214182834256"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="filename">systemd-vconsole-setup.service</code>
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="systemd-vconsole-setup.service"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>systemd-vconsole-setup.service, systemd-vconsole-setup — Configure the virtual console at boot</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><p><code class="filename">systemd-vconsole-setup.service</code></p><p><code class="filename">/usr/lib/systemd/systemd-vconsole-setup</code></p></div><div class="refsect1"><a name="idm214182314736"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="filename">systemd-vconsole-setup.service</code>
                 is an early-boot service that configures the virtual
                 console font and console keymap. Internally it calls
                 <a href="loadkeys.html"><span class="citerefentry"><span class="refentrytitle">loadkeys</span>(1)</span></a>
@@ -27,7 +27,7 @@
                 <a href="setfont.html"><span class="citerefentry"><span class="refentrytitle">setfont</span>(8)</span></a>.</p><p>See
                 <a href="vconsole.conf.html"><span class="citerefentry"><span class="refentrytitle">vconsole.conf</span>(5)</span></a>
                 for information about the configuration files understood by this
-                service.</p></div><div class="refsect1"><a name="idm214183818528"></a><h2 id="Kernel Command Line">Kernel Command Line<a class="headerlink" title="Permalink to this headline" href="#Kernel%20Command%20Line">¶</a></h2><p>A few configuration parameters from
+                service.</p></div><div class="refsect1"><a name="idm214182309712"></a><h2 id="Kernel Command Line">Kernel Command Line<a class="headerlink" title="Permalink to this headline" href="#Kernel%20Command%20Line">¶</a></h2><p>A few configuration parameters from
                 <code class="filename">vconsole.conf</code> may be overridden on
                 the kernel command line:</p><div class="variablelist"><dl class="variablelist"><dt id="vconsole.keymap="><span class="term"><code class="varname">vconsole.keymap=</code>, </span><span class="term"><code class="varname">vconsole.keymap.toggle=</code></span><a class="headerlink" title="Permalink to this term" href="#vconsole.keymap=">¶</a></dt><dd><p>Overrides the key
                                 mapping table for the keyboard and the
@@ -35,7 +35,7 @@
                                 font, the console map, and the unicode
                                 font map.</p></dd></dl></div><p>See
                 <a href="vconsole.conf.html"><span class="citerefentry"><span class="refentrytitle">vconsole.conf</span>(5)</span></a>
-                for information about these settings.</p></div><div class="refsect1"><a name="idm214184454656"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+                for information about these settings.</p></div><div class="refsect1"><a name="idm214182301088"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
                         <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
                         <a href="vconsole.conf.html"><span class="citerefentry"><span class="refentrytitle">vconsole.conf</span>(5)</span></a>,
                         <a href="loadkeys.html"><span class="citerefentry"><span class="refentrytitle">loadkeys</span>(1)</span></a>,
index 72f59ec737f1099a9c41e9237fc0e2df03c18133..ed5e954f478dd6e0e0331ecb89505cee7b15a02e 100644 (file)
@@ -1,5 +1,5 @@
 '\" t
-.TH "SYSTEMD\-VCONSOLE\-SETUP\&.SERVICE" "8" "" "systemd 214" "systemd-vconsole-setup.service"
+.TH "SYSTEMD\-VCONSOLE\-SETUP\&.SERVICE" "8" "" "systemd 215" "systemd-vconsole-setup.service"
 .\" -----------------------------------------------------------------
 .\" * Define some portability stuff
 .\" -----------------------------------------------------------------
index 6f5c68ddbb6e5ef7dbfbb218b31b450b2bc96eb1..815cb91ef6d9c2c0b97c2a078bd971f1dff896dc 100644 (file)
@@ -19,7 +19,7 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="systemd-vconsole-setup.service"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>systemd-vconsole-setup.service, systemd-vconsole-setup — Configure the virtual console at boot</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><p><code class="filename">systemd-vconsole-setup.service</code></p><p><code class="filename">/usr/lib/systemd/systemd-vconsole-setup</code></p></div><div class="refsect1"><a name="idm214182834256"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="filename">systemd-vconsole-setup.service</code>
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="systemd-vconsole-setup.service"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>systemd-vconsole-setup.service, systemd-vconsole-setup — Configure the virtual console at boot</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><p><code class="filename">systemd-vconsole-setup.service</code></p><p><code class="filename">/usr/lib/systemd/systemd-vconsole-setup</code></p></div><div class="refsect1"><a name="idm214182314736"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><code class="filename">systemd-vconsole-setup.service</code>
                 is an early-boot service that configures the virtual
                 console font and console keymap. Internally it calls
                 <a href="loadkeys.html"><span class="citerefentry"><span class="refentrytitle">loadkeys</span>(1)</span></a>
@@ -27,7 +27,7 @@
                 <a href="setfont.html"><span class="citerefentry"><span class="refentrytitle">setfont</span>(8)</span></a>.</p><p>See
                 <a href="vconsole.conf.html"><span class="citerefentry"><span class="refentrytitle">vconsole.conf</span>(5)</span></a>
                 for information about the configuration files understood by this
-                service.</p></div><div class="refsect1"><a name="idm214183818528"></a><h2 id="Kernel Command Line">Kernel Command Line<a class="headerlink" title="Permalink to this headline" href="#Kernel%20Command%20Line">¶</a></h2><p>A few configuration parameters from
+                service.</p></div><div class="refsect1"><a name="idm214182309712"></a><h2 id="Kernel Command Line">Kernel Command Line<a class="headerlink" title="Permalink to this headline" href="#Kernel%20Command%20Line">¶</a></h2><p>A few configuration parameters from
                 <code class="filename">vconsole.conf</code> may be overridden on
                 the kernel command line:</p><div class="variablelist"><dl class="variablelist"><dt id="vconsole.keymap="><span class="term"><code class="varname">vconsole.keymap=</code>, </span><span class="term"><code class="varname">vconsole.keymap.toggle=</code></span><a class="headerlink" title="Permalink to this term" href="#vconsole.keymap=">¶</a></dt><dd><p>Overrides the key
                                 mapping table for the keyboard and the
@@ -35,7 +35,7 @@
                                 font, the console map, and the unicode
                                 font map.</p></dd></dl></div><p>See
                 <a href="vconsole.conf.html"><span class="citerefentry"><span class="refentrytitle">vconsole.conf</span>(5)</span></a>
-                for information about these settings.</p></div><div class="refsect1"><a name="idm214184454656"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+                for information about these settings.</p></div><div class="refsect1"><a name="idm214182301088"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
                         <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
                         <a href="vconsole.conf.html"><span class="citerefentry"><span class="refentrytitle">vconsole.conf</span>(5)</span></a>,
                         <a href="loadkeys.html"><span class="citerefentry"><span class="refentrytitle">loadkeys</span>(1)</span></a>,
index 78aff3e4031dc0f70726e2fd7ff28b90040ddc85..2c0de3ecb821eed5ecd1edc2dd269ce0f4dcbc6a 100644 (file)
@@ -1,5 +1,5 @@
 '\" t
-.TH "SYSTEMD" "1" "" "systemd 214" "systemd"
+.TH "SYSTEMD" "1" "" "systemd 215" "systemd"
 .\" -----------------------------------------------------------------
 .\" * Define some portability stuff
 .\" -----------------------------------------------------------------
index e88a207215ddc8b54b4ed5bf850051210ea0f41d..c9c974f6441d2f59b300b82235d2314be96b5fde 100644 (file)
@@ -1,5 +1,5 @@
 '\" t
-.TH "SYSTEMD\&.AUTOMOUNT" "5" "" "systemd 214" "systemd.automount"
+.TH "SYSTEMD\&.AUTOMOUNT" "5" "" "systemd 215" "systemd.automount"
 .\" -----------------------------------------------------------------
 .\" * Define some portability stuff
 .\" -----------------------------------------------------------------
index de47b2fc079907472ced955c0db61f0e01e9ad36..9929494976a36b439e38cc8ebb882e62f87005a2 100644 (file)
@@ -19,7 +19,7 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="systemd.automount"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>systemd.automount — Automount unit configuration</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><p><code class="filename"><em class="replaceable"><code>automount</code></em>.automount</code></p></div><div class="refsect1"><a name="idm214184377216"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p>A unit configuration file whose name ends in
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="systemd.automount"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>systemd.automount — Automount unit configuration</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><p><code class="filename"><em class="replaceable"><code>automount</code></em>.automount</code></p></div><div class="refsect1"><a name="idm214167439760"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p>A unit configuration file whose name ends in
                 "<code class="literal">.automount</code>" encodes information
                 about a file system automount point controlled and
                 supervised by systemd.</p><p>This man page lists the configuration options
                 on-demand mounting as well as parallelized mounting of
                 file systems.</p><p>If an automount point is beneath another mount
                 point in the file system hierarchy, a dependency
-                between both units is created automatically.</p></div><div class="refsect1"><a name="idm214182952224"></a><h2 id="fstab"><code class="filename">fstab</code><a class="headerlink" title="Permalink to this headline" href="#fstab">¶</a></h2><p>Automount units may either be configured via unit
+                between both units is created automatically.</p></div><div class="refsect1"><a name="idm214168557664"></a><h2 id="fstab"><code class="filename">fstab</code><a class="headerlink" title="Permalink to this headline" href="#fstab">¶</a></h2><p>Automount units may either be configured via unit
                 files, or via <code class="filename">/etc/fstab</code> (see
                 <a href="fstab.html"><span class="citerefentry"><span class="refentrytitle">fstab</span>(5)</span></a>
                 for details).</p><p>For details how systemd parses
                 <code class="filename">/etc/fstab</code> see
                 <a href="systemd.mount.html"><span class="citerefentry"><span class="refentrytitle">systemd.mount</span>(5)</span></a>.</p><p>If an automount point is configured in both
                 <code class="filename">/etc/fstab</code> and a unit file, the
-                configuration in the latter takes precedence.</p></div><div class="refsect1"><a name="idm214182946096"></a><h2 id="Options">Options<a class="headerlink" title="Permalink to this headline" href="#Options">¶</a></h2><p>Automount files must include an [Automount]
+                configuration in the latter takes precedence.</p></div><div class="refsect1"><a name="idm214167940944"></a><h2 id="Options">Options<a class="headerlink" title="Permalink to this headline" href="#Options">¶</a></h2><p>Automount files must include an [Automount]
                 section, which carries information about the file
                 system automount points it supervises. The options
                 specific to the [Automount] section of automount units
@@ -75,7 +75,7 @@
                                 creating these directories. Takes an
                                 access mode in octal
                                 notation. Defaults to
-                                0755.</p></dd></dl></div></div><div class="refsect1"><a name="idm214184544896"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+                                0755.</p></dd></dl></div></div><div class="refsect1"><a name="idm214169148816"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
                           <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
                           <a href="systemctl.html"><span class="citerefentry"><span class="refentrytitle">systemctl</span>(8)</span></a>,
                           <a href="systemd.unit.html"><span class="citerefentry"><span class="refentrytitle">systemd.unit</span>(5)</span></a>,
index 9a2086119e7e60cff2cb00c65e7dce393d6e98a6..1cf66eff1f3ee291635107be35d2f237085c5fa4 100644 (file)
@@ -1,5 +1,5 @@
 '\" t
-.TH "SYSTEMD\&.DEVICE" "5" "" "systemd 214" "systemd.device"
+.TH "SYSTEMD\&.DEVICE" "5" "" "systemd 215" "systemd.device"
 .\" -----------------------------------------------------------------
 .\" * Define some portability stuff
 .\" -----------------------------------------------------------------
index 3f07c4f46e53873187ee91a5d6ae9dd334b78403..bf19e5d499091978c39ae322866ed6a7f3e41ea8 100644 (file)
@@ -19,7 +19,7 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="systemd.device"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>systemd.device — Device unit configuration</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><p><code class="filename"><em class="replaceable"><code>device</code></em>.device</code></p></div><div class="refsect1"><a name="idm214177392224"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p>A unit configuration file whose name ends in
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="systemd.device"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>systemd.device — Device unit configuration</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><p><code class="filename"><em class="replaceable"><code>device</code></em>.device</code></p></div><div class="refsect1"><a name="idm214189737152"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p>A unit configuration file whose name ends in
                 "<code class="literal">.device</code>" encodes information about
                 a device unit as exposed in the
                 sysfs/<a href="udev.html"><span class="citerefentry"><span class="refentrytitle">udev</span>(7)</span></a>
@@ -46,7 +46,7 @@
                 in systemd as <code class="filename">dev-sda5.device</code>. For
                 details about the escaping logic used to convert a
                 file system path to a unit name see
-                <a href="systemd.unit.html"><span class="citerefentry"><span class="refentrytitle">systemd.unit</span>(5)</span></a>.</p></div><div class="refsect1"><a name="idm214175966432"></a><h2 id="The udev Database">The udev Database<a class="headerlink" title="Permalink to this headline" href="#The%20udev%20Database">¶</a></h2><p>The settings of device units may either be
+                <a href="systemd.unit.html"><span class="citerefentry"><span class="refentrytitle">systemd.unit</span>(5)</span></a>.</p></div><div class="refsect1"><a name="idm214187635920"></a><h2 id="The udev Database">The udev Database<a class="headerlink" title="Permalink to this headline" href="#The%20udev%20Database">¶</a></h2><p>The settings of device units may either be
                 configured via unit files, or directly from the udev
                 database (which is recommended). The following udev device
                 properties are understood by systemd:</p><div class="variablelist"><dl class="variablelist"><dt id="SYSTEMD_WANTS="><span class="term"><code class="varname">SYSTEMD_WANTS=</code>, </span><span class="term"><code class="varname">SYSTEMD_USER_WANTS=</code></span><a class="headerlink" title="Permalink to this term" href="#SYSTEMD_WANTS=">¶</a></dt><dd><p>Adds dependencies of
@@ -96,7 +96,7 @@
                                 <code class="varname">SYSTEMD_READY=0</code> is
                                 set for a device.</p></dd><dt id="ID_MODEL_FROM_DATABASE="><span class="term"><code class="varname">ID_MODEL_FROM_DATABASE=</code>, </span><span class="term"><code class="varname">ID_MODEL=</code></span><a class="headerlink" title="Permalink to this term" href="#ID_MODEL_FROM_DATABASE=">¶</a></dt><dd><p>If set, this property is
                                 used as description string for the
-                                device unit.</p></dd></dl></div></div><div class="refsect1"><a name="idm214177518320"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+                                device unit.</p></dd></dl></div></div><div class="refsect1"><a name="idm214189381632"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
                           <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
                           <a href="systemctl.html"><span class="citerefentry"><span class="refentrytitle">systemctl</span>(8)</span></a>,
                           <a href="systemd.unit.html"><span class="citerefentry"><span class="refentrytitle">systemd.unit</span>(5)</span></a>,
index f3eb42d6285e382de967a346f42d472fcdf27128..eb0f053388832f00a3d914262926ff6d3e100a0c 100644 (file)
@@ -1,5 +1,5 @@
 '\" t
-.TH "SYSTEMD\&.DIRECTIVES" "7" "" "systemd 214" "systemd.directives"
+.TH "SYSTEMD\&.DIRECTIVES" "7" "" "systemd 215" "systemd.directives"
 .\" -----------------------------------------------------------------
 .\" * Define some portability stuff
 .\" -----------------------------------------------------------------
@@ -205,6 +205,11 @@ Directives for configuring units, used in unit files\&.
 \fBsystemd.unit\fR(5)
 .RE
 .PP
+\fIConditionNeedsUpdate=\fR
+.RS 4
+\fBsystemd.unit\fR(5)
+.RE
+.PP
 \fIConditionNull=\fR
 .RS 4
 \fBsystemd.unit\fR(5)
@@ -260,6 +265,11 @@ Directives for configuring units, used in unit files\&.
 \fBsystemd.unit\fR(5)
 .RE
 .PP
+\fIDefaultInstance=\fR
+.RS 4
+\fBsystemd.unit\fR(5)
+.RE
+.PP
 \fIDescription=\fR
 .RS 4
 \fBsystemd.unit\fR(5)
@@ -832,6 +842,11 @@ Directives for configuring units, used in unit files\&.
 \fBsystemd.service\fR(5)
 .RE
 .PP
+\fIRestartForceExitStatus=\fR
+.RS 4
+\fBsystemd.service\fR(5)
+.RE
+.PP
 \fIRestartPreventExitStatus=\fR
 .RS 4
 \fBsystemd.service\fR(5)
@@ -907,6 +922,11 @@ Directives for configuring units, used in unit files\&.
 \fBsystemd.resource-control\fR(5)
 .RE
 .PP
+\fISloppyOptions=\fR
+.RS 4
+\fBsystemd.mount\fR(5)
+.RE
+.PP
 \fISmackLabel=\fR
 .RS 4
 \fBsystemd.socket\fR(5)
@@ -1424,6 +1444,11 @@ Kernel boot options for configuring the behaviour of the systemd process\&.
 \fBsystemd-modules-load.service\fR(8)
 .RE
 .PP
+\fIrd\&.systemd\&.gpt_auto=\fR
+.RS 4
+\fBkernel-command-line\fR(7)
+.RE
+.PP
 \fIrd\&.systemd\&.unit=\fR
 .RS 4
 \fBkernel-command-line\fR(7),
@@ -1448,6 +1473,31 @@ Kernel boot options for configuring the behaviour of the systemd process\&.
 \fBsystemd-udevd.service\fR(8)
 .RE
 .PP
+\fIro\fR
+.RS 4
+\fBkernel-command-line\fR(7)
+.RE
+.PP
+\fIroot=\fR
+.RS 4
+\fBkernel-command-line\fR(7)
+.RE
+.PP
+\fIrootfsflags=\fR
+.RS 4
+\fBkernel-command-line\fR(7)
+.RE
+.PP
+\fIrootfstype=\fR
+.RS 4
+\fBkernel-command-line\fR(7)
+.RE
+.PP
+\fIrw\fR
+.RS 4
+\fBkernel-command-line\fR(7)
+.RE
+.PP
 \fIs\fR
 .RS 4
 \fBkernel-command-line\fR(7),
@@ -1478,6 +1528,11 @@ Kernel boot options for configuring the behaviour of the systemd process\&.
 \fBsystemd\fR(1)
 .RE
 .PP
+\fIsystemd\&.debug\-shell\fR
+.RS 4
+\fBkernel-command-line\fR(7)
+.RE
+.PP
 \fIsystemd\&.default_standard_error=\fR
 .RS 4
 \fBkernel-command-line\fR(7),
@@ -1496,6 +1551,11 @@ Kernel boot options for configuring the behaviour of the systemd process\&.
 \fBsystemd\fR(1)
 .RE
 .PP
+\fIsystemd\&.gpt_auto=\fR
+.RS 4
+\fBkernel-command-line\fR(7)
+.RE
+.PP
 \fIsystemd\&.journald\&.forward_to_console=\fR
 .RS 4
 \fBkernel-command-line\fR(7),
@@ -1544,6 +1604,11 @@ Kernel boot options for configuring the behaviour of the systemd process\&.
 \fBsystemd\fR(1)
 .RE
 .PP
+\fIsystemd\&.mask=\fR
+.RS 4
+\fBkernel-command-line\fR(7)
+.RE
+.PP
 \fIsystemd\&.restore_state=\fR
 .RS 4
 \fBkernel-command-line\fR(7),
@@ -1569,6 +1634,11 @@ Kernel boot options for configuring the behaviour of the systemd process\&.
 \fBsystemd\fR(1)
 .RE
 .PP
+\fIsystemd\&.wants=\fR
+.RS 4
+\fBkernel-command-line\fR(7)
+.RE
+.PP
 \fIudev\&.children\-max=\fR
 .RS 4
 \fBkernel-command-line\fR(7),
@@ -2240,6 +2310,11 @@ Directives for configuring network links through the net\-setup\-link udev built
 \fBsystemd.network\fR(5)
 .RE
 .PP
+\fIDHCPServer=\fR
+.RS 4
+\fBsystemd.network\fR(5)
+.RE
+.PP
 \fIDNS=\fR
 .RS 4
 \fBresolved.conf\fR(5),
@@ -2249,6 +2324,7 @@ Directives for configuring network links through the net\-setup\-link udev built
 \fIDescription=\fR
 .RS 4
 \fBsystemd.link\fR(5),
+\fBsystemd.netdev\fR(5),
 \fBsystemd.network\fR(5)
 .RE
 .PP
@@ -2257,6 +2333,11 @@ Directives for configuring network links through the net\-setup\-link udev built
 \fBsystemd.network\fR(5)
 .RE
 .PP
+\fIDiscoverPathMTU=\fR
+.RS 4
+\fBsystemd.netdev\fR(5)
+.RE
+.PP
 \fIDriver=\fR
 .RS 4
 \fBsystemd.link\fR(5),
@@ -2273,6 +2354,11 @@ Directives for configuring network links through the net\-setup\-link udev built
 \fBsystemd.network\fR(5)
 .RE
 .PP
+\fIGroup=\fR
+.RS 4
+\fBsystemd.netdev\fR(5)
+.RE
+.PP
 \fIHost=\fR
 .RS 4
 \fBsystemd.link\fR(5),
@@ -2307,9 +2393,15 @@ Directives for configuring network links through the net\-setup\-link udev built
 \fBsystemd.network\fR(5)
 .RE
 .PP
+\fILocal=\fR
+.RS 4
+\fBsystemd.netdev\fR(5)
+.RE
+.PP
 \fIMACAddress=\fR
 .RS 4
 \fBsystemd.link\fR(5),
+\fBsystemd.netdev\fR(5),
 \fBsystemd.network\fR(5)
 .RE
 .PP
@@ -2325,7 +2417,13 @@ Directives for configuring network links through the net\-setup\-link udev built
 .PP
 \fIMTUBytes=\fR
 .RS 4
-\fBsystemd.link\fR(5)
+\fBsystemd.link\fR(5),
+\fBsystemd.netdev\fR(5)
+.RE
+.PP
+\fIMacLearning=\fR
+.RS 4
+\fBsystemd.netdev\fR(5)
 .RE
 .PP
 \fIMode=\fR
@@ -2333,6 +2431,11 @@ Directives for configuring network links through the net\-setup\-link udev built
 \fBsystemd.netdev\fR(5)
 .RE
 .PP
+\fIMultiQueue=\fR
+.RS 4
+\fBsystemd.netdev\fR(5)
+.RE
+.PP
 \fIName=\fR
 .RS 4
 \fBsystemd.link\fR(5),
@@ -2345,12 +2448,47 @@ Directives for configuring network links through the net\-setup\-link udev built
 \fBsystemd.link\fR(5)
 .RE
 .PP
+\fIOneQueue=\fR
+.RS 4
+\fBsystemd.netdev\fR(5)
+.RE
+.PP
+\fIPacketInfo=\fR
+.RS 4
+\fBsystemd.netdev\fR(5)
+.RE
+.PP
 \fIPath=\fR
 .RS 4
 \fBsystemd.link\fR(5),
 \fBsystemd.network\fR(5)
 .RE
 .PP
+\fIRemote=\fR
+.RS 4
+\fBsystemd.netdev\fR(5)
+.RE
+.PP
+\fISendHostname=\fR
+.RS 4
+\fBsystemd.network\fR(5)
+.RE
+.PP
+\fITOS=\fR
+.RS 4
+\fBsystemd.netdev\fR(5)
+.RE
+.PP
+\fITTL=\fR
+.RS 4
+\fBsystemd.netdev\fR(5)
+.RE
+.PP
+\fITunnel=\fR
+.RS 4
+\fBsystemd.network\fR(5)
+.RE
+.PP
 \fIType=\fR
 .RS 4
 \fBsystemd.link\fR(5),
@@ -2372,11 +2510,26 @@ Directives for configuring network links through the net\-setup\-link udev built
 \fBsystemd.network\fR(5)
 .RE
 .PP
+\fIUseRoutes=\fR
+.RS 4
+\fBsystemd.network\fR(5)
+.RE
+.PP
+\fIUser=\fR
+.RS 4
+\fBsystemd.netdev\fR(5)
+.RE
+.PP
 \fIVLAN=\fR
 .RS 4
 \fBsystemd.network\fR(5)
 .RE
 .PP
+\fIVXLAN=\fR
+.RS 4
+\fBsystemd.network\fR(5)
+.RE
+.PP
 \fIVirtualization=\fR
 .RS 4
 \fBsystemd.link\fR(5),
@@ -2679,119 +2832,146 @@ Directives for configuring PAM behaviour\&.
 .RS 4
 \fBpam_systemd\fR(8)
 .RE
-.SH "CRYPTTAB OPTIONS"
+.SH "/ETC/CRYPTTAB AND /ETC/FSTAB OPTIONS"
 .PP
 Options which influence mounted filesystems and encrypted volumes\&.
 .PP
-\fIcipher=\fR
+\fBauto\fR
 .RS 4
-\fBcrypttab\fR(5)
+\fBsystemd.mount\fR(5)
 .RE
 .PP
-\fIdiscard\fR
+\fBcipher=\fR
 .RS 4
 \fBcrypttab\fR(5)
 .RE
 .PP
-\fIhash=\fR
+\fBdiscard\fR
 .RS 4
 \fBcrypttab\fR(5)
 .RE
 .PP
-\fIkey\-slot=\fR
+\fBfail\fR
 .RS 4
-\fBcrypttab\fR(5)
+\fBsystemd.mount\fR(5)
 .RE
 .PP
-\fIkeyfile\-offset=\fR
+\fBhash=\fR
 .RS 4
 \fBcrypttab\fR(5)
 .RE
 .PP
-\fIkeyfile\-size=\fR
+\fBkey\-slot=\fR
 .RS 4
 \fBcrypttab\fR(5)
 .RE
 .PP
-\fIluks\fR
+\fBkeyfile\-offset=\fR
 .RS 4
 \fBcrypttab\fR(5)
 .RE
 .PP
-\fInoauto\fR
+\fBkeyfile\-size=\fR
 .RS 4
 \fBcrypttab\fR(5)
 .RE
 .PP
-\fInofail\fR
+\fBluks\fR
 .RS 4
 \fBcrypttab\fR(5)
 .RE
 .PP
-\fIplain\fR
+\fBnoauto\fR
+.RS 4
+\fBcrypttab\fR(5),
+\fBsystemd.mount\fR(5)
+.RE
+.PP
+\fBnofail\fR
+.RS 4
+\fBcrypttab\fR(5),
+\fBsystemd.mount\fR(5)
+.RE
+.PP
+\fBplain\fR
 .RS 4
 \fBcrypttab\fR(5)
 .RE
 .PP
-\fIread\-only\fR
+\fBread\-only\fR
 .RS 4
 \fBcrypttab\fR(5)
 .RE
 .PP
-\fIreadonly\fR
+\fBreadonly\fR
 .RS 4
 \fBcrypttab\fR(5)
 .RE
 .PP
-\fIsize=\fR
+\fBsize=\fR
 .RS 4
 \fBcrypttab\fR(5)
 .RE
 .PP
-\fIswap\fR
+\fBswap\fR
 .RS 4
 \fBcrypttab\fR(5)
 .RE
 .PP
-\fItcrypt\fR
+\fBtcrypt\fR
 .RS 4
 \fBcrypttab\fR(5)
 .RE
 .PP
-\fItcrypt\-hidden\fR
+\fBtcrypt\-hidden\fR
 .RS 4
 \fBcrypttab\fR(5)
 .RE
 .PP
-\fItcrypt\-keyfile=\fR
+\fBtcrypt\-keyfile=\fR
 .RS 4
 \fBcrypttab\fR(5)
 .RE
 .PP
-\fItcrypt\-system\fR
+\fBtcrypt\-system\fR
 .RS 4
 \fBcrypttab\fR(5)
 .RE
 .PP
-\fItimeout=\fR
+\fBtimeout=\fR
 .RS 4
 \fBcrypttab\fR(5)
 .RE
 .PP
-\fItmp\fR
+\fBtmp\fR
 .RS 4
 \fBcrypttab\fR(5)
 .RE
 .PP
-\fItries=\fR
+\fBtries=\fR
 .RS 4
 \fBcrypttab\fR(5)
 .RE
 .PP
-\fIverify\fR
+\fBverify\fR
 .RS 4
 \fBcrypttab\fR(5)
 .RE
+.PP
+\fBx\-initrd\&.mount\fR
+.RS 4
+\fBsystemd.mount\fR(5)
+.RE
+.PP
+\fBx\-systemd\&.automount\fR
+.RS 4
+\fBsystemd.mount\fR(5)
+.RE
+.PP
+\fBx\-systemd\&.device\-timeout=\fR
+.RS 4
+\fBsystemd.mount\fR(5)
+.RE
 .SH "SYSTEM MANAGER DIRECTIVES"
 .PP
 Directives for configuring the behaviour of the systemd process\&.
@@ -3413,8 +3593,8 @@ Command\-line options accepted by programs in the systemd suite\&.
 .PP
 \fB\-\-field=\fR
 .RS 4
-\fBjournalctl\fR(1),
-\fBsystemd-coredumpctl\fR(1)
+\fBcoredumpctl\fR(1),
+\fBjournalctl\fR(1)
 .RE
 .PP
 \fB\-\-file\-size\-max=\fR
@@ -3498,6 +3678,7 @@ Command\-line options accepted by programs in the systemd suite\&.
 .RS 4
 \fBbootctl\fR(1),
 \fBbusctl\fR(1),
+\fBcoredumpctl\fR(1),
 \fBhalt\fR(8),
 \fBhostnamectl\fR(1),
 \fBjournalctl\fR(1),
@@ -3516,7 +3697,6 @@ Command\-line options accepted by programs in the systemd suite\&.
 \fBsystemd-cat\fR(1),
 \fBsystemd-cgls\fR(1),
 \fBsystemd-cgtop\fR(1),
-\fBsystemd-coredumpctl\fR(1),
 \fBsystemd-delta\fR(1),
 \fBsystemd-detect-virt\fR(1),
 \fBsystemd-inhibit\fR(1),
@@ -3525,10 +3705,12 @@ Command\-line options accepted by programs in the systemd suite\&.
 \fBsystemd-machine-id-setup\fR(1),
 \fBsystemd-notify\fR(1),
 \fBsystemd-nspawn\fR(1),
+\fBsystemd-path\fR(1),
 \fBsystemd-readahead-replay.service\fR(8),
 \fBsystemd-run\fR(1),
 \fBsystemd-socket-proxyd\fR(8),
 \fBsystemd-suspend.service\fR(8),
+\fBsystemd-sysusers\fR(8),
 \fBsystemd-tmpfiles\fR(8),
 \fBsystemd-tty-ask-password-agent\fR(1),
 \fBsystemd-udevd.service\fR(8),
@@ -3800,15 +3982,16 @@ Command\-line options accepted by programs in the systemd suite\&.
 \fB\-\-no\-legend\fR
 .RS 4
 \fBbusctl\fR(1),
+\fBcoredumpctl\fR(1),
 \fBloginctl\fR(1),
 \fBmachinectl\fR(1),
-\fBsystemctl\fR(1),
-\fBsystemd-coredumpctl\fR(1)
+\fBsystemctl\fR(1)
 .RE
 .PP
 \fB\-\-no\-pager\fR
 .RS 4
 \fBbusctl\fR(1),
+\fBcoredumpctl\fR(1),
 \fBjournalctl\fR(1),
 \fBlocalectl\fR(1),
 \fBloginctl\fR(1),
@@ -3816,7 +3999,6 @@ Command\-line options accepted by programs in the systemd suite\&.
 \fBsystemctl\fR(1),
 \fBsystemd-analyze\fR(1),
 \fBsystemd-cgls\fR(1),
-\fBsystemd-coredumpctl\fR(1),
 \fBsystemd-delta\fR(1),
 \fBtimedatectl\fR(1)
 .RE
@@ -3866,9 +4048,9 @@ Command\-line options accepted by programs in the systemd suite\&.
 .PP
 \fB\-\-output=\fR
 .RS 4
+\fBcoredumpctl\fR(1),
 \fBjournalctl\fR(1),
 \fBsystemctl\fR(1),
-\fBsystemd-coredumpctl\fR(1),
 \fBsystemd-journal-remote\fR(8)
 .RE
 .PP
@@ -3918,6 +4100,11 @@ Command\-line options accepted by programs in the systemd suite\&.
 \fBsystemd-tmpfiles\fR(8)
 .RE
 .PP
+\fB\-\-preset\-mode=\fR
+.RS 4
+\fBsystemctl\fR(1)
+.RE
+.PP
 \fB\-\-pretty\fR
 .RS 4
 \fBhostnamectl\fR(1)
@@ -4060,6 +4247,7 @@ Command\-line options accepted by programs in the systemd suite\&.
 \fBjournalctl\fR(1),
 \fBsystemctl\fR(1),
 \fBsystemd-machine-id-setup\fR(1),
+\fBsystemd-sysusers\fR(8),
 \fBsystemd-tmpfiles\fR(8),
 \fBudevadm\fR(8)
 .RE
@@ -4204,6 +4392,11 @@ Command\-line options accepted by programs in the systemd suite\&.
 \fBudevadm\fR(8)
 .RE
 .PP
+\fB\-\-suffix=\fR
+.RS 4
+\fBsystemd-path\fR(1)
+.RE
+.PP
 \fB\-\-sysname\-match=\fR
 .RS 4
 \fBudevadm\fR(8)
@@ -4349,6 +4542,7 @@ Command\-line options accepted by programs in the systemd suite\&.
 .RS 4
 \fBbootctl\fR(1),
 \fBbusctl\fR(1),
+\fBcoredumpctl\fR(1),
 \fBhostnamectl\fR(1),
 \fBjournalctl\fR(1),
 \fBlocalectl\fR(1),
@@ -4362,7 +4556,6 @@ Command\-line options accepted by programs in the systemd suite\&.
 \fBsystemd-cat\fR(1),
 \fBsystemd-cgls\fR(1),
 \fBsystemd-cgtop\fR(1),
-\fBsystemd-coredumpctl\fR(1),
 \fBsystemd-delta\fR(1),
 \fBsystemd-detect-virt\fR(1),
 \fBsystemd-inhibit\fR(1),
@@ -4371,10 +4564,12 @@ Command\-line options accepted by programs in the systemd suite\&.
 \fBsystemd-machine-id-setup\fR(1),
 \fBsystemd-notify\fR(1),
 \fBsystemd-nspawn\fR(1),
+\fBsystemd-path\fR(1),
 \fBsystemd-readahead-replay.service\fR(8),
 \fBsystemd-run\fR(1),
 \fBsystemd-socket-proxyd\fR(8),
 \fBsystemd-suspend.service\fR(8),
+\fBsystemd-sysusers\fR(8),
 \fBsystemd-tmpfiles\fR(8),
 \fBsystemd-tty-ask-password-agent\fR(1),
 \fBsystemd-udevd.service\fR(8),
@@ -4417,6 +4612,11 @@ Command\-line options accepted by programs in the systemd suite\&.
 \fBhalt\fR(8)
 .RE
 .PP
+\fB\-1\fR
+.RS 4
+\fBcoredumpctl\fR(1)
+.RE
+.PP
 \fB\-A\fR
 .RS 4
 \fBudevadm\fR(8)
@@ -4441,9 +4641,9 @@ Command\-line options accepted by programs in the systemd suite\&.
 .PP
 \fB\-F\fR
 .RS 4
+\fBcoredumpctl\fR(1),
 \fBjournalctl\fR(1),
-\fBsystemd-bootchart\fR(1),
-\fBsystemd-coredumpctl\fR(1)
+\fBsystemd-bootchart\fR(1)
 .RE
 .PP
 \fB\-H\fR
@@ -4566,6 +4766,7 @@ Command\-line options accepted by programs in the systemd suite\&.
 .RS 4
 \fBbootctl\fR(1),
 \fBbusctl\fR(1),
+\fBcoredumpctl\fR(1),
 \fBhostnamectl\fR(1),
 \fBjournalctl\fR(1),
 \fBlocalectl\fR(1),
@@ -4582,7 +4783,6 @@ Command\-line options accepted by programs in the systemd suite\&.
 \fBsystemd-cat\fR(1),
 \fBsystemd-cgls\fR(1),
 \fBsystemd-cgtop\fR(1),
-\fBsystemd-coredumpctl\fR(1),
 \fBsystemd-delta\fR(1),
 \fBsystemd-detect-virt\fR(1),
 \fBsystemd-inhibit\fR(1),
@@ -4591,10 +4791,12 @@ Command\-line options accepted by programs in the systemd suite\&.
 \fBsystemd-machine-id-setup\fR(1),
 \fBsystemd-notify\fR(1),
 \fBsystemd-nspawn\fR(1),
+\fBsystemd-path\fR(1),
 \fBsystemd-readahead-replay.service\fR(8),
 \fBsystemd-run\fR(1),
 \fBsystemd-socket-proxyd\fR(8),
 \fBsystemd-suspend.service\fR(8),
+\fBsystemd-sysusers\fR(8),
 \fBsystemd-tmpfiles\fR(8),
 \fBsystemd-tty-ask-password-agent\fR(1),
 \fBtimedatectl\fR(1),
@@ -4652,10 +4854,10 @@ Command\-line options accepted by programs in the systemd suite\&.
 .PP
 \fB\-o\fR
 .RS 4
+\fBcoredumpctl\fR(1),
 \fBjournalctl\fR(1),
 \fBsystemctl\fR(1),
-\fBsystemd-bootchart\fR(1),
-\fBsystemd-coredumpctl\fR(1)
+\fBsystemd-bootchart\fR(1)
 .RE
 .PP
 \fB\-p\fR
@@ -6063,6 +6265,7 @@ Other configuration elements which don\*(Aqt fit in any of the above groups\&.
 .PP
 \fICompress=\fR
 .RS 4
+\fBcoredump.conf\fR(5),
 \fBjournald.conf\fR(5)
 .RE
 .PP
@@ -6071,6 +6274,11 @@ Other configuration elements which don\*(Aqt fit in any of the above groups\&.
 \fBtmpfiles.d\fR(5)
 .RE
 .PP
+\fIExternalSizeMax=\fR
+.RS 4
+\fBcoredump.conf\fR(5)
+.RE
+.PP
 \fIF\fR
 .RS 4
 \fBtmpfiles.d\fR(5)
@@ -6171,6 +6379,11 @@ Other configuration elements which don\*(Aqt fit in any of the above groups\&.
 \fBlogind.conf\fR(5)
 .RE
 .PP
+\fIJournalSizeMax=\fR
+.RS 4
+\fBcoredump.conf\fR(5)
+.RE
+.PP
 \fIKEYMAP=\fR
 .RS 4
 \fBvconsole.conf\fR(5)
@@ -6181,6 +6394,11 @@ Other configuration elements which don\*(Aqt fit in any of the above groups\&.
 \fBvconsole.conf\fR(5)
 .RE
 .PP
+\fIKeepFree=\fR
+.RS 4
+\fBcoredump.conf\fR(5)
+.RE
+.PP
 \fIKillExcludeUsers=\fR
 .RS 4
 \fBlogind.conf\fR(5)
@@ -6201,6 +6419,11 @@ Other configuration elements which don\*(Aqt fit in any of the above groups\&.
 \fBtmpfiles.d\fR(5)
 .RE
 .PP
+\fIL+\fR
+.RS 4
+\fBtmpfiles.d\fR(5)
+.RE
+.PP
 \fILidSwitchIgnoreInhibited=\fR
 .RS 4
 \fBlogind.conf\fR(5)
@@ -6241,6 +6464,11 @@ Other configuration elements which don\*(Aqt fit in any of the above groups\&.
 \fBjournald.conf\fR(5)
 .RE
 .PP
+\fIMaxUse=\fR
+.RS 4
+\fBcoredump.conf\fR(5)
+.RE
+.PP
 \fINAME=\fR
 .RS 4
 \fBos-release\fR(5)
@@ -6266,6 +6494,11 @@ Other configuration elements which don\*(Aqt fit in any of the above groups\&.
 \fBlogind.conf\fR(5)
 .RE
 .PP
+\fIProcessSizeMax=\fR
+.RS 4
+\fBcoredump.conf\fR(5)
+.RE
+.PP
 \fIR\fR
 .RS 4
 \fBtmpfiles.d\fR(5)
@@ -6343,6 +6576,7 @@ Other configuration elements which don\*(Aqt fit in any of the above groups\&.
 .PP
 \fIStorage=\fR
 .RS 4
+\fBcoredump.conf\fR(5),
 \fBjournald.conf\fR(5)
 .RE
 .PP
@@ -6401,11 +6635,21 @@ Other configuration elements which don\*(Aqt fit in any of the above groups\&.
 \fBtmpfiles.d\fR(5)
 .RE
 .PP
+\fIb+\fR
+.RS 4
+\fBtmpfiles.d\fR(5)
+.RE
+.PP
 \fIc\fR
 .RS 4
 \fBtmpfiles.d\fR(5)
 .RE
 .PP
+\fIc+\fR
+.RS 4
+\fBtmpfiles.d\fR(5)
+.RE
+.PP
 \fId\fR
 .RS 4
 \fBtmpfiles.d\fR(5)
@@ -6426,6 +6670,11 @@ Other configuration elements which don\*(Aqt fit in any of the above groups\&.
 \fBtmpfiles.d\fR(5)
 .RE
 .PP
+\fIg\fR
+.RS 4
+\fBsysusers.d\fR(5)
+.RE
+.PP
 \fIh\fR
 .RS 4
 \fBtmpfiles.d\fR(5)
@@ -6433,6 +6682,7 @@ Other configuration elements which don\*(Aqt fit in any of the above groups\&.
 .PP
 \fBm\fR
 .RS 4
+\fBsysusers.d\fR(5),
 \fBtmpfiles.d\fR(5)
 .RE
 .PP
@@ -6461,6 +6711,11 @@ Other configuration elements which don\*(Aqt fit in any of the above groups\&.
 \fBtmpfiles.d\fR(5)
 .RE
 .PP
+\fIp+\fR
+.RS 4
+\fBtmpfiles.d\fR(5)
+.RE
+.PP
 \fBr\fR
 .RS 4
 \fBtmpfiles.d\fR(5)
@@ -6476,6 +6731,11 @@ Other configuration elements which don\*(Aqt fit in any of the above groups\&.
 \fBtmpfiles.d\fR(5)
 .RE
 .PP
+\fIu\fR
+.RS 4
+\fBsysusers.d\fR(5)
+.RE
+.PP
 \fIudev_log\fR
 .RS 4
 \fBsystemd-udevd.service\fR(8)
@@ -6511,9 +6771,11 @@ Paths and file names referred to in the documentation\&.
 .PP
 /
 .RS 4
+\fBfile-hierarchy\fR(7),
 \fBsystemd-gpt-auto-generator\fR(8),
 \fBsystemd-remount-fs.service\fR(8),
-\fBsystemd.unit\fR(5)
+\fBsystemd.unit\fR(5),
+\fBsysusers.d\fR(5)
 .RE
 .PP
 $HOME/\&.config/systemd/user/
@@ -6538,6 +6800,7 @@ $XDG_CONFIG_HOME/systemd/user/
 .PP
 /bin
 .RS 4
+\fBfile-hierarchy\fR(7),
 \fBsystemd.exec\fR(5)
 .RE
 .PP
@@ -6548,6 +6811,7 @@ $XDG_CONFIG_HOME/systemd/user/
 .PP
 /boot
 .RS 4
+\fBfile-hierarchy\fR(7),
 \fBkernel-install\fR(8),
 \fBsystemd-efi-boot-generator\fR(8),
 \fBsystemd-gpt-auto-generator\fR(8)
@@ -6560,6 +6824,7 @@ $XDG_CONFIG_HOME/systemd/user/
 .PP
 /dev
 .RS 4
+\fBfile-hierarchy\fR(7),
 \fBsystemd-nspawn\fR(1),
 \fBsystemd-remount-fs.service\fR(8),
 \fBsystemd.device\fR(5),
@@ -6607,6 +6872,11 @@ $XDG_CONFIG_HOME/systemd/user/
 \fBsystemd-gpt-auto-generator\fR(8)
 .RE
 .PP
+/dev/net/tun
+.RS 4
+\fBsystemd.netdev\fR(5)
+.RE
+.PP
 /dev/null
 .RS 4
 \fBbinfmt.d\fR(5),
@@ -6642,6 +6912,11 @@ $XDG_CONFIG_HOME/systemd/user/
 \fBsystemd.resource-control\fR(5)
 .RE
 .PP
+/dev/shm
+.RS 4
+\fBfile-hierarchy\fR(7)
+.RE
+.PP
 /dev/urandom
 .RS 4
 \fBcrypttab\fR(5),
@@ -6660,23 +6935,32 @@ $XDG_CONFIG_HOME/systemd/user/
 \fBsystemd.resource-control\fR(5)
 .RE
 .PP
-/etc/
+/etc
 .RS 4
 \fBbinfmt.d\fR(5),
+\fBfile-hierarchy\fR(7),
 \fBmodules-load.d\fR(5),
 \fBnss-myhostname\fR(8),
+\fBos-release\fR(5),
 \fBsysctl.d\fR(5),
 \fBsystemctl\fR(1),
 \fBsystemd-delta\fR(1),
+\fBsystemd-update-done.service\fR(8),
 \fBsystemd.exec\fR(5),
 \fBsystemd.link\fR(5),
 \fBsystemd.mount\fR(5),
 \fBsystemd.netdev\fR(5),
 \fBsystemd.network\fR(5),
 \fBsystemd.preset\fR(5),
+\fBsystemd.unit\fR(5),
 \fBudev\fR(7)
 .RE
 .PP
+/etc/\&.updated
+.RS 4
+\fBsystemd-update-done.service\fR(8)
+.RE
+.PP
 /etc/adjtime
 .RS 4
 \fBtimedatectl\fR(1)
@@ -6715,6 +6999,11 @@ $XDG_CONFIG_HOME/systemd/user/
 \fBsystemd.swap\fR(5)
 .RE
 .PP
+/etc/group
+.RS 4
+\fBsysusers.d\fR(5)
+.RE
+.PP
 /etc/hostname
 .RS 4
 \fBhostname\fR(5),
@@ -6778,6 +7067,11 @@ $XDG_CONFIG_HOME/systemd/user/
 \fBmodules-load.d\fR(5)
 .RE
 .PP
+/etc/modules\-load\&.d/bridge\&.conf
+.RS 4
+\fBsysctl.d\fR(5)
+.RE
+.PP
 /etc/nsswitch\&.conf
 .RS 4
 \fBnss-myhostname\fR(8)
@@ -6790,6 +7084,11 @@ $XDG_CONFIG_HOME/systemd/user/
 \fBsystemd-nspawn\fR(1)
 .RE
 .PP
+/etc/passwd
+.RS 4
+\fBsysusers.d\fR(5)
+.RE
+.PP
 /etc/resolv\&.conf
 .RS 4
 \fBsystemd-resolved.service\fR(8)
@@ -6805,12 +7104,27 @@ $XDG_CONFIG_HOME/systemd/user/
 \fBsysctl.d\fR(5)
 .RE
 .PP
+/etc/sysctl\&.d/bridge\&.conf
+.RS 4
+\fBsysctl.d\fR(5)
+.RE
+.PP
+/etc/sysctl\&.d/domain\-name\&.conf
+.RS 4
+\fBsysctl.d\fR(5)
+.RE
+.PP
 /etc/systemd/bootchart\&.conf
 .RS 4
 \fBbootchart.conf\fR(5),
 \fBsystemd-bootchart\fR(1)
 .RE
 .PP
+/etc/systemd/coredump\&.conf
+.RS 4
+\fBcoredump.conf\fR(5)
+.RE
+.PP
 /etc/systemd/journald\&.conf
 .RS 4
 \fBjournald.conf\fR(5),
@@ -6907,6 +7221,11 @@ $XDG_CONFIG_HOME/systemd/user/
 \fBudev\fR(7)
 .RE
 .PP
+/etc/udev/rules\&.d/99\-bridge\&.conf
+.RS 4
+\fBsysctl.d\fR(5)
+.RE
+.PP
 /etc/udev/udev\&.conf
 .RS 4
 \fBsystemd-udevd.service\fR(8)
@@ -6919,6 +7238,7 @@ $XDG_CONFIG_HOME/systemd/user/
 .PP
 /home
 .RS 4
+\fBfile-hierarchy\fR(7),
 \fBsystemd-gpt-auto-generator\fR(8),
 \fBsystemd.exec\fR(5)
 .RE
@@ -6930,11 +7250,18 @@ $XDG_CONFIG_HOME/systemd/user/
 .PP
 /lib
 .RS 4
+\fBfile-hierarchy\fR(7),
 \fBsystemd-delta\fR(1)
 .RE
 .PP
+/lib64
+.RS 4
+\fBfile-hierarchy\fR(7)
+.RE
+.PP
 /proc
 .RS 4
+\fBfile-hierarchy\fR(7),
 \fBsd-login\fR(3),
 \fBsd_bus_creds_get_pid\fR(3),
 \fBsd_bus_creds_new_from_pid\fR(3),
@@ -6974,6 +7301,7 @@ $XDG_CONFIG_HOME/systemd/user/
 .PP
 /proc/sys
 .RS 4
+\fBfile-hierarchy\fR(7),
 \fBsystemd-nspawn\fR(1)
 .RE
 .PP
@@ -7002,9 +7330,15 @@ $XDG_CONFIG_HOME/systemd/user/
 \fBsystemd.socket\fR(5)
 .RE
 .PP
-/run/
+/root
+.RS 4
+\fBfile-hierarchy\fR(7)
+.RE
+.PP
+/run
 .RS 4
 \fBbinfmt.d\fR(5),
+\fBfile-hierarchy\fR(7),
 \fBmodules-load.d\fR(5),
 \fBsd-login\fR(3),
 \fBsysctl.d\fR(5),
@@ -7035,6 +7369,7 @@ $XDG_CONFIG_HOME/systemd/user/
 /run/log
 .RS 4
 \fBbootchart.conf\fR(5),
+\fBfile-hierarchy\fR(7),
 \fBsystemd-bootchart\fR(1)
 .RE
 .PP
@@ -7146,6 +7481,7 @@ $XDG_CONFIG_HOME/systemd/user/
 .PP
 /run/user
 .RS 4
+\fBfile-hierarchy\fR(7),
 \fBsystemd.exec\fR(5)
 .RE
 .PP
@@ -7156,21 +7492,34 @@ $XDG_CONFIG_HOME/systemd/user/
 .PP
 /sbin
 .RS 4
+\fBfile-hierarchy\fR(7),
 \fBsystemd.exec\fR(5)
 .RE
 .PP
+/sbin/fsck\&.
+.RS 4
+\fBsystemd-fsck@.service\fR(8)
+.RE
+.PP
 /sbin/init
 .RS 4
 \fBbootchart.conf\fR(5)
 .RE
 .PP
+/sbin/login
+.RS 4
+\fBsysusers.d\fR(5)
+.RE
+.PP
 /srv
 .RS 4
+\fBfile-hierarchy\fR(7),
 \fBsystemd-gpt-auto-generator\fR(8)
 .RE
 .PP
 /sys
 .RS 4
+\fBfile-hierarchy\fR(7),
 \fBloginctl\fR(1),
 \fBsd_is_fifo\fR(3),
 \fBsystemd\fR(1),
@@ -7230,6 +7579,7 @@ $XDG_CONFIG_HOME/systemd/user/
 /tmp
 .RS 4
 \fBcrypttab\fR(5),
+\fBfile-hierarchy\fR(7),
 \fBsystemd.exec\fR(5),
 \fBsystemd.unit\fR(5),
 \fBtmpfiles.d\fR(5)
@@ -7248,13 +7598,17 @@ $XDG_CONFIG_HOME/systemd/user/
 /usr
 .RS 4
 \fBbootup\fR(7),
+\fBfile-hierarchy\fR(7),
 \fBsystemd-remount-fs.service\fR(8),
+\fBsystemd-update-done.service\fR(8),
 \fBsystemd.exec\fR(5),
-\fBsystemd.mount\fR(5)
+\fBsystemd.mount\fR(5),
+\fBsystemd.unit\fR(5)
 .RE
 .PP
 /usr/bin
 .RS 4
+\fBfile-hierarchy\fR(7),
 \fBsystemd.exec\fR(5)
 .RE
 .PP
@@ -7268,9 +7622,15 @@ $XDG_CONFIG_HOME/systemd/user/
 \fBsystemctl\fR(1)
 .RE
 .PP
-/usr/lib/
+/usr/include
+.RS 4
+\fBfile-hierarchy\fR(7)
+.RE
+.PP
+/usr/lib
 .RS 4
 \fBbinfmt.d\fR(5),
+\fBfile-hierarchy\fR(7),
 \fBmodules-load.d\fR(5),
 \fBsysctl.d\fR(5),
 \fBsystemd-delta\fR(1),
@@ -7301,6 +7661,13 @@ $XDG_CONFIG_HOME/systemd/user/
 \fBmodules-load.d\fR(5)
 .RE
 .PP
+/usr/lib/os\-release
+.RS 4
+\fBkernel-install\fR(8),
+\fBos-release\fR(5),
+\fBsystemd-nspawn\fR(1)
+.RE
+.PP
 /usr/lib/sysctl\&.d/*\&.conf
 .RS 4
 \fBsysctl.d\fR(5)
@@ -7325,6 +7692,11 @@ $XDG_CONFIG_HOME/systemd/user/
 \fBsystemd-cryptsetup-generator\fR(8)
 .RE
 .PP
+/usr/lib/systemd/system\-generators/systemd\-debug\-generator
+.RS 4
+\fBsystemd-debug-generator\fR(8)
+.RE
+.PP
 /usr/lib/systemd/system\-generators/systemd\-efi\-boot\-generator
 .RS 4
 \fBsystemd-efi-boot-generator\fR(8)
@@ -7525,6 +7897,11 @@ $XDG_CONFIG_HOME/systemd/user/
 \fBsystemd-udevd.service\fR(8)
 .RE
 .PP
+/usr/lib/systemd/systemd\-update\-done
+.RS 4
+\fBsystemd-update-done.service\fR(8)
+.RE
+.PP
 /usr/lib/systemd/systemd\-update\-utmp
 .RS 4
 \fBsystemd-update-utmp.service\fR(8)
@@ -7550,6 +7927,16 @@ $XDG_CONFIG_HOME/systemd/user/
 \fBsystemd.preset\fR(5)
 .RE
 .PP
+/usr/lib/sysusers\&.d/
+.RS 4
+\fBsysusers.d\fR(5)
+.RE
+.PP
+/usr/lib/sysusers\&.d/*\&.conf
+.RS 4
+\fBsysusers.d\fR(5)
+.RE
+.PP
 /usr/lib/tmpfiles\&.d
 .RS 4
 \fBtmpfiles.d\fR(5)
@@ -7575,6 +7962,11 @@ $XDG_CONFIG_HOME/systemd/user/
 \fBudev\fR(7)
 .RE
 .PP
+/usr/lib64
+.RS 4
+\fBfile-hierarchy\fR(7)
+.RE
+.PP
 /usr/local/bin
 .RS 4
 \fBsystemd.exec\fR(5)
@@ -7592,9 +7984,36 @@ $XDG_CONFIG_HOME/systemd/user/
 .PP
 /usr/sbin
 .RS 4
+\fBfile-hierarchy\fR(7),
 \fBsystemd.exec\fR(5)
 .RE
 .PP
+/usr/share
+.RS 4
+\fBfile-hierarchy\fR(7)
+.RE
+.PP
+/usr/share/doc
+.RS 4
+\fBfile-hierarchy\fR(7)
+.RE
+.PP
+/usr/share/factory
+.RS 4
+\fBfile-hierarchy\fR(7),
+\fBtmpfiles.d\fR(5)
+.RE
+.PP
+/usr/share/factory/etc
+.RS 4
+\fBfile-hierarchy\fR(7)
+.RE
+.PP
+/usr/share/factory/var
+.RS 4
+\fBfile-hierarchy\fR(7)
+.RE
+.PP
 /usr/share/zoneinfo/
 .RS 4
 \fBlocaltime\fR(5)
@@ -7602,12 +8021,30 @@ $XDG_CONFIG_HOME/systemd/user/
 .PP
 /var
 .RS 4
+\fBfile-hierarchy\fR(7),
 \fBjournald.conf\fR(5),
 \fBsystemd-journald.service\fR(8),
 \fBsystemd-nspawn\fR(1),
+\fBsystemd-update-done.service\fR(8),
+\fBsystemd.unit\fR(5),
 \fBtmpfiles.d\fR(5)
 .RE
 .PP
+/var/\&.updated
+.RS 4
+\fBsystemd-update-done.service\fR(8)
+.RE
+.PP
+/var/cache
+.RS 4
+\fBfile-hierarchy\fR(7)
+.RE
+.PP
+/var/lib
+.RS 4
+\fBfile-hierarchy\fR(7)
+.RE
+.PP
 /var/lib/dbus/machine\-id
 .RS 4
 \fBmachine-id\fR(5)
@@ -7618,6 +8055,11 @@ $XDG_CONFIG_HOME/systemd/user/
 \fBsystemd-backlight@.service\fR(8)
 .RE
 .PP
+/var/lib/systemd/coredump
+.RS 4
+\fBcoredump.conf\fR(5)
+.RE
+.PP
 /var/lib/systemd/random\-seed
 .RS 4
 \fBsystemd-random-seed.service\fR(8)
@@ -7628,6 +8070,11 @@ $XDG_CONFIG_HOME/systemd/user/
 \fBsystemd-rfkill@.service\fR(8)
 .RE
 .PP
+/var/log
+.RS 4
+\fBfile-hierarchy\fR(7)
+.RE
+.PP
 /var/log/journal
 .RS 4
 \fBjournald.conf\fR(5),
@@ -7643,6 +8090,7 @@ $XDG_CONFIG_HOME/systemd/user/
 .PP
 /var/run
 .RS 4
+\fBfile-hierarchy\fR(7),
 \fBtmpfiles.d\fR(5)
 .RE
 .PP
@@ -7656,8 +8104,14 @@ $XDG_CONFIG_HOME/systemd/user/
 \fBrunlevel\fR(8)
 .RE
 .PP
+/var/spool
+.RS 4
+\fBfile-hierarchy\fR(7)
+.RE
+.PP
 /var/tmp
 .RS 4
+\fBfile-hierarchy\fR(7),
 \fBsystemd.exec\fR(5),
 \fBtmpfiles.d\fR(5)
 .RE
@@ -7688,6 +8142,16 @@ bluetooth\&.target
 \fBbusctl\fR(1)
 .RE
 .PP
+\fBcoredumpctl\fR
+.RS 4
+\fBcoredumpctl\fR(1)
+.RE
+.PP
+cryptsetup\-pre\&.target
+.RS 4
+\fBsystemd.special\fR(7)
+.RE
+.PP
 cryptsetup\&.target
 .RS 4
 \fBsystemd.special\fR(7)
@@ -8180,11 +8644,6 @@ systemd\-bus\-proxyd@\&.service
 \fBsystemd-cgtop\fR(1)
 .RE
 .PP
-\fBsystemd\-coredumpctl\fR
-.RS 4
-\fBsystemd-coredumpctl\fR(1)
-.RE
-.PP
 systemd\-cryptsetup@\&.service
 .RS 4
 \fBsystemd-cryptsetup@.service\fR(8)
@@ -8325,6 +8784,11 @@ systemd\-networkd\&.service
 \fBsystemd-nspawn\fR(1)
 .RE
 .PP
+\fBsystemd\-path\fR
+.RS 4
+\fBsystemd-path\fR(1)
+.RE
+.PP
 systemd\-poweroff\&.service
 .RS 4
 \fBsystemd-halt.service\fR(8)
@@ -8410,6 +8874,16 @@ systemd\-sysctl\&.service
 \fBsystemd-sysctl.service\fR(8)
 .RE
 .PP
+\fBsystemd\-sysusers\fR
+.RS 4
+\fBsystemd-sysusers\fR(8)
+.RE
+.PP
+systemd\-sysusers\&.service
+.RS 4
+\fBsystemd-sysusers\fR(8)
+.RE
+.PP
 systemd\-timedated\&.service
 .RS 4
 \fBsystemd-timedated.service\fR(8)
@@ -8465,6 +8939,11 @@ systemd\-udevd\&.service
 \fBsystemd-udevd.service\fR(8)
 .RE
 .PP
+systemd\-update\-done\&.service
+.RS 4
+\fBsystemd-update-done.service\fR(8)
+.RE
+.PP
 systemd\-update\-utmp\-runlevel\&.service
 .RS 4
 \fBsystemd-update-utmp.service\fR(8)
@@ -8533,4 +9012,4 @@ user\&.slice
 .RE
 .SH "COLOPHON"
 .PP
-This index contains 1535 entries in 14 sections, referring to 170 individual manual pages\&.
+This index contains 1621 entries in 14 sections, referring to 177 individual manual pages\&.
index f547562a8fcd268ad1b87fa217ce08c350698e22..d50976a6f3a58e97383171398a61c813837931df 100644 (file)
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="systemd.directives"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>systemd.directives — Index of configuration directives</p></div><div class="refsect1"><a name="idm214187248224"></a><h2 id="Unit directives">Unit directives<a class="headerlink" title="Permalink to this headline" href="#Unit%20directives">¶</a></h2><p>Directives for configuring units, used in unit
-                files.</p><div class="variablelist"><a name="unit-directives"></a><dl class="variablelist"><dt id="Accept="><span class="term"><code class="varname">Accept=</code></span><a class="headerlink" title="Permalink to this term" href="#Accept=">¶</a></dt><dd><p><a href="systemd.socket.html"><span class="citerefentry"><span class="refentrytitle">systemd.socket</span>(5)</span></a></p></dd><dt id="AccuracySec="><span class="term"><code class="varname">AccuracySec=</code></span><a class="headerlink" title="Permalink to this term" href="#AccuracySec=">¶</a></dt><dd><p><a href="systemd.timer.html"><span class="citerefentry"><span class="refentrytitle">systemd.timer</span>(5)</span></a></p></dd><dt id="After="><span class="term"><code class="varname">After=</code></span><a class="headerlink" title="Permalink to this term" href="#After=">¶</a></dt><dd><p><a href="systemd.unit.html"><span class="citerefentry"><span class="refentrytitle">systemd.unit</span>(5)</span></a></p></dd><dt id="Alias="><span class="term"><code class="varname">Alias=</code></span><a class="headerlink" title="Permalink to this term" href="#Alias=">¶</a></dt><dd><p><a href="systemd.unit.html"><span class="citerefentry"><span class="refentrytitle">systemd.unit</span>(5)</span></a></p></dd><dt id="AllowIsolate="><span class="term"><code class="varname">AllowIsolate=</code></span><a class="headerlink" title="Permalink to this term" href="#AllowIsolate=">¶</a></dt><dd><p><a href="systemd.unit.html"><span class="citerefentry"><span class="refentrytitle">systemd.unit</span>(5)</span></a></p></dd><dt id="Also="><span class="term"><code class="varname">Also=</code></span><a class="headerlink" title="Permalink to this term" href="#Also=">¶</a></dt><dd><p><a href="systemd.unit.html"><span class="citerefentry"><span class="refentrytitle">systemd.unit</span>(5)</span></a></p></dd><dt id="AppArmorProfile="><span class="term"><code class="varname">AppArmorProfile=</code></span><a class="headerlink" title="Permalink to this term" href="#AppArmorProfile=">¶</a></dt><dd><p><a href="systemd.exec.html"><span class="citerefentry"><span class="refentrytitle">systemd.exec</span>(5)</span></a></p></dd><dt id="Backlog="><span class="term"><code class="varname">Backlog=</code></span><a class="headerlink" title="Permalink to this term" href="#Backlog=">¶</a></dt><dd><p><a href="systemd.socket.html"><span class="citerefentry"><span class="refentrytitle">systemd.socket</span>(5)</span></a></p></dd><dt id="Before="><span class="term"><code class="varname">Before=</code></span><a class="headerlink" title="Permalink to this term" href="#Before=">¶</a></dt><dd><p><a href="systemd.unit.html"><span class="citerefentry"><span class="refentrytitle">systemd.unit</span>(5)</span></a></p></dd><dt id="BindIPv6Only="><span class="term"><code class="varname">BindIPv6Only=</code></span><a class="headerlink" title="Permalink to this term" href="#BindIPv6Only=">¶</a></dt><dd><p><a href="systemd.socket.html"><span class="citerefentry"><span class="refentrytitle">systemd.socket</span>(5)</span></a></p></dd><dt id="BindToDevice="><span class="term"><code class="varname">BindToDevice=</code></span><a class="headerlink" title="Permalink to this term" href="#BindToDevice=">¶</a></dt><dd><p><a href="systemd.socket.html"><span class="citerefentry"><span class="refentrytitle">systemd.socket</span>(5)</span></a></p></dd><dt id="BindsTo="><span class="term"><code class="varname">BindsTo=</code></span><a class="headerlink" title="Permalink to this term" href="#BindsTo=">¶</a></dt><dd><p><a href="systemd.unit.html"><span class="citerefentry"><span class="refentrytitle">systemd.unit</span>(5)</span></a></p></dd><dt id="BlockIOAccounting="><span class="term"><code class="varname">BlockIOAccounting=</code></span><a class="headerlink" title="Permalink to this term" href="#BlockIOAccounting=">¶</a></dt><dd><p><a href="systemd.resource-control.html"><span class="citerefentry"><span class="refentrytitle">systemd.resource-control</span>(5)</span></a></p></dd><dt id="BlockIODeviceWeight="><span class="term"><code class="varname">BlockIODeviceWeight=</code></span><a class="headerlink" title="Permalink to this term" href="#BlockIODeviceWeight=">¶</a></dt><dd><p><a href="systemd.resource-control.html"><span class="citerefentry"><span class="refentrytitle">systemd.resource-control</span>(5)</span></a></p></dd><dt id="BlockIOReadBandwidth="><span class="term"><code class="varname">BlockIOReadBandwidth=</code></span><a class="headerlink" title="Permalink to this term" href="#BlockIOReadBandwidth=">¶</a></dt><dd><p><a href="systemd.resource-control.html"><span class="citerefentry"><span class="refentrytitle">systemd.resource-control</span>(5)</span></a></p></dd><dt id="BlockIOWeight="><span class="term"><code class="varname">BlockIOWeight=</code></span><a class="headerlink" title="Permalink to this term" href="#BlockIOWeight=">¶</a></dt><dd><p><a href="systemd.resource-control.html"><span class="citerefentry"><span class="refentrytitle">systemd.resource-control</span>(5)</span></a></p></dd><dt id="BlockIOWriteBandwidth="><span class="term"><code class="varname">BlockIOWriteBandwidth=</code></span><a class="headerlink" title="Permalink to this term" href="#BlockIOWriteBandwidth=">¶</a></dt><dd><p><a href="systemd.resource-control.html"><span class="citerefentry"><span class="refentrytitle">systemd.resource-control</span>(5)</span></a></p></dd><dt id="Broadcast="><span class="term"><code class="varname">Broadcast=</code></span><a class="headerlink" title="Permalink to this term" href="#Broadcast=">¶</a></dt><dd><p><a href="systemd.socket.html"><span class="citerefentry"><span class="refentrytitle">systemd.socket</span>(5)</span></a></p></dd><dt id="BusName="><span class="term"><code class="varname">BusName=</code></span><a class="headerlink" title="Permalink to this term" href="#BusName=">¶</a></dt><dd><p><a href="systemd.service.html"><span class="citerefentry"><span class="refentrytitle">systemd.service</span>(5)</span></a></p></dd><dt id="CPUAccounting="><span class="term"><code class="varname">CPUAccounting=</code></span><a class="headerlink" title="Permalink to this term" href="#CPUAccounting=">¶</a></dt><dd><p><a href="systemd.resource-control.html"><span class="citerefentry"><span class="refentrytitle">systemd.resource-control</span>(5)</span></a></p></dd><dt id="CPUAffinity="><span class="term"><code class="varname">CPUAffinity=</code></span><a class="headerlink" title="Permalink to this term" href="#CPUAffinity=">¶</a></dt><dd><p><a href="systemd.exec.html"><span class="citerefentry"><span class="refentrytitle">systemd.exec</span>(5)</span></a></p></dd><dt id="CPUQuota="><span class="term"><code class="varname">CPUQuota=</code></span><a class="headerlink" title="Permalink to this term" href="#CPUQuota=">¶</a></dt><dd><p><a href="systemd.resource-control.html"><span class="citerefentry"><span class="refentrytitle">systemd.resource-control</span>(5)</span></a></p></dd><dt id="CPUSchedulingPolicy="><span class="term"><code class="varname">CPUSchedulingPolicy=</code></span><a class="headerlink" title="Permalink to this term" href="#CPUSchedulingPolicy=">¶</a></dt><dd><p><a href="systemd.exec.html"><span class="citerefentry"><span class="refentrytitle">systemd.exec</span>(5)</span></a></p></dd><dt id="CPUSchedulingPriority="><span class="term"><code class="varname">CPUSchedulingPriority=</code></span><a class="headerlink" title="Permalink to this term" href="#CPUSchedulingPriority=">¶</a></dt><dd><p><a href="systemd.exec.html"><span class="citerefentry"><span class="refentrytitle">systemd.exec</span>(5)</span></a></p></dd><dt id="CPUSchedulingResetOnFork="><span class="term"><code class="varname">CPUSchedulingResetOnFork=</code></span><a class="headerlink" title="Permalink to this term" href="#CPUSchedulingResetOnFork=">¶</a></dt><dd><p><a href="systemd.exec.html"><span class="citerefentry"><span class="refentrytitle">systemd.exec</span>(5)</span></a></p></dd><dt id="CPUShares="><span class="term"><code class="varname">CPUShares=</code></span><a class="headerlink" title="Permalink to this term" href="#CPUShares=">¶</a></dt><dd><p><a href="systemd.resource-control.html"><span class="citerefentry"><span class="refentrytitle">systemd.resource-control</span>(5)</span></a></p></dd><dt id="Capabilities="><span class="term"><code class="varname">Capabilities=</code></span><a class="headerlink" title="Permalink to this term" href="#Capabilities=">¶</a></dt><dd><p><a href="systemd.exec.html"><span class="citerefentry"><span class="refentrytitle">systemd.exec</span>(5)</span></a></p></dd><dt id="CapabilityBoundingSet="><span class="term"><code class="varname">CapabilityBoundingSet=</code></span><a class="headerlink" title="Permalink to this term" href="#CapabilityBoundingSet=">¶</a></dt><dd><p><a href="systemd.exec.html"><span class="citerefentry"><span class="refentrytitle">systemd.exec</span>(5)</span></a></p></dd><dt id="ConditionACPower="><span class="term"><code class="varname">ConditionACPower=</code></span><a class="headerlink" title="Permalink to this term" href="#ConditionACPower=">¶</a></dt><dd><p><a href="systemd.unit.html"><span class="citerefentry"><span class="refentrytitle">systemd.unit</span>(5)</span></a></p></dd><dt id="ConditionArchitecture="><span class="term"><code class="varname">ConditionArchitecture=</code></span><a class="headerlink" title="Permalink to this term" href="#ConditionArchitecture=">¶</a></dt><dd><p><a href="systemd.unit.html"><span class="citerefentry"><span class="refentrytitle">systemd.unit</span>(5)</span></a></p></dd><dt id="ConditionCapability="><span class="term"><code class="varname">ConditionCapability=</code></span><a class="headerlink" title="Permalink to this term" href="#ConditionCapability=">¶</a></dt><dd><p><a href="systemd.unit.html"><span class="citerefentry"><span class="refentrytitle">systemd.unit</span>(5)</span></a></p></dd><dt id="ConditionDirectoryNotEmpty="><span class="term"><code class="varname">ConditionDirectoryNotEmpty=</code></span><a class="headerlink" title="Permalink to this term" href="#ConditionDirectoryNotEmpty=">¶</a></dt><dd><p><a href="systemd.unit.html"><span class="citerefentry"><span class="refentrytitle">systemd.unit</span>(5)</span></a></p></dd><dt id="ConditionFileIsExecutable="><span class="term"><code class="varname">ConditionFileIsExecutable=</code></span><a class="headerlink" title="Permalink to this term" href="#ConditionFileIsExecutable=">¶</a></dt><dd><p><a href="systemd.unit.html"><span class="citerefentry"><span class="refentrytitle">systemd.unit</span>(5)</span></a></p></dd><dt id="ConditionFileNotEmpty="><span class="term"><code class="varname">ConditionFileNotEmpty=</code></span><a class="headerlink" title="Permalink to this term" href="#ConditionFileNotEmpty=">¶</a></dt><dd><p><a href="systemd.unit.html"><span class="citerefentry"><span class="refentrytitle">systemd.unit</span>(5)</span></a></p></dd><dt id="ConditionHost="><span class="term"><code class="varname">ConditionHost=</code></span><a class="headerlink" title="Permalink to this term" href="#ConditionHost=">¶</a></dt><dd><p><a href="systemd.unit.html"><span class="citerefentry"><span class="refentrytitle">systemd.unit</span>(5)</span></a></p></dd><dt id="ConditionKernelCommandLine="><span class="term"><code class="varname">ConditionKernelCommandLine=</code></span><a class="headerlink" title="Permalink to this term" href="#ConditionKernelCommandLine=">¶</a></dt><dd><p><a href="systemd.unit.html"><span class="citerefentry"><span class="refentrytitle">systemd.unit</span>(5)</span></a></p></dd><dt id="ConditionNull="><span class="term"><code class="varname">ConditionNull=</code></span><a class="headerlink" title="Permalink to this term" href="#ConditionNull=">¶</a></dt><dd><p><a href="systemd.unit.html"><span class="citerefentry"><span class="refentrytitle">systemd.unit</span>(5)</span></a></p></dd><dt id="ConditionPathExists="><span class="term"><code class="varname">ConditionPathExists=</code></span><a class="headerlink" title="Permalink to this term" href="#ConditionPathExists=">¶</a></dt><dd><p><a href="systemd.unit.html"><span class="citerefentry"><span class="refentrytitle">systemd.unit</span>(5)</span></a></p></dd><dt id="ConditionPathExistsGlob="><span class="term"><code class="varname">ConditionPathExistsGlob=</code></span><a class="headerlink" title="Permalink to this term" href="#ConditionPathExistsGlob=">¶</a></dt><dd><p><a href="systemd.unit.html"><span class="citerefentry"><span class="refentrytitle">systemd.unit</span>(5)</span></a></p></dd><dt id="ConditionPathIsDirectory="><span class="term"><code class="varname">ConditionPathIsDirectory=</code></span><a class="headerlink" title="Permalink to this term" href="#ConditionPathIsDirectory=">¶</a></dt><dd><p><a href="systemd.unit.html"><span class="citerefentry"><span class="refentrytitle">systemd.unit</span>(5)</span></a></p></dd><dt id="ConditionPathIsMountPoint="><span class="term"><code class="varname">ConditionPathIsMountPoint=</code></span><a class="headerlink" title="Permalink to this term" href="#ConditionPathIsMountPoint=">¶</a></dt><dd><p><a href="systemd.unit.html"><span class="citerefentry"><span class="refentrytitle">systemd.unit</span>(5)</span></a></p></dd><dt id="ConditionPathIsReadWrite="><span class="term"><code class="varname">ConditionPathIsReadWrite=</code></span><a class="headerlink" title="Permalink to this term" href="#ConditionPathIsReadWrite=">¶</a></dt><dd><p><a href="systemd.unit.html"><span class="citerefentry"><span class="refentrytitle">systemd.unit</span>(5)</span></a></p></dd><dt id="ConditionPathIsSymbolicLink="><span class="term"><code class="varname">ConditionPathIsSymbolicLink=</code></span><a class="headerlink" title="Permalink to this term" href="#ConditionPathIsSymbolicLink=">¶</a></dt><dd><p><a href="systemd.unit.html"><span class="citerefentry"><span class="refentrytitle">systemd.unit</span>(5)</span></a></p></dd><dt id="ConditionSecurity="><span class="term"><code class="varname">ConditionSecurity=</code></span><a class="headerlink" title="Permalink to this term" href="#ConditionSecurity=">¶</a></dt><dd><p><a href="systemd.unit.html"><span class="citerefentry"><span class="refentrytitle">systemd.unit</span>(5)</span></a></p></dd><dt id="ConditionVirtualization="><span class="term"><code class="varname">ConditionVirtualization=</code></span><a class="headerlink" title="Permalink to this term" href="#ConditionVirtualization=">¶</a></dt><dd><p><a href="systemd.unit.html"><span class="citerefentry"><span class="refentrytitle">systemd.unit</span>(5)</span></a></p></dd><dt id="Conflicts="><span class="term"><code class="varname">Conflicts=</code></span><a class="headerlink" title="Permalink to this term" href="#Conflicts=">¶</a></dt><dd><p><a href="systemd.unit.html"><span class="citerefentry"><span class="refentrytitle">systemd.unit</span>(5)</span></a></p></dd><dt id="DefaultDependencies="><span class="term"><code class="varname">DefaultDependencies=</code></span><a class="headerlink" title="Permalink to this term" href="#DefaultDependencies=">¶</a></dt><dd><p><a href="systemd.unit.html"><span class="citerefentry"><span class="refentrytitle">systemd.unit</span>(5)</span></a></p></dd><dt id="Description="><span class="term"><code class="varname">Description=</code></span><a class="headerlink" title="Permalink to this term" href="#Description=">¶</a></dt><dd><p><a href="systemd.unit.html"><span class="citerefentry"><span class="refentrytitle">systemd.unit</span>(5)</span></a></p></dd><dt id="DeviceAllow="><span class="term"><code class="varname">DeviceAllow=</code></span><a class="headerlink" title="Permalink to this term" href="#DeviceAllow=">¶</a></dt><dd><p><a href="systemd.resource-control.html"><span class="citerefentry"><span class="refentrytitle">systemd.resource-control</span>(5)</span></a></p></dd><dt id="DevicePolicy="><span class="term"><code class="varname">DevicePolicy=</code></span><a class="headerlink" title="Permalink to this term" href="#DevicePolicy=">¶</a></dt><dd><p><a href="systemd.resource-control.html"><span class="citerefentry"><span class="refentrytitle">systemd.resource-control</span>(5)</span></a></p></dd><dt id="DirectoryMode="><span class="term"><code class="varname">DirectoryMode=</code></span><a class="headerlink" title="Permalink to this term" href="#DirectoryMode=">¶</a></dt><dd><p><a href="systemd.automount.html"><span class="citerefentry"><span class="refentrytitle">systemd.automount</span>(5)</span></a>, <a href="systemd.mount.html"><span class="citerefentry"><span class="refentrytitle">systemd.mount</span>(5)</span></a>, <a href="systemd.path.html"><span class="citerefentry"><span class="refentrytitle">systemd.path</span>(5)</span></a>, <a href="systemd.socket.html"><span class="citerefentry"><span class="refentrytitle">systemd.socket</span>(5)</span></a></p></dd><dt id="DirectoryNotEmpty="><span class="term"><code class="varname">DirectoryNotEmpty=</code></span><a class="headerlink" title="Permalink to this term" href="#DirectoryNotEmpty=">¶</a></dt><dd><p><a href="systemd.path.html"><span class="citerefentry"><span class="refentrytitle">systemd.path</span>(5)</span></a></p></dd><dt id="Documentation="><span class="term"><code class="varname">Documentation=</code></span><a class="headerlink" title="Permalink to this term" href="#Documentation=">¶</a></dt><dd><p><a href="systemd.unit.html"><span class="citerefentry"><span class="refentrytitle">systemd.unit</span>(5)</span></a></p></dd><dt id="Environment="><span class="term"><code class="varname">Environment=</code></span><a class="headerlink" title="Permalink to this term" href="#Environment=">¶</a></dt><dd><p><a href="systemd.exec.html"><span class="citerefentry"><span class="refentrytitle">systemd.exec</span>(5)</span></a></p></dd><dt id="EnvironmentFile="><span class="term"><code class="varname">EnvironmentFile=</code></span><a class="headerlink" title="Permalink to this term" href="#EnvironmentFile=">¶</a></dt><dd><p><a href="systemd.exec.html"><span class="citerefentry"><span class="refentrytitle">systemd.exec</span>(5)</span></a></p></dd><dt id="ExecReload="><span class="term"><code class="varname">ExecReload=</code></span><a class="headerlink" title="Permalink to this term" href="#ExecReload=">¶</a></dt><dd><p><a href="systemd.service.html"><span class="citerefentry"><span class="refentrytitle">systemd.service</span>(5)</span></a></p></dd><dt id="ExecStart="><span class="term"><code class="varname">ExecStart=</code></span><a class="headerlink" title="Permalink to this term" href="#ExecStart=">¶</a></dt><dd><p><a href="systemd.service.html"><span class="citerefentry"><span class="refentrytitle">systemd.service</span>(5)</span></a></p></dd><dt id="ExecStartPost="><span class="term"><code class="varname">ExecStartPost=</code></span><a class="headerlink" title="Permalink to this term" href="#ExecStartPost=">¶</a></dt><dd><p><a href="systemd.service.html"><span class="citerefentry"><span class="refentrytitle">systemd.service</span>(5)</span></a>, <a href="systemd.socket.html"><span class="citerefentry"><span class="refentrytitle">systemd.socket</span>(5)</span></a></p></dd><dt id="ExecStartPre="><span class="term"><code class="varname">ExecStartPre=</code></span><a class="headerlink" title="Permalink to this term" href="#ExecStartPre=">¶</a></dt><dd><p><a href="systemd.service.html"><span class="citerefentry"><span class="refentrytitle">systemd.service</span>(5)</span></a>, <a href="systemd.socket.html"><span class="citerefentry"><span class="refentrytitle">systemd.socket</span>(5)</span></a></p></dd><dt id="ExecStop="><span class="term"><code class="varname">ExecStop=</code></span><a class="headerlink" title="Permalink to this term" href="#ExecStop=">¶</a></dt><dd><p><a href="systemd.service.html"><span class="citerefentry"><span class="refentrytitle">systemd.service</span>(5)</span></a></p></dd><dt id="ExecStopPost="><span class="term"><code class="varname">ExecStopPost=</code></span><a class="headerlink" title="Permalink to this term" href="#ExecStopPost=">¶</a></dt><dd><p><a href="systemd.service.html"><span class="citerefentry"><span class="refentrytitle">systemd.service</span>(5)</span></a>, <a href="systemd.socket.html"><span class="citerefentry"><span class="refentrytitle">systemd.socket</span>(5)</span></a></p></dd><dt id="ExecStopPre="><span class="term"><code class="varname">ExecStopPre=</code></span><a class="headerlink" title="Permalink to this term" href="#ExecStopPre=">¶</a></dt><dd><p><a href="systemd.socket.html"><span class="citerefentry"><span class="refentrytitle">systemd.socket</span>(5)</span></a></p></dd><dt id="FailureAction="><span class="term"><code class="varname">FailureAction=</code></span><a class="headerlink" title="Permalink to this term" href="#FailureAction=">¶</a></dt><dd><p><a href="systemd.service.html"><span class="citerefentry"><span class="refentrytitle">systemd.service</span>(5)</span></a></p></dd><dt id="FreeBind="><span class="term"><code class="varname">FreeBind=</code></span><a class="headerlink" title="Permalink to this term" href="#FreeBind=">¶</a></dt><dd><p><a href="systemd.socket.html"><span class="citerefentry"><span class="refentrytitle">systemd.socket</span>(5)</span></a></p></dd><dt id="Group="><span class="term"><code class="varname">Group=</code></span><a class="headerlink" title="Permalink to this term" href="#Group=">¶</a></dt><dd><p><a href="systemd.exec.html"><span class="citerefentry"><span class="refentrytitle">systemd.exec</span>(5)</span></a></p></dd><dt id="GuessMainPID="><span class="term"><code class="varname">GuessMainPID=</code></span><a class="headerlink" title="Permalink to this term" href="#GuessMainPID=">¶</a></dt><dd><p><a href="systemd.service.html"><span class="citerefentry"><span class="refentrytitle">systemd.service</span>(5)</span></a></p></dd><dt id="IOSchedulingClass="><span class="term"><code class="varname">IOSchedulingClass=</code></span><a class="headerlink" title="Permalink to this term" href="#IOSchedulingClass=">¶</a></dt><dd><p><a href="systemd.exec.html"><span class="citerefentry"><span class="refentrytitle">systemd.exec</span>(5)</span></a></p></dd><dt id="IOSchedulingPriority="><span class="term"><code class="varname">IOSchedulingPriority=</code></span><a class="headerlink" title="Permalink to this term" href="#IOSchedulingPriority=">¶</a></dt><dd><p><a href="systemd.exec.html"><span class="citerefentry"><span class="refentrytitle">systemd.exec</span>(5)</span></a></p></dd><dt id="IPTOS="><span class="term"><code class="varname">IPTOS=</code></span><a class="headerlink" title="Permalink to this term" href="#IPTOS=">¶</a></dt><dd><p><a href="systemd.socket.html"><span class="citerefentry"><span class="refentrytitle">systemd.socket</span>(5)</span></a></p></dd><dt id="IPTTL="><span class="term"><code class="varname">IPTTL=</code></span><a class="headerlink" title="Permalink to this term" href="#IPTTL=">¶</a></dt><dd><p><a href="systemd.socket.html"><span class="citerefentry"><span class="refentrytitle">systemd.socket</span>(5)</span></a></p></dd><dt id="IgnoreOnIsolate="><span class="term"><code class="varname">IgnoreOnIsolate=</code></span><a class="headerlink" title="Permalink to this term" href="#IgnoreOnIsolate=">¶</a></dt><dd><p><a href="systemd.unit.html"><span class="citerefentry"><span class="refentrytitle">systemd.unit</span>(5)</span></a></p></dd><dt id="IgnoreOnSnapshot="><span class="term"><code class="varname">IgnoreOnSnapshot=</code></span><a class="headerlink" title="Permalink to this term" href="#IgnoreOnSnapshot=">¶</a></dt><dd><p><a href="systemd.unit.html"><span class="citerefentry"><span class="refentrytitle">systemd.unit</span>(5)</span></a></p></dd><dt id="IgnoreSIGPIPE="><span class="term"><code class="varname">IgnoreSIGPIPE=</code></span><a class="headerlink" title="Permalink to this term" href="#IgnoreSIGPIPE=">¶</a></dt><dd><p><a href="systemd.exec.html"><span class="citerefentry"><span class="refentrytitle">systemd.exec</span>(5)</span></a></p></dd><dt id="InaccessibleDirectories="><span class="term"><code class="varname">InaccessibleDirectories=</code></span><a class="headerlink" title="Permalink to this term" href="#InaccessibleDirectories=">¶</a></dt><dd><p><a href="systemd.exec.html"><span class="citerefentry"><span class="refentrytitle">systemd.exec</span>(5)</span></a></p></dd><dt id="JobTimeoutSec="><span class="term"><code class="varname">JobTimeoutSec=</code></span><a class="headerlink" title="Permalink to this term" href="#JobTimeoutSec=">¶</a></dt><dd><p><a href="systemd.unit.html"><span class="citerefentry"><span class="refentrytitle">systemd.unit</span>(5)</span></a></p></dd><dt id="JoinsNamespaceOf="><span class="term"><code class="varname">JoinsNamespaceOf=</code></span><a class="headerlink" title="Permalink to this term" href="#JoinsNamespaceOf=">¶</a></dt><dd><p><a href="systemd.unit.html"><span class="citerefentry"><span class="refentrytitle">systemd.unit</span>(5)</span></a></p></dd><dt id="KeepAlive="><span class="term"><code class="varname">KeepAlive=</code></span><a class="headerlink" title="Permalink to this term" href="#KeepAlive=">¶</a></dt><dd><p><a href="systemd.socket.html"><span class="citerefentry"><span class="refentrytitle">systemd.socket</span>(5)</span></a></p></dd><dt id="KillMode="><span class="term"><code class="varname">KillMode=</code></span><a class="headerlink" title="Permalink to this term" href="#KillMode=">¶</a></dt><dd><p><a href="systemd.kill.html"><span class="citerefentry"><span class="refentrytitle">systemd.kill</span>(5)</span></a></p></dd><dt id="KillSignal="><span class="term"><code class="varname">KillSignal=</code></span><a class="headerlink" title="Permalink to this term" href="#KillSignal=">¶</a></dt><dd><p><a href="systemd.kill.html"><span class="citerefentry"><span class="refentrytitle">systemd.kill</span>(5)</span></a></p></dd><dt id="LimitAS="><span class="term"><code class="varname">LimitAS=</code></span><a class="headerlink" title="Permalink to this term" href="#LimitAS=">¶</a></dt><dd><p><a href="systemd.exec.html"><span class="citerefentry"><span class="refentrytitle">systemd.exec</span>(5)</span></a></p></dd><dt id="LimitCORE="><span class="term"><code class="varname">LimitCORE=</code></span><a class="headerlink" title="Permalink to this term" href="#LimitCORE=">¶</a></dt><dd><p><a href="systemd.exec.html"><span class="citerefentry"><span class="refentrytitle">systemd.exec</span>(5)</span></a></p></dd><dt id="LimitCPU="><span class="term"><code class="varname">LimitCPU=</code></span><a class="headerlink" title="Permalink to this term" href="#LimitCPU=">¶</a></dt><dd><p><a href="systemd.exec.html"><span class="citerefentry"><span class="refentrytitle">systemd.exec</span>(5)</span></a></p></dd><dt id="LimitDATA="><span class="term"><code class="varname">LimitDATA=</code></span><a class="headerlink" title="Permalink to this term" href="#LimitDATA=">¶</a></dt><dd><p><a href="systemd.exec.html"><span class="citerefentry"><span class="refentrytitle">systemd.exec</span>(5)</span></a></p></dd><dt id="LimitFSIZE="><span class="term"><code class="varname">LimitFSIZE=</code></span><a class="headerlink" title="Permalink to this term" href="#LimitFSIZE=">¶</a></dt><dd><p><a href="systemd.exec.html"><span class="citerefentry"><span class="refentrytitle">systemd.exec</span>(5)</span></a></p></dd><dt id="LimitLOCKS="><span class="term"><code class="varname">LimitLOCKS=</code></span><a class="headerlink" title="Permalink to this term" href="#LimitLOCKS=">¶</a></dt><dd><p><a href="systemd.exec.html"><span class="citerefentry"><span class="refentrytitle">systemd.exec</span>(5)</span></a></p></dd><dt id="LimitMEMLOCK="><span class="term"><code class="varname">LimitMEMLOCK=</code></span><a class="headerlink" title="Permalink to this term" href="#LimitMEMLOCK=">¶</a></dt><dd><p><a href="systemd.exec.html"><span class="citerefentry"><span class="refentrytitle">systemd.exec</span>(5)</span></a></p></dd><dt id="LimitMSGQUEUE="><span class="term"><code class="varname">LimitMSGQUEUE=</code></span><a class="headerlink" title="Permalink to this term" href="#LimitMSGQUEUE=">¶</a></dt><dd><p><a href="systemd.exec.html"><span class="citerefentry"><span class="refentrytitle">systemd.exec</span>(5)</span></a></p></dd><dt id="LimitNICE="><span class="term"><code class="varname">LimitNICE=</code></span><a class="headerlink" title="Permalink to this term" href="#LimitNICE=">¶</a></dt><dd><p><a href="systemd.exec.html"><span class="citerefentry"><span class="refentrytitle">systemd.exec</span>(5)</span></a></p></dd><dt id="LimitNOFILE="><span class="term"><code class="varname">LimitNOFILE=</code></span><a class="headerlink" title="Permalink to this term" href="#LimitNOFILE=">¶</a></dt><dd><p><a href="systemd.exec.html"><span class="citerefentry"><span class="refentrytitle">systemd.exec</span>(5)</span></a></p></dd><dt id="LimitNPROC="><span class="term"><code class="varname">LimitNPROC=</code></span><a class="headerlink" title="Permalink to this term" href="#LimitNPROC=">¶</a></dt><dd><p><a href="systemd.exec.html"><span class="citerefentry"><span class="refentrytitle">systemd.exec</span>(5)</span></a></p></dd><dt id="LimitRSS="><span class="term"><code class="varname">LimitRSS=</code></span><a class="headerlink" title="Permalink to this term" href="#LimitRSS=">¶</a></dt><dd><p><a href="systemd.exec.html"><span class="citerefentry"><span class="refentrytitle">systemd.exec</span>(5)</span></a></p></dd><dt id="LimitRTPRIO="><span class="term"><code class="varname">LimitRTPRIO=</code></span><a class="headerlink" title="Permalink to this term" href="#LimitRTPRIO=">¶</a></dt><dd><p><a href="systemd.exec.html"><span class="citerefentry"><span class="refentrytitle">systemd.exec</span>(5)</span></a></p></dd><dt id="LimitRTTIME="><span class="term"><code class="varname">LimitRTTIME=</code></span><a class="headerlink" title="Permalink to this term" href="#LimitRTTIME=">¶</a></dt><dd><p><a href="systemd.exec.html"><span class="citerefentry"><span class="refentrytitle">systemd.exec</span>(5)</span></a></p></dd><dt id="LimitSIGPENDING="><span class="term"><code class="varname">LimitSIGPENDING=</code></span><a class="headerlink" title="Permalink to this term" href="#LimitSIGPENDING=">¶</a></dt><dd><p><a href="systemd.exec.html"><span class="citerefentry"><span class="refentrytitle">systemd.exec</span>(5)</span></a></p></dd><dt id="LimitSTACK="><span class="term"><code class="varname">LimitSTACK=</code></span><a class="headerlink" title="Permalink to this term" href="#LimitSTACK=">¶</a></dt><dd><p><a href="systemd.exec.html"><span class="citerefentry"><span class="refentrytitle">systemd.exec</span>(5)</span></a></p></dd><dt id="ListenDatagram="><span class="term"><code class="varname">ListenDatagram=</code></span><a class="headerlink" title="Permalink to this term" href="#ListenDatagram=">¶</a></dt><dd><p><a href="systemd.socket.html"><span class="citerefentry"><span class="refentrytitle">systemd.socket</span>(5)</span></a></p></dd><dt id="ListenFIFO="><span class="term"><code class="varname">ListenFIFO=</code></span><a class="headerlink" title="Permalink to this term" href="#ListenFIFO=">¶</a></dt><dd><p><a href="systemd.socket.html"><span class="citerefentry"><span class="refentrytitle">systemd.socket</span>(5)</span></a></p></dd><dt id="ListenMessageQueue="><span class="term"><code class="varname">ListenMessageQueue=</code></span><a class="headerlink" title="Permalink to this term" href="#ListenMessageQueue=">¶</a></dt><dd><p><a href="systemd.socket.html"><span class="citerefentry"><span class="refentrytitle">systemd.socket</span>(5)</span></a></p></dd><dt id="ListenNetlink="><span class="term"><code class="varname">ListenNetlink=</code></span><a class="headerlink" title="Permalink to this term" href="#ListenNetlink=">¶</a></dt><dd><p><a href="systemd.socket.html"><span class="citerefentry"><span class="refentrytitle">systemd.socket</span>(5)</span></a></p></dd><dt id="ListenSequentialPacket="><span class="term"><code class="varname">ListenSequentialPacket=</code></span><a class="headerlink" title="Permalink to this term" href="#ListenSequentialPacket=">¶</a></dt><dd><p><a href="systemd.socket.html"><span class="citerefentry"><span class="refentrytitle">systemd.socket</span>(5)</span></a></p></dd><dt id="ListenSpecial="><span class="term"><code class="varname">ListenSpecial=</code></span><a class="headerlink" title="Permalink to this term" href="#ListenSpecial=">¶</a></dt><dd><p><a href="systemd.socket.html"><span class="citerefentry"><span class="refentrytitle">systemd.socket</span>(5)</span></a></p></dd><dt id="ListenStream="><span class="term"><code class="varname">ListenStream=</code></span><a class="headerlink" title="Permalink to this term" href="#ListenStream=">¶</a></dt><dd><p><a href="systemd.socket.html"><span class="citerefentry"><span class="refentrytitle">systemd.socket</span>(5)</span></a></p></dd><dt id="MakeDirectory="><span class="term"><code class="varname">MakeDirectory=</code></span><a class="headerlink" title="Permalink to this term" href="#MakeDirectory=">¶</a></dt><dd><p><a href="systemd.path.html"><span class="citerefentry"><span class="refentrytitle">systemd.path</span>(5)</span></a></p></dd><dt id="Mark="><span class="term"><code class="varname">Mark=</code></span><a class="headerlink" title="Permalink to this term" href="#Mark=">¶</a></dt><dd><p><a href="systemd.socket.html"><span class="citerefentry"><span class="refentrytitle">systemd.socket</span>(5)</span></a></p></dd><dt id="MaxConnections="><span class="term"><code class="varname">MaxConnections=</code></span><a class="headerlink" title="Permalink to this term" href="#MaxConnections=">¶</a></dt><dd><p><a href="systemd.socket.html"><span class="citerefentry"><span class="refentrytitle">systemd.socket</span>(5)</span></a></p></dd><dt id="MemoryAccounting="><span class="term"><code class="varname">MemoryAccounting=</code></span><a class="headerlink" title="Permalink to this term" href="#MemoryAccounting=">¶</a></dt><dd><p><a href="systemd.resource-control.html"><span class="citerefentry"><span class="refentrytitle">systemd.resource-control</span>(5)</span></a></p></dd><dt id="MemoryLimit="><span class="term"><code class="varname">MemoryLimit=</code></span><a class="headerlink" title="Permalink to this term" href="#MemoryLimit=">¶</a></dt><dd><p><a href="systemd.resource-control.html"><span class="citerefentry"><span class="refentrytitle">systemd.resource-control</span>(5)</span></a></p></dd><dt id="MessageQueueMaxMessages="><span class="term"><code class="varname">MessageQueueMaxMessages=</code></span><a class="headerlink" title="Permalink to this term" href="#MessageQueueMaxMessages=">¶</a></dt><dd><p><a href="systemd.socket.html"><span class="citerefentry"><span class="refentrytitle">systemd.socket</span>(5)</span></a></p></dd><dt id="MessageQueueMessageSize="><span class="term"><code class="varname">MessageQueueMessageSize=</code></span><a class="headerlink" title="Permalink to this term" href="#MessageQueueMessageSize=">¶</a></dt><dd><p><a href="systemd.socket.html"><span class="citerefentry"><span class="refentrytitle">systemd.socket</span>(5)</span></a></p></dd><dt id="MountFlags="><span class="term"><code class="varname">MountFlags=</code></span><a class="headerlink" title="Permalink to this term" href="#MountFlags=">¶</a></dt><dd><p><a href="systemd.exec.html"><span class="citerefentry"><span class="refentrytitle">systemd.exec</span>(5)</span></a></p></dd><dt id="Nice="><span class="term"><code class="varname">Nice=</code></span><a class="headerlink" title="Permalink to this term" href="#Nice=">¶</a></dt><dd><p><a href="systemd.exec.html"><span class="citerefentry"><span class="refentrytitle">systemd.exec</span>(5)</span></a></p></dd><dt id="NoNewPrivileges="><span class="term"><code class="varname">NoNewPrivileges=</code></span><a class="headerlink" title="Permalink to this term" href="#NoNewPrivileges=">¶</a></dt><dd><p><a href="systemd.exec.html"><span class="citerefentry"><span class="refentrytitle">systemd.exec</span>(5)</span></a></p></dd><dt id="NonBlocking="><span class="term"><code class="varname">NonBlocking=</code></span><a class="headerlink" title="Permalink to this term" href="#NonBlocking=">¶</a></dt><dd><p><a href="systemd.service.html"><span class="citerefentry"><span class="refentrytitle">systemd.service</span>(5)</span></a></p></dd><dt id="NotifyAccess="><span class="term"><code class="varname">NotifyAccess=</code></span><a class="headerlink" title="Permalink to this term" href="#NotifyAccess=">¶</a></dt><dd><p><a href="systemd.service.html"><span class="citerefentry"><span class="refentrytitle">systemd.service</span>(5)</span></a></p></dd><dt id="OOMScoreAdjust="><span class="term"><code class="varname">OOMScoreAdjust=</code></span><a class="headerlink" title="Permalink to this term" href="#OOMScoreAdjust=">¶</a></dt><dd><p><a href="systemd.exec.html"><span class="citerefentry"><span class="refentrytitle">systemd.exec</span>(5)</span></a></p></dd><dt id="OnActiveSec="><span class="term"><code class="varname">OnActiveSec=</code></span><a class="headerlink" title="Permalink to this term" href="#OnActiveSec=">¶</a></dt><dd><p><a href="systemd.timer.html"><span class="citerefentry"><span class="refentrytitle">systemd.timer</span>(5)</span></a></p></dd><dt id="OnBootSec="><span class="term"><code class="varname">OnBootSec=</code></span><a class="headerlink" title="Permalink to this term" href="#OnBootSec=">¶</a></dt><dd><p><a href="systemd.timer.html"><span class="citerefentry"><span class="refentrytitle">systemd.timer</span>(5)</span></a></p></dd><dt id="OnCalendar="><span class="term"><code class="varname">OnCalendar=</code></span><a class="headerlink" title="Permalink to this term" href="#OnCalendar=">¶</a></dt><dd><p><a href="systemd.timer.html"><span class="citerefentry"><span class="refentrytitle">systemd.timer</span>(5)</span></a></p></dd><dt id="OnFailure="><span class="term"><code class="varname">OnFailure=</code></span><a class="headerlink" title="Permalink to this term" href="#OnFailure=">¶</a></dt><dd><p><a href="systemd.unit.html"><span class="citerefentry"><span class="refentrytitle">systemd.unit</span>(5)</span></a></p></dd><dt id="OnFailureJobMode="><span class="term"><code class="varname">OnFailureJobMode=</code></span><a class="headerlink" title="Permalink to this term" href="#OnFailureJobMode=">¶</a></dt><dd><p><a href="systemd.unit.html"><span class="citerefentry"><span class="refentrytitle">systemd.unit</span>(5)</span></a></p></dd><dt id="OnStartupSec="><span class="term"><code class="varname">OnStartupSec=</code></span><a class="headerlink" title="Permalink to this term" href="#OnStartupSec=">¶</a></dt><dd><p><a href="systemd.timer.html"><span class="citerefentry"><span class="refentrytitle">systemd.timer</span>(5)</span></a></p></dd><dt id="OnUnitActiveSec="><span class="term"><code class="varname">OnUnitActiveSec=</code></span><a class="headerlink" title="Permalink to this term" href="#OnUnitActiveSec=">¶</a></dt><dd><p><a href="systemd.timer.html"><span class="citerefentry"><span class="refentrytitle">systemd.timer</span>(5)</span></a></p></dd><dt id="OnUnitInactiveSec="><span class="term"><code class="varname">OnUnitInactiveSec=</code></span><a class="headerlink" title="Permalink to this term" href="#OnUnitInactiveSec=">¶</a></dt><dd><p><a href="systemd.timer.html"><span class="citerefentry"><span class="refentrytitle">systemd.timer</span>(5)</span></a></p></dd><dt id="Options="><span class="term"><code class="varname">Options=</code></span><a class="headerlink" title="Permalink to this term" href="#Options=">¶</a></dt><dd><p><a href="systemd.mount.html"><span class="citerefentry"><span class="refentrytitle">systemd.mount</span>(5)</span></a></p></dd><dt id="PAMName="><span class="term"><code class="varname">PAMName=</code></span><a class="headerlink" title="Permalink to this term" href="#PAMName=">¶</a></dt><dd><p><a href="systemd.exec.html"><span class="citerefentry"><span class="refentrytitle">systemd.exec</span>(5)</span></a></p></dd><dt id="PIDFile="><span class="term"><code class="varname">PIDFile=</code></span><a class="headerlink" title="Permalink to this term" href="#PIDFile=">¶</a></dt><dd><p><a href="systemd.service.html"><span class="citerefentry"><span class="refentrytitle">systemd.service</span>(5)</span></a></p></dd><dt id="PartOf="><span class="term"><code class="varname">PartOf=</code></span><a class="headerlink" title="Permalink to this term" href="#PartOf=">¶</a></dt><dd><p><a href="systemd.unit.html"><span class="citerefentry"><span class="refentrytitle">systemd.unit</span>(5)</span></a></p></dd><dt id="PassCredentials="><span class="term"><code class="varname">PassCredentials=</code></span><a class="headerlink" title="Permalink to this term" href="#PassCredentials=">¶</a></dt><dd><p><a href="systemd.socket.html"><span class="citerefentry"><span class="refentrytitle">systemd.socket</span>(5)</span></a></p></dd><dt id="PassSecurity="><span class="term"><code class="varname">PassSecurity=</code></span><a class="headerlink" title="Permalink to this term" href="#PassSecurity=">¶</a></dt><dd><p><a href="systemd.socket.html"><span class="citerefentry"><span class="refentrytitle">systemd.socket</span>(5)</span></a></p></dd><dt id="PathChanged="><span class="term"><code class="varname">PathChanged=</code></span><a class="headerlink" title="Permalink to this term" href="#PathChanged=">¶</a></dt><dd><p><a href="systemd.path.html"><span class="citerefentry"><span class="refentrytitle">systemd.path</span>(5)</span></a></p></dd><dt id="PathExists="><span class="term"><code class="varname">PathExists=</code></span><a class="headerlink" title="Permalink to this term" href="#PathExists=">¶</a></dt><dd><p><a href="systemd.path.html"><span class="citerefentry"><span class="refentrytitle">systemd.path</span>(5)</span></a></p></dd><dt id="PathExistsGlob="><span class="term"><code class="varname">PathExistsGlob=</code></span><a class="headerlink" title="Permalink to this term" href="#PathExistsGlob=">¶</a></dt><dd><p><a href="systemd.path.html"><span class="citerefentry"><span class="refentrytitle">systemd.path</span>(5)</span></a></p></dd><dt id="PathModified="><span class="term"><code class="varname">PathModified=</code></span><a class="headerlink" title="Permalink to this term" href="#PathModified=">¶</a></dt><dd><p><a href="systemd.path.html"><span class="citerefentry"><span class="refentrytitle">systemd.path</span>(5)</span></a></p></dd><dt id="PermissionsStartOnly="><span class="term"><code class="varname">PermissionsStartOnly=</code></span><a class="headerlink" title="Permalink to this term" href="#PermissionsStartOnly=">¶</a></dt><dd><p><a href="systemd.service.html"><span class="citerefentry"><span class="refentrytitle">systemd.service</span>(5)</span></a></p></dd><dt id="Persistent="><span class="term"><code class="varname">Persistent=</code></span><a class="headerlink" title="Permalink to this term" href="#Persistent=">¶</a></dt><dd><p><a href="systemd.timer.html"><span class="citerefentry"><span class="refentrytitle">systemd.timer</span>(5)</span></a></p></dd><dt id="Personality="><span class="term"><code class="varname">Personality=</code></span><a class="headerlink" title="Permalink to this term" href="#Personality=">¶</a></dt><dd><p><a href="systemd.exec.html"><span class="citerefentry"><span class="refentrytitle">systemd.exec</span>(5)</span></a></p></dd><dt id="PipeSize="><span class="term"><code class="varname">PipeSize=</code></span><a class="headerlink" title="Permalink to this term" href="#PipeSize=">¶</a></dt><dd><p><a href="systemd.socket.html"><span class="citerefentry"><span class="refentrytitle">systemd.socket</span>(5)</span></a></p></dd><dt id="Priority="><span class="term"><code class="varname">Priority=</code></span><a class="headerlink" title="Permalink to this term" href="#Priority=">¶</a></dt><dd><p><a href="systemd.socket.html"><span class="citerefentry"><span class="refentrytitle">systemd.socket</span>(5)</span></a>, <a href="systemd.swap.html"><span class="citerefentry"><span class="refentrytitle">systemd.swap</span>(5)</span></a></p></dd><dt id="PrivateDevices="><span class="term"><code class="varname">PrivateDevices=</code></span><a class="headerlink" title="Permalink to this term" href="#PrivateDevices=">¶</a></dt><dd><p><a href="systemd.exec.html"><span class="citerefentry"><span class="refentrytitle">systemd.exec</span>(5)</span></a></p></dd><dt id="PrivateNetwork="><span class="term"><code class="varname">PrivateNetwork=</code></span><a class="headerlink" title="Permalink to this term" href="#PrivateNetwork=">¶</a></dt><dd><p><a href="systemd.exec.html"><span class="citerefentry"><span class="refentrytitle">systemd.exec</span>(5)</span></a></p></dd><dt id="PrivateTmp="><span class="term"><code class="varname">PrivateTmp=</code></span><a class="headerlink" title="Permalink to this term" href="#PrivateTmp=">¶</a></dt><dd><p><a href="systemd.exec.html"><span class="citerefentry"><span class="refentrytitle">systemd.exec</span>(5)</span></a></p></dd><dt id="PropagatesReloadTo="><span class="term"><code class="varname">PropagatesReloadTo=</code></span><a class="headerlink" title="Permalink to this term" href="#PropagatesReloadTo=">¶</a></dt><dd><p><a href="systemd.unit.html"><span class="citerefentry"><span class="refentrytitle">systemd.unit</span>(5)</span></a></p></dd><dt id="ProtectHome="><span class="term"><code class="varname">ProtectHome=</code></span><a class="headerlink" title="Permalink to this term" href="#ProtectHome=">¶</a></dt><dd><p><a href="systemd.exec.html"><span class="citerefentry"><span class="refentrytitle">systemd.exec</span>(5)</span></a></p></dd><dt id="ProtectSystem="><span class="term"><code class="varname">ProtectSystem=</code></span><a class="headerlink" title="Permalink to this term" href="#ProtectSystem=">¶</a></dt><dd><p><a href="systemd.exec.html"><span class="citerefentry"><span class="refentrytitle">systemd.exec</span>(5)</span></a></p></dd><dt id="ReadOnlyDirectories="><span class="term"><code class="varname">ReadOnlyDirectories=</code></span><a class="headerlink" title="Permalink to this term" href="#ReadOnlyDirectories=">¶</a></dt><dd><p><a href="systemd.exec.html"><span class="citerefentry"><span class="refentrytitle">systemd.exec</span>(5)</span></a></p></dd><dt id="ReadWriteDirectories="><span class="term"><code class="varname">ReadWriteDirectories=</code></span><a class="headerlink" title="Permalink to this term" href="#ReadWriteDirectories=">¶</a></dt><dd><p><a href="systemd.exec.html"><span class="citerefentry"><span class="refentrytitle">systemd.exec</span>(5)</span></a></p></dd><dt id="RebootArgument="><span class="term"><code class="varname">RebootArgument=</code></span><a class="headerlink" title="Permalink to this term" href="#RebootArgument=">¶</a></dt><dd><p><a href="systemd.service.html"><span class="citerefentry"><span class="refentrytitle">systemd.service</span>(5)</span></a></p></dd><dt id="ReceiveBuffer="><span class="term"><code class="varname">ReceiveBuffer=</code></span><a class="headerlink" title="Permalink to this term" href="#ReceiveBuffer=">¶</a></dt><dd><p><a href="systemd.socket.html"><span class="citerefentry"><span class="refentrytitle">systemd.socket</span>(5)</span></a></p></dd><dt id="RefuseManualStart="><span class="term"><code class="varname">RefuseManualStart=</code></span><a class="headerlink" title="Permalink to this term" href="#RefuseManualStart=">¶</a></dt><dd><p><a href="systemd.unit.html"><span class="citerefentry"><span class="refentrytitle">systemd.unit</span>(5)</span></a></p></dd><dt id="RefuseManualStop="><span class="term"><code class="varname">RefuseManualStop=</code></span><a class="headerlink" title="Permalink to this term" href="#RefuseManualStop=">¶</a></dt><dd><p><a href="systemd.unit.html"><span class="citerefentry"><span class="refentrytitle">systemd.unit</span>(5)</span></a></p></dd><dt id="ReloadPropagatedFrom="><span class="term"><code class="varname">ReloadPropagatedFrom=</code></span><a class="headerlink" title="Permalink to this term" href="#ReloadPropagatedFrom=">¶</a></dt><dd><p><a href="systemd.unit.html"><span class="citerefentry"><span class="refentrytitle">systemd.unit</span>(5)</span></a></p></dd><dt id="RemainAfterExit="><span class="term"><code class="varname">RemainAfterExit=</code></span><a class="headerlink" title="Permalink to this term" href="#RemainAfterExit=">¶</a></dt><dd><p><a href="systemd.service.html"><span class="citerefentry"><span class="refentrytitle">systemd.service</span>(5)</span></a></p></dd><dt id="RemoveOnStop="><span class="term"><code class="varname">RemoveOnStop=</code></span><a class="headerlink" title="Permalink to this term" href="#RemoveOnStop=">¶</a></dt><dd><p><a href="systemd.socket.html"><span class="citerefentry"><span class="refentrytitle">systemd.socket</span>(5)</span></a></p></dd><dt id="RequiredBy="><span class="term"><code class="varname">RequiredBy=</code></span><a class="headerlink" title="Permalink to this term" href="#RequiredBy=">¶</a></dt><dd><p><a href="systemd.unit.html"><span class="citerefentry"><span class="refentrytitle">systemd.unit</span>(5)</span></a></p></dd><dt id="Requires="><span class="term"><code class="varname">Requires=</code></span><a class="headerlink" title="Permalink to this term" href="#Requires=">¶</a></dt><dd><p><a href="systemd.unit.html"><span class="citerefentry"><span class="refentrytitle">systemd.unit</span>(5)</span></a></p></dd><dt id="RequiresMountsFor="><span class="term"><code class="varname">RequiresMountsFor=</code></span><a class="headerlink" title="Permalink to this term" href="#RequiresMountsFor=">¶</a></dt><dd><p><a href="systemd.unit.html"><span class="citerefentry"><span class="refentrytitle">systemd.unit</span>(5)</span></a></p></dd><dt id="RequiresOverridable="><span class="term"><code class="varname">RequiresOverridable=</code></span><a class="headerlink" title="Permalink to this term" href="#RequiresOverridable=">¶</a></dt><dd><p><a href="systemd.unit.html"><span class="citerefentry"><span class="refentrytitle">systemd.unit</span>(5)</span></a></p></dd><dt id="Requisite="><span class="term"><code class="varname">Requisite=</code></span><a class="headerlink" title="Permalink to this term" href="#Requisite=">¶</a></dt><dd><p><a href="systemd.unit.html"><span class="citerefentry"><span class="refentrytitle">systemd.unit</span>(5)</span></a></p></dd><dt id="RequisiteOverridable="><span class="term"><code class="varname">RequisiteOverridable=</code></span><a class="headerlink" title="Permalink to this term" href="#RequisiteOverridable=">¶</a></dt><dd><p><a href="systemd.unit.html"><span class="citerefentry"><span class="refentrytitle">systemd.unit</span>(5)</span></a></p></dd><dt id="Restart="><span class="term"><code class="varname">Restart=</code></span><a class="headerlink" title="Permalink to this term" href="#Restart=">¶</a></dt><dd><p><a href="systemd.service.html"><span class="citerefentry"><span class="refentrytitle">systemd.service</span>(5)</span></a></p></dd><dt id="RestartPreventExitStatus="><span class="term"><code class="varname">RestartPreventExitStatus=</code></span><a class="headerlink" title="Permalink to this term" href="#RestartPreventExitStatus=">¶</a></dt><dd><p><a href="systemd.service.html"><span class="citerefentry"><span class="refentrytitle">systemd.service</span>(5)</span></a></p></dd><dt id="RestartSec="><span class="term"><code class="varname">RestartSec=</code></span><a class="headerlink" title="Permalink to this term" href="#RestartSec=">¶</a></dt><dd><p><a href="systemd.service.html"><span class="citerefentry"><span class="refentrytitle">systemd.service</span>(5)</span></a></p></dd><dt id="RestrictAddressFamilies="><span class="term"><code class="varname">RestrictAddressFamilies=</code></span><a class="headerlink" title="Permalink to this term" href="#RestrictAddressFamilies=">¶</a></dt><dd><p><a href="systemd.exec.html"><span class="citerefentry"><span class="refentrytitle">systemd.exec</span>(5)</span></a></p></dd><dt id="ReusePort="><span class="term"><code class="varname">ReusePort=</code></span><a class="headerlink" title="Permalink to this term" href="#ReusePort=">¶</a></dt><dd><p><a href="systemd.socket.html"><span class="citerefentry"><span class="refentrytitle">systemd.socket</span>(5)</span></a></p></dd><dt id="RootDirectory="><span class="term"><code class="varname">RootDirectory=</code></span><a class="headerlink" title="Permalink to this term" href="#RootDirectory=">¶</a></dt><dd><p><a href="systemd.exec.html"><span class="citerefentry"><span class="refentrytitle">systemd.exec</span>(5)</span></a></p></dd><dt id="RootDirectoryStartOnly="><span class="term"><code class="varname">RootDirectoryStartOnly=</code></span><a class="headerlink" title="Permalink to this term" href="#RootDirectoryStartOnly=">¶</a></dt><dd><p><a href="systemd.service.html"><span class="citerefentry"><span class="refentrytitle">systemd.service</span>(5)</span></a></p></dd><dt id="RuntimeDirectory="><span class="term"><code class="varname">RuntimeDirectory=</code></span><a class="headerlink" title="Permalink to this term" href="#RuntimeDirectory=">¶</a></dt><dd><p><a href="systemd.exec.html"><span class="citerefentry"><span class="refentrytitle">systemd.exec</span>(5)</span></a></p></dd><dt id="RuntimeDirectoryMode="><span class="term"><code class="varname">RuntimeDirectoryMode=</code></span><a class="headerlink" title="Permalink to this term" href="#RuntimeDirectoryMode=">¶</a></dt><dd><p><a href="systemd.exec.html"><span class="citerefentry"><span class="refentrytitle">systemd.exec</span>(5)</span></a></p></dd><dt id="SELinuxContext="><span class="term"><code class="varname">SELinuxContext=</code></span><a class="headerlink" title="Permalink to this term" href="#SELinuxContext=">¶</a></dt><dd><p><a href="systemd.exec.html"><span class="citerefentry"><span class="refentrytitle">systemd.exec</span>(5)</span></a></p></dd><dt id="SecureBits="><span class="term"><code class="varname">SecureBits=</code></span><a class="headerlink" title="Permalink to this term" href="#SecureBits=">¶</a></dt><dd><p><a href="systemd.exec.html"><span class="citerefentry"><span class="refentrytitle">systemd.exec</span>(5)</span></a></p></dd><dt id="SendBuffer="><span class="term"><code class="varname">SendBuffer=</code></span><a class="headerlink" title="Permalink to this term" href="#SendBuffer=">¶</a></dt><dd><p><a href="systemd.socket.html"><span class="citerefentry"><span class="refentrytitle">systemd.socket</span>(5)</span></a></p></dd><dt id="SendSIGHUP="><span class="term"><code class="varname">SendSIGHUP=</code></span><a class="headerlink" title="Permalink to this term" href="#SendSIGHUP=">¶</a></dt><dd><p><a href="systemd.kill.html"><span class="citerefentry"><span class="refentrytitle">systemd.kill</span>(5)</span></a></p></dd><dt id="SendSIGKILL="><span class="term"><code class="varname">SendSIGKILL=</code></span><a class="headerlink" title="Permalink to this term" href="#SendSIGKILL=">¶</a></dt><dd><p><a href="systemd.kill.html"><span class="citerefentry"><span class="refentrytitle">systemd.kill</span>(5)</span></a></p></dd><dt id="Service="><span class="term"><code class="varname">Service=</code></span><a class="headerlink" title="Permalink to this term" href="#Service=">¶</a></dt><dd><p><a href="systemd.socket.html"><span class="citerefentry"><span class="refentrytitle">systemd.socket</span>(5)</span></a></p></dd><dt id="Slice="><span class="term"><code class="varname">Slice=</code></span><a class="headerlink" title="Permalink to this term" href="#Slice=">¶</a></dt><dd><p><a href="systemd.resource-control.html"><span class="citerefentry"><span class="refentrytitle">systemd.resource-control</span>(5)</span></a></p></dd><dt id="SmackLabel="><span class="term"><code class="varname">SmackLabel=</code></span><a class="headerlink" title="Permalink to this term" href="#SmackLabel=">¶</a></dt><dd><p><a href="systemd.socket.html"><span class="citerefentry"><span class="refentrytitle">systemd.socket</span>(5)</span></a></p></dd><dt id="SmackLabelIPIn="><span class="term"><code class="varname">SmackLabelIPIn=</code></span><a class="headerlink" title="Permalink to this term" href="#SmackLabelIPIn=">¶</a></dt><dd><p><a href="systemd.socket.html"><span class="citerefentry"><span class="refentrytitle">systemd.socket</span>(5)</span></a></p></dd><dt id="SmackLabelIPOut="><span class="term"><code class="varname">SmackLabelIPOut=</code></span><a class="headerlink" title="Permalink to this term" href="#SmackLabelIPOut=">¶</a></dt><dd><p><a href="systemd.socket.html"><span class="citerefentry"><span class="refentrytitle">systemd.socket</span>(5)</span></a></p></dd><dt id="SocketGroup="><span class="term"><code class="varname">SocketGroup=</code></span><a class="headerlink" title="Permalink to this term" href="#SocketGroup=">¶</a></dt><dd><p><a href="systemd.socket.html"><span class="citerefentry"><span class="refentrytitle">systemd.socket</span>(5)</span></a></p></dd><dt id="SocketMode="><span class="term"><code class="varname">SocketMode=</code></span><a class="headerlink" title="Permalink to this term" href="#SocketMode=">¶</a></dt><dd><p><a href="systemd.socket.html"><span class="citerefentry"><span class="refentrytitle">systemd.socket</span>(5)</span></a></p></dd><dt id="SocketUser="><span class="term"><code class="varname">SocketUser=</code></span><a class="headerlink" title="Permalink to this term" href="#SocketUser=">¶</a></dt><dd><p><a href="systemd.socket.html"><span class="citerefentry"><span class="refentrytitle">systemd.socket</span>(5)</span></a></p></dd><dt id="Sockets="><span class="term"><code class="varname">Sockets=</code></span><a class="headerlink" title="Permalink to this term" href="#Sockets=">¶</a></dt><dd><p><a href="systemd.service.html"><span class="citerefentry"><span class="refentrytitle">systemd.service</span>(5)</span></a></p></dd><dt id="SourcePath="><span class="term"><code class="varname">SourcePath=</code></span><a class="headerlink" title="Permalink to this term" href="#SourcePath=">¶</a></dt><dd><p><a href="systemd.unit.html"><span class="citerefentry"><span class="refentrytitle">systemd.unit</span>(5)</span></a></p></dd><dt id="StandardError="><span class="term"><code class="varname">StandardError=</code></span><a class="headerlink" title="Permalink to this term" href="#StandardError=">¶</a></dt><dd><p><a href="systemd.exec.html"><span class="citerefentry"><span class="refentrytitle">systemd.exec</span>(5)</span></a></p></dd><dt id="StandardInput="><span class="term"><code class="varname">StandardInput=</code></span><a class="headerlink" title="Permalink to this term" href="#StandardInput=">¶</a></dt><dd><p><a href="systemd.exec.html"><span class="citerefentry"><span class="refentrytitle">systemd.exec</span>(5)</span></a></p></dd><dt id="StandardOutput="><span class="term"><code class="varname">StandardOutput=</code></span><a class="headerlink" title="Permalink to this term" href="#StandardOutput=">¶</a></dt><dd><p><a href="systemd.exec.html"><span class="citerefentry"><span class="refentrytitle">systemd.exec</span>(5)</span></a></p></dd><dt id="StartLimitAction="><span class="term"><code class="varname">StartLimitAction=</code></span><a class="headerlink" title="Permalink to this term" href="#StartLimitAction=">¶</a></dt><dd><p><a href="systemd.service.html"><span class="citerefentry"><span class="refentrytitle">systemd.service</span>(5)</span></a></p></dd><dt id="StartLimitBurst="><span class="term"><code class="varname">StartLimitBurst=</code></span><a class="headerlink" title="Permalink to this term" href="#StartLimitBurst=">¶</a></dt><dd><p><a href="systemd.service.html"><span class="citerefentry"><span class="refentrytitle">systemd.service</span>(5)</span></a></p></dd><dt id="StartLimitInterval="><span class="term"><code class="varname">StartLimitInterval=</code></span><a class="headerlink" title="Permalink to this term" href="#StartLimitInterval=">¶</a></dt><dd><p><a href="systemd.service.html"><span class="citerefentry"><span class="refentrytitle">systemd.service</span>(5)</span></a></p></dd><dt id="StartupBlockIOWeight="><span class="term"><code class="varname">StartupBlockIOWeight=</code></span><a class="headerlink" title="Permalink to this term" href="#StartupBlockIOWeight=">¶</a></dt><dd><p><a href="systemd.resource-control.html"><span class="citerefentry"><span class="refentrytitle">systemd.resource-control</span>(5)</span></a></p></dd><dt id="StartupCPUShares="><span class="term"><code class="varname">StartupCPUShares=</code></span><a class="headerlink" title="Permalink to this term" href="#StartupCPUShares=">¶</a></dt><dd><p><a href="systemd.resource-control.html"><span class="citerefentry"><span class="refentrytitle">systemd.resource-control</span>(5)</span></a></p></dd><dt id="StopWhenUnneeded="><span class="term"><code class="varname">StopWhenUnneeded=</code></span><a class="headerlink" title="Permalink to this term" href="#StopWhenUnneeded=">¶</a></dt><dd><p><a href="systemd.unit.html"><span class="citerefentry"><span class="refentrytitle">systemd.unit</span>(5)</span></a></p></dd><dt id="SuccessExitStatus="><span class="term"><code class="varname">SuccessExitStatus=</code></span><a class="headerlink" title="Permalink to this term" href="#SuccessExitStatus=">¶</a></dt><dd><p><a href="systemd.service.html"><span class="citerefentry"><span class="refentrytitle">systemd.service</span>(5)</span></a></p></dd><dt id="SupplementaryGroups="><span class="term"><code class="varname">SupplementaryGroups=</code></span><a class="headerlink" title="Permalink to this term" href="#SupplementaryGroups=">¶</a></dt><dd><p><a href="systemd.exec.html"><span class="citerefentry"><span class="refentrytitle">systemd.exec</span>(5)</span></a></p></dd><dt id="Symlinks="><span class="term"><code class="varname">Symlinks=</code></span><a class="headerlink" title="Permalink to this term" href="#Symlinks=">¶</a></dt><dd><p><a href="systemd.socket.html"><span class="citerefentry"><span class="refentrytitle">systemd.socket</span>(5)</span></a></p></dd><dt id="SysVStartPriority="><span class="term"><code class="varname">SysVStartPriority=</code></span><a class="headerlink" title="Permalink to this term" href="#SysVStartPriority=">¶</a></dt><dd><p><a href="systemd.service.html"><span class="citerefentry"><span class="refentrytitle">systemd.service</span>(5)</span></a></p></dd><dt id="SyslogFacility="><span class="term"><code class="varname">SyslogFacility=</code></span><a class="headerlink" title="Permalink to this term" href="#SyslogFacility=">¶</a></dt><dd><p><a href="systemd.exec.html"><span class="citerefentry"><span class="refentrytitle">systemd.exec</span>(5)</span></a></p></dd><dt id="SyslogIdentifier="><span class="term"><code class="varname">SyslogIdentifier=</code></span><a class="headerlink" title="Permalink to this term" href="#SyslogIdentifier=">¶</a></dt><dd><p><a href="systemd.exec.html"><span class="citerefentry"><span class="refentrytitle">systemd.exec</span>(5)</span></a></p></dd><dt id="SyslogLevel="><span class="term"><code class="varname">SyslogLevel=</code></span><a class="headerlink" title="Permalink to this term" href="#SyslogLevel=">¶</a></dt><dd><p><a href="systemd.exec.html"><span class="citerefentry"><span class="refentrytitle">systemd.exec</span>(5)</span></a></p></dd><dt id="SyslogLevelPrefix="><span class="term"><code class="varname">SyslogLevelPrefix=</code></span><a class="headerlink" title="Permalink to this term" href="#SyslogLevelPrefix=">¶</a></dt><dd><p><a href="systemd.exec.html"><span class="citerefentry"><span class="refentrytitle">systemd.exec</span>(5)</span></a></p></dd><dt id="SystemCallArchitectures="><span class="term"><code class="varname">SystemCallArchitectures=</code></span><a class="headerlink" title="Permalink to this term" href="#SystemCallArchitectures=">¶</a></dt><dd><p><a href="systemd.exec.html"><span class="citerefentry"><span class="refentrytitle">systemd.exec</span>(5)</span></a></p></dd><dt id="SystemCallErrorNumber="><span class="term"><code class="varname">SystemCallErrorNumber=</code></span><a class="headerlink" title="Permalink to this term" href="#SystemCallErrorNumber=">¶</a></dt><dd><p><a href="systemd.exec.html"><span class="citerefentry"><span class="refentrytitle">systemd.exec</span>(5)</span></a></p></dd><dt id="SystemCallFilter="><span class="term"><code class="varname">SystemCallFilter=</code></span><a class="headerlink" title="Permalink to this term" href="#SystemCallFilter=">¶</a></dt><dd><p><a href="systemd.exec.html"><span class="citerefentry"><span class="refentrytitle">systemd.exec</span>(5)</span></a></p></dd><dt id="TCPCongestion="><span class="term"><code class="varname">TCPCongestion=</code></span><a class="headerlink" title="Permalink to this term" href="#TCPCongestion=">¶</a></dt><dd><p><a href="systemd.socket.html"><span class="citerefentry"><span class="refentrytitle">systemd.socket</span>(5)</span></a></p></dd><dt id="TTYPath="><span class="term"><code class="varname">TTYPath=</code></span><a class="headerlink" title="Permalink to this term" href="#TTYPath=">¶</a></dt><dd><p><a href="systemd.exec.html"><span class="citerefentry"><span class="refentrytitle">systemd.exec</span>(5)</span></a></p></dd><dt id="TTYReset="><span class="term"><code class="varname">TTYReset=</code></span><a class="headerlink" title="Permalink to this term" href="#TTYReset=">¶</a></dt><dd><p><a href="systemd.exec.html"><span class="citerefentry"><span class="refentrytitle">systemd.exec</span>(5)</span></a></p></dd><dt id="TTYVHangup="><span class="term"><code class="varname">TTYVHangup=</code></span><a class="headerlink" title="Permalink to this term" href="#TTYVHangup=">¶</a></dt><dd><p><a href="systemd.exec.html"><span class="citerefentry"><span class="refentrytitle">systemd.exec</span>(5)</span></a></p></dd><dt id="TTYVTDisallocate="><span class="term"><code class="varname">TTYVTDisallocate=</code></span><a class="headerlink" title="Permalink to this term" href="#TTYVTDisallocate=">¶</a></dt><dd><p><a href="systemd.exec.html"><span class="citerefentry"><span class="refentrytitle">systemd.exec</span>(5)</span></a></p></dd><dt id="TimeoutSec="><span class="term"><code class="varname">TimeoutSec=</code></span><a class="headerlink" title="Permalink to this term" href="#TimeoutSec=">¶</a></dt><dd><p><a href="systemd.mount.html"><span class="citerefentry"><span class="refentrytitle">systemd.mount</span>(5)</span></a>, <a href="systemd.service.html"><span class="citerefentry"><span class="refentrytitle">systemd.service</span>(5)</span></a>, <a href="systemd.socket.html"><span class="citerefentry"><span class="refentrytitle">systemd.socket</span>(5)</span></a>, <a href="systemd.swap.html"><span class="citerefentry"><span class="refentrytitle">systemd.swap</span>(5)</span></a></p></dd><dt id="TimeoutStartSec="><span class="term"><code class="varname">TimeoutStartSec=</code></span><a class="headerlink" title="Permalink to this term" href="#TimeoutStartSec=">¶</a></dt><dd><p><a href="systemd.service.html"><span class="citerefentry"><span class="refentrytitle">systemd.service</span>(5)</span></a></p></dd><dt id="TimeoutStopSec="><span class="term"><code class="varname">TimeoutStopSec=</code></span><a class="headerlink" title="Permalink to this term" href="#TimeoutStopSec=">¶</a></dt><dd><p><a href="systemd.service.html"><span class="citerefentry"><span class="refentrytitle">systemd.service</span>(5)</span></a></p></dd><dt id="TimerSlackNSec="><span class="term"><code class="varname">TimerSlackNSec=</code></span><a class="headerlink" title="Permalink to this term" href="#TimerSlackNSec=">¶</a></dt><dd><p><a href="systemd.exec.html"><span class="citerefentry"><span class="refentrytitle">systemd.exec</span>(5)</span></a></p></dd><dt id="Transparent="><span class="term"><code class="varname">Transparent=</code></span><a class="headerlink" title="Permalink to this term" href="#Transparent=">¶</a></dt><dd><p><a href="systemd.socket.html"><span class="citerefentry"><span class="refentrytitle">systemd.socket</span>(5)</span></a></p></dd><dt id="Type="><span class="term"><code class="varname">Type=</code></span><a class="headerlink" title="Permalink to this term" href="#Type=">¶</a></dt><dd><p><a href="systemd.mount.html"><span class="citerefentry"><span class="refentrytitle">systemd.mount</span>(5)</span></a>, <a href="systemd.service.html"><span class="citerefentry"><span class="refentrytitle">systemd.service</span>(5)</span></a></p></dd><dt id="UMask="><span class="term"><code class="varname">UMask=</code></span><a class="headerlink" title="Permalink to this term" href="#UMask=">¶</a></dt><dd><p><a href="systemd.exec.html"><span class="citerefentry"><span class="refentrytitle">systemd.exec</span>(5)</span></a></p></dd><dt id="Unit="><span class="term"><code class="varname">Unit=</code></span><a class="headerlink" title="Permalink to this term" href="#Unit=">¶</a></dt><dd><p><a href="systemd.path.html"><span class="citerefentry"><span class="refentrytitle">systemd.path</span>(5)</span></a>, <a href="systemd.timer.html"><span class="citerefentry"><span class="refentrytitle">systemd.timer</span>(5)</span></a></p></dd><dt id="User="><span class="term"><code class="varname">User=</code></span><a class="headerlink" title="Permalink to this term" href="#User=">¶</a></dt><dd><p><a href="systemd.exec.html"><span class="citerefentry"><span class="refentrytitle">systemd.exec</span>(5)</span></a></p></dd><dt id="UtmpIdentifier="><span class="term"><code class="varname">UtmpIdentifier=</code></span><a class="headerlink" title="Permalink to this term" href="#UtmpIdentifier=">¶</a></dt><dd><p><a href="systemd.exec.html"><span class="citerefentry"><span class="refentrytitle">systemd.exec</span>(5)</span></a></p></dd><dt id="WakeSystem="><span class="term"><code class="varname">WakeSystem=</code></span><a class="headerlink" title="Permalink to this term" href="#WakeSystem=">¶</a></dt><dd><p><a href="systemd.timer.html"><span class="citerefentry"><span class="refentrytitle">systemd.timer</span>(5)</span></a></p></dd><dt id="WantedBy="><span class="term"><code class="varname">WantedBy=</code></span><a class="headerlink" title="Permalink to this term" href="#WantedBy=">¶</a></dt><dd><p><a href="systemd.unit.html"><span class="citerefentry"><span class="refentrytitle">systemd.unit</span>(5)</span></a></p></dd><dt id="Wants="><span class="term"><code class="varname">Wants=</code></span><a class="headerlink" title="Permalink to this term" href="#Wants=">¶</a></dt><dd><p><a href="systemd.unit.html"><span class="citerefentry"><span class="refentrytitle">systemd.unit</span>(5)</span></a></p></dd><dt id="WatchdogSec="><span class="term"><code class="varname">WatchdogSec=</code></span><a class="headerlink" title="Permalink to this term" href="#WatchdogSec=">¶</a></dt><dd><p><a href="systemd.service.html"><span class="citerefentry"><span class="refentrytitle">systemd.service</span>(5)</span></a></p></dd><dt id="What="><span class="term"><code class="varname">What=</code></span><a class="headerlink" title="Permalink to this term" href="#What=">¶</a></dt><dd><p><a href="systemd.mount.html"><span class="citerefentry"><span class="refentrytitle">systemd.mount</span>(5)</span></a>, <a href="systemd.swap.html"><span class="citerefentry"><span class="refentrytitle">systemd.swap</span>(5)</span></a></p></dd><dt id="Where="><span class="term"><code class="varname">Where=</code></span><a class="headerlink" title="Permalink to this term" href="#Where=">¶</a></dt><dd><p><a href="systemd.automount.html"><span class="citerefentry"><span class="refentrytitle">systemd.automount</span>(5)</span></a>, <a href="systemd.mount.html"><span class="citerefentry"><span class="refentrytitle">systemd.mount</span>(5)</span></a></p></dd><dt id="WorkingDirectory="><span class="term"><code class="varname">WorkingDirectory=</code></span><a class="headerlink" title="Permalink to this term" href="#WorkingDirectory=">¶</a></dt><dd><p><a href="systemd.exec.html"><span class="citerefentry"><span class="refentrytitle">systemd.exec</span>(5)</span></a></p></dd></dl></div></div><div class="refsect1"><a name="idm214186888336"></a><h2 id="Options on the kernel command line">Options on the kernel command line<a class="headerlink" title="Permalink to this headline" href="#Options%20on%20the%20kernel%20command%20line">¶</a></h2><p>Kernel boot options for configuring the behaviour of the
-                systemd process.</p><div class="variablelist"><a name="kernel-commandline-options"></a><dl class="variablelist"><dt id="-b"><span class="term"><code class="option">-b</code></span><a class="headerlink" title="Permalink to this term" href="#-b">¶</a></dt><dd><p><a href="kernel-command-line.html"><span class="citerefentry"><span class="refentrytitle">kernel-command-line</span>(7)</span></a>, <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a></p></dd><dt id="1"><span class="term"><code class="constant">1</code></span><a class="headerlink" title="Permalink to this term" href="#1">¶</a></dt><dd><p><a href="kernel-command-line.html"><span class="citerefentry"><span class="refentrytitle">kernel-command-line</span>(7)</span></a>, <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a></p></dd><dt id="2"><span class="term"><code class="constant">2</code></span><a class="headerlink" title="Permalink to this term" href="#2">¶</a></dt><dd><p><a href="kernel-command-line.html"><span class="citerefentry"><span class="refentrytitle">kernel-command-line</span>(7)</span></a>, <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a></p></dd><dt id="3"><span class="term"><code class="varname">3</code></span><a class="headerlink" title="Permalink to this term" href="#3">¶</a></dt><dd><p><a href="kernel-command-line.html"><span class="citerefentry"><span class="refentrytitle">kernel-command-line</span>(7)</span></a>, <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a></p></dd><dt id="4"><span class="term"><code class="varname">4</code></span><a class="headerlink" title="Permalink to this term" href="#4">¶</a></dt><dd><p><a href="kernel-command-line.html"><span class="citerefentry"><span class="refentrytitle">kernel-command-line</span>(7)</span></a>, <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a></p></dd><dt id="5"><span class="term"><code class="varname">5</code></span><a class="headerlink" title="Permalink to this term" href="#5">¶</a></dt><dd><p><a href="kernel-command-line.html"><span class="citerefentry"><span class="refentrytitle">kernel-command-line</span>(7)</span></a>, <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a></p></dd><dt id="S"><span class="term"><code class="varname">S</code></span><a class="headerlink" title="Permalink to this term" href="#S">¶</a></dt><dd><p><a href="kernel-command-line.html"><span class="citerefentry"><span class="refentrytitle">kernel-command-line</span>(7)</span></a>, <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a></p></dd><dt id="debug"><span class="term"><code class="varname">debug</code></span><a class="headerlink" title="Permalink to this term" href="#debug">¶</a></dt><dd><p><a href="kernel-command-line.html"><span class="citerefentry"><span class="refentrytitle">kernel-command-line</span>(7)</span></a>, <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a></p></dd><dt id="emergency"><span class="term"><code class="varname">emergency</code></span><a class="headerlink" title="Permalink to this term" href="#emergency">¶</a></dt><dd><p><a href="kernel-command-line.html"><span class="citerefentry"><span class="refentrytitle">kernel-command-line</span>(7)</span></a>, <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a></p></dd><dt id="fsck.mode="><span class="term"><code class="varname">fsck.mode=</code></span><a class="headerlink" title="Permalink to this term" href="#fsck.mode=">¶</a></dt><dd><p><a href="kernel-command-line.html"><span class="citerefentry"><span class="refentrytitle">kernel-command-line</span>(7)</span></a>, <a href="systemd-fsck@.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-fsck@.service</span>(8)</span></a></p></dd><dt id="fsck.repair="><span class="term"><code class="varname">fsck.repair=</code></span><a class="headerlink" title="Permalink to this term" href="#fsck.repair=">¶</a></dt><dd><p><a href="kernel-command-line.html"><span class="citerefentry"><span class="refentrytitle">kernel-command-line</span>(7)</span></a>, <a href="systemd-fsck@.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-fsck@.service</span>(8)</span></a></p></dd><dt id="fstab="><span class="term"><code class="varname">fstab=</code></span><a class="headerlink" title="Permalink to this term" href="#fstab=">¶</a></dt><dd><p><a href="kernel-command-line.html"><span class="citerefentry"><span class="refentrytitle">kernel-command-line</span>(7)</span></a>, <a href="systemd-fstab-generator.html"><span class="citerefentry"><span class="refentrytitle">systemd-fstab-generator</span>(8)</span></a></p></dd><dt id="locale.LANG="><span class="term"><code class="varname">locale.LANG=</code></span><a class="headerlink" title="Permalink to this term" href="#locale.LANG=">¶</a></dt><dd><p><a href="kernel-command-line.html"><span class="citerefentry"><span class="refentrytitle">kernel-command-line</span>(7)</span></a>, <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a></p></dd><dt id="locale.LANGUAGE="><span class="term"><code class="varname">locale.LANGUAGE=</code></span><a class="headerlink" title="Permalink to this term" href="#locale.LANGUAGE=">¶</a></dt><dd><p><a href="kernel-command-line.html"><span class="citerefentry"><span class="refentrytitle">kernel-command-line</span>(7)</span></a>, <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a></p></dd><dt id="locale.LC_ADDRESS="><span class="term"><code class="varname">locale.LC_ADDRESS=</code></span><a class="headerlink" title="Permalink to this term" href="#locale.LC_ADDRESS=">¶</a></dt><dd><p><a href="kernel-command-line.html"><span class="citerefentry"><span class="refentrytitle">kernel-command-line</span>(7)</span></a>, <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a></p></dd><dt id="locale.LC_COLLATE="><span class="term"><code class="varname">locale.LC_COLLATE=</code></span><a class="headerlink" title="Permalink to this term" href="#locale.LC_COLLATE=">¶</a></dt><dd><p><a href="kernel-command-line.html"><span class="citerefentry"><span class="refentrytitle">kernel-command-line</span>(7)</span></a>, <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a></p></dd><dt id="locale.LC_CTYPE="><span class="term"><code class="varname">locale.LC_CTYPE=</code></span><a class="headerlink" title="Permalink to this term" href="#locale.LC_CTYPE=">¶</a></dt><dd><p><a href="kernel-command-line.html"><span class="citerefentry"><span class="refentrytitle">kernel-command-line</span>(7)</span></a>, <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a></p></dd><dt id="locale.LC_IDENTIFICATION="><span class="term"><code class="varname">locale.LC_IDENTIFICATION=</code></span><a class="headerlink" title="Permalink to this term" href="#locale.LC_IDENTIFICATION=">¶</a></dt><dd><p><a href="kernel-command-line.html"><span class="citerefentry"><span class="refentrytitle">kernel-command-line</span>(7)</span></a>, <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a></p></dd><dt id="locale.LC_MEASUREMENT="><span class="term"><code class="varname">locale.LC_MEASUREMENT=</code></span><a class="headerlink" title="Permalink to this term" href="#locale.LC_MEASUREMENT=">¶</a></dt><dd><p><a href="kernel-command-line.html"><span class="citerefentry"><span class="refentrytitle">kernel-command-line</span>(7)</span></a>, <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a></p></dd><dt id="locale.LC_MESSAGES="><span class="term"><code class="varname">locale.LC_MESSAGES=</code></span><a class="headerlink" title="Permalink to this term" href="#locale.LC_MESSAGES=">¶</a></dt><dd><p><a href="kernel-command-line.html"><span class="citerefentry"><span class="refentrytitle">kernel-command-line</span>(7)</span></a>, <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a></p></dd><dt id="locale.LC_MONETARY="><span class="term"><code class="varname">locale.LC_MONETARY=</code></span><a class="headerlink" title="Permalink to this term" href="#locale.LC_MONETARY=">¶</a></dt><dd><p><a href="kernel-command-line.html"><span class="citerefentry"><span class="refentrytitle">kernel-command-line</span>(7)</span></a>, <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a></p></dd><dt id="locale.LC_NAME="><span class="term"><code class="varname">locale.LC_NAME=</code></span><a class="headerlink" title="Permalink to this term" href="#locale.LC_NAME=">¶</a></dt><dd><p><a href="kernel-command-line.html"><span class="citerefentry"><span class="refentrytitle">kernel-command-line</span>(7)</span></a>, <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a></p></dd><dt id="locale.LC_NUMERIC="><span class="term"><code class="varname">locale.LC_NUMERIC=</code></span><a class="headerlink" title="Permalink to this term" href="#locale.LC_NUMERIC=">¶</a></dt><dd><p><a href="kernel-command-line.html"><span class="citerefentry"><span class="refentrytitle">kernel-command-line</span>(7)</span></a>, <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a></p></dd><dt id="locale.LC_PAPER="><span class="term"><code class="varname">locale.LC_PAPER=</code></span><a class="headerlink" title="Permalink to this term" href="#locale.LC_PAPER=">¶</a></dt><dd><p><a href="kernel-command-line.html"><span class="citerefentry"><span class="refentrytitle">kernel-command-line</span>(7)</span></a>, <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a></p></dd><dt id="locale.LC_TELEPHONE="><span class="term"><code class="varname">locale.LC_TELEPHONE=</code></span><a class="headerlink" title="Permalink to this term" href="#locale.LC_TELEPHONE=">¶</a></dt><dd><p><a href="kernel-command-line.html"><span class="citerefentry"><span class="refentrytitle">kernel-command-line</span>(7)</span></a>, <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a></p></dd><dt id="locale.LC_TIME="><span class="term"><code class="varname">locale.LC_TIME=</code></span><a class="headerlink" title="Permalink to this term" href="#locale.LC_TIME=">¶</a></dt><dd><p><a href="kernel-command-line.html"><span class="citerefentry"><span class="refentrytitle">kernel-command-line</span>(7)</span></a>, <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a></p></dd><dt id="luks.crypttab="><span class="term"><code class="varname">luks.crypttab=</code></span><a class="headerlink" title="Permalink to this term" href="#luks.crypttab=">¶</a></dt><dd><p><a href="kernel-command-line.html"><span class="citerefentry"><span class="refentrytitle">kernel-command-line</span>(7)</span></a>, <a href="systemd-cryptsetup-generator.html"><span class="citerefentry"><span class="refentrytitle">systemd-cryptsetup-generator</span>(8)</span></a></p></dd><dt id="luks.key="><span class="term"><code class="varname">luks.key=</code></span><a class="headerlink" title="Permalink to this term" href="#luks.key=">¶</a></dt><dd><p><a href="kernel-command-line.html"><span class="citerefentry"><span class="refentrytitle">kernel-command-line</span>(7)</span></a>, <a href="systemd-cryptsetup-generator.html"><span class="citerefentry"><span class="refentrytitle">systemd-cryptsetup-generator</span>(8)</span></a></p></dd><dt id="luks.options="><span class="term"><code class="varname">luks.options=</code></span><a class="headerlink" title="Permalink to this term" href="#luks.options=">¶</a></dt><dd><p><a href="kernel-command-line.html"><span class="citerefentry"><span class="refentrytitle">kernel-command-line</span>(7)</span></a>, <a href="systemd-cryptsetup-generator.html"><span class="citerefentry"><span class="refentrytitle">systemd-cryptsetup-generator</span>(8)</span></a></p></dd><dt id="luks.uuid="><span class="term"><code class="varname">luks.uuid=</code></span><a class="headerlink" title="Permalink to this term" href="#luks.uuid=">¶</a></dt><dd><p><a href="kernel-command-line.html"><span class="citerefentry"><span class="refentrytitle">kernel-command-line</span>(7)</span></a>, <a href="systemd-cryptsetup-generator.html"><span class="citerefentry"><span class="refentrytitle">systemd-cryptsetup-generator</span>(8)</span></a></p></dd><dt id="luks="><span class="term"><code class="varname">luks=</code></span><a class="headerlink" title="Permalink to this term" href="#luks=">¶</a></dt><dd><p><a href="kernel-command-line.html"><span class="citerefentry"><span class="refentrytitle">kernel-command-line</span>(7)</span></a>, <a href="systemd-cryptsetup-generator.html"><span class="citerefentry"><span class="refentrytitle">systemd-cryptsetup-generator</span>(8)</span></a></p></dd><dt id="modules-load="><span class="term"><code class="varname">modules-load=</code></span><a class="headerlink" title="Permalink to this term" href="#modules-load=">¶</a></dt><dd><p><a href="kernel-command-line.html"><span class="citerefentry"><span class="refentrytitle">kernel-command-line</span>(7)</span></a>, <a href="systemd-modules-load.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-modules-load.service</span>(8)</span></a></p></dd><dt id="net.ifnames="><span class="term"><code class="varname">net.ifnames=</code></span><a class="headerlink" title="Permalink to this term" href="#net.ifnames=">¶</a></dt><dd><p><a href="kernel-command-line.html"><span class="citerefentry"><span class="refentrytitle">kernel-command-line</span>(7)</span></a>, <a href="systemd-udevd.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-udevd.service</span>(8)</span></a></p></dd><dt id="plymouth.enable="><span class="term"><code class="varname">plymouth.enable=</code></span><a class="headerlink" title="Permalink to this term" href="#plymouth.enable=">¶</a></dt><dd><p><a href="kernel-command-line.html"><span class="citerefentry"><span class="refentrytitle">kernel-command-line</span>(7)</span></a></p></dd><dt id="quiet"><span class="term"><code class="varname">quiet</code></span><a class="headerlink" title="Permalink to this term" href="#quiet">¶</a></dt><dd><p><a href="kernel-command-line.html"><span class="citerefentry"><span class="refentrytitle">kernel-command-line</span>(7)</span></a>, <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a></p></dd><dt id="quotacheck.mode="><span class="term"><code class="varname">quotacheck.mode=</code></span><a class="headerlink" title="Permalink to this term" href="#quotacheck.mode=">¶</a></dt><dd><p><a href="kernel-command-line.html"><span class="citerefentry"><span class="refentrytitle">kernel-command-line</span>(7)</span></a>, <a href="systemd-quotacheck.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-quotacheck.service</span>(8)</span></a></p></dd><dt id="rd.fstab="><span class="term"><code class="varname">rd.fstab=</code></span><a class="headerlink" title="Permalink to this term" href="#rd.fstab=">¶</a></dt><dd><p><a href="kernel-command-line.html"><span class="citerefentry"><span class="refentrytitle">kernel-command-line</span>(7)</span></a>, <a href="systemd-fstab-generator.html"><span class="citerefentry"><span class="refentrytitle">systemd-fstab-generator</span>(8)</span></a></p></dd><dt id="rd.luks.crypttab="><span class="term"><code class="varname">rd.luks.crypttab=</code></span><a class="headerlink" title="Permalink to this term" href="#rd.luks.crypttab=">¶</a></dt><dd><p><a href="kernel-command-line.html"><span class="citerefentry"><span class="refentrytitle">kernel-command-line</span>(7)</span></a>, <a href="systemd-cryptsetup-generator.html"><span class="citerefentry"><span class="refentrytitle">systemd-cryptsetup-generator</span>(8)</span></a></p></dd><dt id="rd.luks.key="><span class="term"><code class="varname">rd.luks.key=</code></span><a class="headerlink" title="Permalink to this term" href="#rd.luks.key=">¶</a></dt><dd><p><a href="kernel-command-line.html"><span class="citerefentry"><span class="refentrytitle">kernel-command-line</span>(7)</span></a>, <a href="systemd-cryptsetup-generator.html"><span class="citerefentry"><span class="refentrytitle">systemd-cryptsetup-generator</span>(8)</span></a></p></dd><dt id="rd.luks.options="><span class="term"><code class="varname">rd.luks.options=</code></span><a class="headerlink" title="Permalink to this term" href="#rd.luks.options=">¶</a></dt><dd><p><a href="kernel-command-line.html"><span class="citerefentry"><span class="refentrytitle">kernel-command-line</span>(7)</span></a>, <a href="systemd-cryptsetup-generator.html"><span class="citerefentry"><span class="refentrytitle">systemd-cryptsetup-generator</span>(8)</span></a></p></dd><dt id="rd.luks.uuid="><span class="term"><code class="varname">rd.luks.uuid=</code></span><a class="headerlink" title="Permalink to this term" href="#rd.luks.uuid=">¶</a></dt><dd><p><a href="kernel-command-line.html"><span class="citerefentry"><span class="refentrytitle">kernel-command-line</span>(7)</span></a>, <a href="systemd-cryptsetup-generator.html"><span class="citerefentry"><span class="refentrytitle">systemd-cryptsetup-generator</span>(8)</span></a></p></dd><dt id="rd.luks="><span class="term"><code class="varname">rd.luks=</code></span><a class="headerlink" title="Permalink to this term" href="#rd.luks=">¶</a></dt><dd><p><a href="kernel-command-line.html"><span class="citerefentry"><span class="refentrytitle">kernel-command-line</span>(7)</span></a>, <a href="systemd-cryptsetup-generator.html"><span class="citerefentry"><span class="refentrytitle">systemd-cryptsetup-generator</span>(8)</span></a></p></dd><dt id="rd.modules-load="><span class="term"><code class="varname">rd.modules-load=</code></span><a class="headerlink" title="Permalink to this term" href="#rd.modules-load=">¶</a></dt><dd><p><a href="kernel-command-line.html"><span class="citerefentry"><span class="refentrytitle">kernel-command-line</span>(7)</span></a>, <a href="systemd-modules-load.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-modules-load.service</span>(8)</span></a></p></dd><dt id="rd.systemd.unit="><span class="term"><code class="varname">rd.systemd.unit=</code></span><a class="headerlink" title="Permalink to this term" href="#rd.systemd.unit=">¶</a></dt><dd><p><a href="kernel-command-line.html"><span class="citerefentry"><span class="refentrytitle">kernel-command-line</span>(7)</span></a>, <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a></p></dd><dt id="rd.udev.children-max="><span class="term"><code class="varname">rd.udev.children-max=</code></span><a class="headerlink" title="Permalink to this term" href="#rd.udev.children-max=">¶</a></dt><dd><p><a href="kernel-command-line.html"><span class="citerefentry"><span class="refentrytitle">kernel-command-line</span>(7)</span></a>, <a href="systemd-udevd.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-udevd.service</span>(8)</span></a></p></dd><dt id="rd.udev.exec-delay="><span class="term"><code class="varname">rd.udev.exec-delay=</code></span><a class="headerlink" title="Permalink to this term" href="#rd.udev.exec-delay=">¶</a></dt><dd><p><a href="kernel-command-line.html"><span class="citerefentry"><span class="refentrytitle">kernel-command-line</span>(7)</span></a>, <a href="systemd-udevd.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-udevd.service</span>(8)</span></a></p></dd><dt id="rd.udev.log-priority="><span class="term"><code class="varname">rd.udev.log-priority=</code></span><a class="headerlink" title="Permalink to this term" href="#rd.udev.log-priority=">¶</a></dt><dd><p><a href="kernel-command-line.html"><span class="citerefentry"><span class="refentrytitle">kernel-command-line</span>(7)</span></a>, <a href="systemd-udevd.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-udevd.service</span>(8)</span></a></p></dd><dt id="s"><span class="term"><code class="varname">s</code></span><a class="headerlink" title="Permalink to this term" href="#s">¶</a></dt><dd><p><a href="kernel-command-line.html"><span class="citerefentry"><span class="refentrytitle">kernel-command-line</span>(7)</span></a>, <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a></p></dd><dt id="single"><span class="term"><code class="varname">single</code></span><a class="headerlink" title="Permalink to this term" href="#single">¶</a></dt><dd><p><a href="kernel-command-line.html"><span class="citerefentry"><span class="refentrytitle">kernel-command-line</span>(7)</span></a>, <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a></p></dd><dt id="systemd.confirm_spawn="><span class="term"><code class="varname">systemd.confirm_spawn=</code></span><a class="headerlink" title="Permalink to this term" href="#systemd.confirm_spawn=">¶</a></dt><dd><p><a href="kernel-command-line.html"><span class="citerefentry"><span class="refentrytitle">kernel-command-line</span>(7)</span></a>, <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a></p></dd><dt id="systemd.crash_chvt="><span class="term"><code class="varname">systemd.crash_chvt=</code></span><a class="headerlink" title="Permalink to this term" href="#systemd.crash_chvt=">¶</a></dt><dd><p><a href="kernel-command-line.html"><span class="citerefentry"><span class="refentrytitle">kernel-command-line</span>(7)</span></a>, <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a></p></dd><dt id="systemd.crash_shell="><span class="term"><code class="varname">systemd.crash_shell=</code></span><a class="headerlink" title="Permalink to this term" href="#systemd.crash_shell=">¶</a></dt><dd><p><a href="kernel-command-line.html"><span class="citerefentry"><span class="refentrytitle">kernel-command-line</span>(7)</span></a>, <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a></p></dd><dt id="systemd.default_standard_error="><span class="term"><code class="varname">systemd.default_standard_error=</code></span><a class="headerlink" title="Permalink to this term" href="#systemd.default_standard_error=">¶</a></dt><dd><p><a href="kernel-command-line.html"><span class="citerefentry"><span class="refentrytitle">kernel-command-line</span>(7)</span></a>, <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a></p></dd><dt id="systemd.default_standard_output="><span class="term"><code class="varname">systemd.default_standard_output=</code></span><a class="headerlink" title="Permalink to this term" href="#systemd.default_standard_output=">¶</a></dt><dd><p><a href="kernel-command-line.html"><span class="citerefentry"><span class="refentrytitle">kernel-command-line</span>(7)</span></a>, <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a></p></dd><dt id="systemd.dump_core="><span class="term"><code class="varname">systemd.dump_core=</code></span><a class="headerlink" title="Permalink to this term" href="#systemd.dump_core=">¶</a></dt><dd><p><a href="kernel-command-line.html"><span class="citerefentry"><span class="refentrytitle">kernel-command-line</span>(7)</span></a>, <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a></p></dd><dt id="systemd.journald.forward_to_console="><span class="term"><code class="varname">systemd.journald.forward_to_console=</code></span><a class="headerlink" title="Permalink to this term" href="#systemd.journald.forward_to_console=">¶</a></dt><dd><p><a href="kernel-command-line.html"><span class="citerefentry"><span class="refentrytitle">kernel-command-line</span>(7)</span></a>, <a href="systemd-journald.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-journald.service</span>(8)</span></a></p></dd><dt id="systemd.journald.forward_to_kmsg="><span class="term"><code class="varname">systemd.journald.forward_to_kmsg=</code></span><a class="headerlink" title="Permalink to this term" href="#systemd.journald.forward_to_kmsg=">¶</a></dt><dd><p><a href="kernel-command-line.html"><span class="citerefentry"><span class="refentrytitle">kernel-command-line</span>(7)</span></a>, <a href="systemd-journald.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-journald.service</span>(8)</span></a></p></dd><dt id="systemd.journald.forward_to_syslog="><span class="term"><code class="varname">systemd.journald.forward_to_syslog=</code></span><a class="headerlink" title="Permalink to this term" href="#systemd.journald.forward_to_syslog=">¶</a></dt><dd><p><a href="kernel-command-line.html"><span class="citerefentry"><span class="refentrytitle">kernel-command-line</span>(7)</span></a>, <a href="systemd-journald.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-journald.service</span>(8)</span></a></p></dd><dt id="systemd.journald.forward_to_wall="><span class="term"><code class="varname">systemd.journald.forward_to_wall=</code></span><a class="headerlink" title="Permalink to this term" href="#systemd.journald.forward_to_wall=">¶</a></dt><dd><p><a href="kernel-command-line.html"><span class="citerefentry"><span class="refentrytitle">kernel-command-line</span>(7)</span></a>, <a href="systemd-journald.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-journald.service</span>(8)</span></a></p></dd><dt id="systemd.log_color="><span class="term"><code class="varname">systemd.log_color=</code></span><a class="headerlink" title="Permalink to this term" href="#systemd.log_color=">¶</a></dt><dd><p><a href="kernel-command-line.html"><span class="citerefentry"><span class="refentrytitle">kernel-command-line</span>(7)</span></a>, <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a></p></dd><dt id="systemd.log_level="><span class="term"><code class="varname">systemd.log_level=</code></span><a class="headerlink" title="Permalink to this term" href="#systemd.log_level=">¶</a></dt><dd><p><a href="kernel-command-line.html"><span class="citerefentry"><span class="refentrytitle">kernel-command-line</span>(7)</span></a>, <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a></p></dd><dt id="systemd.log_location="><span class="term"><code class="varname">systemd.log_location=</code></span><a class="headerlink" title="Permalink to this term" href="#systemd.log_location=">¶</a></dt><dd><p><a href="kernel-command-line.html"><span class="citerefentry"><span class="refentrytitle">kernel-command-line</span>(7)</span></a>, <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a></p></dd><dt id="systemd.log_target="><span class="term"><code class="varname">systemd.log_target=</code></span><a class="headerlink" title="Permalink to this term" href="#systemd.log_target=">¶</a></dt><dd><p><a href="kernel-command-line.html"><span class="citerefentry"><span class="refentrytitle">kernel-command-line</span>(7)</span></a>, <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a></p></dd><dt id="systemd.restore_state="><span class="term"><code class="varname">systemd.restore_state=</code></span><a class="headerlink" title="Permalink to this term" href="#systemd.restore_state=">¶</a></dt><dd><p><a href="kernel-command-line.html"><span class="citerefentry"><span class="refentrytitle">kernel-command-line</span>(7)</span></a>, <a href="systemd-backlight@.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-backlight@.service</span>(8)</span></a>, <a href="systemd-rfkill@.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-rfkill@.service</span>(8)</span></a></p></dd><dt id="systemd.setenv="><span class="term"><code class="varname">systemd.setenv=</code></span><a class="headerlink" title="Permalink to this term" href="#systemd.setenv=">¶</a></dt><dd><p><a href="kernel-command-line.html"><span class="citerefentry"><span class="refentrytitle">kernel-command-line</span>(7)</span></a>, <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a></p></dd><dt id="systemd.show_status="><span class="term"><code class="varname">systemd.show_status=</code></span><a class="headerlink" title="Permalink to this term" href="#systemd.show_status=">¶</a></dt><dd><p><a href="kernel-command-line.html"><span class="citerefentry"><span class="refentrytitle">kernel-command-line</span>(7)</span></a>, <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a></p></dd><dt id="systemd.unit="><span class="term"><code class="varname">systemd.unit=</code></span><a class="headerlink" title="Permalink to this term" href="#systemd.unit=">¶</a></dt><dd><p><a href="kernel-command-line.html"><span class="citerefentry"><span class="refentrytitle">kernel-command-line</span>(7)</span></a>, <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a></p></dd><dt id="udev.children-max="><span class="term"><code class="varname">udev.children-max=</code></span><a class="headerlink" title="Permalink to this term" href="#udev.children-max=">¶</a></dt><dd><p><a href="kernel-command-line.html"><span class="citerefentry"><span class="refentrytitle">kernel-command-line</span>(7)</span></a>, <a href="systemd-udevd.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-udevd.service</span>(8)</span></a></p></dd><dt id="udev.exec-delay="><span class="term"><code class="varname">udev.exec-delay=</code></span><a class="headerlink" title="Permalink to this term" href="#udev.exec-delay=">¶</a></dt><dd><p><a href="kernel-command-line.html"><span class="citerefentry"><span class="refentrytitle">kernel-command-line</span>(7)</span></a>, <a href="systemd-udevd.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-udevd.service</span>(8)</span></a></p></dd><dt id="udev.log-priority="><span class="term"><code class="varname">udev.log-priority=</code></span><a class="headerlink" title="Permalink to this term" href="#udev.log-priority=">¶</a></dt><dd><p><a href="kernel-command-line.html"><span class="citerefentry"><span class="refentrytitle">kernel-command-line</span>(7)</span></a>, <a href="systemd-udevd.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-udevd.service</span>(8)</span></a></p></dd><dt id="vconsole.font.map="><span class="term"><code class="varname">vconsole.font.map=</code></span><a class="headerlink" title="Permalink to this term" href="#vconsole.font.map=">¶</a></dt><dd><p><a href="kernel-command-line.html"><span class="citerefentry"><span class="refentrytitle">kernel-command-line</span>(7)</span></a>, <a href="systemd-vconsole-setup.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-vconsole-setup.service</span>(8)</span></a></p></dd><dt id="vconsole.font.unimap="><span class="term"><code class="varname">vconsole.font.unimap=</code></span><a class="headerlink" title="Permalink to this term" href="#vconsole.font.unimap=">¶</a></dt><dd><p><a href="kernel-command-line.html"><span class="citerefentry"><span class="refentrytitle">kernel-command-line</span>(7)</span></a>, <a href="systemd-vconsole-setup.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-vconsole-setup.service</span>(8)</span></a></p></dd><dt id="vconsole.font="><span class="term"><code class="varname">vconsole.font=</code></span><a class="headerlink" title="Permalink to this term" href="#vconsole.font=">¶</a></dt><dd><p><a href="kernel-command-line.html"><span class="citerefentry"><span class="refentrytitle">kernel-command-line</span>(7)</span></a>, <a href="systemd-vconsole-setup.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-vconsole-setup.service</span>(8)</span></a></p></dd><dt id="vconsole.keymap.toggle="><span class="term"><code class="varname">vconsole.keymap.toggle=</code></span><a class="headerlink" title="Permalink to this term" href="#vconsole.keymap.toggle=">¶</a></dt><dd><p><a href="kernel-command-line.html"><span class="citerefentry"><span class="refentrytitle">kernel-command-line</span>(7)</span></a>, <a href="systemd-vconsole-setup.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-vconsole-setup.service</span>(8)</span></a></p></dd><dt id="vconsole.keymap="><span class="term"><code class="varname">vconsole.keymap=</code></span><a class="headerlink" title="Permalink to this term" href="#vconsole.keymap=">¶</a></dt><dd><p><a href="kernel-command-line.html"><span class="citerefentry"><span class="refentrytitle">kernel-command-line</span>(7)</span></a>, <a href="systemd-vconsole-setup.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-vconsole-setup.service</span>(8)</span></a></p></dd></dl></div></div><div class="refsect1"><a name="idm214186705920"></a><h2 id="Environment variables">Environment variables<a class="headerlink" title="Permalink to this headline" href="#Environment%20variables">¶</a></h2><p>Environment variables understood by the systemd
-                manager and other programs.</p><div class="variablelist"><a name="environment-variables"></a><dl class="variablelist"><dt id="$HOME"><span class="term"><code class="varname">$HOME</code></span><a class="headerlink" title="Permalink to this term" href="#%24HOME">¶</a></dt><dd><p><a href="systemd.exec.html"><span class="citerefentry"><span class="refentrytitle">systemd.exec</span>(5)</span></a></p></dd><dt id="$LANG"><span class="term"><code class="varname">$LANG</code></span><a class="headerlink" title="Permalink to this term" href="#%24LANG">¶</a></dt><dd><p><a href="systemd.exec.html"><span class="citerefentry"><span class="refentrytitle">systemd.exec</span>(5)</span></a></p></dd><dt id="$LISTEN_FDS"><span class="term"><code class="varname">$LISTEN_FDS</code></span><a class="headerlink" title="Permalink to this term" href="#%24LISTEN_FDS">¶</a></dt><dd><p><a href="sd_listen_fds.html"><span class="citerefentry"><span class="refentrytitle">sd_listen_fds</span>(3)</span></a>, <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>, <a href="systemd-activate.html"><span class="citerefentry"><span class="refentrytitle">systemd-activate</span>(8)</span></a>, <a href="systemd.exec.html"><span class="citerefentry"><span class="refentrytitle">systemd.exec</span>(5)</span></a></p></dd><dt id="$LISTEN_PID"><span class="term"><code class="varname">$LISTEN_PID</code></span><a class="headerlink" title="Permalink to this term" href="#%24LISTEN_PID">¶</a></dt><dd><p><a href="sd_listen_fds.html"><span class="citerefentry"><span class="refentrytitle">sd_listen_fds</span>(3)</span></a>, <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>, <a href="systemd-activate.html"><span class="citerefentry"><span class="refentrytitle">systemd-activate</span>(8)</span></a>, <a href="systemd.exec.html"><span class="citerefentry"><span class="refentrytitle">systemd.exec</span>(5)</span></a></p></dd><dt id="$LOGNAME"><span class="term"><code class="varname">$LOGNAME</code></span><a class="headerlink" title="Permalink to this term" href="#%24LOGNAME">¶</a></dt><dd><p><a href="systemd.exec.html"><span class="citerefentry"><span class="refentrytitle">systemd.exec</span>(5)</span></a></p></dd><dt id="$MAINPID"><span class="term"><code class="varname">$MAINPID</code></span><a class="headerlink" title="Permalink to this term" href="#%24MAINPID">¶</a></dt><dd><p><a href="systemd.exec.html"><span class="citerefentry"><span class="refentrytitle">systemd.exec</span>(5)</span></a></p></dd><dt id="$MANAGERPID"><span class="term"><code class="varname">$MANAGERPID</code></span><a class="headerlink" title="Permalink to this term" href="#%24MANAGERPID">¶</a></dt><dd><p><a href="systemd.exec.html"><span class="citerefentry"><span class="refentrytitle">systemd.exec</span>(5)</span></a></p></dd><dt id="$NOTIFY_SOCKET"><span class="term"><code class="varname">$NOTIFY_SOCKET</code></span><a class="headerlink" title="Permalink to this term" href="#%24NOTIFY_SOCKET">¶</a></dt><dd><p><a href="sd_notify.html"><span class="citerefentry"><span class="refentrytitle">sd_notify</span>(3)</span></a>, <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a></p></dd><dt id="$PATH"><span class="term"><code class="varname">$PATH</code></span><a class="headerlink" title="Permalink to this term" href="#%24PATH">¶</a></dt><dd><p><a href="systemd.exec.html"><span class="citerefentry"><span class="refentrytitle">systemd.exec</span>(5)</span></a></p></dd><dt id="$PREVLEVEL"><span class="term"><code class="varname">$PREVLEVEL</code></span><a class="headerlink" title="Permalink to this term" href="#%24PREVLEVEL">¶</a></dt><dd><p><a href="runlevel.html"><span class="citerefentry"><span class="refentrytitle">runlevel</span>(8)</span></a></p></dd><dt id="$RUNLEVEL"><span class="term"><code class="varname">$RUNLEVEL</code></span><a class="headerlink" title="Permalink to this term" href="#%24RUNLEVEL">¶</a></dt><dd><p><a href="runlevel.html"><span class="citerefentry"><span class="refentrytitle">runlevel</span>(8)</span></a></p></dd><dt id="$SHELL"><span class="term"><code class="varname">$SHELL</code></span><a class="headerlink" title="Permalink to this term" href="#%24SHELL">¶</a></dt><dd><p><a href="systemd.exec.html"><span class="citerefentry"><span class="refentrytitle">systemd.exec</span>(5)</span></a></p></dd><dt id="$SYSTEMD_LESS"><span class="term"><code class="varname">$SYSTEMD_LESS</code></span><a class="headerlink" title="Permalink to this term" href="#%24SYSTEMD_LESS">¶</a></dt><dd><p><a href="journalctl.html"><span class="citerefentry"><span class="refentrytitle">journalctl</span>(1)</span></a>, <a href="localectl.html"><span class="citerefentry"><span class="refentrytitle">localectl</span>(1)</span></a>, <a href="loginctl.html"><span class="citerefentry"><span class="refentrytitle">loginctl</span>(1)</span></a>, <a href="machinectl.html"><span class="citerefentry"><span class="refentrytitle">machinectl</span>(1)</span></a>, <a href="systemctl.html"><span class="citerefentry"><span class="refentrytitle">systemctl</span>(1)</span></a>, <a href="systemd-analyze.html"><span class="citerefentry"><span class="refentrytitle">systemd-analyze</span>(1)</span></a>, <a href="timedatectl.html"><span class="citerefentry"><span class="refentrytitle">timedatectl</span>(1)</span></a></p></dd><dt id="$SYSTEMD_LOG_COLOR"><span class="term"><code class="varname">$SYSTEMD_LOG_COLOR</code></span><a class="headerlink" title="Permalink to this term" href="#%24SYSTEMD_LOG_COLOR">¶</a></dt><dd><p><a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>, <a href="systemd-activate.html"><span class="citerefentry"><span class="refentrytitle">systemd-activate</span>(8)</span></a></p></dd><dt id="$SYSTEMD_LOG_LEVEL"><span class="term"><code class="varname">$SYSTEMD_LOG_LEVEL</code></span><a class="headerlink" title="Permalink to this term" href="#%24SYSTEMD_LOG_LEVEL">¶</a></dt><dd><p><a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>, <a href="systemd-activate.html"><span class="citerefentry"><span class="refentrytitle">systemd-activate</span>(8)</span></a></p></dd><dt id="$SYSTEMD_LOG_LOCATION"><span class="term"><code class="varname">$SYSTEMD_LOG_LOCATION</code></span><a class="headerlink" title="Permalink to this term" href="#%24SYSTEMD_LOG_LOCATION">¶</a></dt><dd><p><a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>, <a href="systemd-activate.html"><span class="citerefentry"><span class="refentrytitle">systemd-activate</span>(8)</span></a></p></dd><dt id="$SYSTEMD_LOG_TARGET"><span class="term"><code class="varname">$SYSTEMD_LOG_TARGET</code></span><a class="headerlink" title="Permalink to this term" href="#%24SYSTEMD_LOG_TARGET">¶</a></dt><dd><p><a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>, <a href="systemd-activate.html"><span class="citerefentry"><span class="refentrytitle">systemd-activate</span>(8)</span></a></p></dd><dt id="$SYSTEMD_PAGER"><span class="term"><code class="varname">$SYSTEMD_PAGER</code></span><a class="headerlink" title="Permalink to this term" href="#%24SYSTEMD_PAGER">¶</a></dt><dd><p><a href="journalctl.html"><span class="citerefentry"><span class="refentrytitle">journalctl</span>(1)</span></a>, <a href="localectl.html"><span class="citerefentry"><span class="refentrytitle">localectl</span>(1)</span></a>, <a href="loginctl.html"><span class="citerefentry"><span class="refentrytitle">loginctl</span>(1)</span></a>, <a href="machinectl.html"><span class="citerefentry"><span class="refentrytitle">machinectl</span>(1)</span></a>, <a href="systemctl.html"><span class="citerefentry"><span class="refentrytitle">systemctl</span>(1)</span></a>, <a href="systemd-analyze.html"><span class="citerefentry"><span class="refentrytitle">systemd-analyze</span>(1)</span></a>, <a href="timedatectl.html"><span class="citerefentry"><span class="refentrytitle">timedatectl</span>(1)</span></a></p></dd><dt id="$SYSTEMD_SYSVINIT_PATH"><span class="term"><code class="varname">$SYSTEMD_SYSVINIT_PATH</code></span><a class="headerlink" title="Permalink to this term" href="#%24SYSTEMD_SYSVINIT_PATH">¶</a></dt><dd><p><a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a></p></dd><dt id="$SYSTEMD_SYSVRCND_PATH"><span class="term"><code class="varname">$SYSTEMD_SYSVRCND_PATH</code></span><a class="headerlink" title="Permalink to this term" href="#%24SYSTEMD_SYSVRCND_PATH">¶</a></dt><dd><p><a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a></p></dd><dt id="$SYSTEMD_UNIT_PATH"><span class="term"><code class="varname">$SYSTEMD_UNIT_PATH</code></span><a class="headerlink" title="Permalink to this term" href="#%24SYSTEMD_UNIT_PATH">¶</a></dt><dd><p><a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a></p></dd><dt id="$TERM"><span class="term"><code class="varname">$TERM</code></span><a class="headerlink" title="Permalink to this term" href="#%24TERM">¶</a></dt><dd><p><a href="systemd.exec.html"><span class="citerefentry"><span class="refentrytitle">systemd.exec</span>(5)</span></a></p></dd><dt id="$UDEV_LOG="><span class="term"><code class="varname">$UDEV_LOG=</code></span><a class="headerlink" title="Permalink to this term" href="#%24UDEV_LOG=">¶</a></dt><dd><p><a href="systemd-udevd.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-udevd.service</span>(8)</span></a></p></dd><dt id="$USER"><span class="term"><code class="varname">$USER</code></span><a class="headerlink" title="Permalink to this term" href="#%24USER">¶</a></dt><dd><p><a href="systemd.exec.html"><span class="citerefentry"><span class="refentrytitle">systemd.exec</span>(5)</span></a></p></dd><dt id="$WATCHDOG_PID"><span class="term"><code class="varname">$WATCHDOG_PID</code></span><a class="headerlink" title="Permalink to this term" href="#%24WATCHDOG_PID">¶</a></dt><dd><p><a href="sd_watchdog_enabled.html"><span class="citerefentry"><span class="refentrytitle">sd_watchdog_enabled</span>(3)</span></a></p></dd><dt id="$WATCHDOG_USEC"><span class="term"><code class="varname">$WATCHDOG_USEC</code></span><a class="headerlink" title="Permalink to this term" href="#%24WATCHDOG_USEC">¶</a></dt><dd><p><a href="sd_watchdog_enabled.html"><span class="citerefentry"><span class="refentrytitle">sd_watchdog_enabled</span>(3)</span></a></p></dd><dt id="$XDG_CONFIG_DIRS"><span class="term"><code class="varname">$XDG_CONFIG_DIRS</code></span><a class="headerlink" title="Permalink to this term" href="#%24XDG_CONFIG_DIRS">¶</a></dt><dd><p><a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a></p></dd><dt id="$XDG_CONFIG_HOME"><span class="term"><code class="varname">$XDG_CONFIG_HOME</code></span><a class="headerlink" title="Permalink to this term" href="#%24XDG_CONFIG_HOME">¶</a></dt><dd><p><a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a></p></dd><dt id="$XDG_DATA_DIRS"><span class="term"><code class="varname">$XDG_DATA_DIRS</code></span><a class="headerlink" title="Permalink to this term" href="#%24XDG_DATA_DIRS">¶</a></dt><dd><p><a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a></p></dd><dt id="$XDG_DATA_HOME"><span class="term"><code class="varname">$XDG_DATA_HOME</code></span><a class="headerlink" title="Permalink to this term" href="#%24XDG_DATA_HOME">¶</a></dt><dd><p><a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a></p></dd><dt id="$XDG_RUNTIME_DIR"><span class="term"><code class="varname">$XDG_RUNTIME_DIR</code></span><a class="headerlink" title="Permalink to this term" href="#%24XDG_RUNTIME_DIR">¶</a></dt><dd><p><a href="pam_systemd.html"><span class="citerefentry"><span class="refentrytitle">pam_systemd</span>(8)</span></a>, <a href="systemd.exec.html"><span class="citerefentry"><span class="refentrytitle">systemd.exec</span>(5)</span></a></p></dd><dt id="$XDG_SEAT"><span class="term"><code class="varname">$XDG_SEAT</code></span><a class="headerlink" title="Permalink to this term" href="#%24XDG_SEAT">¶</a></dt><dd><p><a href="pam_systemd.html"><span class="citerefentry"><span class="refentrytitle">pam_systemd</span>(8)</span></a>, <a href="systemd.exec.html"><span class="citerefentry"><span class="refentrytitle">systemd.exec</span>(5)</span></a></p></dd><dt id="$XDG_SESSION_CLASS"><span class="term"><code class="varname">$XDG_SESSION_CLASS</code></span><a class="headerlink" title="Permalink to this term" href="#%24XDG_SESSION_CLASS">¶</a></dt><dd><p><a href="pam_systemd.html"><span class="citerefentry"><span class="refentrytitle">pam_systemd</span>(8)</span></a></p></dd><dt id="$XDG_SESSION_DESKTOP"><span class="term"><code class="varname">$XDG_SESSION_DESKTOP</code></span><a class="headerlink" title="Permalink to this term" href="#%24XDG_SESSION_DESKTOP">¶</a></dt><dd><p><a href="pam_systemd.html"><span class="citerefentry"><span class="refentrytitle">pam_systemd</span>(8)</span></a></p></dd><dt id="$XDG_SESSION_ID"><span class="term"><code class="varname">$XDG_SESSION_ID</code></span><a class="headerlink" title="Permalink to this term" href="#%24XDG_SESSION_ID">¶</a></dt><dd><p><a href="pam_systemd.html"><span class="citerefentry"><span class="refentrytitle">pam_systemd</span>(8)</span></a>, <a href="systemd.exec.html"><span class="citerefentry"><span class="refentrytitle">systemd.exec</span>(5)</span></a></p></dd><dt id="$XDG_SESSION_TYPE"><span class="term"><code class="varname">$XDG_SESSION_TYPE</code></span><a class="headerlink" title="Permalink to this term" href="#%24XDG_SESSION_TYPE">¶</a></dt><dd><p><a href="pam_systemd.html"><span class="citerefentry"><span class="refentrytitle">pam_systemd</span>(8)</span></a></p></dd><dt id="$XDG_VTNR"><span class="term"><code class="varname">$XDG_VTNR</code></span><a class="headerlink" title="Permalink to this term" href="#%24XDG_VTNR">¶</a></dt><dd><p><a href="pam_systemd.html"><span class="citerefentry"><span class="refentrytitle">pam_systemd</span>(8)</span></a>, <a href="systemd.exec.html"><span class="citerefentry"><span class="refentrytitle">systemd.exec</span>(5)</span></a></p></dd></dl></div></div><div class="refsect1"><a name="idm214186623296"></a><h2 id="UDEV directives">UDEV directives<a class="headerlink" title="Permalink to this headline" href="#UDEV%20directives">¶</a></h2><p>Directives for configuring systemd units through the
-                udev database.</p><div class="variablelist"><a name="udev-directives"></a><dl class="variablelist"><dt id="$$"><span class="term"><code class="option">$$</code></span><a class="headerlink" title="Permalink to this term" href="#%24%24">¶</a></dt><dd><p><a href="udev.html"><span class="citerefentry"><span class="refentrytitle">udev</span>(7)</span></a></p></dd><dt id="$attr{file}"><span class="term"><code class="option">$attr{<em class="replaceable"><code>file</code></em>}</code></span><a class="headerlink" title="Permalink to this term" href="#%24attr%7Bfile%7D">¶</a></dt><dd><p><a href="udev.html"><span class="citerefentry"><span class="refentrytitle">udev</span>(7)</span></a></p></dd><dt id="$devnode"><span class="term"><code class="option">$devnode</code></span><a class="headerlink" title="Permalink to this term" href="#%24devnode">¶</a></dt><dd><p><a href="udev.html"><span class="citerefentry"><span class="refentrytitle">udev</span>(7)</span></a></p></dd><dt id="$devpath"><span class="term"><code class="option">$devpath</code></span><a class="headerlink" title="Permalink to this term" href="#%24devpath">¶</a></dt><dd><p><a href="udev.html"><span class="citerefentry"><span class="refentrytitle">udev</span>(7)</span></a></p></dd><dt id="$driver"><span class="term"><code class="option">$driver</code></span><a class="headerlink" title="Permalink to this term" href="#%24driver">¶</a></dt><dd><p><a href="udev.html"><span class="citerefentry"><span class="refentrytitle">udev</span>(7)</span></a></p></dd><dt id="$env{key}"><span class="term"><code class="option">$env{<em class="replaceable"><code>key</code></em>}</code></span><a class="headerlink" title="Permalink to this term" href="#%24env%7Bkey%7D">¶</a></dt><dd><p><a href="udev.html"><span class="citerefentry"><span class="refentrytitle">udev</span>(7)</span></a></p></dd><dt id="$id"><span class="term"><code class="option">$id</code></span><a class="headerlink" title="Permalink to this term" href="#%24id">¶</a></dt><dd><p><a href="udev.html"><span class="citerefentry"><span class="refentrytitle">udev</span>(7)</span></a></p></dd><dt id="$kernel"><span class="term"><code class="option">$kernel</code></span><a class="headerlink" title="Permalink to this term" href="#%24kernel">¶</a></dt><dd><p><a href="udev.html"><span class="citerefentry"><span class="refentrytitle">udev</span>(7)</span></a></p></dd><dt id="$links"><span class="term"><code class="option">$links</code></span><a class="headerlink" title="Permalink to this term" href="#%24links">¶</a></dt><dd><p><a href="udev.html"><span class="citerefentry"><span class="refentrytitle">udev</span>(7)</span></a></p></dd><dt id="$major"><span class="term"><code class="option">$major</code></span><a class="headerlink" title="Permalink to this term" href="#%24major">¶</a></dt><dd><p><a href="udev.html"><span class="citerefentry"><span class="refentrytitle">udev</span>(7)</span></a></p></dd><dt id="$minor"><span class="term"><code class="option">$minor</code></span><a class="headerlink" title="Permalink to this term" href="#%24minor">¶</a></dt><dd><p><a href="udev.html"><span class="citerefentry"><span class="refentrytitle">udev</span>(7)</span></a></p></dd><dt id="$name"><span class="term"><code class="option">$name</code></span><a class="headerlink" title="Permalink to this term" href="#%24name">¶</a></dt><dd><p><a href="udev.html"><span class="citerefentry"><span class="refentrytitle">udev</span>(7)</span></a></p></dd><dt id="$number"><span class="term"><code class="option">$number</code></span><a class="headerlink" title="Permalink to this term" href="#%24number">¶</a></dt><dd><p><a href="udev.html"><span class="citerefentry"><span class="refentrytitle">udev</span>(7)</span></a></p></dd><dt id="$parent"><span class="term"><code class="option">$parent</code></span><a class="headerlink" title="Permalink to this term" href="#%24parent">¶</a></dt><dd><p><a href="udev.html"><span class="citerefentry"><span class="refentrytitle">udev</span>(7)</span></a></p></dd><dt id="$result"><span class="term"><code class="option">$result</code></span><a class="headerlink" title="Permalink to this term" href="#%24result">¶</a></dt><dd><p><a href="udev.html"><span class="citerefentry"><span class="refentrytitle">udev</span>(7)</span></a></p></dd><dt id="$root"><span class="term"><code class="option">$root</code></span><a class="headerlink" title="Permalink to this term" href="#%24root">¶</a></dt><dd><p><a href="udev.html"><span class="citerefentry"><span class="refentrytitle">udev</span>(7)</span></a></p></dd><dt id="$sys"><span class="term"><code class="option">$sys</code></span><a class="headerlink" title="Permalink to this term" href="#%24sys">¶</a></dt><dd><p><a href="udev.html"><span class="citerefentry"><span class="refentrytitle">udev</span>(7)</span></a></p></dd><dt id="%%"><span class="term"><code class="option">%%</code></span><a class="headerlink" title="Permalink to this term" href="#%%">¶</a></dt><dd><p><a href="udev.html"><span class="citerefentry"><span class="refentrytitle">udev</span>(7)</span></a></p></dd><dt id="%E{key}"><span class="term"><code class="option">%E{<em class="replaceable"><code>key</code></em>}</code></span><a class="headerlink" title="Permalink to this term" href="#%E%7Bkey%7D">¶</a></dt><dd><p><a href="udev.html"><span class="citerefentry"><span class="refentrytitle">udev</span>(7)</span></a></p></dd><dt id="%M"><span class="term"><code class="option">%M</code></span><a class="headerlink" title="Permalink to this term" href="#%M">¶</a></dt><dd><p><a href="udev.html"><span class="citerefentry"><span class="refentrytitle">udev</span>(7)</span></a></p></dd><dt id="%N"><span class="term"><code class="option">%N</code></span><a class="headerlink" title="Permalink to this term" href="#%N">¶</a></dt><dd><p><a href="udev.html"><span class="citerefentry"><span class="refentrytitle">udev</span>(7)</span></a></p></dd><dt id="%P"><span class="term"><code class="option">%P</code></span><a class="headerlink" title="Permalink to this term" href="#%P">¶</a></dt><dd><p><a href="udev.html"><span class="citerefentry"><span class="refentrytitle">udev</span>(7)</span></a></p></dd><dt id="%S"><span class="term"><code class="option">%S</code></span><a class="headerlink" title="Permalink to this term" href="#%S">¶</a></dt><dd><p><a href="udev.html"><span class="citerefentry"><span class="refentrytitle">udev</span>(7)</span></a></p></dd><dt id="%b"><span class="term"><code class="option">%b</code></span><a class="headerlink" title="Permalink to this term" href="#%b">¶</a></dt><dd><p><a href="udev.html"><span class="citerefentry"><span class="refentrytitle">udev</span>(7)</span></a></p></dd><dt id="%c"><span class="term"><code class="option">%c</code></span><a class="headerlink" title="Permalink to this term" href="#%c">¶</a></dt><dd><p><a href="udev.html"><span class="citerefentry"><span class="refentrytitle">udev</span>(7)</span></a></p></dd><dt id="%k"><span class="term"><code class="option">%k</code></span><a class="headerlink" title="Permalink to this term" href="#%k">¶</a></dt><dd><p><a href="udev.html"><span class="citerefentry"><span class="refentrytitle">udev</span>(7)</span></a></p></dd><dt id="%m"><span class="term"><code class="option">%m</code></span><a class="headerlink" title="Permalink to this term" href="#%m">¶</a></dt><dd><p><a href="udev.html"><span class="citerefentry"><span class="refentrytitle">udev</span>(7)</span></a></p></dd><dt id="%n"><span class="term"><code class="option">%n</code></span><a class="headerlink" title="Permalink to this term" href="#%n">¶</a></dt><dd><p><a href="udev.html"><span class="citerefentry"><span class="refentrytitle">udev</span>(7)</span></a></p></dd><dt id="%p"><span class="term"><code class="option">%p</code></span><a class="headerlink" title="Permalink to this term" href="#%p">¶</a></dt><dd><p><a href="udev.html"><span class="citerefentry"><span class="refentrytitle">udev</span>(7)</span></a></p></dd><dt id="%r"><span class="term"><code class="option">%r</code></span><a class="headerlink" title="Permalink to this term" href="#%r">¶</a></dt><dd><p><a href="udev.html"><span class="citerefentry"><span class="refentrytitle">udev</span>(7)</span></a></p></dd><dt id="%s{file}"><span class="term"><code class="option">%s{<em class="replaceable"><code>file</code></em>}</code></span><a class="headerlink" title="Permalink to this term" href="#%s%7Bfile%7D">¶</a></dt><dd><p><a href="udev.html"><span class="citerefentry"><span class="refentrytitle">udev</span>(7)</span></a></p></dd><dt id="ACTION"><span class="term"><code class="varname">ACTION</code></span><a class="headerlink" title="Permalink to this term" href="#ACTION">¶</a></dt><dd><p><a href="udev.html"><span class="citerefentry"><span class="refentrytitle">udev</span>(7)</span></a></p></dd><dt id="ATTRS{filename}"><span class="term"><code class="varname">ATTRS{<em class="replaceable"><code>filename</code></em>}</code></span><a class="headerlink" title="Permalink to this term" href="#ATTRS%7Bfilename%7D">¶</a></dt><dd><p><a href="udev.html"><span class="citerefentry"><span class="refentrytitle">udev</span>(7)</span></a></p></dd><dt id="ATTR{filename}"><span class="term"><code class="varname">ATTR{<em class="replaceable"><code>filename</code></em>}</code></span><a class="headerlink" title="Permalink to this term" href="#ATTR%7Bfilename%7D">¶</a></dt><dd><p><a href="udev.html"><span class="citerefentry"><span class="refentrytitle">udev</span>(7)</span></a></p></dd><dt id="DEVPATH"><span class="term"><code class="varname">DEVPATH</code></span><a class="headerlink" title="Permalink to this term" href="#DEVPATH">¶</a></dt><dd><p><a href="udev.html"><span class="citerefentry"><span class="refentrytitle">udev</span>(7)</span></a></p></dd><dt id="DRIVER"><span class="term"><code class="varname">DRIVER</code></span><a class="headerlink" title="Permalink to this term" href="#DRIVER">¶</a></dt><dd><p><a href="udev.html"><span class="citerefentry"><span class="refentrytitle">udev</span>(7)</span></a></p></dd><dt id="DRIVERS"><span class="term"><code class="varname">DRIVERS</code></span><a class="headerlink" title="Permalink to this term" href="#DRIVERS">¶</a></dt><dd><p><a href="udev.html"><span class="citerefentry"><span class="refentrytitle">udev</span>(7)</span></a></p></dd><dt id="ENV{key}"><span class="term"><code class="varname">ENV{<em class="replaceable"><code>key</code></em>}</code></span><a class="headerlink" title="Permalink to this term" href="#ENV%7Bkey%7D">¶</a></dt><dd><p><a href="udev.html"><span class="citerefentry"><span class="refentrytitle">udev</span>(7)</span></a></p></dd><dt id="GOTO"><span class="term"><code class="varname">GOTO</code></span><a class="headerlink" title="Permalink to this term" href="#GOTO">¶</a></dt><dd><p><a href="udev.html"><span class="citerefentry"><span class="refentrytitle">udev</span>(7)</span></a></p></dd><dt id="GROUP"><span class="term"><code class="varname">GROUP</code></span><a class="headerlink" title="Permalink to this term" href="#GROUP">¶</a></dt><dd><p><a href="udev.html"><span class="citerefentry"><span class="refentrytitle">udev</span>(7)</span></a></p></dd><dt id="ID_MODEL="><span class="term"><code class="varname">ID_MODEL=</code></span><a class="headerlink" title="Permalink to this term" href="#ID_MODEL=">¶</a></dt><dd><p><a href="systemd.device.html"><span class="citerefentry"><span class="refentrytitle">systemd.device</span>(5)</span></a></p></dd><dt id="ID_MODEL_FROM_DATABASE="><span class="term"><code class="varname">ID_MODEL_FROM_DATABASE=</code></span><a class="headerlink" title="Permalink to this term" href="#ID_MODEL_FROM_DATABASE=">¶</a></dt><dd><p><a href="systemd.device.html"><span class="citerefentry"><span class="refentrytitle">systemd.device</span>(5)</span></a></p></dd><dt id="IMPORT{type}"><span class="term"><code class="varname">IMPORT{<em class="replaceable"><code>type</code></em>}</code></span><a class="headerlink" title="Permalink to this term" href="#IMPORT%7Btype%7D">¶</a></dt><dd><p><a href="udev.html"><span class="citerefentry"><span class="refentrytitle">udev</span>(7)</span></a></p></dd><dt id="KERNEL"><span class="term"><code class="varname">KERNEL</code></span><a class="headerlink" title="Permalink to this term" href="#KERNEL">¶</a></dt><dd><p><a href="udev.html"><span class="citerefentry"><span class="refentrytitle">udev</span>(7)</span></a></p></dd><dt id="KERNELS"><span class="term"><code class="varname">KERNELS</code></span><a class="headerlink" title="Permalink to this term" href="#KERNELS">¶</a></dt><dd><p><a href="udev.html"><span class="citerefentry"><span class="refentrytitle">udev</span>(7)</span></a></p></dd><dt id="LABEL"><span class="term"><code class="varname">LABEL</code></span><a class="headerlink" title="Permalink to this term" href="#LABEL">¶</a></dt><dd><p><a href="udev.html"><span class="citerefentry"><span class="refentrytitle">udev</span>(7)</span></a></p></dd><dt id="MODE"><span class="term"><code class="varname">MODE</code></span><a class="headerlink" title="Permalink to this term" href="#MODE">¶</a></dt><dd><p><a href="udev.html"><span class="citerefentry"><span class="refentrytitle">udev</span>(7)</span></a></p></dd><dt id="NAME"><span class="term"><code class="varname">NAME</code></span><a class="headerlink" title="Permalink to this term" href="#NAME">¶</a></dt><dd><p><a href="udev.html"><span class="citerefentry"><span class="refentrytitle">udev</span>(7)</span></a></p></dd><dt id="OPTIONS"><span class="term"><code class="varname">OPTIONS</code></span><a class="headerlink" title="Permalink to this term" href="#OPTIONS">¶</a></dt><dd><p><a href="udev.html"><span class="citerefentry"><span class="refentrytitle">udev</span>(7)</span></a></p></dd><dt id="OWNER"><span class="term"><code class="varname">OWNER</code></span><a class="headerlink" title="Permalink to this term" href="#OWNER">¶</a></dt><dd><p><a href="udev.html"><span class="citerefentry"><span class="refentrytitle">udev</span>(7)</span></a></p></dd><dt id="PROGRAM"><span class="term"><code class="varname">PROGRAM</code></span><a class="headerlink" title="Permalink to this term" href="#PROGRAM">¶</a></dt><dd><p><a href="udev.html"><span class="citerefentry"><span class="refentrytitle">udev</span>(7)</span></a></p></dd><dt id="RESULT"><span class="term"><code class="varname">RESULT</code></span><a class="headerlink" title="Permalink to this term" href="#RESULT">¶</a></dt><dd><p><a href="udev.html"><span class="citerefentry"><span class="refentrytitle">udev</span>(7)</span></a></p></dd><dt id="RUN{type}"><span class="term"><code class="varname">RUN{<em class="replaceable"><code>type</code></em>}</code></span><a class="headerlink" title="Permalink to this term" href="#RUN%7Btype%7D">¶</a></dt><dd><p><a href="udev.html"><span class="citerefentry"><span class="refentrytitle">udev</span>(7)</span></a></p></dd><dt id="SECLABEL{module}"><span class="term"><code class="varname">SECLABEL{<em class="replaceable"><code>module</code></em>}</code></span><a class="headerlink" title="Permalink to this term" href="#SECLABEL%7Bmodule%7D">¶</a></dt><dd><p><a href="udev.html"><span class="citerefentry"><span class="refentrytitle">udev</span>(7)</span></a></p></dd><dt id="SUBSYSTEM"><span class="term"><code class="varname">SUBSYSTEM</code></span><a class="headerlink" title="Permalink to this term" href="#SUBSYSTEM">¶</a></dt><dd><p><a href="udev.html"><span class="citerefentry"><span class="refentrytitle">udev</span>(7)</span></a></p></dd><dt id="SUBSYSTEMS"><span class="term"><code class="varname">SUBSYSTEMS</code></span><a class="headerlink" title="Permalink to this term" href="#SUBSYSTEMS">¶</a></dt><dd><p><a href="udev.html"><span class="citerefentry"><span class="refentrytitle">udev</span>(7)</span></a></p></dd><dt id="SYMLINK"><span class="term"><code class="varname">SYMLINK</code></span><a class="headerlink" title="Permalink to this term" href="#SYMLINK">¶</a></dt><dd><p><a href="udev.html"><span class="citerefentry"><span class="refentrytitle">udev</span>(7)</span></a></p></dd><dt id="SYSTEMD_ALIAS="><span class="term"><code class="varname">SYSTEMD_ALIAS=</code></span><a class="headerlink" title="Permalink to this term" href="#SYSTEMD_ALIAS=">¶</a></dt><dd><p><a href="systemd.device.html"><span class="citerefentry"><span class="refentrytitle">systemd.device</span>(5)</span></a></p></dd><dt id="SYSTEMD_READY="><span class="term"><code class="varname">SYSTEMD_READY=</code></span><a class="headerlink" title="Permalink to this term" href="#SYSTEMD_READY=">¶</a></dt><dd><p><a href="systemd.device.html"><span class="citerefentry"><span class="refentrytitle">systemd.device</span>(5)</span></a></p></dd><dt id="SYSTEMD_USER_WANTS="><span class="term"><code class="varname">SYSTEMD_USER_WANTS=</code></span><a class="headerlink" title="Permalink to this term" href="#SYSTEMD_USER_WANTS=">¶</a></dt><dd><p><a href="systemd.device.html"><span class="citerefentry"><span class="refentrytitle">systemd.device</span>(5)</span></a></p></dd><dt id="SYSTEMD_WANTS="><span class="term"><code class="varname">SYSTEMD_WANTS=</code></span><a class="headerlink" title="Permalink to this term" href="#SYSTEMD_WANTS=">¶</a></dt><dd><p><a href="systemd.device.html"><span class="citerefentry"><span class="refentrytitle">systemd.device</span>(5)</span></a></p></dd><dt id="TAG"><span class="term"><code class="varname">TAG</code></span><a class="headerlink" title="Permalink to this term" href="#TAG">¶</a></dt><dd><p><a href="udev.html"><span class="citerefentry"><span class="refentrytitle">udev</span>(7)</span></a></p></dd><dt id="TAGS"><span class="term"><code class="varname">TAGS</code></span><a class="headerlink" title="Permalink to this term" href="#TAGS">¶</a></dt><dd><p><a href="udev.html"><span class="citerefentry"><span class="refentrytitle">udev</span>(7)</span></a></p></dd><dt id="TEST{octal mode mask}"><span class="term"><code class="varname">TEST{<em class="replaceable"><code>octal mode mask</code></em>}</code></span><a class="headerlink" title="Permalink to this term" href="#TEST%7Boctal%20mode%20mask%7D">¶</a></dt><dd><p><a href="udev.html"><span class="citerefentry"><span class="refentrytitle">udev</span>(7)</span></a></p></dd><dt id="WAIT_FOR"><span class="term"><code class="varname">WAIT_FOR</code></span><a class="headerlink" title="Permalink to this term" href="#WAIT_FOR">¶</a></dt><dd><p><a href="udev.html"><span class="citerefentry"><span class="refentrytitle">udev</span>(7)</span></a></p></dd><dt id="event_timeout="><span class="term"><code class="option">event_timeout=</code></span><a class="headerlink" title="Permalink to this term" href="#event_timeout=">¶</a></dt><dd><p><a href="udev.html"><span class="citerefentry"><span class="refentrytitle">udev</span>(7)</span></a></p></dd><dt id="link_priority="><span class="term"><code class="option">link_priority=</code></span><a class="headerlink" title="Permalink to this term" href="#link_priority=">¶</a></dt><dd><p><a href="udev.html"><span class="citerefentry"><span class="refentrytitle">udev</span>(7)</span></a></p></dd><dt id="nowatch"><span class="term"><code class="option">nowatch</code></span><a class="headerlink" title="Permalink to this term" href="#nowatch">¶</a></dt><dd><p><a href="udev.html"><span class="citerefentry"><span class="refentrytitle">udev</span>(7)</span></a></p></dd><dt id="static_node="><span class="term"><code class="option">static_node=</code></span><a class="headerlink" title="Permalink to this term" href="#static_node=">¶</a></dt><dd><p><a href="udev.html"><span class="citerefentry"><span class="refentrytitle">udev</span>(7)</span></a></p></dd><dt id="string_escape="><span class="term"><code class="option">string_escape=</code></span><a class="headerlink" title="Permalink to this term" href="#string_escape=">¶</a></dt><dd><p><a href="udev.html"><span class="citerefentry"><span class="refentrytitle">udev</span>(7)</span></a></p></dd><dt id="watch"><span class="term"><code class="option">watch</code></span><a class="headerlink" title="Permalink to this term" href="#watch">¶</a></dt><dd><p><a href="udev.html"><span class="citerefentry"><span class="refentrytitle">udev</span>(7)</span></a></p></dd></dl></div></div><div class="refsect1"><a name="idm214186503568"></a><h2 id="Network directives">Network directives<a class="headerlink" title="Permalink to this headline" href="#Network%20directives">¶</a></h2><p>Directives for configuring network links through the
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="systemd.directives"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>systemd.directives — Index of configuration directives</p></div><div class="refsect1"><a name="idm214182825408"></a><h2 id="Unit directives">Unit directives<a class="headerlink" title="Permalink to this headline" href="#Unit%20directives">¶</a></h2><p>Directives for configuring units, used in unit
+                files.</p><div class="variablelist"><a name="unit-directives"></a><dl class="variablelist"><dt id="Accept="><span class="term"><code class="varname">Accept=</code></span><a class="headerlink" title="Permalink to this term" href="#Accept=">¶</a></dt><dd><p><a href="systemd.socket.html"><span class="citerefentry"><span class="refentrytitle">systemd.socket</span>(5)</span></a></p></dd><dt id="AccuracySec="><span class="term"><code class="varname">AccuracySec=</code></span><a class="headerlink" title="Permalink to this term" href="#AccuracySec=">¶</a></dt><dd><p><a href="systemd.timer.html"><span class="citerefentry"><span class="refentrytitle">systemd.timer</span>(5)</span></a></p></dd><dt id="After="><span class="term"><code class="varname">After=</code></span><a class="headerlink" title="Permalink to this term" href="#After=">¶</a></dt><dd><p><a href="systemd.unit.html"><span class="citerefentry"><span class="refentrytitle">systemd.unit</span>(5)</span></a></p></dd><dt id="Alias="><span class="term"><code class="varname">Alias=</code></span><a class="headerlink" title="Permalink to this term" href="#Alias=">¶</a></dt><dd><p><a href="systemd.unit.html"><span class="citerefentry"><span class="refentrytitle">systemd.unit</span>(5)</span></a></p></dd><dt id="AllowIsolate="><span class="term"><code class="varname">AllowIsolate=</code></span><a class="headerlink" title="Permalink to this term" href="#AllowIsolate=">¶</a></dt><dd><p><a href="systemd.unit.html"><span class="citerefentry"><span class="refentrytitle">systemd.unit</span>(5)</span></a></p></dd><dt id="Also="><span class="term"><code class="varname">Also=</code></span><a class="headerlink" title="Permalink to this term" href="#Also=">¶</a></dt><dd><p><a href="systemd.unit.html"><span class="citerefentry"><span class="refentrytitle">systemd.unit</span>(5)</span></a></p></dd><dt id="AppArmorProfile="><span class="term"><code class="varname">AppArmorProfile=</code></span><a class="headerlink" title="Permalink to this term" href="#AppArmorProfile=">¶</a></dt><dd><p><a href="systemd.exec.html"><span class="citerefentry"><span class="refentrytitle">systemd.exec</span>(5)</span></a></p></dd><dt id="Backlog="><span class="term"><code class="varname">Backlog=</code></span><a class="headerlink" title="Permalink to this term" href="#Backlog=">¶</a></dt><dd><p><a href="systemd.socket.html"><span class="citerefentry"><span class="refentrytitle">systemd.socket</span>(5)</span></a></p></dd><dt id="Before="><span class="term"><code class="varname">Before=</code></span><a class="headerlink" title="Permalink to this term" href="#Before=">¶</a></dt><dd><p><a href="systemd.unit.html"><span class="citerefentry"><span class="refentrytitle">systemd.unit</span>(5)</span></a></p></dd><dt id="BindIPv6Only="><span class="term"><code class="varname">BindIPv6Only=</code></span><a class="headerlink" title="Permalink to this term" href="#BindIPv6Only=">¶</a></dt><dd><p><a href="systemd.socket.html"><span class="citerefentry"><span class="refentrytitle">systemd.socket</span>(5)</span></a></p></dd><dt id="BindToDevice="><span class="term"><code class="varname">BindToDevice=</code></span><a class="headerlink" title="Permalink to this term" href="#BindToDevice=">¶</a></dt><dd><p><a href="systemd.socket.html"><span class="citerefentry"><span class="refentrytitle">systemd.socket</span>(5)</span></a></p></dd><dt id="BindsTo="><span class="term"><code class="varname">BindsTo=</code></span><a class="headerlink" title="Permalink to this term" href="#BindsTo=">¶</a></dt><dd><p><a href="systemd.unit.html"><span class="citerefentry"><span class="refentrytitle">systemd.unit</span>(5)</span></a></p></dd><dt id="BlockIOAccounting="><span class="term"><code class="varname">BlockIOAccounting=</code></span><a class="headerlink" title="Permalink to this term" href="#BlockIOAccounting=">¶</a></dt><dd><p><a href="systemd.resource-control.html"><span class="citerefentry"><span class="refentrytitle">systemd.resource-control</span>(5)</span></a></p></dd><dt id="BlockIODeviceWeight="><span class="term"><code class="varname">BlockIODeviceWeight=</code></span><a class="headerlink" title="Permalink to this term" href="#BlockIODeviceWeight=">¶</a></dt><dd><p><a href="systemd.resource-control.html"><span class="citerefentry"><span class="refentrytitle">systemd.resource-control</span>(5)</span></a></p></dd><dt id="BlockIOReadBandwidth="><span class="term"><code class="varname">BlockIOReadBandwidth=</code></span><a class="headerlink" title="Permalink to this term" href="#BlockIOReadBandwidth=">¶</a></dt><dd><p><a href="systemd.resource-control.html"><span class="citerefentry"><span class="refentrytitle">systemd.resource-control</span>(5)</span></a></p></dd><dt id="BlockIOWeight="><span class="term"><code class="varname">BlockIOWeight=</code></span><a class="headerlink" title="Permalink to this term" href="#BlockIOWeight=">¶</a></dt><dd><p><a href="systemd.resource-control.html"><span class="citerefentry"><span class="refentrytitle">systemd.resource-control</span>(5)</span></a></p></dd><dt id="BlockIOWriteBandwidth="><span class="term"><code class="varname">BlockIOWriteBandwidth=</code></span><a class="headerlink" title="Permalink to this term" href="#BlockIOWriteBandwidth=">¶</a></dt><dd><p><a href="systemd.resource-control.html"><span class="citerefentry"><span class="refentrytitle">systemd.resource-control</span>(5)</span></a></p></dd><dt id="Broadcast="><span class="term"><code class="varname">Broadcast=</code></span><a class="headerlink" title="Permalink to this term" href="#Broadcast=">¶</a></dt><dd><p><a href="systemd.socket.html"><span class="citerefentry"><span class="refentrytitle">systemd.socket</span>(5)</span></a></p></dd><dt id="BusName="><span class="term"><code class="varname">BusName=</code></span><a class="headerlink" title="Permalink to this term" href="#BusName=">¶</a></dt><dd><p><a href="systemd.service.html"><span class="citerefentry"><span class="refentrytitle">systemd.service</span>(5)</span></a></p></dd><dt id="CPUAccounting="><span class="term"><code class="varname">CPUAccounting=</code></span><a class="headerlink" title="Permalink to this term" href="#CPUAccounting=">¶</a></dt><dd><p><a href="systemd.resource-control.html"><span class="citerefentry"><span class="refentrytitle">systemd.resource-control</span>(5)</span></a></p></dd><dt id="CPUAffinity="><span class="term"><code class="varname">CPUAffinity=</code></span><a class="headerlink" title="Permalink to this term" href="#CPUAffinity=">¶</a></dt><dd><p><a href="systemd.exec.html"><span class="citerefentry"><span class="refentrytitle">systemd.exec</span>(5)</span></a></p></dd><dt id="CPUQuota="><span class="term"><code class="varname">CPUQuota=</code></span><a class="headerlink" title="Permalink to this term" href="#CPUQuota=">¶</a></dt><dd><p><a href="systemd.resource-control.html"><span class="citerefentry"><span class="refentrytitle">systemd.resource-control</span>(5)</span></a></p></dd><dt id="CPUSchedulingPolicy="><span class="term"><code class="varname">CPUSchedulingPolicy=</code></span><a class="headerlink" title="Permalink to this term" href="#CPUSchedulingPolicy=">¶</a></dt><dd><p><a href="systemd.exec.html"><span class="citerefentry"><span class="refentrytitle">systemd.exec</span>(5)</span></a></p></dd><dt id="CPUSchedulingPriority="><span class="term"><code class="varname">CPUSchedulingPriority=</code></span><a class="headerlink" title="Permalink to this term" href="#CPUSchedulingPriority=">¶</a></dt><dd><p><a href="systemd.exec.html"><span class="citerefentry"><span class="refentrytitle">systemd.exec</span>(5)</span></a></p></dd><dt id="CPUSchedulingResetOnFork="><span class="term"><code class="varname">CPUSchedulingResetOnFork=</code></span><a class="headerlink" title="Permalink to this term" href="#CPUSchedulingResetOnFork=">¶</a></dt><dd><p><a href="systemd.exec.html"><span class="citerefentry"><span class="refentrytitle">systemd.exec</span>(5)</span></a></p></dd><dt id="CPUShares="><span class="term"><code class="varname">CPUShares=</code></span><a class="headerlink" title="Permalink to this term" href="#CPUShares=">¶</a></dt><dd><p><a href="systemd.resource-control.html"><span class="citerefentry"><span class="refentrytitle">systemd.resource-control</span>(5)</span></a></p></dd><dt id="Capabilities="><span class="term"><code class="varname">Capabilities=</code></span><a class="headerlink" title="Permalink to this term" href="#Capabilities=">¶</a></dt><dd><p><a href="systemd.exec.html"><span class="citerefentry"><span class="refentrytitle">systemd.exec</span>(5)</span></a></p></dd><dt id="CapabilityBoundingSet="><span class="term"><code class="varname">CapabilityBoundingSet=</code></span><a class="headerlink" title="Permalink to this term" href="#CapabilityBoundingSet=">¶</a></dt><dd><p><a href="systemd.exec.html"><span class="citerefentry"><span class="refentrytitle">systemd.exec</span>(5)</span></a></p></dd><dt id="ConditionACPower="><span class="term"><code class="varname">ConditionACPower=</code></span><a class="headerlink" title="Permalink to this term" href="#ConditionACPower=">¶</a></dt><dd><p><a href="systemd.unit.html"><span class="citerefentry"><span class="refentrytitle">systemd.unit</span>(5)</span></a></p></dd><dt id="ConditionArchitecture="><span class="term"><code class="varname">ConditionArchitecture=</code></span><a class="headerlink" title="Permalink to this term" href="#ConditionArchitecture=">¶</a></dt><dd><p><a href="systemd.unit.html"><span class="citerefentry"><span class="refentrytitle">systemd.unit</span>(5)</span></a></p></dd><dt id="ConditionCapability="><span class="term"><code class="varname">ConditionCapability=</code></span><a class="headerlink" title="Permalink to this term" href="#ConditionCapability=">¶</a></dt><dd><p><a href="systemd.unit.html"><span class="citerefentry"><span class="refentrytitle">systemd.unit</span>(5)</span></a></p></dd><dt id="ConditionDirectoryNotEmpty="><span class="term"><code class="varname">ConditionDirectoryNotEmpty=</code></span><a class="headerlink" title="Permalink to this term" href="#ConditionDirectoryNotEmpty=">¶</a></dt><dd><p><a href="systemd.unit.html"><span class="citerefentry"><span class="refentrytitle">systemd.unit</span>(5)</span></a></p></dd><dt id="ConditionFileIsExecutable="><span class="term"><code class="varname">ConditionFileIsExecutable=</code></span><a class="headerlink" title="Permalink to this term" href="#ConditionFileIsExecutable=">¶</a></dt><dd><p><a href="systemd.unit.html"><span class="citerefentry"><span class="refentrytitle">systemd.unit</span>(5)</span></a></p></dd><dt id="ConditionFileNotEmpty="><span class="term"><code class="varname">ConditionFileNotEmpty=</code></span><a class="headerlink" title="Permalink to this term" href="#ConditionFileNotEmpty=">¶</a></dt><dd><p><a href="systemd.unit.html"><span class="citerefentry"><span class="refentrytitle">systemd.unit</span>(5)</span></a></p></dd><dt id="ConditionHost="><span class="term"><code class="varname">ConditionHost=</code></span><a class="headerlink" title="Permalink to this term" href="#ConditionHost=">¶</a></dt><dd><p><a href="systemd.unit.html"><span class="citerefentry"><span class="refentrytitle">systemd.unit</span>(5)</span></a></p></dd><dt id="ConditionKernelCommandLine="><span class="term"><code class="varname">ConditionKernelCommandLine=</code></span><a class="headerlink" title="Permalink to this term" href="#ConditionKernelCommandLine=">¶</a></dt><dd><p><a href="systemd.unit.html"><span class="citerefentry"><span class="refentrytitle">systemd.unit</span>(5)</span></a></p></dd><dt id="ConditionNeedsUpdate="><span class="term"><code class="varname">ConditionNeedsUpdate=</code></span><a class="headerlink" title="Permalink to this term" href="#ConditionNeedsUpdate=">¶</a></dt><dd><p><a href="systemd.unit.html"><span class="citerefentry"><span class="refentrytitle">systemd.unit</span>(5)</span></a></p></dd><dt id="ConditionNull="><span class="term"><code class="varname">ConditionNull=</code></span><a class="headerlink" title="Permalink to this term" href="#ConditionNull=">¶</a></dt><dd><p><a href="systemd.unit.html"><span class="citerefentry"><span class="refentrytitle">systemd.unit</span>(5)</span></a></p></dd><dt id="ConditionPathExists="><span class="term"><code class="varname">ConditionPathExists=</code></span><a class="headerlink" title="Permalink to this term" href="#ConditionPathExists=">¶</a></dt><dd><p><a href="systemd.unit.html"><span class="citerefentry"><span class="refentrytitle">systemd.unit</span>(5)</span></a></p></dd><dt id="ConditionPathExistsGlob="><span class="term"><code class="varname">ConditionPathExistsGlob=</code></span><a class="headerlink" title="Permalink to this term" href="#ConditionPathExistsGlob=">¶</a></dt><dd><p><a href="systemd.unit.html"><span class="citerefentry"><span class="refentrytitle">systemd.unit</span>(5)</span></a></p></dd><dt id="ConditionPathIsDirectory="><span class="term"><code class="varname">ConditionPathIsDirectory=</code></span><a class="headerlink" title="Permalink to this term" href="#ConditionPathIsDirectory=">¶</a></dt><dd><p><a href="systemd.unit.html"><span class="citerefentry"><span class="refentrytitle">systemd.unit</span>(5)</span></a></p></dd><dt id="ConditionPathIsMountPoint="><span class="term"><code class="varname">ConditionPathIsMountPoint=</code></span><a class="headerlink" title="Permalink to this term" href="#ConditionPathIsMountPoint=">¶</a></dt><dd><p><a href="systemd.unit.html"><span class="citerefentry"><span class="refentrytitle">systemd.unit</span>(5)</span></a></p></dd><dt id="ConditionPathIsReadWrite="><span class="term"><code class="varname">ConditionPathIsReadWrite=</code></span><a class="headerlink" title="Permalink to this term" href="#ConditionPathIsReadWrite=">¶</a></dt><dd><p><a href="systemd.unit.html"><span class="citerefentry"><span class="refentrytitle">systemd.unit</span>(5)</span></a></p></dd><dt id="ConditionPathIsSymbolicLink="><span class="term"><code class="varname">ConditionPathIsSymbolicLink=</code></span><a class="headerlink" title="Permalink to this term" href="#ConditionPathIsSymbolicLink=">¶</a></dt><dd><p><a href="systemd.unit.html"><span class="citerefentry"><span class="refentrytitle">systemd.unit</span>(5)</span></a></p></dd><dt id="ConditionSecurity="><span class="term"><code class="varname">ConditionSecurity=</code></span><a class="headerlink" title="Permalink to this term" href="#ConditionSecurity=">¶</a></dt><dd><p><a href="systemd.unit.html"><span class="citerefentry"><span class="refentrytitle">systemd.unit</span>(5)</span></a></p></dd><dt id="ConditionVirtualization="><span class="term"><code class="varname">ConditionVirtualization=</code></span><a class="headerlink" title="Permalink to this term" href="#ConditionVirtualization=">¶</a></dt><dd><p><a href="systemd.unit.html"><span class="citerefentry"><span class="refentrytitle">systemd.unit</span>(5)</span></a></p></dd><dt id="Conflicts="><span class="term"><code class="varname">Conflicts=</code></span><a class="headerlink" title="Permalink to this term" href="#Conflicts=">¶</a></dt><dd><p><a href="systemd.unit.html"><span class="citerefentry"><span class="refentrytitle">systemd.unit</span>(5)</span></a></p></dd><dt id="DefaultDependencies="><span class="term"><code class="varname">DefaultDependencies=</code></span><a class="headerlink" title="Permalink to this term" href="#DefaultDependencies=">¶</a></dt><dd><p><a href="systemd.unit.html"><span class="citerefentry"><span class="refentrytitle">systemd.unit</span>(5)</span></a></p></dd><dt id="DefaultInstance="><span class="term"><code class="varname">DefaultInstance=</code></span><a class="headerlink" title="Permalink to this term" href="#DefaultInstance=">¶</a></dt><dd><p><a href="systemd.unit.html"><span class="citerefentry"><span class="refentrytitle">systemd.unit</span>(5)</span></a></p></dd><dt id="Description="><span class="term"><code class="varname">Description=</code></span><a class="headerlink" title="Permalink to this term" href="#Description=">¶</a></dt><dd><p><a href="systemd.unit.html"><span class="citerefentry"><span class="refentrytitle">systemd.unit</span>(5)</span></a></p></dd><dt id="DeviceAllow="><span class="term"><code class="varname">DeviceAllow=</code></span><a class="headerlink" title="Permalink to this term" href="#DeviceAllow=">¶</a></dt><dd><p><a href="systemd.resource-control.html"><span class="citerefentry"><span class="refentrytitle">systemd.resource-control</span>(5)</span></a></p></dd><dt id="DevicePolicy="><span class="term"><code class="varname">DevicePolicy=</code></span><a class="headerlink" title="Permalink to this term" href="#DevicePolicy=">¶</a></dt><dd><p><a href="systemd.resource-control.html"><span class="citerefentry"><span class="refentrytitle">systemd.resource-control</span>(5)</span></a></p></dd><dt id="DirectoryMode="><span class="term"><code class="varname">DirectoryMode=</code></span><a class="headerlink" title="Permalink to this term" href="#DirectoryMode=">¶</a></dt><dd><p><a href="systemd.automount.html"><span class="citerefentry"><span class="refentrytitle">systemd.automount</span>(5)</span></a>, <a href="systemd.mount.html"><span class="citerefentry"><span class="refentrytitle">systemd.mount</span>(5)</span></a>, <a href="systemd.path.html"><span class="citerefentry"><span class="refentrytitle">systemd.path</span>(5)</span></a>, <a href="systemd.socket.html"><span class="citerefentry"><span class="refentrytitle">systemd.socket</span>(5)</span></a></p></dd><dt id="DirectoryNotEmpty="><span class="term"><code class="varname">DirectoryNotEmpty=</code></span><a class="headerlink" title="Permalink to this term" href="#DirectoryNotEmpty=">¶</a></dt><dd><p><a href="systemd.path.html"><span class="citerefentry"><span class="refentrytitle">systemd.path</span>(5)</span></a></p></dd><dt id="Documentation="><span class="term"><code class="varname">Documentation=</code></span><a class="headerlink" title="Permalink to this term" href="#Documentation=">¶</a></dt><dd><p><a href="systemd.unit.html"><span class="citerefentry"><span class="refentrytitle">systemd.unit</span>(5)</span></a></p></dd><dt id="Environment="><span class="term"><code class="varname">Environment=</code></span><a class="headerlink" title="Permalink to this term" href="#Environment=">¶</a></dt><dd><p><a href="systemd.exec.html"><span class="citerefentry"><span class="refentrytitle">systemd.exec</span>(5)</span></a></p></dd><dt id="EnvironmentFile="><span class="term"><code class="varname">EnvironmentFile=</code></span><a class="headerlink" title="Permalink to this term" href="#EnvironmentFile=">¶</a></dt><dd><p><a href="systemd.exec.html"><span class="citerefentry"><span class="refentrytitle">systemd.exec</span>(5)</span></a></p></dd><dt id="ExecReload="><span class="term"><code class="varname">ExecReload=</code></span><a class="headerlink" title="Permalink to this term" href="#ExecReload=">¶</a></dt><dd><p><a href="systemd.service.html"><span class="citerefentry"><span class="refentrytitle">systemd.service</span>(5)</span></a></p></dd><dt id="ExecStart="><span class="term"><code class="varname">ExecStart=</code></span><a class="headerlink" title="Permalink to this term" href="#ExecStart=">¶</a></dt><dd><p><a href="systemd.service.html"><span class="citerefentry"><span class="refentrytitle">systemd.service</span>(5)</span></a></p></dd><dt id="ExecStartPost="><span class="term"><code class="varname">ExecStartPost=</code></span><a class="headerlink" title="Permalink to this term" href="#ExecStartPost=">¶</a></dt><dd><p><a href="systemd.service.html"><span class="citerefentry"><span class="refentrytitle">systemd.service</span>(5)</span></a>, <a href="systemd.socket.html"><span class="citerefentry"><span class="refentrytitle">systemd.socket</span>(5)</span></a></p></dd><dt id="ExecStartPre="><span class="term"><code class="varname">ExecStartPre=</code></span><a class="headerlink" title="Permalink to this term" href="#ExecStartPre=">¶</a></dt><dd><p><a href="systemd.service.html"><span class="citerefentry"><span class="refentrytitle">systemd.service</span>(5)</span></a>, <a href="systemd.socket.html"><span class="citerefentry"><span class="refentrytitle">systemd.socket</span>(5)</span></a></p></dd><dt id="ExecStop="><span class="term"><code class="varname">ExecStop=</code></span><a class="headerlink" title="Permalink to this term" href="#ExecStop=">¶</a></dt><dd><p><a href="systemd.service.html"><span class="citerefentry"><span class="refentrytitle">systemd.service</span>(5)</span></a></p></dd><dt id="ExecStopPost="><span class="term"><code class="varname">ExecStopPost=</code></span><a class="headerlink" title="Permalink to this term" href="#ExecStopPost=">¶</a></dt><dd><p><a href="systemd.service.html"><span class="citerefentry"><span class="refentrytitle">systemd.service</span>(5)</span></a>, <a href="systemd.socket.html"><span class="citerefentry"><span class="refentrytitle">systemd.socket</span>(5)</span></a></p></dd><dt id="ExecStopPre="><span class="term"><code class="varname">ExecStopPre=</code></span><a class="headerlink" title="Permalink to this term" href="#ExecStopPre=">¶</a></dt><dd><p><a href="systemd.socket.html"><span class="citerefentry"><span class="refentrytitle">systemd.socket</span>(5)</span></a></p></dd><dt id="FailureAction="><span class="term"><code class="varname">FailureAction=</code></span><a class="headerlink" title="Permalink to this term" href="#FailureAction=">¶</a></dt><dd><p><a href="systemd.service.html"><span class="citerefentry"><span class="refentrytitle">systemd.service</span>(5)</span></a></p></dd><dt id="FreeBind="><span class="term"><code class="varname">FreeBind=</code></span><a class="headerlink" title="Permalink to this term" href="#FreeBind=">¶</a></dt><dd><p><a href="systemd.socket.html"><span class="citerefentry"><span class="refentrytitle">systemd.socket</span>(5)</span></a></p></dd><dt id="Group="><span class="term"><code class="varname">Group=</code></span><a class="headerlink" title="Permalink to this term" href="#Group=">¶</a></dt><dd><p><a href="systemd.exec.html"><span class="citerefentry"><span class="refentrytitle">systemd.exec</span>(5)</span></a></p></dd><dt id="GuessMainPID="><span class="term"><code class="varname">GuessMainPID=</code></span><a class="headerlink" title="Permalink to this term" href="#GuessMainPID=">¶</a></dt><dd><p><a href="systemd.service.html"><span class="citerefentry"><span class="refentrytitle">systemd.service</span>(5)</span></a></p></dd><dt id="IOSchedulingClass="><span class="term"><code class="varname">IOSchedulingClass=</code></span><a class="headerlink" title="Permalink to this term" href="#IOSchedulingClass=">¶</a></dt><dd><p><a href="systemd.exec.html"><span class="citerefentry"><span class="refentrytitle">systemd.exec</span>(5)</span></a></p></dd><dt id="IOSchedulingPriority="><span class="term"><code class="varname">IOSchedulingPriority=</code></span><a class="headerlink" title="Permalink to this term" href="#IOSchedulingPriority=">¶</a></dt><dd><p><a href="systemd.exec.html"><span class="citerefentry"><span class="refentrytitle">systemd.exec</span>(5)</span></a></p></dd><dt id="IPTOS="><span class="term"><code class="varname">IPTOS=</code></span><a class="headerlink" title="Permalink to this term" href="#IPTOS=">¶</a></dt><dd><p><a href="systemd.socket.html"><span class="citerefentry"><span class="refentrytitle">systemd.socket</span>(5)</span></a></p></dd><dt id="IPTTL="><span class="term"><code class="varname">IPTTL=</code></span><a class="headerlink" title="Permalink to this term" href="#IPTTL=">¶</a></dt><dd><p><a href="systemd.socket.html"><span class="citerefentry"><span class="refentrytitle">systemd.socket</span>(5)</span></a></p></dd><dt id="IgnoreOnIsolate="><span class="term"><code class="varname">IgnoreOnIsolate=</code></span><a class="headerlink" title="Permalink to this term" href="#IgnoreOnIsolate=">¶</a></dt><dd><p><a href="systemd.unit.html"><span class="citerefentry"><span class="refentrytitle">systemd.unit</span>(5)</span></a></p></dd><dt id="IgnoreOnSnapshot="><span class="term"><code class="varname">IgnoreOnSnapshot=</code></span><a class="headerlink" title="Permalink to this term" href="#IgnoreOnSnapshot=">¶</a></dt><dd><p><a href="systemd.unit.html"><span class="citerefentry"><span class="refentrytitle">systemd.unit</span>(5)</span></a></p></dd><dt id="IgnoreSIGPIPE="><span class="term"><code class="varname">IgnoreSIGPIPE=</code></span><a class="headerlink" title="Permalink to this term" href="#IgnoreSIGPIPE=">¶</a></dt><dd><p><a href="systemd.exec.html"><span class="citerefentry"><span class="refentrytitle">systemd.exec</span>(5)</span></a></p></dd><dt id="InaccessibleDirectories="><span class="term"><code class="varname">InaccessibleDirectories=</code></span><a class="headerlink" title="Permalink to this term" href="#InaccessibleDirectories=">¶</a></dt><dd><p><a href="systemd.exec.html"><span class="citerefentry"><span class="refentrytitle">systemd.exec</span>(5)</span></a></p></dd><dt id="JobTimeoutSec="><span class="term"><code class="varname">JobTimeoutSec=</code></span><a class="headerlink" title="Permalink to this term" href="#JobTimeoutSec=">¶</a></dt><dd><p><a href="systemd.unit.html"><span class="citerefentry"><span class="refentrytitle">systemd.unit</span>(5)</span></a></p></dd><dt id="JoinsNamespaceOf="><span class="term"><code class="varname">JoinsNamespaceOf=</code></span><a class="headerlink" title="Permalink to this term" href="#JoinsNamespaceOf=">¶</a></dt><dd><p><a href="systemd.unit.html"><span class="citerefentry"><span class="refentrytitle">systemd.unit</span>(5)</span></a></p></dd><dt id="KeepAlive="><span class="term"><code class="varname">KeepAlive=</code></span><a class="headerlink" title="Permalink to this term" href="#KeepAlive=">¶</a></dt><dd><p><a href="systemd.socket.html"><span class="citerefentry"><span class="refentrytitle">systemd.socket</span>(5)</span></a></p></dd><dt id="KillMode="><span class="term"><code class="varname">KillMode=</code></span><a class="headerlink" title="Permalink to this term" href="#KillMode=">¶</a></dt><dd><p><a href="systemd.kill.html"><span class="citerefentry"><span class="refentrytitle">systemd.kill</span>(5)</span></a></p></dd><dt id="KillSignal="><span class="term"><code class="varname">KillSignal=</code></span><a class="headerlink" title="Permalink to this term" href="#KillSignal=">¶</a></dt><dd><p><a href="systemd.kill.html"><span class="citerefentry"><span class="refentrytitle">systemd.kill</span>(5)</span></a></p></dd><dt id="LimitAS="><span class="term"><code class="varname">LimitAS=</code></span><a class="headerlink" title="Permalink to this term" href="#LimitAS=">¶</a></dt><dd><p><a href="systemd.exec.html"><span class="citerefentry"><span class="refentrytitle">systemd.exec</span>(5)</span></a></p></dd><dt id="LimitCORE="><span class="term"><code class="varname">LimitCORE=</code></span><a class="headerlink" title="Permalink to this term" href="#LimitCORE=">¶</a></dt><dd><p><a href="systemd.exec.html"><span class="citerefentry"><span class="refentrytitle">systemd.exec</span>(5)</span></a></p></dd><dt id="LimitCPU="><span class="term"><code class="varname">LimitCPU=</code></span><a class="headerlink" title="Permalink to this term" href="#LimitCPU=">¶</a></dt><dd><p><a href="systemd.exec.html"><span class="citerefentry"><span class="refentrytitle">systemd.exec</span>(5)</span></a></p></dd><dt id="LimitDATA="><span class="term"><code class="varname">LimitDATA=</code></span><a class="headerlink" title="Permalink to this term" href="#LimitDATA=">¶</a></dt><dd><p><a href="systemd.exec.html"><span class="citerefentry"><span class="refentrytitle">systemd.exec</span>(5)</span></a></p></dd><dt id="LimitFSIZE="><span class="term"><code class="varname">LimitFSIZE=</code></span><a class="headerlink" title="Permalink to this term" href="#LimitFSIZE=">¶</a></dt><dd><p><a href="systemd.exec.html"><span class="citerefentry"><span class="refentrytitle">systemd.exec</span>(5)</span></a></p></dd><dt id="LimitLOCKS="><span class="term"><code class="varname">LimitLOCKS=</code></span><a class="headerlink" title="Permalink to this term" href="#LimitLOCKS=">¶</a></dt><dd><p><a href="systemd.exec.html"><span class="citerefentry"><span class="refentrytitle">systemd.exec</span>(5)</span></a></p></dd><dt id="LimitMEMLOCK="><span class="term"><code class="varname">LimitMEMLOCK=</code></span><a class="headerlink" title="Permalink to this term" href="#LimitMEMLOCK=">¶</a></dt><dd><p><a href="systemd.exec.html"><span class="citerefentry"><span class="refentrytitle">systemd.exec</span>(5)</span></a></p></dd><dt id="LimitMSGQUEUE="><span class="term"><code class="varname">LimitMSGQUEUE=</code></span><a class="headerlink" title="Permalink to this term" href="#LimitMSGQUEUE=">¶</a></dt><dd><p><a href="systemd.exec.html"><span class="citerefentry"><span class="refentrytitle">systemd.exec</span>(5)</span></a></p></dd><dt id="LimitNICE="><span class="term"><code class="varname">LimitNICE=</code></span><a class="headerlink" title="Permalink to this term" href="#LimitNICE=">¶</a></dt><dd><p><a href="systemd.exec.html"><span class="citerefentry"><span class="refentrytitle">systemd.exec</span>(5)</span></a></p></dd><dt id="LimitNOFILE="><span class="term"><code class="varname">LimitNOFILE=</code></span><a class="headerlink" title="Permalink to this term" href="#LimitNOFILE=">¶</a></dt><dd><p><a href="systemd.exec.html"><span class="citerefentry"><span class="refentrytitle">systemd.exec</span>(5)</span></a></p></dd><dt id="LimitNPROC="><span class="term"><code class="varname">LimitNPROC=</code></span><a class="headerlink" title="Permalink to this term" href="#LimitNPROC=">¶</a></dt><dd><p><a href="systemd.exec.html"><span class="citerefentry"><span class="refentrytitle">systemd.exec</span>(5)</span></a></p></dd><dt id="LimitRSS="><span class="term"><code class="varname">LimitRSS=</code></span><a class="headerlink" title="Permalink to this term" href="#LimitRSS=">¶</a></dt><dd><p><a href="systemd.exec.html"><span class="citerefentry"><span class="refentrytitle">systemd.exec</span>(5)</span></a></p></dd><dt id="LimitRTPRIO="><span class="term"><code class="varname">LimitRTPRIO=</code></span><a class="headerlink" title="Permalink to this term" href="#LimitRTPRIO=">¶</a></dt><dd><p><a href="systemd.exec.html"><span class="citerefentry"><span class="refentrytitle">systemd.exec</span>(5)</span></a></p></dd><dt id="LimitRTTIME="><span class="term"><code class="varname">LimitRTTIME=</code></span><a class="headerlink" title="Permalink to this term" href="#LimitRTTIME=">¶</a></dt><dd><p><a href="systemd.exec.html"><span class="citerefentry"><span class="refentrytitle">systemd.exec</span>(5)</span></a></p></dd><dt id="LimitSIGPENDING="><span class="term"><code class="varname">LimitSIGPENDING=</code></span><a class="headerlink" title="Permalink to this term" href="#LimitSIGPENDING=">¶</a></dt><dd><p><a href="systemd.exec.html"><span class="citerefentry"><span class="refentrytitle">systemd.exec</span>(5)</span></a></p></dd><dt id="LimitSTACK="><span class="term"><code class="varname">LimitSTACK=</code></span><a class="headerlink" title="Permalink to this term" href="#LimitSTACK=">¶</a></dt><dd><p><a href="systemd.exec.html"><span class="citerefentry"><span class="refentrytitle">systemd.exec</span>(5)</span></a></p></dd><dt id="ListenDatagram="><span class="term"><code class="varname">ListenDatagram=</code></span><a class="headerlink" title="Permalink to this term" href="#ListenDatagram=">¶</a></dt><dd><p><a href="systemd.socket.html"><span class="citerefentry"><span class="refentrytitle">systemd.socket</span>(5)</span></a></p></dd><dt id="ListenFIFO="><span class="term"><code class="varname">ListenFIFO=</code></span><a class="headerlink" title="Permalink to this term" href="#ListenFIFO=">¶</a></dt><dd><p><a href="systemd.socket.html"><span class="citerefentry"><span class="refentrytitle">systemd.socket</span>(5)</span></a></p></dd><dt id="ListenMessageQueue="><span class="term"><code class="varname">ListenMessageQueue=</code></span><a class="headerlink" title="Permalink to this term" href="#ListenMessageQueue=">¶</a></dt><dd><p><a href="systemd.socket.html"><span class="citerefentry"><span class="refentrytitle">systemd.socket</span>(5)</span></a></p></dd><dt id="ListenNetlink="><span class="term"><code class="varname">ListenNetlink=</code></span><a class="headerlink" title="Permalink to this term" href="#ListenNetlink=">¶</a></dt><dd><p><a href="systemd.socket.html"><span class="citerefentry"><span class="refentrytitle">systemd.socket</span>(5)</span></a></p></dd><dt id="ListenSequentialPacket="><span class="term"><code class="varname">ListenSequentialPacket=</code></span><a class="headerlink" title="Permalink to this term" href="#ListenSequentialPacket=">¶</a></dt><dd><p><a href="systemd.socket.html"><span class="citerefentry"><span class="refentrytitle">systemd.socket</span>(5)</span></a></p></dd><dt id="ListenSpecial="><span class="term"><code class="varname">ListenSpecial=</code></span><a class="headerlink" title="Permalink to this term" href="#ListenSpecial=">¶</a></dt><dd><p><a href="systemd.socket.html"><span class="citerefentry"><span class="refentrytitle">systemd.socket</span>(5)</span></a></p></dd><dt id="ListenStream="><span class="term"><code class="varname">ListenStream=</code></span><a class="headerlink" title="Permalink to this term" href="#ListenStream=">¶</a></dt><dd><p><a href="systemd.socket.html"><span class="citerefentry"><span class="refentrytitle">systemd.socket</span>(5)</span></a></p></dd><dt id="MakeDirectory="><span class="term"><code class="varname">MakeDirectory=</code></span><a class="headerlink" title="Permalink to this term" href="#MakeDirectory=">¶</a></dt><dd><p><a href="systemd.path.html"><span class="citerefentry"><span class="refentrytitle">systemd.path</span>(5)</span></a></p></dd><dt id="Mark="><span class="term"><code class="varname">Mark=</code></span><a class="headerlink" title="Permalink to this term" href="#Mark=">¶</a></dt><dd><p><a href="systemd.socket.html"><span class="citerefentry"><span class="refentrytitle">systemd.socket</span>(5)</span></a></p></dd><dt id="MaxConnections="><span class="term"><code class="varname">MaxConnections=</code></span><a class="headerlink" title="Permalink to this term" href="#MaxConnections=">¶</a></dt><dd><p><a href="systemd.socket.html"><span class="citerefentry"><span class="refentrytitle">systemd.socket</span>(5)</span></a></p></dd><dt id="MemoryAccounting="><span class="term"><code class="varname">MemoryAccounting=</code></span><a class="headerlink" title="Permalink to this term" href="#MemoryAccounting=">¶</a></dt><dd><p><a href="systemd.resource-control.html"><span class="citerefentry"><span class="refentrytitle">systemd.resource-control</span>(5)</span></a></p></dd><dt id="MemoryLimit="><span class="term"><code class="varname">MemoryLimit=</code></span><a class="headerlink" title="Permalink to this term" href="#MemoryLimit=">¶</a></dt><dd><p><a href="systemd.resource-control.html"><span class="citerefentry"><span class="refentrytitle">systemd.resource-control</span>(5)</span></a></p></dd><dt id="MessageQueueMaxMessages="><span class="term"><code class="varname">MessageQueueMaxMessages=</code></span><a class="headerlink" title="Permalink to this term" href="#MessageQueueMaxMessages=">¶</a></dt><dd><p><a href="systemd.socket.html"><span class="citerefentry"><span class="refentrytitle">systemd.socket</span>(5)</span></a></p></dd><dt id="MessageQueueMessageSize="><span class="term"><code class="varname">MessageQueueMessageSize=</code></span><a class="headerlink" title="Permalink to this term" href="#MessageQueueMessageSize=">¶</a></dt><dd><p><a href="systemd.socket.html"><span class="citerefentry"><span class="refentrytitle">systemd.socket</span>(5)</span></a></p></dd><dt id="MountFlags="><span class="term"><code class="varname">MountFlags=</code></span><a class="headerlink" title="Permalink to this term" href="#MountFlags=">¶</a></dt><dd><p><a href="systemd.exec.html"><span class="citerefentry"><span class="refentrytitle">systemd.exec</span>(5)</span></a></p></dd><dt id="Nice="><span class="term"><code class="varname">Nice=</code></span><a class="headerlink" title="Permalink to this term" href="#Nice=">¶</a></dt><dd><p><a href="systemd.exec.html"><span class="citerefentry"><span class="refentrytitle">systemd.exec</span>(5)</span></a></p></dd><dt id="NoNewPrivileges="><span class="term"><code class="varname">NoNewPrivileges=</code></span><a class="headerlink" title="Permalink to this term" href="#NoNewPrivileges=">¶</a></dt><dd><p><a href="systemd.exec.html"><span class="citerefentry"><span class="refentrytitle">systemd.exec</span>(5)</span></a></p></dd><dt id="NonBlocking="><span class="term"><code class="varname">NonBlocking=</code></span><a class="headerlink" title="Permalink to this term" href="#NonBlocking=">¶</a></dt><dd><p><a href="systemd.service.html"><span class="citerefentry"><span class="refentrytitle">systemd.service</span>(5)</span></a></p></dd><dt id="NotifyAccess="><span class="term"><code class="varname">NotifyAccess=</code></span><a class="headerlink" title="Permalink to this term" href="#NotifyAccess=">¶</a></dt><dd><p><a href="systemd.service.html"><span class="citerefentry"><span class="refentrytitle">systemd.service</span>(5)</span></a></p></dd><dt id="OOMScoreAdjust="><span class="term"><code class="varname">OOMScoreAdjust=</code></span><a class="headerlink" title="Permalink to this term" href="#OOMScoreAdjust=">¶</a></dt><dd><p><a href="systemd.exec.html"><span class="citerefentry"><span class="refentrytitle">systemd.exec</span>(5)</span></a></p></dd><dt id="OnActiveSec="><span class="term"><code class="varname">OnActiveSec=</code></span><a class="headerlink" title="Permalink to this term" href="#OnActiveSec=">¶</a></dt><dd><p><a href="systemd.timer.html"><span class="citerefentry"><span class="refentrytitle">systemd.timer</span>(5)</span></a></p></dd><dt id="OnBootSec="><span class="term"><code class="varname">OnBootSec=</code></span><a class="headerlink" title="Permalink to this term" href="#OnBootSec=">¶</a></dt><dd><p><a href="systemd.timer.html"><span class="citerefentry"><span class="refentrytitle">systemd.timer</span>(5)</span></a></p></dd><dt id="OnCalendar="><span class="term"><code class="varname">OnCalendar=</code></span><a class="headerlink" title="Permalink to this term" href="#OnCalendar=">¶</a></dt><dd><p><a href="systemd.timer.html"><span class="citerefentry"><span class="refentrytitle">systemd.timer</span>(5)</span></a></p></dd><dt id="OnFailure="><span class="term"><code class="varname">OnFailure=</code></span><a class="headerlink" title="Permalink to this term" href="#OnFailure=">¶</a></dt><dd><p><a href="systemd.unit.html"><span class="citerefentry"><span class="refentrytitle">systemd.unit</span>(5)</span></a></p></dd><dt id="OnFailureJobMode="><span class="term"><code class="varname">OnFailureJobMode=</code></span><a class="headerlink" title="Permalink to this term" href="#OnFailureJobMode=">¶</a></dt><dd><p><a href="systemd.unit.html"><span class="citerefentry"><span class="refentrytitle">systemd.unit</span>(5)</span></a></p></dd><dt id="OnStartupSec="><span class="term"><code class="varname">OnStartupSec=</code></span><a class="headerlink" title="Permalink to this term" href="#OnStartupSec=">¶</a></dt><dd><p><a href="systemd.timer.html"><span class="citerefentry"><span class="refentrytitle">systemd.timer</span>(5)</span></a></p></dd><dt id="OnUnitActiveSec="><span class="term"><code class="varname">OnUnitActiveSec=</code></span><a class="headerlink" title="Permalink to this term" href="#OnUnitActiveSec=">¶</a></dt><dd><p><a href="systemd.timer.html"><span class="citerefentry"><span class="refentrytitle">systemd.timer</span>(5)</span></a></p></dd><dt id="OnUnitInactiveSec="><span class="term"><code class="varname">OnUnitInactiveSec=</code></span><a class="headerlink" title="Permalink to this term" href="#OnUnitInactiveSec=">¶</a></dt><dd><p><a href="systemd.timer.html"><span class="citerefentry"><span class="refentrytitle">systemd.timer</span>(5)</span></a></p></dd><dt id="Options="><span class="term"><code class="varname">Options=</code></span><a class="headerlink" title="Permalink to this term" href="#Options=">¶</a></dt><dd><p><a href="systemd.mount.html"><span class="citerefentry"><span class="refentrytitle">systemd.mount</span>(5)</span></a></p></dd><dt id="PAMName="><span class="term"><code class="varname">PAMName=</code></span><a class="headerlink" title="Permalink to this term" href="#PAMName=">¶</a></dt><dd><p><a href="systemd.exec.html"><span class="citerefentry"><span class="refentrytitle">systemd.exec</span>(5)</span></a></p></dd><dt id="PIDFile="><span class="term"><code class="varname">PIDFile=</code></span><a class="headerlink" title="Permalink to this term" href="#PIDFile=">¶</a></dt><dd><p><a href="systemd.service.html"><span class="citerefentry"><span class="refentrytitle">systemd.service</span>(5)</span></a></p></dd><dt id="PartOf="><span class="term"><code class="varname">PartOf=</code></span><a class="headerlink" title="Permalink to this term" href="#PartOf=">¶</a></dt><dd><p><a href="systemd.unit.html"><span class="citerefentry"><span class="refentrytitle">systemd.unit</span>(5)</span></a></p></dd><dt id="PassCredentials="><span class="term"><code class="varname">PassCredentials=</code></span><a class="headerlink" title="Permalink to this term" href="#PassCredentials=">¶</a></dt><dd><p><a href="systemd.socket.html"><span class="citerefentry"><span class="refentrytitle">systemd.socket</span>(5)</span></a></p></dd><dt id="PassSecurity="><span class="term"><code class="varname">PassSecurity=</code></span><a class="headerlink" title="Permalink to this term" href="#PassSecurity=">¶</a></dt><dd><p><a href="systemd.socket.html"><span class="citerefentry"><span class="refentrytitle">systemd.socket</span>(5)</span></a></p></dd><dt id="PathChanged="><span class="term"><code class="varname">PathChanged=</code></span><a class="headerlink" title="Permalink to this term" href="#PathChanged=">¶</a></dt><dd><p><a href="systemd.path.html"><span class="citerefentry"><span class="refentrytitle">systemd.path</span>(5)</span></a></p></dd><dt id="PathExists="><span class="term"><code class="varname">PathExists=</code></span><a class="headerlink" title="Permalink to this term" href="#PathExists=">¶</a></dt><dd><p><a href="systemd.path.html"><span class="citerefentry"><span class="refentrytitle">systemd.path</span>(5)</span></a></p></dd><dt id="PathExistsGlob="><span class="term"><code class="varname">PathExistsGlob=</code></span><a class="headerlink" title="Permalink to this term" href="#PathExistsGlob=">¶</a></dt><dd><p><a href="systemd.path.html"><span class="citerefentry"><span class="refentrytitle">systemd.path</span>(5)</span></a></p></dd><dt id="PathModified="><span class="term"><code class="varname">PathModified=</code></span><a class="headerlink" title="Permalink to this term" href="#PathModified=">¶</a></dt><dd><p><a href="systemd.path.html"><span class="citerefentry"><span class="refentrytitle">systemd.path</span>(5)</span></a></p></dd><dt id="PermissionsStartOnly="><span class="term"><code class="varname">PermissionsStartOnly=</code></span><a class="headerlink" title="Permalink to this term" href="#PermissionsStartOnly=">¶</a></dt><dd><p><a href="systemd.service.html"><span class="citerefentry"><span class="refentrytitle">systemd.service</span>(5)</span></a></p></dd><dt id="Persistent="><span class="term"><code class="varname">Persistent=</code></span><a class="headerlink" title="Permalink to this term" href="#Persistent=">¶</a></dt><dd><p><a href="systemd.timer.html"><span class="citerefentry"><span class="refentrytitle">systemd.timer</span>(5)</span></a></p></dd><dt id="Personality="><span class="term"><code class="varname">Personality=</code></span><a class="headerlink" title="Permalink to this term" href="#Personality=">¶</a></dt><dd><p><a href="systemd.exec.html"><span class="citerefentry"><span class="refentrytitle">systemd.exec</span>(5)</span></a></p></dd><dt id="PipeSize="><span class="term"><code class="varname">PipeSize=</code></span><a class="headerlink" title="Permalink to this term" href="#PipeSize=">¶</a></dt><dd><p><a href="systemd.socket.html"><span class="citerefentry"><span class="refentrytitle">systemd.socket</span>(5)</span></a></p></dd><dt id="Priority="><span class="term"><code class="varname">Priority=</code></span><a class="headerlink" title="Permalink to this term" href="#Priority=">¶</a></dt><dd><p><a href="systemd.socket.html"><span class="citerefentry"><span class="refentrytitle">systemd.socket</span>(5)</span></a>, <a href="systemd.swap.html"><span class="citerefentry"><span class="refentrytitle">systemd.swap</span>(5)</span></a></p></dd><dt id="PrivateDevices="><span class="term"><code class="varname">PrivateDevices=</code></span><a class="headerlink" title="Permalink to this term" href="#PrivateDevices=">¶</a></dt><dd><p><a href="systemd.exec.html"><span class="citerefentry"><span class="refentrytitle">systemd.exec</span>(5)</span></a></p></dd><dt id="PrivateNetwork="><span class="term"><code class="varname">PrivateNetwork=</code></span><a class="headerlink" title="Permalink to this term" href="#PrivateNetwork=">¶</a></dt><dd><p><a href="systemd.exec.html"><span class="citerefentry"><span class="refentrytitle">systemd.exec</span>(5)</span></a></p></dd><dt id="PrivateTmp="><span class="term"><code class="varname">PrivateTmp=</code></span><a class="headerlink" title="Permalink to this term" href="#PrivateTmp=">¶</a></dt><dd><p><a href="systemd.exec.html"><span class="citerefentry"><span class="refentrytitle">systemd.exec</span>(5)</span></a></p></dd><dt id="PropagatesReloadTo="><span class="term"><code class="varname">PropagatesReloadTo=</code></span><a class="headerlink" title="Permalink to this term" href="#PropagatesReloadTo=">¶</a></dt><dd><p><a href="systemd.unit.html"><span class="citerefentry"><span class="refentrytitle">systemd.unit</span>(5)</span></a></p></dd><dt id="ProtectHome="><span class="term"><code class="varname">ProtectHome=</code></span><a class="headerlink" title="Permalink to this term" href="#ProtectHome=">¶</a></dt><dd><p><a href="systemd.exec.html"><span class="citerefentry"><span class="refentrytitle">systemd.exec</span>(5)</span></a></p></dd><dt id="ProtectSystem="><span class="term"><code class="varname">ProtectSystem=</code></span><a class="headerlink" title="Permalink to this term" href="#ProtectSystem=">¶</a></dt><dd><p><a href="systemd.exec.html"><span class="citerefentry"><span class="refentrytitle">systemd.exec</span>(5)</span></a></p></dd><dt id="ReadOnlyDirectories="><span class="term"><code class="varname">ReadOnlyDirectories=</code></span><a class="headerlink" title="Permalink to this term" href="#ReadOnlyDirectories=">¶</a></dt><dd><p><a href="systemd.exec.html"><span class="citerefentry"><span class="refentrytitle">systemd.exec</span>(5)</span></a></p></dd><dt id="ReadWriteDirectories="><span class="term"><code class="varname">ReadWriteDirectories=</code></span><a class="headerlink" title="Permalink to this term" href="#ReadWriteDirectories=">¶</a></dt><dd><p><a href="systemd.exec.html"><span class="citerefentry"><span class="refentrytitle">systemd.exec</span>(5)</span></a></p></dd><dt id="RebootArgument="><span class="term"><code class="varname">RebootArgument=</code></span><a class="headerlink" title="Permalink to this term" href="#RebootArgument=">¶</a></dt><dd><p><a href="systemd.service.html"><span class="citerefentry"><span class="refentrytitle">systemd.service</span>(5)</span></a></p></dd><dt id="ReceiveBuffer="><span class="term"><code class="varname">ReceiveBuffer=</code></span><a class="headerlink" title="Permalink to this term" href="#ReceiveBuffer=">¶</a></dt><dd><p><a href="systemd.socket.html"><span class="citerefentry"><span class="refentrytitle">systemd.socket</span>(5)</span></a></p></dd><dt id="RefuseManualStart="><span class="term"><code class="varname">RefuseManualStart=</code></span><a class="headerlink" title="Permalink to this term" href="#RefuseManualStart=">¶</a></dt><dd><p><a href="systemd.unit.html"><span class="citerefentry"><span class="refentrytitle">systemd.unit</span>(5)</span></a></p></dd><dt id="RefuseManualStop="><span class="term"><code class="varname">RefuseManualStop=</code></span><a class="headerlink" title="Permalink to this term" href="#RefuseManualStop=">¶</a></dt><dd><p><a href="systemd.unit.html"><span class="citerefentry"><span class="refentrytitle">systemd.unit</span>(5)</span></a></p></dd><dt id="ReloadPropagatedFrom="><span class="term"><code class="varname">ReloadPropagatedFrom=</code></span><a class="headerlink" title="Permalink to this term" href="#ReloadPropagatedFrom=">¶</a></dt><dd><p><a href="systemd.unit.html"><span class="citerefentry"><span class="refentrytitle">systemd.unit</span>(5)</span></a></p></dd><dt id="RemainAfterExit="><span class="term"><code class="varname">RemainAfterExit=</code></span><a class="headerlink" title="Permalink to this term" href="#RemainAfterExit=">¶</a></dt><dd><p><a href="systemd.service.html"><span class="citerefentry"><span class="refentrytitle">systemd.service</span>(5)</span></a></p></dd><dt id="RemoveOnStop="><span class="term"><code class="varname">RemoveOnStop=</code></span><a class="headerlink" title="Permalink to this term" href="#RemoveOnStop=">¶</a></dt><dd><p><a href="systemd.socket.html"><span class="citerefentry"><span class="refentrytitle">systemd.socket</span>(5)</span></a></p></dd><dt id="RequiredBy="><span class="term"><code class="varname">RequiredBy=</code></span><a class="headerlink" title="Permalink to this term" href="#RequiredBy=">¶</a></dt><dd><p><a href="systemd.unit.html"><span class="citerefentry"><span class="refentrytitle">systemd.unit</span>(5)</span></a></p></dd><dt id="Requires="><span class="term"><code class="varname">Requires=</code></span><a class="headerlink" title="Permalink to this term" href="#Requires=">¶</a></dt><dd><p><a href="systemd.unit.html"><span class="citerefentry"><span class="refentrytitle">systemd.unit</span>(5)</span></a></p></dd><dt id="RequiresMountsFor="><span class="term"><code class="varname">RequiresMountsFor=</code></span><a class="headerlink" title="Permalink to this term" href="#RequiresMountsFor=">¶</a></dt><dd><p><a href="systemd.unit.html"><span class="citerefentry"><span class="refentrytitle">systemd.unit</span>(5)</span></a></p></dd><dt id="RequiresOverridable="><span class="term"><code class="varname">RequiresOverridable=</code></span><a class="headerlink" title="Permalink to this term" href="#RequiresOverridable=">¶</a></dt><dd><p><a href="systemd.unit.html"><span class="citerefentry"><span class="refentrytitle">systemd.unit</span>(5)</span></a></p></dd><dt id="Requisite="><span class="term"><code class="varname">Requisite=</code></span><a class="headerlink" title="Permalink to this term" href="#Requisite=">¶</a></dt><dd><p><a href="systemd.unit.html"><span class="citerefentry"><span class="refentrytitle">systemd.unit</span>(5)</span></a></p></dd><dt id="RequisiteOverridable="><span class="term"><code class="varname">RequisiteOverridable=</code></span><a class="headerlink" title="Permalink to this term" href="#RequisiteOverridable=">¶</a></dt><dd><p><a href="systemd.unit.html"><span class="citerefentry"><span class="refentrytitle">systemd.unit</span>(5)</span></a></p></dd><dt id="Restart="><span class="term"><code class="varname">Restart=</code></span><a class="headerlink" title="Permalink to this term" href="#Restart=">¶</a></dt><dd><p><a href="systemd.service.html"><span class="citerefentry"><span class="refentrytitle">systemd.service</span>(5)</span></a></p></dd><dt id="RestartForceExitStatus="><span class="term"><code class="varname">RestartForceExitStatus=</code></span><a class="headerlink" title="Permalink to this term" href="#RestartForceExitStatus=">¶</a></dt><dd><p><a href="systemd.service.html"><span class="citerefentry"><span class="refentrytitle">systemd.service</span>(5)</span></a></p></dd><dt id="RestartPreventExitStatus="><span class="term"><code class="varname">RestartPreventExitStatus=</code></span><a class="headerlink" title="Permalink to this term" href="#RestartPreventExitStatus=">¶</a></dt><dd><p><a href="systemd.service.html"><span class="citerefentry"><span class="refentrytitle">systemd.service</span>(5)</span></a></p></dd><dt id="RestartSec="><span class="term"><code class="varname">RestartSec=</code></span><a class="headerlink" title="Permalink to this term" href="#RestartSec=">¶</a></dt><dd><p><a href="systemd.service.html"><span class="citerefentry"><span class="refentrytitle">systemd.service</span>(5)</span></a></p></dd><dt id="RestrictAddressFamilies="><span class="term"><code class="varname">RestrictAddressFamilies=</code></span><a class="headerlink" title="Permalink to this term" href="#RestrictAddressFamilies=">¶</a></dt><dd><p><a href="systemd.exec.html"><span class="citerefentry"><span class="refentrytitle">systemd.exec</span>(5)</span></a></p></dd><dt id="ReusePort="><span class="term"><code class="varname">ReusePort=</code></span><a class="headerlink" title="Permalink to this term" href="#ReusePort=">¶</a></dt><dd><p><a href="systemd.socket.html"><span class="citerefentry"><span class="refentrytitle">systemd.socket</span>(5)</span></a></p></dd><dt id="RootDirectory="><span class="term"><code class="varname">RootDirectory=</code></span><a class="headerlink" title="Permalink to this term" href="#RootDirectory=">¶</a></dt><dd><p><a href="systemd.exec.html"><span class="citerefentry"><span class="refentrytitle">systemd.exec</span>(5)</span></a></p></dd><dt id="RootDirectoryStartOnly="><span class="term"><code class="varname">RootDirectoryStartOnly=</code></span><a class="headerlink" title="Permalink to this term" href="#RootDirectoryStartOnly=">¶</a></dt><dd><p><a href="systemd.service.html"><span class="citerefentry"><span class="refentrytitle">systemd.service</span>(5)</span></a></p></dd><dt id="RuntimeDirectory="><span class="term"><code class="varname">RuntimeDirectory=</code></span><a class="headerlink" title="Permalink to this term" href="#RuntimeDirectory=">¶</a></dt><dd><p><a href="systemd.exec.html"><span class="citerefentry"><span class="refentrytitle">systemd.exec</span>(5)</span></a></p></dd><dt id="RuntimeDirectoryMode="><span class="term"><code class="varname">RuntimeDirectoryMode=</code></span><a class="headerlink" title="Permalink to this term" href="#RuntimeDirectoryMode=">¶</a></dt><dd><p><a href="systemd.exec.html"><span class="citerefentry"><span class="refentrytitle">systemd.exec</span>(5)</span></a></p></dd><dt id="SELinuxContext="><span class="term"><code class="varname">SELinuxContext=</code></span><a class="headerlink" title="Permalink to this term" href="#SELinuxContext=">¶</a></dt><dd><p><a href="systemd.exec.html"><span class="citerefentry"><span class="refentrytitle">systemd.exec</span>(5)</span></a></p></dd><dt id="SecureBits="><span class="term"><code class="varname">SecureBits=</code></span><a class="headerlink" title="Permalink to this term" href="#SecureBits=">¶</a></dt><dd><p><a href="systemd.exec.html"><span class="citerefentry"><span class="refentrytitle">systemd.exec</span>(5)</span></a></p></dd><dt id="SendBuffer="><span class="term"><code class="varname">SendBuffer=</code></span><a class="headerlink" title="Permalink to this term" href="#SendBuffer=">¶</a></dt><dd><p><a href="systemd.socket.html"><span class="citerefentry"><span class="refentrytitle">systemd.socket</span>(5)</span></a></p></dd><dt id="SendSIGHUP="><span class="term"><code class="varname">SendSIGHUP=</code></span><a class="headerlink" title="Permalink to this term" href="#SendSIGHUP=">¶</a></dt><dd><p><a href="systemd.kill.html"><span class="citerefentry"><span class="refentrytitle">systemd.kill</span>(5)</span></a></p></dd><dt id="SendSIGKILL="><span class="term"><code class="varname">SendSIGKILL=</code></span><a class="headerlink" title="Permalink to this term" href="#SendSIGKILL=">¶</a></dt><dd><p><a href="systemd.kill.html"><span class="citerefentry"><span class="refentrytitle">systemd.kill</span>(5)</span></a></p></dd><dt id="Service="><span class="term"><code class="varname">Service=</code></span><a class="headerlink" title="Permalink to this term" href="#Service=">¶</a></dt><dd><p><a href="systemd.socket.html"><span class="citerefentry"><span class="refentrytitle">systemd.socket</span>(5)</span></a></p></dd><dt id="Slice="><span class="term"><code class="varname">Slice=</code></span><a class="headerlink" title="Permalink to this term" href="#Slice=">¶</a></dt><dd><p><a href="systemd.resource-control.html"><span class="citerefentry"><span class="refentrytitle">systemd.resource-control</span>(5)</span></a></p></dd><dt id="SloppyOptions="><span class="term"><code class="varname">SloppyOptions=</code></span><a class="headerlink" title="Permalink to this term" href="#SloppyOptions=">¶</a></dt><dd><p><a href="systemd.mount.html"><span class="citerefentry"><span class="refentrytitle">systemd.mount</span>(5)</span></a></p></dd><dt id="SmackLabel="><span class="term"><code class="varname">SmackLabel=</code></span><a class="headerlink" title="Permalink to this term" href="#SmackLabel=">¶</a></dt><dd><p><a href="systemd.socket.html"><span class="citerefentry"><span class="refentrytitle">systemd.socket</span>(5)</span></a></p></dd><dt id="SmackLabelIPIn="><span class="term"><code class="varname">SmackLabelIPIn=</code></span><a class="headerlink" title="Permalink to this term" href="#SmackLabelIPIn=">¶</a></dt><dd><p><a href="systemd.socket.html"><span class="citerefentry"><span class="refentrytitle">systemd.socket</span>(5)</span></a></p></dd><dt id="SmackLabelIPOut="><span class="term"><code class="varname">SmackLabelIPOut=</code></span><a class="headerlink" title="Permalink to this term" href="#SmackLabelIPOut=">¶</a></dt><dd><p><a href="systemd.socket.html"><span class="citerefentry"><span class="refentrytitle">systemd.socket</span>(5)</span></a></p></dd><dt id="SocketGroup="><span class="term"><code class="varname">SocketGroup=</code></span><a class="headerlink" title="Permalink to this term" href="#SocketGroup=">¶</a></dt><dd><p><a href="systemd.socket.html"><span class="citerefentry"><span class="refentrytitle">systemd.socket</span>(5)</span></a></p></dd><dt id="SocketMode="><span class="term"><code class="varname">SocketMode=</code></span><a class="headerlink" title="Permalink to this term" href="#SocketMode=">¶</a></dt><dd><p><a href="systemd.socket.html"><span class="citerefentry"><span class="refentrytitle">systemd.socket</span>(5)</span></a></p></dd><dt id="SocketUser="><span class="term"><code class="varname">SocketUser=</code></span><a class="headerlink" title="Permalink to this term" href="#SocketUser=">¶</a></dt><dd><p><a href="systemd.socket.html"><span class="citerefentry"><span class="refentrytitle">systemd.socket</span>(5)</span></a></p></dd><dt id="Sockets="><span class="term"><code class="varname">Sockets=</code></span><a class="headerlink" title="Permalink to this term" href="#Sockets=">¶</a></dt><dd><p><a href="systemd.service.html"><span class="citerefentry"><span class="refentrytitle">systemd.service</span>(5)</span></a></p></dd><dt id="SourcePath="><span class="term"><code class="varname">SourcePath=</code></span><a class="headerlink" title="Permalink to this term" href="#SourcePath=">¶</a></dt><dd><p><a href="systemd.unit.html"><span class="citerefentry"><span class="refentrytitle">systemd.unit</span>(5)</span></a></p></dd><dt id="StandardError="><span class="term"><code class="varname">StandardError=</code></span><a class="headerlink" title="Permalink to this term" href="#StandardError=">¶</a></dt><dd><p><a href="systemd.exec.html"><span class="citerefentry"><span class="refentrytitle">systemd.exec</span>(5)</span></a></p></dd><dt id="StandardInput="><span class="term"><code class="varname">StandardInput=</code></span><a class="headerlink" title="Permalink to this term" href="#StandardInput=">¶</a></dt><dd><p><a href="systemd.exec.html"><span class="citerefentry"><span class="refentrytitle">systemd.exec</span>(5)</span></a></p></dd><dt id="StandardOutput="><span class="term"><code class="varname">StandardOutput=</code></span><a class="headerlink" title="Permalink to this term" href="#StandardOutput=">¶</a></dt><dd><p><a href="systemd.exec.html"><span class="citerefentry"><span class="refentrytitle">systemd.exec</span>(5)</span></a></p></dd><dt id="StartLimitAction="><span class="term"><code class="varname">StartLimitAction=</code></span><a class="headerlink" title="Permalink to this term" href="#StartLimitAction=">¶</a></dt><dd><p><a href="systemd.service.html"><span class="citerefentry"><span class="refentrytitle">systemd.service</span>(5)</span></a></p></dd><dt id="StartLimitBurst="><span class="term"><code class="varname">StartLimitBurst=</code></span><a class="headerlink" title="Permalink to this term" href="#StartLimitBurst=">¶</a></dt><dd><p><a href="systemd.service.html"><span class="citerefentry"><span class="refentrytitle">systemd.service</span>(5)</span></a></p></dd><dt id="StartLimitInterval="><span class="term"><code class="varname">StartLimitInterval=</code></span><a class="headerlink" title="Permalink to this term" href="#StartLimitInterval=">¶</a></dt><dd><p><a href="systemd.service.html"><span class="citerefentry"><span class="refentrytitle">systemd.service</span>(5)</span></a></p></dd><dt id="StartupBlockIOWeight="><span class="term"><code class="varname">StartupBlockIOWeight=</code></span><a class="headerlink" title="Permalink to this term" href="#StartupBlockIOWeight=">¶</a></dt><dd><p><a href="systemd.resource-control.html"><span class="citerefentry"><span class="refentrytitle">systemd.resource-control</span>(5)</span></a></p></dd><dt id="StartupCPUShares="><span class="term"><code class="varname">StartupCPUShares=</code></span><a class="headerlink" title="Permalink to this term" href="#StartupCPUShares=">¶</a></dt><dd><p><a href="systemd.resource-control.html"><span class="citerefentry"><span class="refentrytitle">systemd.resource-control</span>(5)</span></a></p></dd><dt id="StopWhenUnneeded="><span class="term"><code class="varname">StopWhenUnneeded=</code></span><a class="headerlink" title="Permalink to this term" href="#StopWhenUnneeded=">¶</a></dt><dd><p><a href="systemd.unit.html"><span class="citerefentry"><span class="refentrytitle">systemd.unit</span>(5)</span></a></p></dd><dt id="SuccessExitStatus="><span class="term"><code class="varname">SuccessExitStatus=</code></span><a class="headerlink" title="Permalink to this term" href="#SuccessExitStatus=">¶</a></dt><dd><p><a href="systemd.service.html"><span class="citerefentry"><span class="refentrytitle">systemd.service</span>(5)</span></a></p></dd><dt id="SupplementaryGroups="><span class="term"><code class="varname">SupplementaryGroups=</code></span><a class="headerlink" title="Permalink to this term" href="#SupplementaryGroups=">¶</a></dt><dd><p><a href="systemd.exec.html"><span class="citerefentry"><span class="refentrytitle">systemd.exec</span>(5)</span></a></p></dd><dt id="Symlinks="><span class="term"><code class="varname">Symlinks=</code></span><a class="headerlink" title="Permalink to this term" href="#Symlinks=">¶</a></dt><dd><p><a href="systemd.socket.html"><span class="citerefentry"><span class="refentrytitle">systemd.socket</span>(5)</span></a></p></dd><dt id="SysVStartPriority="><span class="term"><code class="varname">SysVStartPriority=</code></span><a class="headerlink" title="Permalink to this term" href="#SysVStartPriority=">¶</a></dt><dd><p><a href="systemd.service.html"><span class="citerefentry"><span class="refentrytitle">systemd.service</span>(5)</span></a></p></dd><dt id="SyslogFacility="><span class="term"><code class="varname">SyslogFacility=</code></span><a class="headerlink" title="Permalink to this term" href="#SyslogFacility=">¶</a></dt><dd><p><a href="systemd.exec.html"><span class="citerefentry"><span class="refentrytitle">systemd.exec</span>(5)</span></a></p></dd><dt id="SyslogIdentifier="><span class="term"><code class="varname">SyslogIdentifier=</code></span><a class="headerlink" title="Permalink to this term" href="#SyslogIdentifier=">¶</a></dt><dd><p><a href="systemd.exec.html"><span class="citerefentry"><span class="refentrytitle">systemd.exec</span>(5)</span></a></p></dd><dt id="SyslogLevel="><span class="term"><code class="varname">SyslogLevel=</code></span><a class="headerlink" title="Permalink to this term" href="#SyslogLevel=">¶</a></dt><dd><p><a href="systemd.exec.html"><span class="citerefentry"><span class="refentrytitle">systemd.exec</span>(5)</span></a></p></dd><dt id="SyslogLevelPrefix="><span class="term"><code class="varname">SyslogLevelPrefix=</code></span><a class="headerlink" title="Permalink to this term" href="#SyslogLevelPrefix=">¶</a></dt><dd><p><a href="systemd.exec.html"><span class="citerefentry"><span class="refentrytitle">systemd.exec</span>(5)</span></a></p></dd><dt id="SystemCallArchitectures="><span class="term"><code class="varname">SystemCallArchitectures=</code></span><a class="headerlink" title="Permalink to this term" href="#SystemCallArchitectures=">¶</a></dt><dd><p><a href="systemd.exec.html"><span class="citerefentry"><span class="refentrytitle">systemd.exec</span>(5)</span></a></p></dd><dt id="SystemCallErrorNumber="><span class="term"><code class="varname">SystemCallErrorNumber=</code></span><a class="headerlink" title="Permalink to this term" href="#SystemCallErrorNumber=">¶</a></dt><dd><p><a href="systemd.exec.html"><span class="citerefentry"><span class="refentrytitle">systemd.exec</span>(5)</span></a></p></dd><dt id="SystemCallFilter="><span class="term"><code class="varname">SystemCallFilter=</code></span><a class="headerlink" title="Permalink to this term" href="#SystemCallFilter=">¶</a></dt><dd><p><a href="systemd.exec.html"><span class="citerefentry"><span class="refentrytitle">systemd.exec</span>(5)</span></a></p></dd><dt id="TCPCongestion="><span class="term"><code class="varname">TCPCongestion=</code></span><a class="headerlink" title="Permalink to this term" href="#TCPCongestion=">¶</a></dt><dd><p><a href="systemd.socket.html"><span class="citerefentry"><span class="refentrytitle">systemd.socket</span>(5)</span></a></p></dd><dt id="TTYPath="><span class="term"><code class="varname">TTYPath=</code></span><a class="headerlink" title="Permalink to this term" href="#TTYPath=">¶</a></dt><dd><p><a href="systemd.exec.html"><span class="citerefentry"><span class="refentrytitle">systemd.exec</span>(5)</span></a></p></dd><dt id="TTYReset="><span class="term"><code class="varname">TTYReset=</code></span><a class="headerlink" title="Permalink to this term" href="#TTYReset=">¶</a></dt><dd><p><a href="systemd.exec.html"><span class="citerefentry"><span class="refentrytitle">systemd.exec</span>(5)</span></a></p></dd><dt id="TTYVHangup="><span class="term"><code class="varname">TTYVHangup=</code></span><a class="headerlink" title="Permalink to this term" href="#TTYVHangup=">¶</a></dt><dd><p><a href="systemd.exec.html"><span class="citerefentry"><span class="refentrytitle">systemd.exec</span>(5)</span></a></p></dd><dt id="TTYVTDisallocate="><span class="term"><code class="varname">TTYVTDisallocate=</code></span><a class="headerlink" title="Permalink to this term" href="#TTYVTDisallocate=">¶</a></dt><dd><p><a href="systemd.exec.html"><span class="citerefentry"><span class="refentrytitle">systemd.exec</span>(5)</span></a></p></dd><dt id="TimeoutSec="><span class="term"><code class="varname">TimeoutSec=</code></span><a class="headerlink" title="Permalink to this term" href="#TimeoutSec=">¶</a></dt><dd><p><a href="systemd.mount.html"><span class="citerefentry"><span class="refentrytitle">systemd.mount</span>(5)</span></a>, <a href="systemd.service.html"><span class="citerefentry"><span class="refentrytitle">systemd.service</span>(5)</span></a>, <a href="systemd.socket.html"><span class="citerefentry"><span class="refentrytitle">systemd.socket</span>(5)</span></a>, <a href="systemd.swap.html"><span class="citerefentry"><span class="refentrytitle">systemd.swap</span>(5)</span></a></p></dd><dt id="TimeoutStartSec="><span class="term"><code class="varname">TimeoutStartSec=</code></span><a class="headerlink" title="Permalink to this term" href="#TimeoutStartSec=">¶</a></dt><dd><p><a href="systemd.service.html"><span class="citerefentry"><span class="refentrytitle">systemd.service</span>(5)</span></a></p></dd><dt id="TimeoutStopSec="><span class="term"><code class="varname">TimeoutStopSec=</code></span><a class="headerlink" title="Permalink to this term" href="#TimeoutStopSec=">¶</a></dt><dd><p><a href="systemd.service.html"><span class="citerefentry"><span class="refentrytitle">systemd.service</span>(5)</span></a></p></dd><dt id="TimerSlackNSec="><span class="term"><code class="varname">TimerSlackNSec=</code></span><a class="headerlink" title="Permalink to this term" href="#TimerSlackNSec=">¶</a></dt><dd><p><a href="systemd.exec.html"><span class="citerefentry"><span class="refentrytitle">systemd.exec</span>(5)</span></a></p></dd><dt id="Transparent="><span class="term"><code class="varname">Transparent=</code></span><a class="headerlink" title="Permalink to this term" href="#Transparent=">¶</a></dt><dd><p><a href="systemd.socket.html"><span class="citerefentry"><span class="refentrytitle">systemd.socket</span>(5)</span></a></p></dd><dt id="Type="><span class="term"><code class="varname">Type=</code></span><a class="headerlink" title="Permalink to this term" href="#Type=">¶</a></dt><dd><p><a href="systemd.mount.html"><span class="citerefentry"><span class="refentrytitle">systemd.mount</span>(5)</span></a>, <a href="systemd.service.html"><span class="citerefentry"><span class="refentrytitle">systemd.service</span>(5)</span></a></p></dd><dt id="UMask="><span class="term"><code class="varname">UMask=</code></span><a class="headerlink" title="Permalink to this term" href="#UMask=">¶</a></dt><dd><p><a href="systemd.exec.html"><span class="citerefentry"><span class="refentrytitle">systemd.exec</span>(5)</span></a></p></dd><dt id="Unit="><span class="term"><code class="varname">Unit=</code></span><a class="headerlink" title="Permalink to this term" href="#Unit=">¶</a></dt><dd><p><a href="systemd.path.html"><span class="citerefentry"><span class="refentrytitle">systemd.path</span>(5)</span></a>, <a href="systemd.timer.html"><span class="citerefentry"><span class="refentrytitle">systemd.timer</span>(5)</span></a></p></dd><dt id="User="><span class="term"><code class="varname">User=</code></span><a class="headerlink" title="Permalink to this term" href="#User=">¶</a></dt><dd><p><a href="systemd.exec.html"><span class="citerefentry"><span class="refentrytitle">systemd.exec</span>(5)</span></a></p></dd><dt id="UtmpIdentifier="><span class="term"><code class="varname">UtmpIdentifier=</code></span><a class="headerlink" title="Permalink to this term" href="#UtmpIdentifier=">¶</a></dt><dd><p><a href="systemd.exec.html"><span class="citerefentry"><span class="refentrytitle">systemd.exec</span>(5)</span></a></p></dd><dt id="WakeSystem="><span class="term"><code class="varname">WakeSystem=</code></span><a class="headerlink" title="Permalink to this term" href="#WakeSystem=">¶</a></dt><dd><p><a href="systemd.timer.html"><span class="citerefentry"><span class="refentrytitle">systemd.timer</span>(5)</span></a></p></dd><dt id="WantedBy="><span class="term"><code class="varname">WantedBy=</code></span><a class="headerlink" title="Permalink to this term" href="#WantedBy=">¶</a></dt><dd><p><a href="systemd.unit.html"><span class="citerefentry"><span class="refentrytitle">systemd.unit</span>(5)</span></a></p></dd><dt id="Wants="><span class="term"><code class="varname">Wants=</code></span><a class="headerlink" title="Permalink to this term" href="#Wants=">¶</a></dt><dd><p><a href="systemd.unit.html"><span class="citerefentry"><span class="refentrytitle">systemd.unit</span>(5)</span></a></p></dd><dt id="WatchdogSec="><span class="term"><code class="varname">WatchdogSec=</code></span><a class="headerlink" title="Permalink to this term" href="#WatchdogSec=">¶</a></dt><dd><p><a href="systemd.service.html"><span class="citerefentry"><span class="refentrytitle">systemd.service</span>(5)</span></a></p></dd><dt id="What="><span class="term"><code class="varname">What=</code></span><a class="headerlink" title="Permalink to this term" href="#What=">¶</a></dt><dd><p><a href="systemd.mount.html"><span class="citerefentry"><span class="refentrytitle">systemd.mount</span>(5)</span></a>, <a href="systemd.swap.html"><span class="citerefentry"><span class="refentrytitle">systemd.swap</span>(5)</span></a></p></dd><dt id="Where="><span class="term"><code class="varname">Where=</code></span><a class="headerlink" title="Permalink to this term" href="#Where=">¶</a></dt><dd><p><a href="systemd.automount.html"><span class="citerefentry"><span class="refentrytitle">systemd.automount</span>(5)</span></a>, <a href="systemd.mount.html"><span class="citerefentry"><span class="refentrytitle">systemd.mount</span>(5)</span></a></p></dd><dt id="WorkingDirectory="><span class="term"><code class="varname">WorkingDirectory=</code></span><a class="headerlink" title="Permalink to this term" href="#WorkingDirectory=">¶</a></dt><dd><p><a href="systemd.exec.html"><span class="citerefentry"><span class="refentrytitle">systemd.exec</span>(5)</span></a></p></dd></dl></div></div><div class="refsect1"><a name="idm214182458288"></a><h2 id="Options on the kernel command line">Options on the kernel command line<a class="headerlink" title="Permalink to this headline" href="#Options%20on%20the%20kernel%20command%20line">¶</a></h2><p>Kernel boot options for configuring the behaviour of the
+                systemd process.</p><div class="variablelist"><a name="kernel-commandline-options"></a><dl class="variablelist"><dt id="-b"><span class="term"><code class="option">-b</code></span><a class="headerlink" title="Permalink to this term" href="#-b">¶</a></dt><dd><p><a href="kernel-command-line.html"><span class="citerefentry"><span class="refentrytitle">kernel-command-line</span>(7)</span></a>, <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a></p></dd><dt id="1"><span class="term"><code class="constant">1</code></span><a class="headerlink" title="Permalink to this term" href="#1">¶</a></dt><dd><p><a href="kernel-command-line.html"><span class="citerefentry"><span class="refentrytitle">kernel-command-line</span>(7)</span></a>, <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a></p></dd><dt id="2"><span class="term"><code class="constant">2</code></span><a class="headerlink" title="Permalink to this term" href="#2">¶</a></dt><dd><p><a href="kernel-command-line.html"><span class="citerefentry"><span class="refentrytitle">kernel-command-line</span>(7)</span></a>, <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a></p></dd><dt id="3"><span class="term"><code class="varname">3</code></span><a class="headerlink" title="Permalink to this term" href="#3">¶</a></dt><dd><p><a href="kernel-command-line.html"><span class="citerefentry"><span class="refentrytitle">kernel-command-line</span>(7)</span></a>, <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a></p></dd><dt id="4"><span class="term"><code class="varname">4</code></span><a class="headerlink" title="Permalink to this term" href="#4">¶</a></dt><dd><p><a href="kernel-command-line.html"><span class="citerefentry"><span class="refentrytitle">kernel-command-line</span>(7)</span></a>, <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a></p></dd><dt id="5"><span class="term"><code class="varname">5</code></span><a class="headerlink" title="Permalink to this term" href="#5">¶</a></dt><dd><p><a href="kernel-command-line.html"><span class="citerefentry"><span class="refentrytitle">kernel-command-line</span>(7)</span></a>, <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a></p></dd><dt id="S"><span class="term"><code class="varname">S</code></span><a class="headerlink" title="Permalink to this term" href="#S">¶</a></dt><dd><p><a href="kernel-command-line.html"><span class="citerefentry"><span class="refentrytitle">kernel-command-line</span>(7)</span></a>, <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a></p></dd><dt id="debug"><span class="term"><code class="varname">debug</code></span><a class="headerlink" title="Permalink to this term" href="#debug">¶</a></dt><dd><p><a href="kernel-command-line.html"><span class="citerefentry"><span class="refentrytitle">kernel-command-line</span>(7)</span></a>, <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a></p></dd><dt id="emergency"><span class="term"><code class="varname">emergency</code></span><a class="headerlink" title="Permalink to this term" href="#emergency">¶</a></dt><dd><p><a href="kernel-command-line.html"><span class="citerefentry"><span class="refentrytitle">kernel-command-line</span>(7)</span></a>, <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a></p></dd><dt id="fsck.mode="><span class="term"><code class="varname">fsck.mode=</code></span><a class="headerlink" title="Permalink to this term" href="#fsck.mode=">¶</a></dt><dd><p><a href="kernel-command-line.html"><span class="citerefentry"><span class="refentrytitle">kernel-command-line</span>(7)</span></a>, <a href="systemd-fsck@.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-fsck@.service</span>(8)</span></a></p></dd><dt id="fsck.repair="><span class="term"><code class="varname">fsck.repair=</code></span><a class="headerlink" title="Permalink to this term" href="#fsck.repair=">¶</a></dt><dd><p><a href="kernel-command-line.html"><span class="citerefentry"><span class="refentrytitle">kernel-command-line</span>(7)</span></a>, <a href="systemd-fsck@.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-fsck@.service</span>(8)</span></a></p></dd><dt id="fstab="><span class="term"><code class="varname">fstab=</code></span><a class="headerlink" title="Permalink to this term" href="#fstab=">¶</a></dt><dd><p><a href="kernel-command-line.html"><span class="citerefentry"><span class="refentrytitle">kernel-command-line</span>(7)</span></a>, <a href="systemd-fstab-generator.html"><span class="citerefentry"><span class="refentrytitle">systemd-fstab-generator</span>(8)</span></a></p></dd><dt id="locale.LANG="><span class="term"><code class="varname">locale.LANG=</code></span><a class="headerlink" title="Permalink to this term" href="#locale.LANG=">¶</a></dt><dd><p><a href="kernel-command-line.html"><span class="citerefentry"><span class="refentrytitle">kernel-command-line</span>(7)</span></a>, <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a></p></dd><dt id="locale.LANGUAGE="><span class="term"><code class="varname">locale.LANGUAGE=</code></span><a class="headerlink" title="Permalink to this term" href="#locale.LANGUAGE=">¶</a></dt><dd><p><a href="kernel-command-line.html"><span class="citerefentry"><span class="refentrytitle">kernel-command-line</span>(7)</span></a>, <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a></p></dd><dt id="locale.LC_ADDRESS="><span class="term"><code class="varname">locale.LC_ADDRESS=</code></span><a class="headerlink" title="Permalink to this term" href="#locale.LC_ADDRESS=">¶</a></dt><dd><p><a href="kernel-command-line.html"><span class="citerefentry"><span class="refentrytitle">kernel-command-line</span>(7)</span></a>, <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a></p></dd><dt id="locale.LC_COLLATE="><span class="term"><code class="varname">locale.LC_COLLATE=</code></span><a class="headerlink" title="Permalink to this term" href="#locale.LC_COLLATE=">¶</a></dt><dd><p><a href="kernel-command-line.html"><span class="citerefentry"><span class="refentrytitle">kernel-command-line</span>(7)</span></a>, <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a></p></dd><dt id="locale.LC_CTYPE="><span class="term"><code class="varname">locale.LC_CTYPE=</code></span><a class="headerlink" title="Permalink to this term" href="#locale.LC_CTYPE=">¶</a></dt><dd><p><a href="kernel-command-line.html"><span class="citerefentry"><span class="refentrytitle">kernel-command-line</span>(7)</span></a>, <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a></p></dd><dt id="locale.LC_IDENTIFICATION="><span class="term"><code class="varname">locale.LC_IDENTIFICATION=</code></span><a class="headerlink" title="Permalink to this term" href="#locale.LC_IDENTIFICATION=">¶</a></dt><dd><p><a href="kernel-command-line.html"><span class="citerefentry"><span class="refentrytitle">kernel-command-line</span>(7)</span></a>, <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a></p></dd><dt id="locale.LC_MEASUREMENT="><span class="term"><code class="varname">locale.LC_MEASUREMENT=</code></span><a class="headerlink" title="Permalink to this term" href="#locale.LC_MEASUREMENT=">¶</a></dt><dd><p><a href="kernel-command-line.html"><span class="citerefentry"><span class="refentrytitle">kernel-command-line</span>(7)</span></a>, <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a></p></dd><dt id="locale.LC_MESSAGES="><span class="term"><code class="varname">locale.LC_MESSAGES=</code></span><a class="headerlink" title="Permalink to this term" href="#locale.LC_MESSAGES=">¶</a></dt><dd><p><a href="kernel-command-line.html"><span class="citerefentry"><span class="refentrytitle">kernel-command-line</span>(7)</span></a>, <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a></p></dd><dt id="locale.LC_MONETARY="><span class="term"><code class="varname">locale.LC_MONETARY=</code></span><a class="headerlink" title="Permalink to this term" href="#locale.LC_MONETARY=">¶</a></dt><dd><p><a href="kernel-command-line.html"><span class="citerefentry"><span class="refentrytitle">kernel-command-line</span>(7)</span></a>, <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a></p></dd><dt id="locale.LC_NAME="><span class="term"><code class="varname">locale.LC_NAME=</code></span><a class="headerlink" title="Permalink to this term" href="#locale.LC_NAME=">¶</a></dt><dd><p><a href="kernel-command-line.html"><span class="citerefentry"><span class="refentrytitle">kernel-command-line</span>(7)</span></a>, <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a></p></dd><dt id="locale.LC_NUMERIC="><span class="term"><code class="varname">locale.LC_NUMERIC=</code></span><a class="headerlink" title="Permalink to this term" href="#locale.LC_NUMERIC=">¶</a></dt><dd><p><a href="kernel-command-line.html"><span class="citerefentry"><span class="refentrytitle">kernel-command-line</span>(7)</span></a>, <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a></p></dd><dt id="locale.LC_PAPER="><span class="term"><code class="varname">locale.LC_PAPER=</code></span><a class="headerlink" title="Permalink to this term" href="#locale.LC_PAPER=">¶</a></dt><dd><p><a href="kernel-command-line.html"><span class="citerefentry"><span class="refentrytitle">kernel-command-line</span>(7)</span></a>, <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a></p></dd><dt id="locale.LC_TELEPHONE="><span class="term"><code class="varname">locale.LC_TELEPHONE=</code></span><a class="headerlink" title="Permalink to this term" href="#locale.LC_TELEPHONE=">¶</a></dt><dd><p><a href="kernel-command-line.html"><span class="citerefentry"><span class="refentrytitle">kernel-command-line</span>(7)</span></a>, <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a></p></dd><dt id="locale.LC_TIME="><span class="term"><code class="varname">locale.LC_TIME=</code></span><a class="headerlink" title="Permalink to this term" href="#locale.LC_TIME=">¶</a></dt><dd><p><a href="kernel-command-line.html"><span class="citerefentry"><span class="refentrytitle">kernel-command-line</span>(7)</span></a>, <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a></p></dd><dt id="luks.crypttab="><span class="term"><code class="varname">luks.crypttab=</code></span><a class="headerlink" title="Permalink to this term" href="#luks.crypttab=">¶</a></dt><dd><p><a href="kernel-command-line.html"><span class="citerefentry"><span class="refentrytitle">kernel-command-line</span>(7)</span></a>, <a href="systemd-cryptsetup-generator.html"><span class="citerefentry"><span class="refentrytitle">systemd-cryptsetup-generator</span>(8)</span></a></p></dd><dt id="luks.key="><span class="term"><code class="varname">luks.key=</code></span><a class="headerlink" title="Permalink to this term" href="#luks.key=">¶</a></dt><dd><p><a href="kernel-command-line.html"><span class="citerefentry"><span class="refentrytitle">kernel-command-line</span>(7)</span></a>, <a href="systemd-cryptsetup-generator.html"><span class="citerefentry"><span class="refentrytitle">systemd-cryptsetup-generator</span>(8)</span></a></p></dd><dt id="luks.options="><span class="term"><code class="varname">luks.options=</code></span><a class="headerlink" title="Permalink to this term" href="#luks.options=">¶</a></dt><dd><p><a href="kernel-command-line.html"><span class="citerefentry"><span class="refentrytitle">kernel-command-line</span>(7)</span></a>, <a href="systemd-cryptsetup-generator.html"><span class="citerefentry"><span class="refentrytitle">systemd-cryptsetup-generator</span>(8)</span></a></p></dd><dt id="luks.uuid="><span class="term"><code class="varname">luks.uuid=</code></span><a class="headerlink" title="Permalink to this term" href="#luks.uuid=">¶</a></dt><dd><p><a href="kernel-command-line.html"><span class="citerefentry"><span class="refentrytitle">kernel-command-line</span>(7)</span></a>, <a href="systemd-cryptsetup-generator.html"><span class="citerefentry"><span class="refentrytitle">systemd-cryptsetup-generator</span>(8)</span></a></p></dd><dt id="luks="><span class="term"><code class="varname">luks=</code></span><a class="headerlink" title="Permalink to this term" href="#luks=">¶</a></dt><dd><p><a href="kernel-command-line.html"><span class="citerefentry"><span class="refentrytitle">kernel-command-line</span>(7)</span></a>, <a href="systemd-cryptsetup-generator.html"><span class="citerefentry"><span class="refentrytitle">systemd-cryptsetup-generator</span>(8)</span></a></p></dd><dt id="modules-load="><span class="term"><code class="varname">modules-load=</code></span><a class="headerlink" title="Permalink to this term" href="#modules-load=">¶</a></dt><dd><p><a href="kernel-command-line.html"><span class="citerefentry"><span class="refentrytitle">kernel-command-line</span>(7)</span></a>, <a href="systemd-modules-load.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-modules-load.service</span>(8)</span></a></p></dd><dt id="net.ifnames="><span class="term"><code class="varname">net.ifnames=</code></span><a class="headerlink" title="Permalink to this term" href="#net.ifnames=">¶</a></dt><dd><p><a href="kernel-command-line.html"><span class="citerefentry"><span class="refentrytitle">kernel-command-line</span>(7)</span></a>, <a href="systemd-udevd.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-udevd.service</span>(8)</span></a></p></dd><dt id="plymouth.enable="><span class="term"><code class="varname">plymouth.enable=</code></span><a class="headerlink" title="Permalink to this term" href="#plymouth.enable=">¶</a></dt><dd><p><a href="kernel-command-line.html"><span class="citerefentry"><span class="refentrytitle">kernel-command-line</span>(7)</span></a></p></dd><dt id="quiet"><span class="term"><code class="varname">quiet</code></span><a class="headerlink" title="Permalink to this term" href="#quiet">¶</a></dt><dd><p><a href="kernel-command-line.html"><span class="citerefentry"><span class="refentrytitle">kernel-command-line</span>(7)</span></a>, <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a></p></dd><dt id="quotacheck.mode="><span class="term"><code class="varname">quotacheck.mode=</code></span><a class="headerlink" title="Permalink to this term" href="#quotacheck.mode=">¶</a></dt><dd><p><a href="kernel-command-line.html"><span class="citerefentry"><span class="refentrytitle">kernel-command-line</span>(7)</span></a>, <a href="systemd-quotacheck.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-quotacheck.service</span>(8)</span></a></p></dd><dt id="rd.fstab="><span class="term"><code class="varname">rd.fstab=</code></span><a class="headerlink" title="Permalink to this term" href="#rd.fstab=">¶</a></dt><dd><p><a href="kernel-command-line.html"><span class="citerefentry"><span class="refentrytitle">kernel-command-line</span>(7)</span></a>, <a href="systemd-fstab-generator.html"><span class="citerefentry"><span class="refentrytitle">systemd-fstab-generator</span>(8)</span></a></p></dd><dt id="rd.luks.crypttab="><span class="term"><code class="varname">rd.luks.crypttab=</code></span><a class="headerlink" title="Permalink to this term" href="#rd.luks.crypttab=">¶</a></dt><dd><p><a href="kernel-command-line.html"><span class="citerefentry"><span class="refentrytitle">kernel-command-line</span>(7)</span></a>, <a href="systemd-cryptsetup-generator.html"><span class="citerefentry"><span class="refentrytitle">systemd-cryptsetup-generator</span>(8)</span></a></p></dd><dt id="rd.luks.key="><span class="term"><code class="varname">rd.luks.key=</code></span><a class="headerlink" title="Permalink to this term" href="#rd.luks.key=">¶</a></dt><dd><p><a href="kernel-command-line.html"><span class="citerefentry"><span class="refentrytitle">kernel-command-line</span>(7)</span></a>, <a href="systemd-cryptsetup-generator.html"><span class="citerefentry"><span class="refentrytitle">systemd-cryptsetup-generator</span>(8)</span></a></p></dd><dt id="rd.luks.options="><span class="term"><code class="varname">rd.luks.options=</code></span><a class="headerlink" title="Permalink to this term" href="#rd.luks.options=">¶</a></dt><dd><p><a href="kernel-command-line.html"><span class="citerefentry"><span class="refentrytitle">kernel-command-line</span>(7)</span></a>, <a href="systemd-cryptsetup-generator.html"><span class="citerefentry"><span class="refentrytitle">systemd-cryptsetup-generator</span>(8)</span></a></p></dd><dt id="rd.luks.uuid="><span class="term"><code class="varname">rd.luks.uuid=</code></span><a class="headerlink" title="Permalink to this term" href="#rd.luks.uuid=">¶</a></dt><dd><p><a href="kernel-command-line.html"><span class="citerefentry"><span class="refentrytitle">kernel-command-line</span>(7)</span></a>, <a href="systemd-cryptsetup-generator.html"><span class="citerefentry"><span class="refentrytitle">systemd-cryptsetup-generator</span>(8)</span></a></p></dd><dt id="rd.luks="><span class="term"><code class="varname">rd.luks=</code></span><a class="headerlink" title="Permalink to this term" href="#rd.luks=">¶</a></dt><dd><p><a href="kernel-command-line.html"><span class="citerefentry"><span class="refentrytitle">kernel-command-line</span>(7)</span></a>, <a href="systemd-cryptsetup-generator.html"><span class="citerefentry"><span class="refentrytitle">systemd-cryptsetup-generator</span>(8)</span></a></p></dd><dt id="rd.modules-load="><span class="term"><code class="varname">rd.modules-load=</code></span><a class="headerlink" title="Permalink to this term" href="#rd.modules-load=">¶</a></dt><dd><p><a href="kernel-command-line.html"><span class="citerefentry"><span class="refentrytitle">kernel-command-line</span>(7)</span></a>, <a href="systemd-modules-load.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-modules-load.service</span>(8)</span></a></p></dd><dt id="rd.systemd.gpt_auto="><span class="term"><code class="varname">rd.systemd.gpt_auto=</code></span><a class="headerlink" title="Permalink to this term" href="#rd.systemd.gpt_auto=">¶</a></dt><dd><p><a href="kernel-command-line.html"><span class="citerefentry"><span class="refentrytitle">kernel-command-line</span>(7)</span></a></p></dd><dt id="rd.systemd.unit="><span class="term"><code class="varname">rd.systemd.unit=</code></span><a class="headerlink" title="Permalink to this term" href="#rd.systemd.unit=">¶</a></dt><dd><p><a href="kernel-command-line.html"><span class="citerefentry"><span class="refentrytitle">kernel-command-line</span>(7)</span></a>, <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a></p></dd><dt id="rd.udev.children-max="><span class="term"><code class="varname">rd.udev.children-max=</code></span><a class="headerlink" title="Permalink to this term" href="#rd.udev.children-max=">¶</a></dt><dd><p><a href="kernel-command-line.html"><span class="citerefentry"><span class="refentrytitle">kernel-command-line</span>(7)</span></a>, <a href="systemd-udevd.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-udevd.service</span>(8)</span></a></p></dd><dt id="rd.udev.exec-delay="><span class="term"><code class="varname">rd.udev.exec-delay=</code></span><a class="headerlink" title="Permalink to this term" href="#rd.udev.exec-delay=">¶</a></dt><dd><p><a href="kernel-command-line.html"><span class="citerefentry"><span class="refentrytitle">kernel-command-line</span>(7)</span></a>, <a href="systemd-udevd.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-udevd.service</span>(8)</span></a></p></dd><dt id="rd.udev.log-priority="><span class="term"><code class="varname">rd.udev.log-priority=</code></span><a class="headerlink" title="Permalink to this term" href="#rd.udev.log-priority=">¶</a></dt><dd><p><a href="kernel-command-line.html"><span class="citerefentry"><span class="refentrytitle">kernel-command-line</span>(7)</span></a>, <a href="systemd-udevd.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-udevd.service</span>(8)</span></a></p></dd><dt id="ro"><span class="term"><code class="varname">ro</code></span><a class="headerlink" title="Permalink to this term" href="#ro">¶</a></dt><dd><p><a href="kernel-command-line.html"><span class="citerefentry"><span class="refentrytitle">kernel-command-line</span>(7)</span></a></p></dd><dt id="root="><span class="term"><code class="varname">root=</code></span><a class="headerlink" title="Permalink to this term" href="#root=">¶</a></dt><dd><p><a href="kernel-command-line.html"><span class="citerefentry"><span class="refentrytitle">kernel-command-line</span>(7)</span></a></p></dd><dt id="rootfsflags="><span class="term"><code class="varname">rootfsflags=</code></span><a class="headerlink" title="Permalink to this term" href="#rootfsflags=">¶</a></dt><dd><p><a href="kernel-command-line.html"><span class="citerefentry"><span class="refentrytitle">kernel-command-line</span>(7)</span></a></p></dd><dt id="rootfstype="><span class="term"><code class="varname">rootfstype=</code></span><a class="headerlink" title="Permalink to this term" href="#rootfstype=">¶</a></dt><dd><p><a href="kernel-command-line.html"><span class="citerefentry"><span class="refentrytitle">kernel-command-line</span>(7)</span></a></p></dd><dt id="rw"><span class="term"><code class="varname">rw</code></span><a class="headerlink" title="Permalink to this term" href="#rw">¶</a></dt><dd><p><a href="kernel-command-line.html"><span class="citerefentry"><span class="refentrytitle">kernel-command-line</span>(7)</span></a></p></dd><dt id="s"><span class="term"><code class="varname">s</code></span><a class="headerlink" title="Permalink to this term" href="#s">¶</a></dt><dd><p><a href="kernel-command-line.html"><span class="citerefentry"><span class="refentrytitle">kernel-command-line</span>(7)</span></a>, <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a></p></dd><dt id="single"><span class="term"><code class="varname">single</code></span><a class="headerlink" title="Permalink to this term" href="#single">¶</a></dt><dd><p><a href="kernel-command-line.html"><span class="citerefentry"><span class="refentrytitle">kernel-command-line</span>(7)</span></a>, <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a></p></dd><dt id="systemd.confirm_spawn="><span class="term"><code class="varname">systemd.confirm_spawn=</code></span><a class="headerlink" title="Permalink to this term" href="#systemd.confirm_spawn=">¶</a></dt><dd><p><a href="kernel-command-line.html"><span class="citerefentry"><span class="refentrytitle">kernel-command-line</span>(7)</span></a>, <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a></p></dd><dt id="systemd.crash_chvt="><span class="term"><code class="varname">systemd.crash_chvt=</code></span><a class="headerlink" title="Permalink to this term" href="#systemd.crash_chvt=">¶</a></dt><dd><p><a href="kernel-command-line.html"><span class="citerefentry"><span class="refentrytitle">kernel-command-line</span>(7)</span></a>, <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a></p></dd><dt id="systemd.crash_shell="><span class="term"><code class="varname">systemd.crash_shell=</code></span><a class="headerlink" title="Permalink to this term" href="#systemd.crash_shell=">¶</a></dt><dd><p><a href="kernel-command-line.html"><span class="citerefentry"><span class="refentrytitle">kernel-command-line</span>(7)</span></a>, <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a></p></dd><dt id="systemd.debug-shell"><span class="term"><code class="varname">systemd.debug-shell</code></span><a class="headerlink" title="Permalink to this term" href="#systemd.debug-shell">¶</a></dt><dd><p><a href="kernel-command-line.html"><span class="citerefentry"><span class="refentrytitle">kernel-command-line</span>(7)</span></a></p></dd><dt id="systemd.default_standard_error="><span class="term"><code class="varname">systemd.default_standard_error=</code></span><a class="headerlink" title="Permalink to this term" href="#systemd.default_standard_error=">¶</a></dt><dd><p><a href="kernel-command-line.html"><span class="citerefentry"><span class="refentrytitle">kernel-command-line</span>(7)</span></a>, <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a></p></dd><dt id="systemd.default_standard_output="><span class="term"><code class="varname">systemd.default_standard_output=</code></span><a class="headerlink" title="Permalink to this term" href="#systemd.default_standard_output=">¶</a></dt><dd><p><a href="kernel-command-line.html"><span class="citerefentry"><span class="refentrytitle">kernel-command-line</span>(7)</span></a>, <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a></p></dd><dt id="systemd.dump_core="><span class="term"><code class="varname">systemd.dump_core=</code></span><a class="headerlink" title="Permalink to this term" href="#systemd.dump_core=">¶</a></dt><dd><p><a href="kernel-command-line.html"><span class="citerefentry"><span class="refentrytitle">kernel-command-line</span>(7)</span></a>, <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a></p></dd><dt id="systemd.gpt_auto="><span class="term"><code class="varname">systemd.gpt_auto=</code></span><a class="headerlink" title="Permalink to this term" href="#systemd.gpt_auto=">¶</a></dt><dd><p><a href="kernel-command-line.html"><span class="citerefentry"><span class="refentrytitle">kernel-command-line</span>(7)</span></a></p></dd><dt id="systemd.journald.forward_to_console="><span class="term"><code class="varname">systemd.journald.forward_to_console=</code></span><a class="headerlink" title="Permalink to this term" href="#systemd.journald.forward_to_console=">¶</a></dt><dd><p><a href="kernel-command-line.html"><span class="citerefentry"><span class="refentrytitle">kernel-command-line</span>(7)</span></a>, <a href="systemd-journald.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-journald.service</span>(8)</span></a></p></dd><dt id="systemd.journald.forward_to_kmsg="><span class="term"><code class="varname">systemd.journald.forward_to_kmsg=</code></span><a class="headerlink" title="Permalink to this term" href="#systemd.journald.forward_to_kmsg=">¶</a></dt><dd><p><a href="kernel-command-line.html"><span class="citerefentry"><span class="refentrytitle">kernel-command-line</span>(7)</span></a>, <a href="systemd-journald.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-journald.service</span>(8)</span></a></p></dd><dt id="systemd.journald.forward_to_syslog="><span class="term"><code class="varname">systemd.journald.forward_to_syslog=</code></span><a class="headerlink" title="Permalink to this term" href="#systemd.journald.forward_to_syslog=">¶</a></dt><dd><p><a href="kernel-command-line.html"><span class="citerefentry"><span class="refentrytitle">kernel-command-line</span>(7)</span></a>, <a href="systemd-journald.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-journald.service</span>(8)</span></a></p></dd><dt id="systemd.journald.forward_to_wall="><span class="term"><code class="varname">systemd.journald.forward_to_wall=</code></span><a class="headerlink" title="Permalink to this term" href="#systemd.journald.forward_to_wall=">¶</a></dt><dd><p><a href="kernel-command-line.html"><span class="citerefentry"><span class="refentrytitle">kernel-command-line</span>(7)</span></a>, <a href="systemd-journald.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-journald.service</span>(8)</span></a></p></dd><dt id="systemd.log_color="><span class="term"><code class="varname">systemd.log_color=</code></span><a class="headerlink" title="Permalink to this term" href="#systemd.log_color=">¶</a></dt><dd><p><a href="kernel-command-line.html"><span class="citerefentry"><span class="refentrytitle">kernel-command-line</span>(7)</span></a>, <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a></p></dd><dt id="systemd.log_level="><span class="term"><code class="varname">systemd.log_level=</code></span><a class="headerlink" title="Permalink to this term" href="#systemd.log_level=">¶</a></dt><dd><p><a href="kernel-command-line.html"><span class="citerefentry"><span class="refentrytitle">kernel-command-line</span>(7)</span></a>, <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a></p></dd><dt id="systemd.log_location="><span class="term"><code class="varname">systemd.log_location=</code></span><a class="headerlink" title="Permalink to this term" href="#systemd.log_location=">¶</a></dt><dd><p><a href="kernel-command-line.html"><span class="citerefentry"><span class="refentrytitle">kernel-command-line</span>(7)</span></a>, <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a></p></dd><dt id="systemd.log_target="><span class="term"><code class="varname">systemd.log_target=</code></span><a class="headerlink" title="Permalink to this term" href="#systemd.log_target=">¶</a></dt><dd><p><a href="kernel-command-line.html"><span class="citerefentry"><span class="refentrytitle">kernel-command-line</span>(7)</span></a>, <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a></p></dd><dt id="systemd.mask="><span class="term"><code class="varname">systemd.mask=</code></span><a class="headerlink" title="Permalink to this term" href="#systemd.mask=">¶</a></dt><dd><p><a href="kernel-command-line.html"><span class="citerefentry"><span class="refentrytitle">kernel-command-line</span>(7)</span></a></p></dd><dt id="systemd.restore_state="><span class="term"><code class="varname">systemd.restore_state=</code></span><a class="headerlink" title="Permalink to this term" href="#systemd.restore_state=">¶</a></dt><dd><p><a href="kernel-command-line.html"><span class="citerefentry"><span class="refentrytitle">kernel-command-line</span>(7)</span></a>, <a href="systemd-backlight@.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-backlight@.service</span>(8)</span></a>, <a href="systemd-rfkill@.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-rfkill@.service</span>(8)</span></a></p></dd><dt id="systemd.setenv="><span class="term"><code class="varname">systemd.setenv=</code></span><a class="headerlink" title="Permalink to this term" href="#systemd.setenv=">¶</a></dt><dd><p><a href="kernel-command-line.html"><span class="citerefentry"><span class="refentrytitle">kernel-command-line</span>(7)</span></a>, <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a></p></dd><dt id="systemd.show_status="><span class="term"><code class="varname">systemd.show_status=</code></span><a class="headerlink" title="Permalink to this term" href="#systemd.show_status=">¶</a></dt><dd><p><a href="kernel-command-line.html"><span class="citerefentry"><span class="refentrytitle">kernel-command-line</span>(7)</span></a>, <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a></p></dd><dt id="systemd.unit="><span class="term"><code class="varname">systemd.unit=</code></span><a class="headerlink" title="Permalink to this term" href="#systemd.unit=">¶</a></dt><dd><p><a href="kernel-command-line.html"><span class="citerefentry"><span class="refentrytitle">kernel-command-line</span>(7)</span></a>, <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a></p></dd><dt id="systemd.wants="><span class="term"><code class="varname">systemd.wants=</code></span><a class="headerlink" title="Permalink to this term" href="#systemd.wants=">¶</a></dt><dd><p><a href="kernel-command-line.html"><span class="citerefentry"><span class="refentrytitle">kernel-command-line</span>(7)</span></a></p></dd><dt id="udev.children-max="><span class="term"><code class="varname">udev.children-max=</code></span><a class="headerlink" title="Permalink to this term" href="#udev.children-max=">¶</a></dt><dd><p><a href="kernel-command-line.html"><span class="citerefentry"><span class="refentrytitle">kernel-command-line</span>(7)</span></a>, <a href="systemd-udevd.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-udevd.service</span>(8)</span></a></p></dd><dt id="udev.exec-delay="><span class="term"><code class="varname">udev.exec-delay=</code></span><a class="headerlink" title="Permalink to this term" href="#udev.exec-delay=">¶</a></dt><dd><p><a href="kernel-command-line.html"><span class="citerefentry"><span class="refentrytitle">kernel-command-line</span>(7)</span></a>, <a href="systemd-udevd.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-udevd.service</span>(8)</span></a></p></dd><dt id="udev.log-priority="><span class="term"><code class="varname">udev.log-priority=</code></span><a class="headerlink" title="Permalink to this term" href="#udev.log-priority=">¶</a></dt><dd><p><a href="kernel-command-line.html"><span class="citerefentry"><span class="refentrytitle">kernel-command-line</span>(7)</span></a>, <a href="systemd-udevd.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-udevd.service</span>(8)</span></a></p></dd><dt id="vconsole.font.map="><span class="term"><code class="varname">vconsole.font.map=</code></span><a class="headerlink" title="Permalink to this term" href="#vconsole.font.map=">¶</a></dt><dd><p><a href="kernel-command-line.html"><span class="citerefentry"><span class="refentrytitle">kernel-command-line</span>(7)</span></a>, <a href="systemd-vconsole-setup.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-vconsole-setup.service</span>(8)</span></a></p></dd><dt id="vconsole.font.unimap="><span class="term"><code class="varname">vconsole.font.unimap=</code></span><a class="headerlink" title="Permalink to this term" href="#vconsole.font.unimap=">¶</a></dt><dd><p><a href="kernel-command-line.html"><span class="citerefentry"><span class="refentrytitle">kernel-command-line</span>(7)</span></a>, <a href="systemd-vconsole-setup.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-vconsole-setup.service</span>(8)</span></a></p></dd><dt id="vconsole.font="><span class="term"><code class="varname">vconsole.font=</code></span><a class="headerlink" title="Permalink to this term" href="#vconsole.font=">¶</a></dt><dd><p><a href="kernel-command-line.html"><span class="citerefentry"><span class="refentrytitle">kernel-command-line</span>(7)</span></a>, <a href="systemd-vconsole-setup.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-vconsole-setup.service</span>(8)</span></a></p></dd><dt id="vconsole.keymap.toggle="><span class="term"><code class="varname">vconsole.keymap.toggle=</code></span><a class="headerlink" title="Permalink to this term" href="#vconsole.keymap.toggle=">¶</a></dt><dd><p><a href="kernel-command-line.html"><span class="citerefentry"><span class="refentrytitle">kernel-command-line</span>(7)</span></a>, <a href="systemd-vconsole-setup.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-vconsole-setup.service</span>(8)</span></a></p></dd><dt id="vconsole.keymap="><span class="term"><code class="varname">vconsole.keymap=</code></span><a class="headerlink" title="Permalink to this term" href="#vconsole.keymap=">¶</a></dt><dd><p><a href="kernel-command-line.html"><span class="citerefentry"><span class="refentrytitle">kernel-command-line</span>(7)</span></a>, <a href="systemd-vconsole-setup.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-vconsole-setup.service</span>(8)</span></a></p></dd></dl></div></div><div class="refsect1"><a name="idm214182259936"></a><h2 id="Environment variables">Environment variables<a class="headerlink" title="Permalink to this headline" href="#Environment%20variables">¶</a></h2><p>Environment variables understood by the systemd
+                manager and other programs.</p><div class="variablelist"><a name="environment-variables"></a><dl class="variablelist"><dt id="$HOME"><span class="term"><code class="varname">$HOME</code></span><a class="headerlink" title="Permalink to this term" href="#%24HOME">¶</a></dt><dd><p><a href="systemd.exec.html"><span class="citerefentry"><span class="refentrytitle">systemd.exec</span>(5)</span></a></p></dd><dt id="$LANG"><span class="term"><code class="varname">$LANG</code></span><a class="headerlink" title="Permalink to this term" href="#%24LANG">¶</a></dt><dd><p><a href="systemd.exec.html"><span class="citerefentry"><span class="refentrytitle">systemd.exec</span>(5)</span></a></p></dd><dt id="$LISTEN_FDS"><span class="term"><code class="varname">$LISTEN_FDS</code></span><a class="headerlink" title="Permalink to this term" href="#%24LISTEN_FDS">¶</a></dt><dd><p><a href="sd_listen_fds.html"><span class="citerefentry"><span class="refentrytitle">sd_listen_fds</span>(3)</span></a>, <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>, <a href="systemd-activate.html"><span class="citerefentry"><span class="refentrytitle">systemd-activate</span>(8)</span></a>, <a href="systemd.exec.html"><span class="citerefentry"><span class="refentrytitle">systemd.exec</span>(5)</span></a></p></dd><dt id="$LISTEN_PID"><span class="term"><code class="varname">$LISTEN_PID</code></span><a class="headerlink" title="Permalink to this term" href="#%24LISTEN_PID">¶</a></dt><dd><p><a href="sd_listen_fds.html"><span class="citerefentry"><span class="refentrytitle">sd_listen_fds</span>(3)</span></a>, <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>, <a href="systemd-activate.html"><span class="citerefentry"><span class="refentrytitle">systemd-activate</span>(8)</span></a>, <a href="systemd.exec.html"><span class="citerefentry"><span class="refentrytitle">systemd.exec</span>(5)</span></a></p></dd><dt id="$LOGNAME"><span class="term"><code class="varname">$LOGNAME</code></span><a class="headerlink" title="Permalink to this term" href="#%24LOGNAME">¶</a></dt><dd><p><a href="systemd.exec.html"><span class="citerefentry"><span class="refentrytitle">systemd.exec</span>(5)</span></a></p></dd><dt id="$MAINPID"><span class="term"><code class="varname">$MAINPID</code></span><a class="headerlink" title="Permalink to this term" href="#%24MAINPID">¶</a></dt><dd><p><a href="systemd.exec.html"><span class="citerefentry"><span class="refentrytitle">systemd.exec</span>(5)</span></a></p></dd><dt id="$MANAGERPID"><span class="term"><code class="varname">$MANAGERPID</code></span><a class="headerlink" title="Permalink to this term" href="#%24MANAGERPID">¶</a></dt><dd><p><a href="systemd.exec.html"><span class="citerefentry"><span class="refentrytitle">systemd.exec</span>(5)</span></a></p></dd><dt id="$NOTIFY_SOCKET"><span class="term"><code class="varname">$NOTIFY_SOCKET</code></span><a class="headerlink" title="Permalink to this term" href="#%24NOTIFY_SOCKET">¶</a></dt><dd><p><a href="sd_notify.html"><span class="citerefentry"><span class="refentrytitle">sd_notify</span>(3)</span></a>, <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a></p></dd><dt id="$PATH"><span class="term"><code class="varname">$PATH</code></span><a class="headerlink" title="Permalink to this term" href="#%24PATH">¶</a></dt><dd><p><a href="systemd.exec.html"><span class="citerefentry"><span class="refentrytitle">systemd.exec</span>(5)</span></a></p></dd><dt id="$PREVLEVEL"><span class="term"><code class="varname">$PREVLEVEL</code></span><a class="headerlink" title="Permalink to this term" href="#%24PREVLEVEL">¶</a></dt><dd><p><a href="runlevel.html"><span class="citerefentry"><span class="refentrytitle">runlevel</span>(8)</span></a></p></dd><dt id="$RUNLEVEL"><span class="term"><code class="varname">$RUNLEVEL</code></span><a class="headerlink" title="Permalink to this term" href="#%24RUNLEVEL">¶</a></dt><dd><p><a href="runlevel.html"><span class="citerefentry"><span class="refentrytitle">runlevel</span>(8)</span></a></p></dd><dt id="$SHELL"><span class="term"><code class="varname">$SHELL</code></span><a class="headerlink" title="Permalink to this term" href="#%24SHELL">¶</a></dt><dd><p><a href="systemd.exec.html"><span class="citerefentry"><span class="refentrytitle">systemd.exec</span>(5)</span></a></p></dd><dt id="$SYSTEMD_LESS"><span class="term"><code class="varname">$SYSTEMD_LESS</code></span><a class="headerlink" title="Permalink to this term" href="#%24SYSTEMD_LESS">¶</a></dt><dd><p><a href="journalctl.html"><span class="citerefentry"><span class="refentrytitle">journalctl</span>(1)</span></a>, <a href="localectl.html"><span class="citerefentry"><span class="refentrytitle">localectl</span>(1)</span></a>, <a href="loginctl.html"><span class="citerefentry"><span class="refentrytitle">loginctl</span>(1)</span></a>, <a href="machinectl.html"><span class="citerefentry"><span class="refentrytitle">machinectl</span>(1)</span></a>, <a href="systemctl.html"><span class="citerefentry"><span class="refentrytitle">systemctl</span>(1)</span></a>, <a href="systemd-analyze.html"><span class="citerefentry"><span class="refentrytitle">systemd-analyze</span>(1)</span></a>, <a href="timedatectl.html"><span class="citerefentry"><span class="refentrytitle">timedatectl</span>(1)</span></a></p></dd><dt id="$SYSTEMD_LOG_COLOR"><span class="term"><code class="varname">$SYSTEMD_LOG_COLOR</code></span><a class="headerlink" title="Permalink to this term" href="#%24SYSTEMD_LOG_COLOR">¶</a></dt><dd><p><a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>, <a href="systemd-activate.html"><span class="citerefentry"><span class="refentrytitle">systemd-activate</span>(8)</span></a></p></dd><dt id="$SYSTEMD_LOG_LEVEL"><span class="term"><code class="varname">$SYSTEMD_LOG_LEVEL</code></span><a class="headerlink" title="Permalink to this term" href="#%24SYSTEMD_LOG_LEVEL">¶</a></dt><dd><p><a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>, <a href="systemd-activate.html"><span class="citerefentry"><span class="refentrytitle">systemd-activate</span>(8)</span></a></p></dd><dt id="$SYSTEMD_LOG_LOCATION"><span class="term"><code class="varname">$SYSTEMD_LOG_LOCATION</code></span><a class="headerlink" title="Permalink to this term" href="#%24SYSTEMD_LOG_LOCATION">¶</a></dt><dd><p><a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>, <a href="systemd-activate.html"><span class="citerefentry"><span class="refentrytitle">systemd-activate</span>(8)</span></a></p></dd><dt id="$SYSTEMD_LOG_TARGET"><span class="term"><code class="varname">$SYSTEMD_LOG_TARGET</code></span><a class="headerlink" title="Permalink to this term" href="#%24SYSTEMD_LOG_TARGET">¶</a></dt><dd><p><a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>, <a href="systemd-activate.html"><span class="citerefentry"><span class="refentrytitle">systemd-activate</span>(8)</span></a></p></dd><dt id="$SYSTEMD_PAGER"><span class="term"><code class="varname">$SYSTEMD_PAGER</code></span><a class="headerlink" title="Permalink to this term" href="#%24SYSTEMD_PAGER">¶</a></dt><dd><p><a href="journalctl.html"><span class="citerefentry"><span class="refentrytitle">journalctl</span>(1)</span></a>, <a href="localectl.html"><span class="citerefentry"><span class="refentrytitle">localectl</span>(1)</span></a>, <a href="loginctl.html"><span class="citerefentry"><span class="refentrytitle">loginctl</span>(1)</span></a>, <a href="machinectl.html"><span class="citerefentry"><span class="refentrytitle">machinectl</span>(1)</span></a>, <a href="systemctl.html"><span class="citerefentry"><span class="refentrytitle">systemctl</span>(1)</span></a>, <a href="systemd-analyze.html"><span class="citerefentry"><span class="refentrytitle">systemd-analyze</span>(1)</span></a>, <a href="timedatectl.html"><span class="citerefentry"><span class="refentrytitle">timedatectl</span>(1)</span></a></p></dd><dt id="$SYSTEMD_SYSVINIT_PATH"><span class="term"><code class="varname">$SYSTEMD_SYSVINIT_PATH</code></span><a class="headerlink" title="Permalink to this term" href="#%24SYSTEMD_SYSVINIT_PATH">¶</a></dt><dd><p><a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a></p></dd><dt id="$SYSTEMD_SYSVRCND_PATH"><span class="term"><code class="varname">$SYSTEMD_SYSVRCND_PATH</code></span><a class="headerlink" title="Permalink to this term" href="#%24SYSTEMD_SYSVRCND_PATH">¶</a></dt><dd><p><a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a></p></dd><dt id="$SYSTEMD_UNIT_PATH"><span class="term"><code class="varname">$SYSTEMD_UNIT_PATH</code></span><a class="headerlink" title="Permalink to this term" href="#%24SYSTEMD_UNIT_PATH">¶</a></dt><dd><p><a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a></p></dd><dt id="$TERM"><span class="term"><code class="varname">$TERM</code></span><a class="headerlink" title="Permalink to this term" href="#%24TERM">¶</a></dt><dd><p><a href="systemd.exec.html"><span class="citerefentry"><span class="refentrytitle">systemd.exec</span>(5)</span></a></p></dd><dt id="$UDEV_LOG="><span class="term"><code class="varname">$UDEV_LOG=</code></span><a class="headerlink" title="Permalink to this term" href="#%24UDEV_LOG=">¶</a></dt><dd><p><a href="systemd-udevd.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-udevd.service</span>(8)</span></a></p></dd><dt id="$USER"><span class="term"><code class="varname">$USER</code></span><a class="headerlink" title="Permalink to this term" href="#%24USER">¶</a></dt><dd><p><a href="systemd.exec.html"><span class="citerefentry"><span class="refentrytitle">systemd.exec</span>(5)</span></a></p></dd><dt id="$WATCHDOG_PID"><span class="term"><code class="varname">$WATCHDOG_PID</code></span><a class="headerlink" title="Permalink to this term" href="#%24WATCHDOG_PID">¶</a></dt><dd><p><a href="sd_watchdog_enabled.html"><span class="citerefentry"><span class="refentrytitle">sd_watchdog_enabled</span>(3)</span></a></p></dd><dt id="$WATCHDOG_USEC"><span class="term"><code class="varname">$WATCHDOG_USEC</code></span><a class="headerlink" title="Permalink to this term" href="#%24WATCHDOG_USEC">¶</a></dt><dd><p><a href="sd_watchdog_enabled.html"><span class="citerefentry"><span class="refentrytitle">sd_watchdog_enabled</span>(3)</span></a></p></dd><dt id="$XDG_CONFIG_DIRS"><span class="term"><code class="varname">$XDG_CONFIG_DIRS</code></span><a class="headerlink" title="Permalink to this term" href="#%24XDG_CONFIG_DIRS">¶</a></dt><dd><p><a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a></p></dd><dt id="$XDG_CONFIG_HOME"><span class="term"><code class="varname">$XDG_CONFIG_HOME</code></span><a class="headerlink" title="Permalink to this term" href="#%24XDG_CONFIG_HOME">¶</a></dt><dd><p><a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a></p></dd><dt id="$XDG_DATA_DIRS"><span class="term"><code class="varname">$XDG_DATA_DIRS</code></span><a class="headerlink" title="Permalink to this term" href="#%24XDG_DATA_DIRS">¶</a></dt><dd><p><a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a></p></dd><dt id="$XDG_DATA_HOME"><span class="term"><code class="varname">$XDG_DATA_HOME</code></span><a class="headerlink" title="Permalink to this term" href="#%24XDG_DATA_HOME">¶</a></dt><dd><p><a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a></p></dd><dt id="$XDG_RUNTIME_DIR"><span class="term"><code class="varname">$XDG_RUNTIME_DIR</code></span><a class="headerlink" title="Permalink to this term" href="#%24XDG_RUNTIME_DIR">¶</a></dt><dd><p><a href="pam_systemd.html"><span class="citerefentry"><span class="refentrytitle">pam_systemd</span>(8)</span></a>, <a href="systemd.exec.html"><span class="citerefentry"><span class="refentrytitle">systemd.exec</span>(5)</span></a></p></dd><dt id="$XDG_SEAT"><span class="term"><code class="varname">$XDG_SEAT</code></span><a class="headerlink" title="Permalink to this term" href="#%24XDG_SEAT">¶</a></dt><dd><p><a href="pam_systemd.html"><span class="citerefentry"><span class="refentrytitle">pam_systemd</span>(8)</span></a>, <a href="systemd.exec.html"><span class="citerefentry"><span class="refentrytitle">systemd.exec</span>(5)</span></a></p></dd><dt id="$XDG_SESSION_CLASS"><span class="term"><code class="varname">$XDG_SESSION_CLASS</code></span><a class="headerlink" title="Permalink to this term" href="#%24XDG_SESSION_CLASS">¶</a></dt><dd><p><a href="pam_systemd.html"><span class="citerefentry"><span class="refentrytitle">pam_systemd</span>(8)</span></a></p></dd><dt id="$XDG_SESSION_DESKTOP"><span class="term"><code class="varname">$XDG_SESSION_DESKTOP</code></span><a class="headerlink" title="Permalink to this term" href="#%24XDG_SESSION_DESKTOP">¶</a></dt><dd><p><a href="pam_systemd.html"><span class="citerefentry"><span class="refentrytitle">pam_systemd</span>(8)</span></a></p></dd><dt id="$XDG_SESSION_ID"><span class="term"><code class="varname">$XDG_SESSION_ID</code></span><a class="headerlink" title="Permalink to this term" href="#%24XDG_SESSION_ID">¶</a></dt><dd><p><a href="pam_systemd.html"><span class="citerefentry"><span class="refentrytitle">pam_systemd</span>(8)</span></a>, <a href="systemd.exec.html"><span class="citerefentry"><span class="refentrytitle">systemd.exec</span>(5)</span></a></p></dd><dt id="$XDG_SESSION_TYPE"><span class="term"><code class="varname">$XDG_SESSION_TYPE</code></span><a class="headerlink" title="Permalink to this term" href="#%24XDG_SESSION_TYPE">¶</a></dt><dd><p><a href="pam_systemd.html"><span class="citerefentry"><span class="refentrytitle">pam_systemd</span>(8)</span></a></p></dd><dt id="$XDG_VTNR"><span class="term"><code class="varname">$XDG_VTNR</code></span><a class="headerlink" title="Permalink to this term" href="#%24XDG_VTNR">¶</a></dt><dd><p><a href="pam_systemd.html"><span class="citerefentry"><span class="refentrytitle">pam_systemd</span>(8)</span></a>, <a href="systemd.exec.html"><span class="citerefentry"><span class="refentrytitle">systemd.exec</span>(5)</span></a></p></dd></dl></div></div><div class="refsect1"><a name="idm214182177312"></a><h2 id="UDEV directives">UDEV directives<a class="headerlink" title="Permalink to this headline" href="#UDEV%20directives">¶</a></h2><p>Directives for configuring systemd units through the
+                udev database.</p><div class="variablelist"><a name="udev-directives"></a><dl class="variablelist"><dt id="$$"><span class="term"><code class="option">$$</code></span><a class="headerlink" title="Permalink to this term" href="#%24%24">¶</a></dt><dd><p><a href="udev.html"><span class="citerefentry"><span class="refentrytitle">udev</span>(7)</span></a></p></dd><dt id="$attr{file}"><span class="term"><code class="option">$attr{<em class="replaceable"><code>file</code></em>}</code></span><a class="headerlink" title="Permalink to this term" href="#%24attr%7Bfile%7D">¶</a></dt><dd><p><a href="udev.html"><span class="citerefentry"><span class="refentrytitle">udev</span>(7)</span></a></p></dd><dt id="$devnode"><span class="term"><code class="option">$devnode</code></span><a class="headerlink" title="Permalink to this term" href="#%24devnode">¶</a></dt><dd><p><a href="udev.html"><span class="citerefentry"><span class="refentrytitle">udev</span>(7)</span></a></p></dd><dt id="$devpath"><span class="term"><code class="option">$devpath</code></span><a class="headerlink" title="Permalink to this term" href="#%24devpath">¶</a></dt><dd><p><a href="udev.html"><span class="citerefentry"><span class="refentrytitle">udev</span>(7)</span></a></p></dd><dt id="$driver"><span class="term"><code class="option">$driver</code></span><a class="headerlink" title="Permalink to this term" href="#%24driver">¶</a></dt><dd><p><a href="udev.html"><span class="citerefentry"><span class="refentrytitle">udev</span>(7)</span></a></p></dd><dt id="$env{key}"><span class="term"><code class="option">$env{<em class="replaceable"><code>key</code></em>}</code></span><a class="headerlink" title="Permalink to this term" href="#%24env%7Bkey%7D">¶</a></dt><dd><p><a href="udev.html"><span class="citerefentry"><span class="refentrytitle">udev</span>(7)</span></a></p></dd><dt id="$id"><span class="term"><code class="option">$id</code></span><a class="headerlink" title="Permalink to this term" href="#%24id">¶</a></dt><dd><p><a href="udev.html"><span class="citerefentry"><span class="refentrytitle">udev</span>(7)</span></a></p></dd><dt id="$kernel"><span class="term"><code class="option">$kernel</code></span><a class="headerlink" title="Permalink to this term" href="#%24kernel">¶</a></dt><dd><p><a href="udev.html"><span class="citerefentry"><span class="refentrytitle">udev</span>(7)</span></a></p></dd><dt id="$links"><span class="term"><code class="option">$links</code></span><a class="headerlink" title="Permalink to this term" href="#%24links">¶</a></dt><dd><p><a href="udev.html"><span class="citerefentry"><span class="refentrytitle">udev</span>(7)</span></a></p></dd><dt id="$major"><span class="term"><code class="option">$major</code></span><a class="headerlink" title="Permalink to this term" href="#%24major">¶</a></dt><dd><p><a href="udev.html"><span class="citerefentry"><span class="refentrytitle">udev</span>(7)</span></a></p></dd><dt id="$minor"><span class="term"><code class="option">$minor</code></span><a class="headerlink" title="Permalink to this term" href="#%24minor">¶</a></dt><dd><p><a href="udev.html"><span class="citerefentry"><span class="refentrytitle">udev</span>(7)</span></a></p></dd><dt id="$name"><span class="term"><code class="option">$name</code></span><a class="headerlink" title="Permalink to this term" href="#%24name">¶</a></dt><dd><p><a href="udev.html"><span class="citerefentry"><span class="refentrytitle">udev</span>(7)</span></a></p></dd><dt id="$number"><span class="term"><code class="option">$number</code></span><a class="headerlink" title="Permalink to this term" href="#%24number">¶</a></dt><dd><p><a href="udev.html"><span class="citerefentry"><span class="refentrytitle">udev</span>(7)</span></a></p></dd><dt id="$parent"><span class="term"><code class="option">$parent</code></span><a class="headerlink" title="Permalink to this term" href="#%24parent">¶</a></dt><dd><p><a href="udev.html"><span class="citerefentry"><span class="refentrytitle">udev</span>(7)</span></a></p></dd><dt id="$result"><span class="term"><code class="option">$result</code></span><a class="headerlink" title="Permalink to this term" href="#%24result">¶</a></dt><dd><p><a href="udev.html"><span class="citerefentry"><span class="refentrytitle">udev</span>(7)</span></a></p></dd><dt id="$root"><span class="term"><code class="option">$root</code></span><a class="headerlink" title="Permalink to this term" href="#%24root">¶</a></dt><dd><p><a href="udev.html"><span class="citerefentry"><span class="refentrytitle">udev</span>(7)</span></a></p></dd><dt id="$sys"><span class="term"><code class="option">$sys</code></span><a class="headerlink" title="Permalink to this term" href="#%24sys">¶</a></dt><dd><p><a href="udev.html"><span class="citerefentry"><span class="refentrytitle">udev</span>(7)</span></a></p></dd><dt id="%%"><span class="term"><code class="option">%%</code></span><a class="headerlink" title="Permalink to this term" href="#%%">¶</a></dt><dd><p><a href="udev.html"><span class="citerefentry"><span class="refentrytitle">udev</span>(7)</span></a></p></dd><dt id="%E{key}"><span class="term"><code class="option">%E{<em class="replaceable"><code>key</code></em>}</code></span><a class="headerlink" title="Permalink to this term" href="#%E%7Bkey%7D">¶</a></dt><dd><p><a href="udev.html"><span class="citerefentry"><span class="refentrytitle">udev</span>(7)</span></a></p></dd><dt id="%M"><span class="term"><code class="option">%M</code></span><a class="headerlink" title="Permalink to this term" href="#%M">¶</a></dt><dd><p><a href="udev.html"><span class="citerefentry"><span class="refentrytitle">udev</span>(7)</span></a></p></dd><dt id="%N"><span class="term"><code class="option">%N</code></span><a class="headerlink" title="Permalink to this term" href="#%N">¶</a></dt><dd><p><a href="udev.html"><span class="citerefentry"><span class="refentrytitle">udev</span>(7)</span></a></p></dd><dt id="%P"><span class="term"><code class="option">%P</code></span><a class="headerlink" title="Permalink to this term" href="#%P">¶</a></dt><dd><p><a href="udev.html"><span class="citerefentry"><span class="refentrytitle">udev</span>(7)</span></a></p></dd><dt id="%S"><span class="term"><code class="option">%S</code></span><a class="headerlink" title="Permalink to this term" href="#%S">¶</a></dt><dd><p><a href="udev.html"><span class="citerefentry"><span class="refentrytitle">udev</span>(7)</span></a></p></dd><dt id="%b"><span class="term"><code class="option">%b</code></span><a class="headerlink" title="Permalink to this term" href="#%b">¶</a></dt><dd><p><a href="udev.html"><span class="citerefentry"><span class="refentrytitle">udev</span>(7)</span></a></p></dd><dt id="%c"><span class="term"><code class="option">%c</code></span><a class="headerlink" title="Permalink to this term" href="#%c">¶</a></dt><dd><p><a href="udev.html"><span class="citerefentry"><span class="refentrytitle">udev</span>(7)</span></a></p></dd><dt id="%k"><span class="term"><code class="option">%k</code></span><a class="headerlink" title="Permalink to this term" href="#%k">¶</a></dt><dd><p><a href="udev.html"><span class="citerefentry"><span class="refentrytitle">udev</span>(7)</span></a></p></dd><dt id="%m"><span class="term"><code class="option">%m</code></span><a class="headerlink" title="Permalink to this term" href="#%m">¶</a></dt><dd><p><a href="udev.html"><span class="citerefentry"><span class="refentrytitle">udev</span>(7)</span></a></p></dd><dt id="%n"><span class="term"><code class="option">%n</code></span><a class="headerlink" title="Permalink to this term" href="#%n">¶</a></dt><dd><p><a href="udev.html"><span class="citerefentry"><span class="refentrytitle">udev</span>(7)</span></a></p></dd><dt id="%p"><span class="term"><code class="option">%p</code></span><a class="headerlink" title="Permalink to this term" href="#%p">¶</a></dt><dd><p><a href="udev.html"><span class="citerefentry"><span class="refentrytitle">udev</span>(7)</span></a></p></dd><dt id="%r"><span class="term"><code class="option">%r</code></span><a class="headerlink" title="Permalink to this term" href="#%r">¶</a></dt><dd><p><a href="udev.html"><span class="citerefentry"><span class="refentrytitle">udev</span>(7)</span></a></p></dd><dt id="%s{file}"><span class="term"><code class="option">%s{<em class="replaceable"><code>file</code></em>}</code></span><a class="headerlink" title="Permalink to this term" href="#%s%7Bfile%7D">¶</a></dt><dd><p><a href="udev.html"><span class="citerefentry"><span class="refentrytitle">udev</span>(7)</span></a></p></dd><dt id="ACTION"><span class="term"><code class="varname">ACTION</code></span><a class="headerlink" title="Permalink to this term" href="#ACTION">¶</a></dt><dd><p><a href="udev.html"><span class="citerefentry"><span class="refentrytitle">udev</span>(7)</span></a></p></dd><dt id="ATTRS{filename}"><span class="term"><code class="varname">ATTRS{<em class="replaceable"><code>filename</code></em>}</code></span><a class="headerlink" title="Permalink to this term" href="#ATTRS%7Bfilename%7D">¶</a></dt><dd><p><a href="udev.html"><span class="citerefentry"><span class="refentrytitle">udev</span>(7)</span></a></p></dd><dt id="ATTR{filename}"><span class="term"><code class="varname">ATTR{<em class="replaceable"><code>filename</code></em>}</code></span><a class="headerlink" title="Permalink to this term" href="#ATTR%7Bfilename%7D">¶</a></dt><dd><p><a href="udev.html"><span class="citerefentry"><span class="refentrytitle">udev</span>(7)</span></a></p></dd><dt id="DEVPATH"><span class="term"><code class="varname">DEVPATH</code></span><a class="headerlink" title="Permalink to this term" href="#DEVPATH">¶</a></dt><dd><p><a href="udev.html"><span class="citerefentry"><span class="refentrytitle">udev</span>(7)</span></a></p></dd><dt id="DRIVER"><span class="term"><code class="varname">DRIVER</code></span><a class="headerlink" title="Permalink to this term" href="#DRIVER">¶</a></dt><dd><p><a href="udev.html"><span class="citerefentry"><span class="refentrytitle">udev</span>(7)</span></a></p></dd><dt id="DRIVERS"><span class="term"><code class="varname">DRIVERS</code></span><a class="headerlink" title="Permalink to this term" href="#DRIVERS">¶</a></dt><dd><p><a href="udev.html"><span class="citerefentry"><span class="refentrytitle">udev</span>(7)</span></a></p></dd><dt id="ENV{key}"><span class="term"><code class="varname">ENV{<em class="replaceable"><code>key</code></em>}</code></span><a class="headerlink" title="Permalink to this term" href="#ENV%7Bkey%7D">¶</a></dt><dd><p><a href="udev.html"><span class="citerefentry"><span class="refentrytitle">udev</span>(7)</span></a></p></dd><dt id="GOTO"><span class="term"><code class="varname">GOTO</code></span><a class="headerlink" title="Permalink to this term" href="#GOTO">¶</a></dt><dd><p><a href="udev.html"><span class="citerefentry"><span class="refentrytitle">udev</span>(7)</span></a></p></dd><dt id="GROUP"><span class="term"><code class="varname">GROUP</code></span><a class="headerlink" title="Permalink to this term" href="#GROUP">¶</a></dt><dd><p><a href="udev.html"><span class="citerefentry"><span class="refentrytitle">udev</span>(7)</span></a></p></dd><dt id="ID_MODEL="><span class="term"><code class="varname">ID_MODEL=</code></span><a class="headerlink" title="Permalink to this term" href="#ID_MODEL=">¶</a></dt><dd><p><a href="systemd.device.html"><span class="citerefentry"><span class="refentrytitle">systemd.device</span>(5)</span></a></p></dd><dt id="ID_MODEL_FROM_DATABASE="><span class="term"><code class="varname">ID_MODEL_FROM_DATABASE=</code></span><a class="headerlink" title="Permalink to this term" href="#ID_MODEL_FROM_DATABASE=">¶</a></dt><dd><p><a href="systemd.device.html"><span class="citerefentry"><span class="refentrytitle">systemd.device</span>(5)</span></a></p></dd><dt id="IMPORT{type}"><span class="term"><code class="varname">IMPORT{<em class="replaceable"><code>type</code></em>}</code></span><a class="headerlink" title="Permalink to this term" href="#IMPORT%7Btype%7D">¶</a></dt><dd><p><a href="udev.html"><span class="citerefentry"><span class="refentrytitle">udev</span>(7)</span></a></p></dd><dt id="KERNEL"><span class="term"><code class="varname">KERNEL</code></span><a class="headerlink" title="Permalink to this term" href="#KERNEL">¶</a></dt><dd><p><a href="udev.html"><span class="citerefentry"><span class="refentrytitle">udev</span>(7)</span></a></p></dd><dt id="KERNELS"><span class="term"><code class="varname">KERNELS</code></span><a class="headerlink" title="Permalink to this term" href="#KERNELS">¶</a></dt><dd><p><a href="udev.html"><span class="citerefentry"><span class="refentrytitle">udev</span>(7)</span></a></p></dd><dt id="LABEL"><span class="term"><code class="varname">LABEL</code></span><a class="headerlink" title="Permalink to this term" href="#LABEL">¶</a></dt><dd><p><a href="udev.html"><span class="citerefentry"><span class="refentrytitle">udev</span>(7)</span></a></p></dd><dt id="MODE"><span class="term"><code class="varname">MODE</code></span><a class="headerlink" title="Permalink to this term" href="#MODE">¶</a></dt><dd><p><a href="udev.html"><span class="citerefentry"><span class="refentrytitle">udev</span>(7)</span></a></p></dd><dt id="NAME"><span class="term"><code class="varname">NAME</code></span><a class="headerlink" title="Permalink to this term" href="#NAME">¶</a></dt><dd><p><a href="udev.html"><span class="citerefentry"><span class="refentrytitle">udev</span>(7)</span></a></p></dd><dt id="OPTIONS"><span class="term"><code class="varname">OPTIONS</code></span><a class="headerlink" title="Permalink to this term" href="#OPTIONS">¶</a></dt><dd><p><a href="udev.html"><span class="citerefentry"><span class="refentrytitle">udev</span>(7)</span></a></p></dd><dt id="OWNER"><span class="term"><code class="varname">OWNER</code></span><a class="headerlink" title="Permalink to this term" href="#OWNER">¶</a></dt><dd><p><a href="udev.html"><span class="citerefentry"><span class="refentrytitle">udev</span>(7)</span></a></p></dd><dt id="PROGRAM"><span class="term"><code class="varname">PROGRAM</code></span><a class="headerlink" title="Permalink to this term" href="#PROGRAM">¶</a></dt><dd><p><a href="udev.html"><span class="citerefentry"><span class="refentrytitle">udev</span>(7)</span></a></p></dd><dt id="RESULT"><span class="term"><code class="varname">RESULT</code></span><a class="headerlink" title="Permalink to this term" href="#RESULT">¶</a></dt><dd><p><a href="udev.html"><span class="citerefentry"><span class="refentrytitle">udev</span>(7)</span></a></p></dd><dt id="RUN{type}"><span class="term"><code class="varname">RUN{<em class="replaceable"><code>type</code></em>}</code></span><a class="headerlink" title="Permalink to this term" href="#RUN%7Btype%7D">¶</a></dt><dd><p><a href="udev.html"><span class="citerefentry"><span class="refentrytitle">udev</span>(7)</span></a></p></dd><dt id="SECLABEL{module}"><span class="term"><code class="varname">SECLABEL{<em class="replaceable"><code>module</code></em>}</code></span><a class="headerlink" title="Permalink to this term" href="#SECLABEL%7Bmodule%7D">¶</a></dt><dd><p><a href="udev.html"><span class="citerefentry"><span class="refentrytitle">udev</span>(7)</span></a></p></dd><dt id="SUBSYSTEM"><span class="term"><code class="varname">SUBSYSTEM</code></span><a class="headerlink" title="Permalink to this term" href="#SUBSYSTEM">¶</a></dt><dd><p><a href="udev.html"><span class="citerefentry"><span class="refentrytitle">udev</span>(7)</span></a></p></dd><dt id="SUBSYSTEMS"><span class="term"><code class="varname">SUBSYSTEMS</code></span><a class="headerlink" title="Permalink to this term" href="#SUBSYSTEMS">¶</a></dt><dd><p><a href="udev.html"><span class="citerefentry"><span class="refentrytitle">udev</span>(7)</span></a></p></dd><dt id="SYMLINK"><span class="term"><code class="varname">SYMLINK</code></span><a class="headerlink" title="Permalink to this term" href="#SYMLINK">¶</a></dt><dd><p><a href="udev.html"><span class="citerefentry"><span class="refentrytitle">udev</span>(7)</span></a></p></dd><dt id="SYSTEMD_ALIAS="><span class="term"><code class="varname">SYSTEMD_ALIAS=</code></span><a class="headerlink" title="Permalink to this term" href="#SYSTEMD_ALIAS=">¶</a></dt><dd><p><a href="systemd.device.html"><span class="citerefentry"><span class="refentrytitle">systemd.device</span>(5)</span></a></p></dd><dt id="SYSTEMD_READY="><span class="term"><code class="varname">SYSTEMD_READY=</code></span><a class="headerlink" title="Permalink to this term" href="#SYSTEMD_READY=">¶</a></dt><dd><p><a href="systemd.device.html"><span class="citerefentry"><span class="refentrytitle">systemd.device</span>(5)</span></a></p></dd><dt id="SYSTEMD_USER_WANTS="><span class="term"><code class="varname">SYSTEMD_USER_WANTS=</code></span><a class="headerlink" title="Permalink to this term" href="#SYSTEMD_USER_WANTS=">¶</a></dt><dd><p><a href="systemd.device.html"><span class="citerefentry"><span class="refentrytitle">systemd.device</span>(5)</span></a></p></dd><dt id="SYSTEMD_WANTS="><span class="term"><code class="varname">SYSTEMD_WANTS=</code></span><a class="headerlink" title="Permalink to this term" href="#SYSTEMD_WANTS=">¶</a></dt><dd><p><a href="systemd.device.html"><span class="citerefentry"><span class="refentrytitle">systemd.device</span>(5)</span></a></p></dd><dt id="TAG"><span class="term"><code class="varname">TAG</code></span><a class="headerlink" title="Permalink to this term" href="#TAG">¶</a></dt><dd><p><a href="udev.html"><span class="citerefentry"><span class="refentrytitle">udev</span>(7)</span></a></p></dd><dt id="TAGS"><span class="term"><code class="varname">TAGS</code></span><a class="headerlink" title="Permalink to this term" href="#TAGS">¶</a></dt><dd><p><a href="udev.html"><span class="citerefentry"><span class="refentrytitle">udev</span>(7)</span></a></p></dd><dt id="TEST{octal mode mask}"><span class="term"><code class="varname">TEST{<em class="replaceable"><code>octal mode mask</code></em>}</code></span><a class="headerlink" title="Permalink to this term" href="#TEST%7Boctal%20mode%20mask%7D">¶</a></dt><dd><p><a href="udev.html"><span class="citerefentry"><span class="refentrytitle">udev</span>(7)</span></a></p></dd><dt id="WAIT_FOR"><span class="term"><code class="varname">WAIT_FOR</code></span><a class="headerlink" title="Permalink to this term" href="#WAIT_FOR">¶</a></dt><dd><p><a href="udev.html"><span class="citerefentry"><span class="refentrytitle">udev</span>(7)</span></a></p></dd><dt id="event_timeout="><span class="term"><code class="option">event_timeout=</code></span><a class="headerlink" title="Permalink to this term" href="#event_timeout=">¶</a></dt><dd><p><a href="udev.html"><span class="citerefentry"><span class="refentrytitle">udev</span>(7)</span></a></p></dd><dt id="link_priority="><span class="term"><code class="option">link_priority=</code></span><a class="headerlink" title="Permalink to this term" href="#link_priority=">¶</a></dt><dd><p><a href="udev.html"><span class="citerefentry"><span class="refentrytitle">udev</span>(7)</span></a></p></dd><dt id="nowatch"><span class="term"><code class="option">nowatch</code></span><a class="headerlink" title="Permalink to this term" href="#nowatch">¶</a></dt><dd><p><a href="udev.html"><span class="citerefentry"><span class="refentrytitle">udev</span>(7)</span></a></p></dd><dt id="static_node="><span class="term"><code class="option">static_node=</code></span><a class="headerlink" title="Permalink to this term" href="#static_node=">¶</a></dt><dd><p><a href="udev.html"><span class="citerefentry"><span class="refentrytitle">udev</span>(7)</span></a></p></dd><dt id="string_escape="><span class="term"><code class="option">string_escape=</code></span><a class="headerlink" title="Permalink to this term" href="#string_escape=">¶</a></dt><dd><p><a href="udev.html"><span class="citerefentry"><span class="refentrytitle">udev</span>(7)</span></a></p></dd><dt id="watch"><span class="term"><code class="option">watch</code></span><a class="headerlink" title="Permalink to this term" href="#watch">¶</a></dt><dd><p><a href="udev.html"><span class="citerefentry"><span class="refentrytitle">udev</span>(7)</span></a></p></dd></dl></div></div><div class="refsect1"><a name="idm214182057584"></a><h2 id="Network directives">Network directives<a class="headerlink" title="Permalink to this headline" href="#Network%20directives">¶</a></h2><p>Directives for configuring network links through the
                 net-setup-link udev builtin and networks through
-                systemd-networkd.</p><div class="variablelist"><a name="network-directives"></a><dl class="variablelist"><dt id="Address="><span class="term"><code class="varname">Address=</code></span><a class="headerlink" title="Permalink to this term" href="#Address=">¶</a></dt><dd><p><a href="systemd.network.html"><span class="citerefentry"><span class="refentrytitle">systemd.network</span>(5)</span></a></p></dd><dt id="Alias="><span class="term"><code class="varname">Alias=</code></span><a class="headerlink" title="Permalink to this term" href="#Alias=">¶</a></dt><dd><p><a href="systemd.link.html"><span class="citerefentry"><span class="refentrytitle">systemd.link</span>(5)</span></a></p></dd><dt id="Architecture="><span class="term"><code class="varname">Architecture=</code></span><a class="headerlink" title="Permalink to this term" href="#Architecture=">¶</a></dt><dd><p><a href="systemd.link.html"><span class="citerefentry"><span class="refentrytitle">systemd.link</span>(5)</span></a>, <a href="systemd.netdev.html"><span class="citerefentry"><span class="refentrytitle">systemd.netdev</span>(5)</span></a>, <a href="systemd.network.html"><span class="citerefentry"><span class="refentrytitle">systemd.network</span>(5)</span></a></p></dd><dt id="BitsPerSecond="><span class="term"><code class="varname">BitsPerSecond=</code></span><a class="headerlink" title="Permalink to this term" href="#BitsPerSecond=">¶</a></dt><dd><p><a href="systemd.link.html"><span class="citerefentry"><span class="refentrytitle">systemd.link</span>(5)</span></a></p></dd><dt id="Bond="><span class="term"><code class="varname">Bond=</code></span><a class="headerlink" title="Permalink to this term" href="#Bond=">¶</a></dt><dd><p><a href="systemd.network.html"><span class="citerefentry"><span class="refentrytitle">systemd.network</span>(5)</span></a></p></dd><dt id="Bridge="><span class="term"><code class="varname">Bridge=</code></span><a class="headerlink" title="Permalink to this term" href="#Bridge=">¶</a></dt><dd><p><a href="systemd.network.html"><span class="citerefentry"><span class="refentrytitle">systemd.network</span>(5)</span></a></p></dd><dt id="Broadcast="><span class="term"><code class="varname">Broadcast=</code></span><a class="headerlink" title="Permalink to this term" href="#Broadcast=">¶</a></dt><dd><p><a href="systemd.network.html"><span class="citerefentry"><span class="refentrytitle">systemd.network</span>(5)</span></a></p></dd><dt id="CriticalConnection="><span class="term"><code class="varname">CriticalConnection=</code></span><a class="headerlink" title="Permalink to this term" href="#CriticalConnection=">¶</a></dt><dd><p><a href="systemd.network.html"><span class="citerefentry"><span class="refentrytitle">systemd.network</span>(5)</span></a></p></dd><dt id="DHCP="><span class="term"><code class="varname">DHCP=</code></span><a class="headerlink" title="Permalink to this term" href="#DHCP=">¶</a></dt><dd><p><a href="systemd.network.html"><span class="citerefentry"><span class="refentrytitle">systemd.network</span>(5)</span></a></p></dd><dt id="DNS="><span class="term"><code class="varname">DNS=</code></span><a class="headerlink" title="Permalink to this term" href="#DNS=">¶</a></dt><dd><p><a href="resolved.conf.html"><span class="citerefentry"><span class="refentrytitle">resolved.conf</span>(5)</span></a>, <a href="systemd.network.html"><span class="citerefentry"><span class="refentrytitle">systemd.network</span>(5)</span></a></p></dd><dt id="Description="><span class="term"><code class="varname">Description=</code></span><a class="headerlink" title="Permalink to this term" href="#Description=">¶</a></dt><dd><p><a href="systemd.link.html"><span class="citerefentry"><span class="refentrytitle">systemd.link</span>(5)</span></a>, <a href="systemd.network.html"><span class="citerefentry"><span class="refentrytitle">systemd.network</span>(5)</span></a></p></dd><dt id="Destination="><span class="term"><code class="varname">Destination=</code></span><a class="headerlink" title="Permalink to this term" href="#Destination=">¶</a></dt><dd><p><a href="systemd.network.html"><span class="citerefentry"><span class="refentrytitle">systemd.network</span>(5)</span></a></p></dd><dt id="Driver="><span class="term"><code class="varname">Driver=</code></span><a class="headerlink" title="Permalink to this term" href="#Driver=">¶</a></dt><dd><p><a href="systemd.link.html"><span class="citerefentry"><span class="refentrytitle">systemd.link</span>(5)</span></a>, <a href="systemd.network.html"><span class="citerefentry"><span class="refentrytitle">systemd.network</span>(5)</span></a></p></dd><dt id="Duplex="><span class="term"><code class="varname">Duplex=</code></span><a class="headerlink" title="Permalink to this term" href="#Duplex=">¶</a></dt><dd><p><a href="systemd.link.html"><span class="citerefentry"><span class="refentrytitle">systemd.link</span>(5)</span></a></p></dd><dt id="Gateway="><span class="term"><code class="varname">Gateway=</code></span><a class="headerlink" title="Permalink to this term" href="#Gateway=">¶</a></dt><dd><p><a href="systemd.network.html"><span class="citerefentry"><span class="refentrytitle">systemd.network</span>(5)</span></a></p></dd><dt id="Host="><span class="term"><code class="varname">Host=</code></span><a class="headerlink" title="Permalink to this term" href="#Host=">¶</a></dt><dd><p><a href="systemd.link.html"><span class="citerefentry"><span class="refentrytitle">systemd.link</span>(5)</span></a>, <a href="systemd.netdev.html"><span class="citerefentry"><span class="refentrytitle">systemd.netdev</span>(5)</span></a>, <a href="systemd.network.html"><span class="citerefentry"><span class="refentrytitle">systemd.network</span>(5)</span></a></p></dd><dt id="IPv4LL="><span class="term"><code class="varname">IPv4LL=</code></span><a class="headerlink" title="Permalink to this term" href="#IPv4LL=">¶</a></dt><dd><p><a href="systemd.network.html"><span class="citerefentry"><span class="refentrytitle">systemd.network</span>(5)</span></a></p></dd><dt id="Id="><span class="term"><code class="varname">Id=</code></span><a class="headerlink" title="Permalink to this term" href="#Id=">¶</a></dt><dd><p><a href="systemd.netdev.html"><span class="citerefentry"><span class="refentrytitle">systemd.netdev</span>(5)</span></a></p></dd><dt id="KernelCommandLine="><span class="term"><code class="varname">KernelCommandLine=</code></span><a class="headerlink" title="Permalink to this term" href="#KernelCommandLine=">¶</a></dt><dd><p><a href="systemd.link.html"><span class="citerefentry"><span class="refentrytitle">systemd.link</span>(5)</span></a>, <a href="systemd.netdev.html"><span class="citerefentry"><span class="refentrytitle">systemd.netdev</span>(5)</span></a>, <a href="systemd.network.html"><span class="citerefentry"><span class="refentrytitle">systemd.network</span>(5)</span></a></p></dd><dt id="Kind="><span class="term"><code class="varname">Kind=</code></span><a class="headerlink" title="Permalink to this term" href="#Kind=">¶</a></dt><dd><p><a href="systemd.netdev.html"><span class="citerefentry"><span class="refentrytitle">systemd.netdev</span>(5)</span></a></p></dd><dt id="Label="><span class="term"><code class="varname">Label=</code></span><a class="headerlink" title="Permalink to this term" href="#Label=">¶</a></dt><dd><p><a href="systemd.network.html"><span class="citerefentry"><span class="refentrytitle">systemd.network</span>(5)</span></a></p></dd><dt id="MACAddress="><span class="term"><code class="varname">MACAddress=</code></span><a class="headerlink" title="Permalink to this term" href="#MACAddress=">¶</a></dt><dd><p><a href="systemd.link.html"><span class="citerefentry"><span class="refentrytitle">systemd.link</span>(5)</span></a>, <a href="systemd.network.html"><span class="citerefentry"><span class="refentrytitle">systemd.network</span>(5)</span></a></p></dd><dt id="MACAddressPolicy="><span class="term"><code class="varname">MACAddressPolicy=</code></span><a class="headerlink" title="Permalink to this term" href="#MACAddressPolicy=">¶</a></dt><dd><p><a href="systemd.link.html"><span class="citerefentry"><span class="refentrytitle">systemd.link</span>(5)</span></a></p></dd><dt id="MACVLAN="><span class="term"><code class="varname">MACVLAN=</code></span><a class="headerlink" title="Permalink to this term" href="#MACVLAN=">¶</a></dt><dd><p><a href="systemd.network.html"><span class="citerefentry"><span class="refentrytitle">systemd.network</span>(5)</span></a></p></dd><dt id="MTUBytes="><span class="term"><code class="varname">MTUBytes=</code></span><a class="headerlink" title="Permalink to this term" href="#MTUBytes=">¶</a></dt><dd><p><a href="systemd.link.html"><span class="citerefentry"><span class="refentrytitle">systemd.link</span>(5)</span></a></p></dd><dt id="Mode="><span class="term"><code class="varname">Mode=</code></span><a class="headerlink" title="Permalink to this term" href="#Mode=">¶</a></dt><dd><p><a href="systemd.netdev.html"><span class="citerefentry"><span class="refentrytitle">systemd.netdev</span>(5)</span></a></p></dd><dt id="Name="><span class="term"><code class="varname">Name=</code></span><a class="headerlink" title="Permalink to this term" href="#Name=">¶</a></dt><dd><p><a href="systemd.link.html"><span class="citerefentry"><span class="refentrytitle">systemd.link</span>(5)</span></a>, <a href="systemd.netdev.html"><span class="citerefentry"><span class="refentrytitle">systemd.netdev</span>(5)</span></a>, <a href="systemd.network.html"><span class="citerefentry"><span class="refentrytitle">systemd.network</span>(5)</span></a></p></dd><dt id="NamePolicy="><span class="term"><code class="varname">NamePolicy=</code></span><a class="headerlink" title="Permalink to this term" href="#NamePolicy=">¶</a></dt><dd><p><a href="systemd.link.html"><span class="citerefentry"><span class="refentrytitle">systemd.link</span>(5)</span></a></p></dd><dt id="Path="><span class="term"><code class="varname">Path=</code></span><a class="headerlink" title="Permalink to this term" href="#Path=">¶</a></dt><dd><p><a href="systemd.link.html"><span class="citerefentry"><span class="refentrytitle">systemd.link</span>(5)</span></a>, <a href="systemd.network.html"><span class="citerefentry"><span class="refentrytitle">systemd.network</span>(5)</span></a></p></dd><dt id="Type="><span class="term"><code class="varname">Type=</code></span><a class="headerlink" title="Permalink to this term" href="#Type=">¶</a></dt><dd><p><a href="systemd.link.html"><span class="citerefentry"><span class="refentrytitle">systemd.link</span>(5)</span></a>, <a href="systemd.network.html"><span class="citerefentry"><span class="refentrytitle">systemd.network</span>(5)</span></a></p></dd><dt id="UseDNS="><span class="term"><code class="varname">UseDNS=</code></span><a class="headerlink" title="Permalink to this term" href="#UseDNS=">¶</a></dt><dd><p><a href="systemd.network.html"><span class="citerefentry"><span class="refentrytitle">systemd.network</span>(5)</span></a></p></dd><dt id="UseHostname="><span class="term"><code class="varname">UseHostname=</code></span><a class="headerlink" title="Permalink to this term" href="#UseHostname=">¶</a></dt><dd><p><a href="systemd.network.html"><span class="citerefentry"><span class="refentrytitle">systemd.network</span>(5)</span></a></p></dd><dt id="UseMTU="><span class="term"><code class="varname">UseMTU=</code></span><a class="headerlink" title="Permalink to this term" href="#UseMTU=">¶</a></dt><dd><p><a href="systemd.network.html"><span class="citerefentry"><span class="refentrytitle">systemd.network</span>(5)</span></a></p></dd><dt id="VLAN="><span class="term"><code class="varname">VLAN=</code></span><a class="headerlink" title="Permalink to this term" href="#VLAN=">¶</a></dt><dd><p><a href="systemd.network.html"><span class="citerefentry"><span class="refentrytitle">systemd.network</span>(5)</span></a></p></dd><dt id="Virtualization="><span class="term"><code class="varname">Virtualization=</code></span><a class="headerlink" title="Permalink to this term" href="#Virtualization=">¶</a></dt><dd><p><a href="systemd.link.html"><span class="citerefentry"><span class="refentrytitle">systemd.link</span>(5)</span></a>, <a href="systemd.netdev.html"><span class="citerefentry"><span class="refentrytitle">systemd.netdev</span>(5)</span></a>, <a href="systemd.network.html"><span class="citerefentry"><span class="refentrytitle">systemd.network</span>(5)</span></a></p></dd><dt id="WakeOnLan="><span class="term"><code class="varname">WakeOnLan=</code></span><a class="headerlink" title="Permalink to this term" href="#WakeOnLan=">¶</a></dt><dd><p><a href="systemd.link.html"><span class="citerefentry"><span class="refentrytitle">systemd.link</span>(5)</span></a></p></dd></dl></div></div><div class="refsect1"><a name="idm214186431328"></a><h2 id="Journal fields">Journal fields<a class="headerlink" title="Permalink to this headline" href="#Journal%20fields">¶</a></h2><p>Fields in the journal events with a well known meaning.</p><div class="variablelist"><a name="journal-directives"></a><dl class="variablelist"><dt id="CODE_FILE="><span class="term"><code class="varname">CODE_FILE=</code></span><a class="headerlink" title="Permalink to this term" href="#CODE_FILE=">¶</a></dt><dd><p><a href="systemd.journal-fields.html"><span class="citerefentry"><span class="refentrytitle">systemd.journal-fields</span>(7)</span></a></p></dd><dt id="CODE_FUNC="><span class="term"><code class="varname">CODE_FUNC=</code></span><a class="headerlink" title="Permalink to this term" href="#CODE_FUNC=">¶</a></dt><dd><p><a href="systemd.journal-fields.html"><span class="citerefentry"><span class="refentrytitle">systemd.journal-fields</span>(7)</span></a></p></dd><dt id="CODE_LINE="><span class="term"><code class="varname">CODE_LINE=</code></span><a class="headerlink" title="Permalink to this term" href="#CODE_LINE=">¶</a></dt><dd><p><a href="systemd.journal-fields.html"><span class="citerefentry"><span class="refentrytitle">systemd.journal-fields</span>(7)</span></a></p></dd><dt id="COREDUMP_UNIT="><span class="term"><code class="varname">COREDUMP_UNIT=</code></span><a class="headerlink" title="Permalink to this term" href="#COREDUMP_UNIT=">¶</a></dt><dd><p><a href="systemd.journal-fields.html"><span class="citerefentry"><span class="refentrytitle">systemd.journal-fields</span>(7)</span></a></p></dd><dt id="COREDUMP_USER_UNIT="><span class="term"><code class="varname">COREDUMP_USER_UNIT=</code></span><a class="headerlink" title="Permalink to this term" href="#COREDUMP_USER_UNIT=">¶</a></dt><dd><p><a href="systemd.journal-fields.html"><span class="citerefentry"><span class="refentrytitle">systemd.journal-fields</span>(7)</span></a></p></dd><dt id="ERRNO="><span class="term"><code class="varname">ERRNO=</code></span><a class="headerlink" title="Permalink to this term" href="#ERRNO=">¶</a></dt><dd><p><a href="systemd.journal-fields.html"><span class="citerefentry"><span class="refentrytitle">systemd.journal-fields</span>(7)</span></a></p></dd><dt id="MESSAGE="><span class="term"><code class="varname">MESSAGE=</code></span><a class="headerlink" title="Permalink to this term" href="#MESSAGE=">¶</a></dt><dd><p><a href="systemd.journal-fields.html"><span class="citerefentry"><span class="refentrytitle">systemd.journal-fields</span>(7)</span></a></p></dd><dt id="MESSAGE_ID="><span class="term"><code class="varname">MESSAGE_ID=</code></span><a class="headerlink" title="Permalink to this term" href="#MESSAGE_ID=">¶</a></dt><dd><p><a href="systemd.journal-fields.html"><span class="citerefentry"><span class="refentrytitle">systemd.journal-fields</span>(7)</span></a></p></dd><dt id="OBJECT_AUDIT_LOGINUID="><span class="term"><code class="varname">OBJECT_AUDIT_LOGINUID=</code></span><a class="headerlink" title="Permalink to this term" href="#OBJECT_AUDIT_LOGINUID=">¶</a></dt><dd><p><a href="systemd.journal-fields.html"><span class="citerefentry"><span class="refentrytitle">systemd.journal-fields</span>(7)</span></a></p></dd><dt id="OBJECT_AUDIT_SESSION="><span class="term"><code class="varname">OBJECT_AUDIT_SESSION=</code></span><a class="headerlink" title="Permalink to this term" href="#OBJECT_AUDIT_SESSION=">¶</a></dt><dd><p><a href="systemd.journal-fields.html"><span class="citerefentry"><span class="refentrytitle">systemd.journal-fields</span>(7)</span></a></p></dd><dt id="OBJECT_CMDLINE="><span class="term"><code class="varname">OBJECT_CMDLINE=</code></span><a class="headerlink" title="Permalink to this term" href="#OBJECT_CMDLINE=">¶</a></dt><dd><p><a href="systemd.journal-fields.html"><span class="citerefentry"><span class="refentrytitle">systemd.journal-fields</span>(7)</span></a></p></dd><dt id="OBJECT_COMM="><span class="term"><code class="varname">OBJECT_COMM=</code></span><a class="headerlink" title="Permalink to this term" href="#OBJECT_COMM=">¶</a></dt><dd><p><a href="systemd.journal-fields.html"><span class="citerefentry"><span class="refentrytitle">systemd.journal-fields</span>(7)</span></a></p></dd><dt id="OBJECT_EXE="><span class="term"><code class="varname">OBJECT_EXE=</code></span><a class="headerlink" title="Permalink to this term" href="#OBJECT_EXE=">¶</a></dt><dd><p><a href="systemd.journal-fields.html"><span class="citerefentry"><span class="refentrytitle">systemd.journal-fields</span>(7)</span></a></p></dd><dt id="OBJECT_GID="><span class="term"><code class="varname">OBJECT_GID=</code></span><a class="headerlink" title="Permalink to this term" href="#OBJECT_GID=">¶</a></dt><dd><p><a href="systemd.journal-fields.html"><span class="citerefentry"><span class="refentrytitle">systemd.journal-fields</span>(7)</span></a></p></dd><dt id="OBJECT_PID="><span class="term"><code class="varname">OBJECT_PID=</code></span><a class="headerlink" title="Permalink to this term" href="#OBJECT_PID=">¶</a></dt><dd><p><a href="systemd.journal-fields.html"><span class="citerefentry"><span class="refentrytitle">systemd.journal-fields</span>(7)</span></a></p></dd><dt id="OBJECT_SYSTEMD_CGROUP="><span class="term"><code class="varname">OBJECT_SYSTEMD_CGROUP=</code></span><a class="headerlink" title="Permalink to this term" href="#OBJECT_SYSTEMD_CGROUP=">¶</a></dt><dd><p><a href="systemd.journal-fields.html"><span class="citerefentry"><span class="refentrytitle">systemd.journal-fields</span>(7)</span></a></p></dd><dt id="OBJECT_SYSTEMD_OWNER_UID="><span class="term"><code class="varname">OBJECT_SYSTEMD_OWNER_UID=</code></span><a class="headerlink" title="Permalink to this term" href="#OBJECT_SYSTEMD_OWNER_UID=">¶</a></dt><dd><p><a href="systemd.journal-fields.html"><span class="citerefentry"><span class="refentrytitle">systemd.journal-fields</span>(7)</span></a></p></dd><dt id="OBJECT_SYSTEMD_SESSION="><span class="term"><code class="varname">OBJECT_SYSTEMD_SESSION=</code></span><a class="headerlink" title="Permalink to this term" href="#OBJECT_SYSTEMD_SESSION=">¶</a></dt><dd><p><a href="systemd.journal-fields.html"><span class="citerefentry"><span class="refentrytitle">systemd.journal-fields</span>(7)</span></a></p></dd><dt id="OBJECT_SYSTEMD_UNIT="><span class="term"><code class="varname">OBJECT_SYSTEMD_UNIT=</code></span><a class="headerlink" title="Permalink to this term" href="#OBJECT_SYSTEMD_UNIT=">¶</a></dt><dd><p><a href="systemd.journal-fields.html"><span class="citerefentry"><span class="refentrytitle">systemd.journal-fields</span>(7)</span></a></p></dd><dt id="OBJECT_SYSTEMD_USER_UNIT="><span class="term"><code class="varname">OBJECT_SYSTEMD_USER_UNIT=</code></span><a class="headerlink" title="Permalink to this term" href="#OBJECT_SYSTEMD_USER_UNIT=">¶</a></dt><dd><p><a href="systemd.journal-fields.html"><span class="citerefentry"><span class="refentrytitle">systemd.journal-fields</span>(7)</span></a></p></dd><dt id="OBJECT_UID="><span class="term"><code class="varname">OBJECT_UID=</code></span><a class="headerlink" title="Permalink to this term" href="#OBJECT_UID=">¶</a></dt><dd><p><a href="systemd.journal-fields.html"><span class="citerefentry"><span class="refentrytitle">systemd.journal-fields</span>(7)</span></a></p></dd><dt id="PRIORITY="><span class="term"><code class="varname">PRIORITY=</code></span><a class="headerlink" title="Permalink to this term" href="#PRIORITY=">¶</a></dt><dd><p><a href="systemd.journal-fields.html"><span class="citerefentry"><span class="refentrytitle">systemd.journal-fields</span>(7)</span></a></p></dd><dt id="SYSLOG_FACILITY="><span class="term"><code class="varname">SYSLOG_FACILITY=</code></span><a class="headerlink" title="Permalink to this term" href="#SYSLOG_FACILITY=">¶</a></dt><dd><p><a href="systemd.journal-fields.html"><span class="citerefentry"><span class="refentrytitle">systemd.journal-fields</span>(7)</span></a></p></dd><dt id="SYSLOG_IDENTIFIER="><span class="term"><code class="varname">SYSLOG_IDENTIFIER=</code></span><a class="headerlink" title="Permalink to this term" href="#SYSLOG_IDENTIFIER=">¶</a></dt><dd><p><a href="systemd.journal-fields.html"><span class="citerefentry"><span class="refentrytitle">systemd.journal-fields</span>(7)</span></a></p></dd><dt id="SYSLOG_PID="><span class="term"><code class="varname">SYSLOG_PID=</code></span><a class="headerlink" title="Permalink to this term" href="#SYSLOG_PID=">¶</a></dt><dd><p><a href="systemd.journal-fields.html"><span class="citerefentry"><span class="refentrytitle">systemd.journal-fields</span>(7)</span></a></p></dd><dt id="_AUDIT_LOGINUID="><span class="term"><code class="varname">_AUDIT_LOGINUID=</code></span><a class="headerlink" title="Permalink to this term" href="#_AUDIT_LOGINUID=">¶</a></dt><dd><p><a href="systemd.journal-fields.html"><span class="citerefentry"><span class="refentrytitle">systemd.journal-fields</span>(7)</span></a></p></dd><dt id="_AUDIT_SESSION="><span class="term"><code class="varname">_AUDIT_SESSION=</code></span><a class="headerlink" title="Permalink to this term" href="#_AUDIT_SESSION=">¶</a></dt><dd><p><a href="systemd.journal-fields.html"><span class="citerefentry"><span class="refentrytitle">systemd.journal-fields</span>(7)</span></a></p></dd><dt id="_BOOT_ID="><span class="term"><code class="varname">_BOOT_ID=</code></span><a class="headerlink" title="Permalink to this term" href="#_BOOT_ID=">¶</a></dt><dd><p><a href="systemd.journal-fields.html"><span class="citerefentry"><span class="refentrytitle">systemd.journal-fields</span>(7)</span></a></p></dd><dt id="_CAP_EFFECTIVE="><span class="term"><code class="varname">_CAP_EFFECTIVE=</code></span><a class="headerlink" title="Permalink to this term" href="#_CAP_EFFECTIVE=">¶</a></dt><dd><p><a href="systemd.journal-fields.html"><span class="citerefentry"><span class="refentrytitle">systemd.journal-fields</span>(7)</span></a></p></dd><dt id="_CMDLINE="><span class="term"><code class="varname">_CMDLINE=</code></span><a class="headerlink" title="Permalink to this term" href="#_CMDLINE=">¶</a></dt><dd><p><a href="systemd.journal-fields.html"><span class="citerefentry"><span class="refentrytitle">systemd.journal-fields</span>(7)</span></a></p></dd><dt id="_COMM="><span class="term"><code class="varname">_COMM=</code></span><a class="headerlink" title="Permalink to this term" href="#_COMM=">¶</a></dt><dd><p><a href="systemd.journal-fields.html"><span class="citerefentry"><span class="refentrytitle">systemd.journal-fields</span>(7)</span></a></p></dd><dt id="_EXE="><span class="term"><code class="varname">_EXE=</code></span><a class="headerlink" title="Permalink to this term" href="#_EXE=">¶</a></dt><dd><p><a href="systemd.journal-fields.html"><span class="citerefentry"><span class="refentrytitle">systemd.journal-fields</span>(7)</span></a></p></dd><dt id="_GID="><span class="term"><code class="varname">_GID=</code></span><a class="headerlink" title="Permalink to this term" href="#_GID=">¶</a></dt><dd><p><a href="systemd.journal-fields.html"><span class="citerefentry"><span class="refentrytitle">systemd.journal-fields</span>(7)</span></a></p></dd><dt id="_HOSTNAME="><span class="term"><code class="varname">_HOSTNAME=</code></span><a class="headerlink" title="Permalink to this term" href="#_HOSTNAME=">¶</a></dt><dd><p><a href="systemd.journal-fields.html"><span class="citerefentry"><span class="refentrytitle">systemd.journal-fields</span>(7)</span></a></p></dd><dt id="_KERNEL_DEVICE="><span class="term"><code class="varname">_KERNEL_DEVICE=</code></span><a class="headerlink" title="Permalink to this term" href="#_KERNEL_DEVICE=">¶</a></dt><dd><p><a href="systemd.journal-fields.html"><span class="citerefentry"><span class="refentrytitle">systemd.journal-fields</span>(7)</span></a></p></dd><dt id="_KERNEL_SUBSYSTEM="><span class="term"><code class="varname">_KERNEL_SUBSYSTEM=</code></span><a class="headerlink" title="Permalink to this term" href="#_KERNEL_SUBSYSTEM=">¶</a></dt><dd><p><a href="systemd.journal-fields.html"><span class="citerefentry"><span class="refentrytitle">systemd.journal-fields</span>(7)</span></a></p></dd><dt id="_MACHINE_ID="><span class="term"><code class="varname">_MACHINE_ID=</code></span><a class="headerlink" title="Permalink to this term" href="#_MACHINE_ID=">¶</a></dt><dd><p><a href="systemd.journal-fields.html"><span class="citerefentry"><span class="refentrytitle">systemd.journal-fields</span>(7)</span></a></p></dd><dt id="_PID="><span class="term"><code class="varname">_PID=</code></span><a class="headerlink" title="Permalink to this term" href="#_PID=">¶</a></dt><dd><p><a href="systemd.journal-fields.html"><span class="citerefentry"><span class="refentrytitle">systemd.journal-fields</span>(7)</span></a></p></dd><dt id="_SELINUX_CONTEXT="><span class="term"><code class="varname">_SELINUX_CONTEXT=</code></span><a class="headerlink" title="Permalink to this term" href="#_SELINUX_CONTEXT=">¶</a></dt><dd><p><a href="systemd.journal-fields.html"><span class="citerefentry"><span class="refentrytitle">systemd.journal-fields</span>(7)</span></a></p></dd><dt id="_SOURCE_REALTIME_TIMESTAMP="><span class="term"><code class="varname">_SOURCE_REALTIME_TIMESTAMP=</code></span><a class="headerlink" title="Permalink to this term" href="#_SOURCE_REALTIME_TIMESTAMP=">¶</a></dt><dd><p><a href="systemd.journal-fields.html"><span class="citerefentry"><span class="refentrytitle">systemd.journal-fields</span>(7)</span></a></p></dd><dt id="_SYSTEMD_CGROUP="><span class="term"><code class="varname">_SYSTEMD_CGROUP=</code></span><a class="headerlink" title="Permalink to this term" href="#_SYSTEMD_CGROUP=">¶</a></dt><dd><p><a href="systemd.journal-fields.html"><span class="citerefentry"><span class="refentrytitle">systemd.journal-fields</span>(7)</span></a></p></dd><dt id="_SYSTEMD_OWNER_UID="><span class="term"><code class="varname">_SYSTEMD_OWNER_UID=</code></span><a class="headerlink" title="Permalink to this term" href="#_SYSTEMD_OWNER_UID=">¶</a></dt><dd><p><a href="systemd.journal-fields.html"><span class="citerefentry"><span class="refentrytitle">systemd.journal-fields</span>(7)</span></a></p></dd><dt id="_SYSTEMD_SESSION="><span class="term"><code class="varname">_SYSTEMD_SESSION=</code></span><a class="headerlink" title="Permalink to this term" href="#_SYSTEMD_SESSION=">¶</a></dt><dd><p><a href="systemd.journal-fields.html"><span class="citerefentry"><span class="refentrytitle">systemd.journal-fields</span>(7)</span></a></p></dd><dt id="_SYSTEMD_SLICE="><span class="term"><code class="varname">_SYSTEMD_SLICE=</code></span><a class="headerlink" title="Permalink to this term" href="#_SYSTEMD_SLICE=">¶</a></dt><dd><p><a href="systemd.journal-fields.html"><span class="citerefentry"><span class="refentrytitle">systemd.journal-fields</span>(7)</span></a></p></dd><dt id="_SYSTEMD_UNIT="><span class="term"><code class="varname">_SYSTEMD_UNIT=</code></span><a class="headerlink" title="Permalink to this term" href="#_SYSTEMD_UNIT=">¶</a></dt><dd><p><a href="systemd.journal-fields.html"><span class="citerefentry"><span class="refentrytitle">systemd.journal-fields</span>(7)</span></a></p></dd><dt id="_SYSTEMD_USER_UNIT="><span class="term"><code class="varname">_SYSTEMD_USER_UNIT=</code></span><a class="headerlink" title="Permalink to this term" href="#_SYSTEMD_USER_UNIT=">¶</a></dt><dd><p><a href="systemd.journal-fields.html"><span class="citerefentry"><span class="refentrytitle">systemd.journal-fields</span>(7)</span></a></p></dd><dt id="_TRANSPORT="><span class="term"><code class="varname">_TRANSPORT=</code></span><a class="headerlink" title="Permalink to this term" href="#_TRANSPORT=">¶</a></dt><dd><p><a href="systemd.journal-fields.html"><span class="citerefentry"><span class="refentrytitle">systemd.journal-fields</span>(7)</span></a></p></dd><dt id="_UDEV_DEVLINK="><span class="term"><code class="varname">_UDEV_DEVLINK=</code></span><a class="headerlink" title="Permalink to this term" href="#_UDEV_DEVLINK=">¶</a></dt><dd><p><a href="systemd.journal-fields.html"><span class="citerefentry"><span class="refentrytitle">systemd.journal-fields</span>(7)</span></a></p></dd><dt id="_UDEV_DEVNODE="><span class="term"><code class="varname">_UDEV_DEVNODE=</code></span><a class="headerlink" title="Permalink to this term" href="#_UDEV_DEVNODE=">¶</a></dt><dd><p><a href="systemd.journal-fields.html"><span class="citerefentry"><span class="refentrytitle">systemd.journal-fields</span>(7)</span></a></p></dd><dt id="_UDEV_SYSNAME="><span class="term"><code class="varname">_UDEV_SYSNAME=</code></span><a class="headerlink" title="Permalink to this term" href="#_UDEV_SYSNAME=">¶</a></dt><dd><p><a href="systemd.journal-fields.html"><span class="citerefentry"><span class="refentrytitle">systemd.journal-fields</span>(7)</span></a></p></dd><dt id="_UID="><span class="term"><code class="varname">_UID=</code></span><a class="headerlink" title="Permalink to this term" href="#_UID=">¶</a></dt><dd><p><a href="systemd.journal-fields.html"><span class="citerefentry"><span class="refentrytitle">systemd.journal-fields</span>(7)</span></a></p></dd><dt id="__CURSOR="><span class="term"><code class="varname">__CURSOR=</code></span><a class="headerlink" title="Permalink to this term" href="#__CURSOR=">¶</a></dt><dd><p><a href="systemd.journal-fields.html"><span class="citerefentry"><span class="refentrytitle">systemd.journal-fields</span>(7)</span></a></p></dd><dt id="__MONOTONIC_TIMESTAMP="><span class="term"><code class="varname">__MONOTONIC_TIMESTAMP=</code></span><a class="headerlink" title="Permalink to this term" href="#__MONOTONIC_TIMESTAMP=">¶</a></dt><dd><p><a href="systemd.journal-fields.html"><span class="citerefentry"><span class="refentrytitle">systemd.journal-fields</span>(7)</span></a></p></dd><dt id="__REALTIME_TIMESTAMP="><span class="term"><code class="varname">__REALTIME_TIMESTAMP=</code></span><a class="headerlink" title="Permalink to this term" href="#__REALTIME_TIMESTAMP=">¶</a></dt><dd><p><a href="systemd.journal-fields.html"><span class="citerefentry"><span class="refentrytitle">systemd.journal-fields</span>(7)</span></a></p></dd></dl></div></div><div class="refsect1"><a name="idm214186343104"></a><h2 id="PAM configuration directives">PAM configuration directives<a class="headerlink" title="Permalink to this headline" href="#PAM%20configuration%20directives">¶</a></h2><p>Directives for configuring PAM behaviour.</p><div class="variablelist"><a name="pam-directives"></a><dl class="variablelist"><dt id="class="><span class="term"><code class="option">class=</code></span><a class="headerlink" title="Permalink to this term" href="#class=">¶</a></dt><dd><p><a href="pam_systemd.html"><span class="citerefentry"><span class="refentrytitle">pam_systemd</span>(8)</span></a></p></dd><dt id="debug"><span class="term"><code class="varname">debug</code></span><a class="headerlink" title="Permalink to this term" href="#debug">¶</a></dt><dd><p><a href="pam_systemd.html"><span class="citerefentry"><span class="refentrytitle">pam_systemd</span>(8)</span></a></p></dd><dt id="type="><span class="term"><code class="option">type=</code></span><a class="headerlink" title="Permalink to this term" href="#type=">¶</a></dt><dd><p><a href="pam_systemd.html"><span class="citerefentry"><span class="refentrytitle">pam_systemd</span>(8)</span></a></p></dd></dl></div></div><div class="refsect1"><a name="idm214186336512"></a><h2 id="crypttab options">crypttab options<a class="headerlink" title="Permalink to this headline" href="#crypttab%20options">¶</a></h2><p>Options which influence mounted filesystems and
-                encrypted volumes.</p><div class="variablelist"><a name="crypttab-options"></a><dl class="variablelist"><dt id="cipher="><span class="term"><code class="varname">cipher=</code></span><a class="headerlink" title="Permalink to this term" href="#cipher=">¶</a></dt><dd><p><a href="crypttab.html"><span class="citerefentry"><span class="refentrytitle">crypttab</span>(5)</span></a></p></dd><dt id="discard"><span class="term"><code class="varname">discard</code></span><a class="headerlink" title="Permalink to this term" href="#discard">¶</a></dt><dd><p><a href="crypttab.html"><span class="citerefentry"><span class="refentrytitle">crypttab</span>(5)</span></a></p></dd><dt id="hash="><span class="term"><code class="varname">hash=</code></span><a class="headerlink" title="Permalink to this term" href="#hash=">¶</a></dt><dd><p><a href="crypttab.html"><span class="citerefentry"><span class="refentrytitle">crypttab</span>(5)</span></a></p></dd><dt id="key-slot="><span class="term"><code class="varname">key-slot=</code></span><a class="headerlink" title="Permalink to this term" href="#key-slot=">¶</a></dt><dd><p><a href="crypttab.html"><span class="citerefentry"><span class="refentrytitle">crypttab</span>(5)</span></a></p></dd><dt id="keyfile-offset="><span class="term"><code class="varname">keyfile-offset=</code></span><a class="headerlink" title="Permalink to this term" href="#keyfile-offset=">¶</a></dt><dd><p><a href="crypttab.html"><span class="citerefentry"><span class="refentrytitle">crypttab</span>(5)</span></a></p></dd><dt id="keyfile-size="><span class="term"><code class="varname">keyfile-size=</code></span><a class="headerlink" title="Permalink to this term" href="#keyfile-size=">¶</a></dt><dd><p><a href="crypttab.html"><span class="citerefentry"><span class="refentrytitle">crypttab</span>(5)</span></a></p></dd><dt id="luks"><span class="term"><code class="varname">luks</code></span><a class="headerlink" title="Permalink to this term" href="#luks">¶</a></dt><dd><p><a href="crypttab.html"><span class="citerefentry"><span class="refentrytitle">crypttab</span>(5)</span></a></p></dd><dt id="noauto"><span class="term"><code class="varname">noauto</code></span><a class="headerlink" title="Permalink to this term" href="#noauto">¶</a></dt><dd><p><a href="crypttab.html"><span class="citerefentry"><span class="refentrytitle">crypttab</span>(5)</span></a></p></dd><dt id="nofail"><span class="term"><code class="varname">nofail</code></span><a class="headerlink" title="Permalink to this term" href="#nofail">¶</a></dt><dd><p><a href="crypttab.html"><span class="citerefentry"><span class="refentrytitle">crypttab</span>(5)</span></a></p></dd><dt id="plain"><span class="term"><code class="varname">plain</code></span><a class="headerlink" title="Permalink to this term" href="#plain">¶</a></dt><dd><p><a href="crypttab.html"><span class="citerefentry"><span class="refentrytitle">crypttab</span>(5)</span></a></p></dd><dt id="read-only"><span class="term"><code class="varname">read-only</code></span><a class="headerlink" title="Permalink to this term" href="#read-only">¶</a></dt><dd><p><a href="crypttab.html"><span class="citerefentry"><span class="refentrytitle">crypttab</span>(5)</span></a></p></dd><dt id="readonly"><span class="term"><code class="varname">readonly</code></span><a class="headerlink" title="Permalink to this term" href="#readonly">¶</a></dt><dd><p><a href="crypttab.html"><span class="citerefentry"><span class="refentrytitle">crypttab</span>(5)</span></a></p></dd><dt id="size="><span class="term"><code class="varname">size=</code></span><a class="headerlink" title="Permalink to this term" href="#size=">¶</a></dt><dd><p><a href="crypttab.html"><span class="citerefentry"><span class="refentrytitle">crypttab</span>(5)</span></a></p></dd><dt id="swap"><span class="term"><code class="varname">swap</code></span><a class="headerlink" title="Permalink to this term" href="#swap">¶</a></dt><dd><p><a href="crypttab.html"><span class="citerefentry"><span class="refentrytitle">crypttab</span>(5)</span></a></p></dd><dt id="tcrypt"><span class="term"><code class="varname">tcrypt</code></span><a class="headerlink" title="Permalink to this term" href="#tcrypt">¶</a></dt><dd><p><a href="crypttab.html"><span class="citerefentry"><span class="refentrytitle">crypttab</span>(5)</span></a></p></dd><dt id="tcrypt-hidden"><span class="term"><code class="varname">tcrypt-hidden</code></span><a class="headerlink" title="Permalink to this term" href="#tcrypt-hidden">¶</a></dt><dd><p><a href="crypttab.html"><span class="citerefentry"><span class="refentrytitle">crypttab</span>(5)</span></a></p></dd><dt id="tcrypt-keyfile="><span class="term"><code class="varname">tcrypt-keyfile=</code></span><a class="headerlink" title="Permalink to this term" href="#tcrypt-keyfile=">¶</a></dt><dd><p><a href="crypttab.html"><span class="citerefentry"><span class="refentrytitle">crypttab</span>(5)</span></a></p></dd><dt id="tcrypt-system"><span class="term"><code class="varname">tcrypt-system</code></span><a class="headerlink" title="Permalink to this term" href="#tcrypt-system">¶</a></dt><dd><p><a href="crypttab.html"><span class="citerefentry"><span class="refentrytitle">crypttab</span>(5)</span></a></p></dd><dt id="timeout="><span class="term"><code class="varname">timeout=</code></span><a class="headerlink" title="Permalink to this term" href="#timeout=">¶</a></dt><dd><p><a href="crypttab.html"><span class="citerefentry"><span class="refentrytitle">crypttab</span>(5)</span></a></p></dd><dt id="tmp"><span class="term"><code class="varname">tmp</code></span><a class="headerlink" title="Permalink to this term" href="#tmp">¶</a></dt><dd><p><a href="crypttab.html"><span class="citerefentry"><span class="refentrytitle">crypttab</span>(5)</span></a></p></dd><dt id="tries="><span class="term"><code class="varname">tries=</code></span><a class="headerlink" title="Permalink to this term" href="#tries=">¶</a></dt><dd><p><a href="crypttab.html"><span class="citerefentry"><span class="refentrytitle">crypttab</span>(5)</span></a></p></dd><dt id="verify"><span class="term"><code class="varname">verify</code></span><a class="headerlink" title="Permalink to this term" href="#verify">¶</a></dt><dd><p><a href="crypttab.html"><span class="citerefentry"><span class="refentrytitle">crypttab</span>(5)</span></a></p></dd></dl></div></div><div class="refsect1"><a name="idm214186299536"></a><h2 id="System manager directives">System manager directives<a class="headerlink" title="Permalink to this headline" href="#System%20manager%20directives">¶</a></h2><p>Directives for configuring the behaviour of the
-                systemd process.</p><div class="variablelist"><a name="systemd-directives"></a><dl class="variablelist"><dt id="CPUAffinity="><span class="term"><code class="varname">CPUAffinity=</code></span><a class="headerlink" title="Permalink to this term" href="#CPUAffinity=">¶</a></dt><dd><p><a href="systemd-system.conf.html"><span class="citerefentry"><span class="refentrytitle">systemd-system.conf</span>(5)</span></a></p></dd><dt id="CapabilityBoundingSet="><span class="term"><code class="varname">CapabilityBoundingSet=</code></span><a class="headerlink" title="Permalink to this term" href="#CapabilityBoundingSet=">¶</a></dt><dd><p><a href="systemd-system.conf.html"><span class="citerefentry"><span class="refentrytitle">systemd-system.conf</span>(5)</span></a></p></dd><dt id="CrashChVT="><span class="term"><code class="varname">CrashChVT=</code></span><a class="headerlink" title="Permalink to this term" href="#CrashChVT=">¶</a></dt><dd><p><a href="systemd-system.conf.html"><span class="citerefentry"><span class="refentrytitle">systemd-system.conf</span>(5)</span></a></p></dd><dt id="CrashShell="><span class="term"><code class="varname">CrashShell=</code></span><a class="headerlink" title="Permalink to this term" href="#CrashShell=">¶</a></dt><dd><p><a href="systemd-system.conf.html"><span class="citerefentry"><span class="refentrytitle">systemd-system.conf</span>(5)</span></a></p></dd><dt id="DefaultBlockIOAccounting="><span class="term"><code class="varname">DefaultBlockIOAccounting=</code></span><a class="headerlink" title="Permalink to this term" href="#DefaultBlockIOAccounting=">¶</a></dt><dd><p><a href="systemd-system.conf.html"><span class="citerefentry"><span class="refentrytitle">systemd-system.conf</span>(5)</span></a></p></dd><dt id="DefaultCPUAccounting="><span class="term"><code class="varname">DefaultCPUAccounting=</code></span><a class="headerlink" title="Permalink to this term" href="#DefaultCPUAccounting=">¶</a></dt><dd><p><a href="systemd-system.conf.html"><span class="citerefentry"><span class="refentrytitle">systemd-system.conf</span>(5)</span></a></p></dd><dt id="DefaultEnvironment="><span class="term"><code class="varname">DefaultEnvironment=</code></span><a class="headerlink" title="Permalink to this term" href="#DefaultEnvironment=">¶</a></dt><dd><p><a href="systemd-system.conf.html"><span class="citerefentry"><span class="refentrytitle">systemd-system.conf</span>(5)</span></a></p></dd><dt id="DefaultLimitAS="><span class="term"><code class="varname">DefaultLimitAS=</code></span><a class="headerlink" title="Permalink to this term" href="#DefaultLimitAS=">¶</a></dt><dd><p><a href="systemd-system.conf.html"><span class="citerefentry"><span class="refentrytitle">systemd-system.conf</span>(5)</span></a></p></dd><dt id="DefaultLimitCORE="><span class="term"><code class="varname">DefaultLimitCORE=</code></span><a class="headerlink" title="Permalink to this term" href="#DefaultLimitCORE=">¶</a></dt><dd><p><a href="systemd-system.conf.html"><span class="citerefentry"><span class="refentrytitle">systemd-system.conf</span>(5)</span></a></p></dd><dt id="DefaultLimitCPU="><span class="term"><code class="varname">DefaultLimitCPU=</code></span><a class="headerlink" title="Permalink to this term" href="#DefaultLimitCPU=">¶</a></dt><dd><p><a href="systemd-system.conf.html"><span class="citerefentry"><span class="refentrytitle">systemd-system.conf</span>(5)</span></a></p></dd><dt id="DefaultLimitDATA="><span class="term"><code class="varname">DefaultLimitDATA=</code></span><a class="headerlink" title="Permalink to this term" href="#DefaultLimitDATA=">¶</a></dt><dd><p><a href="systemd-system.conf.html"><span class="citerefentry"><span class="refentrytitle">systemd-system.conf</span>(5)</span></a></p></dd><dt id="DefaultLimitFSIZE="><span class="term"><code class="varname">DefaultLimitFSIZE=</code></span><a class="headerlink" title="Permalink to this term" href="#DefaultLimitFSIZE=">¶</a></dt><dd><p><a href="systemd-system.conf.html"><span class="citerefentry"><span class="refentrytitle">systemd-system.conf</span>(5)</span></a></p></dd><dt id="DefaultLimitLOCKS="><span class="term"><code class="varname">DefaultLimitLOCKS=</code></span><a class="headerlink" title="Permalink to this term" href="#DefaultLimitLOCKS=">¶</a></dt><dd><p><a href="systemd-system.conf.html"><span class="citerefentry"><span class="refentrytitle">systemd-system.conf</span>(5)</span></a></p></dd><dt id="DefaultLimitMEMLOCK="><span class="term"><code class="varname">DefaultLimitMEMLOCK=</code></span><a class="headerlink" title="Permalink to this term" href="#DefaultLimitMEMLOCK=">¶</a></dt><dd><p><a href="systemd-system.conf.html"><span class="citerefentry"><span class="refentrytitle">systemd-system.conf</span>(5)</span></a></p></dd><dt id="DefaultLimitMSGQUEUE="><span class="term"><code class="varname">DefaultLimitMSGQUEUE=</code></span><a class="headerlink" title="Permalink to this term" href="#DefaultLimitMSGQUEUE=">¶</a></dt><dd><p><a href="systemd-system.conf.html"><span class="citerefentry"><span class="refentrytitle">systemd-system.conf</span>(5)</span></a></p></dd><dt id="DefaultLimitNICE="><span class="term"><code class="varname">DefaultLimitNICE=</code></span><a class="headerlink" title="Permalink to this term" href="#DefaultLimitNICE=">¶</a></dt><dd><p><a href="systemd-system.conf.html"><span class="citerefentry"><span class="refentrytitle">systemd-system.conf</span>(5)</span></a></p></dd><dt id="DefaultLimitNOFILE="><span class="term"><code class="varname">DefaultLimitNOFILE=</code></span><a class="headerlink" title="Permalink to this term" href="#DefaultLimitNOFILE=">¶</a></dt><dd><p><a href="systemd-system.conf.html"><span class="citerefentry"><span class="refentrytitle">systemd-system.conf</span>(5)</span></a></p></dd><dt id="DefaultLimitNPROC="><span class="term"><code class="varname">DefaultLimitNPROC=</code></span><a class="headerlink" title="Permalink to this term" href="#DefaultLimitNPROC=">¶</a></dt><dd><p><a href="systemd-system.conf.html"><span class="citerefentry"><span class="refentrytitle">systemd-system.conf</span>(5)</span></a></p></dd><dt id="DefaultLimitRSS="><span class="term"><code class="varname">DefaultLimitRSS=</code></span><a class="headerlink" title="Permalink to this term" href="#DefaultLimitRSS=">¶</a></dt><dd><p><a href="systemd-system.conf.html"><span class="citerefentry"><span class="refentrytitle">systemd-system.conf</span>(5)</span></a></p></dd><dt id="DefaultLimitRTPRIO="><span class="term"><code class="varname">DefaultLimitRTPRIO=</code></span><a class="headerlink" title="Permalink to this term" href="#DefaultLimitRTPRIO=">¶</a></dt><dd><p><a href="systemd-system.conf.html"><span class="citerefentry"><span class="refentrytitle">systemd-system.conf</span>(5)</span></a></p></dd><dt id="DefaultLimitRTTIME="><span class="term"><code class="varname">DefaultLimitRTTIME=</code></span><a class="headerlink" title="Permalink to this term" href="#DefaultLimitRTTIME=">¶</a></dt><dd><p><a href="systemd-system.conf.html"><span class="citerefentry"><span class="refentrytitle">systemd-system.conf</span>(5)</span></a></p></dd><dt id="DefaultLimitSIGPENDING="><span class="term"><code class="varname">DefaultLimitSIGPENDING=</code></span><a class="headerlink" title="Permalink to this term" href="#DefaultLimitSIGPENDING=">¶</a></dt><dd><p><a href="systemd-system.conf.html"><span class="citerefentry"><span class="refentrytitle">systemd-system.conf</span>(5)</span></a></p></dd><dt id="DefaultLimitSTACK="><span class="term"><code class="varname">DefaultLimitSTACK=</code></span><a class="headerlink" title="Permalink to this term" href="#DefaultLimitSTACK=">¶</a></dt><dd><p><a href="systemd-system.conf.html"><span class="citerefentry"><span class="refentrytitle">systemd-system.conf</span>(5)</span></a></p></dd><dt id="DefaultMemoryAccounting="><span class="term"><code class="varname">DefaultMemoryAccounting=</code></span><a class="headerlink" title="Permalink to this term" href="#DefaultMemoryAccounting=">¶</a></dt><dd><p><a href="systemd-system.conf.html"><span class="citerefentry"><span class="refentrytitle">systemd-system.conf</span>(5)</span></a></p></dd><dt id="DefaultRestartSec="><span class="term"><code class="varname">DefaultRestartSec=</code></span><a class="headerlink" title="Permalink to this term" href="#DefaultRestartSec=">¶</a></dt><dd><p><a href="systemd-system.conf.html"><span class="citerefentry"><span class="refentrytitle">systemd-system.conf</span>(5)</span></a></p></dd><dt id="DefaultStandardError="><span class="term"><code class="varname">DefaultStandardError=</code></span><a class="headerlink" title="Permalink to this term" href="#DefaultStandardError=">¶</a></dt><dd><p><a href="systemd-system.conf.html"><span class="citerefentry"><span class="refentrytitle">systemd-system.conf</span>(5)</span></a></p></dd><dt id="DefaultStandardOutput="><span class="term"><code class="varname">DefaultStandardOutput=</code></span><a class="headerlink" title="Permalink to this term" href="#DefaultStandardOutput=">¶</a></dt><dd><p><a href="systemd-system.conf.html"><span class="citerefentry"><span class="refentrytitle">systemd-system.conf</span>(5)</span></a></p></dd><dt id="DefaultStartLimitBurst="><span class="term"><code class="varname">DefaultStartLimitBurst=</code></span><a class="headerlink" title="Permalink to this term" href="#DefaultStartLimitBurst=">¶</a></dt><dd><p><a href="systemd-system.conf.html"><span class="citerefentry"><span class="refentrytitle">systemd-system.conf</span>(5)</span></a></p></dd><dt id="DefaultStartLimitInterval="><span class="term"><code class="varname">DefaultStartLimitInterval=</code></span><a class="headerlink" title="Permalink to this term" href="#DefaultStartLimitInterval=">¶</a></dt><dd><p><a href="systemd-system.conf.html"><span class="citerefentry"><span class="refentrytitle">systemd-system.conf</span>(5)</span></a></p></dd><dt id="DefaultTimeoutStartSec="><span class="term"><code class="varname">DefaultTimeoutStartSec=</code></span><a class="headerlink" title="Permalink to this term" href="#DefaultTimeoutStartSec=">¶</a></dt><dd><p><a href="systemd-system.conf.html"><span class="citerefentry"><span class="refentrytitle">systemd-system.conf</span>(5)</span></a></p></dd><dt id="DefaultTimeoutStopSec="><span class="term"><code class="varname">DefaultTimeoutStopSec=</code></span><a class="headerlink" title="Permalink to this term" href="#DefaultTimeoutStopSec=">¶</a></dt><dd><p><a href="systemd-system.conf.html"><span class="citerefentry"><span class="refentrytitle">systemd-system.conf</span>(5)</span></a></p></dd><dt id="DefaultTimerAccuracySec="><span class="term"><code class="varname">DefaultTimerAccuracySec=</code></span><a class="headerlink" title="Permalink to this term" href="#DefaultTimerAccuracySec=">¶</a></dt><dd><p><a href="systemd-system.conf.html"><span class="citerefentry"><span class="refentrytitle">systemd-system.conf</span>(5)</span></a></p></dd><dt id="DumpCore="><span class="term"><code class="varname">DumpCore=</code></span><a class="headerlink" title="Permalink to this term" href="#DumpCore=">¶</a></dt><dd><p><a href="systemd-system.conf.html"><span class="citerefentry"><span class="refentrytitle">systemd-system.conf</span>(5)</span></a></p></dd><dt id="HibernateMode="><span class="term"><code class="varname">HibernateMode=</code></span><a class="headerlink" title="Permalink to this term" href="#HibernateMode=">¶</a></dt><dd><p><a href="systemd-sleep.conf.html"><span class="citerefentry"><span class="refentrytitle">systemd-sleep.conf</span>(5)</span></a></p></dd><dt id="HibernateState="><span class="term"><code class="varname">HibernateState=</code></span><a class="headerlink" title="Permalink to this term" href="#HibernateState=">¶</a></dt><dd><p><a href="systemd-sleep.conf.html"><span class="citerefentry"><span class="refentrytitle">systemd-sleep.conf</span>(5)</span></a></p></dd><dt id="HybridSleepMode="><span class="term"><code class="varname">HybridSleepMode=</code></span><a class="headerlink" title="Permalink to this term" href="#HybridSleepMode=">¶</a></dt><dd><p><a href="systemd-sleep.conf.html"><span class="citerefentry"><span class="refentrytitle">systemd-sleep.conf</span>(5)</span></a></p></dd><dt id="HybridSleepState="><span class="term"><code class="varname">HybridSleepState=</code></span><a class="headerlink" title="Permalink to this term" href="#HybridSleepState=">¶</a></dt><dd><p><a href="systemd-sleep.conf.html"><span class="citerefentry"><span class="refentrytitle">systemd-sleep.conf</span>(5)</span></a></p></dd><dt id="JoinControllers="><span class="term"><code class="varname">JoinControllers=</code></span><a class="headerlink" title="Permalink to this term" href="#JoinControllers=">¶</a></dt><dd><p><a href="systemd-system.conf.html"><span class="citerefentry"><span class="refentrytitle">systemd-system.conf</span>(5)</span></a></p></dd><dt id="LogColor="><span class="term"><code class="varname">LogColor=</code></span><a class="headerlink" title="Permalink to this term" href="#LogColor=">¶</a></dt><dd><p><a href="systemd-system.conf.html"><span class="citerefentry"><span class="refentrytitle">systemd-system.conf</span>(5)</span></a></p></dd><dt id="LogLevel="><span class="term"><code class="varname">LogLevel=</code></span><a class="headerlink" title="Permalink to this term" href="#LogLevel=">¶</a></dt><dd><p><a href="systemd-system.conf.html"><span class="citerefentry"><span class="refentrytitle">systemd-system.conf</span>(5)</span></a></p></dd><dt id="LogLocation="><span class="term"><code class="varname">LogLocation=</code></span><a class="headerlink" title="Permalink to this term" href="#LogLocation=">¶</a></dt><dd><p><a href="systemd-system.conf.html"><span class="citerefentry"><span class="refentrytitle">systemd-system.conf</span>(5)</span></a></p></dd><dt id="LogTarget="><span class="term"><code class="varname">LogTarget=</code></span><a class="headerlink" title="Permalink to this term" href="#LogTarget=">¶</a></dt><dd><p><a href="systemd-system.conf.html"><span class="citerefentry"><span class="refentrytitle">systemd-system.conf</span>(5)</span></a></p></dd><dt id="RuntimeWatchdogSec="><span class="term"><code class="varname">RuntimeWatchdogSec=</code></span><a class="headerlink" title="Permalink to this term" href="#RuntimeWatchdogSec=">¶</a></dt><dd><p><a href="systemd-system.conf.html"><span class="citerefentry"><span class="refentrytitle">systemd-system.conf</span>(5)</span></a></p></dd><dt id="ShowStatus="><span class="term"><code class="varname">ShowStatus=</code></span><a class="headerlink" title="Permalink to this term" href="#ShowStatus=">¶</a></dt><dd><p><a href="systemd-system.conf.html"><span class="citerefentry"><span class="refentrytitle">systemd-system.conf</span>(5)</span></a></p></dd><dt id="ShutdownWatchdogSec="><span class="term"><code class="varname">ShutdownWatchdogSec=</code></span><a class="headerlink" title="Permalink to this term" href="#ShutdownWatchdogSec=">¶</a></dt><dd><p><a href="systemd-system.conf.html"><span class="citerefentry"><span class="refentrytitle">systemd-system.conf</span>(5)</span></a></p></dd><dt id="SuspendMode="><span class="term"><code class="varname">SuspendMode=</code></span><a class="headerlink" title="Permalink to this term" href="#SuspendMode=">¶</a></dt><dd><p><a href="systemd-sleep.conf.html"><span class="citerefentry"><span class="refentrytitle">systemd-sleep.conf</span>(5)</span></a></p></dd><dt id="SuspendState="><span class="term"><code class="varname">SuspendState=</code></span><a class="headerlink" title="Permalink to this term" href="#SuspendState=">¶</a></dt><dd><p><a href="systemd-sleep.conf.html"><span class="citerefentry"><span class="refentrytitle">systemd-sleep.conf</span>(5)</span></a></p></dd><dt id="SystemCallArchitectures="><span class="term"><code class="varname">SystemCallArchitectures=</code></span><a class="headerlink" title="Permalink to this term" href="#SystemCallArchitectures=">¶</a></dt><dd><p><a href="systemd-system.conf.html"><span class="citerefentry"><span class="refentrytitle">systemd-system.conf</span>(5)</span></a></p></dd><dt id="TimerSlackNSec="><span class="term"><code class="varname">TimerSlackNSec=</code></span><a class="headerlink" title="Permalink to this term" href="#TimerSlackNSec=">¶</a></dt><dd><p><a href="systemd-system.conf.html"><span class="citerefentry"><span class="refentrytitle">systemd-system.conf</span>(5)</span></a></p></dd></dl></div></div><div class="refsect1"><a name="idm214186219232"></a><h2 id="bootchart.conf directives">bootchart.conf directives<a class="headerlink" title="Permalink to this headline" href="#bootchart.conf%20directives">¶</a></h2><p>Directives for configuring the behaviour of the
-                systemd-bootchart process.</p><div class="variablelist"><a name="bootchart-directives"></a><dl class="variablelist"><dt id="ControlGroup="><span class="term"><code class="varname">ControlGroup=</code></span><a class="headerlink" title="Permalink to this term" href="#ControlGroup=">¶</a></dt><dd><p><a href="bootchart.conf.html"><span class="citerefentry"><span class="refentrytitle">bootchart.conf</span>(5)</span></a></p></dd><dt id="Filter="><span class="term"><code class="varname">Filter=</code></span><a class="headerlink" title="Permalink to this term" href="#Filter=">¶</a></dt><dd><p><a href="bootchart.conf.html"><span class="citerefentry"><span class="refentrytitle">bootchart.conf</span>(5)</span></a></p></dd><dt id="Frequency="><span class="term"><code class="varname">Frequency=</code></span><a class="headerlink" title="Permalink to this term" href="#Frequency=">¶</a></dt><dd><p><a href="bootchart.conf.html"><span class="citerefentry"><span class="refentrytitle">bootchart.conf</span>(5)</span></a></p></dd><dt id="Init="><span class="term"><code class="varname">Init=</code></span><a class="headerlink" title="Permalink to this term" href="#Init=">¶</a></dt><dd><p><a href="bootchart.conf.html"><span class="citerefentry"><span class="refentrytitle">bootchart.conf</span>(5)</span></a></p></dd><dt id="Output="><span class="term"><code class="varname">Output=</code></span><a class="headerlink" title="Permalink to this term" href="#Output=">¶</a></dt><dd><p><a href="bootchart.conf.html"><span class="citerefentry"><span class="refentrytitle">bootchart.conf</span>(5)</span></a></p></dd><dt id="PlotEntropyGraph="><span class="term"><code class="varname">PlotEntropyGraph=</code></span><a class="headerlink" title="Permalink to this term" href="#PlotEntropyGraph=">¶</a></dt><dd><p><a href="bootchart.conf.html"><span class="citerefentry"><span class="refentrytitle">bootchart.conf</span>(5)</span></a></p></dd><dt id="PlotMemoryUsage="><span class="term"><code class="varname">PlotMemoryUsage=</code></span><a class="headerlink" title="Permalink to this term" href="#PlotMemoryUsage=">¶</a></dt><dd><p><a href="bootchart.conf.html"><span class="citerefentry"><span class="refentrytitle">bootchart.conf</span>(5)</span></a></p></dd><dt id="Relative="><span class="term"><code class="varname">Relative=</code></span><a class="headerlink" title="Permalink to this term" href="#Relative=">¶</a></dt><dd><p><a href="bootchart.conf.html"><span class="citerefentry"><span class="refentrytitle">bootchart.conf</span>(5)</span></a></p></dd><dt id="Samples="><span class="term"><code class="varname">Samples=</code></span><a class="headerlink" title="Permalink to this term" href="#Samples=">¶</a></dt><dd><p><a href="bootchart.conf.html"><span class="citerefentry"><span class="refentrytitle">bootchart.conf</span>(5)</span></a></p></dd><dt id="ScaleX="><span class="term"><code class="varname">ScaleX=</code></span><a class="headerlink" title="Permalink to this term" href="#ScaleX=">¶</a></dt><dd><p><a href="bootchart.conf.html"><span class="citerefentry"><span class="refentrytitle">bootchart.conf</span>(5)</span></a></p></dd><dt id="ScaleY="><span class="term"><code class="varname">ScaleY=</code></span><a class="headerlink" title="Permalink to this term" href="#ScaleY=">¶</a></dt><dd><p><a href="bootchart.conf.html"><span class="citerefentry"><span class="refentrytitle">bootchart.conf</span>(5)</span></a></p></dd></dl></div></div><div class="refsect1"><a name="idm214186199792"></a><h2 id="command-line options">command-line options<a class="headerlink" title="Permalink to this headline" href="#command-line%20options">¶</a></h2><p>Command-line options accepted by programs in the
-                systemd suite.</p><div class="variablelist"><a name="options"></a><dl class="variablelist"><dt id="--accept"><span class="term"><code class="option">--accept</code></span><a class="headerlink" title="Permalink to this term" href="#--accept">¶</a></dt><dd><p><a href="systemd-activate.html"><span class="citerefentry"><span class="refentrytitle">systemd-activate</span>(8)</span></a></p></dd><dt id="--accept-cached"><span class="term"><code class="option">--accept-cached</code></span><a class="headerlink" title="Permalink to this term" href="#--accept-cached">¶</a></dt><dd><p><a href="systemd-ask-password.html"><span class="citerefentry"><span class="refentrytitle">systemd-ask-password</span>(1)</span></a></p></dd><dt id="--acquired"><span class="term"><code class="option">--acquired</code></span><a class="headerlink" title="Permalink to this term" href="#--acquired">¶</a></dt><dd><p><a href="busctl.html"><span class="citerefentry"><span class="refentrytitle">busctl</span>(1)</span></a></p></dd><dt id="--action="><span class="term"><code class="option">--action=</code></span><a class="headerlink" title="Permalink to this term" href="#--action=">¶</a></dt><dd><p><a href="udevadm.html"><span class="citerefentry"><span class="refentrytitle">udevadm</span>(8)</span></a></p></dd><dt id="--activatable"><span class="term"><code class="option">--activatable</code></span><a class="headerlink" title="Permalink to this term" href="#--activatable">¶</a></dt><dd><p><a href="busctl.html"><span class="citerefentry"><span class="refentrytitle">busctl</span>(1)</span></a></p></dd><dt id="--address="><span class="term"><code class="option">--address=</code></span><a class="headerlink" title="Permalink to this term" href="#--address=">¶</a></dt><dd><p><a href="busctl.html"><span class="citerefentry"><span class="refentrytitle">busctl</span>(1)</span></a>, <a href="systemd-bus-proxyd.html"><span class="citerefentry"><span class="refentrytitle">systemd-bus-proxyd</span>(8)</span></a></p></dd><dt id="--adjust-system-clock"><span class="term"><code class="option">--adjust-system-clock</code></span><a class="headerlink" title="Permalink to this term" href="#--adjust-system-clock">¶</a></dt><dd><p><a href="timedatectl.html"><span class="citerefentry"><span class="refentrytitle">timedatectl</span>(1)</span></a></p></dd><dt id="--after"><span class="term"><code class="option">--after</code></span><a class="headerlink" title="Permalink to this term" href="#--after">¶</a></dt><dd><p><a href="systemctl.html"><span class="citerefentry"><span class="refentrytitle">systemctl</span>(1)</span></a></p></dd><dt id="--after-cursor="><span class="term"><code class="option">--after-cursor=</code></span><a class="headerlink" title="Permalink to this term" href="#--after-cursor=">¶</a></dt><dd><p><a href="journalctl.html"><span class="citerefentry"><span class="refentrytitle">journalctl</span>(1)</span></a></p></dd><dt id="--all"><span class="term"><code class="option">--all</code></span><a class="headerlink" title="Permalink to this term" href="#--all">¶</a></dt><dd><p><a href="journalctl.html"><span class="citerefentry"><span class="refentrytitle">journalctl</span>(1)</span></a>, <a href="loginctl.html"><span class="citerefentry"><span class="refentrytitle">loginctl</span>(1)</span></a>, <a href="machinectl.html"><span class="citerefentry"><span class="refentrytitle">machinectl</span>(1)</span></a>, <a href="systemctl.html"><span class="citerefentry"><span class="refentrytitle">systemctl</span>(1)</span></a>, <a href="systemd-cgls.html"><span class="citerefentry"><span class="refentrytitle">systemd-cgls</span>(1)</span></a></p></dd><dt id="--attr-match="><span class="term"><code class="option">--attr-match=</code></span><a class="headerlink" title="Permalink to this term" href="#--attr-match=">¶</a></dt><dd><p><a href="udevadm.html"><span class="citerefentry"><span class="refentrytitle">udevadm</span>(8)</span></a></p></dd><dt id="--attr-nomatch="><span class="term"><code class="option">--attr-nomatch=</code></span><a class="headerlink" title="Permalink to this term" href="#--attr-nomatch=">¶</a></dt><dd><p><a href="udevadm.html"><span class="citerefentry"><span class="refentrytitle">udevadm</span>(8)</span></a></p></dd><dt id="--attribute-walk"><span class="term"><code class="option">--attribute-walk</code></span><a class="headerlink" title="Permalink to this term" href="#--attribute-walk">¶</a></dt><dd><p><a href="udevadm.html"><span class="citerefentry"><span class="refentrytitle">udevadm</span>(8)</span></a></p></dd><dt id="--batch"><span class="term"><code class="option">--batch</code></span><a class="headerlink" title="Permalink to this term" href="#--batch">¶</a></dt><dd><p><a href="systemd-cgtop.html"><span class="citerefentry"><span class="refentrytitle">systemd-cgtop</span>(1)</span></a></p></dd><dt id="--before"><span class="term"><code class="option">--before</code></span><a class="headerlink" title="Permalink to this term" href="#--before">¶</a></dt><dd><p><a href="systemctl.html"><span class="citerefentry"><span class="refentrytitle">systemctl</span>(1)</span></a></p></dd><dt id="--bind-ro="><span class="term"><code class="option">--bind-ro=</code></span><a class="headerlink" title="Permalink to this term" href="#--bind-ro=">¶</a></dt><dd><p><a href="systemd-nspawn.html"><span class="citerefentry"><span class="refentrytitle">systemd-nspawn</span>(1)</span></a></p></dd><dt id="--bind="><span class="term"><code class="option">--bind=</code></span><a class="headerlink" title="Permalink to this term" href="#--bind=">¶</a></dt><dd><p><a href="systemd-nspawn.html"><span class="citerefentry"><span class="refentrytitle">systemd-nspawn</span>(1)</span></a></p></dd><dt id="--boot"><span class="term"><code class="option">--boot</code></span><a class="headerlink" title="Permalink to this term" href="#--boot">¶</a></dt><dd><p><a href="systemd-nspawn.html"><span class="citerefentry"><span class="refentrytitle">systemd-nspawn</span>(1)</span></a>, <a href="systemd-tmpfiles.html"><span class="citerefentry"><span class="refentrytitle">systemd-tmpfiles</span>(8)</span></a></p></dd><dt id="--boot="><span class="term"><code class="option">--boot=</code></span><a class="headerlink" title="Permalink to this term" href="#--boot=">¶</a></dt><dd><p><a href="journalctl.html"><span class="citerefentry"><span class="refentrytitle">journalctl</span>(1)</span></a></p></dd><dt id="--booted"><span class="term"><code class="option">--booted</code></span><a class="headerlink" title="Permalink to this term" href="#--booted">¶</a></dt><dd><p><a href="systemd-notify.html"><span class="citerefentry"><span class="refentrytitle">systemd-notify</span>(1)</span></a></p></dd><dt id="--capability="><span class="term"><code class="option">--capability=</code></span><a class="headerlink" title="Permalink to this term" href="#--capability=">¶</a></dt><dd><p><a href="systemd-nspawn.html"><span class="citerefentry"><span class="refentrytitle">systemd-nspawn</span>(1)</span></a></p></dd><dt id="--catalog"><span class="term"><code class="option">--catalog</code></span><a class="headerlink" title="Permalink to this term" href="#--catalog">¶</a></dt><dd><p><a href="journalctl.html"><span class="citerefentry"><span class="refentrytitle">journalctl</span>(1)</span></a></p></dd><dt id="--cert="><span class="term"><code class="option">--cert=</code></span><a class="headerlink" title="Permalink to this term" href="#--cert=">¶</a></dt><dd><p><a href="systemd-journal-gatewayd.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-journal-gatewayd.service</span>(8)</span></a></p></dd><dt id="--children-max="><span class="term"><code class="option">--children-max=</code></span><a class="headerlink" title="Permalink to this term" href="#--children-max=">¶</a></dt><dd><p><a href="systemd-udevd.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-udevd.service</span>(8)</span></a>, <a href="udevadm.html"><span class="citerefentry"><span class="refentrytitle">udevadm</span>(8)</span></a></p></dd><dt id="--clean"><span class="term"><code class="option">--clean</code></span><a class="headerlink" title="Permalink to this term" href="#--clean">¶</a></dt><dd><p><a href="systemd-tmpfiles.html"><span class="citerefentry"><span class="refentrytitle">systemd-tmpfiles</span>(8)</span></a></p></dd><dt id="--cleanup-db"><span class="term"><code class="option">--cleanup-db</code></span><a class="headerlink" title="Permalink to this term" href="#--cleanup-db">¶</a></dt><dd><p><a href="udevadm.html"><span class="citerefentry"><span class="refentrytitle">udevadm</span>(8)</span></a></p></dd><dt id="--cmdline"><span class="term"><code class="option">--cmdline</code></span><a class="headerlink" title="Permalink to this term" href="#--cmdline">¶</a></dt><dd><p><a href="systemd-bootchart.html"><span class="citerefentry"><span class="refentrytitle">systemd-bootchart</span>(1)</span></a></p></dd><dt id="--compress"><span class="term"><code class="option">--compress</code></span><a class="headerlink" title="Permalink to this term" href="#--compress">¶</a></dt><dd><p><a href="systemd-journal-remote.html"><span class="citerefentry"><span class="refentrytitle">systemd-journal-remote</span>(8)</span></a></p></dd><dt id="--confirm-spawn"><span class="term"><code class="option">--confirm-spawn</code></span><a class="headerlink" title="Permalink to this term" href="#--confirm-spawn">¶</a></dt><dd><p><a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a></p></dd><dt id="--console"><span class="term"><code class="option">--console</code></span><a class="headerlink" title="Permalink to this term" href="#--console">¶</a></dt><dd><p><a href="systemd-tty-ask-password-agent.html"><span class="citerefentry"><span class="refentrytitle">systemd-tty-ask-password-agent</span>(1)</span></a></p></dd><dt id="--container"><span class="term"><code class="option">--container</code></span><a class="headerlink" title="Permalink to this term" href="#--container">¶</a></dt><dd><p><a href="systemd-detect-virt.html"><span class="citerefentry"><span class="refentrytitle">systemd-detect-virt</span>(1)</span></a></p></dd><dt id="--control-group"><span class="term"><code class="option">--control-group</code></span><a class="headerlink" title="Permalink to this term" href="#--control-group">¶</a></dt><dd><p><a href="systemd-bootchart.html"><span class="citerefentry"><span class="refentrytitle">systemd-bootchart</span>(1)</span></a></p></dd><dt id="--crash-shell"><span class="term"><code class="option">--crash-shell</code></span><a class="headerlink" title="Permalink to this term" href="#--crash-shell">¶</a></dt><dd><p><a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a></p></dd><dt id="--create"><span class="term"><code class="option">--create</code></span><a class="headerlink" title="Permalink to this term" href="#--create">¶</a></dt><dd><p><a href="systemd-tmpfiles.html"><span class="citerefentry"><span class="refentrytitle">systemd-tmpfiles</span>(8)</span></a></p></dd><dt id="--cursor="><span class="term"><code class="option">--cursor=</code></span><a class="headerlink" title="Permalink to this term" href="#--cursor=">¶</a></dt><dd><p><a href="journalctl.html"><span class="citerefentry"><span class="refentrytitle">journalctl</span>(1)</span></a></p></dd><dt id="--daemon"><span class="term"><code class="option">--daemon</code></span><a class="headerlink" title="Permalink to this term" href="#--daemon">¶</a></dt><dd><p><a href="systemd-udevd.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-udevd.service</span>(8)</span></a></p></dd><dt id="--debug"><span class="term"><code class="option">--debug</code></span><a class="headerlink" title="Permalink to this term" href="#--debug">¶</a></dt><dd><p><a href="systemd-udevd.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-udevd.service</span>(8)</span></a>, <a href="udevadm.html"><span class="citerefentry"><span class="refentrytitle">udevadm</span>(8)</span></a></p></dd><dt id="--default-standard-error="><span class="term"><code class="option">--default-standard-error=</code></span><a class="headerlink" title="Permalink to this term" href="#--default-standard-error=">¶</a></dt><dd><p><a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a></p></dd><dt id="--default-standard-output="><span class="term"><code class="option">--default-standard-output=</code></span><a class="headerlink" title="Permalink to this term" href="#--default-standard-output=">¶</a></dt><dd><p><a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a></p></dd><dt id="--delay="><span class="term"><code class="option">--delay=</code></span><a class="headerlink" title="Permalink to this term" href="#--delay=">¶</a></dt><dd><p><a href="systemd-cgtop.html"><span class="citerefentry"><span class="refentrytitle">systemd-cgtop</span>(1)</span></a></p></dd><dt id="--depth="><span class="term"><code class="option">--depth=</code></span><a class="headerlink" title="Permalink to this term" href="#--depth=">¶</a></dt><dd><p><a href="systemd-cgtop.html"><span class="citerefentry"><span class="refentrytitle">systemd-cgtop</span>(1)</span></a></p></dd><dt id="--description="><span class="term"><code class="option">--description=</code></span><a class="headerlink" title="Permalink to this term" href="#--description=">¶</a></dt><dd><p><a href="systemd-run.html"><span class="citerefentry"><span class="refentrytitle">systemd-run</span>(1)</span></a></p></dd><dt id="--device-id-of-file="><span class="term"><code class="option">--device-id-of-file=</code></span><a class="headerlink" title="Permalink to this term" href="#--device-id-of-file=">¶</a></dt><dd><p><a href="udevadm.html"><span class="citerefentry"><span class="refentrytitle">udevadm</span>(8)</span></a></p></dd><dt id="--diff="><span class="term"><code class="option">--diff=</code></span><a class="headerlink" title="Permalink to this term" href="#--diff=">¶</a></dt><dd><p><a href="systemd-delta.html"><span class="citerefentry"><span class="refentrytitle">systemd-delta</span>(1)</span></a></p></dd><dt id="--directory="><span class="term"><code class="option">--directory=</code></span><a class="headerlink" title="Permalink to this term" href="#--directory=">¶</a></dt><dd><p><a href="journalctl.html"><span class="citerefentry"><span class="refentrytitle">journalctl</span>(1)</span></a>, <a href="systemd-nspawn.html"><span class="citerefentry"><span class="refentrytitle">systemd-nspawn</span>(1)</span></a></p></dd><dt id="--disk-usage"><span class="term"><code class="option">--disk-usage</code></span><a class="headerlink" title="Permalink to this term" href="#--disk-usage">¶</a></dt><dd><p><a href="journalctl.html"><span class="citerefentry"><span class="refentrytitle">journalctl</span>(1)</span></a></p></dd><dt id="--dmesg"><span class="term"><code class="option">--dmesg</code></span><a class="headerlink" title="Permalink to this term" href="#--dmesg">¶</a></dt><dd><p><a href="journalctl.html"><span class="citerefentry"><span class="refentrytitle">journalctl</span>(1)</span></a></p></dd><dt id="--drop-capability="><span class="term"><code class="option">--drop-capability=</code></span><a class="headerlink" title="Permalink to this term" href="#--drop-capability=">¶</a></dt><dd><p><a href="systemd-nspawn.html"><span class="citerefentry"><span class="refentrytitle">systemd-nspawn</span>(1)</span></a></p></dd><dt id="--dry-run"><span class="term"><code class="option">--dry-run</code></span><a class="headerlink" title="Permalink to this term" href="#--dry-run">¶</a></dt><dd><p><a href="udevadm.html"><span class="citerefentry"><span class="refentrytitle">udevadm</span>(8)</span></a></p></dd><dt id="--dump-catalog"><span class="term"><code class="option">--dump-catalog</code></span><a class="headerlink" title="Permalink to this term" href="#--dump-catalog">¶</a></dt><dd><p><a href="journalctl.html"><span class="citerefentry"><span class="refentrytitle">journalctl</span>(1)</span></a></p></dd><dt id="--dump-configuration-items"><span class="term"><code class="option">--dump-configuration-items</code></span><a class="headerlink" title="Permalink to this term" href="#--dump-configuration-items">¶</a></dt><dd><p><a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a></p></dd><dt id="--dump-core"><span class="term"><code class="option">--dump-core</code></span><a class="headerlink" title="Permalink to this term" href="#--dump-core">¶</a></dt><dd><p><a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a></p></dd><dt id="--entropy"><span class="term"><code class="option">--entropy</code></span><a class="headerlink" title="Permalink to this term" href="#--entropy">¶</a></dt><dd><p><a href="systemd-bootchart.html"><span class="citerefentry"><span class="refentrytitle">systemd-bootchart</span>(1)</span></a></p></dd><dt id="--exclude-prefix="><span class="term"><code class="option">--exclude-prefix=</code></span><a class="headerlink" title="Permalink to this term" href="#--exclude-prefix=">¶</a></dt><dd><p><a href="systemd-tmpfiles.html"><span class="citerefentry"><span class="refentrytitle">systemd-tmpfiles</span>(8)</span></a></p></dd><dt id="--exec-delay="><span class="term"><code class="option">--exec-delay=</code></span><a class="headerlink" title="Permalink to this term" href="#--exec-delay=">¶</a></dt><dd><p><a href="systemd-udevd.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-udevd.service</span>(8)</span></a></p></dd><dt id="--exit"><span class="term"><code class="option">--exit</code></span><a class="headerlink" title="Permalink to this term" href="#--exit">¶</a></dt><dd><p><a href="udevadm.html"><span class="citerefentry"><span class="refentrytitle">udevadm</span>(8)</span></a></p></dd><dt id="--exit-if-exists="><span class="term"><code class="option">--exit-if-exists=</code></span><a class="headerlink" title="Permalink to this term" href="#--exit-if-exists=">¶</a></dt><dd><p><a href="udevadm.html"><span class="citerefentry"><span class="refentrytitle">udevadm</span>(8)</span></a></p></dd><dt id="--export"><span class="term"><code class="option">--export</code></span><a class="headerlink" title="Permalink to this term" href="#--export">¶</a></dt><dd><p><a href="udevadm.html"><span class="citerefentry"><span class="refentrytitle">udevadm</span>(8)</span></a></p></dd><dt id="--export-db"><span class="term"><code class="option">--export-db</code></span><a class="headerlink" title="Permalink to this term" href="#--export-db">¶</a></dt><dd><p><a href="udevadm.html"><span class="citerefentry"><span class="refentrytitle">udevadm</span>(8)</span></a></p></dd><dt id="--export-prefix="><span class="term"><code class="option">--export-prefix=</code></span><a class="headerlink" title="Permalink to this term" href="#--export-prefix=">¶</a></dt><dd><p><a href="udevadm.html"><span class="citerefentry"><span class="refentrytitle">udevadm</span>(8)</span></a></p></dd><dt id="--field="><span class="term"><code class="option">--field=</code></span><a class="headerlink" title="Permalink to this term" href="#--field=">¶</a></dt><dd><p><a href="journalctl.html"><span class="citerefentry"><span class="refentrytitle">journalctl</span>(1)</span></a>, <a href="systemd-coredumpctl.html"><span class="citerefentry"><span class="refentrytitle">systemd-coredumpctl</span>(1)</span></a></p></dd><dt id="--file-size-max="><span class="term"><code class="option">--file-size-max=</code></span><a class="headerlink" title="Permalink to this term" href="#--file-size-max=">¶</a></dt><dd><p><a href="systemd-readahead-replay.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-readahead-replay.service</span>(8)</span></a></p></dd><dt id="--file="><span class="term"><code class="option">--file=</code></span><a class="headerlink" title="Permalink to this term" href="#--file=">¶</a></dt><dd><p><a href="journalctl.html"><span class="citerefentry"><span class="refentrytitle">journalctl</span>(1)</span></a></p></dd><dt id="--files-max="><span class="term"><code class="option">--files-max=</code></span><a class="headerlink" title="Permalink to this term" href="#--files-max=">¶</a></dt><dd><p><a href="systemd-readahead-replay.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-readahead-replay.service</span>(8)</span></a></p></dd><dt id="--follow"><span class="term"><code class="option">--follow</code></span><a class="headerlink" title="Permalink to this term" href="#--follow">¶</a></dt><dd><p><a href="journalctl.html"><span class="citerefentry"><span class="refentrytitle">journalctl</span>(1)</span></a></p></dd><dt id="--force"><span class="term"><code class="option">--force</code></span><a class="headerlink" title="Permalink to this term" href="#--force">¶</a></dt><dd><p><a href="halt.html"><span class="citerefentry"><span class="refentrytitle">halt</span>(8)</span></a>, <a href="journalctl.html"><span class="citerefentry"><span class="refentrytitle">journalctl</span>(1)</span></a>, <a href="systemctl.html"><span class="citerefentry"><span class="refentrytitle">systemctl</span>(1)</span></a></p></dd><dt id="--freq"><span class="term"><code class="option">--freq</code></span><a class="headerlink" title="Permalink to this term" href="#--freq">¶</a></dt><dd><p><a href="systemd-bootchart.html"><span class="citerefentry"><span class="refentrytitle">systemd-bootchart</span>(1)</span></a></p></dd><dt id="--from-pattern="><span class="term"><code class="option">--from-pattern=</code></span><a class="headerlink" title="Permalink to this term" href="#--from-pattern=">¶</a></dt><dd><p><a href="systemd-analyze.html"><span class="citerefentry"><span class="refentrytitle">systemd-analyze</span>(1)</span></a></p></dd><dt id="--full"><span class="term"><code class="option">--full</code></span><a class="headerlink" title="Permalink to this term" href="#--full">¶</a></dt><dd><p><a href="journalctl.html"><span class="citerefentry"><span class="refentrytitle">journalctl</span>(1)</span></a>, <a href="loginctl.html"><span class="citerefentry"><span class="refentrytitle">loginctl</span>(1)</span></a>, <a href="machinectl.html"><span class="citerefentry"><span class="refentrytitle">machinectl</span>(1)</span></a>, <a href="systemctl.html"><span class="citerefentry"><span class="refentrytitle">systemctl</span>(1)</span></a>, <a href="systemd-cgls.html"><span class="citerefentry"><span class="refentrytitle">systemd-cgls</span>(1)</span></a></p></dd><dt id="--fuzz="><span class="term"><code class="option">--fuzz=</code></span><a class="headerlink" title="Permalink to this term" href="#--fuzz=">¶</a></dt><dd><p><a href="systemd-analyze.html"><span class="citerefentry"><span class="refentrytitle">systemd-analyze</span>(1)</span></a></p></dd><dt id="--getter="><span class="term"><code class="option">--getter=</code></span><a class="headerlink" title="Permalink to this term" href="#--getter=">¶</a></dt><dd><p><a href="systemd-journal-remote.html"><span class="citerefentry"><span class="refentrytitle">systemd-journal-remote</span>(8)</span></a></p></dd><dt id="--gid="><span class="term"><code class="option">--gid=</code></span><a class="headerlink" title="Permalink to this term" href="#--gid=">¶</a></dt><dd><p><a href="systemd-run.html"><span class="citerefentry"><span class="refentrytitle">systemd-run</span>(1)</span></a></p></dd><dt id="--global"><span class="term"><code class="option">--global</code></span><a class="headerlink" title="Permalink to this term" href="#--global">¶</a></dt><dd><p><a href="systemctl.html"><span class="citerefentry"><span class="refentrytitle">systemctl</span>(1)</span></a></p></dd><dt id="--halt"><span class="term"><code class="option">--halt</code></span><a class="headerlink" title="Permalink to this term" href="#--halt">¶</a></dt><dd><p><a href="halt.html"><span class="citerefentry"><span class="refentrytitle">halt</span>(8)</span></a>, <a href="shutdown.html"><span class="citerefentry"><span class="refentrytitle">shutdown</span>(8)</span></a></p></dd><dt id="--header"><span class="term"><code class="option">--header</code></span><a class="headerlink" title="Permalink to this term" href="#--header">¶</a></dt><dd><p><a href="journalctl.html"><span class="citerefentry"><span class="refentrytitle">journalctl</span>(1)</span></a></p></dd><dt id="--help"><span class="term"><code class="option">--help</code></span><a class="headerlink" title="Permalink to this term" href="#--help">¶</a></dt><dd><p><a href="bootctl.html"><span class="citerefentry"><span class="refentrytitle">bootctl</span>(1)</span></a>, <a href="busctl.html"><span class="citerefentry"><span class="refentrytitle">busctl</span>(1)</span></a>, <a href="halt.html"><span class="citerefentry"><span class="refentrytitle">halt</span>(8)</span></a>, <a href="hostnamectl.html"><span class="citerefentry"><span class="refentrytitle">hostnamectl</span>(1)</span></a>, <a href="journalctl.html"><span class="citerefentry"><span class="refentrytitle">journalctl</span>(1)</span></a>, <a href="localectl.html"><span class="citerefentry"><span class="refentrytitle">localectl</span>(1)</span></a>, <a href="loginctl.html"><span class="citerefentry"><span class="refentrytitle">loginctl</span>(1)</span></a>, <a href="machinectl.html"><span class="citerefentry"><span class="refentrytitle">machinectl</span>(1)</span></a>, <a href="runlevel.html"><span class="citerefentry"><span class="refentrytitle">runlevel</span>(8)</span></a>, <a href="shutdown.html"><span class="citerefentry"><span class="refentrytitle">shutdown</span>(8)</span></a>, <a href="systemctl.html"><span class="citerefentry"><span class="refentrytitle">systemctl</span>(1)</span></a>, <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>, <a href="systemd-activate.html"><span class="citerefentry"><span class="refentrytitle">systemd-activate</span>(8)</span></a>, <a href="systemd-analyze.html"><span class="citerefentry"><span class="refentrytitle">systemd-analyze</span>(1)</span></a>, <a href="systemd-ask-password.html"><span class="citerefentry"><span class="refentrytitle">systemd-ask-password</span>(1)</span></a>, <a href="systemd-bootchart.html"><span class="citerefentry"><span class="refentrytitle">systemd-bootchart</span>(1)</span></a>, <a href="systemd-bus-proxyd.html"><span class="citerefentry"><span class="refentrytitle">systemd-bus-proxyd</span>(8)</span></a>, <a href="systemd-cat.html"><span class="citerefentry"><span class="refentrytitle">systemd-cat</span>(1)</span></a>, <a href="systemd-cgls.html"><span class="citerefentry"><span class="refentrytitle">systemd-cgls</span>(1)</span></a>, <a href="systemd-cgtop.html"><span class="citerefentry"><span class="refentrytitle">systemd-cgtop</span>(1)</span></a>, <a href="systemd-coredumpctl.html"><span class="citerefentry"><span class="refentrytitle">systemd-coredumpctl</span>(1)</span></a>, <a href="systemd-delta.html"><span class="citerefentry"><span class="refentrytitle">systemd-delta</span>(1)</span></a>, <a href="systemd-detect-virt.html"><span class="citerefentry"><span class="refentrytitle">systemd-detect-virt</span>(1)</span></a>, <a href="systemd-inhibit.html"><span class="citerefentry"><span class="refentrytitle">systemd-inhibit</span>(1)</span></a>, <a href="systemd-journal-gatewayd.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-journal-gatewayd.service</span>(8)</span></a>, <a href="systemd-journal-remote.html"><span class="citerefentry"><span class="refentrytitle">systemd-journal-remote</span>(8)</span></a>, <a href="systemd-machine-id-setup.html"><span class="citerefentry"><span class="refentrytitle">systemd-machine-id-setup</span>(1)</span></a>, <a href="systemd-notify.html"><span class="citerefentry"><span class="refentrytitle">systemd-notify</span>(1)</span></a>, <a href="systemd-nspawn.html"><span class="citerefentry"><span class="refentrytitle">systemd-nspawn</span>(1)</span></a>, <a href="systemd-readahead-replay.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-readahead-replay.service</span>(8)</span></a>, <a href="systemd-run.html"><span class="citerefentry"><span class="refentrytitle">systemd-run</span>(1)</span></a>, <a href="systemd-socket-proxyd.html"><span class="citerefentry"><span class="refentrytitle">systemd-socket-proxyd</span>(8)</span></a>, <a href="systemd-suspend.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-suspend.service</span>(8)</span></a>, <a href="systemd-tmpfiles.html"><span class="citerefentry"><span class="refentrytitle">systemd-tmpfiles</span>(8)</span></a>, <a href="systemd-tty-ask-password-agent.html"><span class="citerefentry"><span class="refentrytitle">systemd-tty-ask-password-agent</span>(1)</span></a>, <a href="systemd-udevd.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-udevd.service</span>(8)</span></a>, <a href="telinit.html"><span class="citerefentry"><span class="refentrytitle">telinit</span>(8)</span></a>, <a href="timedatectl.html"><span class="citerefentry"><span class="refentrytitle">timedatectl</span>(1)</span></a>, <a href="udevadm.html"><span class="citerefentry"><span class="refentrytitle">udevadm</span>(8)</span></a></p></dd><dt id="--host="><span class="term"><code class="option">--host=</code></span><a class="headerlink" title="Permalink to this term" href="#--host=">¶</a></dt><dd><p><a href="busctl.html"><span class="citerefentry"><span class="refentrytitle">busctl</span>(1)</span></a>, <a href="hostnamectl.html"><span class="citerefentry"><span class="refentrytitle">hostnamectl</span>(1)</span></a>, <a href="localectl.html"><span class="citerefentry"><span class="refentrytitle">localectl</span>(1)</span></a>, <a href="loginctl.html"><span class="citerefentry"><span class="refentrytitle">loginctl</span>(1)</span></a>, <a href="machinectl.html"><span class="citerefentry"><span class="refentrytitle">machinectl</span>(1)</span></a>, <a href="systemctl.html"><span class="citerefentry"><span class="refentrytitle">systemctl</span>(1)</span></a>, <a href="systemd-analyze.html"><span class="citerefentry"><span class="refentrytitle">systemd-analyze</span>(1)</span></a>, <a href="systemd-run.html"><span class="citerefentry"><span class="refentrytitle">systemd-run</span>(1)</span></a>, <a href="timedatectl.html"><span class="citerefentry"><span class="refentrytitle">timedatectl</span>(1)</span></a></p></dd><dt id="--icon="><span class="term"><code class="option">--icon=</code></span><a class="headerlink" title="Permalink to this term" href="#--icon=">¶</a></dt><dd><p><a href="systemd-ask-password.html"><span class="citerefentry"><span class="refentrytitle">systemd-ask-password</span>(1)</span></a></p></dd><dt id="--identifier="><span class="term"><code class="option">--identifier=</code></span><a class="headerlink" title="Permalink to this term" href="#--identifier=">¶</a></dt><dd><p><a href="systemd-cat.html"><span class="citerefentry"><span class="refentrytitle">systemd-cat</span>(1)</span></a></p></dd><dt id="--ignore-inhibitors"><span class="term"><code class="option">--ignore-inhibitors</code></span><a class="headerlink" title="Permalink to this term" href="#--ignore-inhibitors">¶</a></dt><dd><p><a href="systemctl.html"><span class="citerefentry"><span class="refentrytitle">systemctl</span>(1)</span></a></p></dd><dt id="--image="><span class="term"><code class="option">--image=</code></span><a class="headerlink" title="Permalink to this term" href="#--image=">¶</a></dt><dd><p><a href="systemd-nspawn.html"><span class="citerefentry"><span class="refentrytitle">systemd-nspawn</span>(1)</span></a></p></dd><dt id="--init"><span class="term"><code class="option">--init</code></span><a class="headerlink" title="Permalink to this term" href="#--init">¶</a></dt><dd><p><a href="systemd-bootchart.html"><span class="citerefentry"><span class="refentrytitle">systemd-bootchart</span>(1)</span></a></p></dd><dt id="--interface="><span class="term"><code class="option">--interface=</code></span><a class="headerlink" title="Permalink to this term" href="#--interface=">¶</a></dt><dd><p><a href="systemd-networkd-wait-online.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-networkd-wait-online.service</span>(8)</span></a></p></dd><dt id="--interval="><span class="term"><code class="option">--interval=</code></span><a class="headerlink" title="Permalink to this term" href="#--interval=">¶</a></dt><dd><p><a href="journalctl.html"><span class="citerefentry"><span class="refentrytitle">journalctl</span>(1)</span></a></p></dd><dt id="--iterations="><span class="term"><code class="option">--iterations=</code></span><a class="headerlink" title="Permalink to this term" href="#--iterations=">¶</a></dt><dd><p><a href="systemd-cgtop.html"><span class="citerefentry"><span class="refentrytitle">systemd-cgtop</span>(1)</span></a></p></dd><dt id="--job-mode="><span class="term"><code class="option">--job-mode=</code></span><a class="headerlink" title="Permalink to this term" href="#--job-mode=">¶</a></dt><dd><p><a href="systemctl.html"><span class="citerefentry"><span class="refentrytitle">systemctl</span>(1)</span></a></p></dd><dt id="--keep-unit"><span class="term"><code class="option">--keep-unit</code></span><a class="headerlink" title="Permalink to this term" href="#--keep-unit">¶</a></dt><dd><p><a href="systemd-nspawn.html"><span class="citerefentry"><span class="refentrytitle">systemd-nspawn</span>(1)</span></a></p></dd><dt id="--kernel"><span class="term"><code class="option">--kernel</code></span><a class="headerlink" title="Permalink to this term" href="#--kernel">¶</a></dt><dd><p><a href="udevadm.html"><span class="citerefentry"><span class="refentrytitle">udevadm</span>(8)</span></a></p></dd><dt id="--key="><span class="term"><code class="option">--key=</code></span><a class="headerlink" title="Permalink to this term" href="#--key=">¶</a></dt><dd><p><a href="systemd-journal-gatewayd.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-journal-gatewayd.service</span>(8)</span></a></p></dd><dt id="--kill-who="><span class="term"><code class="option">--kill-who=</code></span><a class="headerlink" title="Permalink to this term" href="#--kill-who=">¶</a></dt><dd><p><a href="loginctl.html"><span class="citerefentry"><span class="refentrytitle">loginctl</span>(1)</span></a>, <a href="machinectl.html"><span class="citerefentry"><span class="refentrytitle">machinectl</span>(1)</span></a>, <a href="systemctl.html"><span class="citerefentry"><span class="refentrytitle">systemctl</span>(1)</span></a></p></dd><dt id="--level-prefix="><span class="term"><code class="option">--level-prefix=</code></span><a class="headerlink" title="Permalink to this term" href="#--level-prefix=">¶</a></dt><dd><p><a href="systemd-cat.html"><span class="citerefentry"><span class="refentrytitle">systemd-cat</span>(1)</span></a></p></dd><dt id="--lines="><span class="term"><code class="option">--lines=</code></span><a class="headerlink" title="Permalink to this term" href="#--lines=">¶</a></dt><dd><p><a href="journalctl.html"><span class="citerefentry"><span class="refentrytitle">journalctl</span>(1)</span></a>, <a href="systemctl.html"><span class="citerefentry"><span class="refentrytitle">systemctl</span>(1)</span></a></p></dd><dt id="--link-journal="><span class="term"><code class="option">--link-journal=</code></span><a class="headerlink" title="Permalink to this term" href="#--link-journal=">¶</a></dt><dd><p><a href="systemd-nspawn.html"><span class="citerefentry"><span class="refentrytitle">systemd-nspawn</span>(1)</span></a></p></dd><dt id="--list"><span class="term"><code class="option">--list</code></span><a class="headerlink" title="Permalink to this term" href="#--list">¶</a></dt><dd><p><a href="systemd-inhibit.html"><span class="citerefentry"><span class="refentrytitle">systemd-inhibit</span>(1)</span></a>, <a href="systemd-tty-ask-password-agent.html"><span class="citerefentry"><span class="refentrytitle">systemd-tty-ask-password-agent</span>(1)</span></a></p></dd><dt id="--list-boots"><span class="term"><code class="option">--list-boots</code></span><a class="headerlink" title="Permalink to this term" href="#--list-boots">¶</a></dt><dd><p><a href="journalctl.html"><span class="citerefentry"><span class="refentrytitle">journalctl</span>(1)</span></a></p></dd><dt id="--list-catalog"><span class="term"><code class="option">--list-catalog</code></span><a class="headerlink" title="Permalink to this term" href="#--list-catalog">¶</a></dt><dd><p><a href="journalctl.html"><span class="citerefentry"><span class="refentrytitle">journalctl</span>(1)</span></a></p></dd><dt id="--listen-http="><span class="term"><code class="option">--listen-http=</code></span><a class="headerlink" title="Permalink to this term" href="#--listen-http=">¶</a></dt><dd><p><a href="systemd-journal-remote.html"><span class="citerefentry"><span class="refentrytitle">systemd-journal-remote</span>(8)</span></a></p></dd><dt id="--listen-https="><span class="term"><code class="option">--listen-https=</code></span><a class="headerlink" title="Permalink to this term" href="#--listen-https=">¶</a></dt><dd><p><a href="systemd-journal-remote.html"><span class="citerefentry"><span class="refentrytitle">systemd-journal-remote</span>(8)</span></a></p></dd><dt id="--listen-raw="><span class="term"><code class="option">--listen-raw=</code></span><a class="headerlink" title="Permalink to this term" href="#--listen-raw=">¶</a></dt><dd><p><a href="systemd-journal-remote.html"><span class="citerefentry"><span class="refentrytitle">systemd-journal-remote</span>(8)</span></a></p></dd><dt id="--listen="><span class="term"><code class="option">--listen=</code></span><a class="headerlink" title="Permalink to this term" href="#--listen=">¶</a></dt><dd><p><a href="systemd-activate.html"><span class="citerefentry"><span class="refentrytitle">systemd-activate</span>(8)</span></a></p></dd><dt id="--log-color="><span class="term"><code class="option">--log-color=</code></span><a class="headerlink" title="Permalink to this term" href="#--log-color=">¶</a></dt><dd><p><a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a></p></dd><dt id="--log-level="><span class="term"><code class="option">--log-level=</code></span><a class="headerlink" title="Permalink to this term" href="#--log-level=">¶</a></dt><dd><p><a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a></p></dd><dt id="--log-location="><span class="term"><code class="option">--log-location=</code></span><a class="headerlink" title="Permalink to this term" href="#--log-location=">¶</a></dt><dd><p><a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a></p></dd><dt id="--log-priority="><span class="term"><code class="option">--log-priority=</code></span><a class="headerlink" title="Permalink to this term" href="#--log-priority=">¶</a></dt><dd><p><a href="udevadm.html"><span class="citerefentry"><span class="refentrytitle">udevadm</span>(8)</span></a></p></dd><dt id="--log-target="><span class="term"><code class="option">--log-target=</code></span><a class="headerlink" title="Permalink to this term" href="#--log-target=">¶</a></dt><dd><p><a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a></p></dd><dt id="--machine="><span class="term"><code class="option">--machine=</code></span><a class="headerlink" title="Permalink to this term" href="#--machine=">¶</a></dt><dd><p><a href="busctl.html"><span class="citerefentry"><span class="refentrytitle">busctl</span>(1)</span></a>, <a href="journalctl.html"><span class="citerefentry"><span class="refentrytitle">journalctl</span>(1)</span></a>, <a href="loginctl.html"><span class="citerefentry"><span class="refentrytitle">loginctl</span>(1)</span></a>, <a href="machinectl.html"><span class="citerefentry"><span class="refentrytitle">machinectl</span>(1)</span></a>, <a href="systemctl.html"><span class="citerefentry"><span class="refentrytitle">systemctl</span>(1)</span></a>, <a href="systemd-analyze.html"><span class="citerefentry"><span class="refentrytitle">systemd-analyze</span>(1)</span></a>, <a href="systemd-cgls.html"><span class="citerefentry"><span class="refentrytitle">systemd-cgls</span>(1)</span></a>, <a href="systemd-nspawn.html"><span class="citerefentry"><span class="refentrytitle">systemd-nspawn</span>(1)</span></a>, <a href="systemd-run.html"><span class="citerefentry"><span class="refentrytitle">systemd-run</span>(1)</span></a>, <a href="timedatectl.html"><span class="citerefentry"><span class="refentrytitle">timedatectl</span>(1)</span></a></p></dd><dt id="--match="><span class="term"><code class="option">--match=</code></span><a class="headerlink" title="Permalink to this term" href="#--match=">¶</a></dt><dd><p><a href="busctl.html"><span class="citerefentry"><span class="refentrytitle">busctl</span>(1)</span></a></p></dd><dt id="--merge"><span class="term"><code class="option">--merge</code></span><a class="headerlink" title="Permalink to this term" href="#--merge">¶</a></dt><dd><p><a href="journalctl.html"><span class="citerefentry"><span class="refentrytitle">journalctl</span>(1)</span></a></p></dd><dt id="--mode="><span class="term"><code class="option">--mode=</code></span><a class="headerlink" title="Permalink to this term" href="#--mode=">¶</a></dt><dd><p><a href="systemd-inhibit.html"><span class="citerefentry"><span class="refentrytitle">systemd-inhibit</span>(1)</span></a></p></dd><dt id="--multiple"><span class="term"><code class="option">--multiple</code></span><a class="headerlink" title="Permalink to this term" href="#--multiple">¶</a></dt><dd><p><a href="systemd-ask-password.html"><span class="citerefentry"><span class="refentrytitle">systemd-ask-password</span>(1)</span></a></p></dd><dt id="--name="><span class="term"><code class="option">--name=</code></span><a class="headerlink" title="Permalink to this term" href="#--name=">¶</a></dt><dd><p><a href="udevadm.html"><span class="citerefentry"><span class="refentrytitle">udevadm</span>(8)</span></a></p></dd><dt id="--network-bridge="><span class="term"><code class="option">--network-bridge=</code></span><a class="headerlink" title="Permalink to this term" href="#--network-bridge=">¶</a></dt><dd><p><a href="systemd-nspawn.html"><span class="citerefentry"><span class="refentrytitle">systemd-nspawn</span>(1)</span></a></p></dd><dt id="--network-interface="><span class="term"><code class="option">--network-interface=</code></span><a class="headerlink" title="Permalink to this term" href="#--network-interface=">¶</a></dt><dd><p><a href="systemd-nspawn.html"><span class="citerefentry"><span class="refentrytitle">systemd-nspawn</span>(1)</span></a></p></dd><dt id="--network-macvlan="><span class="term"><code class="option">--network-macvlan=</code></span><a class="headerlink" title="Permalink to this term" href="#--network-macvlan=">¶</a></dt><dd><p><a href="systemd-nspawn.html"><span class="citerefentry"><span class="refentrytitle">systemd-nspawn</span>(1)</span></a></p></dd><dt id="--network-veth"><span class="term"><code class="option">--network-veth</code></span><a class="headerlink" title="Permalink to this term" href="#--network-veth">¶</a></dt><dd><p><a href="systemd-nspawn.html"><span class="citerefentry"><span class="refentrytitle">systemd-nspawn</span>(1)</span></a></p></dd><dt id="--new-id128"><span class="term"><code class="option">--new-id128</code></span><a class="headerlink" title="Permalink to this term" href="#--new-id128">¶</a></dt><dd><p><a href="journalctl.html"><span class="citerefentry"><span class="refentrytitle">journalctl</span>(1)</span></a></p></dd><dt id="--nice="><span class="term"><code class="option">--nice=</code></span><a class="headerlink" title="Permalink to this term" href="#--nice=">¶</a></dt><dd><p><a href="systemd-run.html"><span class="citerefentry"><span class="refentrytitle">systemd-run</span>(1)</span></a></p></dd><dt id="--no-ask-password"><span class="term"><code class="option">--no-ask-password</code></span><a class="headerlink" title="Permalink to this term" href="#--no-ask-password">¶</a></dt><dd><p><a href="hostnamectl.html"><span class="citerefentry"><span class="refentrytitle">hostnamectl</span>(1)</span></a>, <a href="localectl.html"><span class="citerefentry"><span class="refentrytitle">localectl</span>(1)</span></a>, <a href="loginctl.html"><span class="citerefentry"><span class="refentrytitle">loginctl</span>(1)</span></a>, <a href="systemctl.html"><span class="citerefentry"><span class="refentrytitle">systemctl</span>(1)</span></a>, <a href="timedatectl.html"><span class="citerefentry"><span class="refentrytitle">timedatectl</span>(1)</span></a></p></dd><dt id="--no-block"><span class="term"><code class="option">--no-block</code></span><a class="headerlink" title="Permalink to this term" href="#--no-block">¶</a></dt><dd><p><a href="systemctl.html"><span class="citerefentry"><span class="refentrytitle">systemctl</span>(1)</span></a></p></dd><dt id="--no-compress"><span class="term"><code class="option">--no-compress</code></span><a class="headerlink" title="Permalink to this term" href="#--no-compress">¶</a></dt><dd><p><a href="systemd-journal-remote.html"><span class="citerefentry"><span class="refentrytitle">systemd-journal-remote</span>(8)</span></a></p></dd><dt id="--no-convert"><span class="term"><code class="option">--no-convert</code></span><a class="headerlink" title="Permalink to this term" href="#--no-convert">¶</a></dt><dd><p><a href="localectl.html"><span class="citerefentry"><span class="refentrytitle">localectl</span>(1)</span></a></p></dd><dt id="--no-filter"><span class="term"><code class="option">--no-filter</code></span><a class="headerlink" title="Permalink to this term" href="#--no-filter">¶</a></dt><dd><p><a href="systemd-bootchart.html"><span class="citerefentry"><span class="refentrytitle">systemd-bootchart</span>(1)</span></a></p></dd><dt id="--no-full"><span class="term"><code class="option">--no-full</code></span><a class="headerlink" title="Permalink to this term" href="#--no-full">¶</a></dt><dd><p><a href="journalctl.html"><span class="citerefentry"><span class="refentrytitle">journalctl</span>(1)</span></a></p></dd><dt id="--no-legend"><span class="term"><code class="option">--no-legend</code></span><a class="headerlink" title="Permalink to this term" href="#--no-legend">¶</a></dt><dd><p><a href="busctl.html"><span class="citerefentry"><span class="refentrytitle">busctl</span>(1)</span></a>, <a href="loginctl.html"><span class="citerefentry"><span class="refentrytitle">loginctl</span>(1)</span></a>, <a href="machinectl.html"><span class="citerefentry"><span class="refentrytitle">machinectl</span>(1)</span></a>, <a href="systemctl.html"><span class="citerefentry"><span class="refentrytitle">systemctl</span>(1)</span></a>, <a href="systemd-coredumpctl.html"><span class="citerefentry"><span class="refentrytitle">systemd-coredumpctl</span>(1)</span></a></p></dd><dt id="--no-pager"><span class="term"><code class="option">--no-pager</code></span><a class="headerlink" title="Permalink to this term" href="#--no-pager">¶</a></dt><dd><p><a href="busctl.html"><span class="citerefentry"><span class="refentrytitle">busctl</span>(1)</span></a>, <a href="journalctl.html"><span class="citerefentry"><span class="refentrytitle">journalctl</span>(1)</span></a>, <a href="localectl.html"><span class="citerefentry"><span class="refentrytitle">localectl</span>(1)</span></a>, <a href="loginctl.html"><span class="citerefentry"><span class="refentrytitle">loginctl</span>(1)</span></a>, <a href="machinectl.html"><span class="citerefentry"><span class="refentrytitle">machinectl</span>(1)</span></a>, <a href="systemctl.html"><span class="citerefentry"><span class="refentrytitle">systemctl</span>(1)</span></a>, <a href="systemd-analyze.html"><span class="citerefentry"><span class="refentrytitle">systemd-analyze</span>(1)</span></a>, <a href="systemd-cgls.html"><span class="citerefentry"><span class="refentrytitle">systemd-cgls</span>(1)</span></a>, <a href="systemd-coredumpctl.html"><span class="citerefentry"><span class="refentrytitle">systemd-coredumpctl</span>(1)</span></a>, <a href="systemd-delta.html"><span class="citerefentry"><span class="refentrytitle">systemd-delta</span>(1)</span></a>, <a href="timedatectl.html"><span class="citerefentry"><span class="refentrytitle">timedatectl</span>(1)</span></a></p></dd><dt id="--no-reload"><span class="term"><code class="option">--no-reload</code></span><a class="headerlink" title="Permalink to this term" href="#--no-reload">¶</a></dt><dd><p><a href="systemctl.html"><span class="citerefentry"><span class="refentrytitle">systemctl</span>(1)</span></a></p></dd><dt id="--no-seal"><span class="term"><code class="option">--no-seal</code></span><a class="headerlink" title="Permalink to this term" href="#--no-seal">¶</a></dt><dd><p><a href="systemd-journal-remote.html"><span class="citerefentry"><span class="refentrytitle">systemd-journal-remote</span>(8)</span></a></p></dd><dt id="--no-tail"><span class="term"><code class="option">--no-tail</code></span><a class="headerlink" title="Permalink to this term" href="#--no-tail">¶</a></dt><dd><p><a href="journalctl.html"><span class="citerefentry"><span class="refentrytitle">journalctl</span>(1)</span></a></p></dd><dt id="--no-tty"><span class="term"><code class="option">--no-tty</code></span><a class="headerlink" title="Permalink to this term" href="#--no-tty">¶</a></dt><dd><p><a href="systemd-ask-password.html"><span class="citerefentry"><span class="refentrytitle">systemd-ask-password</span>(1)</span></a></p></dd><dt id="--no-wall"><span class="term"><code class="option">--no-wall</code></span><a class="headerlink" title="Permalink to this term" href="#--no-wall">¶</a></dt><dd><p><a href="halt.html"><span class="citerefentry"><span class="refentrytitle">halt</span>(8)</span></a>, <a href="shutdown.html"><span class="citerefentry"><span class="refentrytitle">shutdown</span>(8)</span></a>, <a href="systemctl.html"><span class="citerefentry"><span class="refentrytitle">systemctl</span>(1)</span></a>, <a href="telinit.html"><span class="citerefentry"><span class="refentrytitle">telinit</span>(8)</span></a></p></dd><dt id="--no-wtmp"><span class="term"><code class="option">--no-wtmp</code></span><a class="headerlink" title="Permalink to this term" href="#--no-wtmp">¶</a></dt><dd><p><a href="halt.html"><span class="citerefentry"><span class="refentrytitle">halt</span>(8)</span></a></p></dd><dt id="--order"><span class="term"><code class="option">--order</code></span><a class="headerlink" title="Permalink to this term" href="#--order">¶</a></dt><dd><p><a href="systemd-analyze.html"><span class="citerefentry"><span class="refentrytitle">systemd-analyze</span>(1)</span></a></p></dd><dt id="--output"><span class="term"><code class="option">--output</code></span><a class="headerlink" title="Permalink to this term" href="#--output">¶</a></dt><dd><p><a href="systemd-bootchart.html"><span class="citerefentry"><span class="refentrytitle">systemd-bootchart</span>(1)</span></a></p></dd><dt id="--output="><span class="term"><code class="option">--output=</code></span><a class="headerlink" title="Permalink to this term" href="#--output=">¶</a></dt><dd><p><a href="journalctl.html"><span class="citerefentry"><span class="refentrytitle">journalctl</span>(1)</span></a>, <a href="systemctl.html"><span class="citerefentry"><span class="refentrytitle">systemctl</span>(1)</span></a>, <a href="systemd-coredumpctl.html"><span class="citerefentry"><span class="refentrytitle">systemd-coredumpctl</span>(1)</span></a>, <a href="systemd-journal-remote.html"><span class="citerefentry"><span class="refentrytitle">systemd-journal-remote</span>(8)</span></a></p></dd><dt id="--pager-end"><span class="term"><code class="option">--pager-end</code></span><a class="headerlink" title="Permalink to this term" href="#--pager-end">¶</a></dt><dd><p><a href="journalctl.html"><span class="citerefentry"><span class="refentrytitle">journalctl</span>(1)</span></a></p></dd><dt id="--parent-match="><span class="term"><code class="option">--parent-match=</code></span><a class="headerlink" title="Permalink to this term" href="#--parent-match=">¶</a></dt><dd><p><a href="udevadm.html"><span class="citerefentry"><span class="refentrytitle">udevadm</span>(8)</span></a></p></dd><dt id="--path="><span class="term"><code class="option">--path=</code></span><a class="headerlink" title="Permalink to this term" href="#--path=">¶</a></dt><dd><p><a href="udevadm.html"><span class="citerefentry"><span class="refentrytitle">udevadm</span>(8)</span></a></p></dd><dt id="--personality="><span class="term"><code class="option">--personality=</code></span><a class="headerlink" title="Permalink to this term" href="#--personality=">¶</a></dt><dd><p><a href="systemd-nspawn.html"><span class="citerefentry"><span class="refentrytitle">systemd-nspawn</span>(1)</span></a></p></dd><dt id="--pid="><span class="term"><code class="option">--pid=</code></span><a class="headerlink" title="Permalink to this term" href="#--pid=">¶</a></dt><dd><p><a href="systemd-notify.html"><span class="citerefentry"><span class="refentrytitle">systemd-notify</span>(1)</span></a></p></dd><dt id="--plain"><span class="term"><code class="option">--plain</code></span><a class="headerlink" title="Permalink to this term" href="#--plain">¶</a></dt><dd><p><a href="systemctl.html"><span class="citerefentry"><span class="refentrytitle">systemctl</span>(1)</span></a></p></dd><dt id="--plymouth"><span class="term"><code class="option">--plymouth</code></span><a class="headerlink" title="Permalink to this term" href="#--plymouth">¶</a></dt><dd><p><a href="systemd-tty-ask-password-agent.html"><span class="citerefentry"><span class="refentrytitle">systemd-tty-ask-password-agent</span>(1)</span></a></p></dd><dt id="--poweroff"><span class="term"><code class="option">--poweroff</code></span><a class="headerlink" title="Permalink to this term" href="#--poweroff">¶</a></dt><dd><p><a href="halt.html"><span class="citerefentry"><span class="refentrytitle">halt</span>(8)</span></a>, <a href="shutdown.html"><span class="citerefentry"><span class="refentrytitle">shutdown</span>(8)</span></a></p></dd><dt id="--prefix="><span class="term"><code class="option">--prefix=</code></span><a class="headerlink" title="Permalink to this term" href="#--prefix=">¶</a></dt><dd><p><a href="systemd-tmpfiles.html"><span class="citerefentry"><span class="refentrytitle">systemd-tmpfiles</span>(8)</span></a></p></dd><dt id="--pretty"><span class="term"><code class="option">--pretty</code></span><a class="headerlink" title="Permalink to this term" href="#--pretty">¶</a></dt><dd><p><a href="hostnamectl.html"><span class="citerefentry"><span class="refentrytitle">hostnamectl</span>(1)</span></a></p></dd><dt id="--priority="><span class="term"><code class="option">--priority=</code></span><a class="headerlink" title="Permalink to this term" href="#--priority=">¶</a></dt><dd><p><a href="journalctl.html"><span class="citerefentry"><span class="refentrytitle">journalctl</span>(1)</span></a>, <a href="systemd-cat.html"><span class="citerefentry"><span class="refentrytitle">systemd-cat</span>(1)</span></a></p></dd><dt id="--private-network"><span class="term"><code class="option">--private-network</code></span><a class="headerlink" title="Permalink to this term" href="#--private-network">¶</a></dt><dd><p><a href="systemd-nspawn.html"><span class="citerefentry"><span class="refentrytitle">systemd-nspawn</span>(1)</span></a></p></dd><dt id="--privileged"><span class="term"><code class="option">--privileged</code></span><a class="headerlink" title="Permalink to this term" href="#--privileged">¶</a></dt><dd><p><a href="hostnamectl.html"><span class="citerefentry"><span class="refentrytitle">hostnamectl</span>(1)</span></a>, <a href="localectl.html"><span class="citerefentry"><span class="refentrytitle">localectl</span>(1)</span></a></p></dd><dt id="--property"><span class="term"><code class="option">--property</code></span><a class="headerlink" title="Permalink to this term" href="#--property">¶</a></dt><dd><p><a href="udevadm.html"><span class="citerefentry"><span class="refentrytitle">udevadm</span>(8)</span></a></p></dd><dt id="--property-match="><span class="term"><code class="option">--property-match=</code></span><a class="headerlink" title="Permalink to this term" href="#--property-match=">¶</a></dt><dd><p><a href="udevadm.html"><span class="citerefentry"><span class="refentrytitle">udevadm</span>(8)</span></a></p></dd><dt id="--property="><span class="term"><code class="option">--property=</code></span><a class="headerlink" title="Permalink to this term" href="#--property=">¶</a></dt><dd><p><a href="loginctl.html"><span class="citerefentry"><span class="refentrytitle">loginctl</span>(1)</span></a>, <a href="machinectl.html"><span class="citerefentry"><span class="refentrytitle">machinectl</span>(1)</span></a>, <a href="systemctl.html"><span class="citerefentry"><span class="refentrytitle">systemctl</span>(1)</span></a>, <a href="systemd-run.html"><span class="citerefentry"><span class="refentrytitle">systemd-run</span>(1)</span></a>, <a href="udevadm.html"><span class="citerefentry"><span class="refentrytitle">udevadm</span>(8)</span></a></p></dd><dt id="--pss"><span class="term"><code class="option">--pss</code></span><a class="headerlink" title="Permalink to this term" href="#--pss">¶</a></dt><dd><p><a href="systemd-bootchart.html"><span class="citerefentry"><span class="refentrytitle">systemd-bootchart</span>(1)</span></a></p></dd><dt id="--query"><span class="term"><code class="option">--query</code></span><a class="headerlink" title="Permalink to this term" href="#--query">¶</a></dt><dd><p><a href="systemd-tty-ask-password-agent.html"><span class="citerefentry"><span class="refentrytitle">systemd-tty-ask-password-agent</span>(1)</span></a></p></dd><dt id="--query="><span class="term"><code class="option">--query=</code></span><a class="headerlink" title="Permalink to this term" href="#--query=">¶</a></dt><dd><p><a href="udevadm.html"><span class="citerefentry"><span class="refentrytitle">udevadm</span>(8)</span></a></p></dd><dt id="--quiet"><span class="term"><code class="option">--quiet</code></span><a class="headerlink" title="Permalink to this term" href="#--quiet">¶</a></dt><dd><p><a href="journalctl.html"><span class="citerefentry"><span class="refentrytitle">journalctl</span>(1)</span></a>, <a href="systemctl.html"><span class="citerefentry"><span class="refentrytitle">systemctl</span>(1)</span></a>, <a href="systemd-detect-virt.html"><span class="citerefentry"><span class="refentrytitle">systemd-detect-virt</span>(1)</span></a>, <a href="systemd-nspawn.html"><span class="citerefentry"><span class="refentrytitle">systemd-nspawn</span>(1)</span></a></p></dd><dt id="--read-only"><span class="term"><code class="option">--read-only</code></span><a class="headerlink" title="Permalink to this term" href="#--read-only">¶</a></dt><dd><p><a href="systemd-nspawn.html"><span class="citerefentry"><span class="refentrytitle">systemd-nspawn</span>(1)</span></a></p></dd><dt id="--readahead="><span class="term"><code class="option">--readahead=</code></span><a class="headerlink" title="Permalink to this term" href="#--readahead=">¶</a></dt><dd><p><a href="systemd-notify.html"><span class="citerefentry"><span class="refentrytitle">systemd-notify</span>(1)</span></a></p></dd><dt id="--ready"><span class="term"><code class="option">--ready</code></span><a class="headerlink" title="Permalink to this term" href="#--ready">¶</a></dt><dd><p><a href="systemd-notify.html"><span class="citerefentry"><span class="refentrytitle">systemd-notify</span>(1)</span></a></p></dd><dt id="--reboot"><span class="term"><code class="option">--reboot</code></span><a class="headerlink" title="Permalink to this term" href="#--reboot">¶</a></dt><dd><p><a href="halt.html"><span class="citerefentry"><span class="refentrytitle">halt</span>(8)</span></a>, <a href="shutdown.html"><span class="citerefentry"><span class="refentrytitle">shutdown</span>(8)</span></a></p></dd><dt id="--recursive"><span class="term"><code class="option">--recursive</code></span><a class="headerlink" title="Permalink to this term" href="#--recursive">¶</a></dt><dd><p><a href="systemctl.html"><span class="citerefentry"><span class="refentrytitle">systemctl</span>(1)</span></a></p></dd><dt id="--register="><span class="term"><code class="option">--register=</code></span><a class="headerlink" title="Permalink to this term" href="#--register=">¶</a></dt><dd><p><a href="systemd-nspawn.html"><span class="citerefentry"><span class="refentrytitle">systemd-nspawn</span>(1)</span></a></p></dd><dt id="--rel"><span class="term"><code class="option">--rel</code></span><a class="headerlink" title="Permalink to this term" href="#--rel">¶</a></dt><dd><p><a href="systemd-bootchart.html"><span class="citerefentry"><span class="refentrytitle">systemd-bootchart</span>(1)</span></a></p></dd><dt id="--reload"><span class="term"><code class="option">--reload</code></span><a class="headerlink" title="Permalink to this term" href="#--reload">¶</a></dt><dd><p><a href="udevadm.html"><span class="citerefentry"><span class="refentrytitle">udevadm</span>(8)</span></a></p></dd><dt id="--remain-after-exit"><span class="term"><code class="option">--remain-after-exit</code></span><a class="headerlink" title="Permalink to this term" href="#--remain-after-exit">¶</a></dt><dd><p><a href="systemd-run.html"><span class="citerefentry"><span class="refentrytitle">systemd-run</span>(1)</span></a></p></dd><dt id="--remove"><span class="term"><code class="option">--remove</code></span><a class="headerlink" title="Permalink to this term" href="#--remove">¶</a></dt><dd><p><a href="systemd-tmpfiles.html"><span class="citerefentry"><span class="refentrytitle">systemd-tmpfiles</span>(8)</span></a></p></dd><dt id="--require"><span class="term"><code class="option">--require</code></span><a class="headerlink" title="Permalink to this term" href="#--require">¶</a></dt><dd><p><a href="systemd-analyze.html"><span class="citerefentry"><span class="refentrytitle">systemd-analyze</span>(1)</span></a></p></dd><dt id="--resolve-names="><span class="term"><code class="option">--resolve-names=</code></span><a class="headerlink" title="Permalink to this term" href="#--resolve-names=">¶</a></dt><dd><p><a href="systemd-udevd.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-udevd.service</span>(8)</span></a>, <a href="udevadm.html"><span class="citerefentry"><span class="refentrytitle">udevadm</span>(8)</span></a></p></dd><dt id="--reverse"><span class="term"><code class="option">--reverse</code></span><a class="headerlink" title="Permalink to this term" href="#--reverse">¶</a></dt><dd><p><a href="journalctl.html"><span class="citerefentry"><span class="refentrytitle">journalctl</span>(1)</span></a>, <a href="systemctl.html"><span class="citerefentry"><span class="refentrytitle">systemctl</span>(1)</span></a></p></dd><dt id="--root"><span class="term"><code class="option">--root</code></span><a class="headerlink" title="Permalink to this term" href="#--root">¶</a></dt><dd><p><a href="udevadm.html"><span class="citerefentry"><span class="refentrytitle">udevadm</span>(8)</span></a></p></dd><dt id="--root="><span class="term"><code class="option">--root=</code></span><a class="headerlink" title="Permalink to this term" href="#--root=">¶</a></dt><dd><p><a href="journalctl.html"><span class="citerefentry"><span class="refentrytitle">journalctl</span>(1)</span></a>, <a href="systemctl.html"><span class="citerefentry"><span class="refentrytitle">systemctl</span>(1)</span></a>, <a href="systemd-machine-id-setup.html"><span class="citerefentry"><span class="refentrytitle">systemd-machine-id-setup</span>(1)</span></a>, <a href="systemd-tmpfiles.html"><span class="citerefentry"><span class="refentrytitle">systemd-tmpfiles</span>(8)</span></a>, <a href="udevadm.html"><span class="citerefentry"><span class="refentrytitle">udevadm</span>(8)</span></a></p></dd><dt id="--runtime"><span class="term"><code class="option">--runtime</code></span><a class="headerlink" title="Permalink to this term" href="#--runtime">¶</a></dt><dd><p><a href="systemctl.html"><span class="citerefentry"><span class="refentrytitle">systemctl</span>(1)</span></a></p></dd><dt id="--sample"><span class="term"><code class="option">--sample</code></span><a class="headerlink" title="Permalink to this term" href="#--sample">¶</a></dt><dd><p><a href="systemd-bootchart.html"><span class="citerefentry"><span class="refentrytitle">systemd-bootchart</span>(1)</span></a></p></dd><dt id="--scale-x"><span class="term"><code class="option">--scale-x</code></span><a class="headerlink" title="Permalink to this term" href="#--scale-x">¶</a></dt><dd><p><a href="systemd-bootchart.html"><span class="citerefentry"><span class="refentrytitle">systemd-bootchart</span>(1)</span></a></p></dd><dt id="--scale-y"><span class="term"><code class="option">--scale-y</code></span><a class="headerlink" title="Permalink to this term" href="#--scale-y">¶</a></dt><dd><p><a href="systemd-bootchart.html"><span class="citerefentry"><span class="refentrytitle">systemd-bootchart</span>(1)</span></a></p></dd><dt id="--scope"><span class="term"><code class="option">--scope</code></span><a class="headerlink" title="Permalink to this term" href="#--scope">¶</a></dt><dd><p><a href="systemd-run.html"><span class="citerefentry"><span class="refentrytitle">systemd-run</span>(1)</span></a></p></dd><dt id="--seal"><span class="term"><code class="option">--seal</code></span><a class="headerlink" title="Permalink to this term" href="#--seal">¶</a></dt><dd><p><a href="systemd-journal-remote.html"><span class="citerefentry"><span class="refentrytitle">systemd-journal-remote</span>(8)</span></a></p></dd><dt id="--selinux-apifs-context="><span class="term"><code class="option">--selinux-apifs-context=</code></span><a class="headerlink" title="Permalink to this term" href="#--selinux-apifs-context=">¶</a></dt><dd><p><a href="systemd-nspawn.html"><span class="citerefentry"><span class="refentrytitle">systemd-nspawn</span>(1)</span></a></p></dd><dt id="--selinux-context="><span class="term"><code class="option">--selinux-context=</code></span><a class="headerlink" title="Permalink to this term" href="#--selinux-context=">¶</a></dt><dd><p><a href="systemd-nspawn.html"><span class="citerefentry"><span class="refentrytitle">systemd-nspawn</span>(1)</span></a></p></dd><dt id="--send-sighup"><span class="term"><code class="option">--send-sighup</code></span><a class="headerlink" title="Permalink to this term" href="#--send-sighup">¶</a></dt><dd><p><a href="systemd-run.html"><span class="citerefentry"><span class="refentrytitle">systemd-run</span>(1)</span></a></p></dd><dt id="--service-type="><span class="term"><code class="option">--service-type=</code></span><a class="headerlink" title="Permalink to this term" href="#--service-type=">¶</a></dt><dd><p><a href="systemd-run.html"><span class="citerefentry"><span class="refentrytitle">systemd-run</span>(1)</span></a></p></dd><dt id="--setenv="><span class="term"><code class="option">--setenv=</code></span><a class="headerlink" title="Permalink to this term" href="#--setenv=">¶</a></dt><dd><p><a href="systemd-activate.html"><span class="citerefentry"><span class="refentrytitle">systemd-activate</span>(8)</span></a>, <a href="systemd-nspawn.html"><span class="citerefentry"><span class="refentrytitle">systemd-nspawn</span>(1)</span></a>, <a href="systemd-run.html"><span class="citerefentry"><span class="refentrytitle">systemd-run</span>(1)</span></a></p></dd><dt id="--setup-keys"><span class="term"><code class="option">--setup-keys</code></span><a class="headerlink" title="Permalink to this term" href="#--setup-keys">¶</a></dt><dd><p><a href="journalctl.html"><span class="citerefentry"><span class="refentrytitle">journalctl</span>(1)</span></a></p></dd><dt id="--share-system"><span class="term"><code class="option">--share-system</code></span><a class="headerlink" title="Permalink to this term" href="#--share-system">¶</a></dt><dd><p><a href="systemd-nspawn.html"><span class="citerefentry"><span class="refentrytitle">systemd-nspawn</span>(1)</span></a></p></dd><dt id="--show-cursor"><span class="term"><code class="option">--show-cursor</code></span><a class="headerlink" title="Permalink to this term" href="#--show-cursor">¶</a></dt><dd><p><a href="journalctl.html"><span class="citerefentry"><span class="refentrytitle">journalctl</span>(1)</span></a></p></dd><dt id="--show-machine"><span class="term"><code class="option">--show-machine</code></span><a class="headerlink" title="Permalink to this term" href="#--show-machine">¶</a></dt><dd><p><a href="busctl.html"><span class="citerefentry"><span class="refentrytitle">busctl</span>(1)</span></a></p></dd><dt id="--show-status="><span class="term"><code class="option">--show-status=</code></span><a class="headerlink" title="Permalink to this term" href="#--show-status=">¶</a></dt><dd><p><a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a></p></dd><dt id="--show-types"><span class="term"><code class="option">--show-types</code></span><a class="headerlink" title="Permalink to this term" href="#--show-types">¶</a></dt><dd><p><a href="systemctl.html"><span class="citerefentry"><span class="refentrytitle">systemctl</span>(1)</span></a></p></dd><dt id="--signal="><span class="term"><code class="option">--signal=</code></span><a class="headerlink" title="Permalink to this term" href="#--signal=">¶</a></dt><dd><p><a href="loginctl.html"><span class="citerefentry"><span class="refentrytitle">loginctl</span>(1)</span></a>, <a href="machinectl.html"><span class="citerefentry"><span class="refentrytitle">machinectl</span>(1)</span></a>, <a href="systemctl.html"><span class="citerefentry"><span class="refentrytitle">systemctl</span>(1)</span></a></p></dd><dt id="--since="><span class="term"><code class="option">--since=</code></span><a class="headerlink" title="Permalink to this term" href="#--since=">¶</a></dt><dd><p><a href="journalctl.html"><span class="citerefentry"><span class="refentrytitle">journalctl</span>(1)</span></a></p></dd><dt id="--slice="><span class="term"><code class="option">--slice=</code></span><a class="headerlink" title="Permalink to this term" href="#--slice=">¶</a></dt><dd><p><a href="systemd-nspawn.html"><span class="citerefentry"><span class="refentrytitle">systemd-nspawn</span>(1)</span></a>, <a href="systemd-run.html"><span class="citerefentry"><span class="refentrytitle">systemd-run</span>(1)</span></a></p></dd><dt id="--start-exec-queue"><span class="term"><code class="option">--start-exec-queue</code></span><a class="headerlink" title="Permalink to this term" href="#--start-exec-queue">¶</a></dt><dd><p><a href="udevadm.html"><span class="citerefentry"><span class="refentrytitle">udevadm</span>(8)</span></a></p></dd><dt id="--state="><span class="term"><code class="option">--state=</code></span><a class="headerlink" title="Permalink to this term" href="#--state=">¶</a></dt><dd><p><a href="systemctl.html"><span class="citerefentry"><span class="refentrytitle">systemctl</span>(1)</span></a></p></dd><dt id="--static"><span class="term"><code class="option">--static</code></span><a class="headerlink" title="Permalink to this term" href="#--static">¶</a></dt><dd><p><a href="hostnamectl.html"><span class="citerefentry"><span class="refentrytitle">hostnamectl</span>(1)</span></a></p></dd><dt id="--status="><span class="term"><code class="option">--status=</code></span><a class="headerlink" title="Permalink to this term" href="#--status=">¶</a></dt><dd><p><a href="systemd-notify.html"><span class="citerefentry"><span class="refentrytitle">systemd-notify</span>(1)</span></a></p></dd><dt id="--stop-exec-queue"><span class="term"><code class="option">--stop-exec-queue</code></span><a class="headerlink" title="Permalink to this term" href="#--stop-exec-queue">¶</a></dt><dd><p><a href="udevadm.html"><span class="citerefentry"><span class="refentrytitle">udevadm</span>(8)</span></a></p></dd><dt id="--subsystem-match="><span class="term"><code class="option">--subsystem-match=</code></span><a class="headerlink" title="Permalink to this term" href="#--subsystem-match=">¶</a></dt><dd><p><a href="udevadm.html"><span class="citerefentry"><span class="refentrytitle">udevadm</span>(8)</span></a></p></dd><dt id="--subsystem-nomatch="><span class="term"><code class="option">--subsystem-nomatch=</code></span><a class="headerlink" title="Permalink to this term" href="#--subsystem-nomatch=">¶</a></dt><dd><p><a href="udevadm.html"><span class="citerefentry"><span class="refentrytitle">udevadm</span>(8)</span></a></p></dd><dt id="--sysname-match="><span class="term"><code class="option">--sysname-match=</code></span><a class="headerlink" title="Permalink to this term" href="#--sysname-match=">¶</a></dt><dd><p><a href="udevadm.html"><span class="citerefentry"><span class="refentrytitle">udevadm</span>(8)</span></a></p></dd><dt id="--system"><span class="term"><code class="option">--system</code></span><a class="headerlink" title="Permalink to this term" href="#--system">¶</a></dt><dd><p><a href="busctl.html"><span class="citerefentry"><span class="refentrytitle">busctl</span>(1)</span></a>, <a href="journalctl.html"><span class="citerefentry"><span class="refentrytitle">journalctl</span>(1)</span></a>, <a href="systemctl.html"><span class="citerefentry"><span class="refentrytitle">systemctl</span>(1)</span></a>, <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>, <a href="systemd-analyze.html"><span class="citerefentry"><span class="refentrytitle">systemd-analyze</span>(1)</span></a>, <a href="systemd-run.html"><span class="citerefentry"><span class="refentrytitle">systemd-run</span>(1)</span></a></p></dd><dt id="--tag-match="><span class="term"><code class="option">--tag-match=</code></span><a class="headerlink" title="Permalink to this term" href="#--tag-match=">¶</a></dt><dd><p><a href="udevadm.html"><span class="citerefentry"><span class="refentrytitle">udevadm</span>(8)</span></a></p></dd><dt id="--test"><span class="term"><code class="option">--test</code></span><a class="headerlink" title="Permalink to this term" href="#--test">¶</a></dt><dd><p><a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a></p></dd><dt id="--test="><span class="term"><code class="option">--test=</code></span><a class="headerlink" title="Permalink to this term" href="#--test=">¶</a></dt><dd><p><a href="udevadm.html"><span class="citerefentry"><span class="refentrytitle">udevadm</span>(8)</span></a></p></dd><dt id="--timeout="><span class="term"><code class="option">--timeout=</code></span><a class="headerlink" title="Permalink to this term" href="#--timeout=">¶</a></dt><dd><p><a href="systemd-ask-password.html"><span class="citerefentry"><span class="refentrytitle">systemd-ask-password</span>(1)</span></a>, <a href="systemd-readahead-replay.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-readahead-replay.service</span>(8)</span></a>, <a href="udevadm.html"><span class="citerefentry"><span class="refentrytitle">udevadm</span>(8)</span></a></p></dd><dt id="--tmpfs="><span class="term"><code class="option">--tmpfs=</code></span><a class="headerlink" title="Permalink to this term" href="#--tmpfs=">¶</a></dt><dd><p><a href="systemd-nspawn.html"><span class="citerefentry"><span class="refentrytitle">systemd-nspawn</span>(1)</span></a></p></dd><dt id="--to-pattern="><span class="term"><code class="option">--to-pattern=</code></span><a class="headerlink" title="Permalink to this term" href="#--to-pattern=">¶</a></dt><dd><p><a href="systemd-analyze.html"><span class="citerefentry"><span class="refentrytitle">systemd-analyze</span>(1)</span></a></p></dd><dt id="--transient"><span class="term"><code class="option">--transient</code></span><a class="headerlink" title="Permalink to this term" href="#--transient">¶</a></dt><dd><p><a href="hostnamectl.html"><span class="citerefentry"><span class="refentrytitle">hostnamectl</span>(1)</span></a></p></dd><dt id="--type="><span class="term"><code class="option">--type=</code></span><a class="headerlink" title="Permalink to this term" href="#--type=">¶</a></dt><dd><p><a href="systemctl.html"><span class="citerefentry"><span class="refentrytitle">systemctl</span>(1)</span></a>, <a href="systemd-delta.html"><span class="citerefentry"><span class="refentrytitle">systemd-delta</span>(1)</span></a>, <a href="udevadm.html"><span class="citerefentry"><span class="refentrytitle">udevadm</span>(8)</span></a></p></dd><dt id="--udev"><span class="term"><code class="option">--udev</code></span><a class="headerlink" title="Permalink to this term" href="#--udev">¶</a></dt><dd><p><a href="udevadm.html"><span class="citerefentry"><span class="refentrytitle">udevadm</span>(8)</span></a></p></dd><dt id="--uid="><span class="term"><code class="option">--uid=</code></span><a class="headerlink" title="Permalink to this term" href="#--uid=">¶</a></dt><dd><p><a href="systemd-run.html"><span class="citerefentry"><span class="refentrytitle">systemd-run</span>(1)</span></a></p></dd><dt id="--unique"><span class="term"><code class="option">--unique</code></span><a class="headerlink" title="Permalink to this term" href="#--unique">¶</a></dt><dd><p><a href="busctl.html"><span class="citerefentry"><span class="refentrytitle">busctl</span>(1)</span></a></p></dd><dt id="--unit="><span class="term"><code class="option">--unit=</code></span><a class="headerlink" title="Permalink to this term" href="#--unit=">¶</a></dt><dd><p><a href="journalctl.html"><span class="citerefentry"><span class="refentrytitle">journalctl</span>(1)</span></a>, <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>, <a href="systemd-run.html"><span class="citerefentry"><span class="refentrytitle">systemd-run</span>(1)</span></a></p></dd><dt id="--until="><span class="term"><code class="option">--until=</code></span><a class="headerlink" title="Permalink to this term" href="#--until=">¶</a></dt><dd><p><a href="journalctl.html"><span class="citerefentry"><span class="refentrytitle">journalctl</span>(1)</span></a></p></dd><dt id="--update"><span class="term"><code class="option">--update</code></span><a class="headerlink" title="Permalink to this term" href="#--update">¶</a></dt><dd><p><a href="udevadm.html"><span class="citerefentry"><span class="refentrytitle">udevadm</span>(8)</span></a></p></dd><dt id="--update-catalog"><span class="term"><code class="option">--update-catalog</code></span><a class="headerlink" title="Permalink to this term" href="#--update-catalog">¶</a></dt><dd><p><a href="journalctl.html"><span class="citerefentry"><span class="refentrytitle">journalctl</span>(1)</span></a></p></dd><dt id="--url="><span class="term"><code class="option">--url=</code></span><a class="headerlink" title="Permalink to this term" href="#--url=">¶</a></dt><dd><p><a href="systemd-journal-remote.html"><span class="citerefentry"><span class="refentrytitle">systemd-journal-remote</span>(8)</span></a></p></dd><dt id="--user"><span class="term"><code class="option">--user</code></span><a class="headerlink" title="Permalink to this term" href="#--user">¶</a></dt><dd><p><a href="busctl.html"><span class="citerefentry"><span class="refentrytitle">busctl</span>(1)</span></a>, <a href="journalctl.html"><span class="citerefentry"><span class="refentrytitle">journalctl</span>(1)</span></a>, <a href="systemctl.html"><span class="citerefentry"><span class="refentrytitle">systemctl</span>(1)</span></a>, <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>, <a href="systemd-analyze.html"><span class="citerefentry"><span class="refentrytitle">systemd-analyze</span>(1)</span></a>, <a href="systemd-run.html"><span class="citerefentry"><span class="refentrytitle">systemd-run</span>(1)</span></a></p></dd><dt id="--user-unit="><span class="term"><code class="option">--user-unit=</code></span><a class="headerlink" title="Permalink to this term" href="#--user-unit=">¶</a></dt><dd><p><a href="journalctl.html"><span class="citerefentry"><span class="refentrytitle">journalctl</span>(1)</span></a></p></dd><dt id="--user="><span class="term"><code class="option">--user=</code></span><a class="headerlink" title="Permalink to this term" href="#--user=">¶</a></dt><dd><p><a href="systemd-nspawn.html"><span class="citerefentry"><span class="refentrytitle">systemd-nspawn</span>(1)</span></a></p></dd><dt id="--uuid="><span class="term"><code class="option">--uuid=</code></span><a class="headerlink" title="Permalink to this term" href="#--uuid=">¶</a></dt><dd><p><a href="systemd-nspawn.html"><span class="citerefentry"><span class="refentrytitle">systemd-nspawn</span>(1)</span></a></p></dd><dt id="--verbose"><span class="term"><code class="option">--verbose</code></span><a class="headerlink" title="Permalink to this term" href="#--verbose">¶</a></dt><dd><p><a href="udevadm.html"><span class="citerefentry"><span class="refentrytitle">udevadm</span>(8)</span></a></p></dd><dt id="--verify"><span class="term"><code class="option">--verify</code></span><a class="headerlink" title="Permalink to this term" href="#--verify">¶</a></dt><dd><p><a href="journalctl.html"><span class="citerefentry"><span class="refentrytitle">journalctl</span>(1)</span></a></p></dd><dt id="--verify-key="><span class="term"><code class="option">--verify-key=</code></span><a class="headerlink" title="Permalink to this term" href="#--verify-key=">¶</a></dt><dd><p><a href="journalctl.html"><span class="citerefentry"><span class="refentrytitle">journalctl</span>(1)</span></a></p></dd><dt id="--version"><span class="term"><code class="option">--version</code></span><a class="headerlink" title="Permalink to this term" href="#--version">¶</a></dt><dd><p><a href="bootctl.html"><span class="citerefentry"><span class="refentrytitle">bootctl</span>(1)</span></a>, <a href="busctl.html"><span class="citerefentry"><span class="refentrytitle">busctl</span>(1)</span></a>, <a href="hostnamectl.html"><span class="citerefentry"><span class="refentrytitle">hostnamectl</span>(1)</span></a>, <a href="journalctl.html"><span class="citerefentry"><span class="refentrytitle">journalctl</span>(1)</span></a>, <a href="localectl.html"><span class="citerefentry"><span class="refentrytitle">localectl</span>(1)</span></a>, <a href="loginctl.html"><span class="citerefentry"><span class="refentrytitle">loginctl</span>(1)</span></a>, <a href="machinectl.html"><span class="citerefentry"><span class="refentrytitle">machinectl</span>(1)</span></a>, <a href="systemctl.html"><span class="citerefentry"><span class="refentrytitle">systemctl</span>(1)</span></a>, <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>, <a href="systemd-activate.html"><span class="citerefentry"><span class="refentrytitle">systemd-activate</span>(8)</span></a>, <a href="systemd-analyze.html"><span class="citerefentry"><span class="refentrytitle">systemd-analyze</span>(1)</span></a>, <a href="systemd-bus-proxyd.html"><span class="citerefentry"><span class="refentrytitle">systemd-bus-proxyd</span>(8)</span></a>, <a href="systemd-cat.html"><span class="citerefentry"><span class="refentrytitle">systemd-cat</span>(1)</span></a>, <a href="systemd-cgls.html"><span class="citerefentry"><span class="refentrytitle">systemd-cgls</span>(1)</span></a>, <a href="systemd-cgtop.html"><span class="citerefentry"><span class="refentrytitle">systemd-cgtop</span>(1)</span></a>, <a href="systemd-coredumpctl.html"><span class="citerefentry"><span class="refentrytitle">systemd-coredumpctl</span>(1)</span></a>, <a href="systemd-delta.html"><span class="citerefentry"><span class="refentrytitle">systemd-delta</span>(1)</span></a>, <a href="systemd-detect-virt.html"><span class="citerefentry"><span class="refentrytitle">systemd-detect-virt</span>(1)</span></a>, <a href="systemd-inhibit.html"><span class="citerefentry"><span class="refentrytitle">systemd-inhibit</span>(1)</span></a>, <a href="systemd-journal-gatewayd.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-journal-gatewayd.service</span>(8)</span></a>, <a href="systemd-journal-remote.html"><span class="citerefentry"><span class="refentrytitle">systemd-journal-remote</span>(8)</span></a>, <a href="systemd-machine-id-setup.html"><span class="citerefentry"><span class="refentrytitle">systemd-machine-id-setup</span>(1)</span></a>, <a href="systemd-notify.html"><span class="citerefentry"><span class="refentrytitle">systemd-notify</span>(1)</span></a>, <a href="systemd-nspawn.html"><span class="citerefentry"><span class="refentrytitle">systemd-nspawn</span>(1)</span></a>, <a href="systemd-readahead-replay.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-readahead-replay.service</span>(8)</span></a>, <a href="systemd-run.html"><span class="citerefentry"><span class="refentrytitle">systemd-run</span>(1)</span></a>, <a href="systemd-socket-proxyd.html"><span class="citerefentry"><span class="refentrytitle">systemd-socket-proxyd</span>(8)</span></a>, <a href="systemd-suspend.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-suspend.service</span>(8)</span></a>, <a href="systemd-tmpfiles.html"><span class="citerefentry"><span class="refentrytitle">systemd-tmpfiles</span>(8)</span></a>, <a href="systemd-tty-ask-password-agent.html"><span class="citerefentry"><span class="refentrytitle">systemd-tty-ask-password-agent</span>(1)</span></a>, <a href="systemd-udevd.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-udevd.service</span>(8)</span></a>, <a href="timedatectl.html"><span class="citerefentry"><span class="refentrytitle">timedatectl</span>(1)</span></a>, <a href="udevadm.html"><span class="citerefentry"><span class="refentrytitle">udevadm</span>(8)</span></a></p></dd><dt id="--vm"><span class="term"><code class="option">--vm</code></span><a class="headerlink" title="Permalink to this term" href="#--vm">¶</a></dt><dd><p><a href="systemd-detect-virt.html"><span class="citerefentry"><span class="refentrytitle">systemd-detect-virt</span>(1)</span></a></p></dd><dt id="--wall"><span class="term"><code class="option">--wall</code></span><a class="headerlink" title="Permalink to this term" href="#--wall">¶</a></dt><dd><p><a href="systemd-tty-ask-password-agent.html"><span class="citerefentry"><span class="refentrytitle">systemd-tty-ask-password-agent</span>(1)</span></a></p></dd><dt id="--watch"><span class="term"><code class="option">--watch</code></span><a class="headerlink" title="Permalink to this term" href="#--watch">¶</a></dt><dd><p><a href="systemd-tty-ask-password-agent.html"><span class="citerefentry"><span class="refentrytitle">systemd-tty-ask-password-agent</span>(1)</span></a></p></dd><dt id="--what="><span class="term"><code class="option">--what=</code></span><a class="headerlink" title="Permalink to this term" href="#--what=">¶</a></dt><dd><p><a href="systemd-inhibit.html"><span class="citerefentry"><span class="refentrytitle">systemd-inhibit</span>(1)</span></a></p></dd><dt id="--who="><span class="term"><code class="option">--who=</code></span><a class="headerlink" title="Permalink to this term" href="#--who=">¶</a></dt><dd><p><a href="systemd-inhibit.html"><span class="citerefentry"><span class="refentrytitle">systemd-inhibit</span>(1)</span></a></p></dd><dt id="--why="><span class="term"><code class="option">--why=</code></span><a class="headerlink" title="Permalink to this term" href="#--why=">¶</a></dt><dd><p><a href="systemd-inhibit.html"><span class="citerefentry"><span class="refentrytitle">systemd-inhibit</span>(1)</span></a></p></dd><dt id="--wtmp-only"><span class="term"><code class="option">--wtmp-only</code></span><a class="headerlink" title="Permalink to this term" href="#--wtmp-only">¶</a></dt><dd><p><a href="halt.html"><span class="citerefentry"><span class="refentrytitle">halt</span>(8)</span></a></p></dd><dt id="-A"><span class="term"><code class="option">-A</code></span><a class="headerlink" title="Permalink to this term" href="#-A">¶</a></dt><dd><p><a href="udevadm.html"><span class="citerefentry"><span class="refentrytitle">udevadm</span>(8)</span></a></p></dd><dt id="-C"><span class="term"><code class="option">-C</code></span><a class="headerlink" title="Permalink to this term" href="#-C">¶</a></dt><dd><p><a href="systemd-bootchart.html"><span class="citerefentry"><span class="refentrytitle">systemd-bootchart</span>(1)</span></a></p></dd><dt id="-D"><span class="term"><code class="option">-D</code></span><a class="headerlink" title="Permalink to this term" href="#-D">¶</a></dt><dd><p><a href="journalctl.html"><span class="citerefentry"><span class="refentrytitle">journalctl</span>(1)</span></a>, <a href="systemd-nspawn.html"><span class="citerefentry"><span class="refentrytitle">systemd-nspawn</span>(1)</span></a></p></dd><dt id="-E"><span class="term"><code class="option">-E</code></span><a class="headerlink" title="Permalink to this term" href="#-E">¶</a></dt><dd><p><a href="systemd-activate.html"><span class="citerefentry"><span class="refentrytitle">systemd-activate</span>(8)</span></a>, <a href="udevadm.html"><span class="citerefentry"><span class="refentrytitle">udevadm</span>(8)</span></a></p></dd><dt id="-F"><span class="term"><code class="option">-F</code></span><a class="headerlink" title="Permalink to this term" href="#-F">¶</a></dt><dd><p><a href="journalctl.html"><span class="citerefentry"><span class="refentrytitle">journalctl</span>(1)</span></a>, <a href="systemd-bootchart.html"><span class="citerefentry"><span class="refentrytitle">systemd-bootchart</span>(1)</span></a>, <a href="systemd-coredumpctl.html"><span class="citerefentry"><span class="refentrytitle">systemd-coredumpctl</span>(1)</span></a></p></dd><dt id="-H"><span class="term"><code class="option">-H</code></span><a class="headerlink" title="Permalink to this term" href="#-H">¶</a></dt><dd><p><a href="busctl.html"><span class="citerefentry"><span class="refentrytitle">busctl</span>(1)</span></a>, <a href="hostnamectl.html"><span class="citerefentry"><span class="refentrytitle">hostnamectl</span>(1)</span></a>, <a href="localectl.html"><span class="citerefentry"><span class="refentrytitle">localectl</span>(1)</span></a>, <a href="loginctl.html"><span class="citerefentry"><span class="refentrytitle">loginctl</span>(1)</span></a>, <a href="machinectl.html"><span class="citerefentry"><span class="refentrytitle">machinectl</span>(1)</span></a>, <a href="shutdown.html"><span class="citerefentry"><span class="refentrytitle">shutdown</span>(8)</span></a>, <a href="systemctl.html"><span class="citerefentry"><span class="refentrytitle">systemctl</span>(1)</span></a>, <a href="systemd-analyze.html"><span class="citerefentry"><span class="refentrytitle">systemd-analyze</span>(1)</span></a>, <a href="systemd-run.html"><span class="citerefentry"><span class="refentrytitle">systemd-run</span>(1)</span></a>, <a href="timedatectl.html"><span class="citerefentry"><span class="refentrytitle">timedatectl</span>(1)</span></a></p></dd><dt id="-L"><span class="term"><code class="option">-L</code></span><a class="headerlink" title="Permalink to this term" href="#-L">¶</a></dt><dd><p><a href="systemd-nspawn.html"><span class="citerefentry"><span class="refentrytitle">systemd-nspawn</span>(1)</span></a></p></dd><dt id="-M"><span class="term"><code class="option">-M</code></span><a class="headerlink" title="Permalink to this term" href="#-M">¶</a></dt><dd><p><a href="busctl.html"><span class="citerefentry"><span class="refentrytitle">busctl</span>(1)</span></a>, <a href="journalctl.html"><span class="citerefentry"><span class="refentrytitle">journalctl</span>(1)</span></a>, <a href="loginctl.html"><span class="citerefentry"><span class="refentrytitle">loginctl</span>(1)</span></a>, <a href="machinectl.html"><span class="citerefentry"><span class="refentrytitle">machinectl</span>(1)</span></a>, <a href="systemctl.html"><span class="citerefentry"><span class="refentrytitle">systemctl</span>(1)</span></a>, <a href="systemd-analyze.html"><span class="citerefentry"><span class="refentrytitle">systemd-analyze</span>(1)</span></a>, <a href="systemd-cgls.html"><span class="citerefentry"><span class="refentrytitle">systemd-cgls</span>(1)</span></a>, <a href="systemd-nspawn.html"><span class="citerefentry"><span class="refentrytitle">systemd-nspawn</span>(1)</span></a>, <a href="systemd-run.html"><span class="citerefentry"><span class="refentrytitle">systemd-run</span>(1)</span></a>, <a href="timedatectl.html"><span class="citerefentry"><span class="refentrytitle">timedatectl</span>(1)</span></a></p></dd><dt id="-N"><span class="term"><code class="option">-N</code></span><a class="headerlink" title="Permalink to this term" href="#-N">¶</a></dt><dd><p><a href="udevadm.html"><span class="citerefentry"><span class="refentrytitle">udevadm</span>(8)</span></a></p></dd><dt id="-P"><span class="term"><code class="option">-P</code></span><a class="headerlink" title="Permalink to this term" href="#-P">¶</a></dt><dd><p><a href="hostnamectl.html"><span class="citerefentry"><span class="refentrytitle">hostnamectl</span>(1)</span></a>, <a href="localectl.html"><span class="citerefentry"><span class="refentrytitle">localectl</span>(1)</span></a>, <a href="shutdown.html"><span class="citerefentry"><span class="refentrytitle">shutdown</span>(8)</span></a>, <a href="udevadm.html"><span class="citerefentry"><span class="refentrytitle">udevadm</span>(8)</span></a></p></dd><dt id="-R"><span class="term"><code class="option">-R</code></span><a class="headerlink" title="Permalink to this term" href="#-R">¶</a></dt><dd><p><a href="udevadm.html"><span class="citerefentry"><span class="refentrytitle">udevadm</span>(8)</span></a></p></dd><dt id="-S"><span class="term"><code class="option">-S</code></span><a class="headerlink" title="Permalink to this term" href="#-S">¶</a></dt><dd><p><a href="udevadm.html"><span class="citerefentry"><span class="refentrytitle">udevadm</span>(8)</span></a></p></dd><dt id="-Z"><span class="term"><code class="option">-Z</code></span><a class="headerlink" title="Permalink to this term" href="#-Z">¶</a></dt><dd><p><a href="systemd-nspawn.html"><span class="citerefentry"><span class="refentrytitle">systemd-nspawn</span>(1)</span></a></p></dd><dt id="-a"><span class="term"><code class="option">-a</code></span><a class="headerlink" title="Permalink to this term" href="#-a">¶</a></dt><dd><p><a href="journalctl.html"><span class="citerefentry"><span class="refentrytitle">journalctl</span>(1)</span></a>, <a href="loginctl.html"><span class="citerefentry"><span class="refentrytitle">loginctl</span>(1)</span></a>, <a href="machinectl.html"><span class="citerefentry"><span class="refentrytitle">machinectl</span>(1)</span></a>, <a href="systemctl.html"><span class="citerefentry"><span class="refentrytitle">systemctl</span>(1)</span></a>, <a href="systemd-activate.html"><span class="citerefentry"><span class="refentrytitle">systemd-activate</span>(8)</span></a>, <a href="udevadm.html"><span class="citerefentry"><span class="refentrytitle">udevadm</span>(8)</span></a></p></dd><dt id="-b"><span class="term"><code class="option">-b</code></span><a class="headerlink" title="Permalink to this term" href="#-b">¶</a></dt><dd><p><a href="journalctl.html"><span class="citerefentry"><span class="refentrytitle">journalctl</span>(1)</span></a>, <a href="systemd-cgtop.html"><span class="citerefentry"><span class="refentrytitle">systemd-cgtop</span>(1)</span></a>, <a href="systemd-nspawn.html"><span class="citerefentry"><span class="refentrytitle">systemd-nspawn</span>(1)</span></a>, <a href="udevadm.html"><span class="citerefentry"><span class="refentrytitle">udevadm</span>(8)</span></a></p></dd><dt id="-c"><span class="term"><code class="option">-c</code></span><a class="headerlink" title="Permalink to this term" href="#-c">¶</a></dt><dd><p><a href="journalctl.html"><span class="citerefentry"><span class="refentrytitle">journalctl</span>(1)</span></a>, <a href="shutdown.html"><span class="citerefentry"><span class="refentrytitle">shutdown</span>(8)</span></a>, <a href="systemd-cgtop.html"><span class="citerefentry"><span class="refentrytitle">systemd-cgtop</span>(1)</span></a>, <a href="systemd-detect-virt.html"><span class="citerefentry"><span class="refentrytitle">systemd-detect-virt</span>(1)</span></a>, <a href="udevadm.html"><span class="citerefentry"><span class="refentrytitle">udevadm</span>(8)</span></a></p></dd><dt id="-d"><span class="term"><code class="option">-d</code></span><a class="headerlink" title="Permalink to this term" href="#-d">¶</a></dt><dd><p><a href="halt.html"><span class="citerefentry"><span class="refentrytitle">halt</span>(8)</span></a>, <a href="systemd-cgtop.html"><span class="citerefentry"><span class="refentrytitle">systemd-cgtop</span>(1)</span></a>, <a href="udevadm.html"><span class="citerefentry"><span class="refentrytitle">udevadm</span>(8)</span></a></p></dd><dt id="-e"><span class="term"><code class="option">-e</code></span><a class="headerlink" title="Permalink to this term" href="#-e">¶</a></dt><dd><p><a href="journalctl.html"><span class="citerefentry"><span class="refentrytitle">journalctl</span>(1)</span></a>, <a href="systemd-bootchart.html"><span class="citerefentry"><span class="refentrytitle">systemd-bootchart</span>(1)</span></a>, <a href="udevadm.html"><span class="citerefentry"><span class="refentrytitle">udevadm</span>(8)</span></a></p></dd><dt id="-f"><span class="term"><code class="option">-f</code></span><a class="headerlink" title="Permalink to this term" href="#-f">¶</a></dt><dd><p><a href="halt.html"><span class="citerefentry"><span class="refentrytitle">halt</span>(8)</span></a>, <a href="journalctl.html"><span class="citerefentry"><span class="refentrytitle">journalctl</span>(1)</span></a>, <a href="systemctl.html"><span class="citerefentry"><span class="refentrytitle">systemctl</span>(1)</span></a>, <a href="systemd-bootchart.html"><span class="citerefentry"><span class="refentrytitle">systemd-bootchart</span>(1)</span></a></p></dd><dt id="-g"><span class="term"><code class="option">-g</code></span><a class="headerlink" title="Permalink to this term" href="#-g">¶</a></dt><dd><p><a href="systemd-bootchart.html"><span class="citerefentry"><span class="refentrytitle">systemd-bootchart</span>(1)</span></a>, <a href="udevadm.html"><span class="citerefentry"><span class="refentrytitle">udevadm</span>(8)</span></a></p></dd><dt id="-h"><span class="term"><code class="option">-h</code></span><a class="headerlink" title="Permalink to this term" href="#-h">¶</a></dt><dd><p><a href="bootctl.html"><span class="citerefentry"><span class="refentrytitle">bootctl</span>(1)</span></a>, <a href="busctl.html"><span class="citerefentry"><span class="refentrytitle">busctl</span>(1)</span></a>, <a href="hostnamectl.html"><span class="citerefentry"><span class="refentrytitle">hostnamectl</span>(1)</span></a>, <a href="journalctl.html"><span class="citerefentry"><span class="refentrytitle">journalctl</span>(1)</span></a>, <a href="localectl.html"><span class="citerefentry"><span class="refentrytitle">localectl</span>(1)</span></a>, <a href="loginctl.html"><span class="citerefentry"><span class="refentrytitle">loginctl</span>(1)</span></a>, <a href="machinectl.html"><span class="citerefentry"><span class="refentrytitle">machinectl</span>(1)</span></a>, <a href="shutdown.html"><span class="citerefentry"><span class="refentrytitle">shutdown</span>(8)</span></a>, <a href="systemctl.html"><span class="citerefentry"><span class="refentrytitle">systemctl</span>(1)</span></a>, <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>, <a href="systemd-activate.html"><span class="citerefentry"><span class="refentrytitle">systemd-activate</span>(8)</span></a>, <a href="systemd-analyze.html"><span class="citerefentry"><span class="refentrytitle">systemd-analyze</span>(1)</span></a>, <a href="systemd-ask-password.html"><span class="citerefentry"><span class="refentrytitle">systemd-ask-password</span>(1)</span></a>, <a href="systemd-bootchart.html"><span class="citerefentry"><span class="refentrytitle">systemd-bootchart</span>(1)</span></a>, <a href="systemd-bus-proxyd.html"><span class="citerefentry"><span class="refentrytitle">systemd-bus-proxyd</span>(8)</span></a>, <a href="systemd-cat.html"><span class="citerefentry"><span class="refentrytitle">systemd-cat</span>(1)</span></a>, <a href="systemd-cgls.html"><span class="citerefentry"><span class="refentrytitle">systemd-cgls</span>(1)</span></a>, <a href="systemd-cgtop.html"><span class="citerefentry"><span class="refentrytitle">systemd-cgtop</span>(1)</span></a>, <a href="systemd-coredumpctl.html"><span class="citerefentry"><span class="refentrytitle">systemd-coredumpctl</span>(1)</span></a>, <a href="systemd-delta.html"><span class="citerefentry"><span class="refentrytitle">systemd-delta</span>(1)</span></a>, <a href="systemd-detect-virt.html"><span class="citerefentry"><span class="refentrytitle">systemd-detect-virt</span>(1)</span></a>, <a href="systemd-inhibit.html"><span class="citerefentry"><span class="refentrytitle">systemd-inhibit</span>(1)</span></a>, <a href="systemd-journal-gatewayd.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-journal-gatewayd.service</span>(8)</span></a>, <a href="systemd-journal-remote.html"><span class="citerefentry"><span class="refentrytitle">systemd-journal-remote</span>(8)</span></a>, <a href="systemd-machine-id-setup.html"><span class="citerefentry"><span class="refentrytitle">systemd-machine-id-setup</span>(1)</span></a>, <a href="systemd-notify.html"><span class="citerefentry"><span class="refentrytitle">systemd-notify</span>(1)</span></a>, <a href="systemd-nspawn.html"><span class="citerefentry"><span class="refentrytitle">systemd-nspawn</span>(1)</span></a>, <a href="systemd-readahead-replay.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-readahead-replay.service</span>(8)</span></a>, <a href="systemd-run.html"><span class="citerefentry"><span class="refentrytitle">systemd-run</span>(1)</span></a>, <a href="systemd-socket-proxyd.html"><span class="citerefentry"><span class="refentrytitle">systemd-socket-proxyd</span>(8)</span></a>, <a href="systemd-suspend.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-suspend.service</span>(8)</span></a>, <a href="systemd-tmpfiles.html"><span class="citerefentry"><span class="refentrytitle">systemd-tmpfiles</span>(8)</span></a>, <a href="systemd-tty-ask-password-agent.html"><span class="citerefentry"><span class="refentrytitle">systemd-tty-ask-password-agent</span>(1)</span></a>, <a href="timedatectl.html"><span class="citerefentry"><span class="refentrytitle">timedatectl</span>(1)</span></a>, <a href="udevadm.html"><span class="citerefentry"><span class="refentrytitle">udevadm</span>(8)</span></a></p></dd><dt id="-i"><span class="term"><code class="option">-i</code></span><a class="headerlink" title="Permalink to this term" href="#-i">¶</a></dt><dd><p><a href="systemctl.html"><span class="citerefentry"><span class="refentrytitle">systemctl</span>(1)</span></a>, <a href="systemd-bootchart.html"><span class="citerefentry"><span class="refentrytitle">systemd-bootchart</span>(1)</span></a>, <a href="systemd-cgtop.html"><span class="citerefentry"><span class="refentrytitle">systemd-cgtop</span>(1)</span></a>, <a href="systemd-networkd-wait-online.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-networkd-wait-online.service</span>(8)</span></a>, <a href="systemd-nspawn.html"><span class="citerefentry"><span class="refentrytitle">systemd-nspawn</span>(1)</span></a></p></dd><dt id="-j"><span class="term"><code class="option">-j</code></span><a class="headerlink" title="Permalink to this term" href="#-j">¶</a></dt><dd><p><a href="systemd-nspawn.html"><span class="citerefentry"><span class="refentrytitle">systemd-nspawn</span>(1)</span></a></p></dd><dt id="-k"><span class="term"><code class="option">-k</code></span><a class="headerlink" title="Permalink to this term" href="#-k">¶</a></dt><dd><p><a href="journalctl.html"><span class="citerefentry"><span class="refentrytitle">journalctl</span>(1)</span></a>, <a href="shutdown.html"><span class="citerefentry"><span class="refentrytitle">shutdown</span>(8)</span></a>, <a href="systemd-cgls.html"><span class="citerefentry"><span class="refentrytitle">systemd-cgls</span>(1)</span></a>, <a href="udevadm.html"><span class="citerefentry"><span class="refentrytitle">udevadm</span>(8)</span></a></p></dd><dt id="-l"><span class="term"><code class="option">-l</code></span><a class="headerlink" title="Permalink to this term" href="#-l">¶</a></dt><dd><p><a href="journalctl.html"><span class="citerefentry"><span class="refentrytitle">journalctl</span>(1)</span></a>, <a href="loginctl.html"><span class="citerefentry"><span class="refentrytitle">loginctl</span>(1)</span></a>, <a href="machinectl.html"><span class="citerefentry"><span class="refentrytitle">machinectl</span>(1)</span></a>, <a href="systemctl.html"><span class="citerefentry"><span class="refentrytitle">systemctl</span>(1)</span></a>, <a href="systemd-activate.html"><span class="citerefentry"><span class="refentrytitle">systemd-activate</span>(8)</span></a>, <a href="systemd-cgls.html"><span class="citerefentry"><span class="refentrytitle">systemd-cgls</span>(1)</span></a>, <a href="udevadm.html"><span class="citerefentry"><span class="refentrytitle">udevadm</span>(8)</span></a></p></dd><dt id="-m"><span class="term"><code class="option">-m</code></span><a class="headerlink" title="Permalink to this term" href="#-m">¶</a></dt><dd><p><a href="journalctl.html"><span class="citerefentry"><span class="refentrytitle">journalctl</span>(1)</span></a>, <a href="systemd-cgtop.html"><span class="citerefentry"><span class="refentrytitle">systemd-cgtop</span>(1)</span></a>, <a href="udevadm.html"><span class="citerefentry"><span class="refentrytitle">udevadm</span>(8)</span></a></p></dd><dt id="-n"><span class="term"><code class="option">-n</code></span><a class="headerlink" title="Permalink to this term" href="#-n">¶</a></dt><dd><p><a href="journalctl.html"><span class="citerefentry"><span class="refentrytitle">journalctl</span>(1)</span></a>, <a href="systemctl.html"><span class="citerefentry"><span class="refentrytitle">systemctl</span>(1)</span></a>, <a href="systemd-bootchart.html"><span class="citerefentry"><span class="refentrytitle">systemd-bootchart</span>(1)</span></a>, <a href="systemd-cgtop.html"><span class="citerefentry"><span class="refentrytitle">systemd-cgtop</span>(1)</span></a>, <a href="udevadm.html"><span class="citerefentry"><span class="refentrytitle">udevadm</span>(8)</span></a></p></dd><dt id="-o"><span class="term"><code class="option">-o</code></span><a class="headerlink" title="Permalink to this term" href="#-o">¶</a></dt><dd><p><a href="journalctl.html"><span class="citerefentry"><span class="refentrytitle">journalctl</span>(1)</span></a>, <a href="systemctl.html"><span class="citerefentry"><span class="refentrytitle">systemctl</span>(1)</span></a>, <a href="systemd-bootchart.html"><span class="citerefentry"><span class="refentrytitle">systemd-bootchart</span>(1)</span></a>, <a href="systemd-coredumpctl.html"><span class="citerefentry"><span class="refentrytitle">systemd-coredumpctl</span>(1)</span></a></p></dd><dt id="-p"><span class="term"><code class="option">-p</code></span><a class="headerlink" title="Permalink to this term" href="#-p">¶</a></dt><dd><p><a href="halt.html"><span class="citerefentry"><span class="refentrytitle">halt</span>(8)</span></a>, <a href="journalctl.html"><span class="citerefentry"><span class="refentrytitle">journalctl</span>(1)</span></a>, <a href="loginctl.html"><span class="citerefentry"><span class="refentrytitle">loginctl</span>(1)</span></a>, <a href="machinectl.html"><span class="citerefentry"><span class="refentrytitle">machinectl</span>(1)</span></a>, <a href="systemctl.html"><span class="citerefentry"><span class="refentrytitle">systemctl</span>(1)</span></a>, <a href="systemd-bootchart.html"><span class="citerefentry"><span class="refentrytitle">systemd-bootchart</span>(1)</span></a>, <a href="systemd-cat.html"><span class="citerefentry"><span class="refentrytitle">systemd-cat</span>(1)</span></a>, <a href="systemd-cgtop.html"><span class="citerefentry"><span class="refentrytitle">systemd-cgtop</span>(1)</span></a>, <a href="systemd-run.html"><span class="citerefentry"><span class="refentrytitle">systemd-run</span>(1)</span></a>, <a href="udevadm.html"><span class="citerefentry"><span class="refentrytitle">udevadm</span>(8)</span></a></p></dd><dt id="-q"><span class="term"><code class="option">-q</code></span><a class="headerlink" title="Permalink to this term" href="#-q">¶</a></dt><dd><p><a href="journalctl.html"><span class="citerefentry"><span class="refentrytitle">journalctl</span>(1)</span></a>, <a href="systemctl.html"><span class="citerefentry"><span class="refentrytitle">systemctl</span>(1)</span></a>, <a href="systemd-detect-virt.html"><span class="citerefentry"><span class="refentrytitle">systemd-detect-virt</span>(1)</span></a>, <a href="systemd-nspawn.html"><span class="citerefentry"><span class="refentrytitle">systemd-nspawn</span>(1)</span></a>, <a href="udevadm.html"><span class="citerefentry"><span class="refentrytitle">udevadm</span>(8)</span></a></p></dd><dt id="-r"><span class="term"><code class="option">-r</code></span><a class="headerlink" title="Permalink to this term" href="#-r">¶</a></dt><dd><p><a href="journalctl.html"><span class="citerefentry"><span class="refentrytitle">journalctl</span>(1)</span></a>, <a href="shutdown.html"><span class="citerefentry"><span class="refentrytitle">shutdown</span>(8)</span></a>, <a href="systemctl.html"><span class="citerefentry"><span class="refentrytitle">systemctl</span>(1)</span></a>, <a href="systemd-bootchart.html"><span class="citerefentry"><span class="refentrytitle">systemd-bootchart</span>(1)</span></a>, <a href="udevadm.html"><span class="citerefentry"><span class="refentrytitle">udevadm</span>(8)</span></a></p></dd><dt id="-s"><span class="term"><code class="option">-s</code></span><a class="headerlink" title="Permalink to this term" href="#-s">¶</a></dt><dd><p><a href="loginctl.html"><span class="citerefentry"><span class="refentrytitle">loginctl</span>(1)</span></a>, <a href="machinectl.html"><span class="citerefentry"><span class="refentrytitle">machinectl</span>(1)</span></a>, <a href="systemctl.html"><span class="citerefentry"><span class="refentrytitle">systemctl</span>(1)</span></a>, <a href="udevadm.html"><span class="citerefentry"><span class="refentrytitle">udevadm</span>(8)</span></a></p></dd><dt id="-t"><span class="term"><code class="option">-t</code></span><a class="headerlink" title="Permalink to this term" href="#-t">¶</a></dt><dd><p><a href="systemctl.html"><span class="citerefentry"><span class="refentrytitle">systemctl</span>(1)</span></a>, <a href="systemd-cat.html"><span class="citerefentry"><span class="refentrytitle">systemd-cat</span>(1)</span></a>, <a href="systemd-cgtop.html"><span class="citerefentry"><span class="refentrytitle">systemd-cgtop</span>(1)</span></a>, <a href="systemd-delta.html"><span class="citerefentry"><span class="refentrytitle">systemd-delta</span>(1)</span></a>, <a href="udevadm.html"><span class="citerefentry"><span class="refentrytitle">udevadm</span>(8)</span></a></p></dd><dt id="-u"><span class="term"><code class="option">-u</code></span><a class="headerlink" title="Permalink to this term" href="#-u">¶</a></dt><dd><p><a href="journalctl.html"><span class="citerefentry"><span class="refentrytitle">journalctl</span>(1)</span></a>, <a href="systemd-nspawn.html"><span class="citerefentry"><span class="refentrytitle">systemd-nspawn</span>(1)</span></a>, <a href="udevadm.html"><span class="citerefentry"><span class="refentrytitle">udevadm</span>(8)</span></a></p></dd><dt id="-v"><span class="term"><code class="option">-v</code></span><a class="headerlink" title="Permalink to this term" href="#-v">¶</a></dt><dd><p><a href="systemd-detect-virt.html"><span class="citerefentry"><span class="refentrytitle">systemd-detect-virt</span>(1)</span></a>, <a href="udevadm.html"><span class="citerefentry"><span class="refentrytitle">udevadm</span>(8)</span></a></p></dd><dt id="-w"><span class="term"><code class="option">-w</code></span><a class="headerlink" title="Permalink to this term" href="#-w">¶</a></dt><dd><p><a href="halt.html"><span class="citerefentry"><span class="refentrytitle">halt</span>(8)</span></a></p></dd><dt id="-x"><span class="term"><code class="option">-x</code></span><a class="headerlink" title="Permalink to this term" href="#-x">¶</a></dt><dd><p><a href="journalctl.html"><span class="citerefentry"><span class="refentrytitle">journalctl</span>(1)</span></a>, <a href="systemd-bootchart.html"><span class="citerefentry"><span class="refentrytitle">systemd-bootchart</span>(1)</span></a>, <a href="udevadm.html"><span class="citerefentry"><span class="refentrytitle">udevadm</span>(8)</span></a></p></dd><dt id="-y"><span class="term"><code class="option">-y</code></span><a class="headerlink" title="Permalink to this term" href="#-y">¶</a></dt><dd><p><a href="systemd-bootchart.html"><span class="citerefentry"><span class="refentrytitle">systemd-bootchart</span>(1)</span></a>, <a href="udevadm.html"><span class="citerefentry"><span class="refentrytitle">udevadm</span>(8)</span></a></p></dd><dt id="auto"><span class="term"><code class="constant">auto</code></span><a class="headerlink" title="Permalink to this term" href="#auto">¶</a></dt><dd><p><a href="systemd.resource-control.html"><span class="citerefentry"><span class="refentrytitle">systemd.resource-control</span>(5)</span></a></p></dd><dt id="cat"><span class="term"><code class="option">cat</code></span><a class="headerlink" title="Permalink to this term" href="#cat">¶</a></dt><dd><p><a href="journalctl.html"><span class="citerefentry"><span class="refentrytitle">journalctl</span>(1)</span></a></p></dd><dt id="closed"><span class="term"><code class="option">closed</code></span><a class="headerlink" title="Permalink to this term" href="#closed">¶</a></dt><dd><p><a href="systemd.resource-control.html"><span class="citerefentry"><span class="refentrytitle">systemd.resource-control</span>(5)</span></a></p></dd><dt id="driver"><span class="term"><code class="option">driver</code></span><a class="headerlink" title="Permalink to this term" href="#driver">¶</a></dt><dd><p><a href="systemd.journal-fields.html"><span class="citerefentry"><span class="refentrytitle">systemd.journal-fields</span>(7)</span></a></p></dd><dt id="export"><span class="term"><code class="option">export</code></span><a class="headerlink" title="Permalink to this term" href="#export">¶</a></dt><dd><p><a href="journalctl.html"><span class="citerefentry"><span class="refentrytitle">journalctl</span>(1)</span></a></p></dd><dt id="hibernate"><span class="term"><code class="option">hibernate</code></span><a class="headerlink" title="Permalink to this term" href="#hibernate">¶</a></dt><dd><p><a href="systemd-suspend.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-suspend.service</span>(8)</span></a></p></dd><dt id="hybrid-sleep"><span class="term"><code class="option">hybrid-sleep</code></span><a class="headerlink" title="Permalink to this term" href="#hybrid-sleep">¶</a></dt><dd><p><a href="systemd-suspend.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-suspend.service</span>(8)</span></a></p></dd><dt id="journal"><span class="term"><code class="option">journal</code></span><a class="headerlink" title="Permalink to this term" href="#journal">¶</a></dt><dd><p><a href="systemd.journal-fields.html"><span class="citerefentry"><span class="refentrytitle">systemd.journal-fields</span>(7)</span></a></p></dd><dt id="json"><span class="term"><code class="option">json</code></span><a class="headerlink" title="Permalink to this term" href="#json">¶</a></dt><dd><p><a href="journalctl.html"><span class="citerefentry"><span class="refentrytitle">journalctl</span>(1)</span></a></p></dd><dt id="json-pretty"><span class="term"><code class="option">json-pretty</code></span><a class="headerlink" title="Permalink to this term" href="#json-pretty">¶</a></dt><dd><p><a href="journalctl.html"><span class="citerefentry"><span class="refentrytitle">journalctl</span>(1)</span></a></p></dd><dt id="json-sse"><span class="term"><code class="option">json-sse</code></span><a class="headerlink" title="Permalink to this term" href="#json-sse">¶</a></dt><dd><p><a href="journalctl.html"><span class="citerefentry"><span class="refentrytitle">journalctl</span>(1)</span></a></p></dd><dt id="kernel"><span class="term"><code class="option">kernel</code></span><a class="headerlink" title="Permalink to this term" href="#kernel">¶</a></dt><dd><p><a href="systemd.journal-fields.html"><span class="citerefentry"><span class="refentrytitle">systemd.journal-fields</span>(7)</span></a></p></dd><dt id="short"><span class="term"><code class="option">short</code></span><a class="headerlink" title="Permalink to this term" href="#short">¶</a></dt><dd><p><a href="journalctl.html"><span class="citerefentry"><span class="refentrytitle">journalctl</span>(1)</span></a></p></dd><dt id="short-iso"><span class="term"><code class="option">short-iso</code></span><a class="headerlink" title="Permalink to this term" href="#short-iso">¶</a></dt><dd><p><a href="journalctl.html"><span class="citerefentry"><span class="refentrytitle">journalctl</span>(1)</span></a></p></dd><dt id="short-monotonic"><span class="term"><code class="option">short-monotonic</code></span><a class="headerlink" title="Permalink to this term" href="#short-monotonic">¶</a></dt><dd><p><a href="journalctl.html"><span class="citerefentry"><span class="refentrytitle">journalctl</span>(1)</span></a></p></dd><dt id="short-precise"><span class="term"><code class="option">short-precise</code></span><a class="headerlink" title="Permalink to this term" href="#short-precise">¶</a></dt><dd><p><a href="journalctl.html"><span class="citerefentry"><span class="refentrytitle">journalctl</span>(1)</span></a></p></dd><dt id="stdout"><span class="term"><code class="option">stdout</code></span><a class="headerlink" title="Permalink to this term" href="#stdout">¶</a></dt><dd><p><a href="systemd.journal-fields.html"><span class="citerefentry"><span class="refentrytitle">systemd.journal-fields</span>(7)</span></a></p></dd><dt id="strict"><span class="term"><code class="option">strict</code></span><a class="headerlink" title="Permalink to this term" href="#strict">¶</a></dt><dd><p><a href="systemd.resource-control.html"><span class="citerefentry"><span class="refentrytitle">systemd.resource-control</span>(5)</span></a></p></dd><dt id="suspend"><span class="term"><code class="option">suspend</code></span><a class="headerlink" title="Permalink to this term" href="#suspend">¶</a></dt><dd><p><a href="systemd-suspend.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-suspend.service</span>(8)</span></a></p></dd><dt id="syslog"><span class="term"><code class="option">syslog</code></span><a class="headerlink" title="Permalink to this term" href="#syslog">¶</a></dt><dd><p><a href="systemd.journal-fields.html"><span class="citerefentry"><span class="refentrytitle">systemd.journal-fields</span>(7)</span></a></p></dd><dt id="verbose"><span class="term"><code class="option">verbose</code></span><a class="headerlink" title="Permalink to this term" href="#verbose">¶</a></dt><dd><p><a href="journalctl.html"><span class="citerefentry"><span class="refentrytitle">journalctl</span>(1)</span></a></p></dd></dl></div></div><div class="refsect1"><a name="idm214185496288"></a><h2 id="Constants">Constants<a class="headerlink" title="Permalink to this headline" href="#Constants">¶</a></h2><p>Various constant used and/or defined by systemd.</p><div class="variablelist"><a name="constants"></a><dl class="variablelist"><dt id="-0"><span class="term"><code class="constant">-0</code></span><a class="headerlink" title="Permalink to this term" href="#-0">¶</a></dt><dd><p><a href="journalctl.html"><span class="citerefentry"><span class="refentrytitle">journalctl</span>(1)</span></a></p></dd><dt id="-1"><span class="term"><code class="constant">-1</code></span><a class="headerlink" title="Permalink to this term" href="#-1">¶</a></dt><dd><p><a href="journalctl.html"><span class="citerefentry"><span class="refentrytitle">journalctl</span>(1)</span></a>, <a href="sd_journal_get_fd.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_get_fd</span>(3)</span></a>, <a href="sd_login_monitor_new.html"><span class="citerefentry"><span class="refentrytitle">sd_login_monitor_new</span>(3)</span></a>, <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a></p></dd><dt id="-ECHILD"><span class="term"><code class="constant">-ECHILD</code></span><a class="headerlink" title="Permalink to this term" href="#-ECHILD">¶</a></dt><dd><p><a href="sd_journal_open.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_open</span>(3)</span></a></p></dd><dt id="-ENODATA"><span class="term"><code class="constant">-ENODATA</code></span><a class="headerlink" title="Permalink to this term" href="#-ENODATA">¶</a></dt><dd><p><a href="sd_bus_negotiate_fds.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_negotiate_fds</span>(3)</span></a></p></dd><dt id="-ENXIO"><span class="term"><code class="constant">-ENXIO</code></span><a class="headerlink" title="Permalink to this term" href="#-ENXIO">¶</a></dt><dd><p><a href="sd_bus_error.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_error</span>(3)</span></a></p></dd><dt id="0"><span class="term"><code class="constant">0</code></span><a class="headerlink" title="Permalink to this term" href="#0">¶</a></dt><dd><p><a href="systemctl.html"><span class="citerefentry"><span class="refentrytitle">systemctl</span>(1)</span></a></p></dd><dt id="1"><span class="term"><code class="constant">1</code></span><a class="headerlink" title="Permalink to this term" href="#1">¶</a></dt><dd><p><a href="journalctl.html"><span class="citerefentry"><span class="refentrytitle">journalctl</span>(1)</span></a></p></dd><dt id="2"><span class="term"><code class="constant">2</code></span><a class="headerlink" title="Permalink to this term" href="#2">¶</a></dt><dd><p><a href="journalctl.html"><span class="citerefentry"><span class="refentrytitle">journalctl</span>(1)</span></a></p></dd><dt id="AF_INET"><span class="term"><code class="constant">AF_INET</code></span><a class="headerlink" title="Permalink to this term" href="#AF_INET">¶</a></dt><dd><p><a href="sd_is_fifo.html"><span class="citerefentry"><span class="refentrytitle">sd_is_fifo</span>(3)</span></a>, <a href="systemd.exec.html"><span class="citerefentry"><span class="refentrytitle">systemd.exec</span>(5)</span></a></p></dd><dt id="AF_INET6"><span class="term"><code class="constant">AF_INET6</code></span><a class="headerlink" title="Permalink to this term" href="#AF_INET6">¶</a></dt><dd><p><a href="sd_is_fifo.html"><span class="citerefentry"><span class="refentrytitle">sd_is_fifo</span>(3)</span></a>, <a href="systemd.exec.html"><span class="citerefentry"><span class="refentrytitle">systemd.exec</span>(5)</span></a></p></dd><dt id="AF_NETLINK"><span class="term"><code class="constant">AF_NETLINK</code></span><a class="headerlink" title="Permalink to this term" href="#AF_NETLINK">¶</a></dt><dd><p><a href="systemd.socket.html"><span class="citerefentry"><span class="refentrytitle">systemd.socket</span>(5)</span></a></p></dd><dt id="AF_UNIX"><span class="term"><code class="constant">AF_UNIX</code></span><a class="headerlink" title="Permalink to this term" href="#AF_UNIX">¶</a></dt><dd><p><a href="daemon.html"><span class="citerefentry"><span class="refentrytitle">daemon</span>(7)</span></a>, <a href="pam_systemd.html"><span class="citerefentry"><span class="refentrytitle">pam_systemd</span>(8)</span></a>, <a href="sd_is_fifo.html"><span class="citerefentry"><span class="refentrytitle">sd_is_fifo</span>(3)</span></a>, <a href="sd_notify.html"><span class="citerefentry"><span class="refentrytitle">sd_notify</span>(3)</span></a>, <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>, <a href="systemd-journald.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-journald.service</span>(8)</span></a>, <a href="systemd.exec.html"><span class="citerefentry"><span class="refentrytitle">systemd.exec</span>(5)</span></a>, <a href="systemd.socket.html"><span class="citerefentry"><span class="refentrytitle">systemd.socket</span>(5)</span></a></p></dd><dt id="AF_UNSPEC"><span class="term"><code class="constant">AF_UNSPEC</code></span><a class="headerlink" title="Permalink to this term" href="#AF_UNSPEC">¶</a></dt><dd><p><a href="sd_is_fifo.html"><span class="citerefentry"><span class="refentrytitle">sd_is_fifo</span>(3)</span></a></p></dd><dt id="CAP_DAC_OVERRIDE"><span class="term"><code class="constant">CAP_DAC_OVERRIDE</code></span><a class="headerlink" title="Permalink to this term" href="#CAP_DAC_OVERRIDE">¶</a></dt><dd><p><a href="systemd.exec.html"><span class="citerefentry"><span class="refentrytitle">systemd.exec</span>(5)</span></a></p></dd><dt id="CAP_MKNOD"><span class="term"><code class="constant">CAP_MKNOD</code></span><a class="headerlink" title="Permalink to this term" href="#CAP_MKNOD">¶</a></dt><dd><p><a href="systemd.exec.html"><span class="citerefentry"><span class="refentrytitle">systemd.exec</span>(5)</span></a></p></dd><dt id="CAP_SYS_ADMIN"><span class="term"><code class="constant">CAP_SYS_ADMIN</code></span><a class="headerlink" title="Permalink to this term" href="#CAP_SYS_ADMIN">¶</a></dt><dd><p><a href="systemd.exec.html"><span class="citerefentry"><span class="refentrytitle">systemd.exec</span>(5)</span></a></p></dd><dt id="CAP_SYS_PTRACE"><span class="term"><code class="constant">CAP_SYS_PTRACE</code></span><a class="headerlink" title="Permalink to this term" href="#CAP_SYS_PTRACE">¶</a></dt><dd><p><a href="systemd.exec.html"><span class="citerefentry"><span class="refentrytitle">systemd.exec</span>(5)</span></a></p></dd><dt id="CLOCK_BOOTTIME_ALARM"><span class="term"><code class="constant">CLOCK_BOOTTIME_ALARM</code></span><a class="headerlink" title="Permalink to this term" href="#CLOCK_BOOTTIME_ALARM">¶</a></dt><dd><p><a href="sd_event_add_time.html"><span class="citerefentry"><span class="refentrytitle">sd_event_add_time</span>(3)</span></a></p></dd><dt id="CLOCK_MONOTONIC"><span class="term"><code class="constant">CLOCK_MONOTONIC</code></span><a class="headerlink" title="Permalink to this term" href="#CLOCK_MONOTONIC">¶</a></dt><dd><p><a href="bootchart.conf.html"><span class="citerefentry"><span class="refentrytitle">bootchart.conf</span>(5)</span></a>, <a href="sd_event_add_time.html"><span class="citerefentry"><span class="refentrytitle">sd_event_add_time</span>(3)</span></a>, <a href="sd_journal_get_cutoff_realtime_usec.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_get_cutoff_realtime_usec</span>(3)</span></a>, <a href="sd_journal_get_fd.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_get_fd</span>(3)</span></a>, <a href="sd_journal_get_realtime_usec.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_get_realtime_usec</span>(3)</span></a>, <a href="sd_journal_seek_head.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_seek_head</span>(3)</span></a>, <a href="sd_login_monitor_new.html"><span class="citerefentry"><span class="refentrytitle">sd_login_monitor_new</span>(3)</span></a>, <a href="systemd.journal-fields.html"><span class="citerefentry"><span class="refentrytitle">systemd.journal-fields</span>(7)</span></a></p></dd><dt id="CLOCK_REALTIME"><span class="term"><code class="constant">CLOCK_REALTIME</code></span><a class="headerlink" title="Permalink to this term" href="#CLOCK_REALTIME">¶</a></dt><dd><p><a href="sd_event_add_time.html"><span class="citerefentry"><span class="refentrytitle">sd_event_add_time</span>(3)</span></a>, <a href="sd_journal_get_cutoff_realtime_usec.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_get_cutoff_realtime_usec</span>(3)</span></a>, <a href="sd_journal_get_realtime_usec.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_get_realtime_usec</span>(3)</span></a>, <a href="sd_journal_seek_head.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_seek_head</span>(3)</span></a>, <a href="systemd.journal-fields.html"><span class="citerefentry"><span class="refentrytitle">systemd.journal-fields</span>(7)</span></a></p></dd><dt id="EACCES"><span class="term"><code class="constant">EACCES</code></span><a class="headerlink" title="Permalink to this term" href="#EACCES">¶</a></dt><dd><p><a href="systemd.exec.html"><span class="citerefentry"><span class="refentrytitle">systemd.exec</span>(5)</span></a></p></dd><dt id="EPERM"><span class="term"><code class="constant">EPERM</code></span><a class="headerlink" title="Permalink to this term" href="#EPERM">¶</a></dt><dd><p><a href="systemd.exec.html"><span class="citerefentry"><span class="refentrytitle">systemd.exec</span>(5)</span></a></p></dd><dt id="EUCLEAN"><span class="term"><code class="constant">EUCLEAN</code></span><a class="headerlink" title="Permalink to this term" href="#EUCLEAN">¶</a></dt><dd><p><a href="systemd.exec.html"><span class="citerefentry"><span class="refentrytitle">systemd.exec</span>(5)</span></a></p></dd><dt id="LOG_ALERT"><span class="term"><code class="constant">LOG_ALERT</code></span><a class="headerlink" title="Permalink to this term" href="#LOG_ALERT">¶</a></dt><dd><p><a href="sd_journal_print.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_print</span>(3)</span></a>, <a href="sd_journal_stream_fd.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_stream_fd</span>(3)</span></a></p></dd><dt id="LOG_CRIT"><span class="term"><code class="constant">LOG_CRIT</code></span><a class="headerlink" title="Permalink to this term" href="#LOG_CRIT">¶</a></dt><dd><p><a href="sd_journal_print.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_print</span>(3)</span></a>, <a href="sd_journal_stream_fd.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_stream_fd</span>(3)</span></a></p></dd><dt id="LOG_DEBUG"><span class="term"><code class="constant">LOG_DEBUG</code></span><a class="headerlink" title="Permalink to this term" href="#LOG_DEBUG">¶</a></dt><dd><p><a href="sd_journal_print.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_print</span>(3)</span></a>, <a href="sd_journal_stream_fd.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_stream_fd</span>(3)</span></a></p></dd><dt id="LOG_EMERG"><span class="term"><code class="constant">LOG_EMERG</code></span><a class="headerlink" title="Permalink to this term" href="#LOG_EMERG">¶</a></dt><dd><p><a href="sd_journal_print.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_print</span>(3)</span></a>, <a href="sd_journal_stream_fd.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_stream_fd</span>(3)</span></a></p></dd><dt id="LOG_ERR"><span class="term"><code class="constant">LOG_ERR</code></span><a class="headerlink" title="Permalink to this term" href="#LOG_ERR">¶</a></dt><dd><p><a href="sd_journal_print.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_print</span>(3)</span></a>, <a href="sd_journal_stream_fd.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_stream_fd</span>(3)</span></a></p></dd><dt id="LOG_INFO"><span class="term"><code class="constant">LOG_INFO</code></span><a class="headerlink" title="Permalink to this term" href="#LOG_INFO">¶</a></dt><dd><p><a href="sd_journal_print.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_print</span>(3)</span></a>, <a href="sd_journal_stream_fd.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_stream_fd</span>(3)</span></a></p></dd><dt id="LOG_NOTICE"><span class="term"><code class="constant">LOG_NOTICE</code></span><a class="headerlink" title="Permalink to this term" href="#LOG_NOTICE">¶</a></dt><dd><p><a href="sd_journal_print.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_print</span>(3)</span></a>, <a href="sd_journal_stream_fd.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_stream_fd</span>(3)</span></a></p></dd><dt id="LOG_WARNING"><span class="term"><code class="constant">LOG_WARNING</code></span><a class="headerlink" title="Permalink to this term" href="#LOG_WARNING">¶</a></dt><dd><p><a href="sd_journal_print.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_print</span>(3)</span></a>, <a href="sd_journal_stream_fd.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_stream_fd</span>(3)</span></a></p></dd><dt id="NUL"><span class="term"><code class="constant">NUL</code></span><a class="headerlink" title="Permalink to this term" href="#NUL">¶</a></dt><dd><p><a href="sd_bus_message_append.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_message_append</span>(3)</span></a>, <a href="sd_bus_message_append_basic.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_message_append_basic</span>(3)</span></a>, <a href="sd_bus_message_append_string_memfd.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_message_append_string_memfd</span>(3)</span></a>, <a href="sd_bus_message_append_strv.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_message_append_strv</span>(3)</span></a>, <a href="sd_bus_path_encode.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_path_encode</span>(3)</span></a>, <a href="sd_id128_to_string.html"><span class="citerefentry"><span class="refentrytitle">sd_id128_to_string</span>(3)</span></a>, <a href="systemd.socket.html"><span class="citerefentry"><span class="refentrytitle">systemd.socket</span>(5)</span></a></p></dd><dt id="NULL"><span class="term"><code class="constant">NULL</code></span><a class="headerlink" title="Permalink to this term" href="#NULL">¶</a></dt><dd><p><a href="sd-login.html"><span class="citerefentry"><span class="refentrytitle">sd-login</span>(3)</span></a>, <a href="sd_bus_creds_get_pid.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_creds_get_pid</span>(3)</span></a>, <a href="sd_bus_creds_new_from_pid.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_creds_new_from_pid</span>(3)</span></a>, <a href="sd_bus_error.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_error</span>(3)</span></a>, <a href="sd_bus_message_append_array.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_message_append_array</span>(3)</span></a>, <a href="sd_bus_message_append_basic.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_message_append_basic</span>(3)</span></a>, <a href="sd_bus_message_append_strv.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_message_append_strv</span>(3)</span></a>, <a href="sd_bus_new.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_new</span>(3)</span></a>, <a href="sd_bus_open_user.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_open_user</span>(3)</span></a>, <a href="sd_bus_path_encode.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_path_encode</span>(3)</span></a>, <a href="sd_get_seats.html"><span class="citerefentry"><span class="refentrytitle">sd_get_seats</span>(3)</span></a>, <a href="sd_is_fifo.html"><span class="citerefentry"><span class="refentrytitle">sd_is_fifo</span>(3)</span></a>, <a href="sd_journal_get_cutoff_realtime_usec.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_get_cutoff_realtime_usec</span>(3)</span></a>, <a href="sd_journal_get_realtime_usec.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_get_realtime_usec</span>(3)</span></a>, <a href="sd_journal_open.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_open</span>(3)</span></a>, <a href="sd_journal_print.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_print</span>(3)</span></a>, <a href="sd_login_monitor_new.html"><span class="citerefentry"><span class="refentrytitle">sd_login_monitor_new</span>(3)</span></a>, <a href="sd_seat_get_active.html"><span class="citerefentry"><span class="refentrytitle">sd_seat_get_active</span>(3)</span></a>, <a href="sd_session_is_active.html"><span class="citerefentry"><span class="refentrytitle">sd_session_is_active</span>(3)</span></a>, <a href="sd_uid_get_state.html"><span class="citerefentry"><span class="refentrytitle">sd_uid_get_state</span>(3)</span></a></p></dd><dt id="O_NONBLOCK"><span class="term"><code class="constant">O_NONBLOCK</code></span><a class="headerlink" title="Permalink to this term" href="#O_NONBLOCK">¶</a></dt><dd><p><a href="systemd.service.html"><span class="citerefentry"><span class="refentrytitle">systemd.service</span>(5)</span></a></p></dd><dt id="POLLIN"><span class="term"><code class="constant">POLLIN</code></span><a class="headerlink" title="Permalink to this term" href="#POLLIN">¶</a></dt><dd><p><a href="sd_journal_get_fd.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_get_fd</span>(3)</span></a>, <a href="sd_login_monitor_new.html"><span class="citerefentry"><span class="refentrytitle">sd_login_monitor_new</span>(3)</span></a></p></dd><dt id="POLLOUT"><span class="term"><code class="constant">POLLOUT</code></span><a class="headerlink" title="Permalink to this term" href="#POLLOUT">¶</a></dt><dd><p><a href="sd_journal_get_fd.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_get_fd</span>(3)</span></a>, <a href="sd_login_monitor_new.html"><span class="citerefentry"><span class="refentrytitle">sd_login_monitor_new</span>(3)</span></a></p></dd><dt id="SD_BUS_CREDS_AUDIT_LOGIN_UID"><span class="term"><code class="constant">SD_BUS_CREDS_AUDIT_LOGIN_UID</code></span><a class="headerlink" title="Permalink to this term" href="#SD_BUS_CREDS_AUDIT_LOGIN_UID">¶</a></dt><dd><p><a href="sd_bus_creds_new_from_pid.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_creds_new_from_pid</span>(3)</span></a></p></dd><dt id="SD_BUS_CREDS_AUDIT_SESSION_ID"><span class="term"><code class="constant">SD_BUS_CREDS_AUDIT_SESSION_ID</code></span><a class="headerlink" title="Permalink to this term" href="#SD_BUS_CREDS_AUDIT_SESSION_ID">¶</a></dt><dd><p><a href="sd_bus_creds_new_from_pid.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_creds_new_from_pid</span>(3)</span></a></p></dd><dt id="SD_BUS_CREDS_BOUNDING_CAPS"><span class="term"><code class="constant">SD_BUS_CREDS_BOUNDING_CAPS</code></span><a class="headerlink" title="Permalink to this term" href="#SD_BUS_CREDS_BOUNDING_CAPS">¶</a></dt><dd><p><a href="sd_bus_creds_new_from_pid.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_creds_new_from_pid</span>(3)</span></a></p></dd><dt id="SD_BUS_CREDS_CGROUP"><span class="term"><code class="constant">SD_BUS_CREDS_CGROUP</code></span><a class="headerlink" title="Permalink to this term" href="#SD_BUS_CREDS_CGROUP">¶</a></dt><dd><p><a href="sd_bus_creds_new_from_pid.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_creds_new_from_pid</span>(3)</span></a></p></dd><dt id="SD_BUS_CREDS_CMDLINE"><span class="term"><code class="constant">SD_BUS_CREDS_CMDLINE</code></span><a class="headerlink" title="Permalink to this term" href="#SD_BUS_CREDS_CMDLINE">¶</a></dt><dd><p><a href="sd_bus_creds_new_from_pid.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_creds_new_from_pid</span>(3)</span></a></p></dd><dt id="SD_BUS_CREDS_COMM"><span class="term"><code class="constant">SD_BUS_CREDS_COMM</code></span><a class="headerlink" title="Permalink to this term" href="#SD_BUS_CREDS_COMM">¶</a></dt><dd><p><a href="sd_bus_creds_new_from_pid.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_creds_new_from_pid</span>(3)</span></a></p></dd><dt id="SD_BUS_CREDS_EFFECTIVE_CAPS"><span class="term"><code class="constant">SD_BUS_CREDS_EFFECTIVE_CAPS</code></span><a class="headerlink" title="Permalink to this term" href="#SD_BUS_CREDS_EFFECTIVE_CAPS">¶</a></dt><dd><p><a href="sd_bus_creds_new_from_pid.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_creds_new_from_pid</span>(3)</span></a></p></dd><dt id="SD_BUS_CREDS_EXE"><span class="term"><code class="constant">SD_BUS_CREDS_EXE</code></span><a class="headerlink" title="Permalink to this term" href="#SD_BUS_CREDS_EXE">¶</a></dt><dd><p><a href="sd_bus_creds_new_from_pid.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_creds_new_from_pid</span>(3)</span></a></p></dd><dt id="SD_BUS_CREDS_GID"><span class="term"><code class="constant">SD_BUS_CREDS_GID</code></span><a class="headerlink" title="Permalink to this term" href="#SD_BUS_CREDS_GID">¶</a></dt><dd><p><a href="sd_bus_creds_new_from_pid.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_creds_new_from_pid</span>(3)</span></a></p></dd><dt id="SD_BUS_CREDS_INHERITABLE_CAPS"><span class="term"><code class="constant">SD_BUS_CREDS_INHERITABLE_CAPS</code></span><a class="headerlink" title="Permalink to this term" href="#SD_BUS_CREDS_INHERITABLE_CAPS">¶</a></dt><dd><p><a href="sd_bus_creds_new_from_pid.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_creds_new_from_pid</span>(3)</span></a></p></dd><dt id="SD_BUS_CREDS_OWNER_UID"><span class="term"><code class="constant">SD_BUS_CREDS_OWNER_UID</code></span><a class="headerlink" title="Permalink to this term" href="#SD_BUS_CREDS_OWNER_UID">¶</a></dt><dd><p><a href="sd_bus_creds_new_from_pid.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_creds_new_from_pid</span>(3)</span></a></p></dd><dt id="SD_BUS_CREDS_PERMITTED_CAPS"><span class="term"><code class="constant">SD_BUS_CREDS_PERMITTED_CAPS</code></span><a class="headerlink" title="Permalink to this term" href="#SD_BUS_CREDS_PERMITTED_CAPS">¶</a></dt><dd><p><a href="sd_bus_creds_new_from_pid.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_creds_new_from_pid</span>(3)</span></a></p></dd><dt id="SD_BUS_CREDS_PID"><span class="term"><code class="constant">SD_BUS_CREDS_PID</code></span><a class="headerlink" title="Permalink to this term" href="#SD_BUS_CREDS_PID">¶</a></dt><dd><p><a href="sd_bus_creds_new_from_pid.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_creds_new_from_pid</span>(3)</span></a></p></dd><dt id="SD_BUS_CREDS_PID_STARTTIME"><span class="term"><code class="constant">SD_BUS_CREDS_PID_STARTTIME</code></span><a class="headerlink" title="Permalink to this term" href="#SD_BUS_CREDS_PID_STARTTIME">¶</a></dt><dd><p><a href="sd_bus_creds_new_from_pid.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_creds_new_from_pid</span>(3)</span></a></p></dd><dt id="SD_BUS_CREDS_SELINUX_CONTEXT"><span class="term"><code class="constant">SD_BUS_CREDS_SELINUX_CONTEXT</code></span><a class="headerlink" title="Permalink to this term" href="#SD_BUS_CREDS_SELINUX_CONTEXT">¶</a></dt><dd><p><a href="sd_bus_creds_new_from_pid.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_creds_new_from_pid</span>(3)</span></a></p></dd><dt id="SD_BUS_CREDS_SESSION"><span class="term"><code class="constant">SD_BUS_CREDS_SESSION</code></span><a class="headerlink" title="Permalink to this term" href="#SD_BUS_CREDS_SESSION">¶</a></dt><dd><p><a href="sd_bus_creds_new_from_pid.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_creds_new_from_pid</span>(3)</span></a></p></dd><dt id="SD_BUS_CREDS_SLICE"><span class="term"><code class="constant">SD_BUS_CREDS_SLICE</code></span><a class="headerlink" title="Permalink to this term" href="#SD_BUS_CREDS_SLICE">¶</a></dt><dd><p><a href="sd_bus_creds_new_from_pid.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_creds_new_from_pid</span>(3)</span></a></p></dd><dt id="SD_BUS_CREDS_TID"><span class="term"><code class="constant">SD_BUS_CREDS_TID</code></span><a class="headerlink" title="Permalink to this term" href="#SD_BUS_CREDS_TID">¶</a></dt><dd><p><a href="sd_bus_creds_new_from_pid.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_creds_new_from_pid</span>(3)</span></a></p></dd><dt id="SD_BUS_CREDS_TID_COMM"><span class="term"><code class="constant">SD_BUS_CREDS_TID_COMM</code></span><a class="headerlink" title="Permalink to this term" href="#SD_BUS_CREDS_TID_COMM">¶</a></dt><dd><p><a href="sd_bus_creds_new_from_pid.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_creds_new_from_pid</span>(3)</span></a></p></dd><dt id="SD_BUS_CREDS_UID"><span class="term"><code class="constant">SD_BUS_CREDS_UID</code></span><a class="headerlink" title="Permalink to this term" href="#SD_BUS_CREDS_UID">¶</a></dt><dd><p><a href="sd_bus_creds_new_from_pid.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_creds_new_from_pid</span>(3)</span></a></p></dd><dt id="SD_BUS_CREDS_UNIQUE_NAME"><span class="term"><code class="constant">SD_BUS_CREDS_UNIQUE_NAME</code></span><a class="headerlink" title="Permalink to this term" href="#SD_BUS_CREDS_UNIQUE_NAME">¶</a></dt><dd><p><a href="sd_bus_creds_new_from_pid.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_creds_new_from_pid</span>(3)</span></a></p></dd><dt id="SD_BUS_CREDS_UNIT"><span class="term"><code class="constant">SD_BUS_CREDS_UNIT</code></span><a class="headerlink" title="Permalink to this term" href="#SD_BUS_CREDS_UNIT">¶</a></dt><dd><p><a href="sd_bus_creds_new_from_pid.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_creds_new_from_pid</span>(3)</span></a></p></dd><dt id="SD_BUS_CREDS_USER_UNIT"><span class="term"><code class="constant">SD_BUS_CREDS_USER_UNIT</code></span><a class="headerlink" title="Permalink to this term" href="#SD_BUS_CREDS_USER_UNIT">¶</a></dt><dd><p><a href="sd_bus_creds_new_from_pid.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_creds_new_from_pid</span>(3)</span></a></p></dd><dt id="SD_BUS_CREDS_WELL_KNOWN_NAMES"><span class="term"><code class="constant">SD_BUS_CREDS_WELL_KNOWN_NAMES</code></span><a class="headerlink" title="Permalink to this term" href="#SD_BUS_CREDS_WELL_KNOWN_NAMES">¶</a></dt><dd><p><a href="sd_bus_creds_new_from_pid.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_creds_new_from_pid</span>(3)</span></a></p></dd><dt id="SD_BUS_ERROR_ACCESS_DENIED"><span class="term"><code class="constant">SD_BUS_ERROR_ACCESS_DENIED</code></span><a class="headerlink" title="Permalink to this term" href="#SD_BUS_ERROR_ACCESS_DENIED">¶</a></dt><dd><p><a href="sd_bus_error.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_error</span>(3)</span></a></p></dd><dt id="SD_BUS_ERROR_ADDRESS_IN_USE"><span class="term"><code class="constant">SD_BUS_ERROR_ADDRESS_IN_USE</code></span><a class="headerlink" title="Permalink to this term" href="#SD_BUS_ERROR_ADDRESS_IN_USE">¶</a></dt><dd><p><a href="sd_bus_error.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_error</span>(3)</span></a></p></dd><dt id="SD_BUS_ERROR_AUTH_FAILED"><span class="term"><code class="constant">SD_BUS_ERROR_AUTH_FAILED</code></span><a class="headerlink" title="Permalink to this term" href="#SD_BUS_ERROR_AUTH_FAILED">¶</a></dt><dd><p><a href="sd_bus_error.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_error</span>(3)</span></a></p></dd><dt id="SD_BUS_ERROR_BAD_ADDRESS"><span class="term"><code class="constant">SD_BUS_ERROR_BAD_ADDRESS</code></span><a class="headerlink" title="Permalink to this term" href="#SD_BUS_ERROR_BAD_ADDRESS">¶</a></dt><dd><p><a href="sd_bus_error.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_error</span>(3)</span></a></p></dd><dt id="SD_BUS_ERROR_DISCONNECTED"><span class="term"><code class="constant">SD_BUS_ERROR_DISCONNECTED</code></span><a class="headerlink" title="Permalink to this term" href="#SD_BUS_ERROR_DISCONNECTED">¶</a></dt><dd><p><a href="sd_bus_error.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_error</span>(3)</span></a></p></dd><dt id="SD_BUS_ERROR_FAILED"><span class="term"><code class="constant">SD_BUS_ERROR_FAILED</code></span><a class="headerlink" title="Permalink to this term" href="#SD_BUS_ERROR_FAILED">¶</a></dt><dd><p><a href="sd_bus_error.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_error</span>(3)</span></a></p></dd><dt id="SD_BUS_ERROR_FILE_EXISTS"><span class="term"><code class="constant">SD_BUS_ERROR_FILE_EXISTS</code></span><a class="headerlink" title="Permalink to this term" href="#SD_BUS_ERROR_FILE_EXISTS">¶</a></dt><dd><p><a href="sd_bus_error.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_error</span>(3)</span></a></p></dd><dt id="SD_BUS_ERROR_FILE_NOT_FOUND"><span class="term"><code class="constant">SD_BUS_ERROR_FILE_NOT_FOUND</code></span><a class="headerlink" title="Permalink to this term" href="#SD_BUS_ERROR_FILE_NOT_FOUND">¶</a></dt><dd><p><a href="sd_bus_error.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_error</span>(3)</span></a></p></dd><dt id="SD_BUS_ERROR_INCONSISTENT_MESSAGE"><span class="term"><code class="constant">SD_BUS_ERROR_INCONSISTENT_MESSAGE</code></span><a class="headerlink" title="Permalink to this term" href="#SD_BUS_ERROR_INCONSISTENT_MESSAGE">¶</a></dt><dd><p><a href="sd_bus_error.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_error</span>(3)</span></a></p></dd><dt id="SD_BUS_ERROR_INVALID_ARGS"><span class="term"><code class="constant">SD_BUS_ERROR_INVALID_ARGS</code></span><a class="headerlink" title="Permalink to this term" href="#SD_BUS_ERROR_INVALID_ARGS">¶</a></dt><dd><p><a href="sd_bus_error.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_error</span>(3)</span></a></p></dd><dt id="SD_BUS_ERROR_INVALID_SIGNATURE"><span class="term"><code class="constant">SD_BUS_ERROR_INVALID_SIGNATURE</code></span><a class="headerlink" title="Permalink to this term" href="#SD_BUS_ERROR_INVALID_SIGNATURE">¶</a></dt><dd><p><a href="sd_bus_error.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_error</span>(3)</span></a></p></dd><dt id="SD_BUS_ERROR_IO_ERROR"><span class="term"><code class="constant">SD_BUS_ERROR_IO_ERROR</code></span><a class="headerlink" title="Permalink to this term" href="#SD_BUS_ERROR_IO_ERROR">¶</a></dt><dd><p><a href="sd_bus_error.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_error</span>(3)</span></a></p></dd><dt id="SD_BUS_ERROR_LIMITS_EXCEEDED"><span class="term"><code class="constant">SD_BUS_ERROR_LIMITS_EXCEEDED</code></span><a class="headerlink" title="Permalink to this term" href="#SD_BUS_ERROR_LIMITS_EXCEEDED">¶</a></dt><dd><p><a href="sd_bus_error.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_error</span>(3)</span></a></p></dd><dt id="SD_BUS_ERROR_MAKE_CONST(name, message)"><span class="term"><code class="constant">SD_BUS_ERROR_MAKE_CONST(<em class="replaceable"><code>name</code></em>, <em class="replaceable"><code>message</code></em>)</code></span><a class="headerlink" title="Permalink to this term" href="#SD_BUS_ERROR_MAKE_CONST(name,%20message)">¶</a></dt><dd><p><a href="sd_bus_error.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_error</span>(3)</span></a></p></dd><dt id="SD_BUS_ERROR_MATCH_RULE_INVALID"><span class="term"><code class="constant">SD_BUS_ERROR_MATCH_RULE_INVALID</code></span><a class="headerlink" title="Permalink to this term" href="#SD_BUS_ERROR_MATCH_RULE_INVALID">¶</a></dt><dd><p><a href="sd_bus_error.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_error</span>(3)</span></a></p></dd><dt id="SD_BUS_ERROR_MATCH_RULE_NOT_FOUND"><span class="term"><code class="constant">SD_BUS_ERROR_MATCH_RULE_NOT_FOUND</code></span><a class="headerlink" title="Permalink to this term" href="#SD_BUS_ERROR_MATCH_RULE_NOT_FOUND">¶</a></dt><dd><p><a href="sd_bus_error.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_error</span>(3)</span></a></p></dd><dt id="SD_BUS_ERROR_NAME_HAS_NO_OWNER"><span class="term"><code class="constant">SD_BUS_ERROR_NAME_HAS_NO_OWNER</code></span><a class="headerlink" title="Permalink to this term" href="#SD_BUS_ERROR_NAME_HAS_NO_OWNER">¶</a></dt><dd><p><a href="sd_bus_error.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_error</span>(3)</span></a></p></dd><dt id="SD_BUS_ERROR_NOT_SUPPORTED"><span class="term"><code class="constant">SD_BUS_ERROR_NOT_SUPPORTED</code></span><a class="headerlink" title="Permalink to this term" href="#SD_BUS_ERROR_NOT_SUPPORTED">¶</a></dt><dd><p><a href="sd_bus_error.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_error</span>(3)</span></a></p></dd><dt id="SD_BUS_ERROR_NO_MEMORY"><span class="term"><code class="constant">SD_BUS_ERROR_NO_MEMORY</code></span><a class="headerlink" title="Permalink to this term" href="#SD_BUS_ERROR_NO_MEMORY">¶</a></dt><dd><p><a href="sd_bus_error.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_error</span>(3)</span></a></p></dd><dt id="SD_BUS_ERROR_NO_NETWORK"><span class="term"><code class="constant">SD_BUS_ERROR_NO_NETWORK</code></span><a class="headerlink" title="Permalink to this term" href="#SD_BUS_ERROR_NO_NETWORK">¶</a></dt><dd><p><a href="sd_bus_error.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_error</span>(3)</span></a></p></dd><dt id="SD_BUS_ERROR_NO_REPLY"><span class="term"><code class="constant">SD_BUS_ERROR_NO_REPLY</code></span><a class="headerlink" title="Permalink to this term" href="#SD_BUS_ERROR_NO_REPLY">¶</a></dt><dd><p><a href="sd_bus_error.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_error</span>(3)</span></a></p></dd><dt id="SD_BUS_ERROR_NO_SERVER"><span class="term"><code class="constant">SD_BUS_ERROR_NO_SERVER</code></span><a class="headerlink" title="Permalink to this term" href="#SD_BUS_ERROR_NO_SERVER">¶</a></dt><dd><p><a href="sd_bus_error.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_error</span>(3)</span></a></p></dd><dt id="SD_BUS_ERROR_NULL"><span class="term"><code class="constant">SD_BUS_ERROR_NULL</code></span><a class="headerlink" title="Permalink to this term" href="#SD_BUS_ERROR_NULL">¶</a></dt><dd><p><a href="sd_bus_error.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_error</span>(3)</span></a></p></dd><dt id="SD_BUS_ERROR_PROPERTY_READ_ONLY"><span class="term"><code class="constant">SD_BUS_ERROR_PROPERTY_READ_ONLY</code></span><a class="headerlink" title="Permalink to this term" href="#SD_BUS_ERROR_PROPERTY_READ_ONLY">¶</a></dt><dd><p><a href="sd_bus_error.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_error</span>(3)</span></a></p></dd><dt id="SD_BUS_ERROR_SERVICE_UNKNOWN"><span class="term"><code class="constant">SD_BUS_ERROR_SERVICE_UNKNOWN</code></span><a class="headerlink" title="Permalink to this term" href="#SD_BUS_ERROR_SERVICE_UNKNOWN">¶</a></dt><dd><p><a href="sd_bus_error.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_error</span>(3)</span></a></p></dd><dt id="SD_BUS_ERROR_TIMEOUT"><span class="term"><code class="constant">SD_BUS_ERROR_TIMEOUT</code></span><a class="headerlink" title="Permalink to this term" href="#SD_BUS_ERROR_TIMEOUT">¶</a></dt><dd><p><a href="sd_bus_error.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_error</span>(3)</span></a></p></dd><dt id="SD_BUS_ERROR_UNIX_PROCESS_ID_UNKNOWN"><span class="term"><code class="constant">SD_BUS_ERROR_UNIX_PROCESS_ID_UNKNOWN</code></span><a class="headerlink" title="Permalink to this term" href="#SD_BUS_ERROR_UNIX_PROCESS_ID_UNKNOWN">¶</a></dt><dd><p><a href="sd_bus_error.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_error</span>(3)</span></a></p></dd><dt id="SD_BUS_ERROR_UNKNOWN_INTERFACE"><span class="term"><code class="constant">SD_BUS_ERROR_UNKNOWN_INTERFACE</code></span><a class="headerlink" title="Permalink to this term" href="#SD_BUS_ERROR_UNKNOWN_INTERFACE">¶</a></dt><dd><p><a href="sd_bus_error.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_error</span>(3)</span></a></p></dd><dt id="SD_BUS_ERROR_UNKNOWN_METHOD"><span class="term"><code class="constant">SD_BUS_ERROR_UNKNOWN_METHOD</code></span><a class="headerlink" title="Permalink to this term" href="#SD_BUS_ERROR_UNKNOWN_METHOD">¶</a></dt><dd><p><a href="sd_bus_error.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_error</span>(3)</span></a></p></dd><dt id="SD_BUS_ERROR_UNKNOWN_OBJECT"><span class="term"><code class="constant">SD_BUS_ERROR_UNKNOWN_OBJECT</code></span><a class="headerlink" title="Permalink to this term" href="#SD_BUS_ERROR_UNKNOWN_OBJECT">¶</a></dt><dd><p><a href="sd_bus_error.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_error</span>(3)</span></a></p></dd><dt id="SD_BUS_ERROR_UNKNOWN_PROPERTY"><span class="term"><code class="constant">SD_BUS_ERROR_UNKNOWN_PROPERTY</code></span><a class="headerlink" title="Permalink to this term" href="#SD_BUS_ERROR_UNKNOWN_PROPERTY">¶</a></dt><dd><p><a href="sd_bus_error.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_error</span>(3)</span></a></p></dd><dt id="SD_BUS_TYPE_ARRAY"><span class="term"><code class="constant">SD_BUS_TYPE_ARRAY</code></span><a class="headerlink" title="Permalink to this term" href="#SD_BUS_TYPE_ARRAY">¶</a></dt><dd><p><a href="sd_bus_message_append.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_message_append</span>(3)</span></a></p></dd><dt id="SD_BUS_TYPE_BOOLEAN"><span class="term"><code class="constant">SD_BUS_TYPE_BOOLEAN</code></span><a class="headerlink" title="Permalink to this term" href="#SD_BUS_TYPE_BOOLEAN">¶</a></dt><dd><p><a href="sd_bus_message_append.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_message_append</span>(3)</span></a>, <a href="sd_bus_message_append_basic.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_message_append_basic</span>(3)</span></a></p></dd><dt id="SD_BUS_TYPE_BYTE"><span class="term"><code class="constant">SD_BUS_TYPE_BYTE</code></span><a class="headerlink" title="Permalink to this term" href="#SD_BUS_TYPE_BYTE">¶</a></dt><dd><p><a href="sd_bus_message_append.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_message_append</span>(3)</span></a>, <a href="sd_bus_message_append_basic.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_message_append_basic</span>(3)</span></a></p></dd><dt id="SD_BUS_TYPE_DICT_ENTRY_BEGIN"><span class="term"><code class="constant">SD_BUS_TYPE_DICT_ENTRY_BEGIN</code></span><a class="headerlink" title="Permalink to this term" href="#SD_BUS_TYPE_DICT_ENTRY_BEGIN">¶</a></dt><dd><p><a href="sd_bus_message_append.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_message_append</span>(3)</span></a></p></dd><dt id="SD_BUS_TYPE_DICT_ENTRY_END"><span class="term"><code class="constant">SD_BUS_TYPE_DICT_ENTRY_END</code></span><a class="headerlink" title="Permalink to this term" href="#SD_BUS_TYPE_DICT_ENTRY_END">¶</a></dt><dd><p><a href="sd_bus_message_append.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_message_append</span>(3)</span></a></p></dd><dt id="SD_BUS_TYPE_DOUBLE"><span class="term"><code class="constant">SD_BUS_TYPE_DOUBLE</code></span><a class="headerlink" title="Permalink to this term" href="#SD_BUS_TYPE_DOUBLE">¶</a></dt><dd><p><a href="sd_bus_message_append.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_message_append</span>(3)</span></a>, <a href="sd_bus_message_append_basic.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_message_append_basic</span>(3)</span></a></p></dd><dt id="SD_BUS_TYPE_INT16"><span class="term"><code class="constant">SD_BUS_TYPE_INT16</code></span><a class="headerlink" title="Permalink to this term" href="#SD_BUS_TYPE_INT16">¶</a></dt><dd><p><a href="sd_bus_message_append.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_message_append</span>(3)</span></a>, <a href="sd_bus_message_append_basic.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_message_append_basic</span>(3)</span></a></p></dd><dt id="SD_BUS_TYPE_INT32"><span class="term"><code class="constant">SD_BUS_TYPE_INT32</code></span><a class="headerlink" title="Permalink to this term" href="#SD_BUS_TYPE_INT32">¶</a></dt><dd><p><a href="sd_bus_message_append.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_message_append</span>(3)</span></a>, <a href="sd_bus_message_append_basic.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_message_append_basic</span>(3)</span></a></p></dd><dt id="SD_BUS_TYPE_INT64"><span class="term"><code class="constant">SD_BUS_TYPE_INT64</code></span><a class="headerlink" title="Permalink to this term" href="#SD_BUS_TYPE_INT64">¶</a></dt><dd><p><a href="sd_bus_message_append.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_message_append</span>(3)</span></a>, <a href="sd_bus_message_append_basic.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_message_append_basic</span>(3)</span></a></p></dd><dt id="SD_BUS_TYPE_OBJECT_PATH"><span class="term"><code class="constant">SD_BUS_TYPE_OBJECT_PATH</code></span><a class="headerlink" title="Permalink to this term" href="#SD_BUS_TYPE_OBJECT_PATH">¶</a></dt><dd><p><a href="sd_bus_message_append.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_message_append</span>(3)</span></a>, <a href="sd_bus_message_append_basic.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_message_append_basic</span>(3)</span></a></p></dd><dt id="SD_BUS_TYPE_SIGNATURE"><span class="term"><code class="constant">SD_BUS_TYPE_SIGNATURE</code></span><a class="headerlink" title="Permalink to this term" href="#SD_BUS_TYPE_SIGNATURE">¶</a></dt><dd><p><a href="sd_bus_message_append.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_message_append</span>(3)</span></a>, <a href="sd_bus_message_append_basic.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_message_append_basic</span>(3)</span></a></p></dd><dt id="SD_BUS_TYPE_STRING"><span class="term"><code class="constant">SD_BUS_TYPE_STRING</code></span><a class="headerlink" title="Permalink to this term" href="#SD_BUS_TYPE_STRING">¶</a></dt><dd><p><a href="sd_bus_message_append.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_message_append</span>(3)</span></a>, <a href="sd_bus_message_append_basic.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_message_append_basic</span>(3)</span></a></p></dd><dt id="SD_BUS_TYPE_STRUCT_BEGIN"><span class="term"><code class="constant">SD_BUS_TYPE_STRUCT_BEGIN</code></span><a class="headerlink" title="Permalink to this term" href="#SD_BUS_TYPE_STRUCT_BEGIN">¶</a></dt><dd><p><a href="sd_bus_message_append.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_message_append</span>(3)</span></a></p></dd><dt id="SD_BUS_TYPE_STRUCT_END"><span class="term"><code class="constant">SD_BUS_TYPE_STRUCT_END</code></span><a class="headerlink" title="Permalink to this term" href="#SD_BUS_TYPE_STRUCT_END">¶</a></dt><dd><p><a href="sd_bus_message_append.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_message_append</span>(3)</span></a></p></dd><dt id="SD_BUS_TYPE_UINT16"><span class="term"><code class="constant">SD_BUS_TYPE_UINT16</code></span><a class="headerlink" title="Permalink to this term" href="#SD_BUS_TYPE_UINT16">¶</a></dt><dd><p><a href="sd_bus_message_append.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_message_append</span>(3)</span></a>, <a href="sd_bus_message_append_basic.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_message_append_basic</span>(3)</span></a></p></dd><dt id="SD_BUS_TYPE_UINT32"><span class="term"><code class="constant">SD_BUS_TYPE_UINT32</code></span><a class="headerlink" title="Permalink to this term" href="#SD_BUS_TYPE_UINT32">¶</a></dt><dd><p><a href="sd_bus_message_append.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_message_append</span>(3)</span></a>, <a href="sd_bus_message_append_basic.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_message_append_basic</span>(3)</span></a></p></dd><dt id="SD_BUS_TYPE_UINT64"><span class="term"><code class="constant">SD_BUS_TYPE_UINT64</code></span><a class="headerlink" title="Permalink to this term" href="#SD_BUS_TYPE_UINT64">¶</a></dt><dd><p><a href="sd_bus_message_append.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_message_append</span>(3)</span></a>, <a href="sd_bus_message_append_basic.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_message_append_basic</span>(3)</span></a></p></dd><dt id="SD_BUS_TYPE_UNIX_FD"><span class="term"><code class="constant">SD_BUS_TYPE_UNIX_FD</code></span><a class="headerlink" title="Permalink to this term" href="#SD_BUS_TYPE_UNIX_FD">¶</a></dt><dd><p><a href="sd_bus_message_append.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_message_append</span>(3)</span></a>, <a href="sd_bus_message_append_basic.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_message_append_basic</span>(3)</span></a>, <a href="sd_bus_negotiate_fds.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_negotiate_fds</span>(3)</span></a></p></dd><dt id="SD_BUS_TYPE_VARIANT"><span class="term"><code class="constant">SD_BUS_TYPE_VARIANT</code></span><a class="headerlink" title="Permalink to this term" href="#SD_BUS_TYPE_VARIANT">¶</a></dt><dd><p><a href="sd_bus_message_append.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_message_append</span>(3)</span></a></p></dd><dt id="SD_JOURNAL_APPEND"><span class="term"><code class="constant">SD_JOURNAL_APPEND</code></span><a class="headerlink" title="Permalink to this term" href="#SD_JOURNAL_APPEND">¶</a></dt><dd><p><a href="sd_journal_get_fd.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_get_fd</span>(3)</span></a></p></dd><dt id="SD_JOURNAL_CURRENT_USER"><span class="term"><code class="constant">SD_JOURNAL_CURRENT_USER</code></span><a class="headerlink" title="Permalink to this term" href="#SD_JOURNAL_CURRENT_USER">¶</a></dt><dd><p><a href="sd_journal_open.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_open</span>(3)</span></a></p></dd><dt id="SD_JOURNAL_INVALIDATE"><span class="term"><code class="constant">SD_JOURNAL_INVALIDATE</code></span><a class="headerlink" title="Permalink to this term" href="#SD_JOURNAL_INVALIDATE">¶</a></dt><dd><p><a href="sd_journal_get_fd.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_get_fd</span>(3)</span></a></p></dd><dt id="SD_JOURNAL_LOCAL_ONLY"><span class="term"><code class="constant">SD_JOURNAL_LOCAL_ONLY</code></span><a class="headerlink" title="Permalink to this term" href="#SD_JOURNAL_LOCAL_ONLY">¶</a></dt><dd><p><a href="sd_journal_get_usage.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_get_usage</span>(3)</span></a>, <a href="sd_journal_open.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_open</span>(3)</span></a></p></dd><dt id="SD_JOURNAL_NOP"><span class="term"><code class="constant">SD_JOURNAL_NOP</code></span><a class="headerlink" title="Permalink to this term" href="#SD_JOURNAL_NOP">¶</a></dt><dd><p><a href="sd_journal_get_fd.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_get_fd</span>(3)</span></a></p></dd><dt id="SD_JOURNAL_RUNTIME_ONLY"><span class="term"><code class="constant">SD_JOURNAL_RUNTIME_ONLY</code></span><a class="headerlink" title="Permalink to this term" href="#SD_JOURNAL_RUNTIME_ONLY">¶</a></dt><dd><p><a href="sd_journal_open.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_open</span>(3)</span></a></p></dd><dt id="SD_JOURNAL_SYSTEM"><span class="term"><code class="constant">SD_JOURNAL_SYSTEM</code></span><a class="headerlink" title="Permalink to this term" href="#SD_JOURNAL_SYSTEM">¶</a></dt><dd><p><a href="sd_journal_open.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_open</span>(3)</span></a></p></dd><dt id="SD_JOURNAL_SYSTEM_ONLY"><span class="term"><code class="constant">SD_JOURNAL_SYSTEM_ONLY</code></span><a class="headerlink" title="Permalink to this term" href="#SD_JOURNAL_SYSTEM_ONLY">¶</a></dt><dd><p><a href="sd_journal_open.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_open</span>(3)</span></a></p></dd><dt id="SD_WARNING"><span class="term"><code class="constant">SD_WARNING</code></span><a class="headerlink" title="Permalink to this term" href="#SD_WARNING">¶</a></dt><dd><p><a href="sd_journal_stream_fd.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_stream_fd</span>(3)</span></a></p></dd><dt id="SIGABRT"><span class="term"><code class="constant">SIGABRT</code></span><a class="headerlink" title="Permalink to this term" href="#SIGABRT">¶</a></dt><dd><p><a href="systemd.service.html"><span class="citerefentry"><span class="refentrytitle">systemd.service</span>(5)</span></a></p></dd><dt id="SIGHUP"><span class="term"><code class="constant">SIGHUP</code></span><a class="headerlink" title="Permalink to this term" href="#SIGHUP">¶</a></dt><dd><p><a href="daemon.html"><span class="citerefentry"><span class="refentrytitle">daemon</span>(7)</span></a>, <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>, <a href="systemd.kill.html"><span class="citerefentry"><span class="refentrytitle">systemd.kill</span>(5)</span></a>, <a href="systemd.service.html"><span class="citerefentry"><span class="refentrytitle">systemd.service</span>(5)</span></a></p></dd><dt id="SIGINT"><span class="term"><code class="constant">SIGINT</code></span><a class="headerlink" title="Permalink to this term" href="#SIGINT">¶</a></dt><dd><p><a href="loginctl.html"><span class="citerefentry"><span class="refentrytitle">loginctl</span>(1)</span></a>, <a href="machinectl.html"><span class="citerefentry"><span class="refentrytitle">machinectl</span>(1)</span></a>, <a href="systemctl.html"><span class="citerefentry"><span class="refentrytitle">systemctl</span>(1)</span></a>, <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>, <a href="systemd.service.html"><span class="citerefentry"><span class="refentrytitle">systemd.service</span>(5)</span></a>, <a href="systemd.special.html"><span class="citerefentry"><span class="refentrytitle">systemd.special</span>(7)</span></a></p></dd><dt id="SIGKILL"><span class="term"><code class="constant">SIGKILL</code></span><a class="headerlink" title="Permalink to this term" href="#SIGKILL">¶</a></dt><dd><p><a href="systemd.kill.html"><span class="citerefentry"><span class="refentrytitle">systemd.kill</span>(5)</span></a>, <a href="systemd.mount.html"><span class="citerefentry"><span class="refentrytitle">systemd.mount</span>(5)</span></a>, <a href="systemd.service.html"><span class="citerefentry"><span class="refentrytitle">systemd.service</span>(5)</span></a>, <a href="systemd.socket.html"><span class="citerefentry"><span class="refentrytitle">systemd.socket</span>(5)</span></a>, <a href="systemd.swap.html"><span class="citerefentry"><span class="refentrytitle">systemd.swap</span>(5)</span></a></p></dd><dt id="SIGPIPE"><span class="term"><code class="constant">SIGPIPE</code></span><a class="headerlink" title="Permalink to this term" href="#SIGPIPE">¶</a></dt><dd><p><a href="systemd.exec.html"><span class="citerefentry"><span class="refentrytitle">systemd.exec</span>(5)</span></a>, <a href="systemd.service.html"><span class="citerefentry"><span class="refentrytitle">systemd.service</span>(5)</span></a></p></dd><dt id="SIGPWR"><span class="term"><code class="constant">SIGPWR</code></span><a class="headerlink" title="Permalink to this term" href="#SIGPWR">¶</a></dt><dd><p><a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a></p></dd><dt id="SIGRTMIN+0"><span class="term"><code class="constant">SIGRTMIN+0</code></span><a class="headerlink" title="Permalink to this term" href="#SIGRTMIN+0">¶</a></dt><dd><p><a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a></p></dd><dt id="SIGRTMIN+1"><span class="term"><code class="constant">SIGRTMIN+1</code></span><a class="headerlink" title="Permalink to this term" href="#SIGRTMIN+1">¶</a></dt><dd><p><a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a></p></dd><dt id="SIGRTMIN+13"><span class="term"><code class="constant">SIGRTMIN+13</code></span><a class="headerlink" title="Permalink to this term" href="#SIGRTMIN+13">¶</a></dt><dd><p><a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a></p></dd><dt id="SIGRTMIN+14"><span class="term"><code class="constant">SIGRTMIN+14</code></span><a class="headerlink" title="Permalink to this term" href="#SIGRTMIN+14">¶</a></dt><dd><p><a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a></p></dd><dt id="SIGRTMIN+15"><span class="term"><code class="constant">SIGRTMIN+15</code></span><a class="headerlink" title="Permalink to this term" href="#SIGRTMIN+15">¶</a></dt><dd><p><a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a></p></dd><dt id="SIGRTMIN+16"><span class="term"><code class="constant">SIGRTMIN+16</code></span><a class="headerlink" title="Permalink to this term" href="#SIGRTMIN+16">¶</a></dt><dd><p><a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a></p></dd><dt id="SIGRTMIN+2"><span class="term"><code class="constant">SIGRTMIN+2</code></span><a class="headerlink" title="Permalink to this term" href="#SIGRTMIN+2">¶</a></dt><dd><p><a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a></p></dd><dt id="SIGRTMIN+20"><span class="term"><code class="constant">SIGRTMIN+20</code></span><a class="headerlink" title="Permalink to this term" href="#SIGRTMIN+20">¶</a></dt><dd><p><a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a></p></dd><dt id="SIGRTMIN+21"><span class="term"><code class="constant">SIGRTMIN+21</code></span><a class="headerlink" title="Permalink to this term" href="#SIGRTMIN+21">¶</a></dt><dd><p><a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a></p></dd><dt id="SIGRTMIN+22"><span class="term"><code class="constant">SIGRTMIN+22</code></span><a class="headerlink" title="Permalink to this term" href="#SIGRTMIN+22">¶</a></dt><dd><p><a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a></p></dd><dt id="SIGRTMIN+23"><span class="term"><code class="constant">SIGRTMIN+23</code></span><a class="headerlink" title="Permalink to this term" href="#SIGRTMIN+23">¶</a></dt><dd><p><a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a></p></dd><dt id="SIGRTMIN+24"><span class="term"><code class="constant">SIGRTMIN+24</code></span><a class="headerlink" title="Permalink to this term" href="#SIGRTMIN+24">¶</a></dt><dd><p><a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a></p></dd><dt id="SIGRTMIN+26"><span class="term"><code class="constant">SIGRTMIN+26</code></span><a class="headerlink" title="Permalink to this term" href="#SIGRTMIN+26">¶</a></dt><dd><p><a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a></p></dd><dt id="SIGRTMIN+27"><span class="term"><code class="constant">SIGRTMIN+27</code></span><a class="headerlink" title="Permalink to this term" href="#SIGRTMIN+27">¶</a></dt><dd><p><a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a></p></dd><dt id="SIGRTMIN+28"><span class="term"><code class="constant">SIGRTMIN+28</code></span><a class="headerlink" title="Permalink to this term" href="#SIGRTMIN+28">¶</a></dt><dd><p><a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a></p></dd><dt id="SIGRTMIN+29"><span class="term"><code class="constant">SIGRTMIN+29</code></span><a class="headerlink" title="Permalink to this term" href="#SIGRTMIN+29">¶</a></dt><dd><p><a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a></p></dd><dt id="SIGRTMIN+3"><span class="term"><code class="constant">SIGRTMIN+3</code></span><a class="headerlink" title="Permalink to this term" href="#SIGRTMIN+3">¶</a></dt><dd><p><a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a></p></dd><dt id="SIGRTMIN+4"><span class="term"><code class="constant">SIGRTMIN+4</code></span><a class="headerlink" title="Permalink to this term" href="#SIGRTMIN+4">¶</a></dt><dd><p><a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a></p></dd><dt id="SIGRTMIN+5"><span class="term"><code class="constant">SIGRTMIN+5</code></span><a class="headerlink" title="Permalink to this term" href="#SIGRTMIN+5">¶</a></dt><dd><p><a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a></p></dd><dt id="SIGRTMIN+6"><span class="term"><code class="constant">SIGRTMIN+6</code></span><a class="headerlink" title="Permalink to this term" href="#SIGRTMIN+6">¶</a></dt><dd><p><a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a></p></dd><dt id="SIGSTOP"><span class="term"><code class="constant">SIGSTOP</code></span><a class="headerlink" title="Permalink to this term" href="#SIGSTOP">¶</a></dt><dd><p><a href="loginctl.html"><span class="citerefentry"><span class="refentrytitle">loginctl</span>(1)</span></a>, <a href="machinectl.html"><span class="citerefentry"><span class="refentrytitle">machinectl</span>(1)</span></a>, <a href="systemctl.html"><span class="citerefentry"><span class="refentrytitle">systemctl</span>(1)</span></a></p></dd><dt id="SIGSYS"><span class="term"><code class="constant">SIGSYS</code></span><a class="headerlink" title="Permalink to this term" href="#SIGSYS">¶</a></dt><dd><p><a href="systemd.exec.html"><span class="citerefentry"><span class="refentrytitle">systemd.exec</span>(5)</span></a></p></dd><dt id="SIGTERM"><span class="term"><code class="constant">SIGTERM</code></span><a class="headerlink" title="Permalink to this term" href="#SIGTERM">¶</a></dt><dd><p><a href="daemon.html"><span class="citerefentry"><span class="refentrytitle">daemon</span>(7)</span></a>, <a href="loginctl.html"><span class="citerefentry"><span class="refentrytitle">loginctl</span>(1)</span></a>, <a href="machinectl.html"><span class="citerefentry"><span class="refentrytitle">machinectl</span>(1)</span></a>, <a href="systemctl.html"><span class="citerefentry"><span class="refentrytitle">systemctl</span>(1)</span></a>, <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>, <a href="systemd.kill.html"><span class="citerefentry"><span class="refentrytitle">systemd.kill</span>(5)</span></a>, <a href="systemd.mount.html"><span class="citerefentry"><span class="refentrytitle">systemd.mount</span>(5)</span></a>, <a href="systemd.service.html"><span class="citerefentry"><span class="refentrytitle">systemd.service</span>(5)</span></a>, <a href="systemd.socket.html"><span class="citerefentry"><span class="refentrytitle">systemd.socket</span>(5)</span></a>, <a href="systemd.special.html"><span class="citerefentry"><span class="refentrytitle">systemd.special</span>(7)</span></a>, <a href="systemd.swap.html"><span class="citerefentry"><span class="refentrytitle">systemd.swap</span>(5)</span></a></p></dd><dt id="SIGUSR1"><span class="term"><code class="constant">SIGUSR1</code></span><a class="headerlink" title="Permalink to this term" href="#SIGUSR1">¶</a></dt><dd><p><a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a></p></dd><dt id="SIGUSR2"><span class="term"><code class="constant">SIGUSR2</code></span><a class="headerlink" title="Permalink to this term" href="#SIGUSR2">¶</a></dt><dd><p><a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a></p></dd><dt id="SIGWINCH"><span class="term"><code class="constant">SIGWINCH</code></span><a class="headerlink" title="Permalink to this term" href="#SIGWINCH">¶</a></dt><dd><p><a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a></p></dd><dt id="SIG_DFL"><span class="term"><code class="constant">SIG_DFL</code></span><a class="headerlink" title="Permalink to this term" href="#SIG_DFL">¶</a></dt><dd><p><a href="daemon.html"><span class="citerefentry"><span class="refentrytitle">daemon</span>(7)</span></a></p></dd><dt id="SOCK_DGRAM"><span class="term"><code class="constant">SOCK_DGRAM</code></span><a class="headerlink" title="Permalink to this term" href="#SOCK_DGRAM">¶</a></dt><dd><p><a href="sd_is_fifo.html"><span class="citerefentry"><span class="refentrytitle">sd_is_fifo</span>(3)</span></a>, <a href="systemd-journald.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-journald.service</span>(8)</span></a>, <a href="systemd.socket.html"><span class="citerefentry"><span class="refentrytitle">systemd.socket</span>(5)</span></a></p></dd><dt id="SOCK_SEQPACKET"><span class="term"><code class="constant">SOCK_SEQPACKET</code></span><a class="headerlink" title="Permalink to this term" href="#SOCK_SEQPACKET">¶</a></dt><dd><p><a href="systemd.socket.html"><span class="citerefentry"><span class="refentrytitle">systemd.socket</span>(5)</span></a></p></dd><dt id="SOCK_STREAM"><span class="term"><code class="constant">SOCK_STREAM</code></span><a class="headerlink" title="Permalink to this term" href="#SOCK_STREAM">¶</a></dt><dd><p><a href="sd_is_fifo.html"><span class="citerefentry"><span class="refentrytitle">sd_is_fifo</span>(3)</span></a>, <a href="systemd.socket.html"><span class="citerefentry"><span class="refentrytitle">systemd.socket</span>(5)</span></a></p></dd><dt id="_SD_BUS_CREDS_ALL"><span class="term"><code class="constant">_SD_BUS_CREDS_ALL</code></span><a class="headerlink" title="Permalink to this term" href="#_SD_BUS_CREDS_ALL">¶</a></dt><dd><p><a href="sd_bus_creds_new_from_pid.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_creds_new_from_pid</span>(3)</span></a></p></dd><dt id="all"><span class="term"><code class="constant">all</code></span><a class="headerlink" title="Permalink to this term" href="#all">¶</a></dt><dd><p><a href="udevadm.html"><span class="citerefentry"><span class="refentrytitle">udevadm</span>(8)</span></a></p></dd><dt id="application/event-stream"><span class="term"><code class="constant">application/event-stream</code></span><a class="headerlink" title="Permalink to this term" href="#application/event-stream">¶</a></dt><dd><p><a href="systemd-journal-gatewayd.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-journal-gatewayd.service</span>(8)</span></a></p></dd><dt id="application/json"><span class="term"><code class="constant">application/json</code></span><a class="headerlink" title="Permalink to this term" href="#application/json">¶</a></dt><dd><p><a href="systemd-journal-gatewayd.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-journal-gatewayd.service</span>(8)</span></a></p></dd><dt id="application/vnd.fdo.journal"><span class="term"><code class="constant">application/vnd.fdo.journal</code></span><a class="headerlink" title="Permalink to this term" href="#application/vnd.fdo.journal">¶</a></dt><dd><p><a href="systemd-journal-gatewayd.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-journal-gatewayd.service</span>(8)</span></a></p></dd><dt id="arm"><span class="term"><code class="constant">arm</code></span><a class="headerlink" title="Permalink to this term" href="#arm">¶</a></dt><dd><p><a href="systemd.exec.html"><span class="citerefentry"><span class="refentrytitle">systemd.exec</span>(5)</span></a></p></dd><dt id="auto"><span class="term"><code class="constant">auto</code></span><a class="headerlink" title="Permalink to this term" href="#auto">¶</a></dt><dd><p><a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a></p></dd><dt id="early"><span class="term"><code class="constant">early</code></span><a class="headerlink" title="Permalink to this term" href="#early">¶</a></dt><dd><p><a href="udevadm.html"><span class="citerefentry"><span class="refentrytitle">udevadm</span>(8)</span></a></p></dd><dt id="false"><span class="term"><code class="constant">false</code></span><a class="headerlink" title="Permalink to this term" href="#false">¶</a></dt><dd><p><a href="sd_bus_error.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_error</span>(3)</span></a></p></dd><dt id="late"><span class="term"><code class="constant">late</code></span><a class="headerlink" title="Permalink to this term" href="#late">¶</a></dt><dd><p><a href="udevadm.html"><span class="citerefentry"><span class="refentrytitle">udevadm</span>(8)</span></a></p></dd><dt id="libsystemd"><span class="term"><code class="constant">libsystemd</code></span><a class="headerlink" title="Permalink to this term" href="#libsystemd">¶</a></dt><dd><p><a href="sd-daemon.html"><span class="citerefentry"><span class="refentrytitle">sd-daemon</span>(3)</span></a>, <a href="sd-id128.html"><span class="citerefentry"><span class="refentrytitle">sd-id128</span>(3)</span></a>, <a href="sd-journal.html"><span class="citerefentry"><span class="refentrytitle">sd-journal</span>(3)</span></a>, <a href="sd-login.html"><span class="citerefentry"><span class="refentrytitle">sd-login</span>(3)</span></a>, <a href="sd_booted.html"><span class="citerefentry"><span class="refentrytitle">sd_booted</span>(3)</span></a>, <a href="sd_bus_creds_get_pid.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_creds_get_pid</span>(3)</span></a>, <a href="sd_bus_creds_new_from_pid.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_creds_new_from_pid</span>(3)</span></a>, <a href="sd_bus_error.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_error</span>(3)</span></a>, <a href="sd_bus_message_append_array.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_message_append_array</span>(3)</span></a>, <a href="sd_bus_message_append_basic.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_message_append_basic</span>(3)</span></a>, <a href="sd_bus_message_append_string_memfd.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_message_append_string_memfd</span>(3)</span></a>, <a href="sd_bus_message_append_strv.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_message_append_strv</span>(3)</span></a>, <a href="sd_bus_message_get_cookie.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_message_get_cookie</span>(3)</span></a>, <a href="sd_bus_message_get_monotonic_usec.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_message_get_monotonic_usec</span>(3)</span></a>, <a href="sd_bus_negotiate_fds.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_negotiate_fds</span>(3)</span></a>, <a href="sd_bus_new.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_new</span>(3)</span></a>, <a href="sd_bus_open_user.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_open_user</span>(3)</span></a>, <a href="sd_bus_path_encode.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_path_encode</span>(3)</span></a>, <a href="sd_bus_request_name.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_request_name</span>(3)</span></a>, <a href="sd_event_add_time.html"><span class="citerefentry"><span class="refentrytitle">sd_event_add_time</span>(3)</span></a>, <a href="sd_event_new.html"><span class="citerefentry"><span class="refentrytitle">sd_event_new</span>(3)</span></a>, <a href="sd_get_seats.html"><span class="citerefentry"><span class="refentrytitle">sd_get_seats</span>(3)</span></a>, <a href="sd_is_fifo.html"><span class="citerefentry"><span class="refentrytitle">sd_is_fifo</span>(3)</span></a>, <a href="sd_journal_add_match.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_add_match</span>(3)</span></a>, <a href="sd_journal_get_catalog.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_get_catalog</span>(3)</span></a>, <a href="sd_journal_get_cursor.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_get_cursor</span>(3)</span></a>, <a href="sd_journal_get_cutoff_realtime_usec.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_get_cutoff_realtime_usec</span>(3)</span></a>, <a href="sd_journal_get_data.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_get_data</span>(3)</span></a>, <a href="sd_journal_get_fd.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_get_fd</span>(3)</span></a>, <a href="sd_journal_get_realtime_usec.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_get_realtime_usec</span>(3)</span></a>, <a href="sd_journal_get_usage.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_get_usage</span>(3)</span></a>, <a href="sd_journal_next.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_next</span>(3)</span></a>, <a href="sd_journal_open.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_open</span>(3)</span></a>, <a href="sd_journal_print.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_print</span>(3)</span></a>, <a href="sd_journal_query_unique.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_query_unique</span>(3)</span></a>, <a href="sd_journal_seek_head.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_seek_head</span>(3)</span></a>, <a href="sd_journal_stream_fd.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_stream_fd</span>(3)</span></a>, <a href="sd_listen_fds.html"><span class="citerefentry"><span class="refentrytitle">sd_listen_fds</span>(3)</span></a>, <a href="sd_login_monitor_new.html"><span class="citerefentry"><span class="refentrytitle">sd_login_monitor_new</span>(3)</span></a>, <a href="sd_notify.html"><span class="citerefentry"><span class="refentrytitle">sd_notify</span>(3)</span></a>, <a href="sd_pid_get_session.html"><span class="citerefentry"><span class="refentrytitle">sd_pid_get_session</span>(3)</span></a>, <a href="sd_seat_get_active.html"><span class="citerefentry"><span class="refentrytitle">sd_seat_get_active</span>(3)</span></a>, <a href="sd_session_is_active.html"><span class="citerefentry"><span class="refentrytitle">sd_session_is_active</span>(3)</span></a>, <a href="sd_uid_get_state.html"><span class="citerefentry"><span class="refentrytitle">sd_uid_get_state</span>(3)</span></a>, <a href="sd_watchdog_enabled.html"><span class="citerefentry"><span class="refentrytitle">sd_watchdog_enabled</span>(3)</span></a></p></dd><dt id="libsystemd-bus"><span class="term"><code class="constant">libsystemd-bus</code></span><a class="headerlink" title="Permalink to this term" href="#libsystemd-bus">¶</a></dt><dd><p><a href="sd_bus_message_append.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_message_append</span>(3)</span></a></p></dd><dt id="m"><span class="term"><code class="constant">m</code></span><a class="headerlink" title="Permalink to this term" href="#m">¶</a></dt><dd><p><a href="systemd.resource-control.html"><span class="citerefentry"><span class="refentrytitle">systemd.resource-control</span>(5)</span></a></p></dd><dt id="name"><span class="term"><code class="constant">name</code></span><a class="headerlink" title="Permalink to this term" href="#name">¶</a></dt><dd><p><a href="udevadm.html"><span class="citerefentry"><span class="refentrytitle">udevadm</span>(8)</span></a></p></dd><dt id="native"><span class="term"><code class="constant">native</code></span><a class="headerlink" title="Permalink to this term" href="#native">¶</a></dt><dd><p><a href="systemd.exec.html"><span class="citerefentry"><span class="refentrytitle">systemd.exec</span>(5)</span></a></p></dd><dt id="never"><span class="term"><code class="constant">never</code></span><a class="headerlink" title="Permalink to this term" href="#never">¶</a></dt><dd><p><a href="udevadm.html"><span class="citerefentry"><span class="refentrytitle">udevadm</span>(8)</span></a></p></dd><dt id="path"><span class="term"><code class="constant">path</code></span><a class="headerlink" title="Permalink to this term" href="#path">¶</a></dt><dd><p><a href="udevadm.html"><span class="citerefentry"><span class="refentrytitle">udevadm</span>(8)</span></a></p></dd><dt id="property"><span class="term"><code class="constant">property</code></span><a class="headerlink" title="Permalink to this term" href="#property">¶</a></dt><dd><p><a href="udevadm.html"><span class="citerefentry"><span class="refentrytitle">udevadm</span>(8)</span></a></p></dd><dt id="r"><span class="term"><code class="constant">r</code></span><a class="headerlink" title="Permalink to this term" href="#r">¶</a></dt><dd><p><a href="systemd.resource-control.html"><span class="citerefentry"><span class="refentrytitle">systemd.resource-control</span>(5)</span></a></p></dd><dt id="simple"><span class="term"><code class="constant">simple</code></span><a class="headerlink" title="Permalink to this term" href="#simple">¶</a></dt><dd><p><a href="systemd-run.html"><span class="citerefentry"><span class="refentrytitle">systemd-run</span>(1)</span></a></p></dd><dt id="symlink"><span class="term"><code class="constant">symlink</code></span><a class="headerlink" title="Permalink to this term" href="#symlink">¶</a></dt><dd><p><a href="udevadm.html"><span class="citerefentry"><span class="refentrytitle">udevadm</span>(8)</span></a></p></dd><dt id="text/plain"><span class="term"><code class="constant">text/plain</code></span><a class="headerlink" title="Permalink to this term" href="#text/plain">¶</a></dt><dd><p><a href="systemd-journal-gatewayd.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-journal-gatewayd.service</span>(8)</span></a></p></dd><dt id="true"><span class="term"><code class="constant">true</code></span><a class="headerlink" title="Permalink to this term" href="#true">¶</a></dt><dd><p><a href="sd_bus_error.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_error</span>(3)</span></a></p></dd><dt id="w"><span class="term"><code class="constant">w</code></span><a class="headerlink" title="Permalink to this term" href="#w">¶</a></dt><dd><p><a href="systemd.resource-control.html"><span class="citerefentry"><span class="refentrytitle">systemd.resource-control</span>(5)</span></a></p></dd><dt id="x32"><span class="term"><code class="constant">x32</code></span><a class="headerlink" title="Permalink to this term" href="#x32">¶</a></dt><dd><p><a href="systemd.exec.html"><span class="citerefentry"><span class="refentrytitle">systemd.exec</span>(5)</span></a></p></dd><dt id="x86"><span class="term"><code class="constant">x86</code></span><a class="headerlink" title="Permalink to this term" href="#x86">¶</a></dt><dd><p><a href="systemd.exec.html"><span class="citerefentry"><span class="refentrytitle">systemd.exec</span>(5)</span></a></p></dd><dt id="x86-64"><span class="term"><code class="constant">x86-64</code></span><a class="headerlink" title="Permalink to this term" href="#x86-64">¶</a></dt><dd><p><a href="systemd.exec.html"><span class="citerefentry"><span class="refentrytitle">systemd.exec</span>(5)</span></a></p></dd><dt id="~"><span class="term"><code class="constant">~</code></span><a class="headerlink" title="Permalink to this term" href="#~">¶</a></dt><dd><p><a href="systemd.exec.html"><span class="citerefentry"><span class="refentrytitle">systemd.exec</span>(5)</span></a></p></dd></dl></div></div><div class="refsect1"><a name="idm214185064544"></a><h2 id="Miscellaneous options and directives">Miscellaneous options and directives<a class="headerlink" title="Permalink to this headline" href="#Miscellaneous%20options%20and%20directives">¶</a></h2><p>Other configuration elements which don't fit in
-                any of the above groups.</p><div class="variablelist"><a name="miscellaneous"></a><dl class="variablelist"><dt id="$LISTEN_FDS"><span class="term"><code class="varname">$LISTEN_FDS</code></span><a class="headerlink" title="Permalink to this term" href="#%24LISTEN_FDS">¶</a></dt><dd><p><a href="systemd-journal-remote.html"><span class="citerefentry"><span class="refentrytitle">systemd-journal-remote</span>(8)</span></a></p></dd><dt id="-EADDRINUSE"><span class="term"><code class="varname">-EADDRINUSE</code></span><a class="headerlink" title="Permalink to this term" href="#-EADDRINUSE">¶</a></dt><dd><p><a href="sd_bus_request_name.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_request_name</span>(3)</span></a></p></dd><dt id="-EALREADY"><span class="term"><code class="varname">-EALREADY</code></span><a class="headerlink" title="Permalink to this term" href="#-EALREADY">¶</a></dt><dd><p><a href="sd_bus_request_name.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_request_name</span>(3)</span></a></p></dd><dt id="-ECHILD"><span class="term"><code class="constant">-ECHILD</code></span><a class="headerlink" title="Permalink to this term" href="#-ECHILD">¶</a></dt><dd><p><a href="sd_bus_request_name.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_request_name</span>(3)</span></a>, <a href="sd_event_add_time.html"><span class="citerefentry"><span class="refentrytitle">sd_event_add_time</span>(3)</span></a></p></dd><dt id="-EEXIST"><span class="term"><code class="varname">-EEXIST</code></span><a class="headerlink" title="Permalink to this term" href="#-EEXIST">¶</a></dt><dd><p><a href="sd_bus_request_name.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_request_name</span>(3)</span></a></p></dd><dt id="-EINVAL"><span class="term"><code class="varname">-EINVAL</code></span><a class="headerlink" title="Permalink to this term" href="#-EINVAL">¶</a></dt><dd><p><a href="sd_bus_creds_get_pid.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_creds_get_pid</span>(3)</span></a>, <a href="sd_bus_creds_new_from_pid.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_creds_new_from_pid</span>(3)</span></a>, <a href="sd_bus_error.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_error</span>(3)</span></a>, <a href="sd_bus_message_append.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_message_append</span>(3)</span></a>, <a href="sd_bus_message_append_array.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_message_append_array</span>(3)</span></a>, <a href="sd_bus_message_append_basic.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_message_append_basic</span>(3)</span></a>, <a href="sd_bus_message_append_string_memfd.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_message_append_string_memfd</span>(3)</span></a>, <a href="sd_bus_message_append_strv.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_message_append_strv</span>(3)</span></a>, <a href="sd_bus_message_get_cookie.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_message_get_cookie</span>(3)</span></a>, <a href="sd_bus_message_get_monotonic_usec.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_message_get_monotonic_usec</span>(3)</span></a>, <a href="sd_bus_open_user.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_open_user</span>(3)</span></a>, <a href="sd_bus_request_name.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_request_name</span>(3)</span></a>, <a href="sd_event_add_time.html"><span class="citerefentry"><span class="refentrytitle">sd_event_add_time</span>(3)</span></a></p></dd><dt id="-EMFILE"><span class="term"><code class="varname">-EMFILE</code></span><a class="headerlink" title="Permalink to this term" href="#-EMFILE">¶</a></dt><dd><p><a href="sd_event_new.html"><span class="citerefentry"><span class="refentrytitle">sd_event_new</span>(3)</span></a></p></dd><dt id="-ENODATA"><span class="term"><code class="constant">-ENODATA</code></span><a class="headerlink" title="Permalink to this term" href="#-ENODATA">¶</a></dt><dd><p><a href="sd_bus_creds_get_pid.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_creds_get_pid</span>(3)</span></a>, <a href="sd_bus_message_get_cookie.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_message_get_cookie</span>(3)</span></a>, <a href="sd_bus_message_get_monotonic_usec.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_message_get_monotonic_usec</span>(3)</span></a></p></dd><dt id="-ENOENT"><span class="term"><code class="varname">-ENOENT</code></span><a class="headerlink" title="Permalink to this term" href="#-ENOENT">¶</a></dt><dd><p><a href="sd_bus_creds_get_pid.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_creds_get_pid</span>(3)</span></a></p></dd><dt id="-ENOMEM"><span class="term"><code class="varname">-ENOMEM</code></span><a class="headerlink" title="Permalink to this term" href="#-ENOMEM">¶</a></dt><dd><p><a href="sd_bus_creds_get_pid.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_creds_get_pid</span>(3)</span></a>, <a href="sd_bus_creds_new_from_pid.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_creds_new_from_pid</span>(3)</span></a>, <a href="sd_bus_error.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_error</span>(3)</span></a>, <a href="sd_bus_message_append.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_message_append</span>(3)</span></a>, <a href="sd_bus_message_append_array.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_message_append_array</span>(3)</span></a>, <a href="sd_bus_message_append_basic.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_message_append_basic</span>(3)</span></a>, <a href="sd_bus_message_append_string_memfd.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_message_append_string_memfd</span>(3)</span></a>, <a href="sd_bus_message_append_strv.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_message_append_strv</span>(3)</span></a>, <a href="sd_bus_new.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_new</span>(3)</span></a>, <a href="sd_bus_open_user.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_open_user</span>(3)</span></a>, <a href="sd_event_add_time.html"><span class="citerefentry"><span class="refentrytitle">sd_event_add_time</span>(3)</span></a>, <a href="sd_event_new.html"><span class="citerefentry"><span class="refentrytitle">sd_event_new</span>(3)</span></a></p></dd><dt id="-ENOTCONN"><span class="term"><code class="varname">-ENOTCONN</code></span><a class="headerlink" title="Permalink to this term" href="#-ENOTCONN">¶</a></dt><dd><p><a href="sd_bus_request_name.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_request_name</span>(3)</span></a></p></dd><dt id="-ENOTSUP"><span class="term"><code class="varname">-ENOTSUP</code></span><a class="headerlink" title="Permalink to this term" href="#-ENOTSUP">¶</a></dt><dd><p><a href="sd_event_add_time.html"><span class="citerefentry"><span class="refentrytitle">sd_event_add_time</span>(3)</span></a></p></dd><dt id="-ENXIO"><span class="term"><code class="constant">-ENXIO</code></span><a class="headerlink" title="Permalink to this term" href="#-ENXIO">¶</a></dt><dd><p><a href="sd_bus_creds_get_pid.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_creds_get_pid</span>(3)</span></a>, <a href="sd_bus_message_append.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_message_append</span>(3)</span></a>, <a href="sd_bus_message_append_array.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_message_append_array</span>(3)</span></a>, <a href="sd_bus_message_append_basic.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_message_append_basic</span>(3)</span></a>, <a href="sd_bus_message_append_string_memfd.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_message_append_string_memfd</span>(3)</span></a>, <a href="sd_bus_message_append_strv.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_message_append_strv</span>(3)</span></a></p></dd><dt id="-EPERM"><span class="term"><code class="varname">-EPERM</code></span><a class="headerlink" title="Permalink to this term" href="#-EPERM">¶</a></dt><dd><p><a href="sd_bus_message_append.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_message_append</span>(3)</span></a>, <a href="sd_bus_message_append_array.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_message_append_array</span>(3)</span></a>, <a href="sd_bus_message_append_basic.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_message_append_basic</span>(3)</span></a>, <a href="sd_bus_message_append_string_memfd.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_message_append_string_memfd</span>(3)</span></a>, <a href="sd_bus_message_append_strv.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_message_append_strv</span>(3)</span></a>, <a href="sd_bus_negotiate_fds.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_negotiate_fds</span>(3)</span></a></p></dd><dt id="-ESRCH"><span class="term"><code class="varname">-ESRCH</code></span><a class="headerlink" title="Permalink to this term" href="#-ESRCH">¶</a></dt><dd><p><a href="sd_bus_creds_new_from_pid.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_creds_new_from_pid</span>(3)</span></a>, <a href="sd_bus_request_name.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_request_name</span>(3)</span></a></p></dd><dt id="-ESTALE"><span class="term"><code class="varname">-ESTALE</code></span><a class="headerlink" title="Permalink to this term" href="#-ESTALE">¶</a></dt><dd><p><a href="sd_bus_message_append.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_message_append</span>(3)</span></a>, <a href="sd_bus_message_append_array.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_message_append_array</span>(3)</span></a>, <a href="sd_bus_message_append_basic.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_message_append_basic</span>(3)</span></a>, <a href="sd_bus_message_append_string_memfd.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_message_append_string_memfd</span>(3)</span></a>, <a href="sd_bus_message_append_strv.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_message_append_strv</span>(3)</span></a>, <a href="sd_event_add_time.html"><span class="citerefentry"><span class="refentrytitle">sd_event_add_time</span>(3)</span></a></p></dd><dt id="ANSI_COLOR="><span class="term"><code class="varname">ANSI_COLOR=</code></span><a class="headerlink" title="Permalink to this term" href="#ANSI_COLOR=">¶</a></dt><dd><p><a href="os-release.html"><span class="citerefentry"><span class="refentrytitle">os-release</span>(5)</span></a></p></dd><dt id="BUG_REPORT_URL="><span class="term"><code class="varname">BUG_REPORT_URL=</code></span><a class="headerlink" title="Permalink to this term" href="#BUG_REPORT_URL=">¶</a></dt><dd><p><a href="os-release.html"><span class="citerefentry"><span class="refentrytitle">os-release</span>(5)</span></a></p></dd><dt id="BUILD_ID="><span class="term"><code class="varname">BUILD_ID=</code></span><a class="headerlink" title="Permalink to this term" href="#BUILD_ID=">¶</a></dt><dd><p><a href="os-release.html"><span class="citerefentry"><span class="refentrytitle">os-release</span>(5)</span></a></p></dd><dt id="C"><span class="term"><code class="varname">C</code></span><a class="headerlink" title="Permalink to this term" href="#C">¶</a></dt><dd><p><a href="tmpfiles.d.html"><span class="citerefentry"><span class="refentrytitle">tmpfiles.d</span>(5)</span></a></p></dd><dt id="CHASSIS="><span class="term"><code class="varname">CHASSIS=</code></span><a class="headerlink" title="Permalink to this term" href="#CHASSIS=">¶</a></dt><dd><p><a href="machine-info.html"><span class="citerefentry"><span class="refentrytitle">machine-info</span>(5)</span></a></p></dd><dt id="CPE_NAME="><span class="term"><code class="varname">CPE_NAME=</code></span><a class="headerlink" title="Permalink to this term" href="#CPE_NAME=">¶</a></dt><dd><p><a href="os-release.html"><span class="citerefentry"><span class="refentrytitle">os-release</span>(5)</span></a></p></dd><dt id="Compress="><span class="term"><code class="varname">Compress=</code></span><a class="headerlink" title="Permalink to this term" href="#Compress=">¶</a></dt><dd><p><a href="journald.conf.html"><span class="citerefentry"><span class="refentrytitle">journald.conf</span>(5)</span></a></p></dd><dt id="D"><span class="term"><code class="varname">D</code></span><a class="headerlink" title="Permalink to this term" href="#D">¶</a></dt><dd><p><a href="tmpfiles.d.html"><span class="citerefentry"><span class="refentrytitle">tmpfiles.d</span>(5)</span></a></p></dd><dt id="F"><span class="term"><code class="varname">F</code></span><a class="headerlink" title="Permalink to this term" href="#F">¶</a></dt><dd><p><a href="tmpfiles.d.html"><span class="citerefentry"><span class="refentrytitle">tmpfiles.d</span>(5)</span></a></p></dd><dt id="FONT="><span class="term"><code class="varname">FONT=</code></span><a class="headerlink" title="Permalink to this term" href="#FONT=">¶</a></dt><dd><p><a href="vconsole.conf.html"><span class="citerefentry"><span class="refentrytitle">vconsole.conf</span>(5)</span></a></p></dd><dt id="FONT_MAP="><span class="term"><code class="varname">FONT_MAP=</code></span><a class="headerlink" title="Permalink to this term" href="#FONT_MAP=">¶</a></dt><dd><p><a href="vconsole.conf.html"><span class="citerefentry"><span class="refentrytitle">vconsole.conf</span>(5)</span></a></p></dd><dt id="FONT_UNIMAP="><span class="term"><code class="varname">FONT_UNIMAP=</code></span><a class="headerlink" title="Permalink to this term" href="#FONT_UNIMAP=">¶</a></dt><dd><p><a href="vconsole.conf.html"><span class="citerefentry"><span class="refentrytitle">vconsole.conf</span>(5)</span></a></p></dd><dt id="ForwardToConsole="><span class="term"><code class="varname">ForwardToConsole=</code></span><a class="headerlink" title="Permalink to this term" href="#ForwardToConsole=">¶</a></dt><dd><p><a href="journald.conf.html"><span class="citerefentry"><span class="refentrytitle">journald.conf</span>(5)</span></a></p></dd><dt id="ForwardToKMsg="><span class="term"><code class="varname">ForwardToKMsg=</code></span><a class="headerlink" title="Permalink to this term" href="#ForwardToKMsg=">¶</a></dt><dd><p><a href="journald.conf.html"><span class="citerefentry"><span class="refentrytitle">journald.conf</span>(5)</span></a></p></dd><dt id="ForwardToSyslog="><span class="term"><code class="varname">ForwardToSyslog=</code></span><a class="headerlink" title="Permalink to this term" href="#ForwardToSyslog=">¶</a></dt><dd><p><a href="journald.conf.html"><span class="citerefentry"><span class="refentrytitle">journald.conf</span>(5)</span></a></p></dd><dt id="ForwardToWall="><span class="term"><code class="varname">ForwardToWall=</code></span><a class="headerlink" title="Permalink to this term" href="#ForwardToWall=">¶</a></dt><dd><p><a href="journald.conf.html"><span class="citerefentry"><span class="refentrytitle">journald.conf</span>(5)</span></a></p></dd><dt id="HOME_URL="><span class="term"><code class="varname">HOME_URL=</code></span><a class="headerlink" title="Permalink to this term" href="#HOME_URL=">¶</a></dt><dd><p><a href="os-release.html"><span class="citerefentry"><span class="refentrytitle">os-release</span>(5)</span></a></p></dd><dt id="HandleHibernateKey="><span class="term"><code class="varname">HandleHibernateKey=</code></span><a class="headerlink" title="Permalink to this term" href="#HandleHibernateKey=">¶</a></dt><dd><p><a href="logind.conf.html"><span class="citerefentry"><span class="refentrytitle">logind.conf</span>(5)</span></a></p></dd><dt id="HandleLidSwitch="><span class="term"><code class="varname">HandleLidSwitch=</code></span><a class="headerlink" title="Permalink to this term" href="#HandleLidSwitch=">¶</a></dt><dd><p><a href="logind.conf.html"><span class="citerefentry"><span class="refentrytitle">logind.conf</span>(5)</span></a></p></dd><dt id="HandlePowerKey="><span class="term"><code class="varname">HandlePowerKey=</code></span><a class="headerlink" title="Permalink to this term" href="#HandlePowerKey=">¶</a></dt><dd><p><a href="logind.conf.html"><span class="citerefentry"><span class="refentrytitle">logind.conf</span>(5)</span></a></p></dd><dt id="HandleSuspendKey="><span class="term"><code class="varname">HandleSuspendKey=</code></span><a class="headerlink" title="Permalink to this term" href="#HandleSuspendKey=">¶</a></dt><dd><p><a href="logind.conf.html"><span class="citerefentry"><span class="refentrytitle">logind.conf</span>(5)</span></a></p></dd><dt id="HibernateKeyIgnoreInhibited="><span class="term"><code class="varname">HibernateKeyIgnoreInhibited=</code></span><a class="headerlink" title="Permalink to this term" href="#HibernateKeyIgnoreInhibited=">¶</a></dt><dd><p><a href="logind.conf.html"><span class="citerefentry"><span class="refentrytitle">logind.conf</span>(5)</span></a></p></dd><dt id="ICON_NAME="><span class="term"><code class="varname">ICON_NAME=</code></span><a class="headerlink" title="Permalink to this term" href="#ICON_NAME=">¶</a></dt><dd><p><a href="machine-info.html"><span class="citerefentry"><span class="refentrytitle">machine-info</span>(5)</span></a></p></dd><dt id="ID="><span class="term"><code class="varname">ID=</code></span><a class="headerlink" title="Permalink to this term" href="#ID=">¶</a></dt><dd><p><a href="os-release.html"><span class="citerefentry"><span class="refentrytitle">os-release</span>(5)</span></a></p></dd><dt id="ID_LIKE="><span class="term"><code class="varname">ID_LIKE=</code></span><a class="headerlink" title="Permalink to this term" href="#ID_LIKE=">¶</a></dt><dd><p><a href="os-release.html"><span class="citerefentry"><span class="refentrytitle">os-release</span>(5)</span></a></p></dd><dt id="IdleAction="><span class="term"><code class="varname">IdleAction=</code></span><a class="headerlink" title="Permalink to this term" href="#IdleAction=">¶</a></dt><dd><p><a href="logind.conf.html"><span class="citerefentry"><span class="refentrytitle">logind.conf</span>(5)</span></a></p></dd><dt id="IdleActionSec="><span class="term"><code class="varname">IdleActionSec=</code></span><a class="headerlink" title="Permalink to this term" href="#IdleActionSec=">¶</a></dt><dd><p><a href="logind.conf.html"><span class="citerefentry"><span class="refentrytitle">logind.conf</span>(5)</span></a></p></dd><dt id="InhibitDelayMaxSec="><span class="term"><code class="varname">InhibitDelayMaxSec=</code></span><a class="headerlink" title="Permalink to this term" href="#InhibitDelayMaxSec=">¶</a></dt><dd><p><a href="logind.conf.html"><span class="citerefentry"><span class="refentrytitle">logind.conf</span>(5)</span></a></p></dd><dt id="KEYMAP="><span class="term"><code class="varname">KEYMAP=</code></span><a class="headerlink" title="Permalink to this term" href="#KEYMAP=">¶</a></dt><dd><p><a href="vconsole.conf.html"><span class="citerefentry"><span class="refentrytitle">vconsole.conf</span>(5)</span></a></p></dd><dt id="KEYMAP_TOGGLE="><span class="term"><code class="varname">KEYMAP_TOGGLE=</code></span><a class="headerlink" title="Permalink to this term" href="#KEYMAP_TOGGLE=">¶</a></dt><dd><p><a href="vconsole.conf.html"><span class="citerefentry"><span class="refentrytitle">vconsole.conf</span>(5)</span></a></p></dd><dt id="KillExcludeUsers="><span class="term"><code class="varname">KillExcludeUsers=</code></span><a class="headerlink" title="Permalink to this term" href="#KillExcludeUsers=">¶</a></dt><dd><p><a href="logind.conf.html"><span class="citerefentry"><span class="refentrytitle">logind.conf</span>(5)</span></a></p></dd><dt id="KillOnlyUsers="><span class="term"><code class="varname">KillOnlyUsers=</code></span><a class="headerlink" title="Permalink to this term" href="#KillOnlyUsers=">¶</a></dt><dd><p><a href="logind.conf.html"><span class="citerefentry"><span class="refentrytitle">logind.conf</span>(5)</span></a></p></dd><dt id="KillUserProcesses="><span class="term"><code class="varname">KillUserProcesses=</code></span><a class="headerlink" title="Permalink to this term" href="#KillUserProcesses=">¶</a></dt><dd><p><a href="logind.conf.html"><span class="citerefentry"><span class="refentrytitle">logind.conf</span>(5)</span></a></p></dd><dt id="L"><span class="term"><code class="varname">L</code></span><a class="headerlink" title="Permalink to this term" href="#L">¶</a></dt><dd><p><a href="tmpfiles.d.html"><span class="citerefentry"><span class="refentrytitle">tmpfiles.d</span>(5)</span></a></p></dd><dt id="LidSwitchIgnoreInhibited="><span class="term"><code class="varname">LidSwitchIgnoreInhibited=</code></span><a class="headerlink" title="Permalink to this term" href="#LidSwitchIgnoreInhibited=">¶</a></dt><dd><p><a href="logind.conf.html"><span class="citerefentry"><span class="refentrytitle">logind.conf</span>(5)</span></a></p></dd><dt id="MaxFileSec="><span class="term"><code class="varname">MaxFileSec=</code></span><a class="headerlink" title="Permalink to this term" href="#MaxFileSec=">¶</a></dt><dd><p><a href="journald.conf.html"><span class="citerefentry"><span class="refentrytitle">journald.conf</span>(5)</span></a></p></dd><dt id="MaxLevelConsole="><span class="term"><code class="varname">MaxLevelConsole=</code></span><a class="headerlink" title="Permalink to this term" href="#MaxLevelConsole=">¶</a></dt><dd><p><a href="journald.conf.html"><span class="citerefentry"><span class="refentrytitle">journald.conf</span>(5)</span></a></p></dd><dt id="MaxLevelKMsg="><span class="term"><code class="varname">MaxLevelKMsg=</code></span><a class="headerlink" title="Permalink to this term" href="#MaxLevelKMsg=">¶</a></dt><dd><p><a href="journald.conf.html"><span class="citerefentry"><span class="refentrytitle">journald.conf</span>(5)</span></a></p></dd><dt id="MaxLevelStore="><span class="term"><code class="varname">MaxLevelStore=</code></span><a class="headerlink" title="Permalink to this term" href="#MaxLevelStore=">¶</a></dt><dd><p><a href="journald.conf.html"><span class="citerefentry"><span class="refentrytitle">journald.conf</span>(5)</span></a></p></dd><dt id="MaxLevelSyslog="><span class="term"><code class="varname">MaxLevelSyslog=</code></span><a class="headerlink" title="Permalink to this term" href="#MaxLevelSyslog=">¶</a></dt><dd><p><a href="journald.conf.html"><span class="citerefentry"><span class="refentrytitle">journald.conf</span>(5)</span></a></p></dd><dt id="MaxLevelWall="><span class="term"><code class="varname">MaxLevelWall=</code></span><a class="headerlink" title="Permalink to this term" href="#MaxLevelWall=">¶</a></dt><dd><p><a href="journald.conf.html"><span class="citerefentry"><span class="refentrytitle">journald.conf</span>(5)</span></a></p></dd><dt id="MaxRetentionSec="><span class="term"><code class="varname">MaxRetentionSec=</code></span><a class="headerlink" title="Permalink to this term" href="#MaxRetentionSec=">¶</a></dt><dd><p><a href="journald.conf.html"><span class="citerefentry"><span class="refentrytitle">journald.conf</span>(5)</span></a></p></dd><dt id="NAME="><span class="term"><code class="varname">NAME=</code></span><a class="headerlink" title="Permalink to this term" href="#NAME=">¶</a></dt><dd><p><a href="os-release.html"><span class="citerefentry"><span class="refentrytitle">os-release</span>(5)</span></a></p></dd><dt id="NAutoVTs="><span class="term"><code class="varname">NAutoVTs=</code></span><a class="headerlink" title="Permalink to this term" href="#NAutoVTs=">¶</a></dt><dd><p><a href="logind.conf.html"><span class="citerefentry"><span class="refentrytitle">logind.conf</span>(5)</span></a></p></dd><dt id="PRETTY_HOSTNAME="><span class="term"><code class="varname">PRETTY_HOSTNAME=</code></span><a class="headerlink" title="Permalink to this term" href="#PRETTY_HOSTNAME=">¶</a></dt><dd><p><a href="machine-info.html"><span class="citerefentry"><span class="refentrytitle">machine-info</span>(5)</span></a></p></dd><dt id="PRETTY_NAME="><span class="term"><code class="varname">PRETTY_NAME=</code></span><a class="headerlink" title="Permalink to this term" href="#PRETTY_NAME=">¶</a></dt><dd><p><a href="os-release.html"><span class="citerefentry"><span class="refentrytitle">os-release</span>(5)</span></a></p></dd><dt id="PowerKeyIgnoreInhibited="><span class="term"><code class="varname">PowerKeyIgnoreInhibited=</code></span><a class="headerlink" title="Permalink to this term" href="#PowerKeyIgnoreInhibited=">¶</a></dt><dd><p><a href="logind.conf.html"><span class="citerefentry"><span class="refentrytitle">logind.conf</span>(5)</span></a></p></dd><dt id="R"><span class="term"><code class="varname">R</code></span><a class="headerlink" title="Permalink to this term" href="#R">¶</a></dt><dd><p><a href="tmpfiles.d.html"><span class="citerefentry"><span class="refentrytitle">tmpfiles.d</span>(5)</span></a></p></dd><dt id="RateLimitBurst="><span class="term"><code class="varname">RateLimitBurst=</code></span><a class="headerlink" title="Permalink to this term" href="#RateLimitBurst=">¶</a></dt><dd><p><a href="journald.conf.html"><span class="citerefentry"><span class="refentrytitle">journald.conf</span>(5)</span></a></p></dd><dt id="RateLimitInterval="><span class="term"><code class="varname">RateLimitInterval=</code></span><a class="headerlink" title="Permalink to this term" href="#RateLimitInterval=">¶</a></dt><dd><p><a href="journald.conf.html"><span class="citerefentry"><span class="refentrytitle">journald.conf</span>(5)</span></a></p></dd><dt id="RemoveIPC="><span class="term"><code class="varname">RemoveIPC=</code></span><a class="headerlink" title="Permalink to this term" href="#RemoveIPC=">¶</a></dt><dd><p><a href="logind.conf.html"><span class="citerefentry"><span class="refentrytitle">logind.conf</span>(5)</span></a></p></dd><dt id="ReserveVT="><span class="term"><code class="varname">ReserveVT=</code></span><a class="headerlink" title="Permalink to this term" href="#ReserveVT=">¶</a></dt><dd><p><a href="logind.conf.html"><span class="citerefentry"><span class="refentrytitle">logind.conf</span>(5)</span></a></p></dd><dt id="RuntimeDirectorySize="><span class="term"><code class="varname">RuntimeDirectorySize=</code></span><a class="headerlink" title="Permalink to this term" href="#RuntimeDirectorySize=">¶</a></dt><dd><p><a href="logind.conf.html"><span class="citerefentry"><span class="refentrytitle">logind.conf</span>(5)</span></a></p></dd><dt id="RuntimeKeepFree="><span class="term"><code class="varname">RuntimeKeepFree=</code></span><a class="headerlink" title="Permalink to this term" href="#RuntimeKeepFree=">¶</a></dt><dd><p><a href="journald.conf.html"><span class="citerefentry"><span class="refentrytitle">journald.conf</span>(5)</span></a></p></dd><dt id="RuntimeMaxFileSize="><span class="term"><code class="varname">RuntimeMaxFileSize=</code></span><a class="headerlink" title="Permalink to this term" href="#RuntimeMaxFileSize=">¶</a></dt><dd><p><a href="journald.conf.html"><span class="citerefentry"><span class="refentrytitle">journald.conf</span>(5)</span></a></p></dd><dt id="RuntimeMaxUse="><span class="term"><code class="varname">RuntimeMaxUse=</code></span><a class="headerlink" title="Permalink to this term" href="#RuntimeMaxUse=">¶</a></dt><dd><p><a href="journald.conf.html"><span class="citerefentry"><span class="refentrytitle">journald.conf</span>(5)</span></a></p></dd><dt id="SD_BUS_NAME_ALLOW_REPLACEMENT"><span class="term"><code class="varname">SD_BUS_NAME_ALLOW_REPLACEMENT</code></span><a class="headerlink" title="Permalink to this term" href="#SD_BUS_NAME_ALLOW_REPLACEMENT">¶</a></dt><dd><p><a href="sd_bus_request_name.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_request_name</span>(3)</span></a></p></dd><dt id="SD_BUS_NAME_QUEUE"><span class="term"><code class="varname">SD_BUS_NAME_QUEUE</code></span><a class="headerlink" title="Permalink to this term" href="#SD_BUS_NAME_QUEUE">¶</a></dt><dd><p><a href="sd_bus_request_name.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_request_name</span>(3)</span></a></p></dd><dt id="SD_BUS_NAME_REPLACE_EXISTING"><span class="term"><code class="varname">SD_BUS_NAME_REPLACE_EXISTING</code></span><a class="headerlink" title="Permalink to this term" href="#SD_BUS_NAME_REPLACE_EXISTING">¶</a></dt><dd><p><a href="sd_bus_request_name.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_request_name</span>(3)</span></a></p></dd><dt id="SUPPORT_URL="><span class="term"><code class="varname">SUPPORT_URL=</code></span><a class="headerlink" title="Permalink to this term" href="#SUPPORT_URL=">¶</a></dt><dd><p><a href="os-release.html"><span class="citerefentry"><span class="refentrytitle">os-release</span>(5)</span></a></p></dd><dt id="Seal="><span class="term"><code class="varname">Seal=</code></span><a class="headerlink" title="Permalink to this term" href="#Seal=">¶</a></dt><dd><p><a href="journald.conf.html"><span class="citerefentry"><span class="refentrytitle">journald.conf</span>(5)</span></a></p></dd><dt id="SplitMode="><span class="term"><code class="varname">SplitMode=</code></span><a class="headerlink" title="Permalink to this term" href="#SplitMode=">¶</a></dt><dd><p><a href="journald.conf.html"><span class="citerefentry"><span class="refentrytitle">journald.conf</span>(5)</span></a></p></dd><dt id="Storage="><span class="term"><code class="varname">Storage=</code></span><a class="headerlink" title="Permalink to this term" href="#Storage=">¶</a></dt><dd><p><a href="journald.conf.html"><span class="citerefentry"><span class="refentrytitle">journald.conf</span>(5)</span></a></p></dd><dt id="SuspendKeyIgnoreInhibited="><span class="term"><code class="varname">SuspendKeyIgnoreInhibited=</code></span><a class="headerlink" title="Permalink to this term" href="#SuspendKeyIgnoreInhibited=">¶</a></dt><dd><p><a href="logind.conf.html"><span class="citerefentry"><span class="refentrytitle">logind.conf</span>(5)</span></a></p></dd><dt id="SyncIntervalSec="><span class="term"><code class="varname">SyncIntervalSec=</code></span><a class="headerlink" title="Permalink to this term" href="#SyncIntervalSec=">¶</a></dt><dd><p><a href="journald.conf.html"><span class="citerefentry"><span class="refentrytitle">journald.conf</span>(5)</span></a></p></dd><dt id="SystemKeepFree="><span class="term"><code class="varname">SystemKeepFree=</code></span><a class="headerlink" title="Permalink to this term" href="#SystemKeepFree=">¶</a></dt><dd><p><a href="journald.conf.html"><span class="citerefentry"><span class="refentrytitle">journald.conf</span>(5)</span></a></p></dd><dt id="SystemMaxFileSize="><span class="term"><code class="varname">SystemMaxFileSize=</code></span><a class="headerlink" title="Permalink to this term" href="#SystemMaxFileSize=">¶</a></dt><dd><p><a href="journald.conf.html"><span class="citerefentry"><span class="refentrytitle">journald.conf</span>(5)</span></a></p></dd><dt id="SystemMaxUse="><span class="term"><code class="varname">SystemMaxUse=</code></span><a class="headerlink" title="Permalink to this term" href="#SystemMaxUse=">¶</a></dt><dd><p><a href="journald.conf.html"><span class="citerefentry"><span class="refentrytitle">journald.conf</span>(5)</span></a></p></dd><dt id="TTYPath="><span class="term"><code class="varname">TTYPath=</code></span><a class="headerlink" title="Permalink to this term" href="#TTYPath=">¶</a></dt><dd><p><a href="journald.conf.html"><span class="citerefentry"><span class="refentrytitle">journald.conf</span>(5)</span></a></p></dd><dt id="VERSION="><span class="term"><code class="varname">VERSION=</code></span><a class="headerlink" title="Permalink to this term" href="#VERSION=">¶</a></dt><dd><p><a href="os-release.html"><span class="citerefentry"><span class="refentrytitle">os-release</span>(5)</span></a></p></dd><dt id="VERSION_ID="><span class="term"><code class="varname">VERSION_ID=</code></span><a class="headerlink" title="Permalink to this term" href="#VERSION_ID=">¶</a></dt><dd><p><a href="os-release.html"><span class="citerefentry"><span class="refentrytitle">os-release</span>(5)</span></a></p></dd><dt id="X"><span class="term"><code class="varname">X</code></span><a class="headerlink" title="Permalink to this term" href="#X">¶</a></dt><dd><p><a href="tmpfiles.d.html"><span class="citerefentry"><span class="refentrytitle">tmpfiles.d</span>(5)</span></a></p></dd><dt id="Z"><span class="term"><code class="varname">Z</code></span><a class="headerlink" title="Permalink to this term" href="#Z">¶</a></dt><dd><p><a href="tmpfiles.d.html"><span class="citerefentry"><span class="refentrytitle">tmpfiles.d</span>(5)</span></a></p></dd><dt id="b"><span class="term"><code class="varname">b</code></span><a class="headerlink" title="Permalink to this term" href="#b">¶</a></dt><dd><p><a href="tmpfiles.d.html"><span class="citerefentry"><span class="refentrytitle">tmpfiles.d</span>(5)</span></a></p></dd><dt id="c"><span class="term"><code class="varname">c</code></span><a class="headerlink" title="Permalink to this term" href="#c">¶</a></dt><dd><p><a href="tmpfiles.d.html"><span class="citerefentry"><span class="refentrytitle">tmpfiles.d</span>(5)</span></a></p></dd><dt id="d"><span class="term"><code class="varname">d</code></span><a class="headerlink" title="Permalink to this term" href="#d">¶</a></dt><dd><p><a href="tmpfiles.d.html"><span class="citerefentry"><span class="refentrytitle">tmpfiles.d</span>(5)</span></a></p></dd><dt id="equivalent"><span class="term"><code class="varname">equivalent</code></span><a class="headerlink" title="Permalink to this term" href="#equivalent">¶</a></dt><dd><p><a href="systemd-delta.html"><span class="citerefentry"><span class="refentrytitle">systemd-delta</span>(1)</span></a></p></dd><dt id="extended"><span class="term"><code class="varname">extended</code></span><a class="headerlink" title="Permalink to this term" href="#extended">¶</a></dt><dd><p><a href="systemd-delta.html"><span class="citerefentry"><span class="refentrytitle">systemd-delta</span>(1)</span></a></p></dd><dt id="f"><span class="term"><code class="varname">f</code></span><a class="headerlink" title="Permalink to this term" href="#f">¶</a></dt><dd><p><a href="tmpfiles.d.html"><span class="citerefentry"><span class="refentrytitle">tmpfiles.d</span>(5)</span></a></p></dd><dt id="h"><span class="term"><code class="varname">h</code></span><a class="headerlink" title="Permalink to this term" href="#h">¶</a></dt><dd><p><a href="tmpfiles.d.html"><span class="citerefentry"><span class="refentrytitle">tmpfiles.d</span>(5)</span></a></p></dd><dt id="m"><span class="term"><code class="constant">m</code></span><a class="headerlink" title="Permalink to this term" href="#m">¶</a></dt><dd><p><a href="tmpfiles.d.html"><span class="citerefentry"><span class="refentrytitle">tmpfiles.d</span>(5)</span></a></p></dd><dt id="masked"><span class="term"><code class="varname">masked</code></span><a class="headerlink" title="Permalink to this term" href="#masked">¶</a></dt><dd><p><a href="systemd-delta.html"><span class="citerefentry"><span class="refentrytitle">systemd-delta</span>(1)</span></a></p></dd><dt id="min"><span class="term"><code class="varname">min</code></span><a class="headerlink" title="Permalink to this term" href="#min">¶</a></dt><dd><p><a href="tmpfiles.d.html"><span class="citerefentry"><span class="refentrytitle">tmpfiles.d</span>(5)</span></a></p></dd><dt id="ms"><span class="term"><code class="varname">ms</code></span><a class="headerlink" title="Permalink to this term" href="#ms">¶</a></dt><dd><p><a href="tmpfiles.d.html"><span class="citerefentry"><span class="refentrytitle">tmpfiles.d</span>(5)</span></a></p></dd><dt id="overridden"><span class="term"><code class="varname">overridden</code></span><a class="headerlink" title="Permalink to this term" href="#overridden">¶</a></dt><dd><p><a href="systemd-delta.html"><span class="citerefentry"><span class="refentrytitle">systemd-delta</span>(1)</span></a></p></dd><dt id="p"><span class="term"><code class="varname">p</code></span><a class="headerlink" title="Permalink to this term" href="#p">¶</a></dt><dd><p><a href="tmpfiles.d.html"><span class="citerefentry"><span class="refentrytitle">tmpfiles.d</span>(5)</span></a></p></dd><dt id="r"><span class="term"><code class="constant">r</code></span><a class="headerlink" title="Permalink to this term" href="#r">¶</a></dt><dd><p><a href="tmpfiles.d.html"><span class="citerefentry"><span class="refentrytitle">tmpfiles.d</span>(5)</span></a></p></dd><dt id="redirected"><span class="term"><code class="varname">redirected</code></span><a class="headerlink" title="Permalink to this term" href="#redirected">¶</a></dt><dd><p><a href="systemd-delta.html"><span class="citerefentry"><span class="refentrytitle">systemd-delta</span>(1)</span></a></p></dd><dt id="s"><span class="term"><code class="varname">s</code></span><a class="headerlink" title="Permalink to this term" href="#s">¶</a></dt><dd><p><a href="tmpfiles.d.html"><span class="citerefentry"><span class="refentrytitle">tmpfiles.d</span>(5)</span></a></p></dd><dt id="udev_log"><span class="term"><code class="varname">udev_log</code></span><a class="headerlink" title="Permalink to this term" href="#udev_log">¶</a></dt><dd><p><a href="systemd-udevd.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-udevd.service</span>(8)</span></a></p></dd><dt id="unchanged"><span class="term"><code class="varname">unchanged</code></span><a class="headerlink" title="Permalink to this term" href="#unchanged">¶</a></dt><dd><p><a href="systemd-delta.html"><span class="citerefentry"><span class="refentrytitle">systemd-delta</span>(1)</span></a></p></dd><dt id="us"><span class="term"><code class="varname">us</code></span><a class="headerlink" title="Permalink to this term" href="#us">¶</a></dt><dd><p><a href="tmpfiles.d.html"><span class="citerefentry"><span class="refentrytitle">tmpfiles.d</span>(5)</span></a></p></dd><dt id="w"><span class="term"><code class="constant">w</code></span><a class="headerlink" title="Permalink to this term" href="#w">¶</a></dt><dd><p><a href="tmpfiles.d.html"><span class="citerefentry"><span class="refentrytitle">tmpfiles.d</span>(5)</span></a></p></dd><dt id="x"><span class="term"><code class="varname">x</code></span><a class="headerlink" title="Permalink to this term" href="#x">¶</a></dt><dd><p><a href="tmpfiles.d.html"><span class="citerefentry"><span class="refentrytitle">tmpfiles.d</span>(5)</span></a></p></dd><dt id="z"><span class="term"><code class="varname">z</code></span><a class="headerlink" title="Permalink to this term" href="#z">¶</a></dt><dd><p><a href="tmpfiles.d.html"><span class="citerefentry"><span class="refentrytitle">tmpfiles.d</span>(5)</span></a></p></dd></dl></div></div><div class="refsect1"><a name="idm214184851568"></a><h2 id="Files and directories">Files and directories<a class="headerlink" title="Permalink to this headline" href="#Files%20and%20directories">¶</a></h2><p>Paths and file names referred to in the
-                documentation.</p><div class="variablelist"><a name="filenames"></a><dl class="variablelist"><dt id="/"><span class="term"><code class="filename">/</code></span><a class="headerlink" title="Permalink to this term" href="#/">¶</a></dt><dd><p><a href="systemd-gpt-auto-generator.html"><span class="citerefentry"><span class="refentrytitle">systemd-gpt-auto-generator</span>(8)</span></a>, <a href="systemd-remount-fs.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-remount-fs.service</span>(8)</span></a>, <a href="systemd.unit.html"><span class="citerefentry"><span class="refentrytitle">systemd.unit</span>(5)</span></a></p></dd><dt id="$HOME/.config/systemd/user/"><span class="term"><code class="filename">$HOME/.config/systemd/user/</code></span><a class="headerlink" title="Permalink to this term" href="#%24HOME/.config/systemd/user/">¶</a></dt><dd><p><a href="systemd.unit.html"><span class="citerefentry"><span class="refentrytitle">systemd.unit</span>(5)</span></a></p></dd><dt id="$XDG_CONFIG_HOME/systemd/user/"><span class="term"><code class="filename">$XDG_CONFIG_HOME/systemd/user/</code></span><a class="headerlink" title="Permalink to this term" href="#%24XDG_CONFIG_HOME/systemd/user/">¶</a></dt><dd><p><a href="systemd.unit.html"><span class="citerefentry"><span class="refentrytitle">systemd.unit</span>(5)</span></a></p></dd><dt id="-.slice"><span class="term"><code class="filename">-.slice</code></span><a class="headerlink" title="Permalink to this term" href="#-.slice">¶</a></dt><dd><p><a href="systemd.special.html"><span class="citerefentry"><span class="refentrytitle">systemd.special</span>(7)</span></a></p></dd><dt id="/.readahead"><span class="term"><code class="filename">/.readahead</code></span><a class="headerlink" title="Permalink to this term" href="#/.readahead">¶</a></dt><dd><p><a href="systemd-readahead-replay.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-readahead-replay.service</span>(8)</span></a></p></dd><dt id="/bin"><span class="term"><code class="filename">/bin</code></span><a class="headerlink" title="Permalink to this term" href="#/bin">¶</a></dt><dd><p><a href="systemd.exec.html"><span class="citerefentry"><span class="refentrytitle">systemd.exec</span>(5)</span></a></p></dd><dt id="/bin/ls"><span class="term"><code class="filename">/bin/ls</code></span><a class="headerlink" title="Permalink to this term" href="#/bin/ls">¶</a></dt><dd><p><a href="systemd-cat.html"><span class="citerefentry"><span class="refentrytitle">systemd-cat</span>(1)</span></a></p></dd><dt id="/boot"><span class="term"><code class="filename">/boot</code></span><a class="headerlink" title="Permalink to this term" href="#/boot">¶</a></dt><dd><p><a href="kernel-install.html"><span class="citerefentry"><span class="refentrytitle">kernel-install</span>(8)</span></a>, <a href="systemd-efi-boot-generator.html"><span class="citerefentry"><span class="refentrytitle">systemd-efi-boot-generator</span>(8)</span></a>, <a href="systemd-gpt-auto-generator.html"><span class="citerefentry"><span class="refentrytitle">systemd-gpt-auto-generator</span>(8)</span></a></p></dd><dt id="/boot/loader/entries/MACHINE-ID-KERNEL-VERSION.conf"><span class="term"><code class="filename">/boot/loader/entries/<em class="replaceable"><code>MACHINE-ID</code></em>-<em class="replaceable"><code>KERNEL-VERSION</code></em>.conf</code></span><a class="headerlink" title="Permalink to this term" href="#/boot/loader/entries/MACHINE-ID-KERNEL-VERSION.conf">¶</a></dt><dd><p><a href="kernel-install.html"><span class="citerefentry"><span class="refentrytitle">kernel-install</span>(8)</span></a></p></dd><dt id="/dev"><span class="term"><code class="filename">/dev</code></span><a class="headerlink" title="Permalink to this term" href="#/dev">¶</a></dt><dd><p><a href="systemd-nspawn.html"><span class="citerefentry"><span class="refentrytitle">systemd-nspawn</span>(1)</span></a>, <a href="systemd-remount-fs.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-remount-fs.service</span>(8)</span></a>, <a href="systemd.device.html"><span class="citerefentry"><span class="refentrytitle">systemd.device</span>(5)</span></a>, <a href="systemd.journal-fields.html"><span class="citerefentry"><span class="refentrytitle">systemd.journal-fields</span>(7)</span></a>, <a href="systemd.resource-control.html"><span class="citerefentry"><span class="refentrytitle">systemd.resource-control</span>(5)</span></a>, <a href="udev.html"><span class="citerefentry"><span class="refentrytitle">udev</span>(7)</span></a></p></dd><dt id="/dev/console"><span class="term"><code class="filename">/dev/console</code></span><a class="headerlink" title="Permalink to this term" href="#/dev/console">¶</a></dt><dd><p><a href="journald.conf.html"><span class="citerefentry"><span class="refentrytitle">journald.conf</span>(5)</span></a>, <a href="systemd-getty-generator.html"><span class="citerefentry"><span class="refentrytitle">systemd-getty-generator</span>(8)</span></a>, <a href="systemd-tty-ask-password-agent.html"><span class="citerefentry"><span class="refentrytitle">systemd-tty-ask-password-agent</span>(1)</span></a>, <a href="systemd.exec.html"><span class="citerefentry"><span class="refentrytitle">systemd.exec</span>(5)</span></a></p></dd><dt id="/dev/full"><span class="term"><code class="filename">/dev/full</code></span><a class="headerlink" title="Permalink to this term" href="#/dev/full">¶</a></dt><dd><p><a href="systemd.resource-control.html"><span class="citerefentry"><span class="refentrytitle">systemd.resource-control</span>(5)</span></a></p></dd><dt id="/dev/hw_random"><span class="term"><code class="filename">/dev/hw_random</code></span><a class="headerlink" title="Permalink to this term" href="#/dev/hw_random">¶</a></dt><dd><p><a href="crypttab.html"><span class="citerefentry"><span class="refentrytitle">crypttab</span>(5)</span></a></p></dd><dt id="/dev/initctl"><span class="term"><code class="filename">/dev/initctl</code></span><a class="headerlink" title="Permalink to this term" href="#/dev/initctl">¶</a></dt><dd><p><a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>, <a href="systemd-initctl.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-initctl.service</span>(8)</span></a></p></dd><dt id="/dev/mapper/"><span class="term"><code class="filename">/dev/mapper/</code></span><a class="headerlink" title="Permalink to this term" href="#/dev/mapper/">¶</a></dt><dd><p><a href="crypttab.html"><span class="citerefentry"><span class="refentrytitle">crypttab</span>(5)</span></a></p></dd><dt id="/dev/mapper/home"><span class="term"><code class="filename">/dev/mapper/home</code></span><a class="headerlink" title="Permalink to this term" href="#/dev/mapper/home">¶</a></dt><dd><p><a href="systemd-gpt-auto-generator.html"><span class="citerefentry"><span class="refentrytitle">systemd-gpt-auto-generator</span>(8)</span></a></p></dd><dt id="/dev/mapper/srv"><span class="term"><code class="filename">/dev/mapper/srv</code></span><a class="headerlink" title="Permalink to this term" href="#/dev/mapper/srv">¶</a></dt><dd><p><a href="systemd-gpt-auto-generator.html"><span class="citerefentry"><span class="refentrytitle">systemd-gpt-auto-generator</span>(8)</span></a></p></dd><dt id="/dev/null"><span class="term"><code class="filename">/dev/null</code></span><a class="headerlink" title="Permalink to this term" href="#/dev/null">¶</a></dt><dd><p><a href="binfmt.d.html"><span class="citerefentry"><span class="refentrytitle">binfmt.d</span>(5)</span></a>, <a href="daemon.html"><span class="citerefentry"><span class="refentrytitle">daemon</span>(7)</span></a>, <a href="modules-load.d.html"><span class="citerefentry"><span class="refentrytitle">modules-load.d</span>(5)</span></a>, <a href="sysctl.d.html"><span class="citerefentry"><span class="refentrytitle">sysctl.d</span>(5)</span></a>, <a href="systemctl.html"><span class="citerefentry"><span class="refentrytitle">systemctl</span>(1)</span></a>, <a href="systemd.exec.html"><span class="citerefentry"><span class="refentrytitle">systemd.exec</span>(5)</span></a>, <a href="systemd.link.html"><span class="citerefentry"><span class="refentrytitle">systemd.link</span>(5)</span></a>, <a href="systemd.netdev.html"><span class="citerefentry"><span class="refentrytitle">systemd.netdev</span>(5)</span></a>, <a href="systemd.network.html"><span class="citerefentry"><span class="refentrytitle">systemd.network</span>(5)</span></a>, <a href="systemd.preset.html"><span class="citerefentry"><span class="refentrytitle">systemd.preset</span>(5)</span></a>, <a href="systemd.resource-control.html"><span class="citerefentry"><span class="refentrytitle">systemd.resource-control</span>(5)</span></a>, <a href="systemd.unit.html"><span class="citerefentry"><span class="refentrytitle">systemd.unit</span>(5)</span></a>, <a href="tmpfiles.d.html"><span class="citerefentry"><span class="refentrytitle">tmpfiles.d</span>(5)</span></a>, <a href="udev.html"><span class="citerefentry"><span class="refentrytitle">udev</span>(7)</span></a></p></dd><dt id="/dev/random"><span class="term"><code class="filename">/dev/random</code></span><a class="headerlink" title="Permalink to this term" href="#/dev/random">¶</a></dt><dd><p><a href="crypttab.html"><span class="citerefentry"><span class="refentrytitle">crypttab</span>(5)</span></a>, <a href="systemd.exec.html"><span class="citerefentry"><span class="refentrytitle">systemd.exec</span>(5)</span></a>, <a href="systemd.resource-control.html"><span class="citerefentry"><span class="refentrytitle">systemd.resource-control</span>(5)</span></a></p></dd><dt id="/dev/sda"><span class="term"><code class="filename">/dev/sda</code></span><a class="headerlink" title="Permalink to this term" href="#/dev/sda">¶</a></dt><dd><p><a href="systemd.exec.html"><span class="citerefentry"><span class="refentrytitle">systemd.exec</span>(5)</span></a></p></dd><dt id="/dev/sda5"><span class="term"><code class="filename">/dev/sda5</code></span><a class="headerlink" title="Permalink to this term" href="#/dev/sda5">¶</a></dt><dd><p><a href="systemd.resource-control.html"><span class="citerefentry"><span class="refentrytitle">systemd.resource-control</span>(5)</span></a></p></dd><dt id="/dev/urandom"><span class="term"><code class="filename">/dev/urandom</code></span><a class="headerlink" title="Permalink to this term" href="#/dev/urandom">¶</a></dt><dd><p><a href="crypttab.html"><span class="citerefentry"><span class="refentrytitle">crypttab</span>(5)</span></a>, <a href="sd_id128_randomize.html"><span class="citerefentry"><span class="refentrytitle">sd_id128_randomize</span>(3)</span></a>, <a href="systemd.resource-control.html"><span class="citerefentry"><span class="refentrytitle">systemd.resource-control</span>(5)</span></a></p></dd><dt id="/dev/watchdog"><span class="term"><code class="filename">/dev/watchdog</code></span><a class="headerlink" title="Permalink to this term" href="#/dev/watchdog">¶</a></dt><dd><p><a href="systemd-system.conf.html"><span class="citerefentry"><span class="refentrytitle">systemd-system.conf</span>(5)</span></a></p></dd><dt id="/dev/zero"><span class="term"><code class="filename">/dev/zero</code></span><a class="headerlink" title="Permalink to this term" href="#/dev/zero">¶</a></dt><dd><p><a href="systemd.exec.html"><span class="citerefentry"><span class="refentrytitle">systemd.exec</span>(5)</span></a>, <a href="systemd.resource-control.html"><span class="citerefentry"><span class="refentrytitle">systemd.resource-control</span>(5)</span></a></p></dd><dt id="/etc/"><span class="term"><code class="filename">/etc/</code></span><a class="headerlink" title="Permalink to this term" href="#/etc/">¶</a></dt><dd><p><a href="binfmt.d.html"><span class="citerefentry"><span class="refentrytitle">binfmt.d</span>(5)</span></a>, <a href="modules-load.d.html"><span class="citerefentry"><span class="refentrytitle">modules-load.d</span>(5)</span></a>, <a href="nss-myhostname.html"><span class="citerefentry"><span class="refentrytitle">nss-myhostname</span>(8)</span></a>, <a href="sysctl.d.html"><span class="citerefentry"><span class="refentrytitle">sysctl.d</span>(5)</span></a>, <a href="systemctl.html"><span class="citerefentry"><span class="refentrytitle">systemctl</span>(1)</span></a>, <a href="systemd-delta.html"><span class="citerefentry"><span class="refentrytitle">systemd-delta</span>(1)</span></a>, <a href="systemd.exec.html"><span class="citerefentry"><span class="refentrytitle">systemd.exec</span>(5)</span></a>, <a href="systemd.link.html"><span class="citerefentry"><span class="refentrytitle">systemd.link</span>(5)</span></a>, <a href="systemd.mount.html"><span class="citerefentry"><span class="refentrytitle">systemd.mount</span>(5)</span></a>, <a href="systemd.netdev.html"><span class="citerefentry"><span class="refentrytitle">systemd.netdev</span>(5)</span></a>, <a href="systemd.network.html"><span class="citerefentry"><span class="refentrytitle">systemd.network</span>(5)</span></a>, <a href="systemd.preset.html"><span class="citerefentry"><span class="refentrytitle">systemd.preset</span>(5)</span></a>, <a href="udev.html"><span class="citerefentry"><span class="refentrytitle">udev</span>(7)</span></a></p></dd><dt id="/etc/adjtime"><span class="term"><code class="filename">/etc/adjtime</code></span><a class="headerlink" title="Permalink to this term" href="#/etc/adjtime">¶</a></dt><dd><p><a href="timedatectl.html"><span class="citerefentry"><span class="refentrytitle">timedatectl</span>(1)</span></a></p></dd><dt id="/etc/binfmt.d/"><span class="term"><code class="filename">/etc/binfmt.d/</code></span><a class="headerlink" title="Permalink to this term" href="#/etc/binfmt.d/">¶</a></dt><dd><p><a href="binfmt.d.html"><span class="citerefentry"><span class="refentrytitle">binfmt.d</span>(5)</span></a></p></dd><dt id="/etc/binfmt.d/*.conf"><span class="term"><code class="filename">/etc/binfmt.d/*.conf</code></span><a class="headerlink" title="Permalink to this term" href="#/etc/binfmt.d/*.conf">¶</a></dt><dd><p><a href="binfmt.d.html"><span class="citerefentry"><span class="refentrytitle">binfmt.d</span>(5)</span></a></p></dd><dt id="/etc/crypttab"><span class="term"><code class="filename">/etc/crypttab</code></span><a class="headerlink" title="Permalink to this term" href="#/etc/crypttab">¶</a></dt><dd><p><a href="crypttab.html"><span class="citerefentry"><span class="refentrytitle">crypttab</span>(5)</span></a>, <a href="systemd-cryptsetup-generator.html"><span class="citerefentry"><span class="refentrytitle">systemd-cryptsetup-generator</span>(8)</span></a>, <a href="systemd-cryptsetup@.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-cryptsetup@.service</span>(8)</span></a>, <a href="systemd-gpt-auto-generator.html"><span class="citerefentry"><span class="refentrytitle">systemd-gpt-auto-generator</span>(8)</span></a></p></dd><dt id="/etc/fstab"><span class="term"><code class="filename">/etc/fstab</code></span><a class="headerlink" title="Permalink to this term" href="#/etc/fstab">¶</a></dt><dd><p><a href="kernel-command-line.html"><span class="citerefentry"><span class="refentrytitle">kernel-command-line</span>(7)</span></a>, <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>, <a href="systemd-cryptsetup-generator.html"><span class="citerefentry"><span class="refentrytitle">systemd-cryptsetup-generator</span>(8)</span></a>, <a href="systemd-fsck@.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-fsck@.service</span>(8)</span></a>, <a href="systemd-fstab-generator.html"><span class="citerefentry"><span class="refentrytitle">systemd-fstab-generator</span>(8)</span></a>, <a href="systemd-gpt-auto-generator.html"><span class="citerefentry"><span class="refentrytitle">systemd-gpt-auto-generator</span>(8)</span></a>, <a href="systemd-remount-fs.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-remount-fs.service</span>(8)</span></a>, <a href="systemd.automount.html"><span class="citerefentry"><span class="refentrytitle">systemd.automount</span>(5)</span></a>, <a href="systemd.mount.html"><span class="citerefentry"><span class="refentrytitle">systemd.mount</span>(5)</span></a>, <a href="systemd.special.html"><span class="citerefentry"><span class="refentrytitle">systemd.special</span>(7)</span></a>, <a href="systemd.swap.html"><span class="citerefentry"><span class="refentrytitle">systemd.swap</span>(5)</span></a></p></dd><dt id="/etc/hostname"><span class="term"><code class="filename">/etc/hostname</code></span><a class="headerlink" title="Permalink to this term" href="#/etc/hostname">¶</a></dt><dd><p><a href="hostname.html"><span class="citerefentry"><span class="refentrytitle">hostname</span>(5)</span></a>, <a href="hostnamectl.html"><span class="citerefentry"><span class="refentrytitle">hostnamectl</span>(1)</span></a>, <a href="machine-info.html"><span class="citerefentry"><span class="refentrytitle">machine-info</span>(5)</span></a></p></dd><dt id="/etc/hosts"><span class="term"><code class="filename">/etc/hosts</code></span><a class="headerlink" title="Permalink to this term" href="#/etc/hosts">¶</a></dt><dd><p><a href="nss-myhostname.html"><span class="citerefentry"><span class="refentrytitle">nss-myhostname</span>(8)</span></a></p></dd><dt id="/etc/kernel/cmdline"><span class="term"><code class="filename">/etc/kernel/cmdline</code></span><a class="headerlink" title="Permalink to this term" href="#/etc/kernel/cmdline">¶</a></dt><dd><p><a href="kernel-install.html"><span class="citerefentry"><span class="refentrytitle">kernel-install</span>(8)</span></a></p></dd><dt id="/etc/kernel/install.d/"><span class="term"><code class="filename">/etc/kernel/install.d/</code></span><a class="headerlink" title="Permalink to this term" href="#/etc/kernel/install.d/">¶</a></dt><dd><p><a href="kernel-install.html"><span class="citerefentry"><span class="refentrytitle">kernel-install</span>(8)</span></a></p></dd><dt id="/etc/kernel/install.d/*.install"><span class="term"><code class="filename">/etc/kernel/install.d/*.install</code></span><a class="headerlink" title="Permalink to this term" href="#/etc/kernel/install.d/*.install">¶</a></dt><dd><p><a href="kernel-install.html"><span class="citerefentry"><span class="refentrytitle">kernel-install</span>(8)</span></a></p></dd><dt id="/etc/locale.conf"><span class="term"><code class="filename">/etc/locale.conf</code></span><a class="headerlink" title="Permalink to this term" href="#/etc/locale.conf">¶</a></dt><dd><p><a href="locale.conf.html"><span class="citerefentry"><span class="refentrytitle">locale.conf</span>(5)</span></a>, <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a></p></dd><dt id="/etc/localtime"><span class="term"><code class="filename">/etc/localtime</code></span><a class="headerlink" title="Permalink to this term" href="#/etc/localtime">¶</a></dt><dd><p><a href="localtime.html"><span class="citerefentry"><span class="refentrytitle">localtime</span>(5)</span></a>, <a href="timedatectl.html"><span class="citerefentry"><span class="refentrytitle">timedatectl</span>(1)</span></a></p></dd><dt id="/etc/machine-id"><span class="term"><code class="filename">/etc/machine-id</code></span><a class="headerlink" title="Permalink to this term" href="#/etc/machine-id">¶</a></dt><dd><p><a href="kernel-install.html"><span class="citerefentry"><span class="refentrytitle">kernel-install</span>(8)</span></a>, <a href="machine-id.html"><span class="citerefentry"><span class="refentrytitle">machine-id</span>(5)</span></a>, <a href="systemd-machine-id-setup.html"><span class="citerefentry"><span class="refentrytitle">systemd-machine-id-setup</span>(1)</span></a>, <a href="systemd-nspawn.html"><span class="citerefentry"><span class="refentrytitle">systemd-nspawn</span>(1)</span></a></p></dd><dt id="/etc/machine-info"><span class="term"><code class="filename">/etc/machine-info</code></span><a class="headerlink" title="Permalink to this term" href="#/etc/machine-info">¶</a></dt><dd><p><a href="hostnamectl.html"><span class="citerefentry"><span class="refentrytitle">hostnamectl</span>(1)</span></a>, <a href="machine-info.html"><span class="citerefentry"><span class="refentrytitle">machine-info</span>(5)</span></a></p></dd><dt id="/etc/modules-load.d/program.conf"><span class="term"><code class="filename">/etc/modules-load.d/<em class="replaceable"><code>program</code></em>.conf</code></span><a class="headerlink" title="Permalink to this term" href="#/etc/modules-load.d/program.conf">¶</a></dt><dd><p><a href="modules-load.d.html"><span class="citerefentry"><span class="refentrytitle">modules-load.d</span>(5)</span></a></p></dd><dt id="/etc/modules-load.d/*.conf"><span class="term"><code class="filename">/etc/modules-load.d/*.conf</code></span><a class="headerlink" title="Permalink to this term" href="#/etc/modules-load.d/*.conf">¶</a></dt><dd><p><a href="modules-load.d.html"><span class="citerefentry"><span class="refentrytitle">modules-load.d</span>(5)</span></a></p></dd><dt id="/etc/nsswitch.conf"><span class="term"><code class="filename">/etc/nsswitch.conf</code></span><a class="headerlink" title="Permalink to this term" href="#/etc/nsswitch.conf">¶</a></dt><dd><p><a href="nss-myhostname.html"><span class="citerefentry"><span class="refentrytitle">nss-myhostname</span>(8)</span></a></p></dd><dt id="/etc/os-release"><span class="term"><code class="filename">/etc/os-release</code></span><a class="headerlink" title="Permalink to this term" href="#/etc/os-release">¶</a></dt><dd><p><a href="kernel-install.html"><span class="citerefentry"><span class="refentrytitle">kernel-install</span>(8)</span></a>, <a href="os-release.html"><span class="citerefentry"><span class="refentrytitle">os-release</span>(5)</span></a>, <a href="systemd-nspawn.html"><span class="citerefentry"><span class="refentrytitle">systemd-nspawn</span>(1)</span></a></p></dd><dt id="/etc/resolv.conf"><span class="term"><code class="filename">/etc/resolv.conf</code></span><a class="headerlink" title="Permalink to this term" href="#/etc/resolv.conf">¶</a></dt><dd><p><a href="systemd-resolved.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-resolved.service</span>(8)</span></a></p></dd><dt id="/etc/sysctl.d/"><span class="term"><code class="filename">/etc/sysctl.d/</code></span><a class="headerlink" title="Permalink to this term" href="#/etc/sysctl.d/">¶</a></dt><dd><p><a href="sysctl.d.html"><span class="citerefentry"><span class="refentrytitle">sysctl.d</span>(5)</span></a></p></dd><dt id="/etc/sysctl.d/*.conf"><span class="term"><code class="filename">/etc/sysctl.d/*.conf</code></span><a class="headerlink" title="Permalink to this term" href="#/etc/sysctl.d/*.conf">¶</a></dt><dd><p><a href="sysctl.d.html"><span class="citerefentry"><span class="refentrytitle">sysctl.d</span>(5)</span></a></p></dd><dt id="/etc/systemd/bootchart.conf"><span class="term"><code class="filename">/etc/systemd/bootchart.conf</code></span><a class="headerlink" title="Permalink to this term" href="#/etc/systemd/bootchart.conf">¶</a></dt><dd><p><a href="bootchart.conf.html"><span class="citerefentry"><span class="refentrytitle">bootchart.conf</span>(5)</span></a>, <a href="systemd-bootchart.html"><span class="citerefentry"><span class="refentrytitle">systemd-bootchart</span>(1)</span></a></p></dd><dt id="/etc/systemd/journald.conf"><span class="term"><code class="filename">/etc/systemd/journald.conf</code></span><a class="headerlink" title="Permalink to this term" href="#/etc/systemd/journald.conf">¶</a></dt><dd><p><a href="journald.conf.html"><span class="citerefentry"><span class="refentrytitle">journald.conf</span>(5)</span></a>, <a href="systemd-journald.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-journald.service</span>(8)</span></a></p></dd><dt id="/etc/systemd/logind.conf"><span class="term"><code class="filename">/etc/systemd/logind.conf</code></span><a class="headerlink" title="Permalink to this term" href="#/etc/systemd/logind.conf">¶</a></dt><dd><p><a href="logind.conf.html"><span class="citerefentry"><span class="refentrytitle">logind.conf</span>(5)</span></a></p></dd><dt id="/etc/systemd/network"><span class="term"><code class="filename">/etc/systemd/network</code></span><a class="headerlink" title="Permalink to this term" href="#/etc/systemd/network">¶</a></dt><dd><p><a href="systemd-networkd.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-networkd.service</span>(8)</span></a>, <a href="systemd.link.html"><span class="citerefentry"><span class="refentrytitle">systemd.link</span>(5)</span></a>, <a href="systemd.netdev.html"><span class="citerefentry"><span class="refentrytitle">systemd.netdev</span>(5)</span></a>, <a href="systemd.network.html"><span class="citerefentry"><span class="refentrytitle">systemd.network</span>(5)</span></a></p></dd><dt id="/etc/systemd/resolved.conf"><span class="term"><code class="filename">/etc/systemd/resolved.conf</code></span><a class="headerlink" title="Permalink to this term" href="#/etc/systemd/resolved.conf">¶</a></dt><dd><p><a href="resolved.conf.html"><span class="citerefentry"><span class="refentrytitle">resolved.conf</span>(5)</span></a></p></dd><dt id="/etc/systemd/sleep.conf"><span class="term"><code class="filename">/etc/systemd/sleep.conf</code></span><a class="headerlink" title="Permalink to this term" href="#/etc/systemd/sleep.conf">¶</a></dt><dd><p><a href="systemd-sleep.conf.html"><span class="citerefentry"><span class="refentrytitle">systemd-sleep.conf</span>(5)</span></a>, <a href="systemd-suspend.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-suspend.service</span>(8)</span></a></p></dd><dt id="/etc/systemd/system/"><span class="term"><code class="filename">/etc/systemd/system/</code></span><a class="headerlink" title="Permalink to this term" href="#/etc/systemd/system/">¶</a></dt><dd><p><a href="systemd.unit.html"><span class="citerefentry"><span class="refentrytitle">systemd.unit</span>(5)</span></a></p></dd><dt id="/etc/systemd/system-preset/"><span class="term"><code class="filename">/etc/systemd/system-preset/</code></span><a class="headerlink" title="Permalink to this term" href="#/etc/systemd/system-preset/">¶</a></dt><dd><p><a href="systemd.preset.html"><span class="citerefentry"><span class="refentrytitle">systemd.preset</span>(5)</span></a></p></dd><dt id="/etc/systemd/system-preset/*.preset"><span class="term"><code class="filename">/etc/systemd/system-preset/*.preset</code></span><a class="headerlink" title="Permalink to this term" href="#/etc/systemd/system-preset/*.preset">¶</a></dt><dd><p><a href="systemd.preset.html"><span class="citerefentry"><span class="refentrytitle">systemd.preset</span>(5)</span></a></p></dd><dt id="/etc/systemd/system-preset/00-lennart.preset"><span class="term"><code class="filename">/etc/systemd/system-preset/00-lennart.preset</code></span><a class="headerlink" title="Permalink to this term" href="#/etc/systemd/system-preset/00-lennart.preset">¶</a></dt><dd><p><a href="systemd.preset.html"><span class="citerefentry"><span class="refentrytitle">systemd.preset</span>(5)</span></a></p></dd><dt id="/etc/systemd/system.conf"><span class="term"><code class="filename">/etc/systemd/system.conf</code></span><a class="headerlink" title="Permalink to this term" href="#/etc/systemd/system.conf">¶</a></dt><dd><p><a href="systemd-system.conf.html"><span class="citerefentry"><span class="refentrytitle">systemd-system.conf</span>(5)</span></a></p></dd><dt id="/etc/systemd/user/"><span class="term"><code class="filename">/etc/systemd/user/</code></span><a class="headerlink" title="Permalink to this term" href="#/etc/systemd/user/">¶</a></dt><dd><p><a href="systemd.unit.html"><span class="citerefentry"><span class="refentrytitle">systemd.unit</span>(5)</span></a></p></dd><dt id="/etc/systemd/user-preset/*.preset"><span class="term"><code class="filename">/etc/systemd/user-preset/*.preset</code></span><a class="headerlink" title="Permalink to this term" href="#/etc/systemd/user-preset/*.preset">¶</a></dt><dd><p><a href="systemd.preset.html"><span class="citerefentry"><span class="refentrytitle">systemd.preset</span>(5)</span></a></p></dd><dt id="/etc/systemd/user.conf"><span class="term"><code class="filename">/etc/systemd/user.conf</code></span><a class="headerlink" title="Permalink to this term" href="#/etc/systemd/user.conf">¶</a></dt><dd><p><a href="systemd-system.conf.html"><span class="citerefentry"><span class="refentrytitle">systemd-system.conf</span>(5)</span></a></p></dd><dt id="/etc/tmpfiles.d"><span class="term"><code class="filename">/etc/tmpfiles.d</code></span><a class="headerlink" title="Permalink to this term" href="#/etc/tmpfiles.d">¶</a></dt><dd><p><a href="tmpfiles.d.html"><span class="citerefentry"><span class="refentrytitle">tmpfiles.d</span>(5)</span></a></p></dd><dt id="/etc/tmpfiles.d/*.conf"><span class="term"><code class="filename">/etc/tmpfiles.d/*.conf</code></span><a class="headerlink" title="Permalink to this term" href="#/etc/tmpfiles.d/*.conf">¶</a></dt><dd><p><a href="tmpfiles.d.html"><span class="citerefentry"><span class="refentrytitle">tmpfiles.d</span>(5)</span></a></p></dd><dt id="/etc/udev/hwdb.bin"><span class="term"><code class="filename">/etc/udev/hwdb.bin</code></span><a class="headerlink" title="Permalink to this term" href="#/etc/udev/hwdb.bin">¶</a></dt><dd><p><a href="udev.html"><span class="citerefentry"><span class="refentrytitle">udev</span>(7)</span></a>, <a href="udevadm.html"><span class="citerefentry"><span class="refentrytitle">udevadm</span>(8)</span></a></p></dd><dt id="/etc/udev/hwdb.d"><span class="term"><code class="filename">/etc/udev/hwdb.d</code></span><a class="headerlink" title="Permalink to this term" href="#/etc/udev/hwdb.d">¶</a></dt><dd><p><a href="udev.html"><span class="citerefentry"><span class="refentrytitle">udev</span>(7)</span></a></p></dd><dt id="/etc/udev/rules.d"><span class="term"><code class="filename">/etc/udev/rules.d</code></span><a class="headerlink" title="Permalink to this term" href="#/etc/udev/rules.d">¶</a></dt><dd><p><a href="udev.html"><span class="citerefentry"><span class="refentrytitle">udev</span>(7)</span></a></p></dd><dt id="/etc/udev/udev.conf"><span class="term"><code class="filename">/etc/udev/udev.conf</code></span><a class="headerlink" title="Permalink to this term" href="#/etc/udev/udev.conf">¶</a></dt><dd><p><a href="systemd-udevd.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-udevd.service</span>(8)</span></a></p></dd><dt id="/etc/vconsole.conf"><span class="term"><code class="filename">/etc/vconsole.conf</code></span><a class="headerlink" title="Permalink to this term" href="#/etc/vconsole.conf">¶</a></dt><dd><p><a href="vconsole.conf.html"><span class="citerefentry"><span class="refentrytitle">vconsole.conf</span>(5)</span></a></p></dd><dt id="/home"><span class="term"><code class="filename">/home</code></span><a class="headerlink" title="Permalink to this term" href="#/home">¶</a></dt><dd><p><a href="systemd-gpt-auto-generator.html"><span class="citerefentry"><span class="refentrytitle">systemd-gpt-auto-generator</span>(8)</span></a>, <a href="systemd.exec.html"><span class="citerefentry"><span class="refentrytitle">systemd.exec</span>(5)</span></a></p></dd><dt id="/home/lennart"><span class="term"><code class="filename">/home/lennart</code></span><a class="headerlink" title="Permalink to this term" href="#/home/lennart">¶</a></dt><dd><p><a href="systemd.automount.html"><span class="citerefentry"><span class="refentrytitle">systemd.automount</span>(5)</span></a></p></dd><dt id="/lib"><span class="term"><code class="filename">/lib</code></span><a class="headerlink" title="Permalink to this term" href="#/lib">¶</a></dt><dd><p><a href="systemd-delta.html"><span class="citerefentry"><span class="refentrytitle">systemd-delta</span>(1)</span></a></p></dd><dt id="/proc"><span class="term"><code class="filename">/proc</code></span><a class="headerlink" title="Permalink to this term" href="#/proc">¶</a></dt><dd><p><a href="sd-login.html"><span class="citerefentry"><span class="refentrytitle">sd-login</span>(3)</span></a>, <a href="sd_bus_creds_get_pid.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_creds_get_pid</span>(3)</span></a>, <a href="sd_bus_creds_new_from_pid.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_creds_new_from_pid</span>(3)</span></a>, <a href="sd_is_fifo.html"><span class="citerefentry"><span class="refentrytitle">sd_is_fifo</span>(3)</span></a>, <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>, <a href="systemd-remount-fs.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-remount-fs.service</span>(8)</span></a>, <a href="systemd.socket.html"><span class="citerefentry"><span class="refentrytitle">systemd.socket</span>(5)</span></a>, <a href="tmpfiles.d.html"><span class="citerefentry"><span class="refentrytitle">tmpfiles.d</span>(5)</span></a></p></dd><dt id="/proc/cmdline"><span class="term"><code class="filename">/proc/cmdline</code></span><a class="headerlink" title="Permalink to this term" href="#/proc/cmdline">¶</a></dt><dd><p><a href="kernel-command-line.html"><span class="citerefentry"><span class="refentrytitle">kernel-command-line</span>(7)</span></a>, <a href="kernel-install.html"><span class="citerefentry"><span class="refentrytitle">kernel-install</span>(8)</span></a>, <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a></p></dd><dt id="/proc/devices"><span class="term"><code class="filename">/proc/devices</code></span><a class="headerlink" title="Permalink to this term" href="#/proc/devices">¶</a></dt><dd><p><a href="systemd.resource-control.html"><span class="citerefentry"><span class="refentrytitle">systemd.resource-control</span>(5)</span></a></p></dd><dt id="/proc/self/fd"><span class="term"><code class="filename">/proc/self/fd</code></span><a class="headerlink" title="Permalink to this term" href="#/proc/self/fd">¶</a></dt><dd><p><a href="daemon.html"><span class="citerefentry"><span class="refentrytitle">daemon</span>(7)</span></a></p></dd><dt id="/proc/self/mountinfo"><span class="term"><code class="filename">/proc/self/mountinfo</code></span><a class="headerlink" title="Permalink to this term" href="#/proc/self/mountinfo">¶</a></dt><dd><p><a href="systemd.mount.html"><span class="citerefentry"><span class="refentrytitle">systemd.mount</span>(5)</span></a></p></dd><dt id="/proc/self/sessionid"><span class="term"><code class="filename">/proc/self/sessionid</code></span><a class="headerlink" title="Permalink to this term" href="#/proc/self/sessionid">¶</a></dt><dd><p><a href="pam_systemd.html"><span class="citerefentry"><span class="refentrytitle">pam_systemd</span>(8)</span></a></p></dd><dt id="/proc/sys"><span class="term"><code class="filename">/proc/sys</code></span><a class="headerlink" title="Permalink to this term" href="#/proc/sys">¶</a></dt><dd><p><a href="systemd-nspawn.html"><span class="citerefentry"><span class="refentrytitle">systemd-nspawn</span>(1)</span></a></p></dd><dt id="/proc/sys/kernel/domainname"><span class="term"><code class="filename">/proc/sys/kernel/domainname</code></span><a class="headerlink" title="Permalink to this term" href="#/proc/sys/kernel/domainname">¶</a></dt><dd><p><a href="sysctl.d.html"><span class="citerefentry"><span class="refentrytitle">sysctl.d</span>(5)</span></a></p></dd><dt id="/proc/sys/kernel/random/boot_id"><span class="term"><code class="filename">/proc/sys/kernel/random/boot_id</code></span><a class="headerlink" title="Permalink to this term" href="#/proc/sys/kernel/random/boot_id">¶</a></dt><dd><p><a href="sd_id128_get_machine.html"><span class="citerefentry"><span class="refentrytitle">sd_id128_get_machine</span>(3)</span></a></p></dd><dt id="/proc/sys/net/ipv4/conf/enp3s0.200/forwarding"><span class="term"><code class="filename">/proc/sys/net/ipv4/conf/enp3s0.200/forwarding</code></span><a class="headerlink" title="Permalink to this term" href="#/proc/sys/net/ipv4/conf/enp3s0.200/forwarding">¶</a></dt><dd><p><a href="sysctl.d.html"><span class="citerefentry"><span class="refentrytitle">sysctl.d</span>(5)</span></a></p></dd><dt id="/proc/sys/net/ipv4/tcp_keepalive_time"><span class="term"><code class="filename">/proc/sys/net/ipv4/tcp_keepalive_time</code></span><a class="headerlink" title="Permalink to this term" href="#/proc/sys/net/ipv4/tcp_keepalive_time">¶</a></dt><dd><p><a href="systemd.socket.html"><span class="citerefentry"><span class="refentrytitle">systemd.socket</span>(5)</span></a></p></dd><dt id="/proc/sys/net/ipv6/bindv6only"><span class="term"><code class="filename">/proc/sys/net/ipv6/bindv6only</code></span><a class="headerlink" title="Permalink to this term" href="#/proc/sys/net/ipv6/bindv6only">¶</a></dt><dd><p><a href="systemd.socket.html"><span class="citerefentry"><span class="refentrytitle">systemd.socket</span>(5)</span></a></p></dd><dt id="/run/"><span class="term"><code class="filename">/run/</code></span><a class="headerlink" title="Permalink to this term" href="#/run/">¶</a></dt><dd><p><a href="binfmt.d.html"><span class="citerefentry"><span class="refentrytitle">binfmt.d</span>(5)</span></a>, <a href="modules-load.d.html"><span class="citerefentry"><span class="refentrytitle">modules-load.d</span>(5)</span></a>, <a href="sd-login.html"><span class="citerefentry"><span class="refentrytitle">sd-login</span>(3)</span></a>, <a href="sysctl.d.html"><span class="citerefentry"><span class="refentrytitle">sysctl.d</span>(5)</span></a>, <a href="systemctl.html"><span class="citerefentry"><span class="refentrytitle">systemctl</span>(1)</span></a>, <a href="systemd-delta.html"><span class="citerefentry"><span class="refentrytitle">systemd-delta</span>(1)</span></a>, <a href="systemd-journald.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-journald.service</span>(8)</span></a>, <a href="systemd-nspawn.html"><span class="citerefentry"><span class="refentrytitle">systemd-nspawn</span>(1)</span></a>, <a href="systemd.exec.html"><span class="citerefentry"><span class="refentrytitle">systemd.exec</span>(5)</span></a>, <a href="systemd.link.html"><span class="citerefentry"><span class="refentrytitle">systemd.link</span>(5)</span></a>, <a href="systemd.netdev.html"><span class="citerefentry"><span class="refentrytitle">systemd.netdev</span>(5)</span></a>, <a href="systemd.network.html"><span class="citerefentry"><span class="refentrytitle">systemd.network</span>(5)</span></a>, <a href="systemd.preset.html"><span class="citerefentry"><span class="refentrytitle">systemd.preset</span>(5)</span></a>, <a href="systemd.unit.html"><span class="citerefentry"><span class="refentrytitle">systemd.unit</span>(5)</span></a>, <a href="tmpfiles.d.html"><span class="citerefentry"><span class="refentrytitle">tmpfiles.d</span>(5)</span></a>, <a href="udev.html"><span class="citerefentry"><span class="refentrytitle">udev</span>(7)</span></a></p></dd><dt id="/run/binfmt.d/*.conf"><span class="term"><code class="filename">/run/binfmt.d/*.conf</code></span><a class="headerlink" title="Permalink to this term" href="#/run/binfmt.d/*.conf">¶</a></dt><dd><p><a href="binfmt.d.html"><span class="citerefentry"><span class="refentrytitle">binfmt.d</span>(5)</span></a></p></dd><dt id="/run/foobar.pid"><span class="term"><code class="filename">/run/foobar.pid</code></span><a class="headerlink" title="Permalink to this term" href="#/run/foobar.pid">¶</a></dt><dd><p><a href="daemon.html"><span class="citerefentry"><span class="refentrytitle">daemon</span>(7)</span></a></p></dd><dt id="/run/log"><span class="term"><code class="filename">/run/log</code></span><a class="headerlink" title="Permalink to this term" href="#/run/log">¶</a></dt><dd><p><a href="bootchart.conf.html"><span class="citerefentry"><span class="refentrytitle">bootchart.conf</span>(5)</span></a>, <a href="systemd-bootchart.html"><span class="citerefentry"><span class="refentrytitle">systemd-bootchart</span>(1)</span></a></p></dd><dt id="/run/log/journal"><span class="term"><code class="filename">/run/log/journal</code></span><a class="headerlink" title="Permalink to this term" href="#/run/log/journal">¶</a></dt><dd><p><a href="journald.conf.html"><span class="citerefentry"><span class="refentrytitle">journald.conf</span>(5)</span></a>, <a href="systemd-journald.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-journald.service</span>(8)</span></a></p></dd><dt id="/run/modules-load.d/*.conf"><span class="term"><code class="filename">/run/modules-load.d/*.conf</code></span><a class="headerlink" title="Permalink to this term" href="#/run/modules-load.d/*.conf">¶</a></dt><dd><p><a href="modules-load.d.html"><span class="citerefentry"><span class="refentrytitle">modules-load.d</span>(5)</span></a></p></dd><dt id="/run/nologin"><span class="term"><code class="filename">/run/nologin</code></span><a class="headerlink" title="Permalink to this term" href="#/run/nologin">¶</a></dt><dd><p><a href="shutdown.html"><span class="citerefentry"><span class="refentrytitle">shutdown</span>(8)</span></a>, <a href="systemd-user-sessions.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-user-sessions.service</span>(8)</span></a></p></dd><dt id="/run/sysctl.d/*.conf"><span class="term"><code class="filename">/run/sysctl.d/*.conf</code></span><a class="headerlink" title="Permalink to this term" href="#/run/sysctl.d/*.conf">¶</a></dt><dd><p><a href="sysctl.d.html"><span class="citerefentry"><span class="refentrytitle">sysctl.d</span>(5)</span></a></p></dd><dt id="/run/systemd/journal/syslog"><span class="term"><code class="filename">/run/systemd/journal/syslog</code></span><a class="headerlink" title="Permalink to this term" href="#/run/systemd/journal/syslog">¶</a></dt><dd><p><a href="systemd-journald.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-journald.service</span>(8)</span></a></p></dd><dt id="/run/systemd/network"><span class="term"><code class="filename">/run/systemd/network</code></span><a class="headerlink" title="Permalink to this term" href="#/run/systemd/network">¶</a></dt><dd><p><a href="systemd-networkd.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-networkd.service</span>(8)</span></a>, <a href="systemd.link.html"><span class="citerefentry"><span class="refentrytitle">systemd.link</span>(5)</span></a>, <a href="systemd.netdev.html"><span class="citerefentry"><span class="refentrytitle">systemd.netdev</span>(5)</span></a>, <a href="systemd.network.html"><span class="citerefentry"><span class="refentrytitle">systemd.network</span>(5)</span></a></p></dd><dt id="/run/systemd/notify"><span class="term"><code class="filename">/run/systemd/notify</code></span><a class="headerlink" title="Permalink to this term" href="#/run/systemd/notify">¶</a></dt><dd><p><a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a></p></dd><dt id="/run/systemd/private"><span class="term"><code class="filename">/run/systemd/private</code></span><a class="headerlink" title="Permalink to this term" href="#/run/systemd/private">¶</a></dt><dd><p><a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a></p></dd><dt id="/run/systemd/readahead/"><span class="term"><code class="filename">/run/systemd/readahead/</code></span><a class="headerlink" title="Permalink to this term" href="#/run/systemd/readahead/">¶</a></dt><dd><p><a href="sd_readahead.html"><span class="citerefentry"><span class="refentrytitle">sd_readahead</span>(3)</span></a></p></dd><dt id="/run/systemd/resolve/resolv.conf"><span class="term"><code class="filename">/run/systemd/resolve/resolv.conf</code></span><a class="headerlink" title="Permalink to this term" href="#/run/systemd/resolve/resolv.conf">¶</a></dt><dd><p><a href="systemd-resolved.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-resolved.service</span>(8)</span></a></p></dd><dt id="/run/systemd/shutdownd"><span class="term"><code class="filename">/run/systemd/shutdownd</code></span><a class="headerlink" title="Permalink to this term" href="#/run/systemd/shutdownd">¶</a></dt><dd><p><a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a></p></dd><dt id="/run/systemd/system/"><span class="term"><code class="filename">/run/systemd/system/</code></span><a class="headerlink" title="Permalink to this term" href="#/run/systemd/system/">¶</a></dt><dd><p><a href="sd_booted.html"><span class="citerefentry"><span class="refentrytitle">sd_booted</span>(3)</span></a>, <a href="systemd.unit.html"><span class="citerefentry"><span class="refentrytitle">systemd.unit</span>(5)</span></a></p></dd><dt id="/run/systemd/system-preset/*.preset"><span class="term"><code class="filename">/run/systemd/system-preset/*.preset</code></span><a class="headerlink" title="Permalink to this term" href="#/run/systemd/system-preset/*.preset">¶</a></dt><dd><p><a href="systemd.preset.html"><span class="citerefentry"><span class="refentrytitle">systemd.preset</span>(5)</span></a></p></dd><dt id="/run/systemd/user/"><span class="term"><code class="filename">/run/systemd/user/</code></span><a class="headerlink" title="Permalink to this term" href="#/run/systemd/user/">¶</a></dt><dd><p><a href="systemd.unit.html"><span class="citerefentry"><span class="refentrytitle">systemd.unit</span>(5)</span></a></p></dd><dt id="/run/systemd/user-preset/*.preset"><span class="term"><code class="filename">/run/systemd/user-preset/*.preset</code></span><a class="headerlink" title="Permalink to this term" href="#/run/systemd/user-preset/*.preset">¶</a></dt><dd><p><a href="systemd.preset.html"><span class="citerefentry"><span class="refentrytitle">systemd.preset</span>(5)</span></a></p></dd><dt id="/run/tmpfiles.d"><span class="term"><code class="filename">/run/tmpfiles.d</code></span><a class="headerlink" title="Permalink to this term" href="#/run/tmpfiles.d">¶</a></dt><dd><p><a href="tmpfiles.d.html"><span class="citerefentry"><span class="refentrytitle">tmpfiles.d</span>(5)</span></a></p></dd><dt id="/run/tmpfiles.d/*.conf"><span class="term"><code class="filename">/run/tmpfiles.d/*.conf</code></span><a class="headerlink" title="Permalink to this term" href="#/run/tmpfiles.d/*.conf">¶</a></dt><dd><p><a href="tmpfiles.d.html"><span class="citerefentry"><span class="refentrytitle">tmpfiles.d</span>(5)</span></a></p></dd><dt id="/run/udev/hwdb.d"><span class="term"><code class="filename">/run/udev/hwdb.d</code></span><a class="headerlink" title="Permalink to this term" href="#/run/udev/hwdb.d">¶</a></dt><dd><p><a href="udev.html"><span class="citerefentry"><span class="refentrytitle">udev</span>(7)</span></a></p></dd><dt id="/run/udev/rules.d"><span class="term"><code class="filename">/run/udev/rules.d</code></span><a class="headerlink" title="Permalink to this term" href="#/run/udev/rules.d">¶</a></dt><dd><p><a href="udev.html"><span class="citerefentry"><span class="refentrytitle">udev</span>(7)</span></a></p></dd><dt id="/run/udev/static_node-tags/tag"><span class="term"><code class="filename">/run/udev/static_node-tags/<em class="replaceable"><code>tag</code></em></code></span><a class="headerlink" title="Permalink to this term" href="#/run/udev/static_node-tags/tag">¶</a></dt><dd><p><a href="udev.html"><span class="citerefentry"><span class="refentrytitle">udev</span>(7)</span></a></p></dd><dt id="/run/user"><span class="term"><code class="filename">/run/user</code></span><a class="headerlink" title="Permalink to this term" href="#/run/user">¶</a></dt><dd><p><a href="systemd.exec.html"><span class="citerefentry"><span class="refentrytitle">systemd.exec</span>(5)</span></a></p></dd><dt id="/run/user/$USER"><span class="term"><code class="filename">/run/user/$USER</code></span><a class="headerlink" title="Permalink to this term" href="#/run/user/%24USER">¶</a></dt><dd><p><a href="pam_systemd.html"><span class="citerefentry"><span class="refentrytitle">pam_systemd</span>(8)</span></a></p></dd><dt id="/sbin"><span class="term"><code class="filename">/sbin</code></span><a class="headerlink" title="Permalink to this term" href="#/sbin">¶</a></dt><dd><p><a href="systemd.exec.html"><span class="citerefentry"><span class="refentrytitle">systemd.exec</span>(5)</span></a></p></dd><dt id="/sbin/init"><span class="term"><code class="filename">/sbin/init</code></span><a class="headerlink" title="Permalink to this term" href="#/sbin/init">¶</a></dt><dd><p><a href="bootchart.conf.html"><span class="citerefentry"><span class="refentrytitle">bootchart.conf</span>(5)</span></a></p></dd><dt id="/srv"><span class="term"><code class="filename">/srv</code></span><a class="headerlink" title="Permalink to this term" href="#/srv">¶</a></dt><dd><p><a href="systemd-gpt-auto-generator.html"><span class="citerefentry"><span class="refentrytitle">systemd-gpt-auto-generator</span>(8)</span></a></p></dd><dt id="/sys"><span class="term"><code class="filename">/sys</code></span><a class="headerlink" title="Permalink to this term" href="#/sys">¶</a></dt><dd><p><a href="loginctl.html"><span class="citerefentry"><span class="refentrytitle">loginctl</span>(1)</span></a>, <a href="sd_is_fifo.html"><span class="citerefentry"><span class="refentrytitle">sd_is_fifo</span>(3)</span></a>, <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>, <a href="systemd-nspawn.html"><span class="citerefentry"><span class="refentrytitle">systemd-nspawn</span>(1)</span></a>, <a href="systemd-remount-fs.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-remount-fs.service</span>(8)</span></a>, <a href="systemd.device.html"><span class="citerefentry"><span class="refentrytitle">systemd.device</span>(5)</span></a>, <a href="systemd.journal-fields.html"><span class="citerefentry"><span class="refentrytitle">systemd.journal-fields</span>(7)</span></a>, <a href="systemd.socket.html"><span class="citerefentry"><span class="refentrytitle">systemd.socket</span>(5)</span></a>, <a href="tmpfiles.d.html"><span class="citerefentry"><span class="refentrytitle">tmpfiles.d</span>(5)</span></a>, <a href="udevadm.html"><span class="citerefentry"><span class="refentrytitle">udevadm</span>(8)</span></a></p></dd><dt id="/sys/fs/cgroup"><span class="term"><code class="filename">/sys/fs/cgroup</code></span><a class="headerlink" title="Permalink to this term" href="#/sys/fs/cgroup">¶</a></dt><dd><p><a href="sd-login.html"><span class="citerefentry"><span class="refentrytitle">sd-login</span>(3)</span></a>, <a href="systemd-cgls.html"><span class="citerefentry"><span class="refentrytitle">systemd-cgls</span>(1)</span></a></p></dd><dt id="/sys/fs/cgroup/systemd/"><span class="term"><code class="filename">/sys/fs/cgroup/systemd/</code></span><a class="headerlink" title="Permalink to this term" href="#/sys/fs/cgroup/systemd/">¶</a></dt><dd><p><a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>, <a href="systemd.unit.html"><span class="citerefentry"><span class="refentrytitle">systemd.unit</span>(5)</span></a></p></dd><dt id="/sys/fs/selinux"><span class="term"><code class="filename">/sys/fs/selinux</code></span><a class="headerlink" title="Permalink to this term" href="#/sys/fs/selinux">¶</a></dt><dd><p><a href="systemd-nspawn.html"><span class="citerefentry"><span class="refentrytitle">systemd-nspawn</span>(1)</span></a></p></dd><dt id="/sys/power/disk"><span class="term"><code class="filename">/sys/power/disk</code></span><a class="headerlink" title="Permalink to this term" href="#/sys/power/disk">¶</a></dt><dd><p><a href="systemd-sleep.conf.html"><span class="citerefentry"><span class="refentrytitle">systemd-sleep.conf</span>(5)</span></a></p></dd><dt id="/sys/power/state"><span class="term"><code class="filename">/sys/power/state</code></span><a class="headerlink" title="Permalink to this term" href="#/sys/power/state">¶</a></dt><dd><p><a href="systemd-sleep.conf.html"><span class="citerefentry"><span class="refentrytitle">systemd-sleep.conf</span>(5)</span></a>, <a href="systemd-suspend.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-suspend.service</span>(8)</span></a></p></dd><dt id="/sysroot"><span class="term"><code class="filename">/sysroot</code></span><a class="headerlink" title="Permalink to this term" href="#/sysroot">¶</a></dt><dd><p><a href="bootup.html"><span class="citerefentry"><span class="refentrytitle">bootup</span>(7)</span></a></p></dd><dt id="/sysroot/etc/fstab"><span class="term"><code class="filename">/sysroot/etc/fstab</code></span><a class="headerlink" title="Permalink to this term" href="#/sysroot/etc/fstab">¶</a></dt><dd><p><a href="bootup.html"><span class="citerefentry"><span class="refentrytitle">bootup</span>(7)</span></a></p></dd><dt id="/system-update"><span class="term"><code class="filename">/system-update</code></span><a class="headerlink" title="Permalink to this term" href="#/system-update">¶</a></dt><dd><p><a href="systemd-system-update-generator.html"><span class="citerefentry"><span class="refentrytitle">systemd-system-update-generator</span>(8)</span></a>, <a href="systemd.special.html"><span class="citerefentry"><span class="refentrytitle">systemd.special</span>(7)</span></a></p></dd><dt id="/tmp"><span class="term"><code class="filename">/tmp</code></span><a class="headerlink" title="Permalink to this term" href="#/tmp">¶</a></dt><dd><p><a href="crypttab.html"><span class="citerefentry"><span class="refentrytitle">crypttab</span>(5)</span></a>, <a href="systemd.exec.html"><span class="citerefentry"><span class="refentrytitle">systemd.exec</span>(5)</span></a>, <a href="systemd.unit.html"><span class="citerefentry"><span class="refentrytitle">systemd.unit</span>(5)</span></a>, <a href="tmpfiles.d.html"><span class="citerefentry"><span class="refentrytitle">tmpfiles.d</span>(5)</span></a></p></dd><dt id="/tmp/var"><span class="term"><code class="filename">/tmp/var</code></span><a class="headerlink" title="Permalink to this term" href="#/tmp/var">¶</a></dt><dd><p><a href="systemd.unit.html"><span class="citerefentry"><span class="refentrytitle">systemd.unit</span>(5)</span></a></p></dd><dt id="/upload"><span class="term"><code class="filename">/upload</code></span><a class="headerlink" title="Permalink to this term" href="#/upload">¶</a></dt><dd><p><a href="systemd-journal-remote.html"><span class="citerefentry"><span class="refentrytitle">systemd-journal-remote</span>(8)</span></a></p></dd><dt id="/usr"><span class="term"><code class="filename">/usr</code></span><a class="headerlink" title="Permalink to this term" href="#/usr">¶</a></dt><dd><p><a href="bootup.html"><span class="citerefentry"><span class="refentrytitle">bootup</span>(7)</span></a>, <a href="systemd-remount-fs.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-remount-fs.service</span>(8)</span></a>, <a href="systemd.exec.html"><span class="citerefentry"><span class="refentrytitle">systemd.exec</span>(5)</span></a>, <a href="systemd.mount.html"><span class="citerefentry"><span class="refentrytitle">systemd.mount</span>(5)</span></a></p></dd><dt id="/usr/bin"><span class="term"><code class="filename">/usr/bin</code></span><a class="headerlink" title="Permalink to this term" href="#/usr/bin">¶</a></dt><dd><p><a href="systemd.exec.html"><span class="citerefentry"><span class="refentrytitle">systemd.exec</span>(5)</span></a></p></dd><dt id="/usr/bin/mount"><span class="term"><code class="filename">/usr/bin/mount</code></span><a class="headerlink" title="Permalink to this term" href="#/usr/bin/mount">¶</a></dt><dd><p><a href="systemctl.html"><span class="citerefentry"><span class="refentrytitle">systemctl</span>(1)</span></a></p></dd><dt id="/usr/bin/umount"><span class="term"><code class="filename">/usr/bin/umount</code></span><a class="headerlink" title="Permalink to this term" href="#/usr/bin/umount">¶</a></dt><dd><p><a href="systemctl.html"><span class="citerefentry"><span class="refentrytitle">systemctl</span>(1)</span></a></p></dd><dt id="/usr/lib/"><span class="term"><code class="filename">/usr/lib/</code></span><a class="headerlink" title="Permalink to this term" href="#/usr/lib/">¶</a></dt><dd><p><a href="binfmt.d.html"><span class="citerefentry"><span class="refentrytitle">binfmt.d</span>(5)</span></a>, <a href="modules-load.d.html"><span class="citerefentry"><span class="refentrytitle">modules-load.d</span>(5)</span></a>, <a href="sysctl.d.html"><span class="citerefentry"><span class="refentrytitle">sysctl.d</span>(5)</span></a>, <a href="systemd-delta.html"><span class="citerefentry"><span class="refentrytitle">systemd-delta</span>(1)</span></a>, <a href="systemd.link.html"><span class="citerefentry"><span class="refentrytitle">systemd.link</span>(5)</span></a>, <a href="systemd.netdev.html"><span class="citerefentry"><span class="refentrytitle">systemd.netdev</span>(5)</span></a>, <a href="systemd.network.html"><span class="citerefentry"><span class="refentrytitle">systemd.network</span>(5)</span></a>, <a href="systemd.preset.html"><span class="citerefentry"><span class="refentrytitle">systemd.preset</span>(5)</span></a>, <a href="udev.html"><span class="citerefentry"><span class="refentrytitle">udev</span>(7)</span></a></p></dd><dt id="/usr/lib/binfmt.d/*.conf"><span class="term"><code class="filename">/usr/lib/binfmt.d/*.conf</code></span><a class="headerlink" title="Permalink to this term" href="#/usr/lib/binfmt.d/*.conf">¶</a></dt><dd><p><a href="binfmt.d.html"><span class="citerefentry"><span class="refentrytitle">binfmt.d</span>(5)</span></a></p></dd><dt id="/usr/lib/kernel/install.d/"><span class="term"><code class="filename">/usr/lib/kernel/install.d/</code></span><a class="headerlink" title="Permalink to this term" href="#/usr/lib/kernel/install.d/">¶</a></dt><dd><p><a href="kernel-install.html"><span class="citerefentry"><span class="refentrytitle">kernel-install</span>(8)</span></a></p></dd><dt id="/usr/lib/kernel/install.d/*.install"><span class="term"><code class="filename">/usr/lib/kernel/install.d/*.install</code></span><a class="headerlink" title="Permalink to this term" href="#/usr/lib/kernel/install.d/*.install">¶</a></dt><dd><p><a href="kernel-install.html"><span class="citerefentry"><span class="refentrytitle">kernel-install</span>(8)</span></a></p></dd><dt id="/usr/lib/modules-load.d/*.conf"><span class="term"><code class="filename">/usr/lib/modules-load.d/*.conf</code></span><a class="headerlink" title="Permalink to this term" href="#/usr/lib/modules-load.d/*.conf">¶</a></dt><dd><p><a href="modules-load.d.html"><span class="citerefentry"><span class="refentrytitle">modules-load.d</span>(5)</span></a></p></dd><dt id="/usr/lib/sysctl.d/*.conf"><span class="term"><code class="filename">/usr/lib/sysctl.d/*.conf</code></span><a class="headerlink" title="Permalink to this term" href="#/usr/lib/sysctl.d/*.conf">¶</a></dt><dd><p><a href="sysctl.d.html"><span class="citerefentry"><span class="refentrytitle">sysctl.d</span>(5)</span></a></p></dd><dt id="/usr/lib/systemd/network"><span class="term"><code class="filename">/usr/lib/systemd/network</code></span><a class="headerlink" title="Permalink to this term" href="#/usr/lib/systemd/network">¶</a></dt><dd><p><a href="systemd-networkd.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-networkd.service</span>(8)</span></a>, <a href="systemd.link.html"><span class="citerefentry"><span class="refentrytitle">systemd.link</span>(5)</span></a>, <a href="systemd.netdev.html"><span class="citerefentry"><span class="refentrytitle">systemd.netdev</span>(5)</span></a>, <a href="systemd.network.html"><span class="citerefentry"><span class="refentrytitle">systemd.network</span>(5)</span></a></p></dd><dt id="/usr/lib/systemd/system"><span class="term"><code class="filename">/usr/lib/systemd/system</code></span><a class="headerlink" title="Permalink to this term" href="#/usr/lib/systemd/system">¶</a></dt><dd><p><a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>, <a href="systemd.unit.html"><span class="citerefentry"><span class="refentrytitle">systemd.unit</span>(5)</span></a></p></dd><dt id="/usr/lib/systemd/system-generators/systemd-cryptsetup-generator"><span class="term"><code class="filename">/usr/lib/systemd/system-generators/systemd-cryptsetup-generator</code></span><a class="headerlink" title="Permalink to this term" href="#/usr/lib/systemd/system-generators/systemd-cryptsetup-generator">¶</a></dt><dd><p><a href="systemd-cryptsetup-generator.html"><span class="citerefentry"><span class="refentrytitle">systemd-cryptsetup-generator</span>(8)</span></a></p></dd><dt id="/usr/lib/systemd/system-generators/systemd-efi-boot-generator"><span class="term"><code class="filename">/usr/lib/systemd/system-generators/systemd-efi-boot-generator</code></span><a class="headerlink" title="Permalink to this term" href="#/usr/lib/systemd/system-generators/systemd-efi-boot-generator">¶</a></dt><dd><p><a href="systemd-efi-boot-generator.html"><span class="citerefentry"><span class="refentrytitle">systemd-efi-boot-generator</span>(8)</span></a></p></dd><dt id="/usr/lib/systemd/system-generators/systemd-fstab-generator"><span class="term"><code class="filename">/usr/lib/systemd/system-generators/systemd-fstab-generator</code></span><a class="headerlink" title="Permalink to this term" href="#/usr/lib/systemd/system-generators/systemd-fstab-generator">¶</a></dt><dd><p><a href="systemd-fstab-generator.html"><span class="citerefentry"><span class="refentrytitle">systemd-fstab-generator</span>(8)</span></a></p></dd><dt id="/usr/lib/systemd/system-generators/systemd-getty-generator"><span class="term"><code class="filename">/usr/lib/systemd/system-generators/systemd-getty-generator</code></span><a class="headerlink" title="Permalink to this term" href="#/usr/lib/systemd/system-generators/systemd-getty-generator">¶</a></dt><dd><p><a href="systemd-getty-generator.html"><span class="citerefentry"><span class="refentrytitle">systemd-getty-generator</span>(8)</span></a></p></dd><dt id="/usr/lib/systemd/system-generators/systemd-gpt-auto-generator"><span class="term"><code class="filename">/usr/lib/systemd/system-generators/systemd-gpt-auto-generator</code></span><a class="headerlink" title="Permalink to this term" href="#/usr/lib/systemd/system-generators/systemd-gpt-auto-generator">¶</a></dt><dd><p><a href="systemd-gpt-auto-generator.html"><span class="citerefentry"><span class="refentrytitle">systemd-gpt-auto-generator</span>(8)</span></a></p></dd><dt id="/usr/lib/systemd/system-generators/systemd-system-update-generator"><span class="term"><code class="filename">/usr/lib/systemd/system-generators/systemd-system-update-generator</code></span><a class="headerlink" title="Permalink to this term" href="#/usr/lib/systemd/system-generators/systemd-system-update-generator">¶</a></dt><dd><p><a href="systemd-system-update-generator.html"><span class="citerefentry"><span class="refentrytitle">systemd-system-update-generator</span>(8)</span></a></p></dd><dt id="/usr/lib/systemd/system-preset/*.preset"><span class="term"><code class="filename">/usr/lib/systemd/system-preset/*.preset</code></span><a class="headerlink" title="Permalink to this term" href="#/usr/lib/systemd/system-preset/*.preset">¶</a></dt><dd><p><a href="systemd.preset.html"><span class="citerefentry"><span class="refentrytitle">systemd.preset</span>(5)</span></a></p></dd><dt id="/usr/lib/systemd/system-preset/50-gnome.preset"><span class="term"><code class="filename">/usr/lib/systemd/system-preset/50-gnome.preset</code></span><a class="headerlink" title="Permalink to this term" href="#/usr/lib/systemd/system-preset/50-gnome.preset">¶</a></dt><dd><p><a href="systemd.preset.html"><span class="citerefentry"><span class="refentrytitle">systemd.preset</span>(5)</span></a></p></dd><dt id="/usr/lib/systemd/system-preset/99-default.preset"><span class="term"><code class="filename">/usr/lib/systemd/system-preset/99-default.preset</code></span><a class="headerlink" title="Permalink to this term" href="#/usr/lib/systemd/system-preset/99-default.preset">¶</a></dt><dd><p><a href="systemd.preset.html"><span class="citerefentry"><span class="refentrytitle">systemd.preset</span>(5)</span></a></p></dd><dt id="/usr/lib/systemd/system-shutdown/"><span class="term"><code class="filename">/usr/lib/systemd/system-shutdown/</code></span><a class="headerlink" title="Permalink to this term" href="#/usr/lib/systemd/system-shutdown/">¶</a></dt><dd><p><a href="systemd-halt.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-halt.service</span>(8)</span></a></p></dd><dt id="/usr/lib/systemd/system-sleep/"><span class="term"><code class="filename">/usr/lib/systemd/system-sleep/</code></span><a class="headerlink" title="Permalink to this term" href="#/usr/lib/systemd/system-sleep/">¶</a></dt><dd><p><a href="systemd-suspend.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-suspend.service</span>(8)</span></a></p></dd><dt id="/usr/lib/systemd/systemd-activate"><span class="term"><span class="command"><strong>/usr/lib/systemd/systemd-activate</strong></span></span><a class="headerlink" title="Permalink to this term" href="#/usr/lib/systemd/systemd-activate">¶</a></dt><dd><p><a href="systemd-activate.html"><span class="citerefentry"><span class="refentrytitle">systemd-activate</span>(8)</span></a></p></dd><dt id="/usr/lib/systemd/systemd-backlight"><span class="term"><code class="filename">/usr/lib/systemd/systemd-backlight</code></span><a class="headerlink" title="Permalink to this term" href="#/usr/lib/systemd/systemd-backlight">¶</a></dt><dd><p><a href="systemd-backlight@.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-backlight@.service</span>(8)</span></a></p></dd><dt id="/usr/lib/systemd/systemd-binfmt"><span class="term"><code class="filename">/usr/lib/systemd/systemd-binfmt</code></span><a class="headerlink" title="Permalink to this term" href="#/usr/lib/systemd/systemd-binfmt">¶</a></dt><dd><p><a href="systemd-binfmt.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-binfmt.service</span>(8)</span></a></p></dd><dt id="/usr/lib/systemd/systemd-bootchart"><span class="term"><code class="filename">/usr/lib/systemd/systemd-bootchart</code></span><a class="headerlink" title="Permalink to this term" href="#/usr/lib/systemd/systemd-bootchart">¶</a></dt><dd><p><a href="systemd-bootchart.html"><span class="citerefentry"><span class="refentrytitle">systemd-bootchart</span>(1)</span></a></p></dd><dt id="/usr/lib/systemd/systemd-bus-proxyd"><span class="term"><span class="command"><strong>/usr/lib/systemd/systemd-bus-proxyd</strong></span></span><a class="headerlink" title="Permalink to this term" href="#/usr/lib/systemd/systemd-bus-proxyd">¶</a></dt><dd><p><a href="systemd-bus-proxyd.html"><span class="citerefentry"><span class="refentrytitle">systemd-bus-proxyd</span>(8)</span></a></p></dd><dt id="/usr/lib/systemd/systemd-cryptsetup"><span class="term"><code class="filename">/usr/lib/systemd/systemd-cryptsetup</code></span><a class="headerlink" title="Permalink to this term" href="#/usr/lib/systemd/systemd-cryptsetup">¶</a></dt><dd><p><a href="systemd-cryptsetup@.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-cryptsetup@.service</span>(8)</span></a></p></dd><dt id="/usr/lib/systemd/systemd-fsck"><span class="term"><code class="filename">/usr/lib/systemd/systemd-fsck</code></span><a class="headerlink" title="Permalink to this term" href="#/usr/lib/systemd/systemd-fsck">¶</a></dt><dd><p><a href="systemd-fsck@.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-fsck@.service</span>(8)</span></a></p></dd><dt id="/usr/lib/systemd/systemd-hostnamed"><span class="term"><code class="filename">/usr/lib/systemd/systemd-hostnamed</code></span><a class="headerlink" title="Permalink to this term" href="#/usr/lib/systemd/systemd-hostnamed">¶</a></dt><dd><p><a href="systemd-hostnamed.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-hostnamed.service</span>(8)</span></a></p></dd><dt id="/usr/lib/systemd/systemd-initctl"><span class="term"><code class="filename">/usr/lib/systemd/systemd-initctl</code></span><a class="headerlink" title="Permalink to this term" href="#/usr/lib/systemd/systemd-initctl">¶</a></dt><dd><p><a href="systemd-initctl.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-initctl.service</span>(8)</span></a></p></dd><dt id="/usr/lib/systemd/systemd-journal-gatewayd"><span class="term"><span class="command"><strong>/usr/lib/systemd/systemd-journal-gatewayd</strong></span></span><a class="headerlink" title="Permalink to this term" href="#/usr/lib/systemd/systemd-journal-gatewayd">¶</a></dt><dd><p><a href="systemd-journal-gatewayd.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-journal-gatewayd.service</span>(8)</span></a></p></dd><dt id="/usr/lib/systemd/systemd-journald"><span class="term"><code class="filename">/usr/lib/systemd/systemd-journald</code></span><a class="headerlink" title="Permalink to this term" href="#/usr/lib/systemd/systemd-journald">¶</a></dt><dd><p><a href="systemd-journald.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-journald.service</span>(8)</span></a></p></dd><dt id="/usr/lib/systemd/systemd-localed"><span class="term"><code class="filename">/usr/lib/systemd/systemd-localed</code></span><a class="headerlink" title="Permalink to this term" href="#/usr/lib/systemd/systemd-localed">¶</a></dt><dd><p><a href="systemd-localed.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-localed.service</span>(8)</span></a></p></dd><dt id="/usr/lib/systemd/systemd-logind"><span class="term"><code class="filename">/usr/lib/systemd/systemd-logind</code></span><a class="headerlink" title="Permalink to this term" href="#/usr/lib/systemd/systemd-logind">¶</a></dt><dd><p><a href="systemd-logind.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-logind.service</span>(8)</span></a></p></dd><dt id="/usr/lib/systemd/systemd-machined"><span class="term"><code class="filename">/usr/lib/systemd/systemd-machined</code></span><a class="headerlink" title="Permalink to this term" href="#/usr/lib/systemd/systemd-machined">¶</a></dt><dd><p><a href="systemd-machined.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-machined.service</span>(8)</span></a></p></dd><dt id="/usr/lib/systemd/systemd-modules-load"><span class="term"><code class="filename">/usr/lib/systemd/systemd-modules-load</code></span><a class="headerlink" title="Permalink to this term" href="#/usr/lib/systemd/systemd-modules-load">¶</a></dt><dd><p><a href="systemd-modules-load.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-modules-load.service</span>(8)</span></a></p></dd><dt id="/usr/lib/systemd/systemd-networkd"><span class="term"><code class="filename">/usr/lib/systemd/systemd-networkd</code></span><a class="headerlink" title="Permalink to this term" href="#/usr/lib/systemd/systemd-networkd">¶</a></dt><dd><p><a href="systemd-networkd.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-networkd.service</span>(8)</span></a></p></dd><dt id="/usr/lib/systemd/systemd-networkd-wait-online"><span class="term"><code class="filename">/usr/lib/systemd/systemd-networkd-wait-online</code></span><a class="headerlink" title="Permalink to this term" href="#/usr/lib/systemd/systemd-networkd-wait-online">¶</a></dt><dd><p><a href="systemd-networkd-wait-online.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-networkd-wait-online.service</span>(8)</span></a></p></dd><dt id="/usr/lib/systemd/systemd-quotacheck"><span class="term"><code class="filename">/usr/lib/systemd/systemd-quotacheck</code></span><a class="headerlink" title="Permalink to this term" href="#/usr/lib/systemd/systemd-quotacheck">¶</a></dt><dd><p><a href="systemd-quotacheck.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-quotacheck.service</span>(8)</span></a></p></dd><dt id="/usr/lib/systemd/systemd-random-seed"><span class="term"><code class="filename">/usr/lib/systemd/systemd-random-seed</code></span><a class="headerlink" title="Permalink to this term" href="#/usr/lib/systemd/systemd-random-seed">¶</a></dt><dd><p><a href="systemd-random-seed.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-random-seed.service</span>(8)</span></a></p></dd><dt id="/usr/lib/systemd/systemd-readahead/systemd-readahead"><span class="term"><span class="command"><strong>/usr/lib/systemd/systemd-readahead/systemd-readahead</strong></span></span><a class="headerlink" title="Permalink to this term" href="#/usr/lib/systemd/systemd-readahead/systemd-readahead">¶</a></dt><dd><p><a href="systemd-readahead-replay.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-readahead-replay.service</span>(8)</span></a></p></dd><dt id="/usr/lib/systemd/systemd-remount-fs"><span class="term"><code class="filename">/usr/lib/systemd/systemd-remount-fs</code></span><a class="headerlink" title="Permalink to this term" href="#/usr/lib/systemd/systemd-remount-fs">¶</a></dt><dd><p><a href="systemd-remount-fs.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-remount-fs.service</span>(8)</span></a></p></dd><dt id="/usr/lib/systemd/systemd-resolved"><span class="term"><code class="filename">/usr/lib/systemd/systemd-resolved</code></span><a class="headerlink" title="Permalink to this term" href="#/usr/lib/systemd/systemd-resolved">¶</a></dt><dd><p><a href="systemd-resolved.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-resolved.service</span>(8)</span></a></p></dd><dt id="/usr/lib/systemd/systemd-rfkill"><span class="term"><code class="filename">/usr/lib/systemd/systemd-rfkill</code></span><a class="headerlink" title="Permalink to this term" href="#/usr/lib/systemd/systemd-rfkill">¶</a></dt><dd><p><a href="systemd-rfkill@.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-rfkill@.service</span>(8)</span></a></p></dd><dt id="/usr/lib/systemd/systemd-shutdown"><span class="term"><code class="filename">/usr/lib/systemd/systemd-shutdown</code></span><a class="headerlink" title="Permalink to this term" href="#/usr/lib/systemd/systemd-shutdown">¶</a></dt><dd><p><a href="systemd-halt.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-halt.service</span>(8)</span></a></p></dd><dt id="/usr/lib/systemd/systemd-shutdownd"><span class="term"><code class="filename">/usr/lib/systemd/systemd-shutdownd</code></span><a class="headerlink" title="Permalink to this term" href="#/usr/lib/systemd/systemd-shutdownd">¶</a></dt><dd><p><a href="systemd-shutdownd.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-shutdownd.service</span>(8)</span></a></p></dd><dt id="/usr/lib/systemd/systemd-sleep"><span class="term"><code class="filename">/usr/lib/systemd/systemd-sleep</code></span><a class="headerlink" title="Permalink to this term" href="#/usr/lib/systemd/systemd-sleep">¶</a></dt><dd><p><a href="systemd-suspend.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-suspend.service</span>(8)</span></a></p></dd><dt id="/usr/lib/systemd/systemd-sysctl"><span class="term"><code class="filename">/usr/lib/systemd/systemd-sysctl</code></span><a class="headerlink" title="Permalink to this term" href="#/usr/lib/systemd/systemd-sysctl">¶</a></dt><dd><p><a href="systemd-sysctl.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-sysctl.service</span>(8)</span></a></p></dd><dt id="/usr/lib/systemd/systemd-timedated"><span class="term"><code class="filename">/usr/lib/systemd/systemd-timedated</code></span><a class="headerlink" title="Permalink to this term" href="#/usr/lib/systemd/systemd-timedated">¶</a></dt><dd><p><a href="systemd-timedated.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-timedated.service</span>(8)</span></a></p></dd><dt id="/usr/lib/systemd/systemd-timesyncd"><span class="term"><code class="filename">/usr/lib/systemd/systemd-timesyncd</code></span><a class="headerlink" title="Permalink to this term" href="#/usr/lib/systemd/systemd-timesyncd">¶</a></dt><dd><p><a href="systemd-timesyncd.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-timesyncd.service</span>(8)</span></a></p></dd><dt id="/usr/lib/systemd/systemd-udevd"><span class="term"><span class="command"><strong>/usr/lib/systemd/systemd-udevd</strong></span></span><a class="headerlink" title="Permalink to this term" href="#/usr/lib/systemd/systemd-udevd">¶</a></dt><dd><p><a href="systemd-udevd.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-udevd.service</span>(8)</span></a></p></dd><dt id="/usr/lib/systemd/systemd-update-utmp"><span class="term"><code class="filename">/usr/lib/systemd/systemd-update-utmp</code></span><a class="headerlink" title="Permalink to this term" href="#/usr/lib/systemd/systemd-update-utmp">¶</a></dt><dd><p><a href="systemd-update-utmp.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-update-utmp.service</span>(8)</span></a></p></dd><dt id="/usr/lib/systemd/systemd-user-sessions"><span class="term"><code class="filename">/usr/lib/systemd/systemd-user-sessions</code></span><a class="headerlink" title="Permalink to this term" href="#/usr/lib/systemd/systemd-user-sessions">¶</a></dt><dd><p><a href="systemd-user-sessions.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-user-sessions.service</span>(8)</span></a></p></dd><dt id="/usr/lib/systemd/systemd-vconsole-setup"><span class="term"><code class="filename">/usr/lib/systemd/systemd-vconsole-setup</code></span><a class="headerlink" title="Permalink to this term" href="#/usr/lib/systemd/systemd-vconsole-setup">¶</a></dt><dd><p><a href="systemd-vconsole-setup.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-vconsole-setup.service</span>(8)</span></a></p></dd><dt id="/usr/lib/systemd/user/"><span class="term"><code class="filename">/usr/lib/systemd/user/</code></span><a class="headerlink" title="Permalink to this term" href="#/usr/lib/systemd/user/">¶</a></dt><dd><p><a href="systemd.unit.html"><span class="citerefentry"><span class="refentrytitle">systemd.unit</span>(5)</span></a></p></dd><dt id="/usr/lib/systemd/user-preset/*.preset"><span class="term"><code class="filename">/usr/lib/systemd/user-preset/*.preset</code></span><a class="headerlink" title="Permalink to this term" href="#/usr/lib/systemd/user-preset/*.preset">¶</a></dt><dd><p><a href="systemd.preset.html"><span class="citerefentry"><span class="refentrytitle">systemd.preset</span>(5)</span></a></p></dd><dt id="/usr/lib/tmpfiles.d"><span class="term"><code class="filename">/usr/lib/tmpfiles.d</code></span><a class="headerlink" title="Permalink to this term" href="#/usr/lib/tmpfiles.d">¶</a></dt><dd><p><a href="tmpfiles.d.html"><span class="citerefentry"><span class="refentrytitle">tmpfiles.d</span>(5)</span></a></p></dd><dt id="/usr/lib/tmpfiles.d/*.conf"><span class="term"><code class="filename">/usr/lib/tmpfiles.d/*.conf</code></span><a class="headerlink" title="Permalink to this term" href="#/usr/lib/tmpfiles.d/*.conf">¶</a></dt><dd><p><a href="tmpfiles.d.html"><span class="citerefentry"><span class="refentrytitle">tmpfiles.d</span>(5)</span></a></p></dd><dt id="/usr/lib/udev"><span class="term"><code class="filename">/usr/lib/udev</code></span><a class="headerlink" title="Permalink to this term" href="#/usr/lib/udev">¶</a></dt><dd><p><a href="udev.html"><span class="citerefentry"><span class="refentrytitle">udev</span>(7)</span></a></p></dd><dt id="/usr/lib/udev/hwdb.d"><span class="term"><code class="filename">/usr/lib/udev/hwdb.d</code></span><a class="headerlink" title="Permalink to this term" href="#/usr/lib/udev/hwdb.d">¶</a></dt><dd><p><a href="udev.html"><span class="citerefentry"><span class="refentrytitle">udev</span>(7)</span></a></p></dd><dt id="/usr/lib/udev/rules.d"><span class="term"><code class="filename">/usr/lib/udev/rules.d</code></span><a class="headerlink" title="Permalink to this term" href="#/usr/lib/udev/rules.d">¶</a></dt><dd><p><a href="udev.html"><span class="citerefentry"><span class="refentrytitle">udev</span>(7)</span></a></p></dd><dt id="/usr/local/bin"><span class="term"><code class="filename">/usr/local/bin</code></span><a class="headerlink" title="Permalink to this term" href="#/usr/local/bin">¶</a></dt><dd><p><a href="systemd.exec.html"><span class="citerefentry"><span class="refentrytitle">systemd.exec</span>(5)</span></a></p></dd><dt id="/usr/local/lib/systemd/system"><span class="term"><code class="filename">/usr/local/lib/systemd/system</code></span><a class="headerlink" title="Permalink to this term" href="#/usr/local/lib/systemd/system">¶</a></dt><dd><p><a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a></p></dd><dt id="/usr/local/sbin"><span class="term"><code class="filename">/usr/local/sbin</code></span><a class="headerlink" title="Permalink to this term" href="#/usr/local/sbin">¶</a></dt><dd><p><a href="systemd.exec.html"><span class="citerefentry"><span class="refentrytitle">systemd.exec</span>(5)</span></a></p></dd><dt id="/usr/sbin"><span class="term"><code class="filename">/usr/sbin</code></span><a class="headerlink" title="Permalink to this term" href="#/usr/sbin">¶</a></dt><dd><p><a href="systemd.exec.html"><span class="citerefentry"><span class="refentrytitle">systemd.exec</span>(5)</span></a></p></dd><dt id="/usr/share/zoneinfo/"><span class="term"><code class="filename">/usr/share/zoneinfo/</code></span><a class="headerlink" title="Permalink to this term" href="#/usr/share/zoneinfo/">¶</a></dt><dd><p><a href="localtime.html"><span class="citerefentry"><span class="refentrytitle">localtime</span>(5)</span></a></p></dd><dt id="/var"><span class="term"><code class="filename">/var</code></span><a class="headerlink" title="Permalink to this term" href="#/var">¶</a></dt><dd><p><a href="journald.conf.html"><span class="citerefentry"><span class="refentrytitle">journald.conf</span>(5)</span></a>, <a href="systemd-journald.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-journald.service</span>(8)</span></a>, <a href="systemd-nspawn.html"><span class="citerefentry"><span class="refentrytitle">systemd-nspawn</span>(1)</span></a>, <a href="tmpfiles.d.html"><span class="citerefentry"><span class="refentrytitle">tmpfiles.d</span>(5)</span></a></p></dd><dt id="/var/lib/dbus/machine-id"><span class="term"><code class="filename">/var/lib/dbus/machine-id</code></span><a class="headerlink" title="Permalink to this term" href="#/var/lib/dbus/machine-id">¶</a></dt><dd><p><a href="machine-id.html"><span class="citerefentry"><span class="refentrytitle">machine-id</span>(5)</span></a></p></dd><dt id="/var/lib/systemd/backlight/"><span class="term"><code class="filename">/var/lib/systemd/backlight/</code></span><a class="headerlink" title="Permalink to this term" href="#/var/lib/systemd/backlight/">¶</a></dt><dd><p><a href="systemd-backlight@.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-backlight@.service</span>(8)</span></a></p></dd><dt id="/var/lib/systemd/random-seed"><span class="term"><code class="filename">/var/lib/systemd/random-seed</code></span><a class="headerlink" title="Permalink to this term" href="#/var/lib/systemd/random-seed">¶</a></dt><dd><p><a href="systemd-random-seed.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-random-seed.service</span>(8)</span></a></p></dd><dt id="/var/lib/systemd/rfkill/"><span class="term"><code class="filename">/var/lib/systemd/rfkill/</code></span><a class="headerlink" title="Permalink to this term" href="#/var/lib/systemd/rfkill/">¶</a></dt><dd><p><a href="systemd-rfkill@.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-rfkill@.service</span>(8)</span></a></p></dd><dt id="/var/log/journal"><span class="term"><code class="filename">/var/log/journal</code></span><a class="headerlink" title="Permalink to this term" href="#/var/log/journal">¶</a></dt><dd><p><a href="journald.conf.html"><span class="citerefentry"><span class="refentrytitle">journald.conf</span>(5)</span></a>, <a href="systemd-journal-remote.html"><span class="citerefentry"><span class="refentrytitle">systemd-journal-remote</span>(8)</span></a>, <a href="systemd-journald.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-journald.service</span>(8)</span></a>, <a href="systemd-nspawn.html"><span class="citerefentry"><span class="refentrytitle">systemd-nspawn</span>(1)</span></a></p></dd><dt id="/var/log/journal/some.host/remote-some~host.journal"><span class="term"><code class="filename">/var/log/journal/some.host/remote-some~host.journal</code></span><a class="headerlink" title="Permalink to this term" href="#/var/log/journal/some.host/remote-some~host.journal">¶</a></dt><dd><p><a href="systemd-journal-remote.html"><span class="citerefentry"><span class="refentrytitle">systemd-journal-remote</span>(8)</span></a></p></dd><dt id="/var/run"><span class="term"><code class="filename">/var/run</code></span><a class="headerlink" title="Permalink to this term" href="#/var/run">¶</a></dt><dd><p><a href="tmpfiles.d.html"><span class="citerefentry"><span class="refentrytitle">tmpfiles.d</span>(5)</span></a></p></dd><dt id="/var/run/dbus/system_bus_socket"><span class="term"><code class="filename">/var/run/dbus/system_bus_socket</code></span><a class="headerlink" title="Permalink to this term" href="#/var/run/dbus/system_bus_socket">¶</a></dt><dd><p><a href="systemd-bus-proxyd@.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-bus-proxyd@.service</span>(8)</span></a></p></dd><dt id="/var/run/utmp"><span class="term"><code class="filename">/var/run/utmp</code></span><a class="headerlink" title="Permalink to this term" href="#/var/run/utmp">¶</a></dt><dd><p><a href="runlevel.html"><span class="citerefentry"><span class="refentrytitle">runlevel</span>(8)</span></a></p></dd><dt id="/var/tmp"><span class="term"><code class="filename">/var/tmp</code></span><a class="headerlink" title="Permalink to this term" href="#/var/tmp">¶</a></dt><dd><p><a href="systemd.exec.html"><span class="citerefentry"><span class="refentrytitle">systemd.exec</span>(5)</span></a>, <a href="tmpfiles.d.html"><span class="citerefentry"><span class="refentrytitle">tmpfiles.d</span>(5)</span></a></p></dd><dt id="automount.automount"><span class="term"><code class="filename"><em class="replaceable"><code>automount</code></em>.automount</code></span><a class="headerlink" title="Permalink to this term" href="#automount.automount">¶</a></dt><dd><p><a href="systemd.automount.html"><span class="citerefentry"><span class="refentrytitle">systemd.automount</span>(5)</span></a>, <a href="systemd.unit.html"><span class="citerefentry"><span class="refentrytitle">systemd.unit</span>(5)</span></a></p></dd><dt id="basic.target"><span class="term"><code class="filename">basic.target</code></span><a class="headerlink" title="Permalink to this term" href="#basic.target">¶</a></dt><dd><p><a href="systemd.special.html"><span class="citerefentry"><span class="refentrytitle">systemd.special</span>(7)</span></a></p></dd><dt id="bluetooth.target"><span class="term"><code class="filename">bluetooth.target</code></span><a class="headerlink" title="Permalink to this term" href="#bluetooth.target">¶</a></dt><dd><p><a href="systemd.special.html"><span class="citerefentry"><span class="refentrytitle">systemd.special</span>(7)</span></a></p></dd><dt id="bootctl"><span class="term"><span class="command"><strong>bootctl</strong></span></span><a class="headerlink" title="Permalink to this term" href="#bootctl">¶</a></dt><dd><p><a href="bootctl.html"><span class="citerefentry"><span class="refentrytitle">bootctl</span>(1)</span></a></p></dd><dt id="busctl"><span class="term"><span class="command"><strong>busctl</strong></span></span><a class="headerlink" title="Permalink to this term" href="#busctl">¶</a></dt><dd><p><a href="busctl.html"><span class="citerefentry"><span class="refentrytitle">busctl</span>(1)</span></a></p></dd><dt id="cryptsetup.target"><span class="term"><code class="filename">cryptsetup.target</code></span><a class="headerlink" title="Permalink to this term" href="#cryptsetup.target">¶</a></dt><dd><p><a href="systemd.special.html"><span class="citerefentry"><span class="refentrytitle">systemd.special</span>(7)</span></a></p></dd><dt id="ctrl-alt-del.target"><span class="term"><code class="filename">ctrl-alt-del.target</code></span><a class="headerlink" title="Permalink to this term" href="#ctrl-alt-del.target">¶</a></dt><dd><p><a href="systemd.special.html"><span class="citerefentry"><span class="refentrytitle">systemd.special</span>(7)</span></a></p></dd><dt id="dbus.service"><span class="term"><code class="filename">dbus.service</code></span><a class="headerlink" title="Permalink to this term" href="#dbus.service">¶</a></dt><dd><p><a href="systemd.special.html"><span class="citerefentry"><span class="refentrytitle">systemd.special</span>(7)</span></a></p></dd><dt id="dbus.socket"><span class="term"><code class="filename">dbus.socket</code></span><a class="headerlink" title="Permalink to this term" href="#dbus.socket">¶</a></dt><dd><p><a href="systemd.special.html"><span class="citerefentry"><span class="refentrytitle">systemd.special</span>(7)</span></a></p></dd><dt id="default.target"><span class="term"><code class="filename">default.target</code></span><a class="headerlink" title="Permalink to this term" href="#default.target">¶</a></dt><dd><p><a href="systemd.special.html"><span class="citerefentry"><span class="refentrytitle">systemd.special</span>(7)</span></a></p></dd><dt id="device.device"><span class="term"><code class="filename"><em class="replaceable"><code>device</code></em>.device</code></span><a class="headerlink" title="Permalink to this term" href="#device.device">¶</a></dt><dd><p><a href="systemd.device.html"><span class="citerefentry"><span class="refentrytitle">systemd.device</span>(5)</span></a>, <a href="systemd.unit.html"><span class="citerefentry"><span class="refentrytitle">systemd.unit</span>(5)</span></a></p></dd><dt id="display-manager.service"><span class="term"><code class="filename">display-manager.service</code></span><a class="headerlink" title="Permalink to this term" href="#display-manager.service">¶</a></dt><dd><p><a href="systemd.special.html"><span class="citerefentry"><span class="refentrytitle">systemd.special</span>(7)</span></a></p></dd><dt id="emergency.target"><span class="term"><code class="filename">emergency.target</code></span><a class="headerlink" title="Permalink to this term" href="#emergency.target">¶</a></dt><dd><p><a href="systemd.special.html"><span class="citerefentry"><span class="refentrytitle">systemd.special</span>(7)</span></a></p></dd><dt id="exit.target"><span class="term"><code class="filename">exit.target</code></span><a class="headerlink" title="Permalink to this term" href="#exit.target">¶</a></dt><dd><p><a href="systemd.special.html"><span class="citerefentry"><span class="refentrytitle">systemd.special</span>(7)</span></a></p></dd><dt id="final.target"><span class="term"><code class="filename">final.target</code></span><a class="headerlink" title="Permalink to this term" href="#final.target">¶</a></dt><dd><p><a href="systemd.special.html"><span class="citerefentry"><span class="refentrytitle">systemd.special</span>(7)</span></a></p></dd><dt id="getty.target"><span class="term"><code class="filename">getty.target</code></span><a class="headerlink" title="Permalink to this term" href="#getty.target">¶</a></dt><dd><p><a href="systemd.special.html"><span class="citerefentry"><span class="refentrytitle">systemd.special</span>(7)</span></a></p></dd><dt id="graphical.target"><span class="term"><code class="filename">graphical.target</code></span><a class="headerlink" title="Permalink to this term" href="#graphical.target">¶</a></dt><dd><p><a href="systemd.special.html"><span class="citerefentry"><span class="refentrytitle">systemd.special</span>(7)</span></a></p></dd><dt id="halt"><span class="term"><span class="command"><strong>halt</strong></span></span><a class="headerlink" title="Permalink to this term" href="#halt">¶</a></dt><dd><p><a href="halt.html"><span class="citerefentry"><span class="refentrytitle">halt</span>(8)</span></a></p></dd><dt id="halt.target"><span class="term"><code class="filename">halt.target</code></span><a class="headerlink" title="Permalink to this term" href="#halt.target">¶</a></dt><dd><p><a href="systemd.special.html"><span class="citerefentry"><span class="refentrytitle">systemd.special</span>(7)</span></a></p></dd><dt id="hibernate.target"><span class="term"><code class="filename">hibernate.target</code></span><a class="headerlink" title="Permalink to this term" href="#hibernate.target">¶</a></dt><dd><p><a href="systemd.special.html"><span class="citerefentry"><span class="refentrytitle">systemd.special</span>(7)</span></a></p></dd><dt id="hostnamectl"><span class="term"><span class="command"><strong>hostnamectl</strong></span></span><a class="headerlink" title="Permalink to this term" href="#hostnamectl">¶</a></dt><dd><p><a href="hostnamectl.html"><span class="citerefentry"><span class="refentrytitle">hostnamectl</span>(1)</span></a></p></dd><dt id="hybrid-sleep.target"><span class="term"><code class="filename">hybrid-sleep.target</code></span><a class="headerlink" title="Permalink to this term" href="#hybrid-sleep.target">¶</a></dt><dd><p><a href="systemd.special.html"><span class="citerefentry"><span class="refentrytitle">systemd.special</span>(7)</span></a></p></dd><dt id="init"><span class="term"><span class="command"><strong>init</strong></span></span><a class="headerlink" title="Permalink to this term" href="#init">¶</a></dt><dd><p><a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a></p></dd><dt id="initrd-fs.target"><span class="term"><code class="filename">initrd-fs.target</code></span><a class="headerlink" title="Permalink to this term" href="#initrd-fs.target">¶</a></dt><dd><p><a href="systemd.special.html"><span class="citerefentry"><span class="refentrytitle">systemd.special</span>(7)</span></a></p></dd><dt id="initrd-root-fs.target"><span class="term"><code class="filename">initrd-root-fs.target</code></span><a class="headerlink" title="Permalink to this term" href="#initrd-root-fs.target">¶</a></dt><dd><p><a href="systemd.special.html"><span class="citerefentry"><span class="refentrytitle">systemd.special</span>(7)</span></a></p></dd><dt id="journalctl"><span class="term"><span class="command"><strong>journalctl</strong></span></span><a class="headerlink" title="Permalink to this term" href="#journalctl">¶</a></dt><dd><p><a href="journalctl.html"><span class="citerefentry"><span class="refentrytitle">journalctl</span>(1)</span></a></p></dd><dt id="kbrequest.target"><span class="term"><code class="filename">kbrequest.target</code></span><a class="headerlink" title="Permalink to this term" href="#kbrequest.target">¶</a></dt><dd><p><a href="systemd.special.html"><span class="citerefentry"><span class="refentrytitle">systemd.special</span>(7)</span></a></p></dd><dt id="kernel-install"><span class="term"><span class="command"><strong>kernel-install</strong></span></span><a class="headerlink" title="Permalink to this term" href="#kernel-install">¶</a></dt><dd><p><a href="kernel-install.html"><span class="citerefentry"><span class="refentrytitle">kernel-install</span>(8)</span></a></p></dd><dt id="kexec.target"><span class="term"><code class="filename">kexec.target</code></span><a class="headerlink" title="Permalink to this term" href="#kexec.target">¶</a></dt><dd><p><a href="systemd.special.html"><span class="citerefentry"><span class="refentrytitle">systemd.special</span>(7)</span></a></p></dd><dt id="link.link"><span class="term"><code class="filename"><em class="replaceable"><code>link</code></em>.link</code></span><a class="headerlink" title="Permalink to this term" href="#link.link">¶</a></dt><dd><p><a href="systemd.link.html"><span class="citerefentry"><span class="refentrytitle">systemd.link</span>(5)</span></a></p></dd><dt id="local-fs-pre.target"><span class="term"><code class="filename">local-fs-pre.target</code></span><a class="headerlink" title="Permalink to this term" href="#local-fs-pre.target">¶</a></dt><dd><p><a href="systemd.special.html"><span class="citerefentry"><span class="refentrytitle">systemd.special</span>(7)</span></a></p></dd><dt id="local-fs.target"><span class="term"><code class="filename">local-fs.target</code></span><a class="headerlink" title="Permalink to this term" href="#local-fs.target">¶</a></dt><dd><p><a href="systemd.special.html"><span class="citerefentry"><span class="refentrytitle">systemd.special</span>(7)</span></a></p></dd><dt id="localectl"><span class="term"><span class="command"><strong>localectl</strong></span></span><a class="headerlink" title="Permalink to this term" href="#localectl">¶</a></dt><dd><p><a href="localectl.html"><span class="citerefentry"><span class="refentrytitle">localectl</span>(1)</span></a></p></dd><dt id="loginctl"><span class="term"><span class="command"><strong>loginctl</strong></span></span><a class="headerlink" title="Permalink to this term" href="#loginctl">¶</a></dt><dd><p><a href="loginctl.html"><span class="citerefentry"><span class="refentrytitle">loginctl</span>(1)</span></a></p></dd><dt id="machine.slice"><span class="term"><code class="filename">machine.slice</code></span><a class="headerlink" title="Permalink to this term" href="#machine.slice">¶</a></dt><dd><p><a href="systemd.special.html"><span class="citerefentry"><span class="refentrytitle">systemd.special</span>(7)</span></a></p></dd><dt id="machinectl"><span class="term"><span class="command"><strong>machinectl</strong></span></span><a class="headerlink" title="Permalink to this term" href="#machinectl">¶</a></dt><dd><p><a href="machinectl.html"><span class="citerefentry"><span class="refentrytitle">machinectl</span>(1)</span></a></p></dd><dt id="mount.mount"><span class="term"><code class="filename"><em class="replaceable"><code>mount</code></em>.mount</code></span><a class="headerlink" title="Permalink to this term" href="#mount.mount">¶</a></dt><dd><p><a href="systemd.exec.html"><span class="citerefentry"><span class="refentrytitle">systemd.exec</span>(5)</span></a>, <a href="systemd.kill.html"><span class="citerefentry"><span class="refentrytitle">systemd.kill</span>(5)</span></a>, <a href="systemd.mount.html"><span class="citerefentry"><span class="refentrytitle">systemd.mount</span>(5)</span></a>, <a href="systemd.resource-control.html"><span class="citerefentry"><span class="refentrytitle">systemd.resource-control</span>(5)</span></a>, <a href="systemd.unit.html"><span class="citerefentry"><span class="refentrytitle">systemd.unit</span>(5)</span></a></p></dd><dt id="multi-user.target"><span class="term"><code class="filename">multi-user.target</code></span><a class="headerlink" title="Permalink to this term" href="#multi-user.target">¶</a></dt><dd><p><a href="systemd.special.html"><span class="citerefentry"><span class="refentrytitle">systemd.special</span>(7)</span></a></p></dd><dt id="netdev.netdev"><span class="term"><code class="filename"><em class="replaceable"><code>netdev</code></em>.netdev</code></span><a class="headerlink" title="Permalink to this term" href="#netdev.netdev">¶</a></dt><dd><p><a href="systemd.netdev.html"><span class="citerefentry"><span class="refentrytitle">systemd.netdev</span>(5)</span></a></p></dd><dt id="network.network"><span class="term"><code class="filename"><em class="replaceable"><code>network</code></em>.network</code></span><a class="headerlink" title="Permalink to this term" href="#network.network">¶</a></dt><dd><p><a href="systemd.network.html"><span class="citerefentry"><span class="refentrytitle">systemd.network</span>(5)</span></a></p></dd><dt id="network-online.target"><span class="term"><code class="filename">network-online.target</code></span><a class="headerlink" title="Permalink to this term" href="#network-online.target">¶</a></dt><dd><p><a href="systemd.special.html"><span class="citerefentry"><span class="refentrytitle">systemd.special</span>(7)</span></a></p></dd><dt id="network-pre.target"><span class="term"><code class="filename">network-pre.target</code></span><a class="headerlink" title="Permalink to this term" href="#network-pre.target">¶</a></dt><dd><p><a href="systemd.special.html"><span class="citerefentry"><span class="refentrytitle">systemd.special</span>(7)</span></a></p></dd><dt id="network.target"><span class="term"><code class="filename">network.target</code></span><a class="headerlink" title="Permalink to this term" href="#network.target">¶</a></dt><dd><p><a href="systemd.special.html"><span class="citerefentry"><span class="refentrytitle">systemd.special</span>(7)</span></a></p></dd><dt id="nss-lookup.target"><span class="term"><code class="filename">nss-lookup.target</code></span><a class="headerlink" title="Permalink to this term" href="#nss-lookup.target">¶</a></dt><dd><p><a href="systemd.special.html"><span class="citerefentry"><span class="refentrytitle">systemd.special</span>(7)</span></a></p></dd><dt id="nss-myhostname.la"><span class="term"><code class="filename">nss-myhostname.la</code></span><a class="headerlink" title="Permalink to this term" href="#nss-myhostname.la">¶</a></dt><dd><p><a href="nss-myhostname.html"><span class="citerefentry"><span class="refentrytitle">nss-myhostname</span>(8)</span></a></p></dd><dt id="nss-user-lookup.target"><span class="term"><code class="filename">nss-user-lookup.target</code></span><a class="headerlink" title="Permalink to this term" href="#nss-user-lookup.target">¶</a></dt><dd><p><a href="systemd.special.html"><span class="citerefentry"><span class="refentrytitle">systemd.special</span>(7)</span></a></p></dd><dt id="pam_systemd.so"><span class="term"><code class="filename">pam_systemd.so</code></span><a class="headerlink" title="Permalink to this term" href="#pam_systemd.so">¶</a></dt><dd><p><a href="pam_systemd.html"><span class="citerefentry"><span class="refentrytitle">pam_systemd</span>(8)</span></a></p></dd><dt id="path.path"><span class="term"><code class="filename"><em class="replaceable"><code>path</code></em>.path</code></span><a class="headerlink" title="Permalink to this term" href="#path.path">¶</a></dt><dd><p><a href="systemd.path.html"><span class="citerefentry"><span class="refentrytitle">systemd.path</span>(5)</span></a>, <a href="systemd.unit.html"><span class="citerefentry"><span class="refentrytitle">systemd.unit</span>(5)</span></a></p></dd><dt id="paths.target"><span class="term"><code class="filename">paths.target</code></span><a class="headerlink" title="Permalink to this term" href="#paths.target">¶</a></dt><dd><p><a href="systemd.special.html"><span class="citerefentry"><span class="refentrytitle">systemd.special</span>(7)</span></a></p></dd><dt id="pkg-config"><span class="term"><span class="command"><strong>pkg-config</strong></span></span><a class="headerlink" title="Permalink to this term" href="#pkg-config">¶</a></dt><dd><p><a href="sd-daemon.html"><span class="citerefentry"><span class="refentrytitle">sd-daemon</span>(3)</span></a>, <a href="sd-id128.html"><span class="citerefentry"><span class="refentrytitle">sd-id128</span>(3)</span></a>, <a href="sd-journal.html"><span class="citerefentry"><span class="refentrytitle">sd-journal</span>(3)</span></a>, <a href="sd-login.html"><span class="citerefentry"><span class="refentrytitle">sd-login</span>(3)</span></a></p></dd><dt id="poweroff"><span class="term"><span class="command"><strong>poweroff</strong></span></span><a class="headerlink" title="Permalink to this term" href="#poweroff">¶</a></dt><dd><p><a href="halt.html"><span class="citerefentry"><span class="refentrytitle">halt</span>(8)</span></a></p></dd><dt id="poweroff.target"><span class="term"><code class="filename">poweroff.target</code></span><a class="headerlink" title="Permalink to this term" href="#poweroff.target">¶</a></dt><dd><p><a href="systemd.special.html"><span class="citerefentry"><span class="refentrytitle">systemd.special</span>(7)</span></a></p></dd><dt id="printer.target"><span class="term"><code class="filename">printer.target</code></span><a class="headerlink" title="Permalink to this term" href="#printer.target">¶</a></dt><dd><p><a href="systemd.special.html"><span class="citerefentry"><span class="refentrytitle">systemd.special</span>(7)</span></a></p></dd><dt id="reboot"><span class="term"><span class="command"><strong>reboot</strong></span></span><a class="headerlink" title="Permalink to this term" href="#reboot">¶</a></dt><dd><p><a href="halt.html"><span class="citerefentry"><span class="refentrytitle">halt</span>(8)</span></a></p></dd><dt id="reboot.target"><span class="term"><code class="filename">reboot.target</code></span><a class="headerlink" title="Permalink to this term" href="#reboot.target">¶</a></dt><dd><p><a href="systemd.special.html"><span class="citerefentry"><span class="refentrytitle">systemd.special</span>(7)</span></a></p></dd><dt id="remote-fs-pre.target"><span class="term"><code class="filename">remote-fs-pre.target</code></span><a class="headerlink" title="Permalink to this term" href="#remote-fs-pre.target">¶</a></dt><dd><p><a href="systemd.special.html"><span class="citerefentry"><span class="refentrytitle">systemd.special</span>(7)</span></a></p></dd><dt id="remote-fs.target"><span class="term"><code class="filename">remote-fs.target</code></span><a class="headerlink" title="Permalink to this term" href="#remote-fs.target">¶</a></dt><dd><p><a href="systemd.special.html"><span class="citerefentry"><span class="refentrytitle">systemd.special</span>(7)</span></a></p></dd><dt id="rescue.target"><span class="term"><code class="filename">rescue.target</code></span><a class="headerlink" title="Permalink to this term" href="#rescue.target">¶</a></dt><dd><p><a href="systemd.special.html"><span class="citerefentry"><span class="refentrytitle">systemd.special</span>(7)</span></a></p></dd><dt id="rpcbind.target"><span class="term"><code class="filename">rpcbind.target</code></span><a class="headerlink" title="Permalink to this term" href="#rpcbind.target">¶</a></dt><dd><p><a href="systemd.special.html"><span class="citerefentry"><span class="refentrytitle">systemd.special</span>(7)</span></a></p></dd><dt id="runlevel"><span class="term"><span class="command"><strong>runlevel</strong></span></span><a class="headerlink" title="Permalink to this term" href="#runlevel">¶</a></dt><dd><p><a href="runlevel.html"><span class="citerefentry"><span class="refentrytitle">runlevel</span>(8)</span></a></p></dd><dt id="runlevel2.target"><span class="term"><code class="filename">runlevel2.target</code></span><a class="headerlink" title="Permalink to this term" href="#runlevel2.target">¶</a></dt><dd><p><a href="systemd.special.html"><span class="citerefentry"><span class="refentrytitle">systemd.special</span>(7)</span></a></p></dd><dt id="runlevel3.target"><span class="term"><code class="filename">runlevel3.target</code></span><a class="headerlink" title="Permalink to this term" href="#runlevel3.target">¶</a></dt><dd><p><a href="systemd.special.html"><span class="citerefentry"><span class="refentrytitle">systemd.special</span>(7)</span></a></p></dd><dt id="runlevel4.target"><span class="term"><code class="filename">runlevel4.target</code></span><a class="headerlink" title="Permalink to this term" href="#runlevel4.target">¶</a></dt><dd><p><a href="systemd.special.html"><span class="citerefentry"><span class="refentrytitle">systemd.special</span>(7)</span></a></p></dd><dt id="runlevel5.target"><span class="term"><code class="filename">runlevel5.target</code></span><a class="headerlink" title="Permalink to this term" href="#runlevel5.target">¶</a></dt><dd><p><a href="systemd.special.html"><span class="citerefentry"><span class="refentrytitle">systemd.special</span>(7)</span></a></p></dd><dt id="scope.scope"><span class="term"><code class="filename"><em class="replaceable"><code>scope</code></em>.scope</code></span><a class="headerlink" title="Permalink to this term" href="#scope.scope">¶</a></dt><dd><p><a href="systemd.kill.html"><span class="citerefentry"><span class="refentrytitle">systemd.kill</span>(5)</span></a>, <a href="systemd.resource-control.html"><span class="citerefentry"><span class="refentrytitle">systemd.resource-control</span>(5)</span></a>, <a href="systemd.scope.html"><span class="citerefentry"><span class="refentrytitle">systemd.scope</span>(5)</span></a>, <a href="systemd.unit.html"><span class="citerefentry"><span class="refentrytitle">systemd.unit</span>(5)</span></a></p></dd><dt id="service.service"><span class="term"><code class="filename"><em class="replaceable"><code>service</code></em>.service</code></span><a class="headerlink" title="Permalink to this term" href="#service.service">¶</a></dt><dd><p><a href="systemd.exec.html"><span class="citerefentry"><span class="refentrytitle">systemd.exec</span>(5)</span></a>, <a href="systemd.kill.html"><span class="citerefentry"><span class="refentrytitle">systemd.kill</span>(5)</span></a>, <a href="systemd.resource-control.html"><span class="citerefentry"><span class="refentrytitle">systemd.resource-control</span>(5)</span></a>, <a href="systemd.service.html"><span class="citerefentry"><span class="refentrytitle">systemd.service</span>(5)</span></a>, <a href="systemd.unit.html"><span class="citerefentry"><span class="refentrytitle">systemd.unit</span>(5)</span></a></p></dd><dt id="shutdown"><span class="term"><span class="command"><strong>shutdown</strong></span></span><a class="headerlink" title="Permalink to this term" href="#shutdown">¶</a></dt><dd><p><a href="shutdown.html"><span class="citerefentry"><span class="refentrytitle">shutdown</span>(8)</span></a></p></dd><dt id="shutdown.target"><span class="term"><code class="filename">shutdown.target</code></span><a class="headerlink" title="Permalink to this term" href="#shutdown.target">¶</a></dt><dd><p><a href="systemd.special.html"><span class="citerefentry"><span class="refentrytitle">systemd.special</span>(7)</span></a></p></dd><dt id="sigpwr.target"><span class="term"><code class="filename">sigpwr.target</code></span><a class="headerlink" title="Permalink to this term" href="#sigpwr.target">¶</a></dt><dd><p><a href="systemd.special.html"><span class="citerefentry"><span class="refentrytitle">systemd.special</span>(7)</span></a></p></dd><dt id="sleep.target"><span class="term"><code class="filename">sleep.target</code></span><a class="headerlink" title="Permalink to this term" href="#sleep.target">¶</a></dt><dd><p><a href="systemd.special.html"><span class="citerefentry"><span class="refentrytitle">systemd.special</span>(7)</span></a></p></dd><dt id="slice.slice"><span class="term"><code class="filename"><em class="replaceable"><code>slice</code></em>.slice</code></span><a class="headerlink" title="Permalink to this term" href="#slice.slice">¶</a></dt><dd><p><a href="systemd.resource-control.html"><span class="citerefentry"><span class="refentrytitle">systemd.resource-control</span>(5)</span></a>, <a href="systemd.slice.html"><span class="citerefentry"><span class="refentrytitle">systemd.slice</span>(5)</span></a>, <a href="systemd.unit.html"><span class="citerefentry"><span class="refentrytitle">systemd.unit</span>(5)</span></a></p></dd><dt id="smartcard.target"><span class="term"><code class="filename">smartcard.target</code></span><a class="headerlink" title="Permalink to this term" href="#smartcard.target">¶</a></dt><dd><p><a href="systemd.special.html"><span class="citerefentry"><span class="refentrytitle">systemd.special</span>(7)</span></a></p></dd><dt id="snapshot.snapshot"><span class="term"><code class="filename"><em class="replaceable"><code>snapshot</code></em>.snapshot</code></span><a class="headerlink" title="Permalink to this term" href="#snapshot.snapshot">¶</a></dt><dd><p><a href="systemd.snapshot.html"><span class="citerefentry"><span class="refentrytitle">systemd.snapshot</span>(5)</span></a>, <a href="systemd.unit.html"><span class="citerefentry"><span class="refentrytitle">systemd.unit</span>(5)</span></a></p></dd><dt id="socket.socket"><span class="term"><code class="filename"><em class="replaceable"><code>socket</code></em>.socket</code></span><a class="headerlink" title="Permalink to this term" href="#socket.socket">¶</a></dt><dd><p><a href="systemd.exec.html"><span class="citerefentry"><span class="refentrytitle">systemd.exec</span>(5)</span></a>, <a href="systemd.kill.html"><span class="citerefentry"><span class="refentrytitle">systemd.kill</span>(5)</span></a>, <a href="systemd.resource-control.html"><span class="citerefentry"><span class="refentrytitle">systemd.resource-control</span>(5)</span></a>, <a href="systemd.socket.html"><span class="citerefentry"><span class="refentrytitle">systemd.socket</span>(5)</span></a>, <a href="systemd.unit.html"><span class="citerefentry"><span class="refentrytitle">systemd.unit</span>(5)</span></a></p></dd><dt id="sockets.target"><span class="term"><code class="filename">sockets.target</code></span><a class="headerlink" title="Permalink to this term" href="#sockets.target">¶</a></dt><dd><p><a href="systemd.special.html"><span class="citerefentry"><span class="refentrytitle">systemd.special</span>(7)</span></a></p></dd><dt id="sound.target"><span class="term"><code class="filename">sound.target</code></span><a class="headerlink" title="Permalink to this term" href="#sound.target">¶</a></dt><dd><p><a href="systemd.special.html"><span class="citerefentry"><span class="refentrytitle">systemd.special</span>(7)</span></a></p></dd><dt id="suspend.target"><span class="term"><code class="filename">suspend.target</code></span><a class="headerlink" title="Permalink to this term" href="#suspend.target">¶</a></dt><dd><p><a href="systemd.special.html"><span class="citerefentry"><span class="refentrytitle">systemd.special</span>(7)</span></a></p></dd><dt id="swap.swap"><span class="term"><code class="filename"><em class="replaceable"><code>swap</code></em>.swap</code></span><a class="headerlink" title="Permalink to this term" href="#swap.swap">¶</a></dt><dd><p><a href="systemd.exec.html"><span class="citerefentry"><span class="refentrytitle">systemd.exec</span>(5)</span></a>, <a href="systemd.kill.html"><span class="citerefentry"><span class="refentrytitle">systemd.kill</span>(5)</span></a>, <a href="systemd.resource-control.html"><span class="citerefentry"><span class="refentrytitle">systemd.resource-control</span>(5)</span></a>, <a href="systemd.swap.html"><span class="citerefentry"><span class="refentrytitle">systemd.swap</span>(5)</span></a>, <a href="systemd.unit.html"><span class="citerefentry"><span class="refentrytitle">systemd.unit</span>(5)</span></a></p></dd><dt id="swap.target"><span class="term"><code class="filename">swap.target</code></span><a class="headerlink" title="Permalink to this term" href="#swap.target">¶</a></dt><dd><p><a href="systemd.special.html"><span class="citerefentry"><span class="refentrytitle">systemd.special</span>(7)</span></a></p></dd><dt id="sysinit.target"><span class="term"><code class="filename">sysinit.target</code></span><a class="headerlink" title="Permalink to this term" href="#sysinit.target">¶</a></dt><dd><p><a href="systemd.special.html"><span class="citerefentry"><span class="refentrytitle">systemd.special</span>(7)</span></a></p></dd><dt id="syslog.socket"><span class="term"><code class="filename">syslog.socket</code></span><a class="headerlink" title="Permalink to this term" href="#syslog.socket">¶</a></dt><dd><p><a href="systemd.special.html"><span class="citerefentry"><span class="refentrytitle">systemd.special</span>(7)</span></a></p></dd><dt id="system-update.target"><span class="term"><code class="filename">system-update.target</code></span><a class="headerlink" title="Permalink to this term" href="#system-update.target">¶</a></dt><dd><p><a href="systemd.special.html"><span class="citerefentry"><span class="refentrytitle">systemd.special</span>(7)</span></a></p></dd><dt id="system.slice"><span class="term"><code class="filename">system.slice</code></span><a class="headerlink" title="Permalink to this term" href="#system.slice">¶</a></dt><dd><p><a href="systemd.special.html"><span class="citerefentry"><span class="refentrytitle">systemd.special</span>(7)</span></a></p></dd><dt id="systemctl"><span class="term"><span class="command"><strong>systemctl</strong></span></span><a class="headerlink" title="Permalink to this term" href="#systemctl">¶</a></dt><dd><p><a href="systemctl.html"><span class="citerefentry"><span class="refentrytitle">systemctl</span>(1)</span></a></p></dd><dt id="systemd"><span class="term"><span class="command"><strong>systemd</strong></span></span><a class="headerlink" title="Permalink to this term" href="#systemd">¶</a></dt><dd><p><a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a></p></dd><dt id="systemd-analyze"><span class="term"><span class="command"><strong>systemd-analyze</strong></span></span><a class="headerlink" title="Permalink to this term" href="#systemd-analyze">¶</a></dt><dd><p><a href="systemd-analyze.html"><span class="citerefentry"><span class="refentrytitle">systemd-analyze</span>(1)</span></a></p></dd><dt id="systemd-ask-password"><span class="term"><span class="command"><strong>systemd-ask-password</strong></span></span><a class="headerlink" title="Permalink to this term" href="#systemd-ask-password">¶</a></dt><dd><p><a href="systemd-ask-password.html"><span class="citerefentry"><span class="refentrytitle">systemd-ask-password</span>(1)</span></a></p></dd><dt id="systemd-ask-password-console.path"><span class="term"><code class="filename">systemd-ask-password-console.path</code></span><a class="headerlink" title="Permalink to this term" href="#systemd-ask-password-console.path">¶</a></dt><dd><p><a href="systemd-ask-password-console.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-ask-password-console.service</span>(8)</span></a></p></dd><dt id="systemd-ask-password-console.service"><span class="term"><code class="filename">systemd-ask-password-console.service</code></span><a class="headerlink" title="Permalink to this term" href="#systemd-ask-password-console.service">¶</a></dt><dd><p><a href="systemd-ask-password-console.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-ask-password-console.service</span>(8)</span></a></p></dd><dt id="systemd-ask-password-wall.path"><span class="term"><code class="filename">systemd-ask-password-wall.path</code></span><a class="headerlink" title="Permalink to this term" href="#systemd-ask-password-wall.path">¶</a></dt><dd><p><a href="systemd-ask-password-console.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-ask-password-console.service</span>(8)</span></a></p></dd><dt id="systemd-ask-password-wall.service"><span class="term"><code class="filename">systemd-ask-password-wall.service</code></span><a class="headerlink" title="Permalink to this term" href="#systemd-ask-password-wall.service">¶</a></dt><dd><p><a href="systemd-ask-password-console.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-ask-password-console.service</span>(8)</span></a></p></dd><dt id="systemd-backlight@.service"><span class="term"><code class="filename">systemd-backlight@.service</code></span><a class="headerlink" title="Permalink to this term" href="#systemd-backlight@.service">¶</a></dt><dd><p><a href="systemd-backlight@.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-backlight@.service</span>(8)</span></a></p></dd><dt id="systemd-binfmt.service"><span class="term"><code class="filename">systemd-binfmt.service</code></span><a class="headerlink" title="Permalink to this term" href="#systemd-binfmt.service">¶</a></dt><dd><p><a href="systemd-binfmt.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-binfmt.service</span>(8)</span></a></p></dd><dt id="systemd-bus-proxyd.socket"><span class="term"><code class="filename">systemd-bus-proxyd.socket</code></span><a class="headerlink" title="Permalink to this term" href="#systemd-bus-proxyd.socket">¶</a></dt><dd><p><a href="systemd-bus-proxyd@.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-bus-proxyd@.service</span>(8)</span></a></p></dd><dt id="systemd-bus-proxyd@.service"><span class="term"><code class="filename">systemd-bus-proxyd@.service</code></span><a class="headerlink" title="Permalink to this term" href="#systemd-bus-proxyd@.service">¶</a></dt><dd><p><a href="systemd-bus-proxyd@.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-bus-proxyd@.service</span>(8)</span></a></p></dd><dt id="systemd-cat"><span class="term"><span class="command"><strong>systemd-cat</strong></span></span><a class="headerlink" title="Permalink to this term" href="#systemd-cat">¶</a></dt><dd><p><a href="systemd-cat.html"><span class="citerefentry"><span class="refentrytitle">systemd-cat</span>(1)</span></a></p></dd><dt id="systemd-cgls"><span class="term"><span class="command"><strong>systemd-cgls</strong></span></span><a class="headerlink" title="Permalink to this term" href="#systemd-cgls">¶</a></dt><dd><p><a href="systemd-cgls.html"><span class="citerefentry"><span class="refentrytitle">systemd-cgls</span>(1)</span></a></p></dd><dt id="systemd-cgtop"><span class="term"><span class="command"><strong>systemd-cgtop</strong></span></span><a class="headerlink" title="Permalink to this term" href="#systemd-cgtop">¶</a></dt><dd><p><a href="systemd-cgtop.html"><span class="citerefentry"><span class="refentrytitle">systemd-cgtop</span>(1)</span></a></p></dd><dt id="systemd-coredumpctl"><span class="term"><span class="command"><strong>systemd-coredumpctl</strong></span></span><a class="headerlink" title="Permalink to this term" href="#systemd-coredumpctl">¶</a></dt><dd><p><a href="systemd-coredumpctl.html"><span class="citerefentry"><span class="refentrytitle">systemd-coredumpctl</span>(1)</span></a></p></dd><dt id="systemd-cryptsetup@.service"><span class="term"><code class="filename">systemd-cryptsetup@.service</code></span><a class="headerlink" title="Permalink to this term" href="#systemd-cryptsetup@.service">¶</a></dt><dd><p><a href="systemd-cryptsetup@.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-cryptsetup@.service</span>(8)</span></a></p></dd><dt id="systemd-delta"><span class="term"><span class="command"><strong>systemd-delta</strong></span></span><a class="headerlink" title="Permalink to this term" href="#systemd-delta">¶</a></dt><dd><p><a href="systemd-delta.html"><span class="citerefentry"><span class="refentrytitle">systemd-delta</span>(1)</span></a></p></dd><dt id="systemd-detect-virt"><span class="term"><span class="command"><strong>systemd-detect-virt</strong></span></span><a class="headerlink" title="Permalink to this term" href="#systemd-detect-virt">¶</a></dt><dd><p><a href="systemd-detect-virt.html"><span class="citerefentry"><span class="refentrytitle">systemd-detect-virt</span>(1)</span></a></p></dd><dt id="systemd-fsck-root.service"><span class="term"><code class="filename">systemd-fsck-root.service</code></span><a class="headerlink" title="Permalink to this term" href="#systemd-fsck-root.service">¶</a></dt><dd><p><a href="systemd-fsck@.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-fsck@.service</span>(8)</span></a></p></dd><dt id="systemd-fsck@.service"><span class="term"><code class="filename">systemd-fsck@.service</code></span><a class="headerlink" title="Permalink to this term" href="#systemd-fsck@.service">¶</a></dt><dd><p><a href="systemd-fsck@.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-fsck@.service</span>(8)</span></a></p></dd><dt id="systemd-halt.service"><span class="term"><code class="filename">systemd-halt.service</code></span><a class="headerlink" title="Permalink to this term" href="#systemd-halt.service">¶</a></dt><dd><p><a href="systemd-halt.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-halt.service</span>(8)</span></a></p></dd><dt id="systemd-hibernate.service"><span class="term"><code class="filename">systemd-hibernate.service</code></span><a class="headerlink" title="Permalink to this term" href="#systemd-hibernate.service">¶</a></dt><dd><p><a href="systemd-suspend.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-suspend.service</span>(8)</span></a></p></dd><dt id="systemd-hostnamed.service"><span class="term"><code class="filename">systemd-hostnamed.service</code></span><a class="headerlink" title="Permalink to this term" href="#systemd-hostnamed.service">¶</a></dt><dd><p><a href="systemd-hostnamed.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-hostnamed.service</span>(8)</span></a></p></dd><dt id="systemd-hybrid-sleep.service"><span class="term"><code class="filename">systemd-hybrid-sleep.service</code></span><a class="headerlink" title="Permalink to this term" href="#systemd-hybrid-sleep.service">¶</a></dt><dd><p><a href="systemd-suspend.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-suspend.service</span>(8)</span></a></p></dd><dt id="systemd-inhibit"><span class="term"><span class="command"><strong>systemd-inhibit</strong></span></span><a class="headerlink" title="Permalink to this term" href="#systemd-inhibit">¶</a></dt><dd><p><a href="systemd-inhibit.html"><span class="citerefentry"><span class="refentrytitle">systemd-inhibit</span>(1)</span></a></p></dd><dt id="systemd-initctl.service"><span class="term"><code class="filename">systemd-initctl.service</code></span><a class="headerlink" title="Permalink to this term" href="#systemd-initctl.service">¶</a></dt><dd><p><a href="systemd-initctl.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-initctl.service</span>(8)</span></a></p></dd><dt id="systemd-initctl.socket"><span class="term"><code class="filename">systemd-initctl.socket</code></span><a class="headerlink" title="Permalink to this term" href="#systemd-initctl.socket">¶</a></dt><dd><p><a href="systemd-initctl.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-initctl.service</span>(8)</span></a></p></dd><dt id="systemd-journal-gatewayd.service"><span class="term"><code class="filename">systemd-journal-gatewayd.service</code></span><a class="headerlink" title="Permalink to this term" href="#systemd-journal-gatewayd.service">¶</a></dt><dd><p><a href="systemd-journal-gatewayd.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-journal-gatewayd.service</span>(8)</span></a></p></dd><dt id="systemd-journal-gatewayd.socket"><span class="term"><code class="filename">systemd-journal-gatewayd.socket</code></span><a class="headerlink" title="Permalink to this term" href="#systemd-journal-gatewayd.socket">¶</a></dt><dd><p><a href="systemd-journal-gatewayd.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-journal-gatewayd.service</span>(8)</span></a></p></dd><dt id="systemd-journal-remote"><span class="term"><span class="command"><strong>systemd-journal-remote</strong></span></span><a class="headerlink" title="Permalink to this term" href="#systemd-journal-remote">¶</a></dt><dd><p><a href="systemd-journal-remote.html"><span class="citerefentry"><span class="refentrytitle">systemd-journal-remote</span>(8)</span></a></p></dd><dt id="systemd-journald-dev-log.socket"><span class="term"><code class="filename">systemd-journald-dev-log.socket</code></span><a class="headerlink" title="Permalink to this term" href="#systemd-journald-dev-log.socket">¶</a></dt><dd><p><a href="systemd-journald.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-journald.service</span>(8)</span></a></p></dd><dt id="systemd-journald.service"><span class="term"><code class="filename">systemd-journald.service</code></span><a class="headerlink" title="Permalink to this term" href="#systemd-journald.service">¶</a></dt><dd><p><a href="systemd-journald.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-journald.service</span>(8)</span></a></p></dd><dt id="systemd-journald.socket"><span class="term"><code class="filename">systemd-journald.socket</code></span><a class="headerlink" title="Permalink to this term" href="#systemd-journald.socket">¶</a></dt><dd><p><a href="systemd-journald.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-journald.service</span>(8)</span></a></p></dd><dt id="systemd-kexec.service"><span class="term"><code class="filename">systemd-kexec.service</code></span><a class="headerlink" title="Permalink to this term" href="#systemd-kexec.service">¶</a></dt><dd><p><a href="systemd-halt.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-halt.service</span>(8)</span></a></p></dd><dt id="systemd-localed.service"><span class="term"><code class="filename">systemd-localed.service</code></span><a class="headerlink" title="Permalink to this term" href="#systemd-localed.service">¶</a></dt><dd><p><a href="systemd-localed.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-localed.service</span>(8)</span></a></p></dd><dt id="systemd-logind.service"><span class="term"><code class="filename">systemd-logind.service</code></span><a class="headerlink" title="Permalink to this term" href="#systemd-logind.service">¶</a></dt><dd><p><a href="systemd-logind.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-logind.service</span>(8)</span></a></p></dd><dt id="systemd-machine-id-setup"><span class="term"><span class="command"><strong>systemd-machine-id-setup</strong></span></span><a class="headerlink" title="Permalink to this term" href="#systemd-machine-id-setup">¶</a></dt><dd><p><a href="systemd-machine-id-setup.html"><span class="citerefentry"><span class="refentrytitle">systemd-machine-id-setup</span>(1)</span></a></p></dd><dt id="systemd-machined.service"><span class="term"><code class="filename">systemd-machined.service</code></span><a class="headerlink" title="Permalink to this term" href="#systemd-machined.service">¶</a></dt><dd><p><a href="systemd-machined.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-machined.service</span>(8)</span></a></p></dd><dt id="systemd-modules-load.service"><span class="term"><code class="filename">systemd-modules-load.service</code></span><a class="headerlink" title="Permalink to this term" href="#systemd-modules-load.service">¶</a></dt><dd><p><a href="systemd-modules-load.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-modules-load.service</span>(8)</span></a></p></dd><dt id="systemd-networkd-wait-online.service"><span class="term"><code class="filename">systemd-networkd-wait-online.service</code></span><a class="headerlink" title="Permalink to this term" href="#systemd-networkd-wait-online.service">¶</a></dt><dd><p><a href="systemd-networkd-wait-online.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-networkd-wait-online.service</span>(8)</span></a></p></dd><dt id="systemd-networkd.service"><span class="term"><code class="filename">systemd-networkd.service</code></span><a class="headerlink" title="Permalink to this term" href="#systemd-networkd.service">¶</a></dt><dd><p><a href="systemd-networkd.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-networkd.service</span>(8)</span></a></p></dd><dt id="systemd-notify"><span class="term"><span class="command"><strong>systemd-notify</strong></span></span><a class="headerlink" title="Permalink to this term" href="#systemd-notify">¶</a></dt><dd><p><a href="systemd-notify.html"><span class="citerefentry"><span class="refentrytitle">systemd-notify</span>(1)</span></a></p></dd><dt id="systemd-nspawn"><span class="term"><span class="command"><strong>systemd-nspawn</strong></span></span><a class="headerlink" title="Permalink to this term" href="#systemd-nspawn">¶</a></dt><dd><p><a href="systemd-nspawn.html"><span class="citerefentry"><span class="refentrytitle">systemd-nspawn</span>(1)</span></a></p></dd><dt id="systemd-poweroff.service"><span class="term"><code class="filename">systemd-poweroff.service</code></span><a class="headerlink" title="Permalink to this term" href="#systemd-poweroff.service">¶</a></dt><dd><p><a href="systemd-halt.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-halt.service</span>(8)</span></a></p></dd><dt id="systemd-quotacheck.service"><span class="term"><code class="filename">systemd-quotacheck.service</code></span><a class="headerlink" title="Permalink to this term" href="#systemd-quotacheck.service">¶</a></dt><dd><p><a href="systemd-quotacheck.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-quotacheck.service</span>(8)</span></a></p></dd><dt id="systemd-random-seed.service"><span class="term"><code class="filename">systemd-random-seed.service</code></span><a class="headerlink" title="Permalink to this term" href="#systemd-random-seed.service">¶</a></dt><dd><p><a href="systemd-random-seed.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-random-seed.service</span>(8)</span></a></p></dd><dt id="systemd-readahead-collect.service"><span class="term"><code class="filename">systemd-readahead-collect.service</code></span><a class="headerlink" title="Permalink to this term" href="#systemd-readahead-collect.service">¶</a></dt><dd><p><a href="systemd-readahead-replay.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-readahead-replay.service</span>(8)</span></a></p></dd><dt id="systemd-readahead-done.service"><span class="term"><code class="filename">systemd-readahead-done.service</code></span><a class="headerlink" title="Permalink to this term" href="#systemd-readahead-done.service">¶</a></dt><dd><p><a href="systemd-readahead-replay.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-readahead-replay.service</span>(8)</span></a></p></dd><dt id="systemd-readahead-done.timer"><span class="term"><code class="filename">systemd-readahead-done.timer</code></span><a class="headerlink" title="Permalink to this term" href="#systemd-readahead-done.timer">¶</a></dt><dd><p><a href="systemd-readahead-replay.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-readahead-replay.service</span>(8)</span></a></p></dd><dt id="systemd-readahead-replay.service"><span class="term"><code class="filename">systemd-readahead-replay.service</code></span><a class="headerlink" title="Permalink to this term" href="#systemd-readahead-replay.service">¶</a></dt><dd><p><a href="systemd-readahead-replay.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-readahead-replay.service</span>(8)</span></a></p></dd><dt id="systemd-reboot.service"><span class="term"><code class="filename">systemd-reboot.service</code></span><a class="headerlink" title="Permalink to this term" href="#systemd-reboot.service">¶</a></dt><dd><p><a href="systemd-halt.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-halt.service</span>(8)</span></a></p></dd><dt id="systemd-remount-fs.service"><span class="term"><code class="filename">systemd-remount-fs.service</code></span><a class="headerlink" title="Permalink to this term" href="#systemd-remount-fs.service">¶</a></dt><dd><p><a href="systemd-remount-fs.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-remount-fs.service</span>(8)</span></a></p></dd><dt id="systemd-resolved.service"><span class="term"><code class="filename">systemd-resolved.service</code></span><a class="headerlink" title="Permalink to this term" href="#systemd-resolved.service">¶</a></dt><dd><p><a href="systemd-resolved.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-resolved.service</span>(8)</span></a></p></dd><dt id="systemd-rfkill@.service"><span class="term"><code class="filename">systemd-rfkill@.service</code></span><a class="headerlink" title="Permalink to this term" href="#systemd-rfkill@.service">¶</a></dt><dd><p><a href="systemd-rfkill@.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-rfkill@.service</span>(8)</span></a></p></dd><dt id="systemd-run"><span class="term"><span class="command"><strong>systemd-run</strong></span></span><a class="headerlink" title="Permalink to this term" href="#systemd-run">¶</a></dt><dd><p><a href="systemd-run.html"><span class="citerefentry"><span class="refentrytitle">systemd-run</span>(1)</span></a></p></dd><dt id="systemd-shutdownd.service"><span class="term"><code class="filename">systemd-shutdownd.service</code></span><a class="headerlink" title="Permalink to this term" href="#systemd-shutdownd.service">¶</a></dt><dd><p><a href="systemd-shutdownd.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-shutdownd.service</span>(8)</span></a></p></dd><dt id="systemd-shutdownd.socket"><span class="term"><code class="filename">systemd-shutdownd.socket</code></span><a class="headerlink" title="Permalink to this term" href="#systemd-shutdownd.socket">¶</a></dt><dd><p><a href="systemd-shutdownd.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-shutdownd.service</span>(8)</span></a></p></dd><dt id="systemd-socket-proxyd"><span class="term"><span class="command"><strong>systemd-socket-proxyd</strong></span></span><a class="headerlink" title="Permalink to this term" href="#systemd-socket-proxyd">¶</a></dt><dd><p><a href="systemd-socket-proxyd.html"><span class="citerefentry"><span class="refentrytitle">systemd-socket-proxyd</span>(8)</span></a></p></dd><dt id="systemd-suspend.service"><span class="term"><code class="filename">systemd-suspend.service</code></span><a class="headerlink" title="Permalink to this term" href="#systemd-suspend.service">¶</a></dt><dd><p><a href="systemd-suspend.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-suspend.service</span>(8)</span></a></p></dd><dt id="systemd-sysctl.service"><span class="term"><code class="filename">systemd-sysctl.service</code></span><a class="headerlink" title="Permalink to this term" href="#systemd-sysctl.service">¶</a></dt><dd><p><a href="systemd-sysctl.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-sysctl.service</span>(8)</span></a></p></dd><dt id="systemd-timedated.service"><span class="term"><code class="filename">systemd-timedated.service</code></span><a class="headerlink" title="Permalink to this term" href="#systemd-timedated.service">¶</a></dt><dd><p><a href="systemd-timedated.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-timedated.service</span>(8)</span></a></p></dd><dt id="systemd-timesyncd.service"><span class="term"><code class="filename">systemd-timesyncd.service</code></span><a class="headerlink" title="Permalink to this term" href="#systemd-timesyncd.service">¶</a></dt><dd><p><a href="systemd-timesyncd.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-timesyncd.service</span>(8)</span></a></p></dd><dt id="systemd-tmpfiles"><span class="term"><span class="command"><strong>systemd-tmpfiles</strong></span></span><a class="headerlink" title="Permalink to this term" href="#systemd-tmpfiles">¶</a></dt><dd><p><a href="systemd-tmpfiles.html"><span class="citerefentry"><span class="refentrytitle">systemd-tmpfiles</span>(8)</span></a></p></dd><dt id="systemd-tmpfiles-clean.service"><span class="term"><code class="filename">systemd-tmpfiles-clean.service</code></span><a class="headerlink" title="Permalink to this term" href="#systemd-tmpfiles-clean.service">¶</a></dt><dd><p><a href="systemd-tmpfiles.html"><span class="citerefentry"><span class="refentrytitle">systemd-tmpfiles</span>(8)</span></a></p></dd><dt id="systemd-tmpfiles-clean.timer"><span class="term"><code class="filename">systemd-tmpfiles-clean.timer</code></span><a class="headerlink" title="Permalink to this term" href="#systemd-tmpfiles-clean.timer">¶</a></dt><dd><p><a href="systemd-tmpfiles.html"><span class="citerefentry"><span class="refentrytitle">systemd-tmpfiles</span>(8)</span></a></p></dd><dt id="systemd-tmpfiles-setup-dev.service"><span class="term"><code class="filename">systemd-tmpfiles-setup-dev.service</code></span><a class="headerlink" title="Permalink to this term" href="#systemd-tmpfiles-setup-dev.service">¶</a></dt><dd><p><a href="systemd-tmpfiles.html"><span class="citerefentry"><span class="refentrytitle">systemd-tmpfiles</span>(8)</span></a></p></dd><dt id="systemd-tmpfiles-setup.service"><span class="term"><code class="filename">systemd-tmpfiles-setup.service</code></span><a class="headerlink" title="Permalink to this term" href="#systemd-tmpfiles-setup.service">¶</a></dt><dd><p><a href="systemd-tmpfiles.html"><span class="citerefentry"><span class="refentrytitle">systemd-tmpfiles</span>(8)</span></a></p></dd><dt id="systemd-tty-ask-password-agent"><span class="term"><span class="command"><strong>systemd-tty-ask-password-agent</strong></span></span><a class="headerlink" title="Permalink to this term" href="#systemd-tty-ask-password-agent">¶</a></dt><dd><p><a href="systemd-tty-ask-password-agent.html"><span class="citerefentry"><span class="refentrytitle">systemd-tty-ask-password-agent</span>(1)</span></a></p></dd><dt id="systemd-udevd-control.socket"><span class="term"><code class="filename">systemd-udevd-control.socket</code></span><a class="headerlink" title="Permalink to this term" href="#systemd-udevd-control.socket">¶</a></dt><dd><p><a href="systemd-udevd.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-udevd.service</span>(8)</span></a></p></dd><dt id="systemd-udevd-kernel.socket"><span class="term"><code class="filename">systemd-udevd-kernel.socket</code></span><a class="headerlink" title="Permalink to this term" href="#systemd-udevd-kernel.socket">¶</a></dt><dd><p><a href="systemd-udevd.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-udevd.service</span>(8)</span></a></p></dd><dt id="systemd-udevd.service"><span class="term"><code class="filename">systemd-udevd.service</code></span><a class="headerlink" title="Permalink to this term" href="#systemd-udevd.service">¶</a></dt><dd><p><a href="systemd-udevd.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-udevd.service</span>(8)</span></a></p></dd><dt id="systemd-update-utmp-runlevel.service"><span class="term"><code class="filename">systemd-update-utmp-runlevel.service</code></span><a class="headerlink" title="Permalink to this term" href="#systemd-update-utmp-runlevel.service">¶</a></dt><dd><p><a href="systemd-update-utmp.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-update-utmp.service</span>(8)</span></a></p></dd><dt id="systemd-update-utmp.service"><span class="term"><code class="filename">systemd-update-utmp.service</code></span><a class="headerlink" title="Permalink to this term" href="#systemd-update-utmp.service">¶</a></dt><dd><p><a href="systemd-update-utmp.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-update-utmp.service</span>(8)</span></a></p></dd><dt id="systemd-user-sessions.service"><span class="term"><code class="filename">systemd-user-sessions.service</code></span><a class="headerlink" title="Permalink to this term" href="#systemd-user-sessions.service">¶</a></dt><dd><p><a href="systemd-user-sessions.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-user-sessions.service</span>(8)</span></a></p></dd><dt id="systemd-vconsole-setup.service"><span class="term"><code class="filename">systemd-vconsole-setup.service</code></span><a class="headerlink" title="Permalink to this term" href="#systemd-vconsole-setup.service">¶</a></dt><dd><p><a href="systemd-vconsole-setup.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-vconsole-setup.service</span>(8)</span></a></p></dd><dt id="target.target"><span class="term"><code class="filename"><em class="replaceable"><code>target</code></em>.target</code></span><a class="headerlink" title="Permalink to this term" href="#target.target">¶</a></dt><dd><p><a href="systemd.target.html"><span class="citerefentry"><span class="refentrytitle">systemd.target</span>(5)</span></a>, <a href="systemd.unit.html"><span class="citerefentry"><span class="refentrytitle">systemd.unit</span>(5)</span></a></p></dd><dt id="telinit"><span class="term"><span class="command"><strong>telinit</strong></span></span><a class="headerlink" title="Permalink to this term" href="#telinit">¶</a></dt><dd><p><a href="telinit.html"><span class="citerefentry"><span class="refentrytitle">telinit</span>(8)</span></a></p></dd><dt id="time-sync.target"><span class="term"><code class="filename">time-sync.target</code></span><a class="headerlink" title="Permalink to this term" href="#time-sync.target">¶</a></dt><dd><p><a href="systemd.special.html"><span class="citerefentry"><span class="refentrytitle">systemd.special</span>(7)</span></a></p></dd><dt id="timedatectl"><span class="term"><span class="command"><strong>timedatectl</strong></span></span><a class="headerlink" title="Permalink to this term" href="#timedatectl">¶</a></dt><dd><p><a href="timedatectl.html"><span class="citerefentry"><span class="refentrytitle">timedatectl</span>(1)</span></a></p></dd><dt id="timer.timer"><span class="term"><code class="filename"><em class="replaceable"><code>timer</code></em>.timer</code></span><a class="headerlink" title="Permalink to this term" href="#timer.timer">¶</a></dt><dd><p><a href="systemd.timer.html"><span class="citerefentry"><span class="refentrytitle">systemd.timer</span>(5)</span></a>, <a href="systemd.unit.html"><span class="citerefentry"><span class="refentrytitle">systemd.unit</span>(5)</span></a></p></dd><dt id="timers.target"><span class="term"><code class="filename">timers.target</code></span><a class="headerlink" title="Permalink to this term" href="#timers.target">¶</a></dt><dd><p><a href="systemd.special.html"><span class="citerefentry"><span class="refentrytitle">systemd.special</span>(7)</span></a></p></dd><dt id="udevadm"><span class="term"><span class="command"><strong>udevadm</strong></span></span><a class="headerlink" title="Permalink to this term" href="#udevadm">¶</a></dt><dd><p><a href="udevadm.html"><span class="citerefentry"><span class="refentrytitle">udevadm</span>(8)</span></a></p></dd><dt id="umount.target"><span class="term"><code class="filename">umount.target</code></span><a class="headerlink" title="Permalink to this term" href="#umount.target">¶</a></dt><dd><p><a href="systemd.special.html"><span class="citerefentry"><span class="refentrytitle">systemd.special</span>(7)</span></a></p></dd><dt id="user.slice"><span class="term"><code class="filename">user.slice</code></span><a class="headerlink" title="Permalink to this term" href="#user.slice">¶</a></dt><dd><p><a href="systemd.special.html"><span class="citerefentry"><span class="refentrytitle">systemd.special</span>(7)</span></a></p></dd></dl></div></div><div class="refsect1"><a name="idm214184109360"></a><h2 id="Colophon">Colophon<a class="headerlink" title="Permalink to this headline" href="#Colophon">¶</a></h2><p><a name="colophon"></a>This index contains 1535 entries in 14 sections,
-referring to 170 individual manual pages.
+                systemd-networkd.</p><div class="variablelist"><a name="network-directives"></a><dl class="variablelist"><dt id="Address="><span class="term"><code class="varname">Address=</code></span><a class="headerlink" title="Permalink to this term" href="#Address=">¶</a></dt><dd><p><a href="systemd.network.html"><span class="citerefentry"><span class="refentrytitle">systemd.network</span>(5)</span></a></p></dd><dt id="Alias="><span class="term"><code class="varname">Alias=</code></span><a class="headerlink" title="Permalink to this term" href="#Alias=">¶</a></dt><dd><p><a href="systemd.link.html"><span class="citerefentry"><span class="refentrytitle">systemd.link</span>(5)</span></a></p></dd><dt id="Architecture="><span class="term"><code class="varname">Architecture=</code></span><a class="headerlink" title="Permalink to this term" href="#Architecture=">¶</a></dt><dd><p><a href="systemd.link.html"><span class="citerefentry"><span class="refentrytitle">systemd.link</span>(5)</span></a>, <a href="systemd.netdev.html"><span class="citerefentry"><span class="refentrytitle">systemd.netdev</span>(5)</span></a>, <a href="systemd.network.html"><span class="citerefentry"><span class="refentrytitle">systemd.network</span>(5)</span></a></p></dd><dt id="BitsPerSecond="><span class="term"><code class="varname">BitsPerSecond=</code></span><a class="headerlink" title="Permalink to this term" href="#BitsPerSecond=">¶</a></dt><dd><p><a href="systemd.link.html"><span class="citerefentry"><span class="refentrytitle">systemd.link</span>(5)</span></a></p></dd><dt id="Bond="><span class="term"><code class="varname">Bond=</code></span><a class="headerlink" title="Permalink to this term" href="#Bond=">¶</a></dt><dd><p><a href="systemd.network.html"><span class="citerefentry"><span class="refentrytitle">systemd.network</span>(5)</span></a></p></dd><dt id="Bridge="><span class="term"><code class="varname">Bridge=</code></span><a class="headerlink" title="Permalink to this term" href="#Bridge=">¶</a></dt><dd><p><a href="systemd.network.html"><span class="citerefentry"><span class="refentrytitle">systemd.network</span>(5)</span></a></p></dd><dt id="Broadcast="><span class="term"><code class="varname">Broadcast=</code></span><a class="headerlink" title="Permalink to this term" href="#Broadcast=">¶</a></dt><dd><p><a href="systemd.network.html"><span class="citerefentry"><span class="refentrytitle">systemd.network</span>(5)</span></a></p></dd><dt id="CriticalConnection="><span class="term"><code class="varname">CriticalConnection=</code></span><a class="headerlink" title="Permalink to this term" href="#CriticalConnection=">¶</a></dt><dd><p><a href="systemd.network.html"><span class="citerefentry"><span class="refentrytitle">systemd.network</span>(5)</span></a></p></dd><dt id="DHCP="><span class="term"><code class="varname">DHCP=</code></span><a class="headerlink" title="Permalink to this term" href="#DHCP=">¶</a></dt><dd><p><a href="systemd.network.html"><span class="citerefentry"><span class="refentrytitle">systemd.network</span>(5)</span></a></p></dd><dt id="DHCPServer="><span class="term"><code class="varname">DHCPServer=</code></span><a class="headerlink" title="Permalink to this term" href="#DHCPServer=">¶</a></dt><dd><p><a href="systemd.network.html"><span class="citerefentry"><span class="refentrytitle">systemd.network</span>(5)</span></a></p></dd><dt id="DNS="><span class="term"><code class="varname">DNS=</code></span><a class="headerlink" title="Permalink to this term" href="#DNS=">¶</a></dt><dd><p><a href="resolved.conf.html"><span class="citerefentry"><span class="refentrytitle">resolved.conf</span>(5)</span></a>, <a href="systemd.network.html"><span class="citerefentry"><span class="refentrytitle">systemd.network</span>(5)</span></a></p></dd><dt id="Description="><span class="term"><code class="varname">Description=</code></span><a class="headerlink" title="Permalink to this term" href="#Description=">¶</a></dt><dd><p><a href="systemd.link.html"><span class="citerefentry"><span class="refentrytitle">systemd.link</span>(5)</span></a>, <a href="systemd.netdev.html"><span class="citerefentry"><span class="refentrytitle">systemd.netdev</span>(5)</span></a>, <a href="systemd.network.html"><span class="citerefentry"><span class="refentrytitle">systemd.network</span>(5)</span></a></p></dd><dt id="Destination="><span class="term"><code class="varname">Destination=</code></span><a class="headerlink" title="Permalink to this term" href="#Destination=">¶</a></dt><dd><p><a href="systemd.network.html"><span class="citerefentry"><span class="refentrytitle">systemd.network</span>(5)</span></a></p></dd><dt id="DiscoverPathMTU="><span class="term"><code class="varname">DiscoverPathMTU=</code></span><a class="headerlink" title="Permalink to this term" href="#DiscoverPathMTU=">¶</a></dt><dd><p><a href="systemd.netdev.html"><span class="citerefentry"><span class="refentrytitle">systemd.netdev</span>(5)</span></a></p></dd><dt id="Driver="><span class="term"><code class="varname">Driver=</code></span><a class="headerlink" title="Permalink to this term" href="#Driver=">¶</a></dt><dd><p><a href="systemd.link.html"><span class="citerefentry"><span class="refentrytitle">systemd.link</span>(5)</span></a>, <a href="systemd.network.html"><span class="citerefentry"><span class="refentrytitle">systemd.network</span>(5)</span></a></p></dd><dt id="Duplex="><span class="term"><code class="varname">Duplex=</code></span><a class="headerlink" title="Permalink to this term" href="#Duplex=">¶</a></dt><dd><p><a href="systemd.link.html"><span class="citerefentry"><span class="refentrytitle">systemd.link</span>(5)</span></a></p></dd><dt id="Gateway="><span class="term"><code class="varname">Gateway=</code></span><a class="headerlink" title="Permalink to this term" href="#Gateway=">¶</a></dt><dd><p><a href="systemd.network.html"><span class="citerefentry"><span class="refentrytitle">systemd.network</span>(5)</span></a></p></dd><dt id="Group="><span class="term"><code class="varname">Group=</code></span><a class="headerlink" title="Permalink to this term" href="#Group=">¶</a></dt><dd><p><a href="systemd.netdev.html"><span class="citerefentry"><span class="refentrytitle">systemd.netdev</span>(5)</span></a></p></dd><dt id="Host="><span class="term"><code class="varname">Host=</code></span><a class="headerlink" title="Permalink to this term" href="#Host=">¶</a></dt><dd><p><a href="systemd.link.html"><span class="citerefentry"><span class="refentrytitle">systemd.link</span>(5)</span></a>, <a href="systemd.netdev.html"><span class="citerefentry"><span class="refentrytitle">systemd.netdev</span>(5)</span></a>, <a href="systemd.network.html"><span class="citerefentry"><span class="refentrytitle">systemd.network</span>(5)</span></a></p></dd><dt id="IPv4LL="><span class="term"><code class="varname">IPv4LL=</code></span><a class="headerlink" title="Permalink to this term" href="#IPv4LL=">¶</a></dt><dd><p><a href="systemd.network.html"><span class="citerefentry"><span class="refentrytitle">systemd.network</span>(5)</span></a></p></dd><dt id="Id="><span class="term"><code class="varname">Id=</code></span><a class="headerlink" title="Permalink to this term" href="#Id=">¶</a></dt><dd><p><a href="systemd.netdev.html"><span class="citerefentry"><span class="refentrytitle">systemd.netdev</span>(5)</span></a></p></dd><dt id="KernelCommandLine="><span class="term"><code class="varname">KernelCommandLine=</code></span><a class="headerlink" title="Permalink to this term" href="#KernelCommandLine=">¶</a></dt><dd><p><a href="systemd.link.html"><span class="citerefentry"><span class="refentrytitle">systemd.link</span>(5)</span></a>, <a href="systemd.netdev.html"><span class="citerefentry"><span class="refentrytitle">systemd.netdev</span>(5)</span></a>, <a href="systemd.network.html"><span class="citerefentry"><span class="refentrytitle">systemd.network</span>(5)</span></a></p></dd><dt id="Kind="><span class="term"><code class="varname">Kind=</code></span><a class="headerlink" title="Permalink to this term" href="#Kind=">¶</a></dt><dd><p><a href="systemd.netdev.html"><span class="citerefentry"><span class="refentrytitle">systemd.netdev</span>(5)</span></a></p></dd><dt id="Label="><span class="term"><code class="varname">Label=</code></span><a class="headerlink" title="Permalink to this term" href="#Label=">¶</a></dt><dd><p><a href="systemd.network.html"><span class="citerefentry"><span class="refentrytitle">systemd.network</span>(5)</span></a></p></dd><dt id="Local="><span class="term"><code class="varname">Local=</code></span><a class="headerlink" title="Permalink to this term" href="#Local=">¶</a></dt><dd><p><a href="systemd.netdev.html"><span class="citerefentry"><span class="refentrytitle">systemd.netdev</span>(5)</span></a></p></dd><dt id="MACAddress="><span class="term"><code class="varname">MACAddress=</code></span><a class="headerlink" title="Permalink to this term" href="#MACAddress=">¶</a></dt><dd><p><a href="systemd.link.html"><span class="citerefentry"><span class="refentrytitle">systemd.link</span>(5)</span></a>, <a href="systemd.netdev.html"><span class="citerefentry"><span class="refentrytitle">systemd.netdev</span>(5)</span></a>, <a href="systemd.network.html"><span class="citerefentry"><span class="refentrytitle">systemd.network</span>(5)</span></a></p></dd><dt id="MACAddressPolicy="><span class="term"><code class="varname">MACAddressPolicy=</code></span><a class="headerlink" title="Permalink to this term" href="#MACAddressPolicy=">¶</a></dt><dd><p><a href="systemd.link.html"><span class="citerefentry"><span class="refentrytitle">systemd.link</span>(5)</span></a></p></dd><dt id="MACVLAN="><span class="term"><code class="varname">MACVLAN=</code></span><a class="headerlink" title="Permalink to this term" href="#MACVLAN=">¶</a></dt><dd><p><a href="systemd.network.html"><span class="citerefentry"><span class="refentrytitle">systemd.network</span>(5)</span></a></p></dd><dt id="MTUBytes="><span class="term"><code class="varname">MTUBytes=</code></span><a class="headerlink" title="Permalink to this term" href="#MTUBytes=">¶</a></dt><dd><p><a href="systemd.link.html"><span class="citerefentry"><span class="refentrytitle">systemd.link</span>(5)</span></a>, <a href="systemd.netdev.html"><span class="citerefentry"><span class="refentrytitle">systemd.netdev</span>(5)</span></a></p></dd><dt id="MacLearning="><span class="term"><code class="varname">MacLearning=</code></span><a class="headerlink" title="Permalink to this term" href="#MacLearning=">¶</a></dt><dd><p><a href="systemd.netdev.html"><span class="citerefentry"><span class="refentrytitle">systemd.netdev</span>(5)</span></a></p></dd><dt id="Mode="><span class="term"><code class="varname">Mode=</code></span><a class="headerlink" title="Permalink to this term" href="#Mode=">¶</a></dt><dd><p><a href="systemd.netdev.html"><span class="citerefentry"><span class="refentrytitle">systemd.netdev</span>(5)</span></a></p></dd><dt id="MultiQueue="><span class="term"><code class="varname">MultiQueue=</code></span><a class="headerlink" title="Permalink to this term" href="#MultiQueue=">¶</a></dt><dd><p><a href="systemd.netdev.html"><span class="citerefentry"><span class="refentrytitle">systemd.netdev</span>(5)</span></a></p></dd><dt id="Name="><span class="term"><code class="varname">Name=</code></span><a class="headerlink" title="Permalink to this term" href="#Name=">¶</a></dt><dd><p><a href="systemd.link.html"><span class="citerefentry"><span class="refentrytitle">systemd.link</span>(5)</span></a>, <a href="systemd.netdev.html"><span class="citerefentry"><span class="refentrytitle">systemd.netdev</span>(5)</span></a>, <a href="systemd.network.html"><span class="citerefentry"><span class="refentrytitle">systemd.network</span>(5)</span></a></p></dd><dt id="NamePolicy="><span class="term"><code class="varname">NamePolicy=</code></span><a class="headerlink" title="Permalink to this term" href="#NamePolicy=">¶</a></dt><dd><p><a href="systemd.link.html"><span class="citerefentry"><span class="refentrytitle">systemd.link</span>(5)</span></a></p></dd><dt id="OneQueue="><span class="term"><code class="varname">OneQueue=</code></span><a class="headerlink" title="Permalink to this term" href="#OneQueue=">¶</a></dt><dd><p><a href="systemd.netdev.html"><span class="citerefentry"><span class="refentrytitle">systemd.netdev</span>(5)</span></a></p></dd><dt id="PacketInfo="><span class="term"><code class="varname">PacketInfo=</code></span><a class="headerlink" title="Permalink to this term" href="#PacketInfo=">¶</a></dt><dd><p><a href="systemd.netdev.html"><span class="citerefentry"><span class="refentrytitle">systemd.netdev</span>(5)</span></a></p></dd><dt id="Path="><span class="term"><code class="varname">Path=</code></span><a class="headerlink" title="Permalink to this term" href="#Path=">¶</a></dt><dd><p><a href="systemd.link.html"><span class="citerefentry"><span class="refentrytitle">systemd.link</span>(5)</span></a>, <a href="systemd.network.html"><span class="citerefentry"><span class="refentrytitle">systemd.network</span>(5)</span></a></p></dd><dt id="Remote="><span class="term"><code class="varname">Remote=</code></span><a class="headerlink" title="Permalink to this term" href="#Remote=">¶</a></dt><dd><p><a href="systemd.netdev.html"><span class="citerefentry"><span class="refentrytitle">systemd.netdev</span>(5)</span></a></p></dd><dt id="SendHostname="><span class="term"><code class="varname">SendHostname=</code></span><a class="headerlink" title="Permalink to this term" href="#SendHostname=">¶</a></dt><dd><p><a href="systemd.network.html"><span class="citerefentry"><span class="refentrytitle">systemd.network</span>(5)</span></a></p></dd><dt id="TOS="><span class="term"><code class="varname">TOS=</code></span><a class="headerlink" title="Permalink to this term" href="#TOS=">¶</a></dt><dd><p><a href="systemd.netdev.html"><span class="citerefentry"><span class="refentrytitle">systemd.netdev</span>(5)</span></a></p></dd><dt id="TTL="><span class="term"><code class="varname">TTL=</code></span><a class="headerlink" title="Permalink to this term" href="#TTL=">¶</a></dt><dd><p><a href="systemd.netdev.html"><span class="citerefentry"><span class="refentrytitle">systemd.netdev</span>(5)</span></a></p></dd><dt id="Tunnel="><span class="term"><code class="varname">Tunnel=</code></span><a class="headerlink" title="Permalink to this term" href="#Tunnel=">¶</a></dt><dd><p><a href="systemd.network.html"><span class="citerefentry"><span class="refentrytitle">systemd.network</span>(5)</span></a></p></dd><dt id="Type="><span class="term"><code class="varname">Type=</code></span><a class="headerlink" title="Permalink to this term" href="#Type=">¶</a></dt><dd><p><a href="systemd.link.html"><span class="citerefentry"><span class="refentrytitle">systemd.link</span>(5)</span></a>, <a href="systemd.network.html"><span class="citerefentry"><span class="refentrytitle">systemd.network</span>(5)</span></a></p></dd><dt id="UseDNS="><span class="term"><code class="varname">UseDNS=</code></span><a class="headerlink" title="Permalink to this term" href="#UseDNS=">¶</a></dt><dd><p><a href="systemd.network.html"><span class="citerefentry"><span class="refentrytitle">systemd.network</span>(5)</span></a></p></dd><dt id="UseHostname="><span class="term"><code class="varname">UseHostname=</code></span><a class="headerlink" title="Permalink to this term" href="#UseHostname=">¶</a></dt><dd><p><a href="systemd.network.html"><span class="citerefentry"><span class="refentrytitle">systemd.network</span>(5)</span></a></p></dd><dt id="UseMTU="><span class="term"><code class="varname">UseMTU=</code></span><a class="headerlink" title="Permalink to this term" href="#UseMTU=">¶</a></dt><dd><p><a href="systemd.network.html"><span class="citerefentry"><span class="refentrytitle">systemd.network</span>(5)</span></a></p></dd><dt id="UseRoutes="><span class="term"><code class="varname">UseRoutes=</code></span><a class="headerlink" title="Permalink to this term" href="#UseRoutes=">¶</a></dt><dd><p><a href="systemd.network.html"><span class="citerefentry"><span class="refentrytitle">systemd.network</span>(5)</span></a></p></dd><dt id="User="><span class="term"><code class="varname">User=</code></span><a class="headerlink" title="Permalink to this term" href="#User=">¶</a></dt><dd><p><a href="systemd.netdev.html"><span class="citerefentry"><span class="refentrytitle">systemd.netdev</span>(5)</span></a></p></dd><dt id="VLAN="><span class="term"><code class="varname">VLAN=</code></span><a class="headerlink" title="Permalink to this term" href="#VLAN=">¶</a></dt><dd><p><a href="systemd.network.html"><span class="citerefentry"><span class="refentrytitle">systemd.network</span>(5)</span></a></p></dd><dt id="VXLAN="><span class="term"><code class="varname">VXLAN=</code></span><a class="headerlink" title="Permalink to this term" href="#VXLAN=">¶</a></dt><dd><p><a href="systemd.network.html"><span class="citerefentry"><span class="refentrytitle">systemd.network</span>(5)</span></a></p></dd><dt id="Virtualization="><span class="term"><code class="varname">Virtualization=</code></span><a class="headerlink" title="Permalink to this term" href="#Virtualization=">¶</a></dt><dd><p><a href="systemd.link.html"><span class="citerefentry"><span class="refentrytitle">systemd.link</span>(5)</span></a>, <a href="systemd.netdev.html"><span class="citerefentry"><span class="refentrytitle">systemd.netdev</span>(5)</span></a>, <a href="systemd.network.html"><span class="citerefentry"><span class="refentrytitle">systemd.network</span>(5)</span></a></p></dd><dt id="WakeOnLan="><span class="term"><code class="varname">WakeOnLan=</code></span><a class="headerlink" title="Permalink to this term" href="#WakeOnLan=">¶</a></dt><dd><p><a href="systemd.link.html"><span class="citerefentry"><span class="refentrytitle">systemd.link</span>(5)</span></a></p></dd></dl></div></div><div class="refsect1"><a name="idm214181957344"></a><h2 id="Journal fields">Journal fields<a class="headerlink" title="Permalink to this headline" href="#Journal%20fields">¶</a></h2><p>Fields in the journal events with a well known meaning.</p><div class="variablelist"><a name="journal-directives"></a><dl class="variablelist"><dt id="CODE_FILE="><span class="term"><code class="varname">CODE_FILE=</code></span><a class="headerlink" title="Permalink to this term" href="#CODE_FILE=">¶</a></dt><dd><p><a href="systemd.journal-fields.html"><span class="citerefentry"><span class="refentrytitle">systemd.journal-fields</span>(7)</span></a></p></dd><dt id="CODE_FUNC="><span class="term"><code class="varname">CODE_FUNC=</code></span><a class="headerlink" title="Permalink to this term" href="#CODE_FUNC=">¶</a></dt><dd><p><a href="systemd.journal-fields.html"><span class="citerefentry"><span class="refentrytitle">systemd.journal-fields</span>(7)</span></a></p></dd><dt id="CODE_LINE="><span class="term"><code class="varname">CODE_LINE=</code></span><a class="headerlink" title="Permalink to this term" href="#CODE_LINE=">¶</a></dt><dd><p><a href="systemd.journal-fields.html"><span class="citerefentry"><span class="refentrytitle">systemd.journal-fields</span>(7)</span></a></p></dd><dt id="COREDUMP_UNIT="><span class="term"><code class="varname">COREDUMP_UNIT=</code></span><a class="headerlink" title="Permalink to this term" href="#COREDUMP_UNIT=">¶</a></dt><dd><p><a href="systemd.journal-fields.html"><span class="citerefentry"><span class="refentrytitle">systemd.journal-fields</span>(7)</span></a></p></dd><dt id="COREDUMP_USER_UNIT="><span class="term"><code class="varname">COREDUMP_USER_UNIT=</code></span><a class="headerlink" title="Permalink to this term" href="#COREDUMP_USER_UNIT=">¶</a></dt><dd><p><a href="systemd.journal-fields.html"><span class="citerefentry"><span class="refentrytitle">systemd.journal-fields</span>(7)</span></a></p></dd><dt id="ERRNO="><span class="term"><code class="varname">ERRNO=</code></span><a class="headerlink" title="Permalink to this term" href="#ERRNO=">¶</a></dt><dd><p><a href="systemd.journal-fields.html"><span class="citerefentry"><span class="refentrytitle">systemd.journal-fields</span>(7)</span></a></p></dd><dt id="MESSAGE="><span class="term"><code class="varname">MESSAGE=</code></span><a class="headerlink" title="Permalink to this term" href="#MESSAGE=">¶</a></dt><dd><p><a href="systemd.journal-fields.html"><span class="citerefentry"><span class="refentrytitle">systemd.journal-fields</span>(7)</span></a></p></dd><dt id="MESSAGE_ID="><span class="term"><code class="varname">MESSAGE_ID=</code></span><a class="headerlink" title="Permalink to this term" href="#MESSAGE_ID=">¶</a></dt><dd><p><a href="systemd.journal-fields.html"><span class="citerefentry"><span class="refentrytitle">systemd.journal-fields</span>(7)</span></a></p></dd><dt id="OBJECT_AUDIT_LOGINUID="><span class="term"><code class="varname">OBJECT_AUDIT_LOGINUID=</code></span><a class="headerlink" title="Permalink to this term" href="#OBJECT_AUDIT_LOGINUID=">¶</a></dt><dd><p><a href="systemd.journal-fields.html"><span class="citerefentry"><span class="refentrytitle">systemd.journal-fields</span>(7)</span></a></p></dd><dt id="OBJECT_AUDIT_SESSION="><span class="term"><code class="varname">OBJECT_AUDIT_SESSION=</code></span><a class="headerlink" title="Permalink to this term" href="#OBJECT_AUDIT_SESSION=">¶</a></dt><dd><p><a href="systemd.journal-fields.html"><span class="citerefentry"><span class="refentrytitle">systemd.journal-fields</span>(7)</span></a></p></dd><dt id="OBJECT_CMDLINE="><span class="term"><code class="varname">OBJECT_CMDLINE=</code></span><a class="headerlink" title="Permalink to this term" href="#OBJECT_CMDLINE=">¶</a></dt><dd><p><a href="systemd.journal-fields.html"><span class="citerefentry"><span class="refentrytitle">systemd.journal-fields</span>(7)</span></a></p></dd><dt id="OBJECT_COMM="><span class="term"><code class="varname">OBJECT_COMM=</code></span><a class="headerlink" title="Permalink to this term" href="#OBJECT_COMM=">¶</a></dt><dd><p><a href="systemd.journal-fields.html"><span class="citerefentry"><span class="refentrytitle">systemd.journal-fields</span>(7)</span></a></p></dd><dt id="OBJECT_EXE="><span class="term"><code class="varname">OBJECT_EXE=</code></span><a class="headerlink" title="Permalink to this term" href="#OBJECT_EXE=">¶</a></dt><dd><p><a href="systemd.journal-fields.html"><span class="citerefentry"><span class="refentrytitle">systemd.journal-fields</span>(7)</span></a></p></dd><dt id="OBJECT_GID="><span class="term"><code class="varname">OBJECT_GID=</code></span><a class="headerlink" title="Permalink to this term" href="#OBJECT_GID=">¶</a></dt><dd><p><a href="systemd.journal-fields.html"><span class="citerefentry"><span class="refentrytitle">systemd.journal-fields</span>(7)</span></a></p></dd><dt id="OBJECT_PID="><span class="term"><code class="varname">OBJECT_PID=</code></span><a class="headerlink" title="Permalink to this term" href="#OBJECT_PID=">¶</a></dt><dd><p><a href="systemd.journal-fields.html"><span class="citerefentry"><span class="refentrytitle">systemd.journal-fields</span>(7)</span></a></p></dd><dt id="OBJECT_SYSTEMD_CGROUP="><span class="term"><code class="varname">OBJECT_SYSTEMD_CGROUP=</code></span><a class="headerlink" title="Permalink to this term" href="#OBJECT_SYSTEMD_CGROUP=">¶</a></dt><dd><p><a href="systemd.journal-fields.html"><span class="citerefentry"><span class="refentrytitle">systemd.journal-fields</span>(7)</span></a></p></dd><dt id="OBJECT_SYSTEMD_OWNER_UID="><span class="term"><code class="varname">OBJECT_SYSTEMD_OWNER_UID=</code></span><a class="headerlink" title="Permalink to this term" href="#OBJECT_SYSTEMD_OWNER_UID=">¶</a></dt><dd><p><a href="systemd.journal-fields.html"><span class="citerefentry"><span class="refentrytitle">systemd.journal-fields</span>(7)</span></a></p></dd><dt id="OBJECT_SYSTEMD_SESSION="><span class="term"><code class="varname">OBJECT_SYSTEMD_SESSION=</code></span><a class="headerlink" title="Permalink to this term" href="#OBJECT_SYSTEMD_SESSION=">¶</a></dt><dd><p><a href="systemd.journal-fields.html"><span class="citerefentry"><span class="refentrytitle">systemd.journal-fields</span>(7)</span></a></p></dd><dt id="OBJECT_SYSTEMD_UNIT="><span class="term"><code class="varname">OBJECT_SYSTEMD_UNIT=</code></span><a class="headerlink" title="Permalink to this term" href="#OBJECT_SYSTEMD_UNIT=">¶</a></dt><dd><p><a href="systemd.journal-fields.html"><span class="citerefentry"><span class="refentrytitle">systemd.journal-fields</span>(7)</span></a></p></dd><dt id="OBJECT_SYSTEMD_USER_UNIT="><span class="term"><code class="varname">OBJECT_SYSTEMD_USER_UNIT=</code></span><a class="headerlink" title="Permalink to this term" href="#OBJECT_SYSTEMD_USER_UNIT=">¶</a></dt><dd><p><a href="systemd.journal-fields.html"><span class="citerefentry"><span class="refentrytitle">systemd.journal-fields</span>(7)</span></a></p></dd><dt id="OBJECT_UID="><span class="term"><code class="varname">OBJECT_UID=</code></span><a class="headerlink" title="Permalink to this term" href="#OBJECT_UID=">¶</a></dt><dd><p><a href="systemd.journal-fields.html"><span class="citerefentry"><span class="refentrytitle">systemd.journal-fields</span>(7)</span></a></p></dd><dt id="PRIORITY="><span class="term"><code class="varname">PRIORITY=</code></span><a class="headerlink" title="Permalink to this term" href="#PRIORITY=">¶</a></dt><dd><p><a href="systemd.journal-fields.html"><span class="citerefentry"><span class="refentrytitle">systemd.journal-fields</span>(7)</span></a></p></dd><dt id="SYSLOG_FACILITY="><span class="term"><code class="varname">SYSLOG_FACILITY=</code></span><a class="headerlink" title="Permalink to this term" href="#SYSLOG_FACILITY=">¶</a></dt><dd><p><a href="systemd.journal-fields.html"><span class="citerefentry"><span class="refentrytitle">systemd.journal-fields</span>(7)</span></a></p></dd><dt id="SYSLOG_IDENTIFIER="><span class="term"><code class="varname">SYSLOG_IDENTIFIER=</code></span><a class="headerlink" title="Permalink to this term" href="#SYSLOG_IDENTIFIER=">¶</a></dt><dd><p><a href="systemd.journal-fields.html"><span class="citerefentry"><span class="refentrytitle">systemd.journal-fields</span>(7)</span></a></p></dd><dt id="SYSLOG_PID="><span class="term"><code class="varname">SYSLOG_PID=</code></span><a class="headerlink" title="Permalink to this term" href="#SYSLOG_PID=">¶</a></dt><dd><p><a href="systemd.journal-fields.html"><span class="citerefentry"><span class="refentrytitle">systemd.journal-fields</span>(7)</span></a></p></dd><dt id="_AUDIT_LOGINUID="><span class="term"><code class="varname">_AUDIT_LOGINUID=</code></span><a class="headerlink" title="Permalink to this term" href="#_AUDIT_LOGINUID=">¶</a></dt><dd><p><a href="systemd.journal-fields.html"><span class="citerefentry"><span class="refentrytitle">systemd.journal-fields</span>(7)</span></a></p></dd><dt id="_AUDIT_SESSION="><span class="term"><code class="varname">_AUDIT_SESSION=</code></span><a class="headerlink" title="Permalink to this term" href="#_AUDIT_SESSION=">¶</a></dt><dd><p><a href="systemd.journal-fields.html"><span class="citerefentry"><span class="refentrytitle">systemd.journal-fields</span>(7)</span></a></p></dd><dt id="_BOOT_ID="><span class="term"><code class="varname">_BOOT_ID=</code></span><a class="headerlink" title="Permalink to this term" href="#_BOOT_ID=">¶</a></dt><dd><p><a href="systemd.journal-fields.html"><span class="citerefentry"><span class="refentrytitle">systemd.journal-fields</span>(7)</span></a></p></dd><dt id="_CAP_EFFECTIVE="><span class="term"><code class="varname">_CAP_EFFECTIVE=</code></span><a class="headerlink" title="Permalink to this term" href="#_CAP_EFFECTIVE=">¶</a></dt><dd><p><a href="systemd.journal-fields.html"><span class="citerefentry"><span class="refentrytitle">systemd.journal-fields</span>(7)</span></a></p></dd><dt id="_CMDLINE="><span class="term"><code class="varname">_CMDLINE=</code></span><a class="headerlink" title="Permalink to this term" href="#_CMDLINE=">¶</a></dt><dd><p><a href="systemd.journal-fields.html"><span class="citerefentry"><span class="refentrytitle">systemd.journal-fields</span>(7)</span></a></p></dd><dt id="_COMM="><span class="term"><code class="varname">_COMM=</code></span><a class="headerlink" title="Permalink to this term" href="#_COMM=">¶</a></dt><dd><p><a href="systemd.journal-fields.html"><span class="citerefentry"><span class="refentrytitle">systemd.journal-fields</span>(7)</span></a></p></dd><dt id="_EXE="><span class="term"><code class="varname">_EXE=</code></span><a class="headerlink" title="Permalink to this term" href="#_EXE=">¶</a></dt><dd><p><a href="systemd.journal-fields.html"><span class="citerefentry"><span class="refentrytitle">systemd.journal-fields</span>(7)</span></a></p></dd><dt id="_GID="><span class="term"><code class="varname">_GID=</code></span><a class="headerlink" title="Permalink to this term" href="#_GID=">¶</a></dt><dd><p><a href="systemd.journal-fields.html"><span class="citerefentry"><span class="refentrytitle">systemd.journal-fields</span>(7)</span></a></p></dd><dt id="_HOSTNAME="><span class="term"><code class="varname">_HOSTNAME=</code></span><a class="headerlink" title="Permalink to this term" href="#_HOSTNAME=">¶</a></dt><dd><p><a href="systemd.journal-fields.html"><span class="citerefentry"><span class="refentrytitle">systemd.journal-fields</span>(7)</span></a></p></dd><dt id="_KERNEL_DEVICE="><span class="term"><code class="varname">_KERNEL_DEVICE=</code></span><a class="headerlink" title="Permalink to this term" href="#_KERNEL_DEVICE=">¶</a></dt><dd><p><a href="systemd.journal-fields.html"><span class="citerefentry"><span class="refentrytitle">systemd.journal-fields</span>(7)</span></a></p></dd><dt id="_KERNEL_SUBSYSTEM="><span class="term"><code class="varname">_KERNEL_SUBSYSTEM=</code></span><a class="headerlink" title="Permalink to this term" href="#_KERNEL_SUBSYSTEM=">¶</a></dt><dd><p><a href="systemd.journal-fields.html"><span class="citerefentry"><span class="refentrytitle">systemd.journal-fields</span>(7)</span></a></p></dd><dt id="_MACHINE_ID="><span class="term"><code class="varname">_MACHINE_ID=</code></span><a class="headerlink" title="Permalink to this term" href="#_MACHINE_ID=">¶</a></dt><dd><p><a href="systemd.journal-fields.html"><span class="citerefentry"><span class="refentrytitle">systemd.journal-fields</span>(7)</span></a></p></dd><dt id="_PID="><span class="term"><code class="varname">_PID=</code></span><a class="headerlink" title="Permalink to this term" href="#_PID=">¶</a></dt><dd><p><a href="systemd.journal-fields.html"><span class="citerefentry"><span class="refentrytitle">systemd.journal-fields</span>(7)</span></a></p></dd><dt id="_SELINUX_CONTEXT="><span class="term"><code class="varname">_SELINUX_CONTEXT=</code></span><a class="headerlink" title="Permalink to this term" href="#_SELINUX_CONTEXT=">¶</a></dt><dd><p><a href="systemd.journal-fields.html"><span class="citerefentry"><span class="refentrytitle">systemd.journal-fields</span>(7)</span></a></p></dd><dt id="_SOURCE_REALTIME_TIMESTAMP="><span class="term"><code class="varname">_SOURCE_REALTIME_TIMESTAMP=</code></span><a class="headerlink" title="Permalink to this term" href="#_SOURCE_REALTIME_TIMESTAMP=">¶</a></dt><dd><p><a href="systemd.journal-fields.html"><span class="citerefentry"><span class="refentrytitle">systemd.journal-fields</span>(7)</span></a></p></dd><dt id="_SYSTEMD_CGROUP="><span class="term"><code class="varname">_SYSTEMD_CGROUP=</code></span><a class="headerlink" title="Permalink to this term" href="#_SYSTEMD_CGROUP=">¶</a></dt><dd><p><a href="systemd.journal-fields.html"><span class="citerefentry"><span class="refentrytitle">systemd.journal-fields</span>(7)</span></a></p></dd><dt id="_SYSTEMD_OWNER_UID="><span class="term"><code class="varname">_SYSTEMD_OWNER_UID=</code></span><a class="headerlink" title="Permalink to this term" href="#_SYSTEMD_OWNER_UID=">¶</a></dt><dd><p><a href="systemd.journal-fields.html"><span class="citerefentry"><span class="refentrytitle">systemd.journal-fields</span>(7)</span></a></p></dd><dt id="_SYSTEMD_SESSION="><span class="term"><code class="varname">_SYSTEMD_SESSION=</code></span><a class="headerlink" title="Permalink to this term" href="#_SYSTEMD_SESSION=">¶</a></dt><dd><p><a href="systemd.journal-fields.html"><span class="citerefentry"><span class="refentrytitle">systemd.journal-fields</span>(7)</span></a></p></dd><dt id="_SYSTEMD_SLICE="><span class="term"><code class="varname">_SYSTEMD_SLICE=</code></span><a class="headerlink" title="Permalink to this term" href="#_SYSTEMD_SLICE=">¶</a></dt><dd><p><a href="systemd.journal-fields.html"><span class="citerefentry"><span class="refentrytitle">systemd.journal-fields</span>(7)</span></a></p></dd><dt id="_SYSTEMD_UNIT="><span class="term"><code class="varname">_SYSTEMD_UNIT=</code></span><a class="headerlink" title="Permalink to this term" href="#_SYSTEMD_UNIT=">¶</a></dt><dd><p><a href="systemd.journal-fields.html"><span class="citerefentry"><span class="refentrytitle">systemd.journal-fields</span>(7)</span></a></p></dd><dt id="_SYSTEMD_USER_UNIT="><span class="term"><code class="varname">_SYSTEMD_USER_UNIT=</code></span><a class="headerlink" title="Permalink to this term" href="#_SYSTEMD_USER_UNIT=">¶</a></dt><dd><p><a href="systemd.journal-fields.html"><span class="citerefentry"><span class="refentrytitle">systemd.journal-fields</span>(7)</span></a></p></dd><dt id="_TRANSPORT="><span class="term"><code class="varname">_TRANSPORT=</code></span><a class="headerlink" title="Permalink to this term" href="#_TRANSPORT=">¶</a></dt><dd><p><a href="systemd.journal-fields.html"><span class="citerefentry"><span class="refentrytitle">systemd.journal-fields</span>(7)</span></a></p></dd><dt id="_UDEV_DEVLINK="><span class="term"><code class="varname">_UDEV_DEVLINK=</code></span><a class="headerlink" title="Permalink to this term" href="#_UDEV_DEVLINK=">¶</a></dt><dd><p><a href="systemd.journal-fields.html"><span class="citerefentry"><span class="refentrytitle">systemd.journal-fields</span>(7)</span></a></p></dd><dt id="_UDEV_DEVNODE="><span class="term"><code class="varname">_UDEV_DEVNODE=</code></span><a class="headerlink" title="Permalink to this term" href="#_UDEV_DEVNODE=">¶</a></dt><dd><p><a href="systemd.journal-fields.html"><span class="citerefentry"><span class="refentrytitle">systemd.journal-fields</span>(7)</span></a></p></dd><dt id="_UDEV_SYSNAME="><span class="term"><code class="varname">_UDEV_SYSNAME=</code></span><a class="headerlink" title="Permalink to this term" href="#_UDEV_SYSNAME=">¶</a></dt><dd><p><a href="systemd.journal-fields.html"><span class="citerefentry"><span class="refentrytitle">systemd.journal-fields</span>(7)</span></a></p></dd><dt id="_UID="><span class="term"><code class="varname">_UID=</code></span><a class="headerlink" title="Permalink to this term" href="#_UID=">¶</a></dt><dd><p><a href="systemd.journal-fields.html"><span class="citerefentry"><span class="refentrytitle">systemd.journal-fields</span>(7)</span></a></p></dd><dt id="__CURSOR="><span class="term"><code class="varname">__CURSOR=</code></span><a class="headerlink" title="Permalink to this term" href="#__CURSOR=">¶</a></dt><dd><p><a href="systemd.journal-fields.html"><span class="citerefentry"><span class="refentrytitle">systemd.journal-fields</span>(7)</span></a></p></dd><dt id="__MONOTONIC_TIMESTAMP="><span class="term"><code class="varname">__MONOTONIC_TIMESTAMP=</code></span><a class="headerlink" title="Permalink to this term" href="#__MONOTONIC_TIMESTAMP=">¶</a></dt><dd><p><a href="systemd.journal-fields.html"><span class="citerefentry"><span class="refentrytitle">systemd.journal-fields</span>(7)</span></a></p></dd><dt id="__REALTIME_TIMESTAMP="><span class="term"><code class="varname">__REALTIME_TIMESTAMP=</code></span><a class="headerlink" title="Permalink to this term" href="#__REALTIME_TIMESTAMP=">¶</a></dt><dd><p><a href="systemd.journal-fields.html"><span class="citerefentry"><span class="refentrytitle">systemd.journal-fields</span>(7)</span></a></p></dd></dl></div></div><div class="refsect1"><a name="idm214181869120"></a><h2 id="PAM configuration directives">PAM configuration directives<a class="headerlink" title="Permalink to this headline" href="#PAM%20configuration%20directives">¶</a></h2><p>Directives for configuring PAM behaviour.</p><div class="variablelist"><a name="pam-directives"></a><dl class="variablelist"><dt id="class="><span class="term"><code class="option">class=</code></span><a class="headerlink" title="Permalink to this term" href="#class=">¶</a></dt><dd><p><a href="pam_systemd.html"><span class="citerefentry"><span class="refentrytitle">pam_systemd</span>(8)</span></a></p></dd><dt id="debug"><span class="term"><code class="varname">debug</code></span><a class="headerlink" title="Permalink to this term" href="#debug">¶</a></dt><dd><p><a href="pam_systemd.html"><span class="citerefentry"><span class="refentrytitle">pam_systemd</span>(8)</span></a></p></dd><dt id="type="><span class="term"><code class="option">type=</code></span><a class="headerlink" title="Permalink to this term" href="#type=">¶</a></dt><dd><p><a href="pam_systemd.html"><span class="citerefentry"><span class="refentrytitle">pam_systemd</span>(8)</span></a></p></dd></dl></div></div><div class="refsect1"><a name="idm214181862528"></a><h2 id="/etc/crypttab and
+                /etc/fstab options"><code class="filename">/etc/crypttab</code> and
+                <code class="filename">/etc/fstab</code> options<a class="headerlink" title="Permalink to this headline" href="#/etc/crypttab%20and%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20/etc/fstab%20options">¶</a></h2><p>Options which influence mounted filesystems and
+                encrypted volumes.</p><div class="variablelist"><a name="fstab-options"></a><dl class="variablelist"><dt id="auto"><span class="term"><code class="constant">auto</code></span><a class="headerlink" title="Permalink to this term" href="#auto">¶</a></dt><dd><p><a href="systemd.mount.html"><span class="citerefentry"><span class="refentrytitle">systemd.mount</span>(5)</span></a></p></dd><dt id="cipher="><span class="term"><code class="option">cipher=</code></span><a class="headerlink" title="Permalink to this term" href="#cipher=">¶</a></dt><dd><p><a href="crypttab.html"><span class="citerefentry"><span class="refentrytitle">crypttab</span>(5)</span></a></p></dd><dt id="discard"><span class="term"><code class="option">discard</code></span><a class="headerlink" title="Permalink to this term" href="#discard">¶</a></dt><dd><p><a href="crypttab.html"><span class="citerefentry"><span class="refentrytitle">crypttab</span>(5)</span></a></p></dd><dt id="fail"><span class="term"><code class="option">fail</code></span><a class="headerlink" title="Permalink to this term" href="#fail">¶</a></dt><dd><p><a href="systemd.mount.html"><span class="citerefentry"><span class="refentrytitle">systemd.mount</span>(5)</span></a></p></dd><dt id="hash="><span class="term"><code class="option">hash=</code></span><a class="headerlink" title="Permalink to this term" href="#hash=">¶</a></dt><dd><p><a href="crypttab.html"><span class="citerefentry"><span class="refentrytitle">crypttab</span>(5)</span></a></p></dd><dt id="key-slot="><span class="term"><code class="option">key-slot=</code></span><a class="headerlink" title="Permalink to this term" href="#key-slot=">¶</a></dt><dd><p><a href="crypttab.html"><span class="citerefentry"><span class="refentrytitle">crypttab</span>(5)</span></a></p></dd><dt id="keyfile-offset="><span class="term"><code class="option">keyfile-offset=</code></span><a class="headerlink" title="Permalink to this term" href="#keyfile-offset=">¶</a></dt><dd><p><a href="crypttab.html"><span class="citerefentry"><span class="refentrytitle">crypttab</span>(5)</span></a></p></dd><dt id="keyfile-size="><span class="term"><code class="option">keyfile-size=</code></span><a class="headerlink" title="Permalink to this term" href="#keyfile-size=">¶</a></dt><dd><p><a href="crypttab.html"><span class="citerefentry"><span class="refentrytitle">crypttab</span>(5)</span></a></p></dd><dt id="luks"><span class="term"><code class="option">luks</code></span><a class="headerlink" title="Permalink to this term" href="#luks">¶</a></dt><dd><p><a href="crypttab.html"><span class="citerefentry"><span class="refentrytitle">crypttab</span>(5)</span></a></p></dd><dt id="noauto"><span class="term"><code class="option">noauto</code></span><a class="headerlink" title="Permalink to this term" href="#noauto">¶</a></dt><dd><p><a href="crypttab.html"><span class="citerefentry"><span class="refentrytitle">crypttab</span>(5)</span></a>, <a href="systemd.mount.html"><span class="citerefentry"><span class="refentrytitle">systemd.mount</span>(5)</span></a></p></dd><dt id="nofail"><span class="term"><code class="option">nofail</code></span><a class="headerlink" title="Permalink to this term" href="#nofail">¶</a></dt><dd><p><a href="crypttab.html"><span class="citerefentry"><span class="refentrytitle">crypttab</span>(5)</span></a>, <a href="systemd.mount.html"><span class="citerefentry"><span class="refentrytitle">systemd.mount</span>(5)</span></a></p></dd><dt id="plain"><span class="term"><code class="option">plain</code></span><a class="headerlink" title="Permalink to this term" href="#plain">¶</a></dt><dd><p><a href="crypttab.html"><span class="citerefentry"><span class="refentrytitle">crypttab</span>(5)</span></a></p></dd><dt id="read-only"><span class="term"><code class="option">read-only</code></span><a class="headerlink" title="Permalink to this term" href="#read-only">¶</a></dt><dd><p><a href="crypttab.html"><span class="citerefentry"><span class="refentrytitle">crypttab</span>(5)</span></a></p></dd><dt id="readonly"><span class="term"><code class="option">readonly</code></span><a class="headerlink" title="Permalink to this term" href="#readonly">¶</a></dt><dd><p><a href="crypttab.html"><span class="citerefentry"><span class="refentrytitle">crypttab</span>(5)</span></a></p></dd><dt id="size="><span class="term"><code class="option">size=</code></span><a class="headerlink" title="Permalink to this term" href="#size=">¶</a></dt><dd><p><a href="crypttab.html"><span class="citerefentry"><span class="refentrytitle">crypttab</span>(5)</span></a></p></dd><dt id="swap"><span class="term"><code class="option">swap</code></span><a class="headerlink" title="Permalink to this term" href="#swap">¶</a></dt><dd><p><a href="crypttab.html"><span class="citerefentry"><span class="refentrytitle">crypttab</span>(5)</span></a></p></dd><dt id="tcrypt"><span class="term"><code class="option">tcrypt</code></span><a class="headerlink" title="Permalink to this term" href="#tcrypt">¶</a></dt><dd><p><a href="crypttab.html"><span class="citerefentry"><span class="refentrytitle">crypttab</span>(5)</span></a></p></dd><dt id="tcrypt-hidden"><span class="term"><code class="option">tcrypt-hidden</code></span><a class="headerlink" title="Permalink to this term" href="#tcrypt-hidden">¶</a></dt><dd><p><a href="crypttab.html"><span class="citerefentry"><span class="refentrytitle">crypttab</span>(5)</span></a></p></dd><dt id="tcrypt-keyfile="><span class="term"><code class="option">tcrypt-keyfile=</code></span><a class="headerlink" title="Permalink to this term" href="#tcrypt-keyfile=">¶</a></dt><dd><p><a href="crypttab.html"><span class="citerefentry"><span class="refentrytitle">crypttab</span>(5)</span></a></p></dd><dt id="tcrypt-system"><span class="term"><code class="option">tcrypt-system</code></span><a class="headerlink" title="Permalink to this term" href="#tcrypt-system">¶</a></dt><dd><p><a href="crypttab.html"><span class="citerefentry"><span class="refentrytitle">crypttab</span>(5)</span></a></p></dd><dt id="timeout="><span class="term"><code class="option">timeout=</code></span><a class="headerlink" title="Permalink to this term" href="#timeout=">¶</a></dt><dd><p><a href="crypttab.html"><span class="citerefentry"><span class="refentrytitle">crypttab</span>(5)</span></a></p></dd><dt id="tmp"><span class="term"><code class="option">tmp</code></span><a class="headerlink" title="Permalink to this term" href="#tmp">¶</a></dt><dd><p><a href="crypttab.html"><span class="citerefentry"><span class="refentrytitle">crypttab</span>(5)</span></a></p></dd><dt id="tries="><span class="term"><code class="option">tries=</code></span><a class="headerlink" title="Permalink to this term" href="#tries=">¶</a></dt><dd><p><a href="crypttab.html"><span class="citerefentry"><span class="refentrytitle">crypttab</span>(5)</span></a></p></dd><dt id="verify"><span class="term"><code class="option">verify</code></span><a class="headerlink" title="Permalink to this term" href="#verify">¶</a></dt><dd><p><a href="crypttab.html"><span class="citerefentry"><span class="refentrytitle">crypttab</span>(5)</span></a></p></dd><dt id="x-initrd.mount"><span class="term"><code class="option">x-initrd.mount</code></span><a class="headerlink" title="Permalink to this term" href="#x-initrd.mount">¶</a></dt><dd><p><a href="systemd.mount.html"><span class="citerefentry"><span class="refentrytitle">systemd.mount</span>(5)</span></a></p></dd><dt id="x-systemd.automount"><span class="term"><code class="option">x-systemd.automount</code></span><a class="headerlink" title="Permalink to this term" href="#x-systemd.automount">¶</a></dt><dd><p><a href="systemd.mount.html"><span class="citerefentry"><span class="refentrytitle">systemd.mount</span>(5)</span></a></p></dd><dt id="x-systemd.device-timeout="><span class="term"><code class="option">x-systemd.device-timeout=</code></span><a class="headerlink" title="Permalink to this term" href="#x-systemd.device-timeout=">¶</a></dt><dd><p><a href="systemd.mount.html"><span class="citerefentry"><span class="refentrytitle">systemd.mount</span>(5)</span></a></p></dd></dl></div></div><div class="refsect1"><a name="idm214181815200"></a><h2 id="System manager directives">System manager directives<a class="headerlink" title="Permalink to this headline" href="#System%20manager%20directives">¶</a></h2><p>Directives for configuring the behaviour of the
+                systemd process.</p><div class="variablelist"><a name="systemd-directives"></a><dl class="variablelist"><dt id="CPUAffinity="><span class="term"><code class="varname">CPUAffinity=</code></span><a class="headerlink" title="Permalink to this term" href="#CPUAffinity=">¶</a></dt><dd><p><a href="systemd-system.conf.html"><span class="citerefentry"><span class="refentrytitle">systemd-system.conf</span>(5)</span></a></p></dd><dt id="CapabilityBoundingSet="><span class="term"><code class="varname">CapabilityBoundingSet=</code></span><a class="headerlink" title="Permalink to this term" href="#CapabilityBoundingSet=">¶</a></dt><dd><p><a href="systemd-system.conf.html"><span class="citerefentry"><span class="refentrytitle">systemd-system.conf</span>(5)</span></a></p></dd><dt id="CrashChVT="><span class="term"><code class="varname">CrashChVT=</code></span><a class="headerlink" title="Permalink to this term" href="#CrashChVT=">¶</a></dt><dd><p><a href="systemd-system.conf.html"><span class="citerefentry"><span class="refentrytitle">systemd-system.conf</span>(5)</span></a></p></dd><dt id="CrashShell="><span class="term"><code class="varname">CrashShell=</code></span><a class="headerlink" title="Permalink to this term" href="#CrashShell=">¶</a></dt><dd><p><a href="systemd-system.conf.html"><span class="citerefentry"><span class="refentrytitle">systemd-system.conf</span>(5)</span></a></p></dd><dt id="DefaultBlockIOAccounting="><span class="term"><code class="varname">DefaultBlockIOAccounting=</code></span><a class="headerlink" title="Permalink to this term" href="#DefaultBlockIOAccounting=">¶</a></dt><dd><p><a href="systemd-system.conf.html"><span class="citerefentry"><span class="refentrytitle">systemd-system.conf</span>(5)</span></a></p></dd><dt id="DefaultCPUAccounting="><span class="term"><code class="varname">DefaultCPUAccounting=</code></span><a class="headerlink" title="Permalink to this term" href="#DefaultCPUAccounting=">¶</a></dt><dd><p><a href="systemd-system.conf.html"><span class="citerefentry"><span class="refentrytitle">systemd-system.conf</span>(5)</span></a></p></dd><dt id="DefaultEnvironment="><span class="term"><code class="varname">DefaultEnvironment=</code></span><a class="headerlink" title="Permalink to this term" href="#DefaultEnvironment=">¶</a></dt><dd><p><a href="systemd-system.conf.html"><span class="citerefentry"><span class="refentrytitle">systemd-system.conf</span>(5)</span></a></p></dd><dt id="DefaultLimitAS="><span class="term"><code class="varname">DefaultLimitAS=</code></span><a class="headerlink" title="Permalink to this term" href="#DefaultLimitAS=">¶</a></dt><dd><p><a href="systemd-system.conf.html"><span class="citerefentry"><span class="refentrytitle">systemd-system.conf</span>(5)</span></a></p></dd><dt id="DefaultLimitCORE="><span class="term"><code class="varname">DefaultLimitCORE=</code></span><a class="headerlink" title="Permalink to this term" href="#DefaultLimitCORE=">¶</a></dt><dd><p><a href="systemd-system.conf.html"><span class="citerefentry"><span class="refentrytitle">systemd-system.conf</span>(5)</span></a></p></dd><dt id="DefaultLimitCPU="><span class="term"><code class="varname">DefaultLimitCPU=</code></span><a class="headerlink" title="Permalink to this term" href="#DefaultLimitCPU=">¶</a></dt><dd><p><a href="systemd-system.conf.html"><span class="citerefentry"><span class="refentrytitle">systemd-system.conf</span>(5)</span></a></p></dd><dt id="DefaultLimitDATA="><span class="term"><code class="varname">DefaultLimitDATA=</code></span><a class="headerlink" title="Permalink to this term" href="#DefaultLimitDATA=">¶</a></dt><dd><p><a href="systemd-system.conf.html"><span class="citerefentry"><span class="refentrytitle">systemd-system.conf</span>(5)</span></a></p></dd><dt id="DefaultLimitFSIZE="><span class="term"><code class="varname">DefaultLimitFSIZE=</code></span><a class="headerlink" title="Permalink to this term" href="#DefaultLimitFSIZE=">¶</a></dt><dd><p><a href="systemd-system.conf.html"><span class="citerefentry"><span class="refentrytitle">systemd-system.conf</span>(5)</span></a></p></dd><dt id="DefaultLimitLOCKS="><span class="term"><code class="varname">DefaultLimitLOCKS=</code></span><a class="headerlink" title="Permalink to this term" href="#DefaultLimitLOCKS=">¶</a></dt><dd><p><a href="systemd-system.conf.html"><span class="citerefentry"><span class="refentrytitle">systemd-system.conf</span>(5)</span></a></p></dd><dt id="DefaultLimitMEMLOCK="><span class="term"><code class="varname">DefaultLimitMEMLOCK=</code></span><a class="headerlink" title="Permalink to this term" href="#DefaultLimitMEMLOCK=">¶</a></dt><dd><p><a href="systemd-system.conf.html"><span class="citerefentry"><span class="refentrytitle">systemd-system.conf</span>(5)</span></a></p></dd><dt id="DefaultLimitMSGQUEUE="><span class="term"><code class="varname">DefaultLimitMSGQUEUE=</code></span><a class="headerlink" title="Permalink to this term" href="#DefaultLimitMSGQUEUE=">¶</a></dt><dd><p><a href="systemd-system.conf.html"><span class="citerefentry"><span class="refentrytitle">systemd-system.conf</span>(5)</span></a></p></dd><dt id="DefaultLimitNICE="><span class="term"><code class="varname">DefaultLimitNICE=</code></span><a class="headerlink" title="Permalink to this term" href="#DefaultLimitNICE=">¶</a></dt><dd><p><a href="systemd-system.conf.html"><span class="citerefentry"><span class="refentrytitle">systemd-system.conf</span>(5)</span></a></p></dd><dt id="DefaultLimitNOFILE="><span class="term"><code class="varname">DefaultLimitNOFILE=</code></span><a class="headerlink" title="Permalink to this term" href="#DefaultLimitNOFILE=">¶</a></dt><dd><p><a href="systemd-system.conf.html"><span class="citerefentry"><span class="refentrytitle">systemd-system.conf</span>(5)</span></a></p></dd><dt id="DefaultLimitNPROC="><span class="term"><code class="varname">DefaultLimitNPROC=</code></span><a class="headerlink" title="Permalink to this term" href="#DefaultLimitNPROC=">¶</a></dt><dd><p><a href="systemd-system.conf.html"><span class="citerefentry"><span class="refentrytitle">systemd-system.conf</span>(5)</span></a></p></dd><dt id="DefaultLimitRSS="><span class="term"><code class="varname">DefaultLimitRSS=</code></span><a class="headerlink" title="Permalink to this term" href="#DefaultLimitRSS=">¶</a></dt><dd><p><a href="systemd-system.conf.html"><span class="citerefentry"><span class="refentrytitle">systemd-system.conf</span>(5)</span></a></p></dd><dt id="DefaultLimitRTPRIO="><span class="term"><code class="varname">DefaultLimitRTPRIO=</code></span><a class="headerlink" title="Permalink to this term" href="#DefaultLimitRTPRIO=">¶</a></dt><dd><p><a href="systemd-system.conf.html"><span class="citerefentry"><span class="refentrytitle">systemd-system.conf</span>(5)</span></a></p></dd><dt id="DefaultLimitRTTIME="><span class="term"><code class="varname">DefaultLimitRTTIME=</code></span><a class="headerlink" title="Permalink to this term" href="#DefaultLimitRTTIME=">¶</a></dt><dd><p><a href="systemd-system.conf.html"><span class="citerefentry"><span class="refentrytitle">systemd-system.conf</span>(5)</span></a></p></dd><dt id="DefaultLimitSIGPENDING="><span class="term"><code class="varname">DefaultLimitSIGPENDING=</code></span><a class="headerlink" title="Permalink to this term" href="#DefaultLimitSIGPENDING=">¶</a></dt><dd><p><a href="systemd-system.conf.html"><span class="citerefentry"><span class="refentrytitle">systemd-system.conf</span>(5)</span></a></p></dd><dt id="DefaultLimitSTACK="><span class="term"><code class="varname">DefaultLimitSTACK=</code></span><a class="headerlink" title="Permalink to this term" href="#DefaultLimitSTACK=">¶</a></dt><dd><p><a href="systemd-system.conf.html"><span class="citerefentry"><span class="refentrytitle">systemd-system.conf</span>(5)</span></a></p></dd><dt id="DefaultMemoryAccounting="><span class="term"><code class="varname">DefaultMemoryAccounting=</code></span><a class="headerlink" title="Permalink to this term" href="#DefaultMemoryAccounting=">¶</a></dt><dd><p><a href="systemd-system.conf.html"><span class="citerefentry"><span class="refentrytitle">systemd-system.conf</span>(5)</span></a></p></dd><dt id="DefaultRestartSec="><span class="term"><code class="varname">DefaultRestartSec=</code></span><a class="headerlink" title="Permalink to this term" href="#DefaultRestartSec=">¶</a></dt><dd><p><a href="systemd-system.conf.html"><span class="citerefentry"><span class="refentrytitle">systemd-system.conf</span>(5)</span></a></p></dd><dt id="DefaultStandardError="><span class="term"><code class="varname">DefaultStandardError=</code></span><a class="headerlink" title="Permalink to this term" href="#DefaultStandardError=">¶</a></dt><dd><p><a href="systemd-system.conf.html"><span class="citerefentry"><span class="refentrytitle">systemd-system.conf</span>(5)</span></a></p></dd><dt id="DefaultStandardOutput="><span class="term"><code class="varname">DefaultStandardOutput=</code></span><a class="headerlink" title="Permalink to this term" href="#DefaultStandardOutput=">¶</a></dt><dd><p><a href="systemd-system.conf.html"><span class="citerefentry"><span class="refentrytitle">systemd-system.conf</span>(5)</span></a></p></dd><dt id="DefaultStartLimitBurst="><span class="term"><code class="varname">DefaultStartLimitBurst=</code></span><a class="headerlink" title="Permalink to this term" href="#DefaultStartLimitBurst=">¶</a></dt><dd><p><a href="systemd-system.conf.html"><span class="citerefentry"><span class="refentrytitle">systemd-system.conf</span>(5)</span></a></p></dd><dt id="DefaultStartLimitInterval="><span class="term"><code class="varname">DefaultStartLimitInterval=</code></span><a class="headerlink" title="Permalink to this term" href="#DefaultStartLimitInterval=">¶</a></dt><dd><p><a href="systemd-system.conf.html"><span class="citerefentry"><span class="refentrytitle">systemd-system.conf</span>(5)</span></a></p></dd><dt id="DefaultTimeoutStartSec="><span class="term"><code class="varname">DefaultTimeoutStartSec=</code></span><a class="headerlink" title="Permalink to this term" href="#DefaultTimeoutStartSec=">¶</a></dt><dd><p><a href="systemd-system.conf.html"><span class="citerefentry"><span class="refentrytitle">systemd-system.conf</span>(5)</span></a></p></dd><dt id="DefaultTimeoutStopSec="><span class="term"><code class="varname">DefaultTimeoutStopSec=</code></span><a class="headerlink" title="Permalink to this term" href="#DefaultTimeoutStopSec=">¶</a></dt><dd><p><a href="systemd-system.conf.html"><span class="citerefentry"><span class="refentrytitle">systemd-system.conf</span>(5)</span></a></p></dd><dt id="DefaultTimerAccuracySec="><span class="term"><code class="varname">DefaultTimerAccuracySec=</code></span><a class="headerlink" title="Permalink to this term" href="#DefaultTimerAccuracySec=">¶</a></dt><dd><p><a href="systemd-system.conf.html"><span class="citerefentry"><span class="refentrytitle">systemd-system.conf</span>(5)</span></a></p></dd><dt id="DumpCore="><span class="term"><code class="varname">DumpCore=</code></span><a class="headerlink" title="Permalink to this term" href="#DumpCore=">¶</a></dt><dd><p><a href="systemd-system.conf.html"><span class="citerefentry"><span class="refentrytitle">systemd-system.conf</span>(5)</span></a></p></dd><dt id="HibernateMode="><span class="term"><code class="varname">HibernateMode=</code></span><a class="headerlink" title="Permalink to this term" href="#HibernateMode=">¶</a></dt><dd><p><a href="systemd-sleep.conf.html"><span class="citerefentry"><span class="refentrytitle">systemd-sleep.conf</span>(5)</span></a></p></dd><dt id="HibernateState="><span class="term"><code class="varname">HibernateState=</code></span><a class="headerlink" title="Permalink to this term" href="#HibernateState=">¶</a></dt><dd><p><a href="systemd-sleep.conf.html"><span class="citerefentry"><span class="refentrytitle">systemd-sleep.conf</span>(5)</span></a></p></dd><dt id="HybridSleepMode="><span class="term"><code class="varname">HybridSleepMode=</code></span><a class="headerlink" title="Permalink to this term" href="#HybridSleepMode=">¶</a></dt><dd><p><a href="systemd-sleep.conf.html"><span class="citerefentry"><span class="refentrytitle">systemd-sleep.conf</span>(5)</span></a></p></dd><dt id="HybridSleepState="><span class="term"><code class="varname">HybridSleepState=</code></span><a class="headerlink" title="Permalink to this term" href="#HybridSleepState=">¶</a></dt><dd><p><a href="systemd-sleep.conf.html"><span class="citerefentry"><span class="refentrytitle">systemd-sleep.conf</span>(5)</span></a></p></dd><dt id="JoinControllers="><span class="term"><code class="varname">JoinControllers=</code></span><a class="headerlink" title="Permalink to this term" href="#JoinControllers=">¶</a></dt><dd><p><a href="systemd-system.conf.html"><span class="citerefentry"><span class="refentrytitle">systemd-system.conf</span>(5)</span></a></p></dd><dt id="LogColor="><span class="term"><code class="varname">LogColor=</code></span><a class="headerlink" title="Permalink to this term" href="#LogColor=">¶</a></dt><dd><p><a href="systemd-system.conf.html"><span class="citerefentry"><span class="refentrytitle">systemd-system.conf</span>(5)</span></a></p></dd><dt id="LogLevel="><span class="term"><code class="varname">LogLevel=</code></span><a class="headerlink" title="Permalink to this term" href="#LogLevel=">¶</a></dt><dd><p><a href="systemd-system.conf.html"><span class="citerefentry"><span class="refentrytitle">systemd-system.conf</span>(5)</span></a></p></dd><dt id="LogLocation="><span class="term"><code class="varname">LogLocation=</code></span><a class="headerlink" title="Permalink to this term" href="#LogLocation=">¶</a></dt><dd><p><a href="systemd-system.conf.html"><span class="citerefentry"><span class="refentrytitle">systemd-system.conf</span>(5)</span></a></p></dd><dt id="LogTarget="><span class="term"><code class="varname">LogTarget=</code></span><a class="headerlink" title="Permalink to this term" href="#LogTarget=">¶</a></dt><dd><p><a href="systemd-system.conf.html"><span class="citerefentry"><span class="refentrytitle">systemd-system.conf</span>(5)</span></a></p></dd><dt id="RuntimeWatchdogSec="><span class="term"><code class="varname">RuntimeWatchdogSec=</code></span><a class="headerlink" title="Permalink to this term" href="#RuntimeWatchdogSec=">¶</a></dt><dd><p><a href="systemd-system.conf.html"><span class="citerefentry"><span class="refentrytitle">systemd-system.conf</span>(5)</span></a></p></dd><dt id="ShowStatus="><span class="term"><code class="varname">ShowStatus=</code></span><a class="headerlink" title="Permalink to this term" href="#ShowStatus=">¶</a></dt><dd><p><a href="systemd-system.conf.html"><span class="citerefentry"><span class="refentrytitle">systemd-system.conf</span>(5)</span></a></p></dd><dt id="ShutdownWatchdogSec="><span class="term"><code class="varname">ShutdownWatchdogSec=</code></span><a class="headerlink" title="Permalink to this term" href="#ShutdownWatchdogSec=">¶</a></dt><dd><p><a href="systemd-system.conf.html"><span class="citerefentry"><span class="refentrytitle">systemd-system.conf</span>(5)</span></a></p></dd><dt id="SuspendMode="><span class="term"><code class="varname">SuspendMode=</code></span><a class="headerlink" title="Permalink to this term" href="#SuspendMode=">¶</a></dt><dd><p><a href="systemd-sleep.conf.html"><span class="citerefentry"><span class="refentrytitle">systemd-sleep.conf</span>(5)</span></a></p></dd><dt id="SuspendState="><span class="term"><code class="varname">SuspendState=</code></span><a class="headerlink" title="Permalink to this term" href="#SuspendState=">¶</a></dt><dd><p><a href="systemd-sleep.conf.html"><span class="citerefentry"><span class="refentrytitle">systemd-sleep.conf</span>(5)</span></a></p></dd><dt id="SystemCallArchitectures="><span class="term"><code class="varname">SystemCallArchitectures=</code></span><a class="headerlink" title="Permalink to this term" href="#SystemCallArchitectures=">¶</a></dt><dd><p><a href="systemd-system.conf.html"><span class="citerefentry"><span class="refentrytitle">systemd-system.conf</span>(5)</span></a></p></dd><dt id="TimerSlackNSec="><span class="term"><code class="varname">TimerSlackNSec=</code></span><a class="headerlink" title="Permalink to this term" href="#TimerSlackNSec=">¶</a></dt><dd><p><a href="systemd-system.conf.html"><span class="citerefentry"><span class="refentrytitle">systemd-system.conf</span>(5)</span></a></p></dd></dl></div></div><div class="refsect1"><a name="idm214181734896"></a><h2 id="bootchart.conf directives">bootchart.conf directives<a class="headerlink" title="Permalink to this headline" href="#bootchart.conf%20directives">¶</a></h2><p>Directives for configuring the behaviour of the
+                systemd-bootchart process.</p><div class="variablelist"><a name="bootchart-directives"></a><dl class="variablelist"><dt id="ControlGroup="><span class="term"><code class="varname">ControlGroup=</code></span><a class="headerlink" title="Permalink to this term" href="#ControlGroup=">¶</a></dt><dd><p><a href="bootchart.conf.html"><span class="citerefentry"><span class="refentrytitle">bootchart.conf</span>(5)</span></a></p></dd><dt id="Filter="><span class="term"><code class="varname">Filter=</code></span><a class="headerlink" title="Permalink to this term" href="#Filter=">¶</a></dt><dd><p><a href="bootchart.conf.html"><span class="citerefentry"><span class="refentrytitle">bootchart.conf</span>(5)</span></a></p></dd><dt id="Frequency="><span class="term"><code class="varname">Frequency=</code></span><a class="headerlink" title="Permalink to this term" href="#Frequency=">¶</a></dt><dd><p><a href="bootchart.conf.html"><span class="citerefentry"><span class="refentrytitle">bootchart.conf</span>(5)</span></a></p></dd><dt id="Init="><span class="term"><code class="varname">Init=</code></span><a class="headerlink" title="Permalink to this term" href="#Init=">¶</a></dt><dd><p><a href="bootchart.conf.html"><span class="citerefentry"><span class="refentrytitle">bootchart.conf</span>(5)</span></a></p></dd><dt id="Output="><span class="term"><code class="varname">Output=</code></span><a class="headerlink" title="Permalink to this term" href="#Output=">¶</a></dt><dd><p><a href="bootchart.conf.html"><span class="citerefentry"><span class="refentrytitle">bootchart.conf</span>(5)</span></a></p></dd><dt id="PlotEntropyGraph="><span class="term"><code class="varname">PlotEntropyGraph=</code></span><a class="headerlink" title="Permalink to this term" href="#PlotEntropyGraph=">¶</a></dt><dd><p><a href="bootchart.conf.html"><span class="citerefentry"><span class="refentrytitle">bootchart.conf</span>(5)</span></a></p></dd><dt id="PlotMemoryUsage="><span class="term"><code class="varname">PlotMemoryUsage=</code></span><a class="headerlink" title="Permalink to this term" href="#PlotMemoryUsage=">¶</a></dt><dd><p><a href="bootchart.conf.html"><span class="citerefentry"><span class="refentrytitle">bootchart.conf</span>(5)</span></a></p></dd><dt id="Relative="><span class="term"><code class="varname">Relative=</code></span><a class="headerlink" title="Permalink to this term" href="#Relative=">¶</a></dt><dd><p><a href="bootchart.conf.html"><span class="citerefentry"><span class="refentrytitle">bootchart.conf</span>(5)</span></a></p></dd><dt id="Samples="><span class="term"><code class="varname">Samples=</code></span><a class="headerlink" title="Permalink to this term" href="#Samples=">¶</a></dt><dd><p><a href="bootchart.conf.html"><span class="citerefentry"><span class="refentrytitle">bootchart.conf</span>(5)</span></a></p></dd><dt id="ScaleX="><span class="term"><code class="varname">ScaleX=</code></span><a class="headerlink" title="Permalink to this term" href="#ScaleX=">¶</a></dt><dd><p><a href="bootchart.conf.html"><span class="citerefentry"><span class="refentrytitle">bootchart.conf</span>(5)</span></a></p></dd><dt id="ScaleY="><span class="term"><code class="varname">ScaleY=</code></span><a class="headerlink" title="Permalink to this term" href="#ScaleY=">¶</a></dt><dd><p><a href="bootchart.conf.html"><span class="citerefentry"><span class="refentrytitle">bootchart.conf</span>(5)</span></a></p></dd></dl></div></div><div class="refsect1"><a name="idm214181715456"></a><h2 id="command-line options">command-line options<a class="headerlink" title="Permalink to this headline" href="#command-line%20options">¶</a></h2><p>Command-line options accepted by programs in the
+                systemd suite.</p><div class="variablelist"><a name="options"></a><dl class="variablelist"><dt id="--accept"><span class="term"><code class="option">--accept</code></span><a class="headerlink" title="Permalink to this term" href="#--accept">¶</a></dt><dd><p><a href="systemd-activate.html"><span class="citerefentry"><span class="refentrytitle">systemd-activate</span>(8)</span></a></p></dd><dt id="--accept-cached"><span class="term"><code class="option">--accept-cached</code></span><a class="headerlink" title="Permalink to this term" href="#--accept-cached">¶</a></dt><dd><p><a href="systemd-ask-password.html"><span class="citerefentry"><span class="refentrytitle">systemd-ask-password</span>(1)</span></a></p></dd><dt id="--acquired"><span class="term"><code class="option">--acquired</code></span><a class="headerlink" title="Permalink to this term" href="#--acquired">¶</a></dt><dd><p><a href="busctl.html"><span class="citerefentry"><span class="refentrytitle">busctl</span>(1)</span></a></p></dd><dt id="--action="><span class="term"><code class="option">--action=</code></span><a class="headerlink" title="Permalink to this term" href="#--action=">¶</a></dt><dd><p><a href="udevadm.html"><span class="citerefentry"><span class="refentrytitle">udevadm</span>(8)</span></a></p></dd><dt id="--activatable"><span class="term"><code class="option">--activatable</code></span><a class="headerlink" title="Permalink to this term" href="#--activatable">¶</a></dt><dd><p><a href="busctl.html"><span class="citerefentry"><span class="refentrytitle">busctl</span>(1)</span></a></p></dd><dt id="--address="><span class="term"><code class="option">--address=</code></span><a class="headerlink" title="Permalink to this term" href="#--address=">¶</a></dt><dd><p><a href="busctl.html"><span class="citerefentry"><span class="refentrytitle">busctl</span>(1)</span></a>, <a href="systemd-bus-proxyd.html"><span class="citerefentry"><span class="refentrytitle">systemd-bus-proxyd</span>(8)</span></a></p></dd><dt id="--adjust-system-clock"><span class="term"><code class="option">--adjust-system-clock</code></span><a class="headerlink" title="Permalink to this term" href="#--adjust-system-clock">¶</a></dt><dd><p><a href="timedatectl.html"><span class="citerefentry"><span class="refentrytitle">timedatectl</span>(1)</span></a></p></dd><dt id="--after"><span class="term"><code class="option">--after</code></span><a class="headerlink" title="Permalink to this term" href="#--after">¶</a></dt><dd><p><a href="systemctl.html"><span class="citerefentry"><span class="refentrytitle">systemctl</span>(1)</span></a></p></dd><dt id="--after-cursor="><span class="term"><code class="option">--after-cursor=</code></span><a class="headerlink" title="Permalink to this term" href="#--after-cursor=">¶</a></dt><dd><p><a href="journalctl.html"><span class="citerefentry"><span class="refentrytitle">journalctl</span>(1)</span></a></p></dd><dt id="--all"><span class="term"><code class="option">--all</code></span><a class="headerlink" title="Permalink to this term" href="#--all">¶</a></dt><dd><p><a href="journalctl.html"><span class="citerefentry"><span class="refentrytitle">journalctl</span>(1)</span></a>, <a href="loginctl.html"><span class="citerefentry"><span class="refentrytitle">loginctl</span>(1)</span></a>, <a href="machinectl.html"><span class="citerefentry"><span class="refentrytitle">machinectl</span>(1)</span></a>, <a href="systemctl.html"><span class="citerefentry"><span class="refentrytitle">systemctl</span>(1)</span></a>, <a href="systemd-cgls.html"><span class="citerefentry"><span class="refentrytitle">systemd-cgls</span>(1)</span></a></p></dd><dt id="--attr-match="><span class="term"><code class="option">--attr-match=</code></span><a class="headerlink" title="Permalink to this term" href="#--attr-match=">¶</a></dt><dd><p><a href="udevadm.html"><span class="citerefentry"><span class="refentrytitle">udevadm</span>(8)</span></a></p></dd><dt id="--attr-nomatch="><span class="term"><code class="option">--attr-nomatch=</code></span><a class="headerlink" title="Permalink to this term" href="#--attr-nomatch=">¶</a></dt><dd><p><a href="udevadm.html"><span class="citerefentry"><span class="refentrytitle">udevadm</span>(8)</span></a></p></dd><dt id="--attribute-walk"><span class="term"><code class="option">--attribute-walk</code></span><a class="headerlink" title="Permalink to this term" href="#--attribute-walk">¶</a></dt><dd><p><a href="udevadm.html"><span class="citerefentry"><span class="refentrytitle">udevadm</span>(8)</span></a></p></dd><dt id="--batch"><span class="term"><code class="option">--batch</code></span><a class="headerlink" title="Permalink to this term" href="#--batch">¶</a></dt><dd><p><a href="systemd-cgtop.html"><span class="citerefentry"><span class="refentrytitle">systemd-cgtop</span>(1)</span></a></p></dd><dt id="--before"><span class="term"><code class="option">--before</code></span><a class="headerlink" title="Permalink to this term" href="#--before">¶</a></dt><dd><p><a href="systemctl.html"><span class="citerefentry"><span class="refentrytitle">systemctl</span>(1)</span></a></p></dd><dt id="--bind-ro="><span class="term"><code class="option">--bind-ro=</code></span><a class="headerlink" title="Permalink to this term" href="#--bind-ro=">¶</a></dt><dd><p><a href="systemd-nspawn.html"><span class="citerefentry"><span class="refentrytitle">systemd-nspawn</span>(1)</span></a></p></dd><dt id="--bind="><span class="term"><code class="option">--bind=</code></span><a class="headerlink" title="Permalink to this term" href="#--bind=">¶</a></dt><dd><p><a href="systemd-nspawn.html"><span class="citerefentry"><span class="refentrytitle">systemd-nspawn</span>(1)</span></a></p></dd><dt id="--boot"><span class="term"><code class="option">--boot</code></span><a class="headerlink" title="Permalink to this term" href="#--boot">¶</a></dt><dd><p><a href="systemd-nspawn.html"><span class="citerefentry"><span class="refentrytitle">systemd-nspawn</span>(1)</span></a>, <a href="systemd-tmpfiles.html"><span class="citerefentry"><span class="refentrytitle">systemd-tmpfiles</span>(8)</span></a></p></dd><dt id="--boot="><span class="term"><code class="option">--boot=</code></span><a class="headerlink" title="Permalink to this term" href="#--boot=">¶</a></dt><dd><p><a href="journalctl.html"><span class="citerefentry"><span class="refentrytitle">journalctl</span>(1)</span></a></p></dd><dt id="--booted"><span class="term"><code class="option">--booted</code></span><a class="headerlink" title="Permalink to this term" href="#--booted">¶</a></dt><dd><p><a href="systemd-notify.html"><span class="citerefentry"><span class="refentrytitle">systemd-notify</span>(1)</span></a></p></dd><dt id="--capability="><span class="term"><code class="option">--capability=</code></span><a class="headerlink" title="Permalink to this term" href="#--capability=">¶</a></dt><dd><p><a href="systemd-nspawn.html"><span class="citerefentry"><span class="refentrytitle">systemd-nspawn</span>(1)</span></a></p></dd><dt id="--catalog"><span class="term"><code class="option">--catalog</code></span><a class="headerlink" title="Permalink to this term" href="#--catalog">¶</a></dt><dd><p><a href="journalctl.html"><span class="citerefentry"><span class="refentrytitle">journalctl</span>(1)</span></a></p></dd><dt id="--cert="><span class="term"><code class="option">--cert=</code></span><a class="headerlink" title="Permalink to this term" href="#--cert=">¶</a></dt><dd><p><a href="systemd-journal-gatewayd.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-journal-gatewayd.service</span>(8)</span></a></p></dd><dt id="--children-max="><span class="term"><code class="option">--children-max=</code></span><a class="headerlink" title="Permalink to this term" href="#--children-max=">¶</a></dt><dd><p><a href="systemd-udevd.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-udevd.service</span>(8)</span></a>, <a href="udevadm.html"><span class="citerefentry"><span class="refentrytitle">udevadm</span>(8)</span></a></p></dd><dt id="--clean"><span class="term"><code class="option">--clean</code></span><a class="headerlink" title="Permalink to this term" href="#--clean">¶</a></dt><dd><p><a href="systemd-tmpfiles.html"><span class="citerefentry"><span class="refentrytitle">systemd-tmpfiles</span>(8)</span></a></p></dd><dt id="--cleanup-db"><span class="term"><code class="option">--cleanup-db</code></span><a class="headerlink" title="Permalink to this term" href="#--cleanup-db">¶</a></dt><dd><p><a href="udevadm.html"><span class="citerefentry"><span class="refentrytitle">udevadm</span>(8)</span></a></p></dd><dt id="--cmdline"><span class="term"><code class="option">--cmdline</code></span><a class="headerlink" title="Permalink to this term" href="#--cmdline">¶</a></dt><dd><p><a href="systemd-bootchart.html"><span class="citerefentry"><span class="refentrytitle">systemd-bootchart</span>(1)</span></a></p></dd><dt id="--compress"><span class="term"><code class="option">--compress</code></span><a class="headerlink" title="Permalink to this term" href="#--compress">¶</a></dt><dd><p><a href="systemd-journal-remote.html"><span class="citerefentry"><span class="refentrytitle">systemd-journal-remote</span>(8)</span></a></p></dd><dt id="--confirm-spawn"><span class="term"><code class="option">--confirm-spawn</code></span><a class="headerlink" title="Permalink to this term" href="#--confirm-spawn">¶</a></dt><dd><p><a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a></p></dd><dt id="--console"><span class="term"><code class="option">--console</code></span><a class="headerlink" title="Permalink to this term" href="#--console">¶</a></dt><dd><p><a href="systemd-tty-ask-password-agent.html"><span class="citerefentry"><span class="refentrytitle">systemd-tty-ask-password-agent</span>(1)</span></a></p></dd><dt id="--container"><span class="term"><code class="option">--container</code></span><a class="headerlink" title="Permalink to this term" href="#--container">¶</a></dt><dd><p><a href="systemd-detect-virt.html"><span class="citerefentry"><span class="refentrytitle">systemd-detect-virt</span>(1)</span></a></p></dd><dt id="--control-group"><span class="term"><code class="option">--control-group</code></span><a class="headerlink" title="Permalink to this term" href="#--control-group">¶</a></dt><dd><p><a href="systemd-bootchart.html"><span class="citerefentry"><span class="refentrytitle">systemd-bootchart</span>(1)</span></a></p></dd><dt id="--crash-shell"><span class="term"><code class="option">--crash-shell</code></span><a class="headerlink" title="Permalink to this term" href="#--crash-shell">¶</a></dt><dd><p><a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a></p></dd><dt id="--create"><span class="term"><code class="option">--create</code></span><a class="headerlink" title="Permalink to this term" href="#--create">¶</a></dt><dd><p><a href="systemd-tmpfiles.html"><span class="citerefentry"><span class="refentrytitle">systemd-tmpfiles</span>(8)</span></a></p></dd><dt id="--cursor="><span class="term"><code class="option">--cursor=</code></span><a class="headerlink" title="Permalink to this term" href="#--cursor=">¶</a></dt><dd><p><a href="journalctl.html"><span class="citerefentry"><span class="refentrytitle">journalctl</span>(1)</span></a></p></dd><dt id="--daemon"><span class="term"><code class="option">--daemon</code></span><a class="headerlink" title="Permalink to this term" href="#--daemon">¶</a></dt><dd><p><a href="systemd-udevd.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-udevd.service</span>(8)</span></a></p></dd><dt id="--debug"><span class="term"><code class="option">--debug</code></span><a class="headerlink" title="Permalink to this term" href="#--debug">¶</a></dt><dd><p><a href="systemd-udevd.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-udevd.service</span>(8)</span></a>, <a href="udevadm.html"><span class="citerefentry"><span class="refentrytitle">udevadm</span>(8)</span></a></p></dd><dt id="--default-standard-error="><span class="term"><code class="option">--default-standard-error=</code></span><a class="headerlink" title="Permalink to this term" href="#--default-standard-error=">¶</a></dt><dd><p><a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a></p></dd><dt id="--default-standard-output="><span class="term"><code class="option">--default-standard-output=</code></span><a class="headerlink" title="Permalink to this term" href="#--default-standard-output=">¶</a></dt><dd><p><a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a></p></dd><dt id="--delay="><span class="term"><code class="option">--delay=</code></span><a class="headerlink" title="Permalink to this term" href="#--delay=">¶</a></dt><dd><p><a href="systemd-cgtop.html"><span class="citerefentry"><span class="refentrytitle">systemd-cgtop</span>(1)</span></a></p></dd><dt id="--depth="><span class="term"><code class="option">--depth=</code></span><a class="headerlink" title="Permalink to this term" href="#--depth=">¶</a></dt><dd><p><a href="systemd-cgtop.html"><span class="citerefentry"><span class="refentrytitle">systemd-cgtop</span>(1)</span></a></p></dd><dt id="--description="><span class="term"><code class="option">--description=</code></span><a class="headerlink" title="Permalink to this term" href="#--description=">¶</a></dt><dd><p><a href="systemd-run.html"><span class="citerefentry"><span class="refentrytitle">systemd-run</span>(1)</span></a></p></dd><dt id="--device-id-of-file="><span class="term"><code class="option">--device-id-of-file=</code></span><a class="headerlink" title="Permalink to this term" href="#--device-id-of-file=">¶</a></dt><dd><p><a href="udevadm.html"><span class="citerefentry"><span class="refentrytitle">udevadm</span>(8)</span></a></p></dd><dt id="--diff="><span class="term"><code class="option">--diff=</code></span><a class="headerlink" title="Permalink to this term" href="#--diff=">¶</a></dt><dd><p><a href="systemd-delta.html"><span class="citerefentry"><span class="refentrytitle">systemd-delta</span>(1)</span></a></p></dd><dt id="--directory="><span class="term"><code class="option">--directory=</code></span><a class="headerlink" title="Permalink to this term" href="#--directory=">¶</a></dt><dd><p><a href="journalctl.html"><span class="citerefentry"><span class="refentrytitle">journalctl</span>(1)</span></a>, <a href="systemd-nspawn.html"><span class="citerefentry"><span class="refentrytitle">systemd-nspawn</span>(1)</span></a></p></dd><dt id="--disk-usage"><span class="term"><code class="option">--disk-usage</code></span><a class="headerlink" title="Permalink to this term" href="#--disk-usage">¶</a></dt><dd><p><a href="journalctl.html"><span class="citerefentry"><span class="refentrytitle">journalctl</span>(1)</span></a></p></dd><dt id="--dmesg"><span class="term"><code class="option">--dmesg</code></span><a class="headerlink" title="Permalink to this term" href="#--dmesg">¶</a></dt><dd><p><a href="journalctl.html"><span class="citerefentry"><span class="refentrytitle">journalctl</span>(1)</span></a></p></dd><dt id="--drop-capability="><span class="term"><code class="option">--drop-capability=</code></span><a class="headerlink" title="Permalink to this term" href="#--drop-capability=">¶</a></dt><dd><p><a href="systemd-nspawn.html"><span class="citerefentry"><span class="refentrytitle">systemd-nspawn</span>(1)</span></a></p></dd><dt id="--dry-run"><span class="term"><code class="option">--dry-run</code></span><a class="headerlink" title="Permalink to this term" href="#--dry-run">¶</a></dt><dd><p><a href="udevadm.html"><span class="citerefentry"><span class="refentrytitle">udevadm</span>(8)</span></a></p></dd><dt id="--dump-catalog"><span class="term"><code class="option">--dump-catalog</code></span><a class="headerlink" title="Permalink to this term" href="#--dump-catalog">¶</a></dt><dd><p><a href="journalctl.html"><span class="citerefentry"><span class="refentrytitle">journalctl</span>(1)</span></a></p></dd><dt id="--dump-configuration-items"><span class="term"><code class="option">--dump-configuration-items</code></span><a class="headerlink" title="Permalink to this term" href="#--dump-configuration-items">¶</a></dt><dd><p><a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a></p></dd><dt id="--dump-core"><span class="term"><code class="option">--dump-core</code></span><a class="headerlink" title="Permalink to this term" href="#--dump-core">¶</a></dt><dd><p><a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a></p></dd><dt id="--entropy"><span class="term"><code class="option">--entropy</code></span><a class="headerlink" title="Permalink to this term" href="#--entropy">¶</a></dt><dd><p><a href="systemd-bootchart.html"><span class="citerefentry"><span class="refentrytitle">systemd-bootchart</span>(1)</span></a></p></dd><dt id="--exclude-prefix="><span class="term"><code class="option">--exclude-prefix=</code></span><a class="headerlink" title="Permalink to this term" href="#--exclude-prefix=">¶</a></dt><dd><p><a href="systemd-tmpfiles.html"><span class="citerefentry"><span class="refentrytitle">systemd-tmpfiles</span>(8)</span></a></p></dd><dt id="--exec-delay="><span class="term"><code class="option">--exec-delay=</code></span><a class="headerlink" title="Permalink to this term" href="#--exec-delay=">¶</a></dt><dd><p><a href="systemd-udevd.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-udevd.service</span>(8)</span></a></p></dd><dt id="--exit"><span class="term"><code class="option">--exit</code></span><a class="headerlink" title="Permalink to this term" href="#--exit">¶</a></dt><dd><p><a href="udevadm.html"><span class="citerefentry"><span class="refentrytitle">udevadm</span>(8)</span></a></p></dd><dt id="--exit-if-exists="><span class="term"><code class="option">--exit-if-exists=</code></span><a class="headerlink" title="Permalink to this term" href="#--exit-if-exists=">¶</a></dt><dd><p><a href="udevadm.html"><span class="citerefentry"><span class="refentrytitle">udevadm</span>(8)</span></a></p></dd><dt id="--export"><span class="term"><code class="option">--export</code></span><a class="headerlink" title="Permalink to this term" href="#--export">¶</a></dt><dd><p><a href="udevadm.html"><span class="citerefentry"><span class="refentrytitle">udevadm</span>(8)</span></a></p></dd><dt id="--export-db"><span class="term"><code class="option">--export-db</code></span><a class="headerlink" title="Permalink to this term" href="#--export-db">¶</a></dt><dd><p><a href="udevadm.html"><span class="citerefentry"><span class="refentrytitle">udevadm</span>(8)</span></a></p></dd><dt id="--export-prefix="><span class="term"><code class="option">--export-prefix=</code></span><a class="headerlink" title="Permalink to this term" href="#--export-prefix=">¶</a></dt><dd><p><a href="udevadm.html"><span class="citerefentry"><span class="refentrytitle">udevadm</span>(8)</span></a></p></dd><dt id="--field="><span class="term"><code class="option">--field=</code></span><a class="headerlink" title="Permalink to this term" href="#--field=">¶</a></dt><dd><p><a href="coredumpctl.html"><span class="citerefentry"><span class="refentrytitle">coredumpctl</span>(1)</span></a>, <a href="journalctl.html"><span class="citerefentry"><span class="refentrytitle">journalctl</span>(1)</span></a></p></dd><dt id="--file-size-max="><span class="term"><code class="option">--file-size-max=</code></span><a class="headerlink" title="Permalink to this term" href="#--file-size-max=">¶</a></dt><dd><p><a href="systemd-readahead-replay.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-readahead-replay.service</span>(8)</span></a></p></dd><dt id="--file="><span class="term"><code class="option">--file=</code></span><a class="headerlink" title="Permalink to this term" href="#--file=">¶</a></dt><dd><p><a href="journalctl.html"><span class="citerefentry"><span class="refentrytitle">journalctl</span>(1)</span></a></p></dd><dt id="--files-max="><span class="term"><code class="option">--files-max=</code></span><a class="headerlink" title="Permalink to this term" href="#--files-max=">¶</a></dt><dd><p><a href="systemd-readahead-replay.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-readahead-replay.service</span>(8)</span></a></p></dd><dt id="--follow"><span class="term"><code class="option">--follow</code></span><a class="headerlink" title="Permalink to this term" href="#--follow">¶</a></dt><dd><p><a href="journalctl.html"><span class="citerefentry"><span class="refentrytitle">journalctl</span>(1)</span></a></p></dd><dt id="--force"><span class="term"><code class="option">--force</code></span><a class="headerlink" title="Permalink to this term" href="#--force">¶</a></dt><dd><p><a href="halt.html"><span class="citerefentry"><span class="refentrytitle">halt</span>(8)</span></a>, <a href="journalctl.html"><span class="citerefentry"><span class="refentrytitle">journalctl</span>(1)</span></a>, <a href="systemctl.html"><span class="citerefentry"><span class="refentrytitle">systemctl</span>(1)</span></a></p></dd><dt id="--freq"><span class="term"><code class="option">--freq</code></span><a class="headerlink" title="Permalink to this term" href="#--freq">¶</a></dt><dd><p><a href="systemd-bootchart.html"><span class="citerefentry"><span class="refentrytitle">systemd-bootchart</span>(1)</span></a></p></dd><dt id="--from-pattern="><span class="term"><code class="option">--from-pattern=</code></span><a class="headerlink" title="Permalink to this term" href="#--from-pattern=">¶</a></dt><dd><p><a href="systemd-analyze.html"><span class="citerefentry"><span class="refentrytitle">systemd-analyze</span>(1)</span></a></p></dd><dt id="--full"><span class="term"><code class="option">--full</code></span><a class="headerlink" title="Permalink to this term" href="#--full">¶</a></dt><dd><p><a href="journalctl.html"><span class="citerefentry"><span class="refentrytitle">journalctl</span>(1)</span></a>, <a href="loginctl.html"><span class="citerefentry"><span class="refentrytitle">loginctl</span>(1)</span></a>, <a href="machinectl.html"><span class="citerefentry"><span class="refentrytitle">machinectl</span>(1)</span></a>, <a href="systemctl.html"><span class="citerefentry"><span class="refentrytitle">systemctl</span>(1)</span></a>, <a href="systemd-cgls.html"><span class="citerefentry"><span class="refentrytitle">systemd-cgls</span>(1)</span></a></p></dd><dt id="--fuzz="><span class="term"><code class="option">--fuzz=</code></span><a class="headerlink" title="Permalink to this term" href="#--fuzz=">¶</a></dt><dd><p><a href="systemd-analyze.html"><span class="citerefentry"><span class="refentrytitle">systemd-analyze</span>(1)</span></a></p></dd><dt id="--getter="><span class="term"><code class="option">--getter=</code></span><a class="headerlink" title="Permalink to this term" href="#--getter=">¶</a></dt><dd><p><a href="systemd-journal-remote.html"><span class="citerefentry"><span class="refentrytitle">systemd-journal-remote</span>(8)</span></a></p></dd><dt id="--gid="><span class="term"><code class="option">--gid=</code></span><a class="headerlink" title="Permalink to this term" href="#--gid=">¶</a></dt><dd><p><a href="systemd-run.html"><span class="citerefentry"><span class="refentrytitle">systemd-run</span>(1)</span></a></p></dd><dt id="--global"><span class="term"><code class="option">--global</code></span><a class="headerlink" title="Permalink to this term" href="#--global">¶</a></dt><dd><p><a href="systemctl.html"><span class="citerefentry"><span class="refentrytitle">systemctl</span>(1)</span></a></p></dd><dt id="--halt"><span class="term"><code class="option">--halt</code></span><a class="headerlink" title="Permalink to this term" href="#--halt">¶</a></dt><dd><p><a href="halt.html"><span class="citerefentry"><span class="refentrytitle">halt</span>(8)</span></a>, <a href="shutdown.html"><span class="citerefentry"><span class="refentrytitle">shutdown</span>(8)</span></a></p></dd><dt id="--header"><span class="term"><code class="option">--header</code></span><a class="headerlink" title="Permalink to this term" href="#--header">¶</a></dt><dd><p><a href="journalctl.html"><span class="citerefentry"><span class="refentrytitle">journalctl</span>(1)</span></a></p></dd><dt id="--help"><span class="term"><code class="option">--help</code></span><a class="headerlink" title="Permalink to this term" href="#--help">¶</a></dt><dd><p><a href="bootctl.html"><span class="citerefentry"><span class="refentrytitle">bootctl</span>(1)</span></a>, <a href="busctl.html"><span class="citerefentry"><span class="refentrytitle">busctl</span>(1)</span></a>, <a href="coredumpctl.html"><span class="citerefentry"><span class="refentrytitle">coredumpctl</span>(1)</span></a>, <a href="halt.html"><span class="citerefentry"><span class="refentrytitle">halt</span>(8)</span></a>, <a href="hostnamectl.html"><span class="citerefentry"><span class="refentrytitle">hostnamectl</span>(1)</span></a>, <a href="journalctl.html"><span class="citerefentry"><span class="refentrytitle">journalctl</span>(1)</span></a>, <a href="localectl.html"><span class="citerefentry"><span class="refentrytitle">localectl</span>(1)</span></a>, <a href="loginctl.html"><span class="citerefentry"><span class="refentrytitle">loginctl</span>(1)</span></a>, <a href="machinectl.html"><span class="citerefentry"><span class="refentrytitle">machinectl</span>(1)</span></a>, <a href="runlevel.html"><span class="citerefentry"><span class="refentrytitle">runlevel</span>(8)</span></a>, <a href="shutdown.html"><span class="citerefentry"><span class="refentrytitle">shutdown</span>(8)</span></a>, <a href="systemctl.html"><span class="citerefentry"><span class="refentrytitle">systemctl</span>(1)</span></a>, <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>, <a href="systemd-activate.html"><span class="citerefentry"><span class="refentrytitle">systemd-activate</span>(8)</span></a>, <a href="systemd-analyze.html"><span class="citerefentry"><span class="refentrytitle">systemd-analyze</span>(1)</span></a>, <a href="systemd-ask-password.html"><span class="citerefentry"><span class="refentrytitle">systemd-ask-password</span>(1)</span></a>, <a href="systemd-bootchart.html"><span class="citerefentry"><span class="refentrytitle">systemd-bootchart</span>(1)</span></a>, <a href="systemd-bus-proxyd.html"><span class="citerefentry"><span class="refentrytitle">systemd-bus-proxyd</span>(8)</span></a>, <a href="systemd-cat.html"><span class="citerefentry"><span class="refentrytitle">systemd-cat</span>(1)</span></a>, <a href="systemd-cgls.html"><span class="citerefentry"><span class="refentrytitle">systemd-cgls</span>(1)</span></a>, <a href="systemd-cgtop.html"><span class="citerefentry"><span class="refentrytitle">systemd-cgtop</span>(1)</span></a>, <a href="systemd-delta.html"><span class="citerefentry"><span class="refentrytitle">systemd-delta</span>(1)</span></a>, <a href="systemd-detect-virt.html"><span class="citerefentry"><span class="refentrytitle">systemd-detect-virt</span>(1)</span></a>, <a href="systemd-inhibit.html"><span class="citerefentry"><span class="refentrytitle">systemd-inhibit</span>(1)</span></a>, <a href="systemd-journal-gatewayd.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-journal-gatewayd.service</span>(8)</span></a>, <a href="systemd-journal-remote.html"><span class="citerefentry"><span class="refentrytitle">systemd-journal-remote</span>(8)</span></a>, <a href="systemd-machine-id-setup.html"><span class="citerefentry"><span class="refentrytitle">systemd-machine-id-setup</span>(1)</span></a>, <a href="systemd-notify.html"><span class="citerefentry"><span class="refentrytitle">systemd-notify</span>(1)</span></a>, <a href="systemd-nspawn.html"><span class="citerefentry"><span class="refentrytitle">systemd-nspawn</span>(1)</span></a>, <a href="systemd-path.html"><span class="citerefentry"><span class="refentrytitle">systemd-path</span>(1)</span></a>, <a href="systemd-readahead-replay.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-readahead-replay.service</span>(8)</span></a>, <a href="systemd-run.html"><span class="citerefentry"><span class="refentrytitle">systemd-run</span>(1)</span></a>, <a href="systemd-socket-proxyd.html"><span class="citerefentry"><span class="refentrytitle">systemd-socket-proxyd</span>(8)</span></a>, <a href="systemd-suspend.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-suspend.service</span>(8)</span></a>, <a href="systemd-sysusers.html"><span class="citerefentry"><span class="refentrytitle">systemd-sysusers</span>(8)</span></a>, <a href="systemd-tmpfiles.html"><span class="citerefentry"><span class="refentrytitle">systemd-tmpfiles</span>(8)</span></a>, <a href="systemd-tty-ask-password-agent.html"><span class="citerefentry"><span class="refentrytitle">systemd-tty-ask-password-agent</span>(1)</span></a>, <a href="systemd-udevd.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-udevd.service</span>(8)</span></a>, <a href="telinit.html"><span class="citerefentry"><span class="refentrytitle">telinit</span>(8)</span></a>, <a href="timedatectl.html"><span class="citerefentry"><span class="refentrytitle">timedatectl</span>(1)</span></a>, <a href="udevadm.html"><span class="citerefentry"><span class="refentrytitle">udevadm</span>(8)</span></a></p></dd><dt id="--host="><span class="term"><code class="option">--host=</code></span><a class="headerlink" title="Permalink to this term" href="#--host=">¶</a></dt><dd><p><a href="busctl.html"><span class="citerefentry"><span class="refentrytitle">busctl</span>(1)</span></a>, <a href="hostnamectl.html"><span class="citerefentry"><span class="refentrytitle">hostnamectl</span>(1)</span></a>, <a href="localectl.html"><span class="citerefentry"><span class="refentrytitle">localectl</span>(1)</span></a>, <a href="loginctl.html"><span class="citerefentry"><span class="refentrytitle">loginctl</span>(1)</span></a>, <a href="machinectl.html"><span class="citerefentry"><span class="refentrytitle">machinectl</span>(1)</span></a>, <a href="systemctl.html"><span class="citerefentry"><span class="refentrytitle">systemctl</span>(1)</span></a>, <a href="systemd-analyze.html"><span class="citerefentry"><span class="refentrytitle">systemd-analyze</span>(1)</span></a>, <a href="systemd-run.html"><span class="citerefentry"><span class="refentrytitle">systemd-run</span>(1)</span></a>, <a href="timedatectl.html"><span class="citerefentry"><span class="refentrytitle">timedatectl</span>(1)</span></a></p></dd><dt id="--icon="><span class="term"><code class="option">--icon=</code></span><a class="headerlink" title="Permalink to this term" href="#--icon=">¶</a></dt><dd><p><a href="systemd-ask-password.html"><span class="citerefentry"><span class="refentrytitle">systemd-ask-password</span>(1)</span></a></p></dd><dt id="--identifier="><span class="term"><code class="option">--identifier=</code></span><a class="headerlink" title="Permalink to this term" href="#--identifier=">¶</a></dt><dd><p><a href="systemd-cat.html"><span class="citerefentry"><span class="refentrytitle">systemd-cat</span>(1)</span></a></p></dd><dt id="--ignore-inhibitors"><span class="term"><code class="option">--ignore-inhibitors</code></span><a class="headerlink" title="Permalink to this term" href="#--ignore-inhibitors">¶</a></dt><dd><p><a href="systemctl.html"><span class="citerefentry"><span class="refentrytitle">systemctl</span>(1)</span></a></p></dd><dt id="--image="><span class="term"><code class="option">--image=</code></span><a class="headerlink" title="Permalink to this term" href="#--image=">¶</a></dt><dd><p><a href="systemd-nspawn.html"><span class="citerefentry"><span class="refentrytitle">systemd-nspawn</span>(1)</span></a></p></dd><dt id="--init"><span class="term"><code class="option">--init</code></span><a class="headerlink" title="Permalink to this term" href="#--init">¶</a></dt><dd><p><a href="systemd-bootchart.html"><span class="citerefentry"><span class="refentrytitle">systemd-bootchart</span>(1)</span></a></p></dd><dt id="--interface="><span class="term"><code class="option">--interface=</code></span><a class="headerlink" title="Permalink to this term" href="#--interface=">¶</a></dt><dd><p><a href="systemd-networkd-wait-online.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-networkd-wait-online.service</span>(8)</span></a></p></dd><dt id="--interval="><span class="term"><code class="option">--interval=</code></span><a class="headerlink" title="Permalink to this term" href="#--interval=">¶</a></dt><dd><p><a href="journalctl.html"><span class="citerefentry"><span class="refentrytitle">journalctl</span>(1)</span></a></p></dd><dt id="--iterations="><span class="term"><code class="option">--iterations=</code></span><a class="headerlink" title="Permalink to this term" href="#--iterations=">¶</a></dt><dd><p><a href="systemd-cgtop.html"><span class="citerefentry"><span class="refentrytitle">systemd-cgtop</span>(1)</span></a></p></dd><dt id="--job-mode="><span class="term"><code class="option">--job-mode=</code></span><a class="headerlink" title="Permalink to this term" href="#--job-mode=">¶</a></dt><dd><p><a href="systemctl.html"><span class="citerefentry"><span class="refentrytitle">systemctl</span>(1)</span></a></p></dd><dt id="--keep-unit"><span class="term"><code class="option">--keep-unit</code></span><a class="headerlink" title="Permalink to this term" href="#--keep-unit">¶</a></dt><dd><p><a href="systemd-nspawn.html"><span class="citerefentry"><span class="refentrytitle">systemd-nspawn</span>(1)</span></a></p></dd><dt id="--kernel"><span class="term"><code class="option">--kernel</code></span><a class="headerlink" title="Permalink to this term" href="#--kernel">¶</a></dt><dd><p><a href="udevadm.html"><span class="citerefentry"><span class="refentrytitle">udevadm</span>(8)</span></a></p></dd><dt id="--key="><span class="term"><code class="option">--key=</code></span><a class="headerlink" title="Permalink to this term" href="#--key=">¶</a></dt><dd><p><a href="systemd-journal-gatewayd.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-journal-gatewayd.service</span>(8)</span></a></p></dd><dt id="--kill-who="><span class="term"><code class="option">--kill-who=</code></span><a class="headerlink" title="Permalink to this term" href="#--kill-who=">¶</a></dt><dd><p><a href="loginctl.html"><span class="citerefentry"><span class="refentrytitle">loginctl</span>(1)</span></a>, <a href="machinectl.html"><span class="citerefentry"><span class="refentrytitle">machinectl</span>(1)</span></a>, <a href="systemctl.html"><span class="citerefentry"><span class="refentrytitle">systemctl</span>(1)</span></a></p></dd><dt id="--level-prefix="><span class="term"><code class="option">--level-prefix=</code></span><a class="headerlink" title="Permalink to this term" href="#--level-prefix=">¶</a></dt><dd><p><a href="systemd-cat.html"><span class="citerefentry"><span class="refentrytitle">systemd-cat</span>(1)</span></a></p></dd><dt id="--lines="><span class="term"><code class="option">--lines=</code></span><a class="headerlink" title="Permalink to this term" href="#--lines=">¶</a></dt><dd><p><a href="journalctl.html"><span class="citerefentry"><span class="refentrytitle">journalctl</span>(1)</span></a>, <a href="systemctl.html"><span class="citerefentry"><span class="refentrytitle">systemctl</span>(1)</span></a></p></dd><dt id="--link-journal="><span class="term"><code class="option">--link-journal=</code></span><a class="headerlink" title="Permalink to this term" href="#--link-journal=">¶</a></dt><dd><p><a href="systemd-nspawn.html"><span class="citerefentry"><span class="refentrytitle">systemd-nspawn</span>(1)</span></a></p></dd><dt id="--list"><span class="term"><code class="option">--list</code></span><a class="headerlink" title="Permalink to this term" href="#--list">¶</a></dt><dd><p><a href="systemd-inhibit.html"><span class="citerefentry"><span class="refentrytitle">systemd-inhibit</span>(1)</span></a>, <a href="systemd-tty-ask-password-agent.html"><span class="citerefentry"><span class="refentrytitle">systemd-tty-ask-password-agent</span>(1)</span></a></p></dd><dt id="--list-boots"><span class="term"><code class="option">--list-boots</code></span><a class="headerlink" title="Permalink to this term" href="#--list-boots">¶</a></dt><dd><p><a href="journalctl.html"><span class="citerefentry"><span class="refentrytitle">journalctl</span>(1)</span></a></p></dd><dt id="--list-catalog"><span class="term"><code class="option">--list-catalog</code></span><a class="headerlink" title="Permalink to this term" href="#--list-catalog">¶</a></dt><dd><p><a href="journalctl.html"><span class="citerefentry"><span class="refentrytitle">journalctl</span>(1)</span></a></p></dd><dt id="--listen-http="><span class="term"><code class="option">--listen-http=</code></span><a class="headerlink" title="Permalink to this term" href="#--listen-http=">¶</a></dt><dd><p><a href="systemd-journal-remote.html"><span class="citerefentry"><span class="refentrytitle">systemd-journal-remote</span>(8)</span></a></p></dd><dt id="--listen-https="><span class="term"><code class="option">--listen-https=</code></span><a class="headerlink" title="Permalink to this term" href="#--listen-https=">¶</a></dt><dd><p><a href="systemd-journal-remote.html"><span class="citerefentry"><span class="refentrytitle">systemd-journal-remote</span>(8)</span></a></p></dd><dt id="--listen-raw="><span class="term"><code class="option">--listen-raw=</code></span><a class="headerlink" title="Permalink to this term" href="#--listen-raw=">¶</a></dt><dd><p><a href="systemd-journal-remote.html"><span class="citerefentry"><span class="refentrytitle">systemd-journal-remote</span>(8)</span></a></p></dd><dt id="--listen="><span class="term"><code class="option">--listen=</code></span><a class="headerlink" title="Permalink to this term" href="#--listen=">¶</a></dt><dd><p><a href="systemd-activate.html"><span class="citerefentry"><span class="refentrytitle">systemd-activate</span>(8)</span></a></p></dd><dt id="--log-color="><span class="term"><code class="option">--log-color=</code></span><a class="headerlink" title="Permalink to this term" href="#--log-color=">¶</a></dt><dd><p><a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a></p></dd><dt id="--log-level="><span class="term"><code class="option">--log-level=</code></span><a class="headerlink" title="Permalink to this term" href="#--log-level=">¶</a></dt><dd><p><a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a></p></dd><dt id="--log-location="><span class="term"><code class="option">--log-location=</code></span><a class="headerlink" title="Permalink to this term" href="#--log-location=">¶</a></dt><dd><p><a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a></p></dd><dt id="--log-priority="><span class="term"><code class="option">--log-priority=</code></span><a class="headerlink" title="Permalink to this term" href="#--log-priority=">¶</a></dt><dd><p><a href="udevadm.html"><span class="citerefentry"><span class="refentrytitle">udevadm</span>(8)</span></a></p></dd><dt id="--log-target="><span class="term"><code class="option">--log-target=</code></span><a class="headerlink" title="Permalink to this term" href="#--log-target=">¶</a></dt><dd><p><a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a></p></dd><dt id="--machine="><span class="term"><code class="option">--machine=</code></span><a class="headerlink" title="Permalink to this term" href="#--machine=">¶</a></dt><dd><p><a href="busctl.html"><span class="citerefentry"><span class="refentrytitle">busctl</span>(1)</span></a>, <a href="journalctl.html"><span class="citerefentry"><span class="refentrytitle">journalctl</span>(1)</span></a>, <a href="loginctl.html"><span class="citerefentry"><span class="refentrytitle">loginctl</span>(1)</span></a>, <a href="machinectl.html"><span class="citerefentry"><span class="refentrytitle">machinectl</span>(1)</span></a>, <a href="systemctl.html"><span class="citerefentry"><span class="refentrytitle">systemctl</span>(1)</span></a>, <a href="systemd-analyze.html"><span class="citerefentry"><span class="refentrytitle">systemd-analyze</span>(1)</span></a>, <a href="systemd-cgls.html"><span class="citerefentry"><span class="refentrytitle">systemd-cgls</span>(1)</span></a>, <a href="systemd-nspawn.html"><span class="citerefentry"><span class="refentrytitle">systemd-nspawn</span>(1)</span></a>, <a href="systemd-run.html"><span class="citerefentry"><span class="refentrytitle">systemd-run</span>(1)</span></a>, <a href="timedatectl.html"><span class="citerefentry"><span class="refentrytitle">timedatectl</span>(1)</span></a></p></dd><dt id="--match="><span class="term"><code class="option">--match=</code></span><a class="headerlink" title="Permalink to this term" href="#--match=">¶</a></dt><dd><p><a href="busctl.html"><span class="citerefentry"><span class="refentrytitle">busctl</span>(1)</span></a></p></dd><dt id="--merge"><span class="term"><code class="option">--merge</code></span><a class="headerlink" title="Permalink to this term" href="#--merge">¶</a></dt><dd><p><a href="journalctl.html"><span class="citerefentry"><span class="refentrytitle">journalctl</span>(1)</span></a></p></dd><dt id="--mode="><span class="term"><code class="option">--mode=</code></span><a class="headerlink" title="Permalink to this term" href="#--mode=">¶</a></dt><dd><p><a href="systemd-inhibit.html"><span class="citerefentry"><span class="refentrytitle">systemd-inhibit</span>(1)</span></a></p></dd><dt id="--multiple"><span class="term"><code class="option">--multiple</code></span><a class="headerlink" title="Permalink to this term" href="#--multiple">¶</a></dt><dd><p><a href="systemd-ask-password.html"><span class="citerefentry"><span class="refentrytitle">systemd-ask-password</span>(1)</span></a></p></dd><dt id="--name="><span class="term"><code class="option">--name=</code></span><a class="headerlink" title="Permalink to this term" href="#--name=">¶</a></dt><dd><p><a href="udevadm.html"><span class="citerefentry"><span class="refentrytitle">udevadm</span>(8)</span></a></p></dd><dt id="--network-bridge="><span class="term"><code class="option">--network-bridge=</code></span><a class="headerlink" title="Permalink to this term" href="#--network-bridge=">¶</a></dt><dd><p><a href="systemd-nspawn.html"><span class="citerefentry"><span class="refentrytitle">systemd-nspawn</span>(1)</span></a></p></dd><dt id="--network-interface="><span class="term"><code class="option">--network-interface=</code></span><a class="headerlink" title="Permalink to this term" href="#--network-interface=">¶</a></dt><dd><p><a href="systemd-nspawn.html"><span class="citerefentry"><span class="refentrytitle">systemd-nspawn</span>(1)</span></a></p></dd><dt id="--network-macvlan="><span class="term"><code class="option">--network-macvlan=</code></span><a class="headerlink" title="Permalink to this term" href="#--network-macvlan=">¶</a></dt><dd><p><a href="systemd-nspawn.html"><span class="citerefentry"><span class="refentrytitle">systemd-nspawn</span>(1)</span></a></p></dd><dt id="--network-veth"><span class="term"><code class="option">--network-veth</code></span><a class="headerlink" title="Permalink to this term" href="#--network-veth">¶</a></dt><dd><p><a href="systemd-nspawn.html"><span class="citerefentry"><span class="refentrytitle">systemd-nspawn</span>(1)</span></a></p></dd><dt id="--new-id128"><span class="term"><code class="option">--new-id128</code></span><a class="headerlink" title="Permalink to this term" href="#--new-id128">¶</a></dt><dd><p><a href="journalctl.html"><span class="citerefentry"><span class="refentrytitle">journalctl</span>(1)</span></a></p></dd><dt id="--nice="><span class="term"><code class="option">--nice=</code></span><a class="headerlink" title="Permalink to this term" href="#--nice=">¶</a></dt><dd><p><a href="systemd-run.html"><span class="citerefentry"><span class="refentrytitle">systemd-run</span>(1)</span></a></p></dd><dt id="--no-ask-password"><span class="term"><code class="option">--no-ask-password</code></span><a class="headerlink" title="Permalink to this term" href="#--no-ask-password">¶</a></dt><dd><p><a href="hostnamectl.html"><span class="citerefentry"><span class="refentrytitle">hostnamectl</span>(1)</span></a>, <a href="localectl.html"><span class="citerefentry"><span class="refentrytitle">localectl</span>(1)</span></a>, <a href="loginctl.html"><span class="citerefentry"><span class="refentrytitle">loginctl</span>(1)</span></a>, <a href="systemctl.html"><span class="citerefentry"><span class="refentrytitle">systemctl</span>(1)</span></a>, <a href="timedatectl.html"><span class="citerefentry"><span class="refentrytitle">timedatectl</span>(1)</span></a></p></dd><dt id="--no-block"><span class="term"><code class="option">--no-block</code></span><a class="headerlink" title="Permalink to this term" href="#--no-block">¶</a></dt><dd><p><a href="systemctl.html"><span class="citerefentry"><span class="refentrytitle">systemctl</span>(1)</span></a></p></dd><dt id="--no-compress"><span class="term"><code class="option">--no-compress</code></span><a class="headerlink" title="Permalink to this term" href="#--no-compress">¶</a></dt><dd><p><a href="systemd-journal-remote.html"><span class="citerefentry"><span class="refentrytitle">systemd-journal-remote</span>(8)</span></a></p></dd><dt id="--no-convert"><span class="term"><code class="option">--no-convert</code></span><a class="headerlink" title="Permalink to this term" href="#--no-convert">¶</a></dt><dd><p><a href="localectl.html"><span class="citerefentry"><span class="refentrytitle">localectl</span>(1)</span></a></p></dd><dt id="--no-filter"><span class="term"><code class="option">--no-filter</code></span><a class="headerlink" title="Permalink to this term" href="#--no-filter">¶</a></dt><dd><p><a href="systemd-bootchart.html"><span class="citerefentry"><span class="refentrytitle">systemd-bootchart</span>(1)</span></a></p></dd><dt id="--no-full"><span class="term"><code class="option">--no-full</code></span><a class="headerlink" title="Permalink to this term" href="#--no-full">¶</a></dt><dd><p><a href="journalctl.html"><span class="citerefentry"><span class="refentrytitle">journalctl</span>(1)</span></a></p></dd><dt id="--no-legend"><span class="term"><code class="option">--no-legend</code></span><a class="headerlink" title="Permalink to this term" href="#--no-legend">¶</a></dt><dd><p><a href="busctl.html"><span class="citerefentry"><span class="refentrytitle">busctl</span>(1)</span></a>, <a href="coredumpctl.html"><span class="citerefentry"><span class="refentrytitle">coredumpctl</span>(1)</span></a>, <a href="loginctl.html"><span class="citerefentry"><span class="refentrytitle">loginctl</span>(1)</span></a>, <a href="machinectl.html"><span class="citerefentry"><span class="refentrytitle">machinectl</span>(1)</span></a>, <a href="systemctl.html"><span class="citerefentry"><span class="refentrytitle">systemctl</span>(1)</span></a></p></dd><dt id="--no-pager"><span class="term"><code class="option">--no-pager</code></span><a class="headerlink" title="Permalink to this term" href="#--no-pager">¶</a></dt><dd><p><a href="busctl.html"><span class="citerefentry"><span class="refentrytitle">busctl</span>(1)</span></a>, <a href="coredumpctl.html"><span class="citerefentry"><span class="refentrytitle">coredumpctl</span>(1)</span></a>, <a href="journalctl.html"><span class="citerefentry"><span class="refentrytitle">journalctl</span>(1)</span></a>, <a href="localectl.html"><span class="citerefentry"><span class="refentrytitle">localectl</span>(1)</span></a>, <a href="loginctl.html"><span class="citerefentry"><span class="refentrytitle">loginctl</span>(1)</span></a>, <a href="machinectl.html"><span class="citerefentry"><span class="refentrytitle">machinectl</span>(1)</span></a>, <a href="systemctl.html"><span class="citerefentry"><span class="refentrytitle">systemctl</span>(1)</span></a>, <a href="systemd-analyze.html"><span class="citerefentry"><span class="refentrytitle">systemd-analyze</span>(1)</span></a>, <a href="systemd-cgls.html"><span class="citerefentry"><span class="refentrytitle">systemd-cgls</span>(1)</span></a>, <a href="systemd-delta.html"><span class="citerefentry"><span class="refentrytitle">systemd-delta</span>(1)</span></a>, <a href="timedatectl.html"><span class="citerefentry"><span class="refentrytitle">timedatectl</span>(1)</span></a></p></dd><dt id="--no-reload"><span class="term"><code class="option">--no-reload</code></span><a class="headerlink" title="Permalink to this term" href="#--no-reload">¶</a></dt><dd><p><a href="systemctl.html"><span class="citerefentry"><span class="refentrytitle">systemctl</span>(1)</span></a></p></dd><dt id="--no-seal"><span class="term"><code class="option">--no-seal</code></span><a class="headerlink" title="Permalink to this term" href="#--no-seal">¶</a></dt><dd><p><a href="systemd-journal-remote.html"><span class="citerefentry"><span class="refentrytitle">systemd-journal-remote</span>(8)</span></a></p></dd><dt id="--no-tail"><span class="term"><code class="option">--no-tail</code></span><a class="headerlink" title="Permalink to this term" href="#--no-tail">¶</a></dt><dd><p><a href="journalctl.html"><span class="citerefentry"><span class="refentrytitle">journalctl</span>(1)</span></a></p></dd><dt id="--no-tty"><span class="term"><code class="option">--no-tty</code></span><a class="headerlink" title="Permalink to this term" href="#--no-tty">¶</a></dt><dd><p><a href="systemd-ask-password.html"><span class="citerefentry"><span class="refentrytitle">systemd-ask-password</span>(1)</span></a></p></dd><dt id="--no-wall"><span class="term"><code class="option">--no-wall</code></span><a class="headerlink" title="Permalink to this term" href="#--no-wall">¶</a></dt><dd><p><a href="halt.html"><span class="citerefentry"><span class="refentrytitle">halt</span>(8)</span></a>, <a href="shutdown.html"><span class="citerefentry"><span class="refentrytitle">shutdown</span>(8)</span></a>, <a href="systemctl.html"><span class="citerefentry"><span class="refentrytitle">systemctl</span>(1)</span></a>, <a href="telinit.html"><span class="citerefentry"><span class="refentrytitle">telinit</span>(8)</span></a></p></dd><dt id="--no-wtmp"><span class="term"><code class="option">--no-wtmp</code></span><a class="headerlink" title="Permalink to this term" href="#--no-wtmp">¶</a></dt><dd><p><a href="halt.html"><span class="citerefentry"><span class="refentrytitle">halt</span>(8)</span></a></p></dd><dt id="--order"><span class="term"><code class="option">--order</code></span><a class="headerlink" title="Permalink to this term" href="#--order">¶</a></dt><dd><p><a href="systemd-analyze.html"><span class="citerefentry"><span class="refentrytitle">systemd-analyze</span>(1)</span></a></p></dd><dt id="--output"><span class="term"><code class="option">--output</code></span><a class="headerlink" title="Permalink to this term" href="#--output">¶</a></dt><dd><p><a href="systemd-bootchart.html"><span class="citerefentry"><span class="refentrytitle">systemd-bootchart</span>(1)</span></a></p></dd><dt id="--output="><span class="term"><code class="option">--output=</code></span><a class="headerlink" title="Permalink to this term" href="#--output=">¶</a></dt><dd><p><a href="coredumpctl.html"><span class="citerefentry"><span class="refentrytitle">coredumpctl</span>(1)</span></a>, <a href="journalctl.html"><span class="citerefentry"><span class="refentrytitle">journalctl</span>(1)</span></a>, <a href="systemctl.html"><span class="citerefentry"><span class="refentrytitle">systemctl</span>(1)</span></a>, <a href="systemd-journal-remote.html"><span class="citerefentry"><span class="refentrytitle">systemd-journal-remote</span>(8)</span></a></p></dd><dt id="--pager-end"><span class="term"><code class="option">--pager-end</code></span><a class="headerlink" title="Permalink to this term" href="#--pager-end">¶</a></dt><dd><p><a href="journalctl.html"><span class="citerefentry"><span class="refentrytitle">journalctl</span>(1)</span></a></p></dd><dt id="--parent-match="><span class="term"><code class="option">--parent-match=</code></span><a class="headerlink" title="Permalink to this term" href="#--parent-match=">¶</a></dt><dd><p><a href="udevadm.html"><span class="citerefentry"><span class="refentrytitle">udevadm</span>(8)</span></a></p></dd><dt id="--path="><span class="term"><code class="option">--path=</code></span><a class="headerlink" title="Permalink to this term" href="#--path=">¶</a></dt><dd><p><a href="udevadm.html"><span class="citerefentry"><span class="refentrytitle">udevadm</span>(8)</span></a></p></dd><dt id="--personality="><span class="term"><code class="option">--personality=</code></span><a class="headerlink" title="Permalink to this term" href="#--personality=">¶</a></dt><dd><p><a href="systemd-nspawn.html"><span class="citerefentry"><span class="refentrytitle">systemd-nspawn</span>(1)</span></a></p></dd><dt id="--pid="><span class="term"><code class="option">--pid=</code></span><a class="headerlink" title="Permalink to this term" href="#--pid=">¶</a></dt><dd><p><a href="systemd-notify.html"><span class="citerefentry"><span class="refentrytitle">systemd-notify</span>(1)</span></a></p></dd><dt id="--plain"><span class="term"><code class="option">--plain</code></span><a class="headerlink" title="Permalink to this term" href="#--plain">¶</a></dt><dd><p><a href="systemctl.html"><span class="citerefentry"><span class="refentrytitle">systemctl</span>(1)</span></a></p></dd><dt id="--plymouth"><span class="term"><code class="option">--plymouth</code></span><a class="headerlink" title="Permalink to this term" href="#--plymouth">¶</a></dt><dd><p><a href="systemd-tty-ask-password-agent.html"><span class="citerefentry"><span class="refentrytitle">systemd-tty-ask-password-agent</span>(1)</span></a></p></dd><dt id="--poweroff"><span class="term"><code class="option">--poweroff</code></span><a class="headerlink" title="Permalink to this term" href="#--poweroff">¶</a></dt><dd><p><a href="halt.html"><span class="citerefentry"><span class="refentrytitle">halt</span>(8)</span></a>, <a href="shutdown.html"><span class="citerefentry"><span class="refentrytitle">shutdown</span>(8)</span></a></p></dd><dt id="--prefix="><span class="term"><code class="option">--prefix=</code></span><a class="headerlink" title="Permalink to this term" href="#--prefix=">¶</a></dt><dd><p><a href="systemd-tmpfiles.html"><span class="citerefentry"><span class="refentrytitle">systemd-tmpfiles</span>(8)</span></a></p></dd><dt id="--preset-mode="><span class="term"><code class="option">--preset-mode=</code></span><a class="headerlink" title="Permalink to this term" href="#--preset-mode=">¶</a></dt><dd><p><a href="systemctl.html"><span class="citerefentry"><span class="refentrytitle">systemctl</span>(1)</span></a></p></dd><dt id="--pretty"><span class="term"><code class="option">--pretty</code></span><a class="headerlink" title="Permalink to this term" href="#--pretty">¶</a></dt><dd><p><a href="hostnamectl.html"><span class="citerefentry"><span class="refentrytitle">hostnamectl</span>(1)</span></a></p></dd><dt id="--priority="><span class="term"><code class="option">--priority=</code></span><a class="headerlink" title="Permalink to this term" href="#--priority=">¶</a></dt><dd><p><a href="journalctl.html"><span class="citerefentry"><span class="refentrytitle">journalctl</span>(1)</span></a>, <a href="systemd-cat.html"><span class="citerefentry"><span class="refentrytitle">systemd-cat</span>(1)</span></a></p></dd><dt id="--private-network"><span class="term"><code class="option">--private-network</code></span><a class="headerlink" title="Permalink to this term" href="#--private-network">¶</a></dt><dd><p><a href="systemd-nspawn.html"><span class="citerefentry"><span class="refentrytitle">systemd-nspawn</span>(1)</span></a></p></dd><dt id="--privileged"><span class="term"><code class="option">--privileged</code></span><a class="headerlink" title="Permalink to this term" href="#--privileged">¶</a></dt><dd><p><a href="hostnamectl.html"><span class="citerefentry"><span class="refentrytitle">hostnamectl</span>(1)</span></a>, <a href="localectl.html"><span class="citerefentry"><span class="refentrytitle">localectl</span>(1)</span></a></p></dd><dt id="--property"><span class="term"><code class="option">--property</code></span><a class="headerlink" title="Permalink to this term" href="#--property">¶</a></dt><dd><p><a href="udevadm.html"><span class="citerefentry"><span class="refentrytitle">udevadm</span>(8)</span></a></p></dd><dt id="--property-match="><span class="term"><code class="option">--property-match=</code></span><a class="headerlink" title="Permalink to this term" href="#--property-match=">¶</a></dt><dd><p><a href="udevadm.html"><span class="citerefentry"><span class="refentrytitle">udevadm</span>(8)</span></a></p></dd><dt id="--property="><span class="term"><code class="option">--property=</code></span><a class="headerlink" title="Permalink to this term" href="#--property=">¶</a></dt><dd><p><a href="loginctl.html"><span class="citerefentry"><span class="refentrytitle">loginctl</span>(1)</span></a>, <a href="machinectl.html"><span class="citerefentry"><span class="refentrytitle">machinectl</span>(1)</span></a>, <a href="systemctl.html"><span class="citerefentry"><span class="refentrytitle">systemctl</span>(1)</span></a>, <a href="systemd-run.html"><span class="citerefentry"><span class="refentrytitle">systemd-run</span>(1)</span></a>, <a href="udevadm.html"><span class="citerefentry"><span class="refentrytitle">udevadm</span>(8)</span></a></p></dd><dt id="--pss"><span class="term"><code class="option">--pss</code></span><a class="headerlink" title="Permalink to this term" href="#--pss">¶</a></dt><dd><p><a href="systemd-bootchart.html"><span class="citerefentry"><span class="refentrytitle">systemd-bootchart</span>(1)</span></a></p></dd><dt id="--query"><span class="term"><code class="option">--query</code></span><a class="headerlink" title="Permalink to this term" href="#--query">¶</a></dt><dd><p><a href="systemd-tty-ask-password-agent.html"><span class="citerefentry"><span class="refentrytitle">systemd-tty-ask-password-agent</span>(1)</span></a></p></dd><dt id="--query="><span class="term"><code class="option">--query=</code></span><a class="headerlink" title="Permalink to this term" href="#--query=">¶</a></dt><dd><p><a href="udevadm.html"><span class="citerefentry"><span class="refentrytitle">udevadm</span>(8)</span></a></p></dd><dt id="--quiet"><span class="term"><code class="option">--quiet</code></span><a class="headerlink" title="Permalink to this term" href="#--quiet">¶</a></dt><dd><p><a href="journalctl.html"><span class="citerefentry"><span class="refentrytitle">journalctl</span>(1)</span></a>, <a href="systemctl.html"><span class="citerefentry"><span class="refentrytitle">systemctl</span>(1)</span></a>, <a href="systemd-detect-virt.html"><span class="citerefentry"><span class="refentrytitle">systemd-detect-virt</span>(1)</span></a>, <a href="systemd-nspawn.html"><span class="citerefentry"><span class="refentrytitle">systemd-nspawn</span>(1)</span></a></p></dd><dt id="--read-only"><span class="term"><code class="option">--read-only</code></span><a class="headerlink" title="Permalink to this term" href="#--read-only">¶</a></dt><dd><p><a href="systemd-nspawn.html"><span class="citerefentry"><span class="refentrytitle">systemd-nspawn</span>(1)</span></a></p></dd><dt id="--readahead="><span class="term"><code class="option">--readahead=</code></span><a class="headerlink" title="Permalink to this term" href="#--readahead=">¶</a></dt><dd><p><a href="systemd-notify.html"><span class="citerefentry"><span class="refentrytitle">systemd-notify</span>(1)</span></a></p></dd><dt id="--ready"><span class="term"><code class="option">--ready</code></span><a class="headerlink" title="Permalink to this term" href="#--ready">¶</a></dt><dd><p><a href="systemd-notify.html"><span class="citerefentry"><span class="refentrytitle">systemd-notify</span>(1)</span></a></p></dd><dt id="--reboot"><span class="term"><code class="option">--reboot</code></span><a class="headerlink" title="Permalink to this term" href="#--reboot">¶</a></dt><dd><p><a href="halt.html"><span class="citerefentry"><span class="refentrytitle">halt</span>(8)</span></a>, <a href="shutdown.html"><span class="citerefentry"><span class="refentrytitle">shutdown</span>(8)</span></a></p></dd><dt id="--recursive"><span class="term"><code class="option">--recursive</code></span><a class="headerlink" title="Permalink to this term" href="#--recursive">¶</a></dt><dd><p><a href="systemctl.html"><span class="citerefentry"><span class="refentrytitle">systemctl</span>(1)</span></a></p></dd><dt id="--register="><span class="term"><code class="option">--register=</code></span><a class="headerlink" title="Permalink to this term" href="#--register=">¶</a></dt><dd><p><a href="systemd-nspawn.html"><span class="citerefentry"><span class="refentrytitle">systemd-nspawn</span>(1)</span></a></p></dd><dt id="--rel"><span class="term"><code class="option">--rel</code></span><a class="headerlink" title="Permalink to this term" href="#--rel">¶</a></dt><dd><p><a href="systemd-bootchart.html"><span class="citerefentry"><span class="refentrytitle">systemd-bootchart</span>(1)</span></a></p></dd><dt id="--reload"><span class="term"><code class="option">--reload</code></span><a class="headerlink" title="Permalink to this term" href="#--reload">¶</a></dt><dd><p><a href="udevadm.html"><span class="citerefentry"><span class="refentrytitle">udevadm</span>(8)</span></a></p></dd><dt id="--remain-after-exit"><span class="term"><code class="option">--remain-after-exit</code></span><a class="headerlink" title="Permalink to this term" href="#--remain-after-exit">¶</a></dt><dd><p><a href="systemd-run.html"><span class="citerefentry"><span class="refentrytitle">systemd-run</span>(1)</span></a></p></dd><dt id="--remove"><span class="term"><code class="option">--remove</code></span><a class="headerlink" title="Permalink to this term" href="#--remove">¶</a></dt><dd><p><a href="systemd-tmpfiles.html"><span class="citerefentry"><span class="refentrytitle">systemd-tmpfiles</span>(8)</span></a></p></dd><dt id="--require"><span class="term"><code class="option">--require</code></span><a class="headerlink" title="Permalink to this term" href="#--require">¶</a></dt><dd><p><a href="systemd-analyze.html"><span class="citerefentry"><span class="refentrytitle">systemd-analyze</span>(1)</span></a></p></dd><dt id="--resolve-names="><span class="term"><code class="option">--resolve-names=</code></span><a class="headerlink" title="Permalink to this term" href="#--resolve-names=">¶</a></dt><dd><p><a href="systemd-udevd.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-udevd.service</span>(8)</span></a>, <a href="udevadm.html"><span class="citerefentry"><span class="refentrytitle">udevadm</span>(8)</span></a></p></dd><dt id="--reverse"><span class="term"><code class="option">--reverse</code></span><a class="headerlink" title="Permalink to this term" href="#--reverse">¶</a></dt><dd><p><a href="journalctl.html"><span class="citerefentry"><span class="refentrytitle">journalctl</span>(1)</span></a>, <a href="systemctl.html"><span class="citerefentry"><span class="refentrytitle">systemctl</span>(1)</span></a></p></dd><dt id="--root"><span class="term"><code class="option">--root</code></span><a class="headerlink" title="Permalink to this term" href="#--root">¶</a></dt><dd><p><a href="udevadm.html"><span class="citerefentry"><span class="refentrytitle">udevadm</span>(8)</span></a></p></dd><dt id="--root="><span class="term"><code class="option">--root=</code></span><a class="headerlink" title="Permalink to this term" href="#--root=">¶</a></dt><dd><p><a href="journalctl.html"><span class="citerefentry"><span class="refentrytitle">journalctl</span>(1)</span></a>, <a href="systemctl.html"><span class="citerefentry"><span class="refentrytitle">systemctl</span>(1)</span></a>, <a href="systemd-machine-id-setup.html"><span class="citerefentry"><span class="refentrytitle">systemd-machine-id-setup</span>(1)</span></a>, <a href="systemd-sysusers.html"><span class="citerefentry"><span class="refentrytitle">systemd-sysusers</span>(8)</span></a>, <a href="systemd-tmpfiles.html"><span class="citerefentry"><span class="refentrytitle">systemd-tmpfiles</span>(8)</span></a>, <a href="udevadm.html"><span class="citerefentry"><span class="refentrytitle">udevadm</span>(8)</span></a></p></dd><dt id="--runtime"><span class="term"><code class="option">--runtime</code></span><a class="headerlink" title="Permalink to this term" href="#--runtime">¶</a></dt><dd><p><a href="systemctl.html"><span class="citerefentry"><span class="refentrytitle">systemctl</span>(1)</span></a></p></dd><dt id="--sample"><span class="term"><code class="option">--sample</code></span><a class="headerlink" title="Permalink to this term" href="#--sample">¶</a></dt><dd><p><a href="systemd-bootchart.html"><span class="citerefentry"><span class="refentrytitle">systemd-bootchart</span>(1)</span></a></p></dd><dt id="--scale-x"><span class="term"><code class="option">--scale-x</code></span><a class="headerlink" title="Permalink to this term" href="#--scale-x">¶</a></dt><dd><p><a href="systemd-bootchart.html"><span class="citerefentry"><span class="refentrytitle">systemd-bootchart</span>(1)</span></a></p></dd><dt id="--scale-y"><span class="term"><code class="option">--scale-y</code></span><a class="headerlink" title="Permalink to this term" href="#--scale-y">¶</a></dt><dd><p><a href="systemd-bootchart.html"><span class="citerefentry"><span class="refentrytitle">systemd-bootchart</span>(1)</span></a></p></dd><dt id="--scope"><span class="term"><code class="option">--scope</code></span><a class="headerlink" title="Permalink to this term" href="#--scope">¶</a></dt><dd><p><a href="systemd-run.html"><span class="citerefentry"><span class="refentrytitle">systemd-run</span>(1)</span></a></p></dd><dt id="--seal"><span class="term"><code class="option">--seal</code></span><a class="headerlink" title="Permalink to this term" href="#--seal">¶</a></dt><dd><p><a href="systemd-journal-remote.html"><span class="citerefentry"><span class="refentrytitle">systemd-journal-remote</span>(8)</span></a></p></dd><dt id="--selinux-apifs-context="><span class="term"><code class="option">--selinux-apifs-context=</code></span><a class="headerlink" title="Permalink to this term" href="#--selinux-apifs-context=">¶</a></dt><dd><p><a href="systemd-nspawn.html"><span class="citerefentry"><span class="refentrytitle">systemd-nspawn</span>(1)</span></a></p></dd><dt id="--selinux-context="><span class="term"><code class="option">--selinux-context=</code></span><a class="headerlink" title="Permalink to this term" href="#--selinux-context=">¶</a></dt><dd><p><a href="systemd-nspawn.html"><span class="citerefentry"><span class="refentrytitle">systemd-nspawn</span>(1)</span></a></p></dd><dt id="--send-sighup"><span class="term"><code class="option">--send-sighup</code></span><a class="headerlink" title="Permalink to this term" href="#--send-sighup">¶</a></dt><dd><p><a href="systemd-run.html"><span class="citerefentry"><span class="refentrytitle">systemd-run</span>(1)</span></a></p></dd><dt id="--service-type="><span class="term"><code class="option">--service-type=</code></span><a class="headerlink" title="Permalink to this term" href="#--service-type=">¶</a></dt><dd><p><a href="systemd-run.html"><span class="citerefentry"><span class="refentrytitle">systemd-run</span>(1)</span></a></p></dd><dt id="--setenv="><span class="term"><code class="option">--setenv=</code></span><a class="headerlink" title="Permalink to this term" href="#--setenv=">¶</a></dt><dd><p><a href="systemd-activate.html"><span class="citerefentry"><span class="refentrytitle">systemd-activate</span>(8)</span></a>, <a href="systemd-nspawn.html"><span class="citerefentry"><span class="refentrytitle">systemd-nspawn</span>(1)</span></a>, <a href="systemd-run.html"><span class="citerefentry"><span class="refentrytitle">systemd-run</span>(1)</span></a></p></dd><dt id="--setup-keys"><span class="term"><code class="option">--setup-keys</code></span><a class="headerlink" title="Permalink to this term" href="#--setup-keys">¶</a></dt><dd><p><a href="journalctl.html"><span class="citerefentry"><span class="refentrytitle">journalctl</span>(1)</span></a></p></dd><dt id="--share-system"><span class="term"><code class="option">--share-system</code></span><a class="headerlink" title="Permalink to this term" href="#--share-system">¶</a></dt><dd><p><a href="systemd-nspawn.html"><span class="citerefentry"><span class="refentrytitle">systemd-nspawn</span>(1)</span></a></p></dd><dt id="--show-cursor"><span class="term"><code class="option">--show-cursor</code></span><a class="headerlink" title="Permalink to this term" href="#--show-cursor">¶</a></dt><dd><p><a href="journalctl.html"><span class="citerefentry"><span class="refentrytitle">journalctl</span>(1)</span></a></p></dd><dt id="--show-machine"><span class="term"><code class="option">--show-machine</code></span><a class="headerlink" title="Permalink to this term" href="#--show-machine">¶</a></dt><dd><p><a href="busctl.html"><span class="citerefentry"><span class="refentrytitle">busctl</span>(1)</span></a></p></dd><dt id="--show-status="><span class="term"><code class="option">--show-status=</code></span><a class="headerlink" title="Permalink to this term" href="#--show-status=">¶</a></dt><dd><p><a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a></p></dd><dt id="--show-types"><span class="term"><code class="option">--show-types</code></span><a class="headerlink" title="Permalink to this term" href="#--show-types">¶</a></dt><dd><p><a href="systemctl.html"><span class="citerefentry"><span class="refentrytitle">systemctl</span>(1)</span></a></p></dd><dt id="--signal="><span class="term"><code class="option">--signal=</code></span><a class="headerlink" title="Permalink to this term" href="#--signal=">¶</a></dt><dd><p><a href="loginctl.html"><span class="citerefentry"><span class="refentrytitle">loginctl</span>(1)</span></a>, <a href="machinectl.html"><span class="citerefentry"><span class="refentrytitle">machinectl</span>(1)</span></a>, <a href="systemctl.html"><span class="citerefentry"><span class="refentrytitle">systemctl</span>(1)</span></a></p></dd><dt id="--since="><span class="term"><code class="option">--since=</code></span><a class="headerlink" title="Permalink to this term" href="#--since=">¶</a></dt><dd><p><a href="journalctl.html"><span class="citerefentry"><span class="refentrytitle">journalctl</span>(1)</span></a></p></dd><dt id="--slice="><span class="term"><code class="option">--slice=</code></span><a class="headerlink" title="Permalink to this term" href="#--slice=">¶</a></dt><dd><p><a href="systemd-nspawn.html"><span class="citerefentry"><span class="refentrytitle">systemd-nspawn</span>(1)</span></a>, <a href="systemd-run.html"><span class="citerefentry"><span class="refentrytitle">systemd-run</span>(1)</span></a></p></dd><dt id="--start-exec-queue"><span class="term"><code class="option">--start-exec-queue</code></span><a class="headerlink" title="Permalink to this term" href="#--start-exec-queue">¶</a></dt><dd><p><a href="udevadm.html"><span class="citerefentry"><span class="refentrytitle">udevadm</span>(8)</span></a></p></dd><dt id="--state="><span class="term"><code class="option">--state=</code></span><a class="headerlink" title="Permalink to this term" href="#--state=">¶</a></dt><dd><p><a href="systemctl.html"><span class="citerefentry"><span class="refentrytitle">systemctl</span>(1)</span></a></p></dd><dt id="--static"><span class="term"><code class="option">--static</code></span><a class="headerlink" title="Permalink to this term" href="#--static">¶</a></dt><dd><p><a href="hostnamectl.html"><span class="citerefentry"><span class="refentrytitle">hostnamectl</span>(1)</span></a></p></dd><dt id="--status="><span class="term"><code class="option">--status=</code></span><a class="headerlink" title="Permalink to this term" href="#--status=">¶</a></dt><dd><p><a href="systemd-notify.html"><span class="citerefentry"><span class="refentrytitle">systemd-notify</span>(1)</span></a></p></dd><dt id="--stop-exec-queue"><span class="term"><code class="option">--stop-exec-queue</code></span><a class="headerlink" title="Permalink to this term" href="#--stop-exec-queue">¶</a></dt><dd><p><a href="udevadm.html"><span class="citerefentry"><span class="refentrytitle">udevadm</span>(8)</span></a></p></dd><dt id="--subsystem-match="><span class="term"><code class="option">--subsystem-match=</code></span><a class="headerlink" title="Permalink to this term" href="#--subsystem-match=">¶</a></dt><dd><p><a href="udevadm.html"><span class="citerefentry"><span class="refentrytitle">udevadm</span>(8)</span></a></p></dd><dt id="--subsystem-nomatch="><span class="term"><code class="option">--subsystem-nomatch=</code></span><a class="headerlink" title="Permalink to this term" href="#--subsystem-nomatch=">¶</a></dt><dd><p><a href="udevadm.html"><span class="citerefentry"><span class="refentrytitle">udevadm</span>(8)</span></a></p></dd><dt id="--suffix="><span class="term"><code class="option">--suffix=</code></span><a class="headerlink" title="Permalink to this term" href="#--suffix=">¶</a></dt><dd><p><a href="systemd-path.html"><span class="citerefentry"><span class="refentrytitle">systemd-path</span>(1)</span></a></p></dd><dt id="--sysname-match="><span class="term"><code class="option">--sysname-match=</code></span><a class="headerlink" title="Permalink to this term" href="#--sysname-match=">¶</a></dt><dd><p><a href="udevadm.html"><span class="citerefentry"><span class="refentrytitle">udevadm</span>(8)</span></a></p></dd><dt id="--system"><span class="term"><code class="option">--system</code></span><a class="headerlink" title="Permalink to this term" href="#--system">¶</a></dt><dd><p><a href="busctl.html"><span class="citerefentry"><span class="refentrytitle">busctl</span>(1)</span></a>, <a href="journalctl.html"><span class="citerefentry"><span class="refentrytitle">journalctl</span>(1)</span></a>, <a href="systemctl.html"><span class="citerefentry"><span class="refentrytitle">systemctl</span>(1)</span></a>, <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>, <a href="systemd-analyze.html"><span class="citerefentry"><span class="refentrytitle">systemd-analyze</span>(1)</span></a>, <a href="systemd-run.html"><span class="citerefentry"><span class="refentrytitle">systemd-run</span>(1)</span></a></p></dd><dt id="--tag-match="><span class="term"><code class="option">--tag-match=</code></span><a class="headerlink" title="Permalink to this term" href="#--tag-match=">¶</a></dt><dd><p><a href="udevadm.html"><span class="citerefentry"><span class="refentrytitle">udevadm</span>(8)</span></a></p></dd><dt id="--test"><span class="term"><code class="option">--test</code></span><a class="headerlink" title="Permalink to this term" href="#--test">¶</a></dt><dd><p><a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a></p></dd><dt id="--test="><span class="term"><code class="option">--test=</code></span><a class="headerlink" title="Permalink to this term" href="#--test=">¶</a></dt><dd><p><a href="udevadm.html"><span class="citerefentry"><span class="refentrytitle">udevadm</span>(8)</span></a></p></dd><dt id="--timeout="><span class="term"><code class="option">--timeout=</code></span><a class="headerlink" title="Permalink to this term" href="#--timeout=">¶</a></dt><dd><p><a href="systemd-ask-password.html"><span class="citerefentry"><span class="refentrytitle">systemd-ask-password</span>(1)</span></a>, <a href="systemd-readahead-replay.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-readahead-replay.service</span>(8)</span></a>, <a href="udevadm.html"><span class="citerefentry"><span class="refentrytitle">udevadm</span>(8)</span></a></p></dd><dt id="--tmpfs="><span class="term"><code class="option">--tmpfs=</code></span><a class="headerlink" title="Permalink to this term" href="#--tmpfs=">¶</a></dt><dd><p><a href="systemd-nspawn.html"><span class="citerefentry"><span class="refentrytitle">systemd-nspawn</span>(1)</span></a></p></dd><dt id="--to-pattern="><span class="term"><code class="option">--to-pattern=</code></span><a class="headerlink" title="Permalink to this term" href="#--to-pattern=">¶</a></dt><dd><p><a href="systemd-analyze.html"><span class="citerefentry"><span class="refentrytitle">systemd-analyze</span>(1)</span></a></p></dd><dt id="--transient"><span class="term"><code class="option">--transient</code></span><a class="headerlink" title="Permalink to this term" href="#--transient">¶</a></dt><dd><p><a href="hostnamectl.html"><span class="citerefentry"><span class="refentrytitle">hostnamectl</span>(1)</span></a></p></dd><dt id="--type="><span class="term"><code class="option">--type=</code></span><a class="headerlink" title="Permalink to this term" href="#--type=">¶</a></dt><dd><p><a href="systemctl.html"><span class="citerefentry"><span class="refentrytitle">systemctl</span>(1)</span></a>, <a href="systemd-delta.html"><span class="citerefentry"><span class="refentrytitle">systemd-delta</span>(1)</span></a>, <a href="udevadm.html"><span class="citerefentry"><span class="refentrytitle">udevadm</span>(8)</span></a></p></dd><dt id="--udev"><span class="term"><code class="option">--udev</code></span><a class="headerlink" title="Permalink to this term" href="#--udev">¶</a></dt><dd><p><a href="udevadm.html"><span class="citerefentry"><span class="refentrytitle">udevadm</span>(8)</span></a></p></dd><dt id="--uid="><span class="term"><code class="option">--uid=</code></span><a class="headerlink" title="Permalink to this term" href="#--uid=">¶</a></dt><dd><p><a href="systemd-run.html"><span class="citerefentry"><span class="refentrytitle">systemd-run</span>(1)</span></a></p></dd><dt id="--unique"><span class="term"><code class="option">--unique</code></span><a class="headerlink" title="Permalink to this term" href="#--unique">¶</a></dt><dd><p><a href="busctl.html"><span class="citerefentry"><span class="refentrytitle">busctl</span>(1)</span></a></p></dd><dt id="--unit="><span class="term"><code class="option">--unit=</code></span><a class="headerlink" title="Permalink to this term" href="#--unit=">¶</a></dt><dd><p><a href="journalctl.html"><span class="citerefentry"><span class="refentrytitle">journalctl</span>(1)</span></a>, <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>, <a href="systemd-run.html"><span class="citerefentry"><span class="refentrytitle">systemd-run</span>(1)</span></a></p></dd><dt id="--until="><span class="term"><code class="option">--until=</code></span><a class="headerlink" title="Permalink to this term" href="#--until=">¶</a></dt><dd><p><a href="journalctl.html"><span class="citerefentry"><span class="refentrytitle">journalctl</span>(1)</span></a></p></dd><dt id="--update"><span class="term"><code class="option">--update</code></span><a class="headerlink" title="Permalink to this term" href="#--update">¶</a></dt><dd><p><a href="udevadm.html"><span class="citerefentry"><span class="refentrytitle">udevadm</span>(8)</span></a></p></dd><dt id="--update-catalog"><span class="term"><code class="option">--update-catalog</code></span><a class="headerlink" title="Permalink to this term" href="#--update-catalog">¶</a></dt><dd><p><a href="journalctl.html"><span class="citerefentry"><span class="refentrytitle">journalctl</span>(1)</span></a></p></dd><dt id="--url="><span class="term"><code class="option">--url=</code></span><a class="headerlink" title="Permalink to this term" href="#--url=">¶</a></dt><dd><p><a href="systemd-journal-remote.html"><span class="citerefentry"><span class="refentrytitle">systemd-journal-remote</span>(8)</span></a></p></dd><dt id="--user"><span class="term"><code class="option">--user</code></span><a class="headerlink" title="Permalink to this term" href="#--user">¶</a></dt><dd><p><a href="busctl.html"><span class="citerefentry"><span class="refentrytitle">busctl</span>(1)</span></a>, <a href="journalctl.html"><span class="citerefentry"><span class="refentrytitle">journalctl</span>(1)</span></a>, <a href="systemctl.html"><span class="citerefentry"><span class="refentrytitle">systemctl</span>(1)</span></a>, <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>, <a href="systemd-analyze.html"><span class="citerefentry"><span class="refentrytitle">systemd-analyze</span>(1)</span></a>, <a href="systemd-run.html"><span class="citerefentry"><span class="refentrytitle">systemd-run</span>(1)</span></a></p></dd><dt id="--user-unit="><span class="term"><code class="option">--user-unit=</code></span><a class="headerlink" title="Permalink to this term" href="#--user-unit=">¶</a></dt><dd><p><a href="journalctl.html"><span class="citerefentry"><span class="refentrytitle">journalctl</span>(1)</span></a></p></dd><dt id="--user="><span class="term"><code class="option">--user=</code></span><a class="headerlink" title="Permalink to this term" href="#--user=">¶</a></dt><dd><p><a href="systemd-nspawn.html"><span class="citerefentry"><span class="refentrytitle">systemd-nspawn</span>(1)</span></a></p></dd><dt id="--uuid="><span class="term"><code class="option">--uuid=</code></span><a class="headerlink" title="Permalink to this term" href="#--uuid=">¶</a></dt><dd><p><a href="systemd-nspawn.html"><span class="citerefentry"><span class="refentrytitle">systemd-nspawn</span>(1)</span></a></p></dd><dt id="--verbose"><span class="term"><code class="option">--verbose</code></span><a class="headerlink" title="Permalink to this term" href="#--verbose">¶</a></dt><dd><p><a href="udevadm.html"><span class="citerefentry"><span class="refentrytitle">udevadm</span>(8)</span></a></p></dd><dt id="--verify"><span class="term"><code class="option">--verify</code></span><a class="headerlink" title="Permalink to this term" href="#--verify">¶</a></dt><dd><p><a href="journalctl.html"><span class="citerefentry"><span class="refentrytitle">journalctl</span>(1)</span></a></p></dd><dt id="--verify-key="><span class="term"><code class="option">--verify-key=</code></span><a class="headerlink" title="Permalink to this term" href="#--verify-key=">¶</a></dt><dd><p><a href="journalctl.html"><span class="citerefentry"><span class="refentrytitle">journalctl</span>(1)</span></a></p></dd><dt id="--version"><span class="term"><code class="option">--version</code></span><a class="headerlink" title="Permalink to this term" href="#--version">¶</a></dt><dd><p><a href="bootctl.html"><span class="citerefentry"><span class="refentrytitle">bootctl</span>(1)</span></a>, <a href="busctl.html"><span class="citerefentry"><span class="refentrytitle">busctl</span>(1)</span></a>, <a href="coredumpctl.html"><span class="citerefentry"><span class="refentrytitle">coredumpctl</span>(1)</span></a>, <a href="hostnamectl.html"><span class="citerefentry"><span class="refentrytitle">hostnamectl</span>(1)</span></a>, <a href="journalctl.html"><span class="citerefentry"><span class="refentrytitle">journalctl</span>(1)</span></a>, <a href="localectl.html"><span class="citerefentry"><span class="refentrytitle">localectl</span>(1)</span></a>, <a href="loginctl.html"><span class="citerefentry"><span class="refentrytitle">loginctl</span>(1)</span></a>, <a href="machinectl.html"><span class="citerefentry"><span class="refentrytitle">machinectl</span>(1)</span></a>, <a href="systemctl.html"><span class="citerefentry"><span class="refentrytitle">systemctl</span>(1)</span></a>, <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>, <a href="systemd-activate.html"><span class="citerefentry"><span class="refentrytitle">systemd-activate</span>(8)</span></a>, <a href="systemd-analyze.html"><span class="citerefentry"><span class="refentrytitle">systemd-analyze</span>(1)</span></a>, <a href="systemd-bus-proxyd.html"><span class="citerefentry"><span class="refentrytitle">systemd-bus-proxyd</span>(8)</span></a>, <a href="systemd-cat.html"><span class="citerefentry"><span class="refentrytitle">systemd-cat</span>(1)</span></a>, <a href="systemd-cgls.html"><span class="citerefentry"><span class="refentrytitle">systemd-cgls</span>(1)</span></a>, <a href="systemd-cgtop.html"><span class="citerefentry"><span class="refentrytitle">systemd-cgtop</span>(1)</span></a>, <a href="systemd-delta.html"><span class="citerefentry"><span class="refentrytitle">systemd-delta</span>(1)</span></a>, <a href="systemd-detect-virt.html"><span class="citerefentry"><span class="refentrytitle">systemd-detect-virt</span>(1)</span></a>, <a href="systemd-inhibit.html"><span class="citerefentry"><span class="refentrytitle">systemd-inhibit</span>(1)</span></a>, <a href="systemd-journal-gatewayd.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-journal-gatewayd.service</span>(8)</span></a>, <a href="systemd-journal-remote.html"><span class="citerefentry"><span class="refentrytitle">systemd-journal-remote</span>(8)</span></a>, <a href="systemd-machine-id-setup.html"><span class="citerefentry"><span class="refentrytitle">systemd-machine-id-setup</span>(1)</span></a>, <a href="systemd-notify.html"><span class="citerefentry"><span class="refentrytitle">systemd-notify</span>(1)</span></a>, <a href="systemd-nspawn.html"><span class="citerefentry"><span class="refentrytitle">systemd-nspawn</span>(1)</span></a>, <a href="systemd-path.html"><span class="citerefentry"><span class="refentrytitle">systemd-path</span>(1)</span></a>, <a href="systemd-readahead-replay.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-readahead-replay.service</span>(8)</span></a>, <a href="systemd-run.html"><span class="citerefentry"><span class="refentrytitle">systemd-run</span>(1)</span></a>, <a href="systemd-socket-proxyd.html"><span class="citerefentry"><span class="refentrytitle">systemd-socket-proxyd</span>(8)</span></a>, <a href="systemd-suspend.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-suspend.service</span>(8)</span></a>, <a href="systemd-sysusers.html"><span class="citerefentry"><span class="refentrytitle">systemd-sysusers</span>(8)</span></a>, <a href="systemd-tmpfiles.html"><span class="citerefentry"><span class="refentrytitle">systemd-tmpfiles</span>(8)</span></a>, <a href="systemd-tty-ask-password-agent.html"><span class="citerefentry"><span class="refentrytitle">systemd-tty-ask-password-agent</span>(1)</span></a>, <a href="systemd-udevd.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-udevd.service</span>(8)</span></a>, <a href="timedatectl.html"><span class="citerefentry"><span class="refentrytitle">timedatectl</span>(1)</span></a>, <a href="udevadm.html"><span class="citerefentry"><span class="refentrytitle">udevadm</span>(8)</span></a></p></dd><dt id="--vm"><span class="term"><code class="option">--vm</code></span><a class="headerlink" title="Permalink to this term" href="#--vm">¶</a></dt><dd><p><a href="systemd-detect-virt.html"><span class="citerefentry"><span class="refentrytitle">systemd-detect-virt</span>(1)</span></a></p></dd><dt id="--wall"><span class="term"><code class="option">--wall</code></span><a class="headerlink" title="Permalink to this term" href="#--wall">¶</a></dt><dd><p><a href="systemd-tty-ask-password-agent.html"><span class="citerefentry"><span class="refentrytitle">systemd-tty-ask-password-agent</span>(1)</span></a></p></dd><dt id="--watch"><span class="term"><code class="option">--watch</code></span><a class="headerlink" title="Permalink to this term" href="#--watch">¶</a></dt><dd><p><a href="systemd-tty-ask-password-agent.html"><span class="citerefentry"><span class="refentrytitle">systemd-tty-ask-password-agent</span>(1)</span></a></p></dd><dt id="--what="><span class="term"><code class="option">--what=</code></span><a class="headerlink" title="Permalink to this term" href="#--what=">¶</a></dt><dd><p><a href="systemd-inhibit.html"><span class="citerefentry"><span class="refentrytitle">systemd-inhibit</span>(1)</span></a></p></dd><dt id="--who="><span class="term"><code class="option">--who=</code></span><a class="headerlink" title="Permalink to this term" href="#--who=">¶</a></dt><dd><p><a href="systemd-inhibit.html"><span class="citerefentry"><span class="refentrytitle">systemd-inhibit</span>(1)</span></a></p></dd><dt id="--why="><span class="term"><code class="option">--why=</code></span><a class="headerlink" title="Permalink to this term" href="#--why=">¶</a></dt><dd><p><a href="systemd-inhibit.html"><span class="citerefentry"><span class="refentrytitle">systemd-inhibit</span>(1)</span></a></p></dd><dt id="--wtmp-only"><span class="term"><code class="option">--wtmp-only</code></span><a class="headerlink" title="Permalink to this term" href="#--wtmp-only">¶</a></dt><dd><p><a href="halt.html"><span class="citerefentry"><span class="refentrytitle">halt</span>(8)</span></a></p></dd><dt id="-1"><span class="term"><code class="constant">-1</code></span><a class="headerlink" title="Permalink to this term" href="#-1">¶</a></dt><dd><p><a href="coredumpctl.html"><span class="citerefentry"><span class="refentrytitle">coredumpctl</span>(1)</span></a></p></dd><dt id="-A"><span class="term"><code class="option">-A</code></span><a class="headerlink" title="Permalink to this term" href="#-A">¶</a></dt><dd><p><a href="udevadm.html"><span class="citerefentry"><span class="refentrytitle">udevadm</span>(8)</span></a></p></dd><dt id="-C"><span class="term"><code class="option">-C</code></span><a class="headerlink" title="Permalink to this term" href="#-C">¶</a></dt><dd><p><a href="systemd-bootchart.html"><span class="citerefentry"><span class="refentrytitle">systemd-bootchart</span>(1)</span></a></p></dd><dt id="-D"><span class="term"><code class="option">-D</code></span><a class="headerlink" title="Permalink to this term" href="#-D">¶</a></dt><dd><p><a href="journalctl.html"><span class="citerefentry"><span class="refentrytitle">journalctl</span>(1)</span></a>, <a href="systemd-nspawn.html"><span class="citerefentry"><span class="refentrytitle">systemd-nspawn</span>(1)</span></a></p></dd><dt id="-E"><span class="term"><code class="option">-E</code></span><a class="headerlink" title="Permalink to this term" href="#-E">¶</a></dt><dd><p><a href="systemd-activate.html"><span class="citerefentry"><span class="refentrytitle">systemd-activate</span>(8)</span></a>, <a href="udevadm.html"><span class="citerefentry"><span class="refentrytitle">udevadm</span>(8)</span></a></p></dd><dt id="-F"><span class="term"><code class="option">-F</code></span><a class="headerlink" title="Permalink to this term" href="#-F">¶</a></dt><dd><p><a href="coredumpctl.html"><span class="citerefentry"><span class="refentrytitle">coredumpctl</span>(1)</span></a>, <a href="journalctl.html"><span class="citerefentry"><span class="refentrytitle">journalctl</span>(1)</span></a>, <a href="systemd-bootchart.html"><span class="citerefentry"><span class="refentrytitle">systemd-bootchart</span>(1)</span></a></p></dd><dt id="-H"><span class="term"><code class="option">-H</code></span><a class="headerlink" title="Permalink to this term" href="#-H">¶</a></dt><dd><p><a href="busctl.html"><span class="citerefentry"><span class="refentrytitle">busctl</span>(1)</span></a>, <a href="hostnamectl.html"><span class="citerefentry"><span class="refentrytitle">hostnamectl</span>(1)</span></a>, <a href="localectl.html"><span class="citerefentry"><span class="refentrytitle">localectl</span>(1)</span></a>, <a href="loginctl.html"><span class="citerefentry"><span class="refentrytitle">loginctl</span>(1)</span></a>, <a href="machinectl.html"><span class="citerefentry"><span class="refentrytitle">machinectl</span>(1)</span></a>, <a href="shutdown.html"><span class="citerefentry"><span class="refentrytitle">shutdown</span>(8)</span></a>, <a href="systemctl.html"><span class="citerefentry"><span class="refentrytitle">systemctl</span>(1)</span></a>, <a href="systemd-analyze.html"><span class="citerefentry"><span class="refentrytitle">systemd-analyze</span>(1)</span></a>, <a href="systemd-run.html"><span class="citerefentry"><span class="refentrytitle">systemd-run</span>(1)</span></a>, <a href="timedatectl.html"><span class="citerefentry"><span class="refentrytitle">timedatectl</span>(1)</span></a></p></dd><dt id="-L"><span class="term"><code class="option">-L</code></span><a class="headerlink" title="Permalink to this term" href="#-L">¶</a></dt><dd><p><a href="systemd-nspawn.html"><span class="citerefentry"><span class="refentrytitle">systemd-nspawn</span>(1)</span></a></p></dd><dt id="-M"><span class="term"><code class="option">-M</code></span><a class="headerlink" title="Permalink to this term" href="#-M">¶</a></dt><dd><p><a href="busctl.html"><span class="citerefentry"><span class="refentrytitle">busctl</span>(1)</span></a>, <a href="journalctl.html"><span class="citerefentry"><span class="refentrytitle">journalctl</span>(1)</span></a>, <a href="loginctl.html"><span class="citerefentry"><span class="refentrytitle">loginctl</span>(1)</span></a>, <a href="machinectl.html"><span class="citerefentry"><span class="refentrytitle">machinectl</span>(1)</span></a>, <a href="systemctl.html"><span class="citerefentry"><span class="refentrytitle">systemctl</span>(1)</span></a>, <a href="systemd-analyze.html"><span class="citerefentry"><span class="refentrytitle">systemd-analyze</span>(1)</span></a>, <a href="systemd-cgls.html"><span class="citerefentry"><span class="refentrytitle">systemd-cgls</span>(1)</span></a>, <a href="systemd-nspawn.html"><span class="citerefentry"><span class="refentrytitle">systemd-nspawn</span>(1)</span></a>, <a href="systemd-run.html"><span class="citerefentry"><span class="refentrytitle">systemd-run</span>(1)</span></a>, <a href="timedatectl.html"><span class="citerefentry"><span class="refentrytitle">timedatectl</span>(1)</span></a></p></dd><dt id="-N"><span class="term"><code class="option">-N</code></span><a class="headerlink" title="Permalink to this term" href="#-N">¶</a></dt><dd><p><a href="udevadm.html"><span class="citerefentry"><span class="refentrytitle">udevadm</span>(8)</span></a></p></dd><dt id="-P"><span class="term"><code class="option">-P</code></span><a class="headerlink" title="Permalink to this term" href="#-P">¶</a></dt><dd><p><a href="hostnamectl.html"><span class="citerefentry"><span class="refentrytitle">hostnamectl</span>(1)</span></a>, <a href="localectl.html"><span class="citerefentry"><span class="refentrytitle">localectl</span>(1)</span></a>, <a href="shutdown.html"><span class="citerefentry"><span class="refentrytitle">shutdown</span>(8)</span></a>, <a href="udevadm.html"><span class="citerefentry"><span class="refentrytitle">udevadm</span>(8)</span></a></p></dd><dt id="-R"><span class="term"><code class="option">-R</code></span><a class="headerlink" title="Permalink to this term" href="#-R">¶</a></dt><dd><p><a href="udevadm.html"><span class="citerefentry"><span class="refentrytitle">udevadm</span>(8)</span></a></p></dd><dt id="-S"><span class="term"><code class="option">-S</code></span><a class="headerlink" title="Permalink to this term" href="#-S">¶</a></dt><dd><p><a href="udevadm.html"><span class="citerefentry"><span class="refentrytitle">udevadm</span>(8)</span></a></p></dd><dt id="-Z"><span class="term"><code class="option">-Z</code></span><a class="headerlink" title="Permalink to this term" href="#-Z">¶</a></dt><dd><p><a href="systemd-nspawn.html"><span class="citerefentry"><span class="refentrytitle">systemd-nspawn</span>(1)</span></a></p></dd><dt id="-a"><span class="term"><code class="option">-a</code></span><a class="headerlink" title="Permalink to this term" href="#-a">¶</a></dt><dd><p><a href="journalctl.html"><span class="citerefentry"><span class="refentrytitle">journalctl</span>(1)</span></a>, <a href="loginctl.html"><span class="citerefentry"><span class="refentrytitle">loginctl</span>(1)</span></a>, <a href="machinectl.html"><span class="citerefentry"><span class="refentrytitle">machinectl</span>(1)</span></a>, <a href="systemctl.html"><span class="citerefentry"><span class="refentrytitle">systemctl</span>(1)</span></a>, <a href="systemd-activate.html"><span class="citerefentry"><span class="refentrytitle">systemd-activate</span>(8)</span></a>, <a href="udevadm.html"><span class="citerefentry"><span class="refentrytitle">udevadm</span>(8)</span></a></p></dd><dt id="-b"><span class="term"><code class="option">-b</code></span><a class="headerlink" title="Permalink to this term" href="#-b">¶</a></dt><dd><p><a href="journalctl.html"><span class="citerefentry"><span class="refentrytitle">journalctl</span>(1)</span></a>, <a href="systemd-cgtop.html"><span class="citerefentry"><span class="refentrytitle">systemd-cgtop</span>(1)</span></a>, <a href="systemd-nspawn.html"><span class="citerefentry"><span class="refentrytitle">systemd-nspawn</span>(1)</span></a>, <a href="udevadm.html"><span class="citerefentry"><span class="refentrytitle">udevadm</span>(8)</span></a></p></dd><dt id="-c"><span class="term"><code class="option">-c</code></span><a class="headerlink" title="Permalink to this term" href="#-c">¶</a></dt><dd><p><a href="journalctl.html"><span class="citerefentry"><span class="refentrytitle">journalctl</span>(1)</span></a>, <a href="shutdown.html"><span class="citerefentry"><span class="refentrytitle">shutdown</span>(8)</span></a>, <a href="systemd-cgtop.html"><span class="citerefentry"><span class="refentrytitle">systemd-cgtop</span>(1)</span></a>, <a href="systemd-detect-virt.html"><span class="citerefentry"><span class="refentrytitle">systemd-detect-virt</span>(1)</span></a>, <a href="udevadm.html"><span class="citerefentry"><span class="refentrytitle">udevadm</span>(8)</span></a></p></dd><dt id="-d"><span class="term"><code class="option">-d</code></span><a class="headerlink" title="Permalink to this term" href="#-d">¶</a></dt><dd><p><a href="halt.html"><span class="citerefentry"><span class="refentrytitle">halt</span>(8)</span></a>, <a href="systemd-cgtop.html"><span class="citerefentry"><span class="refentrytitle">systemd-cgtop</span>(1)</span></a>, <a href="udevadm.html"><span class="citerefentry"><span class="refentrytitle">udevadm</span>(8)</span></a></p></dd><dt id="-e"><span class="term"><code class="option">-e</code></span><a class="headerlink" title="Permalink to this term" href="#-e">¶</a></dt><dd><p><a href="journalctl.html"><span class="citerefentry"><span class="refentrytitle">journalctl</span>(1)</span></a>, <a href="systemd-bootchart.html"><span class="citerefentry"><span class="refentrytitle">systemd-bootchart</span>(1)</span></a>, <a href="udevadm.html"><span class="citerefentry"><span class="refentrytitle">udevadm</span>(8)</span></a></p></dd><dt id="-f"><span class="term"><code class="option">-f</code></span><a class="headerlink" title="Permalink to this term" href="#-f">¶</a></dt><dd><p><a href="halt.html"><span class="citerefentry"><span class="refentrytitle">halt</span>(8)</span></a>, <a href="journalctl.html"><span class="citerefentry"><span class="refentrytitle">journalctl</span>(1)</span></a>, <a href="systemctl.html"><span class="citerefentry"><span class="refentrytitle">systemctl</span>(1)</span></a>, <a href="systemd-bootchart.html"><span class="citerefentry"><span class="refentrytitle">systemd-bootchart</span>(1)</span></a></p></dd><dt id="-g"><span class="term"><code class="option">-g</code></span><a class="headerlink" title="Permalink to this term" href="#-g">¶</a></dt><dd><p><a href="systemd-bootchart.html"><span class="citerefentry"><span class="refentrytitle">systemd-bootchart</span>(1)</span></a>, <a href="udevadm.html"><span class="citerefentry"><span class="refentrytitle">udevadm</span>(8)</span></a></p></dd><dt id="-h"><span class="term"><code class="option">-h</code></span><a class="headerlink" title="Permalink to this term" href="#-h">¶</a></dt><dd><p><a href="bootctl.html"><span class="citerefentry"><span class="refentrytitle">bootctl</span>(1)</span></a>, <a href="busctl.html"><span class="citerefentry"><span class="refentrytitle">busctl</span>(1)</span></a>, <a href="coredumpctl.html"><span class="citerefentry"><span class="refentrytitle">coredumpctl</span>(1)</span></a>, <a href="hostnamectl.html"><span class="citerefentry"><span class="refentrytitle">hostnamectl</span>(1)</span></a>, <a href="journalctl.html"><span class="citerefentry"><span class="refentrytitle">journalctl</span>(1)</span></a>, <a href="localectl.html"><span class="citerefentry"><span class="refentrytitle">localectl</span>(1)</span></a>, <a href="loginctl.html"><span class="citerefentry"><span class="refentrytitle">loginctl</span>(1)</span></a>, <a href="machinectl.html"><span class="citerefentry"><span class="refentrytitle">machinectl</span>(1)</span></a>, <a href="shutdown.html"><span class="citerefentry"><span class="refentrytitle">shutdown</span>(8)</span></a>, <a href="systemctl.html"><span class="citerefentry"><span class="refentrytitle">systemctl</span>(1)</span></a>, <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>, <a href="systemd-activate.html"><span class="citerefentry"><span class="refentrytitle">systemd-activate</span>(8)</span></a>, <a href="systemd-analyze.html"><span class="citerefentry"><span class="refentrytitle">systemd-analyze</span>(1)</span></a>, <a href="systemd-ask-password.html"><span class="citerefentry"><span class="refentrytitle">systemd-ask-password</span>(1)</span></a>, <a href="systemd-bootchart.html"><span class="citerefentry"><span class="refentrytitle">systemd-bootchart</span>(1)</span></a>, <a href="systemd-bus-proxyd.html"><span class="citerefentry"><span class="refentrytitle">systemd-bus-proxyd</span>(8)</span></a>, <a href="systemd-cat.html"><span class="citerefentry"><span class="refentrytitle">systemd-cat</span>(1)</span></a>, <a href="systemd-cgls.html"><span class="citerefentry"><span class="refentrytitle">systemd-cgls</span>(1)</span></a>, <a href="systemd-cgtop.html"><span class="citerefentry"><span class="refentrytitle">systemd-cgtop</span>(1)</span></a>, <a href="systemd-delta.html"><span class="citerefentry"><span class="refentrytitle">systemd-delta</span>(1)</span></a>, <a href="systemd-detect-virt.html"><span class="citerefentry"><span class="refentrytitle">systemd-detect-virt</span>(1)</span></a>, <a href="systemd-inhibit.html"><span class="citerefentry"><span class="refentrytitle">systemd-inhibit</span>(1)</span></a>, <a href="systemd-journal-gatewayd.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-journal-gatewayd.service</span>(8)</span></a>, <a href="systemd-journal-remote.html"><span class="citerefentry"><span class="refentrytitle">systemd-journal-remote</span>(8)</span></a>, <a href="systemd-machine-id-setup.html"><span class="citerefentry"><span class="refentrytitle">systemd-machine-id-setup</span>(1)</span></a>, <a href="systemd-notify.html"><span class="citerefentry"><span class="refentrytitle">systemd-notify</span>(1)</span></a>, <a href="systemd-nspawn.html"><span class="citerefentry"><span class="refentrytitle">systemd-nspawn</span>(1)</span></a>, <a href="systemd-path.html"><span class="citerefentry"><span class="refentrytitle">systemd-path</span>(1)</span></a>, <a href="systemd-readahead-replay.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-readahead-replay.service</span>(8)</span></a>, <a href="systemd-run.html"><span class="citerefentry"><span class="refentrytitle">systemd-run</span>(1)</span></a>, <a href="systemd-socket-proxyd.html"><span class="citerefentry"><span class="refentrytitle">systemd-socket-proxyd</span>(8)</span></a>, <a href="systemd-suspend.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-suspend.service</span>(8)</span></a>, <a href="systemd-sysusers.html"><span class="citerefentry"><span class="refentrytitle">systemd-sysusers</span>(8)</span></a>, <a href="systemd-tmpfiles.html"><span class="citerefentry"><span class="refentrytitle">systemd-tmpfiles</span>(8)</span></a>, <a href="systemd-tty-ask-password-agent.html"><span class="citerefentry"><span class="refentrytitle">systemd-tty-ask-password-agent</span>(1)</span></a>, <a href="timedatectl.html"><span class="citerefentry"><span class="refentrytitle">timedatectl</span>(1)</span></a>, <a href="udevadm.html"><span class="citerefentry"><span class="refentrytitle">udevadm</span>(8)</span></a></p></dd><dt id="-i"><span class="term"><code class="option">-i</code></span><a class="headerlink" title="Permalink to this term" href="#-i">¶</a></dt><dd><p><a href="systemctl.html"><span class="citerefentry"><span class="refentrytitle">systemctl</span>(1)</span></a>, <a href="systemd-bootchart.html"><span class="citerefentry"><span class="refentrytitle">systemd-bootchart</span>(1)</span></a>, <a href="systemd-cgtop.html"><span class="citerefentry"><span class="refentrytitle">systemd-cgtop</span>(1)</span></a>, <a href="systemd-networkd-wait-online.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-networkd-wait-online.service</span>(8)</span></a>, <a href="systemd-nspawn.html"><span class="citerefentry"><span class="refentrytitle">systemd-nspawn</span>(1)</span></a></p></dd><dt id="-j"><span class="term"><code class="option">-j</code></span><a class="headerlink" title="Permalink to this term" href="#-j">¶</a></dt><dd><p><a href="systemd-nspawn.html"><span class="citerefentry"><span class="refentrytitle">systemd-nspawn</span>(1)</span></a></p></dd><dt id="-k"><span class="term"><code class="option">-k</code></span><a class="headerlink" title="Permalink to this term" href="#-k">¶</a></dt><dd><p><a href="journalctl.html"><span class="citerefentry"><span class="refentrytitle">journalctl</span>(1)</span></a>, <a href="shutdown.html"><span class="citerefentry"><span class="refentrytitle">shutdown</span>(8)</span></a>, <a href="systemd-cgls.html"><span class="citerefentry"><span class="refentrytitle">systemd-cgls</span>(1)</span></a>, <a href="udevadm.html"><span class="citerefentry"><span class="refentrytitle">udevadm</span>(8)</span></a></p></dd><dt id="-l"><span class="term"><code class="option">-l</code></span><a class="headerlink" title="Permalink to this term" href="#-l">¶</a></dt><dd><p><a href="journalctl.html"><span class="citerefentry"><span class="refentrytitle">journalctl</span>(1)</span></a>, <a href="loginctl.html"><span class="citerefentry"><span class="refentrytitle">loginctl</span>(1)</span></a>, <a href="machinectl.html"><span class="citerefentry"><span class="refentrytitle">machinectl</span>(1)</span></a>, <a href="systemctl.html"><span class="citerefentry"><span class="refentrytitle">systemctl</span>(1)</span></a>, <a href="systemd-activate.html"><span class="citerefentry"><span class="refentrytitle">systemd-activate</span>(8)</span></a>, <a href="systemd-cgls.html"><span class="citerefentry"><span class="refentrytitle">systemd-cgls</span>(1)</span></a>, <a href="udevadm.html"><span class="citerefentry"><span class="refentrytitle">udevadm</span>(8)</span></a></p></dd><dt id="-m"><span class="term"><code class="option">-m</code></span><a class="headerlink" title="Permalink to this term" href="#-m">¶</a></dt><dd><p><a href="journalctl.html"><span class="citerefentry"><span class="refentrytitle">journalctl</span>(1)</span></a>, <a href="systemd-cgtop.html"><span class="citerefentry"><span class="refentrytitle">systemd-cgtop</span>(1)</span></a>, <a href="udevadm.html"><span class="citerefentry"><span class="refentrytitle">udevadm</span>(8)</span></a></p></dd><dt id="-n"><span class="term"><code class="option">-n</code></span><a class="headerlink" title="Permalink to this term" href="#-n">¶</a></dt><dd><p><a href="journalctl.html"><span class="citerefentry"><span class="refentrytitle">journalctl</span>(1)</span></a>, <a href="systemctl.html"><span class="citerefentry"><span class="refentrytitle">systemctl</span>(1)</span></a>, <a href="systemd-bootchart.html"><span class="citerefentry"><span class="refentrytitle">systemd-bootchart</span>(1)</span></a>, <a href="systemd-cgtop.html"><span class="citerefentry"><span class="refentrytitle">systemd-cgtop</span>(1)</span></a>, <a href="udevadm.html"><span class="citerefentry"><span class="refentrytitle">udevadm</span>(8)</span></a></p></dd><dt id="-o"><span class="term"><code class="option">-o</code></span><a class="headerlink" title="Permalink to this term" href="#-o">¶</a></dt><dd><p><a href="coredumpctl.html"><span class="citerefentry"><span class="refentrytitle">coredumpctl</span>(1)</span></a>, <a href="journalctl.html"><span class="citerefentry"><span class="refentrytitle">journalctl</span>(1)</span></a>, <a href="systemctl.html"><span class="citerefentry"><span class="refentrytitle">systemctl</span>(1)</span></a>, <a href="systemd-bootchart.html"><span class="citerefentry"><span class="refentrytitle">systemd-bootchart</span>(1)</span></a></p></dd><dt id="-p"><span class="term"><code class="option">-p</code></span><a class="headerlink" title="Permalink to this term" href="#-p">¶</a></dt><dd><p><a href="halt.html"><span class="citerefentry"><span class="refentrytitle">halt</span>(8)</span></a>, <a href="journalctl.html"><span class="citerefentry"><span class="refentrytitle">journalctl</span>(1)</span></a>, <a href="loginctl.html"><span class="citerefentry"><span class="refentrytitle">loginctl</span>(1)</span></a>, <a href="machinectl.html"><span class="citerefentry"><span class="refentrytitle">machinectl</span>(1)</span></a>, <a href="systemctl.html"><span class="citerefentry"><span class="refentrytitle">systemctl</span>(1)</span></a>, <a href="systemd-bootchart.html"><span class="citerefentry"><span class="refentrytitle">systemd-bootchart</span>(1)</span></a>, <a href="systemd-cat.html"><span class="citerefentry"><span class="refentrytitle">systemd-cat</span>(1)</span></a>, <a href="systemd-cgtop.html"><span class="citerefentry"><span class="refentrytitle">systemd-cgtop</span>(1)</span></a>, <a href="systemd-run.html"><span class="citerefentry"><span class="refentrytitle">systemd-run</span>(1)</span></a>, <a href="udevadm.html"><span class="citerefentry"><span class="refentrytitle">udevadm</span>(8)</span></a></p></dd><dt id="-q"><span class="term"><code class="option">-q</code></span><a class="headerlink" title="Permalink to this term" href="#-q">¶</a></dt><dd><p><a href="journalctl.html"><span class="citerefentry"><span class="refentrytitle">journalctl</span>(1)</span></a>, <a href="systemctl.html"><span class="citerefentry"><span class="refentrytitle">systemctl</span>(1)</span></a>, <a href="systemd-detect-virt.html"><span class="citerefentry"><span class="refentrytitle">systemd-detect-virt</span>(1)</span></a>, <a href="systemd-nspawn.html"><span class="citerefentry"><span class="refentrytitle">systemd-nspawn</span>(1)</span></a>, <a href="udevadm.html"><span class="citerefentry"><span class="refentrytitle">udevadm</span>(8)</span></a></p></dd><dt id="-r"><span class="term"><code class="option">-r</code></span><a class="headerlink" title="Permalink to this term" href="#-r">¶</a></dt><dd><p><a href="journalctl.html"><span class="citerefentry"><span class="refentrytitle">journalctl</span>(1)</span></a>, <a href="shutdown.html"><span class="citerefentry"><span class="refentrytitle">shutdown</span>(8)</span></a>, <a href="systemctl.html"><span class="citerefentry"><span class="refentrytitle">systemctl</span>(1)</span></a>, <a href="systemd-bootchart.html"><span class="citerefentry"><span class="refentrytitle">systemd-bootchart</span>(1)</span></a>, <a href="udevadm.html"><span class="citerefentry"><span class="refentrytitle">udevadm</span>(8)</span></a></p></dd><dt id="-s"><span class="term"><code class="option">-s</code></span><a class="headerlink" title="Permalink to this term" href="#-s">¶</a></dt><dd><p><a href="loginctl.html"><span class="citerefentry"><span class="refentrytitle">loginctl</span>(1)</span></a>, <a href="machinectl.html"><span class="citerefentry"><span class="refentrytitle">machinectl</span>(1)</span></a>, <a href="systemctl.html"><span class="citerefentry"><span class="refentrytitle">systemctl</span>(1)</span></a>, <a href="udevadm.html"><span class="citerefentry"><span class="refentrytitle">udevadm</span>(8)</span></a></p></dd><dt id="-t"><span class="term"><code class="option">-t</code></span><a class="headerlink" title="Permalink to this term" href="#-t">¶</a></dt><dd><p><a href="systemctl.html"><span class="citerefentry"><span class="refentrytitle">systemctl</span>(1)</span></a>, <a href="systemd-cat.html"><span class="citerefentry"><span class="refentrytitle">systemd-cat</span>(1)</span></a>, <a href="systemd-cgtop.html"><span class="citerefentry"><span class="refentrytitle">systemd-cgtop</span>(1)</span></a>, <a href="systemd-delta.html"><span class="citerefentry"><span class="refentrytitle">systemd-delta</span>(1)</span></a>, <a href="udevadm.html"><span class="citerefentry"><span class="refentrytitle">udevadm</span>(8)</span></a></p></dd><dt id="-u"><span class="term"><code class="option">-u</code></span><a class="headerlink" title="Permalink to this term" href="#-u">¶</a></dt><dd><p><a href="journalctl.html"><span class="citerefentry"><span class="refentrytitle">journalctl</span>(1)</span></a>, <a href="systemd-nspawn.html"><span class="citerefentry"><span class="refentrytitle">systemd-nspawn</span>(1)</span></a>, <a href="udevadm.html"><span class="citerefentry"><span class="refentrytitle">udevadm</span>(8)</span></a></p></dd><dt id="-v"><span class="term"><code class="option">-v</code></span><a class="headerlink" title="Permalink to this term" href="#-v">¶</a></dt><dd><p><a href="systemd-detect-virt.html"><span class="citerefentry"><span class="refentrytitle">systemd-detect-virt</span>(1)</span></a>, <a href="udevadm.html"><span class="citerefentry"><span class="refentrytitle">udevadm</span>(8)</span></a></p></dd><dt id="-w"><span class="term"><code class="option">-w</code></span><a class="headerlink" title="Permalink to this term" href="#-w">¶</a></dt><dd><p><a href="halt.html"><span class="citerefentry"><span class="refentrytitle">halt</span>(8)</span></a></p></dd><dt id="-x"><span class="term"><code class="option">-x</code></span><a class="headerlink" title="Permalink to this term" href="#-x">¶</a></dt><dd><p><a href="journalctl.html"><span class="citerefentry"><span class="refentrytitle">journalctl</span>(1)</span></a>, <a href="systemd-bootchart.html"><span class="citerefentry"><span class="refentrytitle">systemd-bootchart</span>(1)</span></a>, <a href="udevadm.html"><span class="citerefentry"><span class="refentrytitle">udevadm</span>(8)</span></a></p></dd><dt id="-y"><span class="term"><code class="option">-y</code></span><a class="headerlink" title="Permalink to this term" href="#-y">¶</a></dt><dd><p><a href="systemd-bootchart.html"><span class="citerefentry"><span class="refentrytitle">systemd-bootchart</span>(1)</span></a>, <a href="udevadm.html"><span class="citerefentry"><span class="refentrytitle">udevadm</span>(8)</span></a></p></dd><dt id="auto"><span class="term"><code class="constant">auto</code></span><a class="headerlink" title="Permalink to this term" href="#auto">¶</a></dt><dd><p><a href="systemd.resource-control.html"><span class="citerefentry"><span class="refentrytitle">systemd.resource-control</span>(5)</span></a></p></dd><dt id="cat"><span class="term"><code class="option">cat</code></span><a class="headerlink" title="Permalink to this term" href="#cat">¶</a></dt><dd><p><a href="journalctl.html"><span class="citerefentry"><span class="refentrytitle">journalctl</span>(1)</span></a></p></dd><dt id="closed"><span class="term"><code class="option">closed</code></span><a class="headerlink" title="Permalink to this term" href="#closed">¶</a></dt><dd><p><a href="systemd.resource-control.html"><span class="citerefentry"><span class="refentrytitle">systemd.resource-control</span>(5)</span></a></p></dd><dt id="driver"><span class="term"><code class="option">driver</code></span><a class="headerlink" title="Permalink to this term" href="#driver">¶</a></dt><dd><p><a href="systemd.journal-fields.html"><span class="citerefentry"><span class="refentrytitle">systemd.journal-fields</span>(7)</span></a></p></dd><dt id="export"><span class="term"><code class="option">export</code></span><a class="headerlink" title="Permalink to this term" href="#export">¶</a></dt><dd><p><a href="journalctl.html"><span class="citerefentry"><span class="refentrytitle">journalctl</span>(1)</span></a></p></dd><dt id="hibernate"><span class="term"><code class="option">hibernate</code></span><a class="headerlink" title="Permalink to this term" href="#hibernate">¶</a></dt><dd><p><a href="systemd-suspend.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-suspend.service</span>(8)</span></a></p></dd><dt id="hybrid-sleep"><span class="term"><code class="option">hybrid-sleep</code></span><a class="headerlink" title="Permalink to this term" href="#hybrid-sleep">¶</a></dt><dd><p><a href="systemd-suspend.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-suspend.service</span>(8)</span></a></p></dd><dt id="journal"><span class="term"><code class="option">journal</code></span><a class="headerlink" title="Permalink to this term" href="#journal">¶</a></dt><dd><p><a href="systemd.journal-fields.html"><span class="citerefentry"><span class="refentrytitle">systemd.journal-fields</span>(7)</span></a></p></dd><dt id="json"><span class="term"><code class="option">json</code></span><a class="headerlink" title="Permalink to this term" href="#json">¶</a></dt><dd><p><a href="journalctl.html"><span class="citerefentry"><span class="refentrytitle">journalctl</span>(1)</span></a></p></dd><dt id="json-pretty"><span class="term"><code class="option">json-pretty</code></span><a class="headerlink" title="Permalink to this term" href="#json-pretty">¶</a></dt><dd><p><a href="journalctl.html"><span class="citerefentry"><span class="refentrytitle">journalctl</span>(1)</span></a></p></dd><dt id="json-sse"><span class="term"><code class="option">json-sse</code></span><a class="headerlink" title="Permalink to this term" href="#json-sse">¶</a></dt><dd><p><a href="journalctl.html"><span class="citerefentry"><span class="refentrytitle">journalctl</span>(1)</span></a></p></dd><dt id="kernel"><span class="term"><code class="option">kernel</code></span><a class="headerlink" title="Permalink to this term" href="#kernel">¶</a></dt><dd><p><a href="systemd.journal-fields.html"><span class="citerefentry"><span class="refentrytitle">systemd.journal-fields</span>(7)</span></a></p></dd><dt id="short"><span class="term"><code class="option">short</code></span><a class="headerlink" title="Permalink to this term" href="#short">¶</a></dt><dd><p><a href="journalctl.html"><span class="citerefentry"><span class="refentrytitle">journalctl</span>(1)</span></a></p></dd><dt id="short-iso"><span class="term"><code class="option">short-iso</code></span><a class="headerlink" title="Permalink to this term" href="#short-iso">¶</a></dt><dd><p><a href="journalctl.html"><span class="citerefentry"><span class="refentrytitle">journalctl</span>(1)</span></a></p></dd><dt id="short-monotonic"><span class="term"><code class="option">short-monotonic</code></span><a class="headerlink" title="Permalink to this term" href="#short-monotonic">¶</a></dt><dd><p><a href="journalctl.html"><span class="citerefentry"><span class="refentrytitle">journalctl</span>(1)</span></a></p></dd><dt id="short-precise"><span class="term"><code class="option">short-precise</code></span><a class="headerlink" title="Permalink to this term" href="#short-precise">¶</a></dt><dd><p><a href="journalctl.html"><span class="citerefentry"><span class="refentrytitle">journalctl</span>(1)</span></a></p></dd><dt id="stdout"><span class="term"><code class="option">stdout</code></span><a class="headerlink" title="Permalink to this term" href="#stdout">¶</a></dt><dd><p><a href="systemd.journal-fields.html"><span class="citerefentry"><span class="refentrytitle">systemd.journal-fields</span>(7)</span></a></p></dd><dt id="strict"><span class="term"><code class="option">strict</code></span><a class="headerlink" title="Permalink to this term" href="#strict">¶</a></dt><dd><p><a href="systemd.resource-control.html"><span class="citerefentry"><span class="refentrytitle">systemd.resource-control</span>(5)</span></a></p></dd><dt id="suspend"><span class="term"><code class="option">suspend</code></span><a class="headerlink" title="Permalink to this term" href="#suspend">¶</a></dt><dd><p><a href="systemd-suspend.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-suspend.service</span>(8)</span></a></p></dd><dt id="syslog"><span class="term"><code class="option">syslog</code></span><a class="headerlink" title="Permalink to this term" href="#syslog">¶</a></dt><dd><p><a href="systemd.journal-fields.html"><span class="citerefentry"><span class="refentrytitle">systemd.journal-fields</span>(7)</span></a></p></dd><dt id="verbose"><span class="term"><code class="option">verbose</code></span><a class="headerlink" title="Permalink to this term" href="#verbose">¶</a></dt><dd><p><a href="journalctl.html"><span class="citerefentry"><span class="refentrytitle">journalctl</span>(1)</span></a></p></dd></dl></div></div><div class="refsect1"><a name="idm214181001584"></a><h2 id="Constants">Constants<a class="headerlink" title="Permalink to this headline" href="#Constants">¶</a></h2><p>Various constant used and/or defined by systemd.</p><div class="variablelist"><a name="constants"></a><dl class="variablelist"><dt id="-0"><span class="term"><code class="constant">-0</code></span><a class="headerlink" title="Permalink to this term" href="#-0">¶</a></dt><dd><p><a href="journalctl.html"><span class="citerefentry"><span class="refentrytitle">journalctl</span>(1)</span></a></p></dd><dt id="-1"><span class="term"><code class="constant">-1</code></span><a class="headerlink" title="Permalink to this term" href="#-1">¶</a></dt><dd><p><a href="journalctl.html"><span class="citerefentry"><span class="refentrytitle">journalctl</span>(1)</span></a>, <a href="sd_journal_get_fd.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_get_fd</span>(3)</span></a>, <a href="sd_login_monitor_new.html"><span class="citerefentry"><span class="refentrytitle">sd_login_monitor_new</span>(3)</span></a>, <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a></p></dd><dt id="-ECHILD"><span class="term"><code class="constant">-ECHILD</code></span><a class="headerlink" title="Permalink to this term" href="#-ECHILD">¶</a></dt><dd><p><a href="sd_journal_open.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_open</span>(3)</span></a></p></dd><dt id="-ENODATA"><span class="term"><code class="constant">-ENODATA</code></span><a class="headerlink" title="Permalink to this term" href="#-ENODATA">¶</a></dt><dd><p><a href="sd_bus_negotiate_fds.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_negotiate_fds</span>(3)</span></a></p></dd><dt id="-ENXIO"><span class="term"><code class="constant">-ENXIO</code></span><a class="headerlink" title="Permalink to this term" href="#-ENXIO">¶</a></dt><dd><p><a href="sd_bus_error.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_error</span>(3)</span></a></p></dd><dt id="0"><span class="term"><code class="constant">0</code></span><a class="headerlink" title="Permalink to this term" href="#0">¶</a></dt><dd><p><a href="systemctl.html"><span class="citerefentry"><span class="refentrytitle">systemctl</span>(1)</span></a></p></dd><dt id="1"><span class="term"><code class="constant">1</code></span><a class="headerlink" title="Permalink to this term" href="#1">¶</a></dt><dd><p><a href="journalctl.html"><span class="citerefentry"><span class="refentrytitle">journalctl</span>(1)</span></a></p></dd><dt id="2"><span class="term"><code class="constant">2</code></span><a class="headerlink" title="Permalink to this term" href="#2">¶</a></dt><dd><p><a href="journalctl.html"><span class="citerefentry"><span class="refentrytitle">journalctl</span>(1)</span></a></p></dd><dt id="AF_INET"><span class="term"><code class="constant">AF_INET</code></span><a class="headerlink" title="Permalink to this term" href="#AF_INET">¶</a></dt><dd><p><a href="sd_is_fifo.html"><span class="citerefentry"><span class="refentrytitle">sd_is_fifo</span>(3)</span></a>, <a href="systemd.exec.html"><span class="citerefentry"><span class="refentrytitle">systemd.exec</span>(5)</span></a></p></dd><dt id="AF_INET6"><span class="term"><code class="constant">AF_INET6</code></span><a class="headerlink" title="Permalink to this term" href="#AF_INET6">¶</a></dt><dd><p><a href="sd_is_fifo.html"><span class="citerefentry"><span class="refentrytitle">sd_is_fifo</span>(3)</span></a>, <a href="systemd.exec.html"><span class="citerefentry"><span class="refentrytitle">systemd.exec</span>(5)</span></a></p></dd><dt id="AF_NETLINK"><span class="term"><code class="constant">AF_NETLINK</code></span><a class="headerlink" title="Permalink to this term" href="#AF_NETLINK">¶</a></dt><dd><p><a href="systemd.socket.html"><span class="citerefentry"><span class="refentrytitle">systemd.socket</span>(5)</span></a></p></dd><dt id="AF_UNIX"><span class="term"><code class="constant">AF_UNIX</code></span><a class="headerlink" title="Permalink to this term" href="#AF_UNIX">¶</a></dt><dd><p><a href="daemon.html"><span class="citerefentry"><span class="refentrytitle">daemon</span>(7)</span></a>, <a href="pam_systemd.html"><span class="citerefentry"><span class="refentrytitle">pam_systemd</span>(8)</span></a>, <a href="sd_is_fifo.html"><span class="citerefentry"><span class="refentrytitle">sd_is_fifo</span>(3)</span></a>, <a href="sd_notify.html"><span class="citerefentry"><span class="refentrytitle">sd_notify</span>(3)</span></a>, <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>, <a href="systemd-journald.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-journald.service</span>(8)</span></a>, <a href="systemd.exec.html"><span class="citerefentry"><span class="refentrytitle">systemd.exec</span>(5)</span></a>, <a href="systemd.socket.html"><span class="citerefentry"><span class="refentrytitle">systemd.socket</span>(5)</span></a></p></dd><dt id="AF_UNSPEC"><span class="term"><code class="constant">AF_UNSPEC</code></span><a class="headerlink" title="Permalink to this term" href="#AF_UNSPEC">¶</a></dt><dd><p><a href="sd_is_fifo.html"><span class="citerefentry"><span class="refentrytitle">sd_is_fifo</span>(3)</span></a></p></dd><dt id="CAP_DAC_OVERRIDE"><span class="term"><code class="constant">CAP_DAC_OVERRIDE</code></span><a class="headerlink" title="Permalink to this term" href="#CAP_DAC_OVERRIDE">¶</a></dt><dd><p><a href="systemd.exec.html"><span class="citerefentry"><span class="refentrytitle">systemd.exec</span>(5)</span></a></p></dd><dt id="CAP_MKNOD"><span class="term"><code class="constant">CAP_MKNOD</code></span><a class="headerlink" title="Permalink to this term" href="#CAP_MKNOD">¶</a></dt><dd><p><a href="systemd.exec.html"><span class="citerefentry"><span class="refentrytitle">systemd.exec</span>(5)</span></a></p></dd><dt id="CAP_SYS_ADMIN"><span class="term"><code class="constant">CAP_SYS_ADMIN</code></span><a class="headerlink" title="Permalink to this term" href="#CAP_SYS_ADMIN">¶</a></dt><dd><p><a href="systemd.exec.html"><span class="citerefentry"><span class="refentrytitle">systemd.exec</span>(5)</span></a></p></dd><dt id="CAP_SYS_PTRACE"><span class="term"><code class="constant">CAP_SYS_PTRACE</code></span><a class="headerlink" title="Permalink to this term" href="#CAP_SYS_PTRACE">¶</a></dt><dd><p><a href="systemd.exec.html"><span class="citerefentry"><span class="refentrytitle">systemd.exec</span>(5)</span></a></p></dd><dt id="CLOCK_BOOTTIME_ALARM"><span class="term"><code class="constant">CLOCK_BOOTTIME_ALARM</code></span><a class="headerlink" title="Permalink to this term" href="#CLOCK_BOOTTIME_ALARM">¶</a></dt><dd><p><a href="sd_event_add_time.html"><span class="citerefentry"><span class="refentrytitle">sd_event_add_time</span>(3)</span></a></p></dd><dt id="CLOCK_MONOTONIC"><span class="term"><code class="constant">CLOCK_MONOTONIC</code></span><a class="headerlink" title="Permalink to this term" href="#CLOCK_MONOTONIC">¶</a></dt><dd><p><a href="bootchart.conf.html"><span class="citerefentry"><span class="refentrytitle">bootchart.conf</span>(5)</span></a>, <a href="sd_event_add_time.html"><span class="citerefentry"><span class="refentrytitle">sd_event_add_time</span>(3)</span></a>, <a href="sd_journal_get_cutoff_realtime_usec.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_get_cutoff_realtime_usec</span>(3)</span></a>, <a href="sd_journal_get_fd.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_get_fd</span>(3)</span></a>, <a href="sd_journal_get_realtime_usec.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_get_realtime_usec</span>(3)</span></a>, <a href="sd_journal_seek_head.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_seek_head</span>(3)</span></a>, <a href="sd_login_monitor_new.html"><span class="citerefentry"><span class="refentrytitle">sd_login_monitor_new</span>(3)</span></a>, <a href="systemd.journal-fields.html"><span class="citerefentry"><span class="refentrytitle">systemd.journal-fields</span>(7)</span></a></p></dd><dt id="CLOCK_REALTIME"><span class="term"><code class="constant">CLOCK_REALTIME</code></span><a class="headerlink" title="Permalink to this term" href="#CLOCK_REALTIME">¶</a></dt><dd><p><a href="sd_event_add_time.html"><span class="citerefentry"><span class="refentrytitle">sd_event_add_time</span>(3)</span></a>, <a href="sd_journal_get_cutoff_realtime_usec.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_get_cutoff_realtime_usec</span>(3)</span></a>, <a href="sd_journal_get_realtime_usec.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_get_realtime_usec</span>(3)</span></a>, <a href="sd_journal_seek_head.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_seek_head</span>(3)</span></a>, <a href="systemd.journal-fields.html"><span class="citerefentry"><span class="refentrytitle">systemd.journal-fields</span>(7)</span></a></p></dd><dt id="EACCES"><span class="term"><code class="constant">EACCES</code></span><a class="headerlink" title="Permalink to this term" href="#EACCES">¶</a></dt><dd><p><a href="systemd.exec.html"><span class="citerefentry"><span class="refentrytitle">systemd.exec</span>(5)</span></a></p></dd><dt id="EPERM"><span class="term"><code class="constant">EPERM</code></span><a class="headerlink" title="Permalink to this term" href="#EPERM">¶</a></dt><dd><p><a href="systemd.exec.html"><span class="citerefentry"><span class="refentrytitle">systemd.exec</span>(5)</span></a></p></dd><dt id="EUCLEAN"><span class="term"><code class="constant">EUCLEAN</code></span><a class="headerlink" title="Permalink to this term" href="#EUCLEAN">¶</a></dt><dd><p><a href="systemd.exec.html"><span class="citerefentry"><span class="refentrytitle">systemd.exec</span>(5)</span></a></p></dd><dt id="LOG_ALERT"><span class="term"><code class="constant">LOG_ALERT</code></span><a class="headerlink" title="Permalink to this term" href="#LOG_ALERT">¶</a></dt><dd><p><a href="sd_journal_print.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_print</span>(3)</span></a>, <a href="sd_journal_stream_fd.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_stream_fd</span>(3)</span></a></p></dd><dt id="LOG_CRIT"><span class="term"><code class="constant">LOG_CRIT</code></span><a class="headerlink" title="Permalink to this term" href="#LOG_CRIT">¶</a></dt><dd><p><a href="sd_journal_print.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_print</span>(3)</span></a>, <a href="sd_journal_stream_fd.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_stream_fd</span>(3)</span></a></p></dd><dt id="LOG_DEBUG"><span class="term"><code class="constant">LOG_DEBUG</code></span><a class="headerlink" title="Permalink to this term" href="#LOG_DEBUG">¶</a></dt><dd><p><a href="sd_journal_print.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_print</span>(3)</span></a>, <a href="sd_journal_stream_fd.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_stream_fd</span>(3)</span></a></p></dd><dt id="LOG_EMERG"><span class="term"><code class="constant">LOG_EMERG</code></span><a class="headerlink" title="Permalink to this term" href="#LOG_EMERG">¶</a></dt><dd><p><a href="sd_journal_print.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_print</span>(3)</span></a>, <a href="sd_journal_stream_fd.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_stream_fd</span>(3)</span></a></p></dd><dt id="LOG_ERR"><span class="term"><code class="constant">LOG_ERR</code></span><a class="headerlink" title="Permalink to this term" href="#LOG_ERR">¶</a></dt><dd><p><a href="sd_journal_print.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_print</span>(3)</span></a>, <a href="sd_journal_stream_fd.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_stream_fd</span>(3)</span></a></p></dd><dt id="LOG_INFO"><span class="term"><code class="constant">LOG_INFO</code></span><a class="headerlink" title="Permalink to this term" href="#LOG_INFO">¶</a></dt><dd><p><a href="sd_journal_print.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_print</span>(3)</span></a>, <a href="sd_journal_stream_fd.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_stream_fd</span>(3)</span></a></p></dd><dt id="LOG_NOTICE"><span class="term"><code class="constant">LOG_NOTICE</code></span><a class="headerlink" title="Permalink to this term" href="#LOG_NOTICE">¶</a></dt><dd><p><a href="sd_journal_print.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_print</span>(3)</span></a>, <a href="sd_journal_stream_fd.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_stream_fd</span>(3)</span></a></p></dd><dt id="LOG_WARNING"><span class="term"><code class="constant">LOG_WARNING</code></span><a class="headerlink" title="Permalink to this term" href="#LOG_WARNING">¶</a></dt><dd><p><a href="sd_journal_print.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_print</span>(3)</span></a>, <a href="sd_journal_stream_fd.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_stream_fd</span>(3)</span></a></p></dd><dt id="NUL"><span class="term"><code class="constant">NUL</code></span><a class="headerlink" title="Permalink to this term" href="#NUL">¶</a></dt><dd><p><a href="sd_bus_message_append.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_message_append</span>(3)</span></a>, <a href="sd_bus_message_append_basic.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_message_append_basic</span>(3)</span></a>, <a href="sd_bus_message_append_string_memfd.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_message_append_string_memfd</span>(3)</span></a>, <a href="sd_bus_message_append_strv.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_message_append_strv</span>(3)</span></a>, <a href="sd_bus_path_encode.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_path_encode</span>(3)</span></a>, <a href="sd_id128_to_string.html"><span class="citerefentry"><span class="refentrytitle">sd_id128_to_string</span>(3)</span></a>, <a href="systemd.socket.html"><span class="citerefentry"><span class="refentrytitle">systemd.socket</span>(5)</span></a></p></dd><dt id="NULL"><span class="term"><code class="constant">NULL</code></span><a class="headerlink" title="Permalink to this term" href="#NULL">¶</a></dt><dd><p><a href="sd-login.html"><span class="citerefentry"><span class="refentrytitle">sd-login</span>(3)</span></a>, <a href="sd_bus_creds_get_pid.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_creds_get_pid</span>(3)</span></a>, <a href="sd_bus_creds_new_from_pid.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_creds_new_from_pid</span>(3)</span></a>, <a href="sd_bus_error.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_error</span>(3)</span></a>, <a href="sd_bus_message_append_array.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_message_append_array</span>(3)</span></a>, <a href="sd_bus_message_append_basic.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_message_append_basic</span>(3)</span></a>, <a href="sd_bus_message_append_strv.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_message_append_strv</span>(3)</span></a>, <a href="sd_bus_new.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_new</span>(3)</span></a>, <a href="sd_bus_open_user.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_open_user</span>(3)</span></a>, <a href="sd_bus_path_encode.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_path_encode</span>(3)</span></a>, <a href="sd_get_seats.html"><span class="citerefentry"><span class="refentrytitle">sd_get_seats</span>(3)</span></a>, <a href="sd_is_fifo.html"><span class="citerefentry"><span class="refentrytitle">sd_is_fifo</span>(3)</span></a>, <a href="sd_journal_get_cutoff_realtime_usec.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_get_cutoff_realtime_usec</span>(3)</span></a>, <a href="sd_journal_get_realtime_usec.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_get_realtime_usec</span>(3)</span></a>, <a href="sd_journal_open.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_open</span>(3)</span></a>, <a href="sd_journal_print.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_print</span>(3)</span></a>, <a href="sd_login_monitor_new.html"><span class="citerefentry"><span class="refentrytitle">sd_login_monitor_new</span>(3)</span></a>, <a href="sd_seat_get_active.html"><span class="citerefentry"><span class="refentrytitle">sd_seat_get_active</span>(3)</span></a>, <a href="sd_session_is_active.html"><span class="citerefentry"><span class="refentrytitle">sd_session_is_active</span>(3)</span></a>, <a href="sd_uid_get_state.html"><span class="citerefentry"><span class="refentrytitle">sd_uid_get_state</span>(3)</span></a></p></dd><dt id="O_NONBLOCK"><span class="term"><code class="constant">O_NONBLOCK</code></span><a class="headerlink" title="Permalink to this term" href="#O_NONBLOCK">¶</a></dt><dd><p><a href="systemd.service.html"><span class="citerefentry"><span class="refentrytitle">systemd.service</span>(5)</span></a></p></dd><dt id="POLLIN"><span class="term"><code class="constant">POLLIN</code></span><a class="headerlink" title="Permalink to this term" href="#POLLIN">¶</a></dt><dd><p><a href="sd_journal_get_fd.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_get_fd</span>(3)</span></a>, <a href="sd_login_monitor_new.html"><span class="citerefentry"><span class="refentrytitle">sd_login_monitor_new</span>(3)</span></a></p></dd><dt id="POLLOUT"><span class="term"><code class="constant">POLLOUT</code></span><a class="headerlink" title="Permalink to this term" href="#POLLOUT">¶</a></dt><dd><p><a href="sd_journal_get_fd.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_get_fd</span>(3)</span></a>, <a href="sd_login_monitor_new.html"><span class="citerefentry"><span class="refentrytitle">sd_login_monitor_new</span>(3)</span></a></p></dd><dt id="SD_BUS_CREDS_AUDIT_LOGIN_UID"><span class="term"><code class="constant">SD_BUS_CREDS_AUDIT_LOGIN_UID</code></span><a class="headerlink" title="Permalink to this term" href="#SD_BUS_CREDS_AUDIT_LOGIN_UID">¶</a></dt><dd><p><a href="sd_bus_creds_new_from_pid.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_creds_new_from_pid</span>(3)</span></a></p></dd><dt id="SD_BUS_CREDS_AUDIT_SESSION_ID"><span class="term"><code class="constant">SD_BUS_CREDS_AUDIT_SESSION_ID</code></span><a class="headerlink" title="Permalink to this term" href="#SD_BUS_CREDS_AUDIT_SESSION_ID">¶</a></dt><dd><p><a href="sd_bus_creds_new_from_pid.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_creds_new_from_pid</span>(3)</span></a></p></dd><dt id="SD_BUS_CREDS_BOUNDING_CAPS"><span class="term"><code class="constant">SD_BUS_CREDS_BOUNDING_CAPS</code></span><a class="headerlink" title="Permalink to this term" href="#SD_BUS_CREDS_BOUNDING_CAPS">¶</a></dt><dd><p><a href="sd_bus_creds_new_from_pid.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_creds_new_from_pid</span>(3)</span></a></p></dd><dt id="SD_BUS_CREDS_CGROUP"><span class="term"><code class="constant">SD_BUS_CREDS_CGROUP</code></span><a class="headerlink" title="Permalink to this term" href="#SD_BUS_CREDS_CGROUP">¶</a></dt><dd><p><a href="sd_bus_creds_new_from_pid.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_creds_new_from_pid</span>(3)</span></a></p></dd><dt id="SD_BUS_CREDS_CMDLINE"><span class="term"><code class="constant">SD_BUS_CREDS_CMDLINE</code></span><a class="headerlink" title="Permalink to this term" href="#SD_BUS_CREDS_CMDLINE">¶</a></dt><dd><p><a href="sd_bus_creds_new_from_pid.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_creds_new_from_pid</span>(3)</span></a></p></dd><dt id="SD_BUS_CREDS_COMM"><span class="term"><code class="constant">SD_BUS_CREDS_COMM</code></span><a class="headerlink" title="Permalink to this term" href="#SD_BUS_CREDS_COMM">¶</a></dt><dd><p><a href="sd_bus_creds_new_from_pid.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_creds_new_from_pid</span>(3)</span></a></p></dd><dt id="SD_BUS_CREDS_EFFECTIVE_CAPS"><span class="term"><code class="constant">SD_BUS_CREDS_EFFECTIVE_CAPS</code></span><a class="headerlink" title="Permalink to this term" href="#SD_BUS_CREDS_EFFECTIVE_CAPS">¶</a></dt><dd><p><a href="sd_bus_creds_new_from_pid.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_creds_new_from_pid</span>(3)</span></a></p></dd><dt id="SD_BUS_CREDS_EXE"><span class="term"><code class="constant">SD_BUS_CREDS_EXE</code></span><a class="headerlink" title="Permalink to this term" href="#SD_BUS_CREDS_EXE">¶</a></dt><dd><p><a href="sd_bus_creds_new_from_pid.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_creds_new_from_pid</span>(3)</span></a></p></dd><dt id="SD_BUS_CREDS_GID"><span class="term"><code class="constant">SD_BUS_CREDS_GID</code></span><a class="headerlink" title="Permalink to this term" href="#SD_BUS_CREDS_GID">¶</a></dt><dd><p><a href="sd_bus_creds_new_from_pid.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_creds_new_from_pid</span>(3)</span></a></p></dd><dt id="SD_BUS_CREDS_INHERITABLE_CAPS"><span class="term"><code class="constant">SD_BUS_CREDS_INHERITABLE_CAPS</code></span><a class="headerlink" title="Permalink to this term" href="#SD_BUS_CREDS_INHERITABLE_CAPS">¶</a></dt><dd><p><a href="sd_bus_creds_new_from_pid.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_creds_new_from_pid</span>(3)</span></a></p></dd><dt id="SD_BUS_CREDS_OWNER_UID"><span class="term"><code class="constant">SD_BUS_CREDS_OWNER_UID</code></span><a class="headerlink" title="Permalink to this term" href="#SD_BUS_CREDS_OWNER_UID">¶</a></dt><dd><p><a href="sd_bus_creds_new_from_pid.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_creds_new_from_pid</span>(3)</span></a></p></dd><dt id="SD_BUS_CREDS_PERMITTED_CAPS"><span class="term"><code class="constant">SD_BUS_CREDS_PERMITTED_CAPS</code></span><a class="headerlink" title="Permalink to this term" href="#SD_BUS_CREDS_PERMITTED_CAPS">¶</a></dt><dd><p><a href="sd_bus_creds_new_from_pid.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_creds_new_from_pid</span>(3)</span></a></p></dd><dt id="SD_BUS_CREDS_PID"><span class="term"><code class="constant">SD_BUS_CREDS_PID</code></span><a class="headerlink" title="Permalink to this term" href="#SD_BUS_CREDS_PID">¶</a></dt><dd><p><a href="sd_bus_creds_new_from_pid.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_creds_new_from_pid</span>(3)</span></a></p></dd><dt id="SD_BUS_CREDS_PID_STARTTIME"><span class="term"><code class="constant">SD_BUS_CREDS_PID_STARTTIME</code></span><a class="headerlink" title="Permalink to this term" href="#SD_BUS_CREDS_PID_STARTTIME">¶</a></dt><dd><p><a href="sd_bus_creds_new_from_pid.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_creds_new_from_pid</span>(3)</span></a></p></dd><dt id="SD_BUS_CREDS_SELINUX_CONTEXT"><span class="term"><code class="constant">SD_BUS_CREDS_SELINUX_CONTEXT</code></span><a class="headerlink" title="Permalink to this term" href="#SD_BUS_CREDS_SELINUX_CONTEXT">¶</a></dt><dd><p><a href="sd_bus_creds_new_from_pid.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_creds_new_from_pid</span>(3)</span></a></p></dd><dt id="SD_BUS_CREDS_SESSION"><span class="term"><code class="constant">SD_BUS_CREDS_SESSION</code></span><a class="headerlink" title="Permalink to this term" href="#SD_BUS_CREDS_SESSION">¶</a></dt><dd><p><a href="sd_bus_creds_new_from_pid.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_creds_new_from_pid</span>(3)</span></a></p></dd><dt id="SD_BUS_CREDS_SLICE"><span class="term"><code class="constant">SD_BUS_CREDS_SLICE</code></span><a class="headerlink" title="Permalink to this term" href="#SD_BUS_CREDS_SLICE">¶</a></dt><dd><p><a href="sd_bus_creds_new_from_pid.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_creds_new_from_pid</span>(3)</span></a></p></dd><dt id="SD_BUS_CREDS_TID"><span class="term"><code class="constant">SD_BUS_CREDS_TID</code></span><a class="headerlink" title="Permalink to this term" href="#SD_BUS_CREDS_TID">¶</a></dt><dd><p><a href="sd_bus_creds_new_from_pid.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_creds_new_from_pid</span>(3)</span></a></p></dd><dt id="SD_BUS_CREDS_TID_COMM"><span class="term"><code class="constant">SD_BUS_CREDS_TID_COMM</code></span><a class="headerlink" title="Permalink to this term" href="#SD_BUS_CREDS_TID_COMM">¶</a></dt><dd><p><a href="sd_bus_creds_new_from_pid.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_creds_new_from_pid</span>(3)</span></a></p></dd><dt id="SD_BUS_CREDS_UID"><span class="term"><code class="constant">SD_BUS_CREDS_UID</code></span><a class="headerlink" title="Permalink to this term" href="#SD_BUS_CREDS_UID">¶</a></dt><dd><p><a href="sd_bus_creds_new_from_pid.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_creds_new_from_pid</span>(3)</span></a></p></dd><dt id="SD_BUS_CREDS_UNIQUE_NAME"><span class="term"><code class="constant">SD_BUS_CREDS_UNIQUE_NAME</code></span><a class="headerlink" title="Permalink to this term" href="#SD_BUS_CREDS_UNIQUE_NAME">¶</a></dt><dd><p><a href="sd_bus_creds_new_from_pid.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_creds_new_from_pid</span>(3)</span></a></p></dd><dt id="SD_BUS_CREDS_UNIT"><span class="term"><code class="constant">SD_BUS_CREDS_UNIT</code></span><a class="headerlink" title="Permalink to this term" href="#SD_BUS_CREDS_UNIT">¶</a></dt><dd><p><a href="sd_bus_creds_new_from_pid.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_creds_new_from_pid</span>(3)</span></a></p></dd><dt id="SD_BUS_CREDS_USER_UNIT"><span class="term"><code class="constant">SD_BUS_CREDS_USER_UNIT</code></span><a class="headerlink" title="Permalink to this term" href="#SD_BUS_CREDS_USER_UNIT">¶</a></dt><dd><p><a href="sd_bus_creds_new_from_pid.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_creds_new_from_pid</span>(3)</span></a></p></dd><dt id="SD_BUS_CREDS_WELL_KNOWN_NAMES"><span class="term"><code class="constant">SD_BUS_CREDS_WELL_KNOWN_NAMES</code></span><a class="headerlink" title="Permalink to this term" href="#SD_BUS_CREDS_WELL_KNOWN_NAMES">¶</a></dt><dd><p><a href="sd_bus_creds_new_from_pid.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_creds_new_from_pid</span>(3)</span></a></p></dd><dt id="SD_BUS_ERROR_ACCESS_DENIED"><span class="term"><code class="constant">SD_BUS_ERROR_ACCESS_DENIED</code></span><a class="headerlink" title="Permalink to this term" href="#SD_BUS_ERROR_ACCESS_DENIED">¶</a></dt><dd><p><a href="sd_bus_error.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_error</span>(3)</span></a></p></dd><dt id="SD_BUS_ERROR_ADDRESS_IN_USE"><span class="term"><code class="constant">SD_BUS_ERROR_ADDRESS_IN_USE</code></span><a class="headerlink" title="Permalink to this term" href="#SD_BUS_ERROR_ADDRESS_IN_USE">¶</a></dt><dd><p><a href="sd_bus_error.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_error</span>(3)</span></a></p></dd><dt id="SD_BUS_ERROR_AUTH_FAILED"><span class="term"><code class="constant">SD_BUS_ERROR_AUTH_FAILED</code></span><a class="headerlink" title="Permalink to this term" href="#SD_BUS_ERROR_AUTH_FAILED">¶</a></dt><dd><p><a href="sd_bus_error.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_error</span>(3)</span></a></p></dd><dt id="SD_BUS_ERROR_BAD_ADDRESS"><span class="term"><code class="constant">SD_BUS_ERROR_BAD_ADDRESS</code></span><a class="headerlink" title="Permalink to this term" href="#SD_BUS_ERROR_BAD_ADDRESS">¶</a></dt><dd><p><a href="sd_bus_error.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_error</span>(3)</span></a></p></dd><dt id="SD_BUS_ERROR_DISCONNECTED"><span class="term"><code class="constant">SD_BUS_ERROR_DISCONNECTED</code></span><a class="headerlink" title="Permalink to this term" href="#SD_BUS_ERROR_DISCONNECTED">¶</a></dt><dd><p><a href="sd_bus_error.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_error</span>(3)</span></a></p></dd><dt id="SD_BUS_ERROR_FAILED"><span class="term"><code class="constant">SD_BUS_ERROR_FAILED</code></span><a class="headerlink" title="Permalink to this term" href="#SD_BUS_ERROR_FAILED">¶</a></dt><dd><p><a href="sd_bus_error.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_error</span>(3)</span></a></p></dd><dt id="SD_BUS_ERROR_FILE_EXISTS"><span class="term"><code class="constant">SD_BUS_ERROR_FILE_EXISTS</code></span><a class="headerlink" title="Permalink to this term" href="#SD_BUS_ERROR_FILE_EXISTS">¶</a></dt><dd><p><a href="sd_bus_error.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_error</span>(3)</span></a></p></dd><dt id="SD_BUS_ERROR_FILE_NOT_FOUND"><span class="term"><code class="constant">SD_BUS_ERROR_FILE_NOT_FOUND</code></span><a class="headerlink" title="Permalink to this term" href="#SD_BUS_ERROR_FILE_NOT_FOUND">¶</a></dt><dd><p><a href="sd_bus_error.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_error</span>(3)</span></a></p></dd><dt id="SD_BUS_ERROR_INCONSISTENT_MESSAGE"><span class="term"><code class="constant">SD_BUS_ERROR_INCONSISTENT_MESSAGE</code></span><a class="headerlink" title="Permalink to this term" href="#SD_BUS_ERROR_INCONSISTENT_MESSAGE">¶</a></dt><dd><p><a href="sd_bus_error.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_error</span>(3)</span></a></p></dd><dt id="SD_BUS_ERROR_INVALID_ARGS"><span class="term"><code class="constant">SD_BUS_ERROR_INVALID_ARGS</code></span><a class="headerlink" title="Permalink to this term" href="#SD_BUS_ERROR_INVALID_ARGS">¶</a></dt><dd><p><a href="sd_bus_error.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_error</span>(3)</span></a></p></dd><dt id="SD_BUS_ERROR_INVALID_SIGNATURE"><span class="term"><code class="constant">SD_BUS_ERROR_INVALID_SIGNATURE</code></span><a class="headerlink" title="Permalink to this term" href="#SD_BUS_ERROR_INVALID_SIGNATURE">¶</a></dt><dd><p><a href="sd_bus_error.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_error</span>(3)</span></a></p></dd><dt id="SD_BUS_ERROR_IO_ERROR"><span class="term"><code class="constant">SD_BUS_ERROR_IO_ERROR</code></span><a class="headerlink" title="Permalink to this term" href="#SD_BUS_ERROR_IO_ERROR">¶</a></dt><dd><p><a href="sd_bus_error.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_error</span>(3)</span></a></p></dd><dt id="SD_BUS_ERROR_LIMITS_EXCEEDED"><span class="term"><code class="constant">SD_BUS_ERROR_LIMITS_EXCEEDED</code></span><a class="headerlink" title="Permalink to this term" href="#SD_BUS_ERROR_LIMITS_EXCEEDED">¶</a></dt><dd><p><a href="sd_bus_error.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_error</span>(3)</span></a></p></dd><dt id="SD_BUS_ERROR_MAKE_CONST(name, message)"><span class="term"><code class="constant">SD_BUS_ERROR_MAKE_CONST(<em class="replaceable"><code>name</code></em>, <em class="replaceable"><code>message</code></em>)</code></span><a class="headerlink" title="Permalink to this term" href="#SD_BUS_ERROR_MAKE_CONST(name,%20message)">¶</a></dt><dd><p><a href="sd_bus_error.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_error</span>(3)</span></a></p></dd><dt id="SD_BUS_ERROR_MATCH_RULE_INVALID"><span class="term"><code class="constant">SD_BUS_ERROR_MATCH_RULE_INVALID</code></span><a class="headerlink" title="Permalink to this term" href="#SD_BUS_ERROR_MATCH_RULE_INVALID">¶</a></dt><dd><p><a href="sd_bus_error.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_error</span>(3)</span></a></p></dd><dt id="SD_BUS_ERROR_MATCH_RULE_NOT_FOUND"><span class="term"><code class="constant">SD_BUS_ERROR_MATCH_RULE_NOT_FOUND</code></span><a class="headerlink" title="Permalink to this term" href="#SD_BUS_ERROR_MATCH_RULE_NOT_FOUND">¶</a></dt><dd><p><a href="sd_bus_error.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_error</span>(3)</span></a></p></dd><dt id="SD_BUS_ERROR_NAME_HAS_NO_OWNER"><span class="term"><code class="constant">SD_BUS_ERROR_NAME_HAS_NO_OWNER</code></span><a class="headerlink" title="Permalink to this term" href="#SD_BUS_ERROR_NAME_HAS_NO_OWNER">¶</a></dt><dd><p><a href="sd_bus_error.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_error</span>(3)</span></a></p></dd><dt id="SD_BUS_ERROR_NOT_SUPPORTED"><span class="term"><code class="constant">SD_BUS_ERROR_NOT_SUPPORTED</code></span><a class="headerlink" title="Permalink to this term" href="#SD_BUS_ERROR_NOT_SUPPORTED">¶</a></dt><dd><p><a href="sd_bus_error.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_error</span>(3)</span></a></p></dd><dt id="SD_BUS_ERROR_NO_MEMORY"><span class="term"><code class="constant">SD_BUS_ERROR_NO_MEMORY</code></span><a class="headerlink" title="Permalink to this term" href="#SD_BUS_ERROR_NO_MEMORY">¶</a></dt><dd><p><a href="sd_bus_error.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_error</span>(3)</span></a></p></dd><dt id="SD_BUS_ERROR_NO_NETWORK"><span class="term"><code class="constant">SD_BUS_ERROR_NO_NETWORK</code></span><a class="headerlink" title="Permalink to this term" href="#SD_BUS_ERROR_NO_NETWORK">¶</a></dt><dd><p><a href="sd_bus_error.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_error</span>(3)</span></a></p></dd><dt id="SD_BUS_ERROR_NO_REPLY"><span class="term"><code class="constant">SD_BUS_ERROR_NO_REPLY</code></span><a class="headerlink" title="Permalink to this term" href="#SD_BUS_ERROR_NO_REPLY">¶</a></dt><dd><p><a href="sd_bus_error.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_error</span>(3)</span></a></p></dd><dt id="SD_BUS_ERROR_NO_SERVER"><span class="term"><code class="constant">SD_BUS_ERROR_NO_SERVER</code></span><a class="headerlink" title="Permalink to this term" href="#SD_BUS_ERROR_NO_SERVER">¶</a></dt><dd><p><a href="sd_bus_error.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_error</span>(3)</span></a></p></dd><dt id="SD_BUS_ERROR_NULL"><span class="term"><code class="constant">SD_BUS_ERROR_NULL</code></span><a class="headerlink" title="Permalink to this term" href="#SD_BUS_ERROR_NULL">¶</a></dt><dd><p><a href="sd_bus_error.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_error</span>(3)</span></a></p></dd><dt id="SD_BUS_ERROR_PROPERTY_READ_ONLY"><span class="term"><code class="constant">SD_BUS_ERROR_PROPERTY_READ_ONLY</code></span><a class="headerlink" title="Permalink to this term" href="#SD_BUS_ERROR_PROPERTY_READ_ONLY">¶</a></dt><dd><p><a href="sd_bus_error.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_error</span>(3)</span></a></p></dd><dt id="SD_BUS_ERROR_SERVICE_UNKNOWN"><span class="term"><code class="constant">SD_BUS_ERROR_SERVICE_UNKNOWN</code></span><a class="headerlink" title="Permalink to this term" href="#SD_BUS_ERROR_SERVICE_UNKNOWN">¶</a></dt><dd><p><a href="sd_bus_error.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_error</span>(3)</span></a></p></dd><dt id="SD_BUS_ERROR_TIMEOUT"><span class="term"><code class="constant">SD_BUS_ERROR_TIMEOUT</code></span><a class="headerlink" title="Permalink to this term" href="#SD_BUS_ERROR_TIMEOUT">¶</a></dt><dd><p><a href="sd_bus_error.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_error</span>(3)</span></a></p></dd><dt id="SD_BUS_ERROR_UNIX_PROCESS_ID_UNKNOWN"><span class="term"><code class="constant">SD_BUS_ERROR_UNIX_PROCESS_ID_UNKNOWN</code></span><a class="headerlink" title="Permalink to this term" href="#SD_BUS_ERROR_UNIX_PROCESS_ID_UNKNOWN">¶</a></dt><dd><p><a href="sd_bus_error.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_error</span>(3)</span></a></p></dd><dt id="SD_BUS_ERROR_UNKNOWN_INTERFACE"><span class="term"><code class="constant">SD_BUS_ERROR_UNKNOWN_INTERFACE</code></span><a class="headerlink" title="Permalink to this term" href="#SD_BUS_ERROR_UNKNOWN_INTERFACE">¶</a></dt><dd><p><a href="sd_bus_error.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_error</span>(3)</span></a></p></dd><dt id="SD_BUS_ERROR_UNKNOWN_METHOD"><span class="term"><code class="constant">SD_BUS_ERROR_UNKNOWN_METHOD</code></span><a class="headerlink" title="Permalink to this term" href="#SD_BUS_ERROR_UNKNOWN_METHOD">¶</a></dt><dd><p><a href="sd_bus_error.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_error</span>(3)</span></a></p></dd><dt id="SD_BUS_ERROR_UNKNOWN_OBJECT"><span class="term"><code class="constant">SD_BUS_ERROR_UNKNOWN_OBJECT</code></span><a class="headerlink" title="Permalink to this term" href="#SD_BUS_ERROR_UNKNOWN_OBJECT">¶</a></dt><dd><p><a href="sd_bus_error.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_error</span>(3)</span></a></p></dd><dt id="SD_BUS_ERROR_UNKNOWN_PROPERTY"><span class="term"><code class="constant">SD_BUS_ERROR_UNKNOWN_PROPERTY</code></span><a class="headerlink" title="Permalink to this term" href="#SD_BUS_ERROR_UNKNOWN_PROPERTY">¶</a></dt><dd><p><a href="sd_bus_error.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_error</span>(3)</span></a></p></dd><dt id="SD_BUS_TYPE_ARRAY"><span class="term"><code class="constant">SD_BUS_TYPE_ARRAY</code></span><a class="headerlink" title="Permalink to this term" href="#SD_BUS_TYPE_ARRAY">¶</a></dt><dd><p><a href="sd_bus_message_append.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_message_append</span>(3)</span></a></p></dd><dt id="SD_BUS_TYPE_BOOLEAN"><span class="term"><code class="constant">SD_BUS_TYPE_BOOLEAN</code></span><a class="headerlink" title="Permalink to this term" href="#SD_BUS_TYPE_BOOLEAN">¶</a></dt><dd><p><a href="sd_bus_message_append.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_message_append</span>(3)</span></a>, <a href="sd_bus_message_append_basic.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_message_append_basic</span>(3)</span></a></p></dd><dt id="SD_BUS_TYPE_BYTE"><span class="term"><code class="constant">SD_BUS_TYPE_BYTE</code></span><a class="headerlink" title="Permalink to this term" href="#SD_BUS_TYPE_BYTE">¶</a></dt><dd><p><a href="sd_bus_message_append.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_message_append</span>(3)</span></a>, <a href="sd_bus_message_append_basic.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_message_append_basic</span>(3)</span></a></p></dd><dt id="SD_BUS_TYPE_DICT_ENTRY_BEGIN"><span class="term"><code class="constant">SD_BUS_TYPE_DICT_ENTRY_BEGIN</code></span><a class="headerlink" title="Permalink to this term" href="#SD_BUS_TYPE_DICT_ENTRY_BEGIN">¶</a></dt><dd><p><a href="sd_bus_message_append.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_message_append</span>(3)</span></a></p></dd><dt id="SD_BUS_TYPE_DICT_ENTRY_END"><span class="term"><code class="constant">SD_BUS_TYPE_DICT_ENTRY_END</code></span><a class="headerlink" title="Permalink to this term" href="#SD_BUS_TYPE_DICT_ENTRY_END">¶</a></dt><dd><p><a href="sd_bus_message_append.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_message_append</span>(3)</span></a></p></dd><dt id="SD_BUS_TYPE_DOUBLE"><span class="term"><code class="constant">SD_BUS_TYPE_DOUBLE</code></span><a class="headerlink" title="Permalink to this term" href="#SD_BUS_TYPE_DOUBLE">¶</a></dt><dd><p><a href="sd_bus_message_append.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_message_append</span>(3)</span></a>, <a href="sd_bus_message_append_basic.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_message_append_basic</span>(3)</span></a></p></dd><dt id="SD_BUS_TYPE_INT16"><span class="term"><code class="constant">SD_BUS_TYPE_INT16</code></span><a class="headerlink" title="Permalink to this term" href="#SD_BUS_TYPE_INT16">¶</a></dt><dd><p><a href="sd_bus_message_append.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_message_append</span>(3)</span></a>, <a href="sd_bus_message_append_basic.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_message_append_basic</span>(3)</span></a></p></dd><dt id="SD_BUS_TYPE_INT32"><span class="term"><code class="constant">SD_BUS_TYPE_INT32</code></span><a class="headerlink" title="Permalink to this term" href="#SD_BUS_TYPE_INT32">¶</a></dt><dd><p><a href="sd_bus_message_append.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_message_append</span>(3)</span></a>, <a href="sd_bus_message_append_basic.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_message_append_basic</span>(3)</span></a></p></dd><dt id="SD_BUS_TYPE_INT64"><span class="term"><code class="constant">SD_BUS_TYPE_INT64</code></span><a class="headerlink" title="Permalink to this term" href="#SD_BUS_TYPE_INT64">¶</a></dt><dd><p><a href="sd_bus_message_append.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_message_append</span>(3)</span></a>, <a href="sd_bus_message_append_basic.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_message_append_basic</span>(3)</span></a></p></dd><dt id="SD_BUS_TYPE_OBJECT_PATH"><span class="term"><code class="constant">SD_BUS_TYPE_OBJECT_PATH</code></span><a class="headerlink" title="Permalink to this term" href="#SD_BUS_TYPE_OBJECT_PATH">¶</a></dt><dd><p><a href="sd_bus_message_append.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_message_append</span>(3)</span></a>, <a href="sd_bus_message_append_basic.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_message_append_basic</span>(3)</span></a></p></dd><dt id="SD_BUS_TYPE_SIGNATURE"><span class="term"><code class="constant">SD_BUS_TYPE_SIGNATURE</code></span><a class="headerlink" title="Permalink to this term" href="#SD_BUS_TYPE_SIGNATURE">¶</a></dt><dd><p><a href="sd_bus_message_append.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_message_append</span>(3)</span></a>, <a href="sd_bus_message_append_basic.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_message_append_basic</span>(3)</span></a></p></dd><dt id="SD_BUS_TYPE_STRING"><span class="term"><code class="constant">SD_BUS_TYPE_STRING</code></span><a class="headerlink" title="Permalink to this term" href="#SD_BUS_TYPE_STRING">¶</a></dt><dd><p><a href="sd_bus_message_append.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_message_append</span>(3)</span></a>, <a href="sd_bus_message_append_basic.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_message_append_basic</span>(3)</span></a></p></dd><dt id="SD_BUS_TYPE_STRUCT_BEGIN"><span class="term"><code class="constant">SD_BUS_TYPE_STRUCT_BEGIN</code></span><a class="headerlink" title="Permalink to this term" href="#SD_BUS_TYPE_STRUCT_BEGIN">¶</a></dt><dd><p><a href="sd_bus_message_append.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_message_append</span>(3)</span></a></p></dd><dt id="SD_BUS_TYPE_STRUCT_END"><span class="term"><code class="constant">SD_BUS_TYPE_STRUCT_END</code></span><a class="headerlink" title="Permalink to this term" href="#SD_BUS_TYPE_STRUCT_END">¶</a></dt><dd><p><a href="sd_bus_message_append.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_message_append</span>(3)</span></a></p></dd><dt id="SD_BUS_TYPE_UINT16"><span class="term"><code class="constant">SD_BUS_TYPE_UINT16</code></span><a class="headerlink" title="Permalink to this term" href="#SD_BUS_TYPE_UINT16">¶</a></dt><dd><p><a href="sd_bus_message_append.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_message_append</span>(3)</span></a>, <a href="sd_bus_message_append_basic.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_message_append_basic</span>(3)</span></a></p></dd><dt id="SD_BUS_TYPE_UINT32"><span class="term"><code class="constant">SD_BUS_TYPE_UINT32</code></span><a class="headerlink" title="Permalink to this term" href="#SD_BUS_TYPE_UINT32">¶</a></dt><dd><p><a href="sd_bus_message_append.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_message_append</span>(3)</span></a>, <a href="sd_bus_message_append_basic.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_message_append_basic</span>(3)</span></a></p></dd><dt id="SD_BUS_TYPE_UINT64"><span class="term"><code class="constant">SD_BUS_TYPE_UINT64</code></span><a class="headerlink" title="Permalink to this term" href="#SD_BUS_TYPE_UINT64">¶</a></dt><dd><p><a href="sd_bus_message_append.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_message_append</span>(3)</span></a>, <a href="sd_bus_message_append_basic.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_message_append_basic</span>(3)</span></a></p></dd><dt id="SD_BUS_TYPE_UNIX_FD"><span class="term"><code class="constant">SD_BUS_TYPE_UNIX_FD</code></span><a class="headerlink" title="Permalink to this term" href="#SD_BUS_TYPE_UNIX_FD">¶</a></dt><dd><p><a href="sd_bus_message_append.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_message_append</span>(3)</span></a>, <a href="sd_bus_message_append_basic.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_message_append_basic</span>(3)</span></a>, <a href="sd_bus_negotiate_fds.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_negotiate_fds</span>(3)</span></a></p></dd><dt id="SD_BUS_TYPE_VARIANT"><span class="term"><code class="constant">SD_BUS_TYPE_VARIANT</code></span><a class="headerlink" title="Permalink to this term" href="#SD_BUS_TYPE_VARIANT">¶</a></dt><dd><p><a href="sd_bus_message_append.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_message_append</span>(3)</span></a></p></dd><dt id="SD_JOURNAL_APPEND"><span class="term"><code class="constant">SD_JOURNAL_APPEND</code></span><a class="headerlink" title="Permalink to this term" href="#SD_JOURNAL_APPEND">¶</a></dt><dd><p><a href="sd_journal_get_fd.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_get_fd</span>(3)</span></a></p></dd><dt id="SD_JOURNAL_CURRENT_USER"><span class="term"><code class="constant">SD_JOURNAL_CURRENT_USER</code></span><a class="headerlink" title="Permalink to this term" href="#SD_JOURNAL_CURRENT_USER">¶</a></dt><dd><p><a href="sd_journal_open.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_open</span>(3)</span></a></p></dd><dt id="SD_JOURNAL_INVALIDATE"><span class="term"><code class="constant">SD_JOURNAL_INVALIDATE</code></span><a class="headerlink" title="Permalink to this term" href="#SD_JOURNAL_INVALIDATE">¶</a></dt><dd><p><a href="sd_journal_get_fd.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_get_fd</span>(3)</span></a></p></dd><dt id="SD_JOURNAL_LOCAL_ONLY"><span class="term"><code class="constant">SD_JOURNAL_LOCAL_ONLY</code></span><a class="headerlink" title="Permalink to this term" href="#SD_JOURNAL_LOCAL_ONLY">¶</a></dt><dd><p><a href="sd_journal_get_usage.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_get_usage</span>(3)</span></a>, <a href="sd_journal_open.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_open</span>(3)</span></a></p></dd><dt id="SD_JOURNAL_NOP"><span class="term"><code class="constant">SD_JOURNAL_NOP</code></span><a class="headerlink" title="Permalink to this term" href="#SD_JOURNAL_NOP">¶</a></dt><dd><p><a href="sd_journal_get_fd.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_get_fd</span>(3)</span></a></p></dd><dt id="SD_JOURNAL_RUNTIME_ONLY"><span class="term"><code class="constant">SD_JOURNAL_RUNTIME_ONLY</code></span><a class="headerlink" title="Permalink to this term" href="#SD_JOURNAL_RUNTIME_ONLY">¶</a></dt><dd><p><a href="sd_journal_open.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_open</span>(3)</span></a></p></dd><dt id="SD_JOURNAL_SYSTEM"><span class="term"><code class="constant">SD_JOURNAL_SYSTEM</code></span><a class="headerlink" title="Permalink to this term" href="#SD_JOURNAL_SYSTEM">¶</a></dt><dd><p><a href="sd_journal_open.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_open</span>(3)</span></a></p></dd><dt id="SD_JOURNAL_SYSTEM_ONLY"><span class="term"><code class="constant">SD_JOURNAL_SYSTEM_ONLY</code></span><a class="headerlink" title="Permalink to this term" href="#SD_JOURNAL_SYSTEM_ONLY">¶</a></dt><dd><p><a href="sd_journal_open.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_open</span>(3)</span></a></p></dd><dt id="SD_WARNING"><span class="term"><code class="constant">SD_WARNING</code></span><a class="headerlink" title="Permalink to this term" href="#SD_WARNING">¶</a></dt><dd><p><a href="sd_journal_stream_fd.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_stream_fd</span>(3)</span></a></p></dd><dt id="SIGABRT"><span class="term"><code class="constant">SIGABRT</code></span><a class="headerlink" title="Permalink to this term" href="#SIGABRT">¶</a></dt><dd><p><a href="systemd.service.html"><span class="citerefentry"><span class="refentrytitle">systemd.service</span>(5)</span></a></p></dd><dt id="SIGHUP"><span class="term"><code class="constant">SIGHUP</code></span><a class="headerlink" title="Permalink to this term" href="#SIGHUP">¶</a></dt><dd><p><a href="daemon.html"><span class="citerefentry"><span class="refentrytitle">daemon</span>(7)</span></a>, <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>, <a href="systemd.kill.html"><span class="citerefentry"><span class="refentrytitle">systemd.kill</span>(5)</span></a>, <a href="systemd.service.html"><span class="citerefentry"><span class="refentrytitle">systemd.service</span>(5)</span></a></p></dd><dt id="SIGINT"><span class="term"><code class="constant">SIGINT</code></span><a class="headerlink" title="Permalink to this term" href="#SIGINT">¶</a></dt><dd><p><a href="loginctl.html"><span class="citerefentry"><span class="refentrytitle">loginctl</span>(1)</span></a>, <a href="machinectl.html"><span class="citerefentry"><span class="refentrytitle">machinectl</span>(1)</span></a>, <a href="systemctl.html"><span class="citerefentry"><span class="refentrytitle">systemctl</span>(1)</span></a>, <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>, <a href="systemd.service.html"><span class="citerefentry"><span class="refentrytitle">systemd.service</span>(5)</span></a>, <a href="systemd.special.html"><span class="citerefentry"><span class="refentrytitle">systemd.special</span>(7)</span></a></p></dd><dt id="SIGKILL"><span class="term"><code class="constant">SIGKILL</code></span><a class="headerlink" title="Permalink to this term" href="#SIGKILL">¶</a></dt><dd><p><a href="systemd.kill.html"><span class="citerefentry"><span class="refentrytitle">systemd.kill</span>(5)</span></a>, <a href="systemd.mount.html"><span class="citerefentry"><span class="refentrytitle">systemd.mount</span>(5)</span></a>, <a href="systemd.service.html"><span class="citerefentry"><span class="refentrytitle">systemd.service</span>(5)</span></a>, <a href="systemd.socket.html"><span class="citerefentry"><span class="refentrytitle">systemd.socket</span>(5)</span></a>, <a href="systemd.swap.html"><span class="citerefentry"><span class="refentrytitle">systemd.swap</span>(5)</span></a></p></dd><dt id="SIGPIPE"><span class="term"><code class="constant">SIGPIPE</code></span><a class="headerlink" title="Permalink to this term" href="#SIGPIPE">¶</a></dt><dd><p><a href="systemd.exec.html"><span class="citerefentry"><span class="refentrytitle">systemd.exec</span>(5)</span></a>, <a href="systemd.service.html"><span class="citerefentry"><span class="refentrytitle">systemd.service</span>(5)</span></a></p></dd><dt id="SIGPWR"><span class="term"><code class="constant">SIGPWR</code></span><a class="headerlink" title="Permalink to this term" href="#SIGPWR">¶</a></dt><dd><p><a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a></p></dd><dt id="SIGRTMIN+0"><span class="term"><code class="constant">SIGRTMIN+0</code></span><a class="headerlink" title="Permalink to this term" href="#SIGRTMIN+0">¶</a></dt><dd><p><a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a></p></dd><dt id="SIGRTMIN+1"><span class="term"><code class="constant">SIGRTMIN+1</code></span><a class="headerlink" title="Permalink to this term" href="#SIGRTMIN+1">¶</a></dt><dd><p><a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a></p></dd><dt id="SIGRTMIN+13"><span class="term"><code class="constant">SIGRTMIN+13</code></span><a class="headerlink" title="Permalink to this term" href="#SIGRTMIN+13">¶</a></dt><dd><p><a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a></p></dd><dt id="SIGRTMIN+14"><span class="term"><code class="constant">SIGRTMIN+14</code></span><a class="headerlink" title="Permalink to this term" href="#SIGRTMIN+14">¶</a></dt><dd><p><a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a></p></dd><dt id="SIGRTMIN+15"><span class="term"><code class="constant">SIGRTMIN+15</code></span><a class="headerlink" title="Permalink to this term" href="#SIGRTMIN+15">¶</a></dt><dd><p><a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a></p></dd><dt id="SIGRTMIN+16"><span class="term"><code class="constant">SIGRTMIN+16</code></span><a class="headerlink" title="Permalink to this term" href="#SIGRTMIN+16">¶</a></dt><dd><p><a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a></p></dd><dt id="SIGRTMIN+2"><span class="term"><code class="constant">SIGRTMIN+2</code></span><a class="headerlink" title="Permalink to this term" href="#SIGRTMIN+2">¶</a></dt><dd><p><a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a></p></dd><dt id="SIGRTMIN+20"><span class="term"><code class="constant">SIGRTMIN+20</code></span><a class="headerlink" title="Permalink to this term" href="#SIGRTMIN+20">¶</a></dt><dd><p><a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a></p></dd><dt id="SIGRTMIN+21"><span class="term"><code class="constant">SIGRTMIN+21</code></span><a class="headerlink" title="Permalink to this term" href="#SIGRTMIN+21">¶</a></dt><dd><p><a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a></p></dd><dt id="SIGRTMIN+22"><span class="term"><code class="constant">SIGRTMIN+22</code></span><a class="headerlink" title="Permalink to this term" href="#SIGRTMIN+22">¶</a></dt><dd><p><a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a></p></dd><dt id="SIGRTMIN+23"><span class="term"><code class="constant">SIGRTMIN+23</code></span><a class="headerlink" title="Permalink to this term" href="#SIGRTMIN+23">¶</a></dt><dd><p><a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a></p></dd><dt id="SIGRTMIN+24"><span class="term"><code class="constant">SIGRTMIN+24</code></span><a class="headerlink" title="Permalink to this term" href="#SIGRTMIN+24">¶</a></dt><dd><p><a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a></p></dd><dt id="SIGRTMIN+26"><span class="term"><code class="constant">SIGRTMIN+26</code></span><a class="headerlink" title="Permalink to this term" href="#SIGRTMIN+26">¶</a></dt><dd><p><a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a></p></dd><dt id="SIGRTMIN+27"><span class="term"><code class="constant">SIGRTMIN+27</code></span><a class="headerlink" title="Permalink to this term" href="#SIGRTMIN+27">¶</a></dt><dd><p><a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a></p></dd><dt id="SIGRTMIN+28"><span class="term"><code class="constant">SIGRTMIN+28</code></span><a class="headerlink" title="Permalink to this term" href="#SIGRTMIN+28">¶</a></dt><dd><p><a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a></p></dd><dt id="SIGRTMIN+29"><span class="term"><code class="constant">SIGRTMIN+29</code></span><a class="headerlink" title="Permalink to this term" href="#SIGRTMIN+29">¶</a></dt><dd><p><a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a></p></dd><dt id="SIGRTMIN+3"><span class="term"><code class="constant">SIGRTMIN+3</code></span><a class="headerlink" title="Permalink to this term" href="#SIGRTMIN+3">¶</a></dt><dd><p><a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a></p></dd><dt id="SIGRTMIN+4"><span class="term"><code class="constant">SIGRTMIN+4</code></span><a class="headerlink" title="Permalink to this term" href="#SIGRTMIN+4">¶</a></dt><dd><p><a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a></p></dd><dt id="SIGRTMIN+5"><span class="term"><code class="constant">SIGRTMIN+5</code></span><a class="headerlink" title="Permalink to this term" href="#SIGRTMIN+5">¶</a></dt><dd><p><a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a></p></dd><dt id="SIGRTMIN+6"><span class="term"><code class="constant">SIGRTMIN+6</code></span><a class="headerlink" title="Permalink to this term" href="#SIGRTMIN+6">¶</a></dt><dd><p><a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a></p></dd><dt id="SIGSTOP"><span class="term"><code class="constant">SIGSTOP</code></span><a class="headerlink" title="Permalink to this term" href="#SIGSTOP">¶</a></dt><dd><p><a href="loginctl.html"><span class="citerefentry"><span class="refentrytitle">loginctl</span>(1)</span></a>, <a href="machinectl.html"><span class="citerefentry"><span class="refentrytitle">machinectl</span>(1)</span></a>, <a href="systemctl.html"><span class="citerefentry"><span class="refentrytitle">systemctl</span>(1)</span></a></p></dd><dt id="SIGSYS"><span class="term"><code class="constant">SIGSYS</code></span><a class="headerlink" title="Permalink to this term" href="#SIGSYS">¶</a></dt><dd><p><a href="systemd.exec.html"><span class="citerefentry"><span class="refentrytitle">systemd.exec</span>(5)</span></a></p></dd><dt id="SIGTERM"><span class="term"><code class="constant">SIGTERM</code></span><a class="headerlink" title="Permalink to this term" href="#SIGTERM">¶</a></dt><dd><p><a href="daemon.html"><span class="citerefentry"><span class="refentrytitle">daemon</span>(7)</span></a>, <a href="loginctl.html"><span class="citerefentry"><span class="refentrytitle">loginctl</span>(1)</span></a>, <a href="machinectl.html"><span class="citerefentry"><span class="refentrytitle">machinectl</span>(1)</span></a>, <a href="systemctl.html"><span class="citerefentry"><span class="refentrytitle">systemctl</span>(1)</span></a>, <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>, <a href="systemd.kill.html"><span class="citerefentry"><span class="refentrytitle">systemd.kill</span>(5)</span></a>, <a href="systemd.mount.html"><span class="citerefentry"><span class="refentrytitle">systemd.mount</span>(5)</span></a>, <a href="systemd.service.html"><span class="citerefentry"><span class="refentrytitle">systemd.service</span>(5)</span></a>, <a href="systemd.socket.html"><span class="citerefentry"><span class="refentrytitle">systemd.socket</span>(5)</span></a>, <a href="systemd.special.html"><span class="citerefentry"><span class="refentrytitle">systemd.special</span>(7)</span></a>, <a href="systemd.swap.html"><span class="citerefentry"><span class="refentrytitle">systemd.swap</span>(5)</span></a></p></dd><dt id="SIGUSR1"><span class="term"><code class="constant">SIGUSR1</code></span><a class="headerlink" title="Permalink to this term" href="#SIGUSR1">¶</a></dt><dd><p><a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a></p></dd><dt id="SIGUSR2"><span class="term"><code class="constant">SIGUSR2</code></span><a class="headerlink" title="Permalink to this term" href="#SIGUSR2">¶</a></dt><dd><p><a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a></p></dd><dt id="SIGWINCH"><span class="term"><code class="constant">SIGWINCH</code></span><a class="headerlink" title="Permalink to this term" href="#SIGWINCH">¶</a></dt><dd><p><a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a></p></dd><dt id="SIG_DFL"><span class="term"><code class="constant">SIG_DFL</code></span><a class="headerlink" title="Permalink to this term" href="#SIG_DFL">¶</a></dt><dd><p><a href="daemon.html"><span class="citerefentry"><span class="refentrytitle">daemon</span>(7)</span></a></p></dd><dt id="SOCK_DGRAM"><span class="term"><code class="constant">SOCK_DGRAM</code></span><a class="headerlink" title="Permalink to this term" href="#SOCK_DGRAM">¶</a></dt><dd><p><a href="sd_is_fifo.html"><span class="citerefentry"><span class="refentrytitle">sd_is_fifo</span>(3)</span></a>, <a href="systemd-journald.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-journald.service</span>(8)</span></a>, <a href="systemd.socket.html"><span class="citerefentry"><span class="refentrytitle">systemd.socket</span>(5)</span></a></p></dd><dt id="SOCK_SEQPACKET"><span class="term"><code class="constant">SOCK_SEQPACKET</code></span><a class="headerlink" title="Permalink to this term" href="#SOCK_SEQPACKET">¶</a></dt><dd><p><a href="systemd.socket.html"><span class="citerefentry"><span class="refentrytitle">systemd.socket</span>(5)</span></a></p></dd><dt id="SOCK_STREAM"><span class="term"><code class="constant">SOCK_STREAM</code></span><a class="headerlink" title="Permalink to this term" href="#SOCK_STREAM">¶</a></dt><dd><p><a href="sd_is_fifo.html"><span class="citerefentry"><span class="refentrytitle">sd_is_fifo</span>(3)</span></a>, <a href="systemd.socket.html"><span class="citerefentry"><span class="refentrytitle">systemd.socket</span>(5)</span></a></p></dd><dt id="_SD_BUS_CREDS_ALL"><span class="term"><code class="constant">_SD_BUS_CREDS_ALL</code></span><a class="headerlink" title="Permalink to this term" href="#_SD_BUS_CREDS_ALL">¶</a></dt><dd><p><a href="sd_bus_creds_new_from_pid.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_creds_new_from_pid</span>(3)</span></a></p></dd><dt id="all"><span class="term"><code class="constant">all</code></span><a class="headerlink" title="Permalink to this term" href="#all">¶</a></dt><dd><p><a href="udevadm.html"><span class="citerefentry"><span class="refentrytitle">udevadm</span>(8)</span></a></p></dd><dt id="application/event-stream"><span class="term"><code class="constant">application/event-stream</code></span><a class="headerlink" title="Permalink to this term" href="#application/event-stream">¶</a></dt><dd><p><a href="systemd-journal-gatewayd.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-journal-gatewayd.service</span>(8)</span></a></p></dd><dt id="application/json"><span class="term"><code class="constant">application/json</code></span><a class="headerlink" title="Permalink to this term" href="#application/json">¶</a></dt><dd><p><a href="systemd-journal-gatewayd.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-journal-gatewayd.service</span>(8)</span></a></p></dd><dt id="application/vnd.fdo.journal"><span class="term"><code class="constant">application/vnd.fdo.journal</code></span><a class="headerlink" title="Permalink to this term" href="#application/vnd.fdo.journal">¶</a></dt><dd><p><a href="systemd-journal-gatewayd.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-journal-gatewayd.service</span>(8)</span></a></p></dd><dt id="arm"><span class="term"><code class="constant">arm</code></span><a class="headerlink" title="Permalink to this term" href="#arm">¶</a></dt><dd><p><a href="systemd.exec.html"><span class="citerefentry"><span class="refentrytitle">systemd.exec</span>(5)</span></a></p></dd><dt id="auto"><span class="term"><code class="constant">auto</code></span><a class="headerlink" title="Permalink to this term" href="#auto">¶</a></dt><dd><p><a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a></p></dd><dt id="early"><span class="term"><code class="constant">early</code></span><a class="headerlink" title="Permalink to this term" href="#early">¶</a></dt><dd><p><a href="udevadm.html"><span class="citerefentry"><span class="refentrytitle">udevadm</span>(8)</span></a></p></dd><dt id="false"><span class="term"><code class="constant">false</code></span><a class="headerlink" title="Permalink to this term" href="#false">¶</a></dt><dd><p><a href="sd_bus_error.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_error</span>(3)</span></a></p></dd><dt id="late"><span class="term"><code class="constant">late</code></span><a class="headerlink" title="Permalink to this term" href="#late">¶</a></dt><dd><p><a href="udevadm.html"><span class="citerefentry"><span class="refentrytitle">udevadm</span>(8)</span></a></p></dd><dt id="libsystemd"><span class="term"><code class="constant">libsystemd</code></span><a class="headerlink" title="Permalink to this term" href="#libsystemd">¶</a></dt><dd><p><a href="sd-daemon.html"><span class="citerefentry"><span class="refentrytitle">sd-daemon</span>(3)</span></a>, <a href="sd-id128.html"><span class="citerefentry"><span class="refentrytitle">sd-id128</span>(3)</span></a>, <a href="sd-journal.html"><span class="citerefentry"><span class="refentrytitle">sd-journal</span>(3)</span></a>, <a href="sd-login.html"><span class="citerefentry"><span class="refentrytitle">sd-login</span>(3)</span></a>, <a href="sd_booted.html"><span class="citerefentry"><span class="refentrytitle">sd_booted</span>(3)</span></a>, <a href="sd_bus_creds_get_pid.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_creds_get_pid</span>(3)</span></a>, <a href="sd_bus_creds_new_from_pid.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_creds_new_from_pid</span>(3)</span></a>, <a href="sd_bus_error.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_error</span>(3)</span></a>, <a href="sd_bus_message_append_array.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_message_append_array</span>(3)</span></a>, <a href="sd_bus_message_append_basic.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_message_append_basic</span>(3)</span></a>, <a href="sd_bus_message_append_string_memfd.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_message_append_string_memfd</span>(3)</span></a>, <a href="sd_bus_message_append_strv.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_message_append_strv</span>(3)</span></a>, <a href="sd_bus_message_get_cookie.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_message_get_cookie</span>(3)</span></a>, <a href="sd_bus_message_get_monotonic_usec.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_message_get_monotonic_usec</span>(3)</span></a>, <a href="sd_bus_negotiate_fds.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_negotiate_fds</span>(3)</span></a>, <a href="sd_bus_new.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_new</span>(3)</span></a>, <a href="sd_bus_open_user.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_open_user</span>(3)</span></a>, <a href="sd_bus_path_encode.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_path_encode</span>(3)</span></a>, <a href="sd_bus_request_name.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_request_name</span>(3)</span></a>, <a href="sd_event_add_time.html"><span class="citerefentry"><span class="refentrytitle">sd_event_add_time</span>(3)</span></a>, <a href="sd_event_new.html"><span class="citerefentry"><span class="refentrytitle">sd_event_new</span>(3)</span></a>, <a href="sd_get_seats.html"><span class="citerefentry"><span class="refentrytitle">sd_get_seats</span>(3)</span></a>, <a href="sd_is_fifo.html"><span class="citerefentry"><span class="refentrytitle">sd_is_fifo</span>(3)</span></a>, <a href="sd_journal_add_match.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_add_match</span>(3)</span></a>, <a href="sd_journal_get_catalog.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_get_catalog</span>(3)</span></a>, <a href="sd_journal_get_cursor.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_get_cursor</span>(3)</span></a>, <a href="sd_journal_get_cutoff_realtime_usec.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_get_cutoff_realtime_usec</span>(3)</span></a>, <a href="sd_journal_get_data.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_get_data</span>(3)</span></a>, <a href="sd_journal_get_fd.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_get_fd</span>(3)</span></a>, <a href="sd_journal_get_realtime_usec.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_get_realtime_usec</span>(3)</span></a>, <a href="sd_journal_get_usage.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_get_usage</span>(3)</span></a>, <a href="sd_journal_next.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_next</span>(3)</span></a>, <a href="sd_journal_open.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_open</span>(3)</span></a>, <a href="sd_journal_print.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_print</span>(3)</span></a>, <a href="sd_journal_query_unique.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_query_unique</span>(3)</span></a>, <a href="sd_journal_seek_head.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_seek_head</span>(3)</span></a>, <a href="sd_journal_stream_fd.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_stream_fd</span>(3)</span></a>, <a href="sd_listen_fds.html"><span class="citerefentry"><span class="refentrytitle">sd_listen_fds</span>(3)</span></a>, <a href="sd_login_monitor_new.html"><span class="citerefentry"><span class="refentrytitle">sd_login_monitor_new</span>(3)</span></a>, <a href="sd_notify.html"><span class="citerefentry"><span class="refentrytitle">sd_notify</span>(3)</span></a>, <a href="sd_pid_get_session.html"><span class="citerefentry"><span class="refentrytitle">sd_pid_get_session</span>(3)</span></a>, <a href="sd_seat_get_active.html"><span class="citerefentry"><span class="refentrytitle">sd_seat_get_active</span>(3)</span></a>, <a href="sd_session_is_active.html"><span class="citerefentry"><span class="refentrytitle">sd_session_is_active</span>(3)</span></a>, <a href="sd_uid_get_state.html"><span class="citerefentry"><span class="refentrytitle">sd_uid_get_state</span>(3)</span></a>, <a href="sd_watchdog_enabled.html"><span class="citerefentry"><span class="refentrytitle">sd_watchdog_enabled</span>(3)</span></a></p></dd><dt id="libsystemd-bus"><span class="term"><code class="constant">libsystemd-bus</code></span><a class="headerlink" title="Permalink to this term" href="#libsystemd-bus">¶</a></dt><dd><p><a href="sd_bus_message_append.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_message_append</span>(3)</span></a></p></dd><dt id="m"><span class="term"><code class="constant">m</code></span><a class="headerlink" title="Permalink to this term" href="#m">¶</a></dt><dd><p><a href="systemd.resource-control.html"><span class="citerefentry"><span class="refentrytitle">systemd.resource-control</span>(5)</span></a></p></dd><dt id="name"><span class="term"><code class="constant">name</code></span><a class="headerlink" title="Permalink to this term" href="#name">¶</a></dt><dd><p><a href="udevadm.html"><span class="citerefentry"><span class="refentrytitle">udevadm</span>(8)</span></a></p></dd><dt id="native"><span class="term"><code class="constant">native</code></span><a class="headerlink" title="Permalink to this term" href="#native">¶</a></dt><dd><p><a href="systemd.exec.html"><span class="citerefentry"><span class="refentrytitle">systemd.exec</span>(5)</span></a></p></dd><dt id="never"><span class="term"><code class="constant">never</code></span><a class="headerlink" title="Permalink to this term" href="#never">¶</a></dt><dd><p><a href="udevadm.html"><span class="citerefentry"><span class="refentrytitle">udevadm</span>(8)</span></a></p></dd><dt id="path"><span class="term"><code class="constant">path</code></span><a class="headerlink" title="Permalink to this term" href="#path">¶</a></dt><dd><p><a href="udevadm.html"><span class="citerefentry"><span class="refentrytitle">udevadm</span>(8)</span></a></p></dd><dt id="property"><span class="term"><code class="constant">property</code></span><a class="headerlink" title="Permalink to this term" href="#property">¶</a></dt><dd><p><a href="udevadm.html"><span class="citerefentry"><span class="refentrytitle">udevadm</span>(8)</span></a></p></dd><dt id="r"><span class="term"><code class="constant">r</code></span><a class="headerlink" title="Permalink to this term" href="#r">¶</a></dt><dd><p><a href="systemd.resource-control.html"><span class="citerefentry"><span class="refentrytitle">systemd.resource-control</span>(5)</span></a></p></dd><dt id="simple"><span class="term"><code class="constant">simple</code></span><a class="headerlink" title="Permalink to this term" href="#simple">¶</a></dt><dd><p><a href="systemd-run.html"><span class="citerefentry"><span class="refentrytitle">systemd-run</span>(1)</span></a></p></dd><dt id="symlink"><span class="term"><code class="constant">symlink</code></span><a class="headerlink" title="Permalink to this term" href="#symlink">¶</a></dt><dd><p><a href="udevadm.html"><span class="citerefentry"><span class="refentrytitle">udevadm</span>(8)</span></a></p></dd><dt id="text/plain"><span class="term"><code class="constant">text/plain</code></span><a class="headerlink" title="Permalink to this term" href="#text/plain">¶</a></dt><dd><p><a href="systemd-journal-gatewayd.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-journal-gatewayd.service</span>(8)</span></a></p></dd><dt id="true"><span class="term"><code class="constant">true</code></span><a class="headerlink" title="Permalink to this term" href="#true">¶</a></dt><dd><p><a href="sd_bus_error.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_error</span>(3)</span></a></p></dd><dt id="w"><span class="term"><code class="constant">w</code></span><a class="headerlink" title="Permalink to this term" href="#w">¶</a></dt><dd><p><a href="systemd.resource-control.html"><span class="citerefentry"><span class="refentrytitle">systemd.resource-control</span>(5)</span></a></p></dd><dt id="x32"><span class="term"><code class="constant">x32</code></span><a class="headerlink" title="Permalink to this term" href="#x32">¶</a></dt><dd><p><a href="systemd.exec.html"><span class="citerefentry"><span class="refentrytitle">systemd.exec</span>(5)</span></a></p></dd><dt id="x86"><span class="term"><code class="constant">x86</code></span><a class="headerlink" title="Permalink to this term" href="#x86">¶</a></dt><dd><p><a href="systemd.exec.html"><span class="citerefentry"><span class="refentrytitle">systemd.exec</span>(5)</span></a></p></dd><dt id="x86-64"><span class="term"><code class="constant">x86-64</code></span><a class="headerlink" title="Permalink to this term" href="#x86-64">¶</a></dt><dd><p><a href="systemd.exec.html"><span class="citerefentry"><span class="refentrytitle">systemd.exec</span>(5)</span></a></p></dd><dt id="~"><span class="term"><code class="constant">~</code></span><a class="headerlink" title="Permalink to this term" href="#~">¶</a></dt><dd><p><a href="systemd.exec.html"><span class="citerefentry"><span class="refentrytitle">systemd.exec</span>(5)</span></a></p></dd></dl></div></div><div class="refsect1"><a name="idm214180569680"></a><h2 id="Miscellaneous options and directives">Miscellaneous options and directives<a class="headerlink" title="Permalink to this headline" href="#Miscellaneous%20options%20and%20directives">¶</a></h2><p>Other configuration elements which don't fit in
+                any of the above groups.</p><div class="variablelist"><a name="miscellaneous"></a><dl class="variablelist"><dt id="$LISTEN_FDS"><span class="term"><code class="varname">$LISTEN_FDS</code></span><a class="headerlink" title="Permalink to this term" href="#%24LISTEN_FDS">¶</a></dt><dd><p><a href="systemd-journal-remote.html"><span class="citerefentry"><span class="refentrytitle">systemd-journal-remote</span>(8)</span></a></p></dd><dt id="-EADDRINUSE"><span class="term"><code class="varname">-EADDRINUSE</code></span><a class="headerlink" title="Permalink to this term" href="#-EADDRINUSE">¶</a></dt><dd><p><a href="sd_bus_request_name.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_request_name</span>(3)</span></a></p></dd><dt id="-EALREADY"><span class="term"><code class="varname">-EALREADY</code></span><a class="headerlink" title="Permalink to this term" href="#-EALREADY">¶</a></dt><dd><p><a href="sd_bus_request_name.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_request_name</span>(3)</span></a></p></dd><dt id="-ECHILD"><span class="term"><code class="constant">-ECHILD</code></span><a class="headerlink" title="Permalink to this term" href="#-ECHILD">¶</a></dt><dd><p><a href="sd_bus_request_name.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_request_name</span>(3)</span></a>, <a href="sd_event_add_time.html"><span class="citerefentry"><span class="refentrytitle">sd_event_add_time</span>(3)</span></a></p></dd><dt id="-EEXIST"><span class="term"><code class="varname">-EEXIST</code></span><a class="headerlink" title="Permalink to this term" href="#-EEXIST">¶</a></dt><dd><p><a href="sd_bus_request_name.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_request_name</span>(3)</span></a></p></dd><dt id="-EINVAL"><span class="term"><code class="varname">-EINVAL</code></span><a class="headerlink" title="Permalink to this term" href="#-EINVAL">¶</a></dt><dd><p><a href="sd_bus_creds_get_pid.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_creds_get_pid</span>(3)</span></a>, <a href="sd_bus_creds_new_from_pid.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_creds_new_from_pid</span>(3)</span></a>, <a href="sd_bus_error.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_error</span>(3)</span></a>, <a href="sd_bus_message_append.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_message_append</span>(3)</span></a>, <a href="sd_bus_message_append_array.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_message_append_array</span>(3)</span></a>, <a href="sd_bus_message_append_basic.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_message_append_basic</span>(3)</span></a>, <a href="sd_bus_message_append_string_memfd.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_message_append_string_memfd</span>(3)</span></a>, <a href="sd_bus_message_append_strv.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_message_append_strv</span>(3)</span></a>, <a href="sd_bus_message_get_cookie.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_message_get_cookie</span>(3)</span></a>, <a href="sd_bus_message_get_monotonic_usec.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_message_get_monotonic_usec</span>(3)</span></a>, <a href="sd_bus_open_user.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_open_user</span>(3)</span></a>, <a href="sd_bus_request_name.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_request_name</span>(3)</span></a>, <a href="sd_event_add_time.html"><span class="citerefentry"><span class="refentrytitle">sd_event_add_time</span>(3)</span></a></p></dd><dt id="-EMFILE"><span class="term"><code class="varname">-EMFILE</code></span><a class="headerlink" title="Permalink to this term" href="#-EMFILE">¶</a></dt><dd><p><a href="sd_event_new.html"><span class="citerefentry"><span class="refentrytitle">sd_event_new</span>(3)</span></a></p></dd><dt id="-ENODATA"><span class="term"><code class="constant">-ENODATA</code></span><a class="headerlink" title="Permalink to this term" href="#-ENODATA">¶</a></dt><dd><p><a href="sd_bus_creds_get_pid.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_creds_get_pid</span>(3)</span></a>, <a href="sd_bus_message_get_cookie.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_message_get_cookie</span>(3)</span></a>, <a href="sd_bus_message_get_monotonic_usec.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_message_get_monotonic_usec</span>(3)</span></a></p></dd><dt id="-ENOENT"><span class="term"><code class="varname">-ENOENT</code></span><a class="headerlink" title="Permalink to this term" href="#-ENOENT">¶</a></dt><dd><p><a href="sd_bus_creds_get_pid.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_creds_get_pid</span>(3)</span></a></p></dd><dt id="-ENOMEM"><span class="term"><code class="varname">-ENOMEM</code></span><a class="headerlink" title="Permalink to this term" href="#-ENOMEM">¶</a></dt><dd><p><a href="sd_bus_creds_get_pid.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_creds_get_pid</span>(3)</span></a>, <a href="sd_bus_creds_new_from_pid.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_creds_new_from_pid</span>(3)</span></a>, <a href="sd_bus_error.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_error</span>(3)</span></a>, <a href="sd_bus_message_append.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_message_append</span>(3)</span></a>, <a href="sd_bus_message_append_array.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_message_append_array</span>(3)</span></a>, <a href="sd_bus_message_append_basic.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_message_append_basic</span>(3)</span></a>, <a href="sd_bus_message_append_string_memfd.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_message_append_string_memfd</span>(3)</span></a>, <a href="sd_bus_message_append_strv.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_message_append_strv</span>(3)</span></a>, <a href="sd_bus_new.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_new</span>(3)</span></a>, <a href="sd_bus_open_user.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_open_user</span>(3)</span></a>, <a href="sd_event_add_time.html"><span class="citerefentry"><span class="refentrytitle">sd_event_add_time</span>(3)</span></a>, <a href="sd_event_new.html"><span class="citerefentry"><span class="refentrytitle">sd_event_new</span>(3)</span></a></p></dd><dt id="-ENOTCONN"><span class="term"><code class="varname">-ENOTCONN</code></span><a class="headerlink" title="Permalink to this term" href="#-ENOTCONN">¶</a></dt><dd><p><a href="sd_bus_request_name.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_request_name</span>(3)</span></a></p></dd><dt id="-ENOTSUP"><span class="term"><code class="varname">-ENOTSUP</code></span><a class="headerlink" title="Permalink to this term" href="#-ENOTSUP">¶</a></dt><dd><p><a href="sd_event_add_time.html"><span class="citerefentry"><span class="refentrytitle">sd_event_add_time</span>(3)</span></a></p></dd><dt id="-ENXIO"><span class="term"><code class="constant">-ENXIO</code></span><a class="headerlink" title="Permalink to this term" href="#-ENXIO">¶</a></dt><dd><p><a href="sd_bus_creds_get_pid.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_creds_get_pid</span>(3)</span></a>, <a href="sd_bus_message_append.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_message_append</span>(3)</span></a>, <a href="sd_bus_message_append_array.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_message_append_array</span>(3)</span></a>, <a href="sd_bus_message_append_basic.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_message_append_basic</span>(3)</span></a>, <a href="sd_bus_message_append_string_memfd.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_message_append_string_memfd</span>(3)</span></a>, <a href="sd_bus_message_append_strv.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_message_append_strv</span>(3)</span></a></p></dd><dt id="-EPERM"><span class="term"><code class="varname">-EPERM</code></span><a class="headerlink" title="Permalink to this term" href="#-EPERM">¶</a></dt><dd><p><a href="sd_bus_message_append.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_message_append</span>(3)</span></a>, <a href="sd_bus_message_append_array.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_message_append_array</span>(3)</span></a>, <a href="sd_bus_message_append_basic.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_message_append_basic</span>(3)</span></a>, <a href="sd_bus_message_append_string_memfd.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_message_append_string_memfd</span>(3)</span></a>, <a href="sd_bus_message_append_strv.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_message_append_strv</span>(3)</span></a>, <a href="sd_bus_negotiate_fds.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_negotiate_fds</span>(3)</span></a></p></dd><dt id="-ESRCH"><span class="term"><code class="varname">-ESRCH</code></span><a class="headerlink" title="Permalink to this term" href="#-ESRCH">¶</a></dt><dd><p><a href="sd_bus_creds_new_from_pid.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_creds_new_from_pid</span>(3)</span></a>, <a href="sd_bus_request_name.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_request_name</span>(3)</span></a></p></dd><dt id="-ESTALE"><span class="term"><code class="varname">-ESTALE</code></span><a class="headerlink" title="Permalink to this term" href="#-ESTALE">¶</a></dt><dd><p><a href="sd_bus_message_append.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_message_append</span>(3)</span></a>, <a href="sd_bus_message_append_array.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_message_append_array</span>(3)</span></a>, <a href="sd_bus_message_append_basic.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_message_append_basic</span>(3)</span></a>, <a href="sd_bus_message_append_string_memfd.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_message_append_string_memfd</span>(3)</span></a>, <a href="sd_bus_message_append_strv.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_message_append_strv</span>(3)</span></a>, <a href="sd_event_add_time.html"><span class="citerefentry"><span class="refentrytitle">sd_event_add_time</span>(3)</span></a></p></dd><dt id="ANSI_COLOR="><span class="term"><code class="varname">ANSI_COLOR=</code></span><a class="headerlink" title="Permalink to this term" href="#ANSI_COLOR=">¶</a></dt><dd><p><a href="os-release.html"><span class="citerefentry"><span class="refentrytitle">os-release</span>(5)</span></a></p></dd><dt id="BUG_REPORT_URL="><span class="term"><code class="varname">BUG_REPORT_URL=</code></span><a class="headerlink" title="Permalink to this term" href="#BUG_REPORT_URL=">¶</a></dt><dd><p><a href="os-release.html"><span class="citerefentry"><span class="refentrytitle">os-release</span>(5)</span></a></p></dd><dt id="BUILD_ID="><span class="term"><code class="varname">BUILD_ID=</code></span><a class="headerlink" title="Permalink to this term" href="#BUILD_ID=">¶</a></dt><dd><p><a href="os-release.html"><span class="citerefentry"><span class="refentrytitle">os-release</span>(5)</span></a></p></dd><dt id="C"><span class="term"><code class="varname">C</code></span><a class="headerlink" title="Permalink to this term" href="#C">¶</a></dt><dd><p><a href="tmpfiles.d.html"><span class="citerefentry"><span class="refentrytitle">tmpfiles.d</span>(5)</span></a></p></dd><dt id="CHASSIS="><span class="term"><code class="varname">CHASSIS=</code></span><a class="headerlink" title="Permalink to this term" href="#CHASSIS=">¶</a></dt><dd><p><a href="machine-info.html"><span class="citerefentry"><span class="refentrytitle">machine-info</span>(5)</span></a></p></dd><dt id="CPE_NAME="><span class="term"><code class="varname">CPE_NAME=</code></span><a class="headerlink" title="Permalink to this term" href="#CPE_NAME=">¶</a></dt><dd><p><a href="os-release.html"><span class="citerefentry"><span class="refentrytitle">os-release</span>(5)</span></a></p></dd><dt id="Compress="><span class="term"><code class="varname">Compress=</code></span><a class="headerlink" title="Permalink to this term" href="#Compress=">¶</a></dt><dd><p><a href="coredump.conf.html"><span class="citerefentry"><span class="refentrytitle">coredump.conf</span>(5)</span></a>, <a href="journald.conf.html"><span class="citerefentry"><span class="refentrytitle">journald.conf</span>(5)</span></a></p></dd><dt id="D"><span class="term"><code class="varname">D</code></span><a class="headerlink" title="Permalink to this term" href="#D">¶</a></dt><dd><p><a href="tmpfiles.d.html"><span class="citerefentry"><span class="refentrytitle">tmpfiles.d</span>(5)</span></a></p></dd><dt id="ExternalSizeMax="><span class="term"><code class="varname">ExternalSizeMax=</code></span><a class="headerlink" title="Permalink to this term" href="#ExternalSizeMax=">¶</a></dt><dd><p><a href="coredump.conf.html"><span class="citerefentry"><span class="refentrytitle">coredump.conf</span>(5)</span></a></p></dd><dt id="F"><span class="term"><code class="varname">F</code></span><a class="headerlink" title="Permalink to this term" href="#F">¶</a></dt><dd><p><a href="tmpfiles.d.html"><span class="citerefentry"><span class="refentrytitle">tmpfiles.d</span>(5)</span></a></p></dd><dt id="FONT="><span class="term"><code class="varname">FONT=</code></span><a class="headerlink" title="Permalink to this term" href="#FONT=">¶</a></dt><dd><p><a href="vconsole.conf.html"><span class="citerefentry"><span class="refentrytitle">vconsole.conf</span>(5)</span></a></p></dd><dt id="FONT_MAP="><span class="term"><code class="varname">FONT_MAP=</code></span><a class="headerlink" title="Permalink to this term" href="#FONT_MAP=">¶</a></dt><dd><p><a href="vconsole.conf.html"><span class="citerefentry"><span class="refentrytitle">vconsole.conf</span>(5)</span></a></p></dd><dt id="FONT_UNIMAP="><span class="term"><code class="varname">FONT_UNIMAP=</code></span><a class="headerlink" title="Permalink to this term" href="#FONT_UNIMAP=">¶</a></dt><dd><p><a href="vconsole.conf.html"><span class="citerefentry"><span class="refentrytitle">vconsole.conf</span>(5)</span></a></p></dd><dt id="ForwardToConsole="><span class="term"><code class="varname">ForwardToConsole=</code></span><a class="headerlink" title="Permalink to this term" href="#ForwardToConsole=">¶</a></dt><dd><p><a href="journald.conf.html"><span class="citerefentry"><span class="refentrytitle">journald.conf</span>(5)</span></a></p></dd><dt id="ForwardToKMsg="><span class="term"><code class="varname">ForwardToKMsg=</code></span><a class="headerlink" title="Permalink to this term" href="#ForwardToKMsg=">¶</a></dt><dd><p><a href="journald.conf.html"><span class="citerefentry"><span class="refentrytitle">journald.conf</span>(5)</span></a></p></dd><dt id="ForwardToSyslog="><span class="term"><code class="varname">ForwardToSyslog=</code></span><a class="headerlink" title="Permalink to this term" href="#ForwardToSyslog=">¶</a></dt><dd><p><a href="journald.conf.html"><span class="citerefentry"><span class="refentrytitle">journald.conf</span>(5)</span></a></p></dd><dt id="ForwardToWall="><span class="term"><code class="varname">ForwardToWall=</code></span><a class="headerlink" title="Permalink to this term" href="#ForwardToWall=">¶</a></dt><dd><p><a href="journald.conf.html"><span class="citerefentry"><span class="refentrytitle">journald.conf</span>(5)</span></a></p></dd><dt id="HOME_URL="><span class="term"><code class="varname">HOME_URL=</code></span><a class="headerlink" title="Permalink to this term" href="#HOME_URL=">¶</a></dt><dd><p><a href="os-release.html"><span class="citerefentry"><span class="refentrytitle">os-release</span>(5)</span></a></p></dd><dt id="HandleHibernateKey="><span class="term"><code class="varname">HandleHibernateKey=</code></span><a class="headerlink" title="Permalink to this term" href="#HandleHibernateKey=">¶</a></dt><dd><p><a href="logind.conf.html"><span class="citerefentry"><span class="refentrytitle">logind.conf</span>(5)</span></a></p></dd><dt id="HandleLidSwitch="><span class="term"><code class="varname">HandleLidSwitch=</code></span><a class="headerlink" title="Permalink to this term" href="#HandleLidSwitch=">¶</a></dt><dd><p><a href="logind.conf.html"><span class="citerefentry"><span class="refentrytitle">logind.conf</span>(5)</span></a></p></dd><dt id="HandlePowerKey="><span class="term"><code class="varname">HandlePowerKey=</code></span><a class="headerlink" title="Permalink to this term" href="#HandlePowerKey=">¶</a></dt><dd><p><a href="logind.conf.html"><span class="citerefentry"><span class="refentrytitle">logind.conf</span>(5)</span></a></p></dd><dt id="HandleSuspendKey="><span class="term"><code class="varname">HandleSuspendKey=</code></span><a class="headerlink" title="Permalink to this term" href="#HandleSuspendKey=">¶</a></dt><dd><p><a href="logind.conf.html"><span class="citerefentry"><span class="refentrytitle">logind.conf</span>(5)</span></a></p></dd><dt id="HibernateKeyIgnoreInhibited="><span class="term"><code class="varname">HibernateKeyIgnoreInhibited=</code></span><a class="headerlink" title="Permalink to this term" href="#HibernateKeyIgnoreInhibited=">¶</a></dt><dd><p><a href="logind.conf.html"><span class="citerefentry"><span class="refentrytitle">logind.conf</span>(5)</span></a></p></dd><dt id="ICON_NAME="><span class="term"><code class="varname">ICON_NAME=</code></span><a class="headerlink" title="Permalink to this term" href="#ICON_NAME=">¶</a></dt><dd><p><a href="machine-info.html"><span class="citerefentry"><span class="refentrytitle">machine-info</span>(5)</span></a></p></dd><dt id="ID="><span class="term"><code class="varname">ID=</code></span><a class="headerlink" title="Permalink to this term" href="#ID=">¶</a></dt><dd><p><a href="os-release.html"><span class="citerefentry"><span class="refentrytitle">os-release</span>(5)</span></a></p></dd><dt id="ID_LIKE="><span class="term"><code class="varname">ID_LIKE=</code></span><a class="headerlink" title="Permalink to this term" href="#ID_LIKE=">¶</a></dt><dd><p><a href="os-release.html"><span class="citerefentry"><span class="refentrytitle">os-release</span>(5)</span></a></p></dd><dt id="IdleAction="><span class="term"><code class="varname">IdleAction=</code></span><a class="headerlink" title="Permalink to this term" href="#IdleAction=">¶</a></dt><dd><p><a href="logind.conf.html"><span class="citerefentry"><span class="refentrytitle">logind.conf</span>(5)</span></a></p></dd><dt id="IdleActionSec="><span class="term"><code class="varname">IdleActionSec=</code></span><a class="headerlink" title="Permalink to this term" href="#IdleActionSec=">¶</a></dt><dd><p><a href="logind.conf.html"><span class="citerefentry"><span class="refentrytitle">logind.conf</span>(5)</span></a></p></dd><dt id="InhibitDelayMaxSec="><span class="term"><code class="varname">InhibitDelayMaxSec=</code></span><a class="headerlink" title="Permalink to this term" href="#InhibitDelayMaxSec=">¶</a></dt><dd><p><a href="logind.conf.html"><span class="citerefentry"><span class="refentrytitle">logind.conf</span>(5)</span></a></p></dd><dt id="JournalSizeMax="><span class="term"><code class="varname">JournalSizeMax=</code></span><a class="headerlink" title="Permalink to this term" href="#JournalSizeMax=">¶</a></dt><dd><p><a href="coredump.conf.html"><span class="citerefentry"><span class="refentrytitle">coredump.conf</span>(5)</span></a></p></dd><dt id="KEYMAP="><span class="term"><code class="varname">KEYMAP=</code></span><a class="headerlink" title="Permalink to this term" href="#KEYMAP=">¶</a></dt><dd><p><a href="vconsole.conf.html"><span class="citerefentry"><span class="refentrytitle">vconsole.conf</span>(5)</span></a></p></dd><dt id="KEYMAP_TOGGLE="><span class="term"><code class="varname">KEYMAP_TOGGLE=</code></span><a class="headerlink" title="Permalink to this term" href="#KEYMAP_TOGGLE=">¶</a></dt><dd><p><a href="vconsole.conf.html"><span class="citerefentry"><span class="refentrytitle">vconsole.conf</span>(5)</span></a></p></dd><dt id="KeepFree="><span class="term"><code class="varname">KeepFree=</code></span><a class="headerlink" title="Permalink to this term" href="#KeepFree=">¶</a></dt><dd><p><a href="coredump.conf.html"><span class="citerefentry"><span class="refentrytitle">coredump.conf</span>(5)</span></a></p></dd><dt id="KillExcludeUsers="><span class="term"><code class="varname">KillExcludeUsers=</code></span><a class="headerlink" title="Permalink to this term" href="#KillExcludeUsers=">¶</a></dt><dd><p><a href="logind.conf.html"><span class="citerefentry"><span class="refentrytitle">logind.conf</span>(5)</span></a></p></dd><dt id="KillOnlyUsers="><span class="term"><code class="varname">KillOnlyUsers=</code></span><a class="headerlink" title="Permalink to this term" href="#KillOnlyUsers=">¶</a></dt><dd><p><a href="logind.conf.html"><span class="citerefentry"><span class="refentrytitle">logind.conf</span>(5)</span></a></p></dd><dt id="KillUserProcesses="><span class="term"><code class="varname">KillUserProcesses=</code></span><a class="headerlink" title="Permalink to this term" href="#KillUserProcesses=">¶</a></dt><dd><p><a href="logind.conf.html"><span class="citerefentry"><span class="refentrytitle">logind.conf</span>(5)</span></a></p></dd><dt id="L"><span class="term"><code class="varname">L</code></span><a class="headerlink" title="Permalink to this term" href="#L">¶</a></dt><dd><p><a href="tmpfiles.d.html"><span class="citerefentry"><span class="refentrytitle">tmpfiles.d</span>(5)</span></a></p></dd><dt id="L+"><span class="term"><code class="varname">L+</code></span><a class="headerlink" title="Permalink to this term" href="#L+">¶</a></dt><dd><p><a href="tmpfiles.d.html"><span class="citerefentry"><span class="refentrytitle">tmpfiles.d</span>(5)</span></a></p></dd><dt id="LidSwitchIgnoreInhibited="><span class="term"><code class="varname">LidSwitchIgnoreInhibited=</code></span><a class="headerlink" title="Permalink to this term" href="#LidSwitchIgnoreInhibited=">¶</a></dt><dd><p><a href="logind.conf.html"><span class="citerefentry"><span class="refentrytitle">logind.conf</span>(5)</span></a></p></dd><dt id="MaxFileSec="><span class="term"><code class="varname">MaxFileSec=</code></span><a class="headerlink" title="Permalink to this term" href="#MaxFileSec=">¶</a></dt><dd><p><a href="journald.conf.html"><span class="citerefentry"><span class="refentrytitle">journald.conf</span>(5)</span></a></p></dd><dt id="MaxLevelConsole="><span class="term"><code class="varname">MaxLevelConsole=</code></span><a class="headerlink" title="Permalink to this term" href="#MaxLevelConsole=">¶</a></dt><dd><p><a href="journald.conf.html"><span class="citerefentry"><span class="refentrytitle">journald.conf</span>(5)</span></a></p></dd><dt id="MaxLevelKMsg="><span class="term"><code class="varname">MaxLevelKMsg=</code></span><a class="headerlink" title="Permalink to this term" href="#MaxLevelKMsg=">¶</a></dt><dd><p><a href="journald.conf.html"><span class="citerefentry"><span class="refentrytitle">journald.conf</span>(5)</span></a></p></dd><dt id="MaxLevelStore="><span class="term"><code class="varname">MaxLevelStore=</code></span><a class="headerlink" title="Permalink to this term" href="#MaxLevelStore=">¶</a></dt><dd><p><a href="journald.conf.html"><span class="citerefentry"><span class="refentrytitle">journald.conf</span>(5)</span></a></p></dd><dt id="MaxLevelSyslog="><span class="term"><code class="varname">MaxLevelSyslog=</code></span><a class="headerlink" title="Permalink to this term" href="#MaxLevelSyslog=">¶</a></dt><dd><p><a href="journald.conf.html"><span class="citerefentry"><span class="refentrytitle">journald.conf</span>(5)</span></a></p></dd><dt id="MaxLevelWall="><span class="term"><code class="varname">MaxLevelWall=</code></span><a class="headerlink" title="Permalink to this term" href="#MaxLevelWall=">¶</a></dt><dd><p><a href="journald.conf.html"><span class="citerefentry"><span class="refentrytitle">journald.conf</span>(5)</span></a></p></dd><dt id="MaxRetentionSec="><span class="term"><code class="varname">MaxRetentionSec=</code></span><a class="headerlink" title="Permalink to this term" href="#MaxRetentionSec=">¶</a></dt><dd><p><a href="journald.conf.html"><span class="citerefentry"><span class="refentrytitle">journald.conf</span>(5)</span></a></p></dd><dt id="MaxUse="><span class="term"><code class="varname">MaxUse=</code></span><a class="headerlink" title="Permalink to this term" href="#MaxUse=">¶</a></dt><dd><p><a href="coredump.conf.html"><span class="citerefentry"><span class="refentrytitle">coredump.conf</span>(5)</span></a></p></dd><dt id="NAME="><span class="term"><code class="varname">NAME=</code></span><a class="headerlink" title="Permalink to this term" href="#NAME=">¶</a></dt><dd><p><a href="os-release.html"><span class="citerefentry"><span class="refentrytitle">os-release</span>(5)</span></a></p></dd><dt id="NAutoVTs="><span class="term"><code class="varname">NAutoVTs=</code></span><a class="headerlink" title="Permalink to this term" href="#NAutoVTs=">¶</a></dt><dd><p><a href="logind.conf.html"><span class="citerefentry"><span class="refentrytitle">logind.conf</span>(5)</span></a></p></dd><dt id="PRETTY_HOSTNAME="><span class="term"><code class="varname">PRETTY_HOSTNAME=</code></span><a class="headerlink" title="Permalink to this term" href="#PRETTY_HOSTNAME=">¶</a></dt><dd><p><a href="machine-info.html"><span class="citerefentry"><span class="refentrytitle">machine-info</span>(5)</span></a></p></dd><dt id="PRETTY_NAME="><span class="term"><code class="varname">PRETTY_NAME=</code></span><a class="headerlink" title="Permalink to this term" href="#PRETTY_NAME=">¶</a></dt><dd><p><a href="os-release.html"><span class="citerefentry"><span class="refentrytitle">os-release</span>(5)</span></a></p></dd><dt id="PowerKeyIgnoreInhibited="><span class="term"><code class="varname">PowerKeyIgnoreInhibited=</code></span><a class="headerlink" title="Permalink to this term" href="#PowerKeyIgnoreInhibited=">¶</a></dt><dd><p><a href="logind.conf.html"><span class="citerefentry"><span class="refentrytitle">logind.conf</span>(5)</span></a></p></dd><dt id="ProcessSizeMax="><span class="term"><code class="varname">ProcessSizeMax=</code></span><a class="headerlink" title="Permalink to this term" href="#ProcessSizeMax=">¶</a></dt><dd><p><a href="coredump.conf.html"><span class="citerefentry"><span class="refentrytitle">coredump.conf</span>(5)</span></a></p></dd><dt id="R"><span class="term"><code class="varname">R</code></span><a class="headerlink" title="Permalink to this term" href="#R">¶</a></dt><dd><p><a href="tmpfiles.d.html"><span class="citerefentry"><span class="refentrytitle">tmpfiles.d</span>(5)</span></a></p></dd><dt id="RateLimitBurst="><span class="term"><code class="varname">RateLimitBurst=</code></span><a class="headerlink" title="Permalink to this term" href="#RateLimitBurst=">¶</a></dt><dd><p><a href="journald.conf.html"><span class="citerefentry"><span class="refentrytitle">journald.conf</span>(5)</span></a></p></dd><dt id="RateLimitInterval="><span class="term"><code class="varname">RateLimitInterval=</code></span><a class="headerlink" title="Permalink to this term" href="#RateLimitInterval=">¶</a></dt><dd><p><a href="journald.conf.html"><span class="citerefentry"><span class="refentrytitle">journald.conf</span>(5)</span></a></p></dd><dt id="RemoveIPC="><span class="term"><code class="varname">RemoveIPC=</code></span><a class="headerlink" title="Permalink to this term" href="#RemoveIPC=">¶</a></dt><dd><p><a href="logind.conf.html"><span class="citerefentry"><span class="refentrytitle">logind.conf</span>(5)</span></a></p></dd><dt id="ReserveVT="><span class="term"><code class="varname">ReserveVT=</code></span><a class="headerlink" title="Permalink to this term" href="#ReserveVT=">¶</a></dt><dd><p><a href="logind.conf.html"><span class="citerefentry"><span class="refentrytitle">logind.conf</span>(5)</span></a></p></dd><dt id="RuntimeDirectorySize="><span class="term"><code class="varname">RuntimeDirectorySize=</code></span><a class="headerlink" title="Permalink to this term" href="#RuntimeDirectorySize=">¶</a></dt><dd><p><a href="logind.conf.html"><span class="citerefentry"><span class="refentrytitle">logind.conf</span>(5)</span></a></p></dd><dt id="RuntimeKeepFree="><span class="term"><code class="varname">RuntimeKeepFree=</code></span><a class="headerlink" title="Permalink to this term" href="#RuntimeKeepFree=">¶</a></dt><dd><p><a href="journald.conf.html"><span class="citerefentry"><span class="refentrytitle">journald.conf</span>(5)</span></a></p></dd><dt id="RuntimeMaxFileSize="><span class="term"><code class="varname">RuntimeMaxFileSize=</code></span><a class="headerlink" title="Permalink to this term" href="#RuntimeMaxFileSize=">¶</a></dt><dd><p><a href="journald.conf.html"><span class="citerefentry"><span class="refentrytitle">journald.conf</span>(5)</span></a></p></dd><dt id="RuntimeMaxUse="><span class="term"><code class="varname">RuntimeMaxUse=</code></span><a class="headerlink" title="Permalink to this term" href="#RuntimeMaxUse=">¶</a></dt><dd><p><a href="journald.conf.html"><span class="citerefentry"><span class="refentrytitle">journald.conf</span>(5)</span></a></p></dd><dt id="SD_BUS_NAME_ALLOW_REPLACEMENT"><span class="term"><code class="varname">SD_BUS_NAME_ALLOW_REPLACEMENT</code></span><a class="headerlink" title="Permalink to this term" href="#SD_BUS_NAME_ALLOW_REPLACEMENT">¶</a></dt><dd><p><a href="sd_bus_request_name.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_request_name</span>(3)</span></a></p></dd><dt id="SD_BUS_NAME_QUEUE"><span class="term"><code class="varname">SD_BUS_NAME_QUEUE</code></span><a class="headerlink" title="Permalink to this term" href="#SD_BUS_NAME_QUEUE">¶</a></dt><dd><p><a href="sd_bus_request_name.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_request_name</span>(3)</span></a></p></dd><dt id="SD_BUS_NAME_REPLACE_EXISTING"><span class="term"><code class="varname">SD_BUS_NAME_REPLACE_EXISTING</code></span><a class="headerlink" title="Permalink to this term" href="#SD_BUS_NAME_REPLACE_EXISTING">¶</a></dt><dd><p><a href="sd_bus_request_name.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_request_name</span>(3)</span></a></p></dd><dt id="SUPPORT_URL="><span class="term"><code class="varname">SUPPORT_URL=</code></span><a class="headerlink" title="Permalink to this term" href="#SUPPORT_URL=">¶</a></dt><dd><p><a href="os-release.html"><span class="citerefentry"><span class="refentrytitle">os-release</span>(5)</span></a></p></dd><dt id="Seal="><span class="term"><code class="varname">Seal=</code></span><a class="headerlink" title="Permalink to this term" href="#Seal=">¶</a></dt><dd><p><a href="journald.conf.html"><span class="citerefentry"><span class="refentrytitle">journald.conf</span>(5)</span></a></p></dd><dt id="SplitMode="><span class="term"><code class="varname">SplitMode=</code></span><a class="headerlink" title="Permalink to this term" href="#SplitMode=">¶</a></dt><dd><p><a href="journald.conf.html"><span class="citerefentry"><span class="refentrytitle">journald.conf</span>(5)</span></a></p></dd><dt id="Storage="><span class="term"><code class="varname">Storage=</code></span><a class="headerlink" title="Permalink to this term" href="#Storage=">¶</a></dt><dd><p><a href="coredump.conf.html"><span class="citerefentry"><span class="refentrytitle">coredump.conf</span>(5)</span></a>, <a href="journald.conf.html"><span class="citerefentry"><span class="refentrytitle">journald.conf</span>(5)</span></a></p></dd><dt id="SuspendKeyIgnoreInhibited="><span class="term"><code class="varname">SuspendKeyIgnoreInhibited=</code></span><a class="headerlink" title="Permalink to this term" href="#SuspendKeyIgnoreInhibited=">¶</a></dt><dd><p><a href="logind.conf.html"><span class="citerefentry"><span class="refentrytitle">logind.conf</span>(5)</span></a></p></dd><dt id="SyncIntervalSec="><span class="term"><code class="varname">SyncIntervalSec=</code></span><a class="headerlink" title="Permalink to this term" href="#SyncIntervalSec=">¶</a></dt><dd><p><a href="journald.conf.html"><span class="citerefentry"><span class="refentrytitle">journald.conf</span>(5)</span></a></p></dd><dt id="SystemKeepFree="><span class="term"><code class="varname">SystemKeepFree=</code></span><a class="headerlink" title="Permalink to this term" href="#SystemKeepFree=">¶</a></dt><dd><p><a href="journald.conf.html"><span class="citerefentry"><span class="refentrytitle">journald.conf</span>(5)</span></a></p></dd><dt id="SystemMaxFileSize="><span class="term"><code class="varname">SystemMaxFileSize=</code></span><a class="headerlink" title="Permalink to this term" href="#SystemMaxFileSize=">¶</a></dt><dd><p><a href="journald.conf.html"><span class="citerefentry"><span class="refentrytitle">journald.conf</span>(5)</span></a></p></dd><dt id="SystemMaxUse="><span class="term"><code class="varname">SystemMaxUse=</code></span><a class="headerlink" title="Permalink to this term" href="#SystemMaxUse=">¶</a></dt><dd><p><a href="journald.conf.html"><span class="citerefentry"><span class="refentrytitle">journald.conf</span>(5)</span></a></p></dd><dt id="TTYPath="><span class="term"><code class="varname">TTYPath=</code></span><a class="headerlink" title="Permalink to this term" href="#TTYPath=">¶</a></dt><dd><p><a href="journald.conf.html"><span class="citerefentry"><span class="refentrytitle">journald.conf</span>(5)</span></a></p></dd><dt id="VERSION="><span class="term"><code class="varname">VERSION=</code></span><a class="headerlink" title="Permalink to this term" href="#VERSION=">¶</a></dt><dd><p><a href="os-release.html"><span class="citerefentry"><span class="refentrytitle">os-release</span>(5)</span></a></p></dd><dt id="VERSION_ID="><span class="term"><code class="varname">VERSION_ID=</code></span><a class="headerlink" title="Permalink to this term" href="#VERSION_ID=">¶</a></dt><dd><p><a href="os-release.html"><span class="citerefentry"><span class="refentrytitle">os-release</span>(5)</span></a></p></dd><dt id="X"><span class="term"><code class="varname">X</code></span><a class="headerlink" title="Permalink to this term" href="#X">¶</a></dt><dd><p><a href="tmpfiles.d.html"><span class="citerefentry"><span class="refentrytitle">tmpfiles.d</span>(5)</span></a></p></dd><dt id="Z"><span class="term"><code class="varname">Z</code></span><a class="headerlink" title="Permalink to this term" href="#Z">¶</a></dt><dd><p><a href="tmpfiles.d.html"><span class="citerefentry"><span class="refentrytitle">tmpfiles.d</span>(5)</span></a></p></dd><dt id="b"><span class="term"><code class="varname">b</code></span><a class="headerlink" title="Permalink to this term" href="#b">¶</a></dt><dd><p><a href="tmpfiles.d.html"><span class="citerefentry"><span class="refentrytitle">tmpfiles.d</span>(5)</span></a></p></dd><dt id="b+"><span class="term"><code class="varname">b+</code></span><a class="headerlink" title="Permalink to this term" href="#b+">¶</a></dt><dd><p><a href="tmpfiles.d.html"><span class="citerefentry"><span class="refentrytitle">tmpfiles.d</span>(5)</span></a></p></dd><dt id="c"><span class="term"><code class="varname">c</code></span><a class="headerlink" title="Permalink to this term" href="#c">¶</a></dt><dd><p><a href="tmpfiles.d.html"><span class="citerefentry"><span class="refentrytitle">tmpfiles.d</span>(5)</span></a></p></dd><dt id="c+"><span class="term"><code class="varname">c+</code></span><a class="headerlink" title="Permalink to this term" href="#c+">¶</a></dt><dd><p><a href="tmpfiles.d.html"><span class="citerefentry"><span class="refentrytitle">tmpfiles.d</span>(5)</span></a></p></dd><dt id="d"><span class="term"><code class="varname">d</code></span><a class="headerlink" title="Permalink to this term" href="#d">¶</a></dt><dd><p><a href="tmpfiles.d.html"><span class="citerefentry"><span class="refentrytitle">tmpfiles.d</span>(5)</span></a></p></dd><dt id="equivalent"><span class="term"><code class="varname">equivalent</code></span><a class="headerlink" title="Permalink to this term" href="#equivalent">¶</a></dt><dd><p><a href="systemd-delta.html"><span class="citerefentry"><span class="refentrytitle">systemd-delta</span>(1)</span></a></p></dd><dt id="extended"><span class="term"><code class="varname">extended</code></span><a class="headerlink" title="Permalink to this term" href="#extended">¶</a></dt><dd><p><a href="systemd-delta.html"><span class="citerefentry"><span class="refentrytitle">systemd-delta</span>(1)</span></a></p></dd><dt id="f"><span class="term"><code class="varname">f</code></span><a class="headerlink" title="Permalink to this term" href="#f">¶</a></dt><dd><p><a href="tmpfiles.d.html"><span class="citerefentry"><span class="refentrytitle">tmpfiles.d</span>(5)</span></a></p></dd><dt id="g"><span class="term"><code class="varname">g</code></span><a class="headerlink" title="Permalink to this term" href="#g">¶</a></dt><dd><p><a href="sysusers.d.html"><span class="citerefentry"><span class="refentrytitle">sysusers.d</span>(5)</span></a></p></dd><dt id="h"><span class="term"><code class="varname">h</code></span><a class="headerlink" title="Permalink to this term" href="#h">¶</a></dt><dd><p><a href="tmpfiles.d.html"><span class="citerefentry"><span class="refentrytitle">tmpfiles.d</span>(5)</span></a></p></dd><dt id="m"><span class="term"><code class="constant">m</code></span><a class="headerlink" title="Permalink to this term" href="#m">¶</a></dt><dd><p><a href="sysusers.d.html"><span class="citerefentry"><span class="refentrytitle">sysusers.d</span>(5)</span></a>, <a href="tmpfiles.d.html"><span class="citerefentry"><span class="refentrytitle">tmpfiles.d</span>(5)</span></a></p></dd><dt id="masked"><span class="term"><code class="varname">masked</code></span><a class="headerlink" title="Permalink to this term" href="#masked">¶</a></dt><dd><p><a href="systemd-delta.html"><span class="citerefentry"><span class="refentrytitle">systemd-delta</span>(1)</span></a></p></dd><dt id="min"><span class="term"><code class="varname">min</code></span><a class="headerlink" title="Permalink to this term" href="#min">¶</a></dt><dd><p><a href="tmpfiles.d.html"><span class="citerefentry"><span class="refentrytitle">tmpfiles.d</span>(5)</span></a></p></dd><dt id="ms"><span class="term"><code class="varname">ms</code></span><a class="headerlink" title="Permalink to this term" href="#ms">¶</a></dt><dd><p><a href="tmpfiles.d.html"><span class="citerefentry"><span class="refentrytitle">tmpfiles.d</span>(5)</span></a></p></dd><dt id="overridden"><span class="term"><code class="varname">overridden</code></span><a class="headerlink" title="Permalink to this term" href="#overridden">¶</a></dt><dd><p><a href="systemd-delta.html"><span class="citerefentry"><span class="refentrytitle">systemd-delta</span>(1)</span></a></p></dd><dt id="p"><span class="term"><code class="varname">p</code></span><a class="headerlink" title="Permalink to this term" href="#p">¶</a></dt><dd><p><a href="tmpfiles.d.html"><span class="citerefentry"><span class="refentrytitle">tmpfiles.d</span>(5)</span></a></p></dd><dt id="p+"><span class="term"><code class="varname">p+</code></span><a class="headerlink" title="Permalink to this term" href="#p+">¶</a></dt><dd><p><a href="tmpfiles.d.html"><span class="citerefentry"><span class="refentrytitle">tmpfiles.d</span>(5)</span></a></p></dd><dt id="r"><span class="term"><code class="constant">r</code></span><a class="headerlink" title="Permalink to this term" href="#r">¶</a></dt><dd><p><a href="tmpfiles.d.html"><span class="citerefentry"><span class="refentrytitle">tmpfiles.d</span>(5)</span></a></p></dd><dt id="redirected"><span class="term"><code class="varname">redirected</code></span><a class="headerlink" title="Permalink to this term" href="#redirected">¶</a></dt><dd><p><a href="systemd-delta.html"><span class="citerefentry"><span class="refentrytitle">systemd-delta</span>(1)</span></a></p></dd><dt id="s"><span class="term"><code class="varname">s</code></span><a class="headerlink" title="Permalink to this term" href="#s">¶</a></dt><dd><p><a href="tmpfiles.d.html"><span class="citerefentry"><span class="refentrytitle">tmpfiles.d</span>(5)</span></a></p></dd><dt id="u"><span class="term"><code class="varname">u</code></span><a class="headerlink" title="Permalink to this term" href="#u">¶</a></dt><dd><p><a href="sysusers.d.html"><span class="citerefentry"><span class="refentrytitle">sysusers.d</span>(5)</span></a></p></dd><dt id="udev_log"><span class="term"><code class="varname">udev_log</code></span><a class="headerlink" title="Permalink to this term" href="#udev_log">¶</a></dt><dd><p><a href="systemd-udevd.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-udevd.service</span>(8)</span></a></p></dd><dt id="unchanged"><span class="term"><code class="varname">unchanged</code></span><a class="headerlink" title="Permalink to this term" href="#unchanged">¶</a></dt><dd><p><a href="systemd-delta.html"><span class="citerefentry"><span class="refentrytitle">systemd-delta</span>(1)</span></a></p></dd><dt id="us"><span class="term"><code class="varname">us</code></span><a class="headerlink" title="Permalink to this term" href="#us">¶</a></dt><dd><p><a href="tmpfiles.d.html"><span class="citerefentry"><span class="refentrytitle">tmpfiles.d</span>(5)</span></a></p></dd><dt id="w"><span class="term"><code class="constant">w</code></span><a class="headerlink" title="Permalink to this term" href="#w">¶</a></dt><dd><p><a href="tmpfiles.d.html"><span class="citerefentry"><span class="refentrytitle">tmpfiles.d</span>(5)</span></a></p></dd><dt id="x"><span class="term"><code class="varname">x</code></span><a class="headerlink" title="Permalink to this term" href="#x">¶</a></dt><dd><p><a href="tmpfiles.d.html"><span class="citerefentry"><span class="refentrytitle">tmpfiles.d</span>(5)</span></a></p></dd><dt id="z"><span class="term"><code class="varname">z</code></span><a class="headerlink" title="Permalink to this term" href="#z">¶</a></dt><dd><p><a href="tmpfiles.d.html"><span class="citerefentry"><span class="refentrytitle">tmpfiles.d</span>(5)</span></a></p></dd></dl></div></div><div class="refsect1"><a name="idm214180336896"></a><h2 id="Files and directories">Files and directories<a class="headerlink" title="Permalink to this headline" href="#Files%20and%20directories">¶</a></h2><p>Paths and file names referred to in the
+                documentation.</p><div class="variablelist"><a name="filenames"></a><dl class="variablelist"><dt id="/"><span class="term"><code class="filename">/</code></span><a class="headerlink" title="Permalink to this term" href="#/">¶</a></dt><dd><p><a href="file-hierarchy.html"><span class="citerefentry"><span class="refentrytitle">file-hierarchy</span>(7)</span></a>, <a href="systemd-gpt-auto-generator.html"><span class="citerefentry"><span class="refentrytitle">systemd-gpt-auto-generator</span>(8)</span></a>, <a href="systemd-remount-fs.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-remount-fs.service</span>(8)</span></a>, <a href="systemd.unit.html"><span class="citerefentry"><span class="refentrytitle">systemd.unit</span>(5)</span></a>, <a href="sysusers.d.html"><span class="citerefentry"><span class="refentrytitle">sysusers.d</span>(5)</span></a></p></dd><dt id="$HOME/.config/systemd/user/"><span class="term"><code class="filename">$HOME/.config/systemd/user/</code></span><a class="headerlink" title="Permalink to this term" href="#%24HOME/.config/systemd/user/">¶</a></dt><dd><p><a href="systemd.unit.html"><span class="citerefentry"><span class="refentrytitle">systemd.unit</span>(5)</span></a></p></dd><dt id="$XDG_CONFIG_HOME/systemd/user/"><span class="term"><code class="filename">$XDG_CONFIG_HOME/systemd/user/</code></span><a class="headerlink" title="Permalink to this term" href="#%24XDG_CONFIG_HOME/systemd/user/">¶</a></dt><dd><p><a href="systemd.unit.html"><span class="citerefentry"><span class="refentrytitle">systemd.unit</span>(5)</span></a></p></dd><dt id="-.slice"><span class="term"><code class="filename">-.slice</code></span><a class="headerlink" title="Permalink to this term" href="#-.slice">¶</a></dt><dd><p><a href="systemd.special.html"><span class="citerefentry"><span class="refentrytitle">systemd.special</span>(7)</span></a></p></dd><dt id="/.readahead"><span class="term"><code class="filename">/.readahead</code></span><a class="headerlink" title="Permalink to this term" href="#/.readahead">¶</a></dt><dd><p><a href="systemd-readahead-replay.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-readahead-replay.service</span>(8)</span></a></p></dd><dt id="/bin"><span class="term"><code class="filename">/bin</code></span><a class="headerlink" title="Permalink to this term" href="#/bin">¶</a></dt><dd><p><a href="file-hierarchy.html"><span class="citerefentry"><span class="refentrytitle">file-hierarchy</span>(7)</span></a>, <a href="systemd.exec.html"><span class="citerefentry"><span class="refentrytitle">systemd.exec</span>(5)</span></a></p></dd><dt id="/bin/ls"><span class="term"><code class="filename">/bin/ls</code></span><a class="headerlink" title="Permalink to this term" href="#/bin/ls">¶</a></dt><dd><p><a href="systemd-cat.html"><span class="citerefentry"><span class="refentrytitle">systemd-cat</span>(1)</span></a></p></dd><dt id="/boot"><span class="term"><code class="filename">/boot</code></span><a class="headerlink" title="Permalink to this term" href="#/boot">¶</a></dt><dd><p><a href="file-hierarchy.html"><span class="citerefentry"><span class="refentrytitle">file-hierarchy</span>(7)</span></a>, <a href="kernel-install.html"><span class="citerefentry"><span class="refentrytitle">kernel-install</span>(8)</span></a>, <a href="systemd-efi-boot-generator.html"><span class="citerefentry"><span class="refentrytitle">systemd-efi-boot-generator</span>(8)</span></a>, <a href="systemd-gpt-auto-generator.html"><span class="citerefentry"><span class="refentrytitle">systemd-gpt-auto-generator</span>(8)</span></a></p></dd><dt id="/boot/loader/entries/MACHINE-ID-KERNEL-VERSION.conf"><span class="term"><code class="filename">/boot/loader/entries/<em class="replaceable"><code>MACHINE-ID</code></em>-<em class="replaceable"><code>KERNEL-VERSION</code></em>.conf</code></span><a class="headerlink" title="Permalink to this term" href="#/boot/loader/entries/MACHINE-ID-KERNEL-VERSION.conf">¶</a></dt><dd><p><a href="kernel-install.html"><span class="citerefentry"><span class="refentrytitle">kernel-install</span>(8)</span></a></p></dd><dt id="/dev"><span class="term"><code class="filename">/dev</code></span><a class="headerlink" title="Permalink to this term" href="#/dev">¶</a></dt><dd><p><a href="file-hierarchy.html"><span class="citerefentry"><span class="refentrytitle">file-hierarchy</span>(7)</span></a>, <a href="systemd-nspawn.html"><span class="citerefentry"><span class="refentrytitle">systemd-nspawn</span>(1)</span></a>, <a href="systemd-remount-fs.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-remount-fs.service</span>(8)</span></a>, <a href="systemd.device.html"><span class="citerefentry"><span class="refentrytitle">systemd.device</span>(5)</span></a>, <a href="systemd.journal-fields.html"><span class="citerefentry"><span class="refentrytitle">systemd.journal-fields</span>(7)</span></a>, <a href="systemd.resource-control.html"><span class="citerefentry"><span class="refentrytitle">systemd.resource-control</span>(5)</span></a>, <a href="udev.html"><span class="citerefentry"><span class="refentrytitle">udev</span>(7)</span></a></p></dd><dt id="/dev/console"><span class="term"><code class="filename">/dev/console</code></span><a class="headerlink" title="Permalink to this term" href="#/dev/console">¶</a></dt><dd><p><a href="journald.conf.html"><span class="citerefentry"><span class="refentrytitle">journald.conf</span>(5)</span></a>, <a href="systemd-getty-generator.html"><span class="citerefentry"><span class="refentrytitle">systemd-getty-generator</span>(8)</span></a>, <a href="systemd-tty-ask-password-agent.html"><span class="citerefentry"><span class="refentrytitle">systemd-tty-ask-password-agent</span>(1)</span></a>, <a href="systemd.exec.html"><span class="citerefentry"><span class="refentrytitle">systemd.exec</span>(5)</span></a></p></dd><dt id="/dev/full"><span class="term"><code class="filename">/dev/full</code></span><a class="headerlink" title="Permalink to this term" href="#/dev/full">¶</a></dt><dd><p><a href="systemd.resource-control.html"><span class="citerefentry"><span class="refentrytitle">systemd.resource-control</span>(5)</span></a></p></dd><dt id="/dev/hw_random"><span class="term"><code class="filename">/dev/hw_random</code></span><a class="headerlink" title="Permalink to this term" href="#/dev/hw_random">¶</a></dt><dd><p><a href="crypttab.html"><span class="citerefentry"><span class="refentrytitle">crypttab</span>(5)</span></a></p></dd><dt id="/dev/initctl"><span class="term"><code class="filename">/dev/initctl</code></span><a class="headerlink" title="Permalink to this term" href="#/dev/initctl">¶</a></dt><dd><p><a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>, <a href="systemd-initctl.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-initctl.service</span>(8)</span></a></p></dd><dt id="/dev/mapper/"><span class="term"><code class="filename">/dev/mapper/</code></span><a class="headerlink" title="Permalink to this term" href="#/dev/mapper/">¶</a></dt><dd><p><a href="crypttab.html"><span class="citerefentry"><span class="refentrytitle">crypttab</span>(5)</span></a></p></dd><dt id="/dev/mapper/home"><span class="term"><code class="filename">/dev/mapper/home</code></span><a class="headerlink" title="Permalink to this term" href="#/dev/mapper/home">¶</a></dt><dd><p><a href="systemd-gpt-auto-generator.html"><span class="citerefentry"><span class="refentrytitle">systemd-gpt-auto-generator</span>(8)</span></a></p></dd><dt id="/dev/mapper/srv"><span class="term"><code class="filename">/dev/mapper/srv</code></span><a class="headerlink" title="Permalink to this term" href="#/dev/mapper/srv">¶</a></dt><dd><p><a href="systemd-gpt-auto-generator.html"><span class="citerefentry"><span class="refentrytitle">systemd-gpt-auto-generator</span>(8)</span></a></p></dd><dt id="/dev/net/tun"><span class="term"><code class="filename">/dev/net/tun</code></span><a class="headerlink" title="Permalink to this term" href="#/dev/net/tun">¶</a></dt><dd><p><a href="systemd.netdev.html"><span class="citerefentry"><span class="refentrytitle">systemd.netdev</span>(5)</span></a></p></dd><dt id="/dev/null"><span class="term"><code class="filename">/dev/null</code></span><a class="headerlink" title="Permalink to this term" href="#/dev/null">¶</a></dt><dd><p><a href="binfmt.d.html"><span class="citerefentry"><span class="refentrytitle">binfmt.d</span>(5)</span></a>, <a href="daemon.html"><span class="citerefentry"><span class="refentrytitle">daemon</span>(7)</span></a>, <a href="modules-load.d.html"><span class="citerefentry"><span class="refentrytitle">modules-load.d</span>(5)</span></a>, <a href="sysctl.d.html"><span class="citerefentry"><span class="refentrytitle">sysctl.d</span>(5)</span></a>, <a href="systemctl.html"><span class="citerefentry"><span class="refentrytitle">systemctl</span>(1)</span></a>, <a href="systemd.exec.html"><span class="citerefentry"><span class="refentrytitle">systemd.exec</span>(5)</span></a>, <a href="systemd.link.html"><span class="citerefentry"><span class="refentrytitle">systemd.link</span>(5)</span></a>, <a href="systemd.netdev.html"><span class="citerefentry"><span class="refentrytitle">systemd.netdev</span>(5)</span></a>, <a href="systemd.network.html"><span class="citerefentry"><span class="refentrytitle">systemd.network</span>(5)</span></a>, <a href="systemd.preset.html"><span class="citerefentry"><span class="refentrytitle">systemd.preset</span>(5)</span></a>, <a href="systemd.resource-control.html"><span class="citerefentry"><span class="refentrytitle">systemd.resource-control</span>(5)</span></a>, <a href="systemd.unit.html"><span class="citerefentry"><span class="refentrytitle">systemd.unit</span>(5)</span></a>, <a href="tmpfiles.d.html"><span class="citerefentry"><span class="refentrytitle">tmpfiles.d</span>(5)</span></a>, <a href="udev.html"><span class="citerefentry"><span class="refentrytitle">udev</span>(7)</span></a></p></dd><dt id="/dev/random"><span class="term"><code class="filename">/dev/random</code></span><a class="headerlink" title="Permalink to this term" href="#/dev/random">¶</a></dt><dd><p><a href="crypttab.html"><span class="citerefentry"><span class="refentrytitle">crypttab</span>(5)</span></a>, <a href="systemd.exec.html"><span class="citerefentry"><span class="refentrytitle">systemd.exec</span>(5)</span></a>, <a href="systemd.resource-control.html"><span class="citerefentry"><span class="refentrytitle">systemd.resource-control</span>(5)</span></a></p></dd><dt id="/dev/sda"><span class="term"><code class="filename">/dev/sda</code></span><a class="headerlink" title="Permalink to this term" href="#/dev/sda">¶</a></dt><dd><p><a href="systemd.exec.html"><span class="citerefentry"><span class="refentrytitle">systemd.exec</span>(5)</span></a></p></dd><dt id="/dev/sda5"><span class="term"><code class="filename">/dev/sda5</code></span><a class="headerlink" title="Permalink to this term" href="#/dev/sda5">¶</a></dt><dd><p><a href="systemd.resource-control.html"><span class="citerefentry"><span class="refentrytitle">systemd.resource-control</span>(5)</span></a></p></dd><dt id="/dev/shm"><span class="term"><code class="filename">/dev/shm</code></span><a class="headerlink" title="Permalink to this term" href="#/dev/shm">¶</a></dt><dd><p><a href="file-hierarchy.html"><span class="citerefentry"><span class="refentrytitle">file-hierarchy</span>(7)</span></a></p></dd><dt id="/dev/urandom"><span class="term"><code class="filename">/dev/urandom</code></span><a class="headerlink" title="Permalink to this term" href="#/dev/urandom">¶</a></dt><dd><p><a href="crypttab.html"><span class="citerefentry"><span class="refentrytitle">crypttab</span>(5)</span></a>, <a href="sd_id128_randomize.html"><span class="citerefentry"><span class="refentrytitle">sd_id128_randomize</span>(3)</span></a>, <a href="systemd.resource-control.html"><span class="citerefentry"><span class="refentrytitle">systemd.resource-control</span>(5)</span></a></p></dd><dt id="/dev/watchdog"><span class="term"><code class="filename">/dev/watchdog</code></span><a class="headerlink" title="Permalink to this term" href="#/dev/watchdog">¶</a></dt><dd><p><a href="systemd-system.conf.html"><span class="citerefentry"><span class="refentrytitle">systemd-system.conf</span>(5)</span></a></p></dd><dt id="/dev/zero"><span class="term"><code class="filename">/dev/zero</code></span><a class="headerlink" title="Permalink to this term" href="#/dev/zero">¶</a></dt><dd><p><a href="systemd.exec.html"><span class="citerefentry"><span class="refentrytitle">systemd.exec</span>(5)</span></a>, <a href="systemd.resource-control.html"><span class="citerefentry"><span class="refentrytitle">systemd.resource-control</span>(5)</span></a></p></dd><dt id="/etc"><span class="term"><code class="filename">/etc</code></span><a class="headerlink" title="Permalink to this term" href="#/etc">¶</a></dt><dd><p><a href="binfmt.d.html"><span class="citerefentry"><span class="refentrytitle">binfmt.d</span>(5)</span></a>, <a href="file-hierarchy.html"><span class="citerefentry"><span class="refentrytitle">file-hierarchy</span>(7)</span></a>, <a href="modules-load.d.html"><span class="citerefentry"><span class="refentrytitle">modules-load.d</span>(5)</span></a>, <a href="nss-myhostname.html"><span class="citerefentry"><span class="refentrytitle">nss-myhostname</span>(8)</span></a>, <a href="os-release.html"><span class="citerefentry"><span class="refentrytitle">os-release</span>(5)</span></a>, <a href="sysctl.d.html"><span class="citerefentry"><span class="refentrytitle">sysctl.d</span>(5)</span></a>, <a href="systemctl.html"><span class="citerefentry"><span class="refentrytitle">systemctl</span>(1)</span></a>, <a href="systemd-delta.html"><span class="citerefentry"><span class="refentrytitle">systemd-delta</span>(1)</span></a>, <a href="systemd-update-done.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-update-done.service</span>(8)</span></a>, <a href="systemd.exec.html"><span class="citerefentry"><span class="refentrytitle">systemd.exec</span>(5)</span></a>, <a href="systemd.link.html"><span class="citerefentry"><span class="refentrytitle">systemd.link</span>(5)</span></a>, <a href="systemd.mount.html"><span class="citerefentry"><span class="refentrytitle">systemd.mount</span>(5)</span></a>, <a href="systemd.netdev.html"><span class="citerefentry"><span class="refentrytitle">systemd.netdev</span>(5)</span></a>, <a href="systemd.network.html"><span class="citerefentry"><span class="refentrytitle">systemd.network</span>(5)</span></a>, <a href="systemd.preset.html"><span class="citerefentry"><span class="refentrytitle">systemd.preset</span>(5)</span></a>, <a href="systemd.unit.html"><span class="citerefentry"><span class="refentrytitle">systemd.unit</span>(5)</span></a>, <a href="udev.html"><span class="citerefentry"><span class="refentrytitle">udev</span>(7)</span></a></p></dd><dt id="/etc/.updated"><span class="term"><code class="filename">/etc/.updated</code></span><a class="headerlink" title="Permalink to this term" href="#/etc/.updated">¶</a></dt><dd><p><a href="systemd-update-done.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-update-done.service</span>(8)</span></a></p></dd><dt id="/etc/adjtime"><span class="term"><code class="filename">/etc/adjtime</code></span><a class="headerlink" title="Permalink to this term" href="#/etc/adjtime">¶</a></dt><dd><p><a href="timedatectl.html"><span class="citerefentry"><span class="refentrytitle">timedatectl</span>(1)</span></a></p></dd><dt id="/etc/binfmt.d/"><span class="term"><code class="filename">/etc/binfmt.d/</code></span><a class="headerlink" title="Permalink to this term" href="#/etc/binfmt.d/">¶</a></dt><dd><p><a href="binfmt.d.html"><span class="citerefentry"><span class="refentrytitle">binfmt.d</span>(5)</span></a></p></dd><dt id="/etc/binfmt.d/*.conf"><span class="term"><code class="filename">/etc/binfmt.d/*.conf</code></span><a class="headerlink" title="Permalink to this term" href="#/etc/binfmt.d/*.conf">¶</a></dt><dd><p><a href="binfmt.d.html"><span class="citerefentry"><span class="refentrytitle">binfmt.d</span>(5)</span></a></p></dd><dt id="/etc/crypttab"><span class="term"><code class="filename">/etc/crypttab</code></span><a class="headerlink" title="Permalink to this term" href="#/etc/crypttab">¶</a></dt><dd><p><a href="crypttab.html"><span class="citerefentry"><span class="refentrytitle">crypttab</span>(5)</span></a>, <a href="systemd-cryptsetup-generator.html"><span class="citerefentry"><span class="refentrytitle">systemd-cryptsetup-generator</span>(8)</span></a>, <a href="systemd-cryptsetup@.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-cryptsetup@.service</span>(8)</span></a>, <a href="systemd-gpt-auto-generator.html"><span class="citerefentry"><span class="refentrytitle">systemd-gpt-auto-generator</span>(8)</span></a></p></dd><dt id="/etc/fstab"><span class="term"><code class="filename">/etc/fstab</code></span><a class="headerlink" title="Permalink to this term" href="#/etc/fstab">¶</a></dt><dd><p><a href="kernel-command-line.html"><span class="citerefentry"><span class="refentrytitle">kernel-command-line</span>(7)</span></a>, <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>, <a href="systemd-cryptsetup-generator.html"><span class="citerefentry"><span class="refentrytitle">systemd-cryptsetup-generator</span>(8)</span></a>, <a href="systemd-fsck@.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-fsck@.service</span>(8)</span></a>, <a href="systemd-fstab-generator.html"><span class="citerefentry"><span class="refentrytitle">systemd-fstab-generator</span>(8)</span></a>, <a href="systemd-gpt-auto-generator.html"><span class="citerefentry"><span class="refentrytitle">systemd-gpt-auto-generator</span>(8)</span></a>, <a href="systemd-remount-fs.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-remount-fs.service</span>(8)</span></a>, <a href="systemd.automount.html"><span class="citerefentry"><span class="refentrytitle">systemd.automount</span>(5)</span></a>, <a href="systemd.mount.html"><span class="citerefentry"><span class="refentrytitle">systemd.mount</span>(5)</span></a>, <a href="systemd.special.html"><span class="citerefentry"><span class="refentrytitle">systemd.special</span>(7)</span></a>, <a href="systemd.swap.html"><span class="citerefentry"><span class="refentrytitle">systemd.swap</span>(5)</span></a></p></dd><dt id="/etc/group"><span class="term"><code class="filename">/etc/group</code></span><a class="headerlink" title="Permalink to this term" href="#/etc/group">¶</a></dt><dd><p><a href="sysusers.d.html"><span class="citerefentry"><span class="refentrytitle">sysusers.d</span>(5)</span></a></p></dd><dt id="/etc/hostname"><span class="term"><code class="filename">/etc/hostname</code></span><a class="headerlink" title="Permalink to this term" href="#/etc/hostname">¶</a></dt><dd><p><a href="hostname.html"><span class="citerefentry"><span class="refentrytitle">hostname</span>(5)</span></a>, <a href="hostnamectl.html"><span class="citerefentry"><span class="refentrytitle">hostnamectl</span>(1)</span></a>, <a href="machine-info.html"><span class="citerefentry"><span class="refentrytitle">machine-info</span>(5)</span></a></p></dd><dt id="/etc/hosts"><span class="term"><code class="filename">/etc/hosts</code></span><a class="headerlink" title="Permalink to this term" href="#/etc/hosts">¶</a></dt><dd><p><a href="nss-myhostname.html"><span class="citerefentry"><span class="refentrytitle">nss-myhostname</span>(8)</span></a></p></dd><dt id="/etc/kernel/cmdline"><span class="term"><code class="filename">/etc/kernel/cmdline</code></span><a class="headerlink" title="Permalink to this term" href="#/etc/kernel/cmdline">¶</a></dt><dd><p><a href="kernel-install.html"><span class="citerefentry"><span class="refentrytitle">kernel-install</span>(8)</span></a></p></dd><dt id="/etc/kernel/install.d/"><span class="term"><code class="filename">/etc/kernel/install.d/</code></span><a class="headerlink" title="Permalink to this term" href="#/etc/kernel/install.d/">¶</a></dt><dd><p><a href="kernel-install.html"><span class="citerefentry"><span class="refentrytitle">kernel-install</span>(8)</span></a></p></dd><dt id="/etc/kernel/install.d/*.install"><span class="term"><code class="filename">/etc/kernel/install.d/*.install</code></span><a class="headerlink" title="Permalink to this term" href="#/etc/kernel/install.d/*.install">¶</a></dt><dd><p><a href="kernel-install.html"><span class="citerefentry"><span class="refentrytitle">kernel-install</span>(8)</span></a></p></dd><dt id="/etc/locale.conf"><span class="term"><code class="filename">/etc/locale.conf</code></span><a class="headerlink" title="Permalink to this term" href="#/etc/locale.conf">¶</a></dt><dd><p><a href="locale.conf.html"><span class="citerefentry"><span class="refentrytitle">locale.conf</span>(5)</span></a>, <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a></p></dd><dt id="/etc/localtime"><span class="term"><code class="filename">/etc/localtime</code></span><a class="headerlink" title="Permalink to this term" href="#/etc/localtime">¶</a></dt><dd><p><a href="localtime.html"><span class="citerefentry"><span class="refentrytitle">localtime</span>(5)</span></a>, <a href="timedatectl.html"><span class="citerefentry"><span class="refentrytitle">timedatectl</span>(1)</span></a></p></dd><dt id="/etc/machine-id"><span class="term"><code class="filename">/etc/machine-id</code></span><a class="headerlink" title="Permalink to this term" href="#/etc/machine-id">¶</a></dt><dd><p><a href="kernel-install.html"><span class="citerefentry"><span class="refentrytitle">kernel-install</span>(8)</span></a>, <a href="machine-id.html"><span class="citerefentry"><span class="refentrytitle">machine-id</span>(5)</span></a>, <a href="systemd-machine-id-setup.html"><span class="citerefentry"><span class="refentrytitle">systemd-machine-id-setup</span>(1)</span></a>, <a href="systemd-nspawn.html"><span class="citerefentry"><span class="refentrytitle">systemd-nspawn</span>(1)</span></a></p></dd><dt id="/etc/machine-info"><span class="term"><code class="filename">/etc/machine-info</code></span><a class="headerlink" title="Permalink to this term" href="#/etc/machine-info">¶</a></dt><dd><p><a href="hostnamectl.html"><span class="citerefentry"><span class="refentrytitle">hostnamectl</span>(1)</span></a>, <a href="machine-info.html"><span class="citerefentry"><span class="refentrytitle">machine-info</span>(5)</span></a></p></dd><dt id="/etc/modules-load.d/program.conf"><span class="term"><code class="filename">/etc/modules-load.d/<em class="replaceable"><code>program</code></em>.conf</code></span><a class="headerlink" title="Permalink to this term" href="#/etc/modules-load.d/program.conf">¶</a></dt><dd><p><a href="modules-load.d.html"><span class="citerefentry"><span class="refentrytitle">modules-load.d</span>(5)</span></a></p></dd><dt id="/etc/modules-load.d/*.conf"><span class="term"><code class="filename">/etc/modules-load.d/*.conf</code></span><a class="headerlink" title="Permalink to this term" href="#/etc/modules-load.d/*.conf">¶</a></dt><dd><p><a href="modules-load.d.html"><span class="citerefentry"><span class="refentrytitle">modules-load.d</span>(5)</span></a></p></dd><dt id="/etc/modules-load.d/bridge.conf"><span class="term"><code class="filename">/etc/modules-load.d/bridge.conf</code></span><a class="headerlink" title="Permalink to this term" href="#/etc/modules-load.d/bridge.conf">¶</a></dt><dd><p><a href="sysctl.d.html"><span class="citerefentry"><span class="refentrytitle">sysctl.d</span>(5)</span></a></p></dd><dt id="/etc/nsswitch.conf"><span class="term"><code class="filename">/etc/nsswitch.conf</code></span><a class="headerlink" title="Permalink to this term" href="#/etc/nsswitch.conf">¶</a></dt><dd><p><a href="nss-myhostname.html"><span class="citerefentry"><span class="refentrytitle">nss-myhostname</span>(8)</span></a></p></dd><dt id="/etc/os-release"><span class="term"><code class="filename">/etc/os-release</code></span><a class="headerlink" title="Permalink to this term" href="#/etc/os-release">¶</a></dt><dd><p><a href="kernel-install.html"><span class="citerefentry"><span class="refentrytitle">kernel-install</span>(8)</span></a>, <a href="os-release.html"><span class="citerefentry"><span class="refentrytitle">os-release</span>(5)</span></a>, <a href="systemd-nspawn.html"><span class="citerefentry"><span class="refentrytitle">systemd-nspawn</span>(1)</span></a></p></dd><dt id="/etc/passwd"><span class="term"><code class="filename">/etc/passwd</code></span><a class="headerlink" title="Permalink to this term" href="#/etc/passwd">¶</a></dt><dd><p><a href="sysusers.d.html"><span class="citerefentry"><span class="refentrytitle">sysusers.d</span>(5)</span></a></p></dd><dt id="/etc/resolv.conf"><span class="term"><code class="filename">/etc/resolv.conf</code></span><a class="headerlink" title="Permalink to this term" href="#/etc/resolv.conf">¶</a></dt><dd><p><a href="systemd-resolved.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-resolved.service</span>(8)</span></a></p></dd><dt id="/etc/sysctl.d/"><span class="term"><code class="filename">/etc/sysctl.d/</code></span><a class="headerlink" title="Permalink to this term" href="#/etc/sysctl.d/">¶</a></dt><dd><p><a href="sysctl.d.html"><span class="citerefentry"><span class="refentrytitle">sysctl.d</span>(5)</span></a></p></dd><dt id="/etc/sysctl.d/*.conf"><span class="term"><code class="filename">/etc/sysctl.d/*.conf</code></span><a class="headerlink" title="Permalink to this term" href="#/etc/sysctl.d/*.conf">¶</a></dt><dd><p><a href="sysctl.d.html"><span class="citerefentry"><span class="refentrytitle">sysctl.d</span>(5)</span></a></p></dd><dt id="/etc/sysctl.d/bridge.conf"><span class="term"><code class="filename">/etc/sysctl.d/bridge.conf</code></span><a class="headerlink" title="Permalink to this term" href="#/etc/sysctl.d/bridge.conf">¶</a></dt><dd><p><a href="sysctl.d.html"><span class="citerefentry"><span class="refentrytitle">sysctl.d</span>(5)</span></a></p></dd><dt id="/etc/sysctl.d/domain-name.conf"><span class="term"><code class="filename">/etc/sysctl.d/domain-name.conf</code></span><a class="headerlink" title="Permalink to this term" href="#/etc/sysctl.d/domain-name.conf">¶</a></dt><dd><p><a href="sysctl.d.html"><span class="citerefentry"><span class="refentrytitle">sysctl.d</span>(5)</span></a></p></dd><dt id="/etc/systemd/bootchart.conf"><span class="term"><code class="filename">/etc/systemd/bootchart.conf</code></span><a class="headerlink" title="Permalink to this term" href="#/etc/systemd/bootchart.conf">¶</a></dt><dd><p><a href="bootchart.conf.html"><span class="citerefentry"><span class="refentrytitle">bootchart.conf</span>(5)</span></a>, <a href="systemd-bootchart.html"><span class="citerefentry"><span class="refentrytitle">systemd-bootchart</span>(1)</span></a></p></dd><dt id="/etc/systemd/coredump.conf"><span class="term"><code class="filename">/etc/systemd/coredump.conf</code></span><a class="headerlink" title="Permalink to this term" href="#/etc/systemd/coredump.conf">¶</a></dt><dd><p><a href="coredump.conf.html"><span class="citerefentry"><span class="refentrytitle">coredump.conf</span>(5)</span></a></p></dd><dt id="/etc/systemd/journald.conf"><span class="term"><code class="filename">/etc/systemd/journald.conf</code></span><a class="headerlink" title="Permalink to this term" href="#/etc/systemd/journald.conf">¶</a></dt><dd><p><a href="journald.conf.html"><span class="citerefentry"><span class="refentrytitle">journald.conf</span>(5)</span></a>, <a href="systemd-journald.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-journald.service</span>(8)</span></a></p></dd><dt id="/etc/systemd/logind.conf"><span class="term"><code class="filename">/etc/systemd/logind.conf</code></span><a class="headerlink" title="Permalink to this term" href="#/etc/systemd/logind.conf">¶</a></dt><dd><p><a href="logind.conf.html"><span class="citerefentry"><span class="refentrytitle">logind.conf</span>(5)</span></a></p></dd><dt id="/etc/systemd/network"><span class="term"><code class="filename">/etc/systemd/network</code></span><a class="headerlink" title="Permalink to this term" href="#/etc/systemd/network">¶</a></dt><dd><p><a href="systemd-networkd.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-networkd.service</span>(8)</span></a>, <a href="systemd.link.html"><span class="citerefentry"><span class="refentrytitle">systemd.link</span>(5)</span></a>, <a href="systemd.netdev.html"><span class="citerefentry"><span class="refentrytitle">systemd.netdev</span>(5)</span></a>, <a href="systemd.network.html"><span class="citerefentry"><span class="refentrytitle">systemd.network</span>(5)</span></a></p></dd><dt id="/etc/systemd/resolved.conf"><span class="term"><code class="filename">/etc/systemd/resolved.conf</code></span><a class="headerlink" title="Permalink to this term" href="#/etc/systemd/resolved.conf">¶</a></dt><dd><p><a href="resolved.conf.html"><span class="citerefentry"><span class="refentrytitle">resolved.conf</span>(5)</span></a></p></dd><dt id="/etc/systemd/sleep.conf"><span class="term"><code class="filename">/etc/systemd/sleep.conf</code></span><a class="headerlink" title="Permalink to this term" href="#/etc/systemd/sleep.conf">¶</a></dt><dd><p><a href="systemd-sleep.conf.html"><span class="citerefentry"><span class="refentrytitle">systemd-sleep.conf</span>(5)</span></a>, <a href="systemd-suspend.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-suspend.service</span>(8)</span></a></p></dd><dt id="/etc/systemd/system/"><span class="term"><code class="filename">/etc/systemd/system/</code></span><a class="headerlink" title="Permalink to this term" href="#/etc/systemd/system/">¶</a></dt><dd><p><a href="systemd.unit.html"><span class="citerefentry"><span class="refentrytitle">systemd.unit</span>(5)</span></a></p></dd><dt id="/etc/systemd/system-preset/"><span class="term"><code class="filename">/etc/systemd/system-preset/</code></span><a class="headerlink" title="Permalink to this term" href="#/etc/systemd/system-preset/">¶</a></dt><dd><p><a href="systemd.preset.html"><span class="citerefentry"><span class="refentrytitle">systemd.preset</span>(5)</span></a></p></dd><dt id="/etc/systemd/system-preset/*.preset"><span class="term"><code class="filename">/etc/systemd/system-preset/*.preset</code></span><a class="headerlink" title="Permalink to this term" href="#/etc/systemd/system-preset/*.preset">¶</a></dt><dd><p><a href="systemd.preset.html"><span class="citerefentry"><span class="refentrytitle">systemd.preset</span>(5)</span></a></p></dd><dt id="/etc/systemd/system-preset/00-lennart.preset"><span class="term"><code class="filename">/etc/systemd/system-preset/00-lennart.preset</code></span><a class="headerlink" title="Permalink to this term" href="#/etc/systemd/system-preset/00-lennart.preset">¶</a></dt><dd><p><a href="systemd.preset.html"><span class="citerefentry"><span class="refentrytitle">systemd.preset</span>(5)</span></a></p></dd><dt id="/etc/systemd/system.conf"><span class="term"><code class="filename">/etc/systemd/system.conf</code></span><a class="headerlink" title="Permalink to this term" href="#/etc/systemd/system.conf">¶</a></dt><dd><p><a href="systemd-system.conf.html"><span class="citerefentry"><span class="refentrytitle">systemd-system.conf</span>(5)</span></a></p></dd><dt id="/etc/systemd/user/"><span class="term"><code class="filename">/etc/systemd/user/</code></span><a class="headerlink" title="Permalink to this term" href="#/etc/systemd/user/">¶</a></dt><dd><p><a href="systemd.unit.html"><span class="citerefentry"><span class="refentrytitle">systemd.unit</span>(5)</span></a></p></dd><dt id="/etc/systemd/user-preset/*.preset"><span class="term"><code class="filename">/etc/systemd/user-preset/*.preset</code></span><a class="headerlink" title="Permalink to this term" href="#/etc/systemd/user-preset/*.preset">¶</a></dt><dd><p><a href="systemd.preset.html"><span class="citerefentry"><span class="refentrytitle">systemd.preset</span>(5)</span></a></p></dd><dt id="/etc/systemd/user.conf"><span class="term"><code class="filename">/etc/systemd/user.conf</code></span><a class="headerlink" title="Permalink to this term" href="#/etc/systemd/user.conf">¶</a></dt><dd><p><a href="systemd-system.conf.html"><span class="citerefentry"><span class="refentrytitle">systemd-system.conf</span>(5)</span></a></p></dd><dt id="/etc/tmpfiles.d"><span class="term"><code class="filename">/etc/tmpfiles.d</code></span><a class="headerlink" title="Permalink to this term" href="#/etc/tmpfiles.d">¶</a></dt><dd><p><a href="tmpfiles.d.html"><span class="citerefentry"><span class="refentrytitle">tmpfiles.d</span>(5)</span></a></p></dd><dt id="/etc/tmpfiles.d/*.conf"><span class="term"><code class="filename">/etc/tmpfiles.d/*.conf</code></span><a class="headerlink" title="Permalink to this term" href="#/etc/tmpfiles.d/*.conf">¶</a></dt><dd><p><a href="tmpfiles.d.html"><span class="citerefentry"><span class="refentrytitle">tmpfiles.d</span>(5)</span></a></p></dd><dt id="/etc/udev/hwdb.bin"><span class="term"><code class="filename">/etc/udev/hwdb.bin</code></span><a class="headerlink" title="Permalink to this term" href="#/etc/udev/hwdb.bin">¶</a></dt><dd><p><a href="udev.html"><span class="citerefentry"><span class="refentrytitle">udev</span>(7)</span></a>, <a href="udevadm.html"><span class="citerefentry"><span class="refentrytitle">udevadm</span>(8)</span></a></p></dd><dt id="/etc/udev/hwdb.d"><span class="term"><code class="filename">/etc/udev/hwdb.d</code></span><a class="headerlink" title="Permalink to this term" href="#/etc/udev/hwdb.d">¶</a></dt><dd><p><a href="udev.html"><span class="citerefentry"><span class="refentrytitle">udev</span>(7)</span></a></p></dd><dt id="/etc/udev/rules.d"><span class="term"><code class="filename">/etc/udev/rules.d</code></span><a class="headerlink" title="Permalink to this term" href="#/etc/udev/rules.d">¶</a></dt><dd><p><a href="udev.html"><span class="citerefentry"><span class="refentrytitle">udev</span>(7)</span></a></p></dd><dt id="/etc/udev/rules.d/99-bridge.conf"><span class="term"><code class="filename">/etc/udev/rules.d/99-bridge.conf</code></span><a class="headerlink" title="Permalink to this term" href="#/etc/udev/rules.d/99-bridge.conf">¶</a></dt><dd><p><a href="sysctl.d.html"><span class="citerefentry"><span class="refentrytitle">sysctl.d</span>(5)</span></a></p></dd><dt id="/etc/udev/udev.conf"><span class="term"><code class="filename">/etc/udev/udev.conf</code></span><a class="headerlink" title="Permalink to this term" href="#/etc/udev/udev.conf">¶</a></dt><dd><p><a href="systemd-udevd.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-udevd.service</span>(8)</span></a></p></dd><dt id="/etc/vconsole.conf"><span class="term"><code class="filename">/etc/vconsole.conf</code></span><a class="headerlink" title="Permalink to this term" href="#/etc/vconsole.conf">¶</a></dt><dd><p><a href="vconsole.conf.html"><span class="citerefentry"><span class="refentrytitle">vconsole.conf</span>(5)</span></a></p></dd><dt id="/home"><span class="term"><code class="filename">/home</code></span><a class="headerlink" title="Permalink to this term" href="#/home">¶</a></dt><dd><p><a href="file-hierarchy.html"><span class="citerefentry"><span class="refentrytitle">file-hierarchy</span>(7)</span></a>, <a href="systemd-gpt-auto-generator.html"><span class="citerefentry"><span class="refentrytitle">systemd-gpt-auto-generator</span>(8)</span></a>, <a href="systemd.exec.html"><span class="citerefentry"><span class="refentrytitle">systemd.exec</span>(5)</span></a></p></dd><dt id="/home/lennart"><span class="term"><code class="filename">/home/lennart</code></span><a class="headerlink" title="Permalink to this term" href="#/home/lennart">¶</a></dt><dd><p><a href="systemd.automount.html"><span class="citerefentry"><span class="refentrytitle">systemd.automount</span>(5)</span></a></p></dd><dt id="/lib"><span class="term"><code class="filename">/lib</code></span><a class="headerlink" title="Permalink to this term" href="#/lib">¶</a></dt><dd><p><a href="file-hierarchy.html"><span class="citerefentry"><span class="refentrytitle">file-hierarchy</span>(7)</span></a>, <a href="systemd-delta.html"><span class="citerefentry"><span class="refentrytitle">systemd-delta</span>(1)</span></a></p></dd><dt id="/lib64"><span class="term"><code class="filename">/lib64</code></span><a class="headerlink" title="Permalink to this term" href="#/lib64">¶</a></dt><dd><p><a href="file-hierarchy.html"><span class="citerefentry"><span class="refentrytitle">file-hierarchy</span>(7)</span></a></p></dd><dt id="/proc"><span class="term"><code class="filename">/proc</code></span><a class="headerlink" title="Permalink to this term" href="#/proc">¶</a></dt><dd><p><a href="file-hierarchy.html"><span class="citerefentry"><span class="refentrytitle">file-hierarchy</span>(7)</span></a>, <a href="sd-login.html"><span class="citerefentry"><span class="refentrytitle">sd-login</span>(3)</span></a>, <a href="sd_bus_creds_get_pid.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_creds_get_pid</span>(3)</span></a>, <a href="sd_bus_creds_new_from_pid.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_creds_new_from_pid</span>(3)</span></a>, <a href="sd_is_fifo.html"><span class="citerefentry"><span class="refentrytitle">sd_is_fifo</span>(3)</span></a>, <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>, <a href="systemd-remount-fs.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-remount-fs.service</span>(8)</span></a>, <a href="systemd.socket.html"><span class="citerefentry"><span class="refentrytitle">systemd.socket</span>(5)</span></a>, <a href="tmpfiles.d.html"><span class="citerefentry"><span class="refentrytitle">tmpfiles.d</span>(5)</span></a></p></dd><dt id="/proc/cmdline"><span class="term"><code class="filename">/proc/cmdline</code></span><a class="headerlink" title="Permalink to this term" href="#/proc/cmdline">¶</a></dt><dd><p><a href="kernel-command-line.html"><span class="citerefentry"><span class="refentrytitle">kernel-command-line</span>(7)</span></a>, <a href="kernel-install.html"><span class="citerefentry"><span class="refentrytitle">kernel-install</span>(8)</span></a>, <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a></p></dd><dt id="/proc/devices"><span class="term"><code class="filename">/proc/devices</code></span><a class="headerlink" title="Permalink to this term" href="#/proc/devices">¶</a></dt><dd><p><a href="systemd.resource-control.html"><span class="citerefentry"><span class="refentrytitle">systemd.resource-control</span>(5)</span></a></p></dd><dt id="/proc/self/fd"><span class="term"><code class="filename">/proc/self/fd</code></span><a class="headerlink" title="Permalink to this term" href="#/proc/self/fd">¶</a></dt><dd><p><a href="daemon.html"><span class="citerefentry"><span class="refentrytitle">daemon</span>(7)</span></a></p></dd><dt id="/proc/self/mountinfo"><span class="term"><code class="filename">/proc/self/mountinfo</code></span><a class="headerlink" title="Permalink to this term" href="#/proc/self/mountinfo">¶</a></dt><dd><p><a href="systemd.mount.html"><span class="citerefentry"><span class="refentrytitle">systemd.mount</span>(5)</span></a></p></dd><dt id="/proc/self/sessionid"><span class="term"><code class="filename">/proc/self/sessionid</code></span><a class="headerlink" title="Permalink to this term" href="#/proc/self/sessionid">¶</a></dt><dd><p><a href="pam_systemd.html"><span class="citerefentry"><span class="refentrytitle">pam_systemd</span>(8)</span></a></p></dd><dt id="/proc/sys"><span class="term"><code class="filename">/proc/sys</code></span><a class="headerlink" title="Permalink to this term" href="#/proc/sys">¶</a></dt><dd><p><a href="file-hierarchy.html"><span class="citerefentry"><span class="refentrytitle">file-hierarchy</span>(7)</span></a>, <a href="systemd-nspawn.html"><span class="citerefentry"><span class="refentrytitle">systemd-nspawn</span>(1)</span></a></p></dd><dt id="/proc/sys/kernel/domainname"><span class="term"><code class="filename">/proc/sys/kernel/domainname</code></span><a class="headerlink" title="Permalink to this term" href="#/proc/sys/kernel/domainname">¶</a></dt><dd><p><a href="sysctl.d.html"><span class="citerefentry"><span class="refentrytitle">sysctl.d</span>(5)</span></a></p></dd><dt id="/proc/sys/kernel/random/boot_id"><span class="term"><code class="filename">/proc/sys/kernel/random/boot_id</code></span><a class="headerlink" title="Permalink to this term" href="#/proc/sys/kernel/random/boot_id">¶</a></dt><dd><p><a href="sd_id128_get_machine.html"><span class="citerefentry"><span class="refentrytitle">sd_id128_get_machine</span>(3)</span></a></p></dd><dt id="/proc/sys/net/ipv4/conf/enp3s0.200/forwarding"><span class="term"><code class="filename">/proc/sys/net/ipv4/conf/enp3s0.200/forwarding</code></span><a class="headerlink" title="Permalink to this term" href="#/proc/sys/net/ipv4/conf/enp3s0.200/forwarding">¶</a></dt><dd><p><a href="sysctl.d.html"><span class="citerefentry"><span class="refentrytitle">sysctl.d</span>(5)</span></a></p></dd><dt id="/proc/sys/net/ipv4/tcp_keepalive_time"><span class="term"><code class="filename">/proc/sys/net/ipv4/tcp_keepalive_time</code></span><a class="headerlink" title="Permalink to this term" href="#/proc/sys/net/ipv4/tcp_keepalive_time">¶</a></dt><dd><p><a href="systemd.socket.html"><span class="citerefentry"><span class="refentrytitle">systemd.socket</span>(5)</span></a></p></dd><dt id="/proc/sys/net/ipv6/bindv6only"><span class="term"><code class="filename">/proc/sys/net/ipv6/bindv6only</code></span><a class="headerlink" title="Permalink to this term" href="#/proc/sys/net/ipv6/bindv6only">¶</a></dt><dd><p><a href="systemd.socket.html"><span class="citerefentry"><span class="refentrytitle">systemd.socket</span>(5)</span></a></p></dd><dt id="/root"><span class="term"><code class="filename">/root</code></span><a class="headerlink" title="Permalink to this term" href="#/root">¶</a></dt><dd><p><a href="file-hierarchy.html"><span class="citerefentry"><span class="refentrytitle">file-hierarchy</span>(7)</span></a></p></dd><dt id="/run"><span class="term"><code class="filename">/run</code></span><a class="headerlink" title="Permalink to this term" href="#/run">¶</a></dt><dd><p><a href="binfmt.d.html"><span class="citerefentry"><span class="refentrytitle">binfmt.d</span>(5)</span></a>, <a href="file-hierarchy.html"><span class="citerefentry"><span class="refentrytitle">file-hierarchy</span>(7)</span></a>, <a href="modules-load.d.html"><span class="citerefentry"><span class="refentrytitle">modules-load.d</span>(5)</span></a>, <a href="sd-login.html"><span class="citerefentry"><span class="refentrytitle">sd-login</span>(3)</span></a>, <a href="sysctl.d.html"><span class="citerefentry"><span class="refentrytitle">sysctl.d</span>(5)</span></a>, <a href="systemctl.html"><span class="citerefentry"><span class="refentrytitle">systemctl</span>(1)</span></a>, <a href="systemd-delta.html"><span class="citerefentry"><span class="refentrytitle">systemd-delta</span>(1)</span></a>, <a href="systemd-journald.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-journald.service</span>(8)</span></a>, <a href="systemd-nspawn.html"><span class="citerefentry"><span class="refentrytitle">systemd-nspawn</span>(1)</span></a>, <a href="systemd.exec.html"><span class="citerefentry"><span class="refentrytitle">systemd.exec</span>(5)</span></a>, <a href="systemd.link.html"><span class="citerefentry"><span class="refentrytitle">systemd.link</span>(5)</span></a>, <a href="systemd.netdev.html"><span class="citerefentry"><span class="refentrytitle">systemd.netdev</span>(5)</span></a>, <a href="systemd.network.html"><span class="citerefentry"><span class="refentrytitle">systemd.network</span>(5)</span></a>, <a href="systemd.preset.html"><span class="citerefentry"><span class="refentrytitle">systemd.preset</span>(5)</span></a>, <a href="systemd.unit.html"><span class="citerefentry"><span class="refentrytitle">systemd.unit</span>(5)</span></a>, <a href="tmpfiles.d.html"><span class="citerefentry"><span class="refentrytitle">tmpfiles.d</span>(5)</span></a>, <a href="udev.html"><span class="citerefentry"><span class="refentrytitle">udev</span>(7)</span></a></p></dd><dt id="/run/binfmt.d/*.conf"><span class="term"><code class="filename">/run/binfmt.d/*.conf</code></span><a class="headerlink" title="Permalink to this term" href="#/run/binfmt.d/*.conf">¶</a></dt><dd><p><a href="binfmt.d.html"><span class="citerefentry"><span class="refentrytitle">binfmt.d</span>(5)</span></a></p></dd><dt id="/run/foobar.pid"><span class="term"><code class="filename">/run/foobar.pid</code></span><a class="headerlink" title="Permalink to this term" href="#/run/foobar.pid">¶</a></dt><dd><p><a href="daemon.html"><span class="citerefentry"><span class="refentrytitle">daemon</span>(7)</span></a></p></dd><dt id="/run/log"><span class="term"><code class="filename">/run/log</code></span><a class="headerlink" title="Permalink to this term" href="#/run/log">¶</a></dt><dd><p><a href="bootchart.conf.html"><span class="citerefentry"><span class="refentrytitle">bootchart.conf</span>(5)</span></a>, <a href="file-hierarchy.html"><span class="citerefentry"><span class="refentrytitle">file-hierarchy</span>(7)</span></a>, <a href="systemd-bootchart.html"><span class="citerefentry"><span class="refentrytitle">systemd-bootchart</span>(1)</span></a></p></dd><dt id="/run/log/journal"><span class="term"><code class="filename">/run/log/journal</code></span><a class="headerlink" title="Permalink to this term" href="#/run/log/journal">¶</a></dt><dd><p><a href="journald.conf.html"><span class="citerefentry"><span class="refentrytitle">journald.conf</span>(5)</span></a>, <a href="systemd-journald.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-journald.service</span>(8)</span></a></p></dd><dt id="/run/modules-load.d/*.conf"><span class="term"><code class="filename">/run/modules-load.d/*.conf</code></span><a class="headerlink" title="Permalink to this term" href="#/run/modules-load.d/*.conf">¶</a></dt><dd><p><a href="modules-load.d.html"><span class="citerefentry"><span class="refentrytitle">modules-load.d</span>(5)</span></a></p></dd><dt id="/run/nologin"><span class="term"><code class="filename">/run/nologin</code></span><a class="headerlink" title="Permalink to this term" href="#/run/nologin">¶</a></dt><dd><p><a href="shutdown.html"><span class="citerefentry"><span class="refentrytitle">shutdown</span>(8)</span></a>, <a href="systemd-user-sessions.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-user-sessions.service</span>(8)</span></a></p></dd><dt id="/run/sysctl.d/*.conf"><span class="term"><code class="filename">/run/sysctl.d/*.conf</code></span><a class="headerlink" title="Permalink to this term" href="#/run/sysctl.d/*.conf">¶</a></dt><dd><p><a href="sysctl.d.html"><span class="citerefentry"><span class="refentrytitle">sysctl.d</span>(5)</span></a></p></dd><dt id="/run/systemd/journal/syslog"><span class="term"><code class="filename">/run/systemd/journal/syslog</code></span><a class="headerlink" title="Permalink to this term" href="#/run/systemd/journal/syslog">¶</a></dt><dd><p><a href="systemd-journald.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-journald.service</span>(8)</span></a></p></dd><dt id="/run/systemd/network"><span class="term"><code class="filename">/run/systemd/network</code></span><a class="headerlink" title="Permalink to this term" href="#/run/systemd/network">¶</a></dt><dd><p><a href="systemd-networkd.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-networkd.service</span>(8)</span></a>, <a href="systemd.link.html"><span class="citerefentry"><span class="refentrytitle">systemd.link</span>(5)</span></a>, <a href="systemd.netdev.html"><span class="citerefentry"><span class="refentrytitle">systemd.netdev</span>(5)</span></a>, <a href="systemd.network.html"><span class="citerefentry"><span class="refentrytitle">systemd.network</span>(5)</span></a></p></dd><dt id="/run/systemd/notify"><span class="term"><code class="filename">/run/systemd/notify</code></span><a class="headerlink" title="Permalink to this term" href="#/run/systemd/notify">¶</a></dt><dd><p><a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a></p></dd><dt id="/run/systemd/private"><span class="term"><code class="filename">/run/systemd/private</code></span><a class="headerlink" title="Permalink to this term" href="#/run/systemd/private">¶</a></dt><dd><p><a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a></p></dd><dt id="/run/systemd/readahead/"><span class="term"><code class="filename">/run/systemd/readahead/</code></span><a class="headerlink" title="Permalink to this term" href="#/run/systemd/readahead/">¶</a></dt><dd><p><a href="sd_readahead.html"><span class="citerefentry"><span class="refentrytitle">sd_readahead</span>(3)</span></a></p></dd><dt id="/run/systemd/resolve/resolv.conf"><span class="term"><code class="filename">/run/systemd/resolve/resolv.conf</code></span><a class="headerlink" title="Permalink to this term" href="#/run/systemd/resolve/resolv.conf">¶</a></dt><dd><p><a href="systemd-resolved.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-resolved.service</span>(8)</span></a></p></dd><dt id="/run/systemd/shutdownd"><span class="term"><code class="filename">/run/systemd/shutdownd</code></span><a class="headerlink" title="Permalink to this term" href="#/run/systemd/shutdownd">¶</a></dt><dd><p><a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a></p></dd><dt id="/run/systemd/system/"><span class="term"><code class="filename">/run/systemd/system/</code></span><a class="headerlink" title="Permalink to this term" href="#/run/systemd/system/">¶</a></dt><dd><p><a href="sd_booted.html"><span class="citerefentry"><span class="refentrytitle">sd_booted</span>(3)</span></a>, <a href="systemd.unit.html"><span class="citerefentry"><span class="refentrytitle">systemd.unit</span>(5)</span></a></p></dd><dt id="/run/systemd/system-preset/*.preset"><span class="term"><code class="filename">/run/systemd/system-preset/*.preset</code></span><a class="headerlink" title="Permalink to this term" href="#/run/systemd/system-preset/*.preset">¶</a></dt><dd><p><a href="systemd.preset.html"><span class="citerefentry"><span class="refentrytitle">systemd.preset</span>(5)</span></a></p></dd><dt id="/run/systemd/user/"><span class="term"><code class="filename">/run/systemd/user/</code></span><a class="headerlink" title="Permalink to this term" href="#/run/systemd/user/">¶</a></dt><dd><p><a href="systemd.unit.html"><span class="citerefentry"><span class="refentrytitle">systemd.unit</span>(5)</span></a></p></dd><dt id="/run/systemd/user-preset/*.preset"><span class="term"><code class="filename">/run/systemd/user-preset/*.preset</code></span><a class="headerlink" title="Permalink to this term" href="#/run/systemd/user-preset/*.preset">¶</a></dt><dd><p><a href="systemd.preset.html"><span class="citerefentry"><span class="refentrytitle">systemd.preset</span>(5)</span></a></p></dd><dt id="/run/tmpfiles.d"><span class="term"><code class="filename">/run/tmpfiles.d</code></span><a class="headerlink" title="Permalink to this term" href="#/run/tmpfiles.d">¶</a></dt><dd><p><a href="tmpfiles.d.html"><span class="citerefentry"><span class="refentrytitle">tmpfiles.d</span>(5)</span></a></p></dd><dt id="/run/tmpfiles.d/*.conf"><span class="term"><code class="filename">/run/tmpfiles.d/*.conf</code></span><a class="headerlink" title="Permalink to this term" href="#/run/tmpfiles.d/*.conf">¶</a></dt><dd><p><a href="tmpfiles.d.html"><span class="citerefentry"><span class="refentrytitle">tmpfiles.d</span>(5)</span></a></p></dd><dt id="/run/udev/hwdb.d"><span class="term"><code class="filename">/run/udev/hwdb.d</code></span><a class="headerlink" title="Permalink to this term" href="#/run/udev/hwdb.d">¶</a></dt><dd><p><a href="udev.html"><span class="citerefentry"><span class="refentrytitle">udev</span>(7)</span></a></p></dd><dt id="/run/udev/rules.d"><span class="term"><code class="filename">/run/udev/rules.d</code></span><a class="headerlink" title="Permalink to this term" href="#/run/udev/rules.d">¶</a></dt><dd><p><a href="udev.html"><span class="citerefentry"><span class="refentrytitle">udev</span>(7)</span></a></p></dd><dt id="/run/udev/static_node-tags/tag"><span class="term"><code class="filename">/run/udev/static_node-tags/<em class="replaceable"><code>tag</code></em></code></span><a class="headerlink" title="Permalink to this term" href="#/run/udev/static_node-tags/tag">¶</a></dt><dd><p><a href="udev.html"><span class="citerefentry"><span class="refentrytitle">udev</span>(7)</span></a></p></dd><dt id="/run/user"><span class="term"><code class="filename">/run/user</code></span><a class="headerlink" title="Permalink to this term" href="#/run/user">¶</a></dt><dd><p><a href="file-hierarchy.html"><span class="citerefentry"><span class="refentrytitle">file-hierarchy</span>(7)</span></a>, <a href="systemd.exec.html"><span class="citerefentry"><span class="refentrytitle">systemd.exec</span>(5)</span></a></p></dd><dt id="/run/user/$USER"><span class="term"><code class="filename">/run/user/$USER</code></span><a class="headerlink" title="Permalink to this term" href="#/run/user/%24USER">¶</a></dt><dd><p><a href="pam_systemd.html"><span class="citerefentry"><span class="refentrytitle">pam_systemd</span>(8)</span></a></p></dd><dt id="/sbin"><span class="term"><code class="filename">/sbin</code></span><a class="headerlink" title="Permalink to this term" href="#/sbin">¶</a></dt><dd><p><a href="file-hierarchy.html"><span class="citerefentry"><span class="refentrytitle">file-hierarchy</span>(7)</span></a>, <a href="systemd.exec.html"><span class="citerefentry"><span class="refentrytitle">systemd.exec</span>(5)</span></a></p></dd><dt id="/sbin/fsck."><span class="term"><code class="filename">/sbin/fsck.</code></span><a class="headerlink" title="Permalink to this term" href="#/sbin/fsck.">¶</a></dt><dd><p><a href="systemd-fsck@.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-fsck@.service</span>(8)</span></a></p></dd><dt id="/sbin/init"><span class="term"><code class="filename">/sbin/init</code></span><a class="headerlink" title="Permalink to this term" href="#/sbin/init">¶</a></dt><dd><p><a href="bootchart.conf.html"><span class="citerefentry"><span class="refentrytitle">bootchart.conf</span>(5)</span></a></p></dd><dt id="/sbin/login"><span class="term"><code class="filename">/sbin/login</code></span><a class="headerlink" title="Permalink to this term" href="#/sbin/login">¶</a></dt><dd><p><a href="sysusers.d.html"><span class="citerefentry"><span class="refentrytitle">sysusers.d</span>(5)</span></a></p></dd><dt id="/srv"><span class="term"><code class="filename">/srv</code></span><a class="headerlink" title="Permalink to this term" href="#/srv">¶</a></dt><dd><p><a href="file-hierarchy.html"><span class="citerefentry"><span class="refentrytitle">file-hierarchy</span>(7)</span></a>, <a href="systemd-gpt-auto-generator.html"><span class="citerefentry"><span class="refentrytitle">systemd-gpt-auto-generator</span>(8)</span></a></p></dd><dt id="/sys"><span class="term"><code class="filename">/sys</code></span><a class="headerlink" title="Permalink to this term" href="#/sys">¶</a></dt><dd><p><a href="file-hierarchy.html"><span class="citerefentry"><span class="refentrytitle">file-hierarchy</span>(7)</span></a>, <a href="loginctl.html"><span class="citerefentry"><span class="refentrytitle">loginctl</span>(1)</span></a>, <a href="sd_is_fifo.html"><span class="citerefentry"><span class="refentrytitle">sd_is_fifo</span>(3)</span></a>, <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>, <a href="systemd-nspawn.html"><span class="citerefentry"><span class="refentrytitle">systemd-nspawn</span>(1)</span></a>, <a href="systemd-remount-fs.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-remount-fs.service</span>(8)</span></a>, <a href="systemd.device.html"><span class="citerefentry"><span class="refentrytitle">systemd.device</span>(5)</span></a>, <a href="systemd.journal-fields.html"><span class="citerefentry"><span class="refentrytitle">systemd.journal-fields</span>(7)</span></a>, <a href="systemd.socket.html"><span class="citerefentry"><span class="refentrytitle">systemd.socket</span>(5)</span></a>, <a href="tmpfiles.d.html"><span class="citerefentry"><span class="refentrytitle">tmpfiles.d</span>(5)</span></a>, <a href="udevadm.html"><span class="citerefentry"><span class="refentrytitle">udevadm</span>(8)</span></a></p></dd><dt id="/sys/fs/cgroup"><span class="term"><code class="filename">/sys/fs/cgroup</code></span><a class="headerlink" title="Permalink to this term" href="#/sys/fs/cgroup">¶</a></dt><dd><p><a href="sd-login.html"><span class="citerefentry"><span class="refentrytitle">sd-login</span>(3)</span></a>, <a href="systemd-cgls.html"><span class="citerefentry"><span class="refentrytitle">systemd-cgls</span>(1)</span></a></p></dd><dt id="/sys/fs/cgroup/systemd/"><span class="term"><code class="filename">/sys/fs/cgroup/systemd/</code></span><a class="headerlink" title="Permalink to this term" href="#/sys/fs/cgroup/systemd/">¶</a></dt><dd><p><a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>, <a href="systemd.unit.html"><span class="citerefentry"><span class="refentrytitle">systemd.unit</span>(5)</span></a></p></dd><dt id="/sys/fs/selinux"><span class="term"><code class="filename">/sys/fs/selinux</code></span><a class="headerlink" title="Permalink to this term" href="#/sys/fs/selinux">¶</a></dt><dd><p><a href="systemd-nspawn.html"><span class="citerefentry"><span class="refentrytitle">systemd-nspawn</span>(1)</span></a></p></dd><dt id="/sys/power/disk"><span class="term"><code class="filename">/sys/power/disk</code></span><a class="headerlink" title="Permalink to this term" href="#/sys/power/disk">¶</a></dt><dd><p><a href="systemd-sleep.conf.html"><span class="citerefentry"><span class="refentrytitle">systemd-sleep.conf</span>(5)</span></a></p></dd><dt id="/sys/power/state"><span class="term"><code class="filename">/sys/power/state</code></span><a class="headerlink" title="Permalink to this term" href="#/sys/power/state">¶</a></dt><dd><p><a href="systemd-sleep.conf.html"><span class="citerefentry"><span class="refentrytitle">systemd-sleep.conf</span>(5)</span></a>, <a href="systemd-suspend.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-suspend.service</span>(8)</span></a></p></dd><dt id="/sysroot"><span class="term"><code class="filename">/sysroot</code></span><a class="headerlink" title="Permalink to this term" href="#/sysroot">¶</a></dt><dd><p><a href="bootup.html"><span class="citerefentry"><span class="refentrytitle">bootup</span>(7)</span></a></p></dd><dt id="/sysroot/etc/fstab"><span class="term"><code class="filename">/sysroot/etc/fstab</code></span><a class="headerlink" title="Permalink to this term" href="#/sysroot/etc/fstab">¶</a></dt><dd><p><a href="bootup.html"><span class="citerefentry"><span class="refentrytitle">bootup</span>(7)</span></a></p></dd><dt id="/system-update"><span class="term"><code class="filename">/system-update</code></span><a class="headerlink" title="Permalink to this term" href="#/system-update">¶</a></dt><dd><p><a href="systemd-system-update-generator.html"><span class="citerefentry"><span class="refentrytitle">systemd-system-update-generator</span>(8)</span></a>, <a href="systemd.special.html"><span class="citerefentry"><span class="refentrytitle">systemd.special</span>(7)</span></a></p></dd><dt id="/tmp"><span class="term"><code class="filename">/tmp</code></span><a class="headerlink" title="Permalink to this term" href="#/tmp">¶</a></dt><dd><p><a href="crypttab.html"><span class="citerefentry"><span class="refentrytitle">crypttab</span>(5)</span></a>, <a href="file-hierarchy.html"><span class="citerefentry"><span class="refentrytitle">file-hierarchy</span>(7)</span></a>, <a href="systemd.exec.html"><span class="citerefentry"><span class="refentrytitle">systemd.exec</span>(5)</span></a>, <a href="systemd.unit.html"><span class="citerefentry"><span class="refentrytitle">systemd.unit</span>(5)</span></a>, <a href="tmpfiles.d.html"><span class="citerefentry"><span class="refentrytitle">tmpfiles.d</span>(5)</span></a></p></dd><dt id="/tmp/var"><span class="term"><code class="filename">/tmp/var</code></span><a class="headerlink" title="Permalink to this term" href="#/tmp/var">¶</a></dt><dd><p><a href="systemd.unit.html"><span class="citerefentry"><span class="refentrytitle">systemd.unit</span>(5)</span></a></p></dd><dt id="/upload"><span class="term"><code class="filename">/upload</code></span><a class="headerlink" title="Permalink to this term" href="#/upload">¶</a></dt><dd><p><a href="systemd-journal-remote.html"><span class="citerefentry"><span class="refentrytitle">systemd-journal-remote</span>(8)</span></a></p></dd><dt id="/usr"><span class="term"><code class="filename">/usr</code></span><a class="headerlink" title="Permalink to this term" href="#/usr">¶</a></dt><dd><p><a href="bootup.html"><span class="citerefentry"><span class="refentrytitle">bootup</span>(7)</span></a>, <a href="file-hierarchy.html"><span class="citerefentry"><span class="refentrytitle">file-hierarchy</span>(7)</span></a>, <a href="systemd-remount-fs.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-remount-fs.service</span>(8)</span></a>, <a href="systemd-update-done.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-update-done.service</span>(8)</span></a>, <a href="systemd.exec.html"><span class="citerefentry"><span class="refentrytitle">systemd.exec</span>(5)</span></a>, <a href="systemd.mount.html"><span class="citerefentry"><span class="refentrytitle">systemd.mount</span>(5)</span></a>, <a href="systemd.unit.html"><span class="citerefentry"><span class="refentrytitle">systemd.unit</span>(5)</span></a></p></dd><dt id="/usr/bin"><span class="term"><code class="filename">/usr/bin</code></span><a class="headerlink" title="Permalink to this term" href="#/usr/bin">¶</a></dt><dd><p><a href="file-hierarchy.html"><span class="citerefentry"><span class="refentrytitle">file-hierarchy</span>(7)</span></a>, <a href="systemd.exec.html"><span class="citerefentry"><span class="refentrytitle">systemd.exec</span>(5)</span></a></p></dd><dt id="/usr/bin/mount"><span class="term"><code class="filename">/usr/bin/mount</code></span><a class="headerlink" title="Permalink to this term" href="#/usr/bin/mount">¶</a></dt><dd><p><a href="systemctl.html"><span class="citerefentry"><span class="refentrytitle">systemctl</span>(1)</span></a></p></dd><dt id="/usr/bin/umount"><span class="term"><code class="filename">/usr/bin/umount</code></span><a class="headerlink" title="Permalink to this term" href="#/usr/bin/umount">¶</a></dt><dd><p><a href="systemctl.html"><span class="citerefentry"><span class="refentrytitle">systemctl</span>(1)</span></a></p></dd><dt id="/usr/include"><span class="term"><code class="filename">/usr/include</code></span><a class="headerlink" title="Permalink to this term" href="#/usr/include">¶</a></dt><dd><p><a href="file-hierarchy.html"><span class="citerefentry"><span class="refentrytitle">file-hierarchy</span>(7)</span></a></p></dd><dt id="/usr/lib"><span class="term"><code class="filename">/usr/lib</code></span><a class="headerlink" title="Permalink to this term" href="#/usr/lib">¶</a></dt><dd><p><a href="binfmt.d.html"><span class="citerefentry"><span class="refentrytitle">binfmt.d</span>(5)</span></a>, <a href="file-hierarchy.html"><span class="citerefentry"><span class="refentrytitle">file-hierarchy</span>(7)</span></a>, <a href="modules-load.d.html"><span class="citerefentry"><span class="refentrytitle">modules-load.d</span>(5)</span></a>, <a href="sysctl.d.html"><span class="citerefentry"><span class="refentrytitle">sysctl.d</span>(5)</span></a>, <a href="systemd-delta.html"><span class="citerefentry"><span class="refentrytitle">systemd-delta</span>(1)</span></a>, <a href="systemd.link.html"><span class="citerefentry"><span class="refentrytitle">systemd.link</span>(5)</span></a>, <a href="systemd.netdev.html"><span class="citerefentry"><span class="refentrytitle">systemd.netdev</span>(5)</span></a>, <a href="systemd.network.html"><span class="citerefentry"><span class="refentrytitle">systemd.network</span>(5)</span></a>, <a href="systemd.preset.html"><span class="citerefentry"><span class="refentrytitle">systemd.preset</span>(5)</span></a>, <a href="udev.html"><span class="citerefentry"><span class="refentrytitle">udev</span>(7)</span></a></p></dd><dt id="/usr/lib/binfmt.d/*.conf"><span class="term"><code class="filename">/usr/lib/binfmt.d/*.conf</code></span><a class="headerlink" title="Permalink to this term" href="#/usr/lib/binfmt.d/*.conf">¶</a></dt><dd><p><a href="binfmt.d.html"><span class="citerefentry"><span class="refentrytitle">binfmt.d</span>(5)</span></a></p></dd><dt id="/usr/lib/kernel/install.d/"><span class="term"><code class="filename">/usr/lib/kernel/install.d/</code></span><a class="headerlink" title="Permalink to this term" href="#/usr/lib/kernel/install.d/">¶</a></dt><dd><p><a href="kernel-install.html"><span class="citerefentry"><span class="refentrytitle">kernel-install</span>(8)</span></a></p></dd><dt id="/usr/lib/kernel/install.d/*.install"><span class="term"><code class="filename">/usr/lib/kernel/install.d/*.install</code></span><a class="headerlink" title="Permalink to this term" href="#/usr/lib/kernel/install.d/*.install">¶</a></dt><dd><p><a href="kernel-install.html"><span class="citerefentry"><span class="refentrytitle">kernel-install</span>(8)</span></a></p></dd><dt id="/usr/lib/modules-load.d/*.conf"><span class="term"><code class="filename">/usr/lib/modules-load.d/*.conf</code></span><a class="headerlink" title="Permalink to this term" href="#/usr/lib/modules-load.d/*.conf">¶</a></dt><dd><p><a href="modules-load.d.html"><span class="citerefentry"><span class="refentrytitle">modules-load.d</span>(5)</span></a></p></dd><dt id="/usr/lib/os-release"><span class="term"><code class="filename">/usr/lib/os-release</code></span><a class="headerlink" title="Permalink to this term" href="#/usr/lib/os-release">¶</a></dt><dd><p><a href="kernel-install.html"><span class="citerefentry"><span class="refentrytitle">kernel-install</span>(8)</span></a>, <a href="os-release.html"><span class="citerefentry"><span class="refentrytitle">os-release</span>(5)</span></a>, <a href="systemd-nspawn.html"><span class="citerefentry"><span class="refentrytitle">systemd-nspawn</span>(1)</span></a></p></dd><dt id="/usr/lib/sysctl.d/*.conf"><span class="term"><code class="filename">/usr/lib/sysctl.d/*.conf</code></span><a class="headerlink" title="Permalink to this term" href="#/usr/lib/sysctl.d/*.conf">¶</a></dt><dd><p><a href="sysctl.d.html"><span class="citerefentry"><span class="refentrytitle">sysctl.d</span>(5)</span></a></p></dd><dt id="/usr/lib/systemd/network"><span class="term"><code class="filename">/usr/lib/systemd/network</code></span><a class="headerlink" title="Permalink to this term" href="#/usr/lib/systemd/network">¶</a></dt><dd><p><a href="systemd-networkd.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-networkd.service</span>(8)</span></a>, <a href="systemd.link.html"><span class="citerefentry"><span class="refentrytitle">systemd.link</span>(5)</span></a>, <a href="systemd.netdev.html"><span class="citerefentry"><span class="refentrytitle">systemd.netdev</span>(5)</span></a>, <a href="systemd.network.html"><span class="citerefentry"><span class="refentrytitle">systemd.network</span>(5)</span></a></p></dd><dt id="/usr/lib/systemd/system"><span class="term"><code class="filename">/usr/lib/systemd/system</code></span><a class="headerlink" title="Permalink to this term" href="#/usr/lib/systemd/system">¶</a></dt><dd><p><a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>, <a href="systemd.unit.html"><span class="citerefentry"><span class="refentrytitle">systemd.unit</span>(5)</span></a></p></dd><dt id="/usr/lib/systemd/system-generators/systemd-cryptsetup-generator"><span class="term"><code class="filename">/usr/lib/systemd/system-generators/systemd-cryptsetup-generator</code></span><a class="headerlink" title="Permalink to this term" href="#/usr/lib/systemd/system-generators/systemd-cryptsetup-generator">¶</a></dt><dd><p><a href="systemd-cryptsetup-generator.html"><span class="citerefentry"><span class="refentrytitle">systemd-cryptsetup-generator</span>(8)</span></a></p></dd><dt id="/usr/lib/systemd/system-generators/systemd-debug-generator"><span class="term"><code class="filename">/usr/lib/systemd/system-generators/systemd-debug-generator</code></span><a class="headerlink" title="Permalink to this term" href="#/usr/lib/systemd/system-generators/systemd-debug-generator">¶</a></dt><dd><p><a href="systemd-debug-generator.html"><span class="citerefentry"><span class="refentrytitle">systemd-debug-generator</span>(8)</span></a></p></dd><dt id="/usr/lib/systemd/system-generators/systemd-efi-boot-generator"><span class="term"><code class="filename">/usr/lib/systemd/system-generators/systemd-efi-boot-generator</code></span><a class="headerlink" title="Permalink to this term" href="#/usr/lib/systemd/system-generators/systemd-efi-boot-generator">¶</a></dt><dd><p><a href="systemd-efi-boot-generator.html"><span class="citerefentry"><span class="refentrytitle">systemd-efi-boot-generator</span>(8)</span></a></p></dd><dt id="/usr/lib/systemd/system-generators/systemd-fstab-generator"><span class="term"><code class="filename">/usr/lib/systemd/system-generators/systemd-fstab-generator</code></span><a class="headerlink" title="Permalink to this term" href="#/usr/lib/systemd/system-generators/systemd-fstab-generator">¶</a></dt><dd><p><a href="systemd-fstab-generator.html"><span class="citerefentry"><span class="refentrytitle">systemd-fstab-generator</span>(8)</span></a></p></dd><dt id="/usr/lib/systemd/system-generators/systemd-getty-generator"><span class="term"><code class="filename">/usr/lib/systemd/system-generators/systemd-getty-generator</code></span><a class="headerlink" title="Permalink to this term" href="#/usr/lib/systemd/system-generators/systemd-getty-generator">¶</a></dt><dd><p><a href="systemd-getty-generator.html"><span class="citerefentry"><span class="refentrytitle">systemd-getty-generator</span>(8)</span></a></p></dd><dt id="/usr/lib/systemd/system-generators/systemd-gpt-auto-generator"><span class="term"><code class="filename">/usr/lib/systemd/system-generators/systemd-gpt-auto-generator</code></span><a class="headerlink" title="Permalink to this term" href="#/usr/lib/systemd/system-generators/systemd-gpt-auto-generator">¶</a></dt><dd><p><a href="systemd-gpt-auto-generator.html"><span class="citerefentry"><span class="refentrytitle">systemd-gpt-auto-generator</span>(8)</span></a></p></dd><dt id="/usr/lib/systemd/system-generators/systemd-system-update-generator"><span class="term"><code class="filename">/usr/lib/systemd/system-generators/systemd-system-update-generator</code></span><a class="headerlink" title="Permalink to this term" href="#/usr/lib/systemd/system-generators/systemd-system-update-generator">¶</a></dt><dd><p><a href="systemd-system-update-generator.html"><span class="citerefentry"><span class="refentrytitle">systemd-system-update-generator</span>(8)</span></a></p></dd><dt id="/usr/lib/systemd/system-preset/*.preset"><span class="term"><code class="filename">/usr/lib/systemd/system-preset/*.preset</code></span><a class="headerlink" title="Permalink to this term" href="#/usr/lib/systemd/system-preset/*.preset">¶</a></dt><dd><p><a href="systemd.preset.html"><span class="citerefentry"><span class="refentrytitle">systemd.preset</span>(5)</span></a></p></dd><dt id="/usr/lib/systemd/system-preset/50-gnome.preset"><span class="term"><code class="filename">/usr/lib/systemd/system-preset/50-gnome.preset</code></span><a class="headerlink" title="Permalink to this term" href="#/usr/lib/systemd/system-preset/50-gnome.preset">¶</a></dt><dd><p><a href="systemd.preset.html"><span class="citerefentry"><span class="refentrytitle">systemd.preset</span>(5)</span></a></p></dd><dt id="/usr/lib/systemd/system-preset/99-default.preset"><span class="term"><code class="filename">/usr/lib/systemd/system-preset/99-default.preset</code></span><a class="headerlink" title="Permalink to this term" href="#/usr/lib/systemd/system-preset/99-default.preset">¶</a></dt><dd><p><a href="systemd.preset.html"><span class="citerefentry"><span class="refentrytitle">systemd.preset</span>(5)</span></a></p></dd><dt id="/usr/lib/systemd/system-shutdown/"><span class="term"><code class="filename">/usr/lib/systemd/system-shutdown/</code></span><a class="headerlink" title="Permalink to this term" href="#/usr/lib/systemd/system-shutdown/">¶</a></dt><dd><p><a href="systemd-halt.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-halt.service</span>(8)</span></a></p></dd><dt id="/usr/lib/systemd/system-sleep/"><span class="term"><code class="filename">/usr/lib/systemd/system-sleep/</code></span><a class="headerlink" title="Permalink to this term" href="#/usr/lib/systemd/system-sleep/">¶</a></dt><dd><p><a href="systemd-suspend.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-suspend.service</span>(8)</span></a></p></dd><dt id="/usr/lib/systemd/systemd-activate"><span class="term"><span class="command"><strong>/usr/lib/systemd/systemd-activate</strong></span></span><a class="headerlink" title="Permalink to this term" href="#/usr/lib/systemd/systemd-activate">¶</a></dt><dd><p><a href="systemd-activate.html"><span class="citerefentry"><span class="refentrytitle">systemd-activate</span>(8)</span></a></p></dd><dt id="/usr/lib/systemd/systemd-backlight"><span class="term"><code class="filename">/usr/lib/systemd/systemd-backlight</code></span><a class="headerlink" title="Permalink to this term" href="#/usr/lib/systemd/systemd-backlight">¶</a></dt><dd><p><a href="systemd-backlight@.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-backlight@.service</span>(8)</span></a></p></dd><dt id="/usr/lib/systemd/systemd-binfmt"><span class="term"><code class="filename">/usr/lib/systemd/systemd-binfmt</code></span><a class="headerlink" title="Permalink to this term" href="#/usr/lib/systemd/systemd-binfmt">¶</a></dt><dd><p><a href="systemd-binfmt.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-binfmt.service</span>(8)</span></a></p></dd><dt id="/usr/lib/systemd/systemd-bootchart"><span class="term"><code class="filename">/usr/lib/systemd/systemd-bootchart</code></span><a class="headerlink" title="Permalink to this term" href="#/usr/lib/systemd/systemd-bootchart">¶</a></dt><dd><p><a href="systemd-bootchart.html"><span class="citerefentry"><span class="refentrytitle">systemd-bootchart</span>(1)</span></a></p></dd><dt id="/usr/lib/systemd/systemd-bus-proxyd"><span class="term"><span class="command"><strong>/usr/lib/systemd/systemd-bus-proxyd</strong></span></span><a class="headerlink" title="Permalink to this term" href="#/usr/lib/systemd/systemd-bus-proxyd">¶</a></dt><dd><p><a href="systemd-bus-proxyd.html"><span class="citerefentry"><span class="refentrytitle">systemd-bus-proxyd</span>(8)</span></a></p></dd><dt id="/usr/lib/systemd/systemd-cryptsetup"><span class="term"><code class="filename">/usr/lib/systemd/systemd-cryptsetup</code></span><a class="headerlink" title="Permalink to this term" href="#/usr/lib/systemd/systemd-cryptsetup">¶</a></dt><dd><p><a href="systemd-cryptsetup@.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-cryptsetup@.service</span>(8)</span></a></p></dd><dt id="/usr/lib/systemd/systemd-fsck"><span class="term"><code class="filename">/usr/lib/systemd/systemd-fsck</code></span><a class="headerlink" title="Permalink to this term" href="#/usr/lib/systemd/systemd-fsck">¶</a></dt><dd><p><a href="systemd-fsck@.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-fsck@.service</span>(8)</span></a></p></dd><dt id="/usr/lib/systemd/systemd-hostnamed"><span class="term"><code class="filename">/usr/lib/systemd/systemd-hostnamed</code></span><a class="headerlink" title="Permalink to this term" href="#/usr/lib/systemd/systemd-hostnamed">¶</a></dt><dd><p><a href="systemd-hostnamed.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-hostnamed.service</span>(8)</span></a></p></dd><dt id="/usr/lib/systemd/systemd-initctl"><span class="term"><code class="filename">/usr/lib/systemd/systemd-initctl</code></span><a class="headerlink" title="Permalink to this term" href="#/usr/lib/systemd/systemd-initctl">¶</a></dt><dd><p><a href="systemd-initctl.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-initctl.service</span>(8)</span></a></p></dd><dt id="/usr/lib/systemd/systemd-journal-gatewayd"><span class="term"><span class="command"><strong>/usr/lib/systemd/systemd-journal-gatewayd</strong></span></span><a class="headerlink" title="Permalink to this term" href="#/usr/lib/systemd/systemd-journal-gatewayd">¶</a></dt><dd><p><a href="systemd-journal-gatewayd.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-journal-gatewayd.service</span>(8)</span></a></p></dd><dt id="/usr/lib/systemd/systemd-journald"><span class="term"><code class="filename">/usr/lib/systemd/systemd-journald</code></span><a class="headerlink" title="Permalink to this term" href="#/usr/lib/systemd/systemd-journald">¶</a></dt><dd><p><a href="systemd-journald.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-journald.service</span>(8)</span></a></p></dd><dt id="/usr/lib/systemd/systemd-localed"><span class="term"><code class="filename">/usr/lib/systemd/systemd-localed</code></span><a class="headerlink" title="Permalink to this term" href="#/usr/lib/systemd/systemd-localed">¶</a></dt><dd><p><a href="systemd-localed.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-localed.service</span>(8)</span></a></p></dd><dt id="/usr/lib/systemd/systemd-logind"><span class="term"><code class="filename">/usr/lib/systemd/systemd-logind</code></span><a class="headerlink" title="Permalink to this term" href="#/usr/lib/systemd/systemd-logind">¶</a></dt><dd><p><a href="systemd-logind.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-logind.service</span>(8)</span></a></p></dd><dt id="/usr/lib/systemd/systemd-machined"><span class="term"><code class="filename">/usr/lib/systemd/systemd-machined</code></span><a class="headerlink" title="Permalink to this term" href="#/usr/lib/systemd/systemd-machined">¶</a></dt><dd><p><a href="systemd-machined.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-machined.service</span>(8)</span></a></p></dd><dt id="/usr/lib/systemd/systemd-modules-load"><span class="term"><code class="filename">/usr/lib/systemd/systemd-modules-load</code></span><a class="headerlink" title="Permalink to this term" href="#/usr/lib/systemd/systemd-modules-load">¶</a></dt><dd><p><a href="systemd-modules-load.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-modules-load.service</span>(8)</span></a></p></dd><dt id="/usr/lib/systemd/systemd-networkd"><span class="term"><code class="filename">/usr/lib/systemd/systemd-networkd</code></span><a class="headerlink" title="Permalink to this term" href="#/usr/lib/systemd/systemd-networkd">¶</a></dt><dd><p><a href="systemd-networkd.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-networkd.service</span>(8)</span></a></p></dd><dt id="/usr/lib/systemd/systemd-networkd-wait-online"><span class="term"><code class="filename">/usr/lib/systemd/systemd-networkd-wait-online</code></span><a class="headerlink" title="Permalink to this term" href="#/usr/lib/systemd/systemd-networkd-wait-online">¶</a></dt><dd><p><a href="systemd-networkd-wait-online.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-networkd-wait-online.service</span>(8)</span></a></p></dd><dt id="/usr/lib/systemd/systemd-quotacheck"><span class="term"><code class="filename">/usr/lib/systemd/systemd-quotacheck</code></span><a class="headerlink" title="Permalink to this term" href="#/usr/lib/systemd/systemd-quotacheck">¶</a></dt><dd><p><a href="systemd-quotacheck.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-quotacheck.service</span>(8)</span></a></p></dd><dt id="/usr/lib/systemd/systemd-random-seed"><span class="term"><code class="filename">/usr/lib/systemd/systemd-random-seed</code></span><a class="headerlink" title="Permalink to this term" href="#/usr/lib/systemd/systemd-random-seed">¶</a></dt><dd><p><a href="systemd-random-seed.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-random-seed.service</span>(8)</span></a></p></dd><dt id="/usr/lib/systemd/systemd-readahead/systemd-readahead"><span class="term"><span class="command"><strong>/usr/lib/systemd/systemd-readahead/systemd-readahead</strong></span></span><a class="headerlink" title="Permalink to this term" href="#/usr/lib/systemd/systemd-readahead/systemd-readahead">¶</a></dt><dd><p><a href="systemd-readahead-replay.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-readahead-replay.service</span>(8)</span></a></p></dd><dt id="/usr/lib/systemd/systemd-remount-fs"><span class="term"><code class="filename">/usr/lib/systemd/systemd-remount-fs</code></span><a class="headerlink" title="Permalink to this term" href="#/usr/lib/systemd/systemd-remount-fs">¶</a></dt><dd><p><a href="systemd-remount-fs.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-remount-fs.service</span>(8)</span></a></p></dd><dt id="/usr/lib/systemd/systemd-resolved"><span class="term"><code class="filename">/usr/lib/systemd/systemd-resolved</code></span><a class="headerlink" title="Permalink to this term" href="#/usr/lib/systemd/systemd-resolved">¶</a></dt><dd><p><a href="systemd-resolved.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-resolved.service</span>(8)</span></a></p></dd><dt id="/usr/lib/systemd/systemd-rfkill"><span class="term"><code class="filename">/usr/lib/systemd/systemd-rfkill</code></span><a class="headerlink" title="Permalink to this term" href="#/usr/lib/systemd/systemd-rfkill">¶</a></dt><dd><p><a href="systemd-rfkill@.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-rfkill@.service</span>(8)</span></a></p></dd><dt id="/usr/lib/systemd/systemd-shutdown"><span class="term"><code class="filename">/usr/lib/systemd/systemd-shutdown</code></span><a class="headerlink" title="Permalink to this term" href="#/usr/lib/systemd/systemd-shutdown">¶</a></dt><dd><p><a href="systemd-halt.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-halt.service</span>(8)</span></a></p></dd><dt id="/usr/lib/systemd/systemd-shutdownd"><span class="term"><code class="filename">/usr/lib/systemd/systemd-shutdownd</code></span><a class="headerlink" title="Permalink to this term" href="#/usr/lib/systemd/systemd-shutdownd">¶</a></dt><dd><p><a href="systemd-shutdownd.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-shutdownd.service</span>(8)</span></a></p></dd><dt id="/usr/lib/systemd/systemd-sleep"><span class="term"><code class="filename">/usr/lib/systemd/systemd-sleep</code></span><a class="headerlink" title="Permalink to this term" href="#/usr/lib/systemd/systemd-sleep">¶</a></dt><dd><p><a href="systemd-suspend.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-suspend.service</span>(8)</span></a></p></dd><dt id="/usr/lib/systemd/systemd-sysctl"><span class="term"><code class="filename">/usr/lib/systemd/systemd-sysctl</code></span><a class="headerlink" title="Permalink to this term" href="#/usr/lib/systemd/systemd-sysctl">¶</a></dt><dd><p><a href="systemd-sysctl.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-sysctl.service</span>(8)</span></a></p></dd><dt id="/usr/lib/systemd/systemd-timedated"><span class="term"><code class="filename">/usr/lib/systemd/systemd-timedated</code></span><a class="headerlink" title="Permalink to this term" href="#/usr/lib/systemd/systemd-timedated">¶</a></dt><dd><p><a href="systemd-timedated.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-timedated.service</span>(8)</span></a></p></dd><dt id="/usr/lib/systemd/systemd-timesyncd"><span class="term"><code class="filename">/usr/lib/systemd/systemd-timesyncd</code></span><a class="headerlink" title="Permalink to this term" href="#/usr/lib/systemd/systemd-timesyncd">¶</a></dt><dd><p><a href="systemd-timesyncd.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-timesyncd.service</span>(8)</span></a></p></dd><dt id="/usr/lib/systemd/systemd-udevd"><span class="term"><span class="command"><strong>/usr/lib/systemd/systemd-udevd</strong></span></span><a class="headerlink" title="Permalink to this term" href="#/usr/lib/systemd/systemd-udevd">¶</a></dt><dd><p><a href="systemd-udevd.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-udevd.service</span>(8)</span></a></p></dd><dt id="/usr/lib/systemd/systemd-update-done"><span class="term"><code class="filename">/usr/lib/systemd/systemd-update-done</code></span><a class="headerlink" title="Permalink to this term" href="#/usr/lib/systemd/systemd-update-done">¶</a></dt><dd><p><a href="systemd-update-done.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-update-done.service</span>(8)</span></a></p></dd><dt id="/usr/lib/systemd/systemd-update-utmp"><span class="term"><code class="filename">/usr/lib/systemd/systemd-update-utmp</code></span><a class="headerlink" title="Permalink to this term" href="#/usr/lib/systemd/systemd-update-utmp">¶</a></dt><dd><p><a href="systemd-update-utmp.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-update-utmp.service</span>(8)</span></a></p></dd><dt id="/usr/lib/systemd/systemd-user-sessions"><span class="term"><code class="filename">/usr/lib/systemd/systemd-user-sessions</code></span><a class="headerlink" title="Permalink to this term" href="#/usr/lib/systemd/systemd-user-sessions">¶</a></dt><dd><p><a href="systemd-user-sessions.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-user-sessions.service</span>(8)</span></a></p></dd><dt id="/usr/lib/systemd/systemd-vconsole-setup"><span class="term"><code class="filename">/usr/lib/systemd/systemd-vconsole-setup</code></span><a class="headerlink" title="Permalink to this term" href="#/usr/lib/systemd/systemd-vconsole-setup">¶</a></dt><dd><p><a href="systemd-vconsole-setup.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-vconsole-setup.service</span>(8)</span></a></p></dd><dt id="/usr/lib/systemd/user/"><span class="term"><code class="filename">/usr/lib/systemd/user/</code></span><a class="headerlink" title="Permalink to this term" href="#/usr/lib/systemd/user/">¶</a></dt><dd><p><a href="systemd.unit.html"><span class="citerefentry"><span class="refentrytitle">systemd.unit</span>(5)</span></a></p></dd><dt id="/usr/lib/systemd/user-preset/*.preset"><span class="term"><code class="filename">/usr/lib/systemd/user-preset/*.preset</code></span><a class="headerlink" title="Permalink to this term" href="#/usr/lib/systemd/user-preset/*.preset">¶</a></dt><dd><p><a href="systemd.preset.html"><span class="citerefentry"><span class="refentrytitle">systemd.preset</span>(5)</span></a></p></dd><dt id="/usr/lib/sysusers.d/"><span class="term"><code class="filename">/usr/lib/sysusers.d/</code></span><a class="headerlink" title="Permalink to this term" href="#/usr/lib/sysusers.d/">¶</a></dt><dd><p><a href="sysusers.d.html"><span class="citerefentry"><span class="refentrytitle">sysusers.d</span>(5)</span></a></p></dd><dt id="/usr/lib/sysusers.d/*.conf"><span class="term"><code class="filename">/usr/lib/sysusers.d/*.conf</code></span><a class="headerlink" title="Permalink to this term" href="#/usr/lib/sysusers.d/*.conf">¶</a></dt><dd><p><a href="sysusers.d.html"><span class="citerefentry"><span class="refentrytitle">sysusers.d</span>(5)</span></a></p></dd><dt id="/usr/lib/tmpfiles.d"><span class="term"><code class="filename">/usr/lib/tmpfiles.d</code></span><a class="headerlink" title="Permalink to this term" href="#/usr/lib/tmpfiles.d">¶</a></dt><dd><p><a href="tmpfiles.d.html"><span class="citerefentry"><span class="refentrytitle">tmpfiles.d</span>(5)</span></a></p></dd><dt id="/usr/lib/tmpfiles.d/*.conf"><span class="term"><code class="filename">/usr/lib/tmpfiles.d/*.conf</code></span><a class="headerlink" title="Permalink to this term" href="#/usr/lib/tmpfiles.d/*.conf">¶</a></dt><dd><p><a href="tmpfiles.d.html"><span class="citerefentry"><span class="refentrytitle">tmpfiles.d</span>(5)</span></a></p></dd><dt id="/usr/lib/udev"><span class="term"><code class="filename">/usr/lib/udev</code></span><a class="headerlink" title="Permalink to this term" href="#/usr/lib/udev">¶</a></dt><dd><p><a href="udev.html"><span class="citerefentry"><span class="refentrytitle">udev</span>(7)</span></a></p></dd><dt id="/usr/lib/udev/hwdb.d"><span class="term"><code class="filename">/usr/lib/udev/hwdb.d</code></span><a class="headerlink" title="Permalink to this term" href="#/usr/lib/udev/hwdb.d">¶</a></dt><dd><p><a href="udev.html"><span class="citerefentry"><span class="refentrytitle">udev</span>(7)</span></a></p></dd><dt id="/usr/lib/udev/rules.d"><span class="term"><code class="filename">/usr/lib/udev/rules.d</code></span><a class="headerlink" title="Permalink to this term" href="#/usr/lib/udev/rules.d">¶</a></dt><dd><p><a href="udev.html"><span class="citerefentry"><span class="refentrytitle">udev</span>(7)</span></a></p></dd><dt id="/usr/lib64"><span class="term"><code class="filename">/usr/lib64</code></span><a class="headerlink" title="Permalink to this term" href="#/usr/lib64">¶</a></dt><dd><p><a href="file-hierarchy.html"><span class="citerefentry"><span class="refentrytitle">file-hierarchy</span>(7)</span></a></p></dd><dt id="/usr/local/bin"><span class="term"><code class="filename">/usr/local/bin</code></span><a class="headerlink" title="Permalink to this term" href="#/usr/local/bin">¶</a></dt><dd><p><a href="systemd.exec.html"><span class="citerefentry"><span class="refentrytitle">systemd.exec</span>(5)</span></a></p></dd><dt id="/usr/local/lib/systemd/system"><span class="term"><code class="filename">/usr/local/lib/systemd/system</code></span><a class="headerlink" title="Permalink to this term" href="#/usr/local/lib/systemd/system">¶</a></dt><dd><p><a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a></p></dd><dt id="/usr/local/sbin"><span class="term"><code class="filename">/usr/local/sbin</code></span><a class="headerlink" title="Permalink to this term" href="#/usr/local/sbin">¶</a></dt><dd><p><a href="systemd.exec.html"><span class="citerefentry"><span class="refentrytitle">systemd.exec</span>(5)</span></a></p></dd><dt id="/usr/sbin"><span class="term"><code class="filename">/usr/sbin</code></span><a class="headerlink" title="Permalink to this term" href="#/usr/sbin">¶</a></dt><dd><p><a href="file-hierarchy.html"><span class="citerefentry"><span class="refentrytitle">file-hierarchy</span>(7)</span></a>, <a href="systemd.exec.html"><span class="citerefentry"><span class="refentrytitle">systemd.exec</span>(5)</span></a></p></dd><dt id="/usr/share"><span class="term"><code class="filename">/usr/share</code></span><a class="headerlink" title="Permalink to this term" href="#/usr/share">¶</a></dt><dd><p><a href="file-hierarchy.html"><span class="citerefentry"><span class="refentrytitle">file-hierarchy</span>(7)</span></a></p></dd><dt id="/usr/share/doc"><span class="term"><code class="filename">/usr/share/doc</code></span><a class="headerlink" title="Permalink to this term" href="#/usr/share/doc">¶</a></dt><dd><p><a href="file-hierarchy.html"><span class="citerefentry"><span class="refentrytitle">file-hierarchy</span>(7)</span></a></p></dd><dt id="/usr/share/factory"><span class="term"><code class="filename">/usr/share/factory</code></span><a class="headerlink" title="Permalink to this term" href="#/usr/share/factory">¶</a></dt><dd><p><a href="file-hierarchy.html"><span class="citerefentry"><span class="refentrytitle">file-hierarchy</span>(7)</span></a>, <a href="tmpfiles.d.html"><span class="citerefentry"><span class="refentrytitle">tmpfiles.d</span>(5)</span></a></p></dd><dt id="/usr/share/factory/etc"><span class="term"><code class="filename">/usr/share/factory/etc</code></span><a class="headerlink" title="Permalink to this term" href="#/usr/share/factory/etc">¶</a></dt><dd><p><a href="file-hierarchy.html"><span class="citerefentry"><span class="refentrytitle">file-hierarchy</span>(7)</span></a></p></dd><dt id="/usr/share/factory/var"><span class="term"><code class="filename">/usr/share/factory/var</code></span><a class="headerlink" title="Permalink to this term" href="#/usr/share/factory/var">¶</a></dt><dd><p><a href="file-hierarchy.html"><span class="citerefentry"><span class="refentrytitle">file-hierarchy</span>(7)</span></a></p></dd><dt id="/usr/share/zoneinfo/"><span class="term"><code class="filename">/usr/share/zoneinfo/</code></span><a class="headerlink" title="Permalink to this term" href="#/usr/share/zoneinfo/">¶</a></dt><dd><p><a href="localtime.html"><span class="citerefentry"><span class="refentrytitle">localtime</span>(5)</span></a></p></dd><dt id="/var"><span class="term"><code class="filename">/var</code></span><a class="headerlink" title="Permalink to this term" href="#/var">¶</a></dt><dd><p><a href="file-hierarchy.html"><span class="citerefentry"><span class="refentrytitle">file-hierarchy</span>(7)</span></a>, <a href="journald.conf.html"><span class="citerefentry"><span class="refentrytitle">journald.conf</span>(5)</span></a>, <a href="systemd-journald.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-journald.service</span>(8)</span></a>, <a href="systemd-nspawn.html"><span class="citerefentry"><span class="refentrytitle">systemd-nspawn</span>(1)</span></a>, <a href="systemd-update-done.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-update-done.service</span>(8)</span></a>, <a href="systemd.unit.html"><span class="citerefentry"><span class="refentrytitle">systemd.unit</span>(5)</span></a>, <a href="tmpfiles.d.html"><span class="citerefentry"><span class="refentrytitle">tmpfiles.d</span>(5)</span></a></p></dd><dt id="/var/.updated"><span class="term"><code class="filename">/var/.updated</code></span><a class="headerlink" title="Permalink to this term" href="#/var/.updated">¶</a></dt><dd><p><a href="systemd-update-done.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-update-done.service</span>(8)</span></a></p></dd><dt id="/var/cache"><span class="term"><code class="filename">/var/cache</code></span><a class="headerlink" title="Permalink to this term" href="#/var/cache">¶</a></dt><dd><p><a href="file-hierarchy.html"><span class="citerefentry"><span class="refentrytitle">file-hierarchy</span>(7)</span></a></p></dd><dt id="/var/lib"><span class="term"><code class="filename">/var/lib</code></span><a class="headerlink" title="Permalink to this term" href="#/var/lib">¶</a></dt><dd><p><a href="file-hierarchy.html"><span class="citerefentry"><span class="refentrytitle">file-hierarchy</span>(7)</span></a></p></dd><dt id="/var/lib/dbus/machine-id"><span class="term"><code class="filename">/var/lib/dbus/machine-id</code></span><a class="headerlink" title="Permalink to this term" href="#/var/lib/dbus/machine-id">¶</a></dt><dd><p><a href="machine-id.html"><span class="citerefentry"><span class="refentrytitle">machine-id</span>(5)</span></a></p></dd><dt id="/var/lib/systemd/backlight/"><span class="term"><code class="filename">/var/lib/systemd/backlight/</code></span><a class="headerlink" title="Permalink to this term" href="#/var/lib/systemd/backlight/">¶</a></dt><dd><p><a href="systemd-backlight@.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-backlight@.service</span>(8)</span></a></p></dd><dt id="/var/lib/systemd/coredump"><span class="term"><code class="filename">/var/lib/systemd/coredump</code></span><a class="headerlink" title="Permalink to this term" href="#/var/lib/systemd/coredump">¶</a></dt><dd><p><a href="coredump.conf.html"><span class="citerefentry"><span class="refentrytitle">coredump.conf</span>(5)</span></a></p></dd><dt id="/var/lib/systemd/random-seed"><span class="term"><code class="filename">/var/lib/systemd/random-seed</code></span><a class="headerlink" title="Permalink to this term" href="#/var/lib/systemd/random-seed">¶</a></dt><dd><p><a href="systemd-random-seed.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-random-seed.service</span>(8)</span></a></p></dd><dt id="/var/lib/systemd/rfkill/"><span class="term"><code class="filename">/var/lib/systemd/rfkill/</code></span><a class="headerlink" title="Permalink to this term" href="#/var/lib/systemd/rfkill/">¶</a></dt><dd><p><a href="systemd-rfkill@.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-rfkill@.service</span>(8)</span></a></p></dd><dt id="/var/log"><span class="term"><code class="filename">/var/log</code></span><a class="headerlink" title="Permalink to this term" href="#/var/log">¶</a></dt><dd><p><a href="file-hierarchy.html"><span class="citerefentry"><span class="refentrytitle">file-hierarchy</span>(7)</span></a></p></dd><dt id="/var/log/journal"><span class="term"><code class="filename">/var/log/journal</code></span><a class="headerlink" title="Permalink to this term" href="#/var/log/journal">¶</a></dt><dd><p><a href="journald.conf.html"><span class="citerefentry"><span class="refentrytitle">journald.conf</span>(5)</span></a>, <a href="systemd-journal-remote.html"><span class="citerefentry"><span class="refentrytitle">systemd-journal-remote</span>(8)</span></a>, <a href="systemd-journald.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-journald.service</span>(8)</span></a>, <a href="systemd-nspawn.html"><span class="citerefentry"><span class="refentrytitle">systemd-nspawn</span>(1)</span></a></p></dd><dt id="/var/log/journal/some.host/remote-some~host.journal"><span class="term"><code class="filename">/var/log/journal/some.host/remote-some~host.journal</code></span><a class="headerlink" title="Permalink to this term" href="#/var/log/journal/some.host/remote-some~host.journal">¶</a></dt><dd><p><a href="systemd-journal-remote.html"><span class="citerefentry"><span class="refentrytitle">systemd-journal-remote</span>(8)</span></a></p></dd><dt id="/var/run"><span class="term"><code class="filename">/var/run</code></span><a class="headerlink" title="Permalink to this term" href="#/var/run">¶</a></dt><dd><p><a href="file-hierarchy.html"><span class="citerefentry"><span class="refentrytitle">file-hierarchy</span>(7)</span></a>, <a href="tmpfiles.d.html"><span class="citerefentry"><span class="refentrytitle">tmpfiles.d</span>(5)</span></a></p></dd><dt id="/var/run/dbus/system_bus_socket"><span class="term"><code class="filename">/var/run/dbus/system_bus_socket</code></span><a class="headerlink" title="Permalink to this term" href="#/var/run/dbus/system_bus_socket">¶</a></dt><dd><p><a href="systemd-bus-proxyd@.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-bus-proxyd@.service</span>(8)</span></a></p></dd><dt id="/var/run/utmp"><span class="term"><code class="filename">/var/run/utmp</code></span><a class="headerlink" title="Permalink to this term" href="#/var/run/utmp">¶</a></dt><dd><p><a href="runlevel.html"><span class="citerefentry"><span class="refentrytitle">runlevel</span>(8)</span></a></p></dd><dt id="/var/spool"><span class="term"><code class="filename">/var/spool</code></span><a class="headerlink" title="Permalink to this term" href="#/var/spool">¶</a></dt><dd><p><a href="file-hierarchy.html"><span class="citerefentry"><span class="refentrytitle">file-hierarchy</span>(7)</span></a></p></dd><dt id="/var/tmp"><span class="term"><code class="filename">/var/tmp</code></span><a class="headerlink" title="Permalink to this term" href="#/var/tmp">¶</a></dt><dd><p><a href="file-hierarchy.html"><span class="citerefentry"><span class="refentrytitle">file-hierarchy</span>(7)</span></a>, <a href="systemd.exec.html"><span class="citerefentry"><span class="refentrytitle">systemd.exec</span>(5)</span></a>, <a href="tmpfiles.d.html"><span class="citerefentry"><span class="refentrytitle">tmpfiles.d</span>(5)</span></a></p></dd><dt id="automount.automount"><span class="term"><code class="filename"><em class="replaceable"><code>automount</code></em>.automount</code></span><a class="headerlink" title="Permalink to this term" href="#automount.automount">¶</a></dt><dd><p><a href="systemd.automount.html"><span class="citerefentry"><span class="refentrytitle">systemd.automount</span>(5)</span></a>, <a href="systemd.unit.html"><span class="citerefentry"><span class="refentrytitle">systemd.unit</span>(5)</span></a></p></dd><dt id="basic.target"><span class="term"><code class="filename">basic.target</code></span><a class="headerlink" title="Permalink to this term" href="#basic.target">¶</a></dt><dd><p><a href="systemd.special.html"><span class="citerefentry"><span class="refentrytitle">systemd.special</span>(7)</span></a></p></dd><dt id="bluetooth.target"><span class="term"><code class="filename">bluetooth.target</code></span><a class="headerlink" title="Permalink to this term" href="#bluetooth.target">¶</a></dt><dd><p><a href="systemd.special.html"><span class="citerefentry"><span class="refentrytitle">systemd.special</span>(7)</span></a></p></dd><dt id="bootctl"><span class="term"><span class="command"><strong>bootctl</strong></span></span><a class="headerlink" title="Permalink to this term" href="#bootctl">¶</a></dt><dd><p><a href="bootctl.html"><span class="citerefentry"><span class="refentrytitle">bootctl</span>(1)</span></a></p></dd><dt id="busctl"><span class="term"><span class="command"><strong>busctl</strong></span></span><a class="headerlink" title="Permalink to this term" href="#busctl">¶</a></dt><dd><p><a href="busctl.html"><span class="citerefentry"><span class="refentrytitle">busctl</span>(1)</span></a></p></dd><dt id="coredumpctl"><span class="term"><span class="command"><strong>coredumpctl</strong></span></span><a class="headerlink" title="Permalink to this term" href="#coredumpctl">¶</a></dt><dd><p><a href="coredumpctl.html"><span class="citerefentry"><span class="refentrytitle">coredumpctl</span>(1)</span></a></p></dd><dt id="cryptsetup-pre.target"><span class="term"><code class="filename">cryptsetup-pre.target</code></span><a class="headerlink" title="Permalink to this term" href="#cryptsetup-pre.target">¶</a></dt><dd><p><a href="systemd.special.html"><span class="citerefentry"><span class="refentrytitle">systemd.special</span>(7)</span></a></p></dd><dt id="cryptsetup.target"><span class="term"><code class="filename">cryptsetup.target</code></span><a class="headerlink" title="Permalink to this term" href="#cryptsetup.target">¶</a></dt><dd><p><a href="systemd.special.html"><span class="citerefentry"><span class="refentrytitle">systemd.special</span>(7)</span></a></p></dd><dt id="ctrl-alt-del.target"><span class="term"><code class="filename">ctrl-alt-del.target</code></span><a class="headerlink" title="Permalink to this term" href="#ctrl-alt-del.target">¶</a></dt><dd><p><a href="systemd.special.html"><span class="citerefentry"><span class="refentrytitle">systemd.special</span>(7)</span></a></p></dd><dt id="dbus.service"><span class="term"><code class="filename">dbus.service</code></span><a class="headerlink" title="Permalink to this term" href="#dbus.service">¶</a></dt><dd><p><a href="systemd.special.html"><span class="citerefentry"><span class="refentrytitle">systemd.special</span>(7)</span></a></p></dd><dt id="dbus.socket"><span class="term"><code class="filename">dbus.socket</code></span><a class="headerlink" title="Permalink to this term" href="#dbus.socket">¶</a></dt><dd><p><a href="systemd.special.html"><span class="citerefentry"><span class="refentrytitle">systemd.special</span>(7)</span></a></p></dd><dt id="default.target"><span class="term"><code class="filename">default.target</code></span><a class="headerlink" title="Permalink to this term" href="#default.target">¶</a></dt><dd><p><a href="systemd.special.html"><span class="citerefentry"><span class="refentrytitle">systemd.special</span>(7)</span></a></p></dd><dt id="device.device"><span class="term"><code class="filename"><em class="replaceable"><code>device</code></em>.device</code></span><a class="headerlink" title="Permalink to this term" href="#device.device">¶</a></dt><dd><p><a href="systemd.device.html"><span class="citerefentry"><span class="refentrytitle">systemd.device</span>(5)</span></a>, <a href="systemd.unit.html"><span class="citerefentry"><span class="refentrytitle">systemd.unit</span>(5)</span></a></p></dd><dt id="display-manager.service"><span class="term"><code class="filename">display-manager.service</code></span><a class="headerlink" title="Permalink to this term" href="#display-manager.service">¶</a></dt><dd><p><a href="systemd.special.html"><span class="citerefentry"><span class="refentrytitle">systemd.special</span>(7)</span></a></p></dd><dt id="emergency.target"><span class="term"><code class="filename">emergency.target</code></span><a class="headerlink" title="Permalink to this term" href="#emergency.target">¶</a></dt><dd><p><a href="systemd.special.html"><span class="citerefentry"><span class="refentrytitle">systemd.special</span>(7)</span></a></p></dd><dt id="exit.target"><span class="term"><code class="filename">exit.target</code></span><a class="headerlink" title="Permalink to this term" href="#exit.target">¶</a></dt><dd><p><a href="systemd.special.html"><span class="citerefentry"><span class="refentrytitle">systemd.special</span>(7)</span></a></p></dd><dt id="final.target"><span class="term"><code class="filename">final.target</code></span><a class="headerlink" title="Permalink to this term" href="#final.target">¶</a></dt><dd><p><a href="systemd.special.html"><span class="citerefentry"><span class="refentrytitle">systemd.special</span>(7)</span></a></p></dd><dt id="getty.target"><span class="term"><code class="filename">getty.target</code></span><a class="headerlink" title="Permalink to this term" href="#getty.target">¶</a></dt><dd><p><a href="systemd.special.html"><span class="citerefentry"><span class="refentrytitle">systemd.special</span>(7)</span></a></p></dd><dt id="graphical.target"><span class="term"><code class="filename">graphical.target</code></span><a class="headerlink" title="Permalink to this term" href="#graphical.target">¶</a></dt><dd><p><a href="systemd.special.html"><span class="citerefentry"><span class="refentrytitle">systemd.special</span>(7)</span></a></p></dd><dt id="halt"><span class="term"><span class="command"><strong>halt</strong></span></span><a class="headerlink" title="Permalink to this term" href="#halt">¶</a></dt><dd><p><a href="halt.html"><span class="citerefentry"><span class="refentrytitle">halt</span>(8)</span></a></p></dd><dt id="halt.target"><span class="term"><code class="filename">halt.target</code></span><a class="headerlink" title="Permalink to this term" href="#halt.target">¶</a></dt><dd><p><a href="systemd.special.html"><span class="citerefentry"><span class="refentrytitle">systemd.special</span>(7)</span></a></p></dd><dt id="hibernate.target"><span class="term"><code class="filename">hibernate.target</code></span><a class="headerlink" title="Permalink to this term" href="#hibernate.target">¶</a></dt><dd><p><a href="systemd.special.html"><span class="citerefentry"><span class="refentrytitle">systemd.special</span>(7)</span></a></p></dd><dt id="hostnamectl"><span class="term"><span class="command"><strong>hostnamectl</strong></span></span><a class="headerlink" title="Permalink to this term" href="#hostnamectl">¶</a></dt><dd><p><a href="hostnamectl.html"><span class="citerefentry"><span class="refentrytitle">hostnamectl</span>(1)</span></a></p></dd><dt id="hybrid-sleep.target"><span class="term"><code class="filename">hybrid-sleep.target</code></span><a class="headerlink" title="Permalink to this term" href="#hybrid-sleep.target">¶</a></dt><dd><p><a href="systemd.special.html"><span class="citerefentry"><span class="refentrytitle">systemd.special</span>(7)</span></a></p></dd><dt id="init"><span class="term"><span class="command"><strong>init</strong></span></span><a class="headerlink" title="Permalink to this term" href="#init">¶</a></dt><dd><p><a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a></p></dd><dt id="initrd-fs.target"><span class="term"><code class="filename">initrd-fs.target</code></span><a class="headerlink" title="Permalink to this term" href="#initrd-fs.target">¶</a></dt><dd><p><a href="systemd.special.html"><span class="citerefentry"><span class="refentrytitle">systemd.special</span>(7)</span></a></p></dd><dt id="initrd-root-fs.target"><span class="term"><code class="filename">initrd-root-fs.target</code></span><a class="headerlink" title="Permalink to this term" href="#initrd-root-fs.target">¶</a></dt><dd><p><a href="systemd.special.html"><span class="citerefentry"><span class="refentrytitle">systemd.special</span>(7)</span></a></p></dd><dt id="journalctl"><span class="term"><span class="command"><strong>journalctl</strong></span></span><a class="headerlink" title="Permalink to this term" href="#journalctl">¶</a></dt><dd><p><a href="journalctl.html"><span class="citerefentry"><span class="refentrytitle">journalctl</span>(1)</span></a></p></dd><dt id="kbrequest.target"><span class="term"><code class="filename">kbrequest.target</code></span><a class="headerlink" title="Permalink to this term" href="#kbrequest.target">¶</a></dt><dd><p><a href="systemd.special.html"><span class="citerefentry"><span class="refentrytitle">systemd.special</span>(7)</span></a></p></dd><dt id="kernel-install"><span class="term"><span class="command"><strong>kernel-install</strong></span></span><a class="headerlink" title="Permalink to this term" href="#kernel-install">¶</a></dt><dd><p><a href="kernel-install.html"><span class="citerefentry"><span class="refentrytitle">kernel-install</span>(8)</span></a></p></dd><dt id="kexec.target"><span class="term"><code class="filename">kexec.target</code></span><a class="headerlink" title="Permalink to this term" href="#kexec.target">¶</a></dt><dd><p><a href="systemd.special.html"><span class="citerefentry"><span class="refentrytitle">systemd.special</span>(7)</span></a></p></dd><dt id="link.link"><span class="term"><code class="filename"><em class="replaceable"><code>link</code></em>.link</code></span><a class="headerlink" title="Permalink to this term" href="#link.link">¶</a></dt><dd><p><a href="systemd.link.html"><span class="citerefentry"><span class="refentrytitle">systemd.link</span>(5)</span></a></p></dd><dt id="local-fs-pre.target"><span class="term"><code class="filename">local-fs-pre.target</code></span><a class="headerlink" title="Permalink to this term" href="#local-fs-pre.target">¶</a></dt><dd><p><a href="systemd.special.html"><span class="citerefentry"><span class="refentrytitle">systemd.special</span>(7)</span></a></p></dd><dt id="local-fs.target"><span class="term"><code class="filename">local-fs.target</code></span><a class="headerlink" title="Permalink to this term" href="#local-fs.target">¶</a></dt><dd><p><a href="systemd.special.html"><span class="citerefentry"><span class="refentrytitle">systemd.special</span>(7)</span></a></p></dd><dt id="localectl"><span class="term"><span class="command"><strong>localectl</strong></span></span><a class="headerlink" title="Permalink to this term" href="#localectl">¶</a></dt><dd><p><a href="localectl.html"><span class="citerefentry"><span class="refentrytitle">localectl</span>(1)</span></a></p></dd><dt id="loginctl"><span class="term"><span class="command"><strong>loginctl</strong></span></span><a class="headerlink" title="Permalink to this term" href="#loginctl">¶</a></dt><dd><p><a href="loginctl.html"><span class="citerefentry"><span class="refentrytitle">loginctl</span>(1)</span></a></p></dd><dt id="machine.slice"><span class="term"><code class="filename">machine.slice</code></span><a class="headerlink" title="Permalink to this term" href="#machine.slice">¶</a></dt><dd><p><a href="systemd.special.html"><span class="citerefentry"><span class="refentrytitle">systemd.special</span>(7)</span></a></p></dd><dt id="machinectl"><span class="term"><span class="command"><strong>machinectl</strong></span></span><a class="headerlink" title="Permalink to this term" href="#machinectl">¶</a></dt><dd><p><a href="machinectl.html"><span class="citerefentry"><span class="refentrytitle">machinectl</span>(1)</span></a></p></dd><dt id="mount.mount"><span class="term"><code class="filename"><em class="replaceable"><code>mount</code></em>.mount</code></span><a class="headerlink" title="Permalink to this term" href="#mount.mount">¶</a></dt><dd><p><a href="systemd.exec.html"><span class="citerefentry"><span class="refentrytitle">systemd.exec</span>(5)</span></a>, <a href="systemd.kill.html"><span class="citerefentry"><span class="refentrytitle">systemd.kill</span>(5)</span></a>, <a href="systemd.mount.html"><span class="citerefentry"><span class="refentrytitle">systemd.mount</span>(5)</span></a>, <a href="systemd.resource-control.html"><span class="citerefentry"><span class="refentrytitle">systemd.resource-control</span>(5)</span></a>, <a href="systemd.unit.html"><span class="citerefentry"><span class="refentrytitle">systemd.unit</span>(5)</span></a></p></dd><dt id="multi-user.target"><span class="term"><code class="filename">multi-user.target</code></span><a class="headerlink" title="Permalink to this term" href="#multi-user.target">¶</a></dt><dd><p><a href="systemd.special.html"><span class="citerefentry"><span class="refentrytitle">systemd.special</span>(7)</span></a></p></dd><dt id="netdev.netdev"><span class="term"><code class="filename"><em class="replaceable"><code>netdev</code></em>.netdev</code></span><a class="headerlink" title="Permalink to this term" href="#netdev.netdev">¶</a></dt><dd><p><a href="systemd.netdev.html"><span class="citerefentry"><span class="refentrytitle">systemd.netdev</span>(5)</span></a></p></dd><dt id="network.network"><span class="term"><code class="filename"><em class="replaceable"><code>network</code></em>.network</code></span><a class="headerlink" title="Permalink to this term" href="#network.network">¶</a></dt><dd><p><a href="systemd.network.html"><span class="citerefentry"><span class="refentrytitle">systemd.network</span>(5)</span></a></p></dd><dt id="network-online.target"><span class="term"><code class="filename">network-online.target</code></span><a class="headerlink" title="Permalink to this term" href="#network-online.target">¶</a></dt><dd><p><a href="systemd.special.html"><span class="citerefentry"><span class="refentrytitle">systemd.special</span>(7)</span></a></p></dd><dt id="network-pre.target"><span class="term"><code class="filename">network-pre.target</code></span><a class="headerlink" title="Permalink to this term" href="#network-pre.target">¶</a></dt><dd><p><a href="systemd.special.html"><span class="citerefentry"><span class="refentrytitle">systemd.special</span>(7)</span></a></p></dd><dt id="network.target"><span class="term"><code class="filename">network.target</code></span><a class="headerlink" title="Permalink to this term" href="#network.target">¶</a></dt><dd><p><a href="systemd.special.html"><span class="citerefentry"><span class="refentrytitle">systemd.special</span>(7)</span></a></p></dd><dt id="nss-lookup.target"><span class="term"><code class="filename">nss-lookup.target</code></span><a class="headerlink" title="Permalink to this term" href="#nss-lookup.target">¶</a></dt><dd><p><a href="systemd.special.html"><span class="citerefentry"><span class="refentrytitle">systemd.special</span>(7)</span></a></p></dd><dt id="nss-myhostname.la"><span class="term"><code class="filename">nss-myhostname.la</code></span><a class="headerlink" title="Permalink to this term" href="#nss-myhostname.la">¶</a></dt><dd><p><a href="nss-myhostname.html"><span class="citerefentry"><span class="refentrytitle">nss-myhostname</span>(8)</span></a></p></dd><dt id="nss-user-lookup.target"><span class="term"><code class="filename">nss-user-lookup.target</code></span><a class="headerlink" title="Permalink to this term" href="#nss-user-lookup.target">¶</a></dt><dd><p><a href="systemd.special.html"><span class="citerefentry"><span class="refentrytitle">systemd.special</span>(7)</span></a></p></dd><dt id="pam_systemd.so"><span class="term"><code class="filename">pam_systemd.so</code></span><a class="headerlink" title="Permalink to this term" href="#pam_systemd.so">¶</a></dt><dd><p><a href="pam_systemd.html"><span class="citerefentry"><span class="refentrytitle">pam_systemd</span>(8)</span></a></p></dd><dt id="path.path"><span class="term"><code class="filename"><em class="replaceable"><code>path</code></em>.path</code></span><a class="headerlink" title="Permalink to this term" href="#path.path">¶</a></dt><dd><p><a href="systemd.path.html"><span class="citerefentry"><span class="refentrytitle">systemd.path</span>(5)</span></a>, <a href="systemd.unit.html"><span class="citerefentry"><span class="refentrytitle">systemd.unit</span>(5)</span></a></p></dd><dt id="paths.target"><span class="term"><code class="filename">paths.target</code></span><a class="headerlink" title="Permalink to this term" href="#paths.target">¶</a></dt><dd><p><a href="systemd.special.html"><span class="citerefentry"><span class="refentrytitle">systemd.special</span>(7)</span></a></p></dd><dt id="pkg-config"><span class="term"><span class="command"><strong>pkg-config</strong></span></span><a class="headerlink" title="Permalink to this term" href="#pkg-config">¶</a></dt><dd><p><a href="sd-daemon.html"><span class="citerefentry"><span class="refentrytitle">sd-daemon</span>(3)</span></a>, <a href="sd-id128.html"><span class="citerefentry"><span class="refentrytitle">sd-id128</span>(3)</span></a>, <a href="sd-journal.html"><span class="citerefentry"><span class="refentrytitle">sd-journal</span>(3)</span></a>, <a href="sd-login.html"><span class="citerefentry"><span class="refentrytitle">sd-login</span>(3)</span></a></p></dd><dt id="poweroff"><span class="term"><span class="command"><strong>poweroff</strong></span></span><a class="headerlink" title="Permalink to this term" href="#poweroff">¶</a></dt><dd><p><a href="halt.html"><span class="citerefentry"><span class="refentrytitle">halt</span>(8)</span></a></p></dd><dt id="poweroff.target"><span class="term"><code class="filename">poweroff.target</code></span><a class="headerlink" title="Permalink to this term" href="#poweroff.target">¶</a></dt><dd><p><a href="systemd.special.html"><span class="citerefentry"><span class="refentrytitle">systemd.special</span>(7)</span></a></p></dd><dt id="printer.target"><span class="term"><code class="filename">printer.target</code></span><a class="headerlink" title="Permalink to this term" href="#printer.target">¶</a></dt><dd><p><a href="systemd.special.html"><span class="citerefentry"><span class="refentrytitle">systemd.special</span>(7)</span></a></p></dd><dt id="reboot"><span class="term"><span class="command"><strong>reboot</strong></span></span><a class="headerlink" title="Permalink to this term" href="#reboot">¶</a></dt><dd><p><a href="halt.html"><span class="citerefentry"><span class="refentrytitle">halt</span>(8)</span></a></p></dd><dt id="reboot.target"><span class="term"><code class="filename">reboot.target</code></span><a class="headerlink" title="Permalink to this term" href="#reboot.target">¶</a></dt><dd><p><a href="systemd.special.html"><span class="citerefentry"><span class="refentrytitle">systemd.special</span>(7)</span></a></p></dd><dt id="remote-fs-pre.target"><span class="term"><code class="filename">remote-fs-pre.target</code></span><a class="headerlink" title="Permalink to this term" href="#remote-fs-pre.target">¶</a></dt><dd><p><a href="systemd.special.html"><span class="citerefentry"><span class="refentrytitle">systemd.special</span>(7)</span></a></p></dd><dt id="remote-fs.target"><span class="term"><code class="filename">remote-fs.target</code></span><a class="headerlink" title="Permalink to this term" href="#remote-fs.target">¶</a></dt><dd><p><a href="systemd.special.html"><span class="citerefentry"><span class="refentrytitle">systemd.special</span>(7)</span></a></p></dd><dt id="rescue.target"><span class="term"><code class="filename">rescue.target</code></span><a class="headerlink" title="Permalink to this term" href="#rescue.target">¶</a></dt><dd><p><a href="systemd.special.html"><span class="citerefentry"><span class="refentrytitle">systemd.special</span>(7)</span></a></p></dd><dt id="rpcbind.target"><span class="term"><code class="filename">rpcbind.target</code></span><a class="headerlink" title="Permalink to this term" href="#rpcbind.target">¶</a></dt><dd><p><a href="systemd.special.html"><span class="citerefentry"><span class="refentrytitle">systemd.special</span>(7)</span></a></p></dd><dt id="runlevel"><span class="term"><span class="command"><strong>runlevel</strong></span></span><a class="headerlink" title="Permalink to this term" href="#runlevel">¶</a></dt><dd><p><a href="runlevel.html"><span class="citerefentry"><span class="refentrytitle">runlevel</span>(8)</span></a></p></dd><dt id="runlevel2.target"><span class="term"><code class="filename">runlevel2.target</code></span><a class="headerlink" title="Permalink to this term" href="#runlevel2.target">¶</a></dt><dd><p><a href="systemd.special.html"><span class="citerefentry"><span class="refentrytitle">systemd.special</span>(7)</span></a></p></dd><dt id="runlevel3.target"><span class="term"><code class="filename">runlevel3.target</code></span><a class="headerlink" title="Permalink to this term" href="#runlevel3.target">¶</a></dt><dd><p><a href="systemd.special.html"><span class="citerefentry"><span class="refentrytitle">systemd.special</span>(7)</span></a></p></dd><dt id="runlevel4.target"><span class="term"><code class="filename">runlevel4.target</code></span><a class="headerlink" title="Permalink to this term" href="#runlevel4.target">¶</a></dt><dd><p><a href="systemd.special.html"><span class="citerefentry"><span class="refentrytitle">systemd.special</span>(7)</span></a></p></dd><dt id="runlevel5.target"><span class="term"><code class="filename">runlevel5.target</code></span><a class="headerlink" title="Permalink to this term" href="#runlevel5.target">¶</a></dt><dd><p><a href="systemd.special.html"><span class="citerefentry"><span class="refentrytitle">systemd.special</span>(7)</span></a></p></dd><dt id="scope.scope"><span class="term"><code class="filename"><em class="replaceable"><code>scope</code></em>.scope</code></span><a class="headerlink" title="Permalink to this term" href="#scope.scope">¶</a></dt><dd><p><a href="systemd.kill.html"><span class="citerefentry"><span class="refentrytitle">systemd.kill</span>(5)</span></a>, <a href="systemd.resource-control.html"><span class="citerefentry"><span class="refentrytitle">systemd.resource-control</span>(5)</span></a>, <a href="systemd.scope.html"><span class="citerefentry"><span class="refentrytitle">systemd.scope</span>(5)</span></a>, <a href="systemd.unit.html"><span class="citerefentry"><span class="refentrytitle">systemd.unit</span>(5)</span></a></p></dd><dt id="service.service"><span class="term"><code class="filename"><em class="replaceable"><code>service</code></em>.service</code></span><a class="headerlink" title="Permalink to this term" href="#service.service">¶</a></dt><dd><p><a href="systemd.exec.html"><span class="citerefentry"><span class="refentrytitle">systemd.exec</span>(5)</span></a>, <a href="systemd.kill.html"><span class="citerefentry"><span class="refentrytitle">systemd.kill</span>(5)</span></a>, <a href="systemd.resource-control.html"><span class="citerefentry"><span class="refentrytitle">systemd.resource-control</span>(5)</span></a>, <a href="systemd.service.html"><span class="citerefentry"><span class="refentrytitle">systemd.service</span>(5)</span></a>, <a href="systemd.unit.html"><span class="citerefentry"><span class="refentrytitle">systemd.unit</span>(5)</span></a></p></dd><dt id="shutdown"><span class="term"><span class="command"><strong>shutdown</strong></span></span><a class="headerlink" title="Permalink to this term" href="#shutdown">¶</a></dt><dd><p><a href="shutdown.html"><span class="citerefentry"><span class="refentrytitle">shutdown</span>(8)</span></a></p></dd><dt id="shutdown.target"><span class="term"><code class="filename">shutdown.target</code></span><a class="headerlink" title="Permalink to this term" href="#shutdown.target">¶</a></dt><dd><p><a href="systemd.special.html"><span class="citerefentry"><span class="refentrytitle">systemd.special</span>(7)</span></a></p></dd><dt id="sigpwr.target"><span class="term"><code class="filename">sigpwr.target</code></span><a class="headerlink" title="Permalink to this term" href="#sigpwr.target">¶</a></dt><dd><p><a href="systemd.special.html"><span class="citerefentry"><span class="refentrytitle">systemd.special</span>(7)</span></a></p></dd><dt id="sleep.target"><span class="term"><code class="filename">sleep.target</code></span><a class="headerlink" title="Permalink to this term" href="#sleep.target">¶</a></dt><dd><p><a href="systemd.special.html"><span class="citerefentry"><span class="refentrytitle">systemd.special</span>(7)</span></a></p></dd><dt id="slice.slice"><span class="term"><code class="filename"><em class="replaceable"><code>slice</code></em>.slice</code></span><a class="headerlink" title="Permalink to this term" href="#slice.slice">¶</a></dt><dd><p><a href="systemd.resource-control.html"><span class="citerefentry"><span class="refentrytitle">systemd.resource-control</span>(5)</span></a>, <a href="systemd.slice.html"><span class="citerefentry"><span class="refentrytitle">systemd.slice</span>(5)</span></a>, <a href="systemd.unit.html"><span class="citerefentry"><span class="refentrytitle">systemd.unit</span>(5)</span></a></p></dd><dt id="smartcard.target"><span class="term"><code class="filename">smartcard.target</code></span><a class="headerlink" title="Permalink to this term" href="#smartcard.target">¶</a></dt><dd><p><a href="systemd.special.html"><span class="citerefentry"><span class="refentrytitle">systemd.special</span>(7)</span></a></p></dd><dt id="snapshot.snapshot"><span class="term"><code class="filename"><em class="replaceable"><code>snapshot</code></em>.snapshot</code></span><a class="headerlink" title="Permalink to this term" href="#snapshot.snapshot">¶</a></dt><dd><p><a href="systemd.snapshot.html"><span class="citerefentry"><span class="refentrytitle">systemd.snapshot</span>(5)</span></a>, <a href="systemd.unit.html"><span class="citerefentry"><span class="refentrytitle">systemd.unit</span>(5)</span></a></p></dd><dt id="socket.socket"><span class="term"><code class="filename"><em class="replaceable"><code>socket</code></em>.socket</code></span><a class="headerlink" title="Permalink to this term" href="#socket.socket">¶</a></dt><dd><p><a href="systemd.exec.html"><span class="citerefentry"><span class="refentrytitle">systemd.exec</span>(5)</span></a>, <a href="systemd.kill.html"><span class="citerefentry"><span class="refentrytitle">systemd.kill</span>(5)</span></a>, <a href="systemd.resource-control.html"><span class="citerefentry"><span class="refentrytitle">systemd.resource-control</span>(5)</span></a>, <a href="systemd.socket.html"><span class="citerefentry"><span class="refentrytitle">systemd.socket</span>(5)</span></a>, <a href="systemd.unit.html"><span class="citerefentry"><span class="refentrytitle">systemd.unit</span>(5)</span></a></p></dd><dt id="sockets.target"><span class="term"><code class="filename">sockets.target</code></span><a class="headerlink" title="Permalink to this term" href="#sockets.target">¶</a></dt><dd><p><a href="systemd.special.html"><span class="citerefentry"><span class="refentrytitle">systemd.special</span>(7)</span></a></p></dd><dt id="sound.target"><span class="term"><code class="filename">sound.target</code></span><a class="headerlink" title="Permalink to this term" href="#sound.target">¶</a></dt><dd><p><a href="systemd.special.html"><span class="citerefentry"><span class="refentrytitle">systemd.special</span>(7)</span></a></p></dd><dt id="suspend.target"><span class="term"><code class="filename">suspend.target</code></span><a class="headerlink" title="Permalink to this term" href="#suspend.target">¶</a></dt><dd><p><a href="systemd.special.html"><span class="citerefentry"><span class="refentrytitle">systemd.special</span>(7)</span></a></p></dd><dt id="swap.swap"><span class="term"><code class="filename"><em class="replaceable"><code>swap</code></em>.swap</code></span><a class="headerlink" title="Permalink to this term" href="#swap.swap">¶</a></dt><dd><p><a href="systemd.exec.html"><span class="citerefentry"><span class="refentrytitle">systemd.exec</span>(5)</span></a>, <a href="systemd.kill.html"><span class="citerefentry"><span class="refentrytitle">systemd.kill</span>(5)</span></a>, <a href="systemd.resource-control.html"><span class="citerefentry"><span class="refentrytitle">systemd.resource-control</span>(5)</span></a>, <a href="systemd.swap.html"><span class="citerefentry"><span class="refentrytitle">systemd.swap</span>(5)</span></a>, <a href="systemd.unit.html"><span class="citerefentry"><span class="refentrytitle">systemd.unit</span>(5)</span></a></p></dd><dt id="swap.target"><span class="term"><code class="filename">swap.target</code></span><a class="headerlink" title="Permalink to this term" href="#swap.target">¶</a></dt><dd><p><a href="systemd.special.html"><span class="citerefentry"><span class="refentrytitle">systemd.special</span>(7)</span></a></p></dd><dt id="sysinit.target"><span class="term"><code class="filename">sysinit.target</code></span><a class="headerlink" title="Permalink to this term" href="#sysinit.target">¶</a></dt><dd><p><a href="systemd.special.html"><span class="citerefentry"><span class="refentrytitle">systemd.special</span>(7)</span></a></p></dd><dt id="syslog.socket"><span class="term"><code class="filename">syslog.socket</code></span><a class="headerlink" title="Permalink to this term" href="#syslog.socket">¶</a></dt><dd><p><a href="systemd.special.html"><span class="citerefentry"><span class="refentrytitle">systemd.special</span>(7)</span></a></p></dd><dt id="system-update.target"><span class="term"><code class="filename">system-update.target</code></span><a class="headerlink" title="Permalink to this term" href="#system-update.target">¶</a></dt><dd><p><a href="systemd.special.html"><span class="citerefentry"><span class="refentrytitle">systemd.special</span>(7)</span></a></p></dd><dt id="system.slice"><span class="term"><code class="filename">system.slice</code></span><a class="headerlink" title="Permalink to this term" href="#system.slice">¶</a></dt><dd><p><a href="systemd.special.html"><span class="citerefentry"><span class="refentrytitle">systemd.special</span>(7)</span></a></p></dd><dt id="systemctl"><span class="term"><span class="command"><strong>systemctl</strong></span></span><a class="headerlink" title="Permalink to this term" href="#systemctl">¶</a></dt><dd><p><a href="systemctl.html"><span class="citerefentry"><span class="refentrytitle">systemctl</span>(1)</span></a></p></dd><dt id="systemd"><span class="term"><span class="command"><strong>systemd</strong></span></span><a class="headerlink" title="Permalink to this term" href="#systemd">¶</a></dt><dd><p><a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a></p></dd><dt id="systemd-analyze"><span class="term"><span class="command"><strong>systemd-analyze</strong></span></span><a class="headerlink" title="Permalink to this term" href="#systemd-analyze">¶</a></dt><dd><p><a href="systemd-analyze.html"><span class="citerefentry"><span class="refentrytitle">systemd-analyze</span>(1)</span></a></p></dd><dt id="systemd-ask-password"><span class="term"><span class="command"><strong>systemd-ask-password</strong></span></span><a class="headerlink" title="Permalink to this term" href="#systemd-ask-password">¶</a></dt><dd><p><a href="systemd-ask-password.html"><span class="citerefentry"><span class="refentrytitle">systemd-ask-password</span>(1)</span></a></p></dd><dt id="systemd-ask-password-console.path"><span class="term"><code class="filename">systemd-ask-password-console.path</code></span><a class="headerlink" title="Permalink to this term" href="#systemd-ask-password-console.path">¶</a></dt><dd><p><a href="systemd-ask-password-console.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-ask-password-console.service</span>(8)</span></a></p></dd><dt id="systemd-ask-password-console.service"><span class="term"><code class="filename">systemd-ask-password-console.service</code></span><a class="headerlink" title="Permalink to this term" href="#systemd-ask-password-console.service">¶</a></dt><dd><p><a href="systemd-ask-password-console.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-ask-password-console.service</span>(8)</span></a></p></dd><dt id="systemd-ask-password-wall.path"><span class="term"><code class="filename">systemd-ask-password-wall.path</code></span><a class="headerlink" title="Permalink to this term" href="#systemd-ask-password-wall.path">¶</a></dt><dd><p><a href="systemd-ask-password-console.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-ask-password-console.service</span>(8)</span></a></p></dd><dt id="systemd-ask-password-wall.service"><span class="term"><code class="filename">systemd-ask-password-wall.service</code></span><a class="headerlink" title="Permalink to this term" href="#systemd-ask-password-wall.service">¶</a></dt><dd><p><a href="systemd-ask-password-console.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-ask-password-console.service</span>(8)</span></a></p></dd><dt id="systemd-backlight@.service"><span class="term"><code class="filename">systemd-backlight@.service</code></span><a class="headerlink" title="Permalink to this term" href="#systemd-backlight@.service">¶</a></dt><dd><p><a href="systemd-backlight@.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-backlight@.service</span>(8)</span></a></p></dd><dt id="systemd-binfmt.service"><span class="term"><code class="filename">systemd-binfmt.service</code></span><a class="headerlink" title="Permalink to this term" href="#systemd-binfmt.service">¶</a></dt><dd><p><a href="systemd-binfmt.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-binfmt.service</span>(8)</span></a></p></dd><dt id="systemd-bus-proxyd.socket"><span class="term"><code class="filename">systemd-bus-proxyd.socket</code></span><a class="headerlink" title="Permalink to this term" href="#systemd-bus-proxyd.socket">¶</a></dt><dd><p><a href="systemd-bus-proxyd@.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-bus-proxyd@.service</span>(8)</span></a></p></dd><dt id="systemd-bus-proxyd@.service"><span class="term"><code class="filename">systemd-bus-proxyd@.service</code></span><a class="headerlink" title="Permalink to this term" href="#systemd-bus-proxyd@.service">¶</a></dt><dd><p><a href="systemd-bus-proxyd@.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-bus-proxyd@.service</span>(8)</span></a></p></dd><dt id="systemd-cat"><span class="term"><span class="command"><strong>systemd-cat</strong></span></span><a class="headerlink" title="Permalink to this term" href="#systemd-cat">¶</a></dt><dd><p><a href="systemd-cat.html"><span class="citerefentry"><span class="refentrytitle">systemd-cat</span>(1)</span></a></p></dd><dt id="systemd-cgls"><span class="term"><span class="command"><strong>systemd-cgls</strong></span></span><a class="headerlink" title="Permalink to this term" href="#systemd-cgls">¶</a></dt><dd><p><a href="systemd-cgls.html"><span class="citerefentry"><span class="refentrytitle">systemd-cgls</span>(1)</span></a></p></dd><dt id="systemd-cgtop"><span class="term"><span class="command"><strong>systemd-cgtop</strong></span></span><a class="headerlink" title="Permalink to this term" href="#systemd-cgtop">¶</a></dt><dd><p><a href="systemd-cgtop.html"><span class="citerefentry"><span class="refentrytitle">systemd-cgtop</span>(1)</span></a></p></dd><dt id="systemd-cryptsetup@.service"><span class="term"><code class="filename">systemd-cryptsetup@.service</code></span><a class="headerlink" title="Permalink to this term" href="#systemd-cryptsetup@.service">¶</a></dt><dd><p><a href="systemd-cryptsetup@.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-cryptsetup@.service</span>(8)</span></a></p></dd><dt id="systemd-delta"><span class="term"><span class="command"><strong>systemd-delta</strong></span></span><a class="headerlink" title="Permalink to this term" href="#systemd-delta">¶</a></dt><dd><p><a href="systemd-delta.html"><span class="citerefentry"><span class="refentrytitle">systemd-delta</span>(1)</span></a></p></dd><dt id="systemd-detect-virt"><span class="term"><span class="command"><strong>systemd-detect-virt</strong></span></span><a class="headerlink" title="Permalink to this term" href="#systemd-detect-virt">¶</a></dt><dd><p><a href="systemd-detect-virt.html"><span class="citerefentry"><span class="refentrytitle">systemd-detect-virt</span>(1)</span></a></p></dd><dt id="systemd-fsck-root.service"><span class="term"><code class="filename">systemd-fsck-root.service</code></span><a class="headerlink" title="Permalink to this term" href="#systemd-fsck-root.service">¶</a></dt><dd><p><a href="systemd-fsck@.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-fsck@.service</span>(8)</span></a></p></dd><dt id="systemd-fsck@.service"><span class="term"><code class="filename">systemd-fsck@.service</code></span><a class="headerlink" title="Permalink to this term" href="#systemd-fsck@.service">¶</a></dt><dd><p><a href="systemd-fsck@.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-fsck@.service</span>(8)</span></a></p></dd><dt id="systemd-halt.service"><span class="term"><code class="filename">systemd-halt.service</code></span><a class="headerlink" title="Permalink to this term" href="#systemd-halt.service">¶</a></dt><dd><p><a href="systemd-halt.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-halt.service</span>(8)</span></a></p></dd><dt id="systemd-hibernate.service"><span class="term"><code class="filename">systemd-hibernate.service</code></span><a class="headerlink" title="Permalink to this term" href="#systemd-hibernate.service">¶</a></dt><dd><p><a href="systemd-suspend.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-suspend.service</span>(8)</span></a></p></dd><dt id="systemd-hostnamed.service"><span class="term"><code class="filename">systemd-hostnamed.service</code></span><a class="headerlink" title="Permalink to this term" href="#systemd-hostnamed.service">¶</a></dt><dd><p><a href="systemd-hostnamed.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-hostnamed.service</span>(8)</span></a></p></dd><dt id="systemd-hybrid-sleep.service"><span class="term"><code class="filename">systemd-hybrid-sleep.service</code></span><a class="headerlink" title="Permalink to this term" href="#systemd-hybrid-sleep.service">¶</a></dt><dd><p><a href="systemd-suspend.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-suspend.service</span>(8)</span></a></p></dd><dt id="systemd-inhibit"><span class="term"><span class="command"><strong>systemd-inhibit</strong></span></span><a class="headerlink" title="Permalink to this term" href="#systemd-inhibit">¶</a></dt><dd><p><a href="systemd-inhibit.html"><span class="citerefentry"><span class="refentrytitle">systemd-inhibit</span>(1)</span></a></p></dd><dt id="systemd-initctl.service"><span class="term"><code class="filename">systemd-initctl.service</code></span><a class="headerlink" title="Permalink to this term" href="#systemd-initctl.service">¶</a></dt><dd><p><a href="systemd-initctl.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-initctl.service</span>(8)</span></a></p></dd><dt id="systemd-initctl.socket"><span class="term"><code class="filename">systemd-initctl.socket</code></span><a class="headerlink" title="Permalink to this term" href="#systemd-initctl.socket">¶</a></dt><dd><p><a href="systemd-initctl.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-initctl.service</span>(8)</span></a></p></dd><dt id="systemd-journal-gatewayd.service"><span class="term"><code class="filename">systemd-journal-gatewayd.service</code></span><a class="headerlink" title="Permalink to this term" href="#systemd-journal-gatewayd.service">¶</a></dt><dd><p><a href="systemd-journal-gatewayd.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-journal-gatewayd.service</span>(8)</span></a></p></dd><dt id="systemd-journal-gatewayd.socket"><span class="term"><code class="filename">systemd-journal-gatewayd.socket</code></span><a class="headerlink" title="Permalink to this term" href="#systemd-journal-gatewayd.socket">¶</a></dt><dd><p><a href="systemd-journal-gatewayd.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-journal-gatewayd.service</span>(8)</span></a></p></dd><dt id="systemd-journal-remote"><span class="term"><span class="command"><strong>systemd-journal-remote</strong></span></span><a class="headerlink" title="Permalink to this term" href="#systemd-journal-remote">¶</a></dt><dd><p><a href="systemd-journal-remote.html"><span class="citerefentry"><span class="refentrytitle">systemd-journal-remote</span>(8)</span></a></p></dd><dt id="systemd-journald-dev-log.socket"><span class="term"><code class="filename">systemd-journald-dev-log.socket</code></span><a class="headerlink" title="Permalink to this term" href="#systemd-journald-dev-log.socket">¶</a></dt><dd><p><a href="systemd-journald.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-journald.service</span>(8)</span></a></p></dd><dt id="systemd-journald.service"><span class="term"><code class="filename">systemd-journald.service</code></span><a class="headerlink" title="Permalink to this term" href="#systemd-journald.service">¶</a></dt><dd><p><a href="systemd-journald.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-journald.service</span>(8)</span></a></p></dd><dt id="systemd-journald.socket"><span class="term"><code class="filename">systemd-journald.socket</code></span><a class="headerlink" title="Permalink to this term" href="#systemd-journald.socket">¶</a></dt><dd><p><a href="systemd-journald.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-journald.service</span>(8)</span></a></p></dd><dt id="systemd-kexec.service"><span class="term"><code class="filename">systemd-kexec.service</code></span><a class="headerlink" title="Permalink to this term" href="#systemd-kexec.service">¶</a></dt><dd><p><a href="systemd-halt.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-halt.service</span>(8)</span></a></p></dd><dt id="systemd-localed.service"><span class="term"><code class="filename">systemd-localed.service</code></span><a class="headerlink" title="Permalink to this term" href="#systemd-localed.service">¶</a></dt><dd><p><a href="systemd-localed.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-localed.service</span>(8)</span></a></p></dd><dt id="systemd-logind.service"><span class="term"><code class="filename">systemd-logind.service</code></span><a class="headerlink" title="Permalink to this term" href="#systemd-logind.service">¶</a></dt><dd><p><a href="systemd-logind.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-logind.service</span>(8)</span></a></p></dd><dt id="systemd-machine-id-setup"><span class="term"><span class="command"><strong>systemd-machine-id-setup</strong></span></span><a class="headerlink" title="Permalink to this term" href="#systemd-machine-id-setup">¶</a></dt><dd><p><a href="systemd-machine-id-setup.html"><span class="citerefentry"><span class="refentrytitle">systemd-machine-id-setup</span>(1)</span></a></p></dd><dt id="systemd-machined.service"><span class="term"><code class="filename">systemd-machined.service</code></span><a class="headerlink" title="Permalink to this term" href="#systemd-machined.service">¶</a></dt><dd><p><a href="systemd-machined.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-machined.service</span>(8)</span></a></p></dd><dt id="systemd-modules-load.service"><span class="term"><code class="filename">systemd-modules-load.service</code></span><a class="headerlink" title="Permalink to this term" href="#systemd-modules-load.service">¶</a></dt><dd><p><a href="systemd-modules-load.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-modules-load.service</span>(8)</span></a></p></dd><dt id="systemd-networkd-wait-online.service"><span class="term"><code class="filename">systemd-networkd-wait-online.service</code></span><a class="headerlink" title="Permalink to this term" href="#systemd-networkd-wait-online.service">¶</a></dt><dd><p><a href="systemd-networkd-wait-online.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-networkd-wait-online.service</span>(8)</span></a></p></dd><dt id="systemd-networkd.service"><span class="term"><code class="filename">systemd-networkd.service</code></span><a class="headerlink" title="Permalink to this term" href="#systemd-networkd.service">¶</a></dt><dd><p><a href="systemd-networkd.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-networkd.service</span>(8)</span></a></p></dd><dt id="systemd-notify"><span class="term"><span class="command"><strong>systemd-notify</strong></span></span><a class="headerlink" title="Permalink to this term" href="#systemd-notify">¶</a></dt><dd><p><a href="systemd-notify.html"><span class="citerefentry"><span class="refentrytitle">systemd-notify</span>(1)</span></a></p></dd><dt id="systemd-nspawn"><span class="term"><span class="command"><strong>systemd-nspawn</strong></span></span><a class="headerlink" title="Permalink to this term" href="#systemd-nspawn">¶</a></dt><dd><p><a href="systemd-nspawn.html"><span class="citerefentry"><span class="refentrytitle">systemd-nspawn</span>(1)</span></a></p></dd><dt id="systemd-path"><span class="term"><span class="command"><strong>systemd-path</strong></span></span><a class="headerlink" title="Permalink to this term" href="#systemd-path">¶</a></dt><dd><p><a href="systemd-path.html"><span class="citerefentry"><span class="refentrytitle">systemd-path</span>(1)</span></a></p></dd><dt id="systemd-poweroff.service"><span class="term"><code class="filename">systemd-poweroff.service</code></span><a class="headerlink" title="Permalink to this term" href="#systemd-poweroff.service">¶</a></dt><dd><p><a href="systemd-halt.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-halt.service</span>(8)</span></a></p></dd><dt id="systemd-quotacheck.service"><span class="term"><code class="filename">systemd-quotacheck.service</code></span><a class="headerlink" title="Permalink to this term" href="#systemd-quotacheck.service">¶</a></dt><dd><p><a href="systemd-quotacheck.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-quotacheck.service</span>(8)</span></a></p></dd><dt id="systemd-random-seed.service"><span class="term"><code class="filename">systemd-random-seed.service</code></span><a class="headerlink" title="Permalink to this term" href="#systemd-random-seed.service">¶</a></dt><dd><p><a href="systemd-random-seed.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-random-seed.service</span>(8)</span></a></p></dd><dt id="systemd-readahead-collect.service"><span class="term"><code class="filename">systemd-readahead-collect.service</code></span><a class="headerlink" title="Permalink to this term" href="#systemd-readahead-collect.service">¶</a></dt><dd><p><a href="systemd-readahead-replay.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-readahead-replay.service</span>(8)</span></a></p></dd><dt id="systemd-readahead-done.service"><span class="term"><code class="filename">systemd-readahead-done.service</code></span><a class="headerlink" title="Permalink to this term" href="#systemd-readahead-done.service">¶</a></dt><dd><p><a href="systemd-readahead-replay.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-readahead-replay.service</span>(8)</span></a></p></dd><dt id="systemd-readahead-done.timer"><span class="term"><code class="filename">systemd-readahead-done.timer</code></span><a class="headerlink" title="Permalink to this term" href="#systemd-readahead-done.timer">¶</a></dt><dd><p><a href="systemd-readahead-replay.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-readahead-replay.service</span>(8)</span></a></p></dd><dt id="systemd-readahead-replay.service"><span class="term"><code class="filename">systemd-readahead-replay.service</code></span><a class="headerlink" title="Permalink to this term" href="#systemd-readahead-replay.service">¶</a></dt><dd><p><a href="systemd-readahead-replay.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-readahead-replay.service</span>(8)</span></a></p></dd><dt id="systemd-reboot.service"><span class="term"><code class="filename">systemd-reboot.service</code></span><a class="headerlink" title="Permalink to this term" href="#systemd-reboot.service">¶</a></dt><dd><p><a href="systemd-halt.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-halt.service</span>(8)</span></a></p></dd><dt id="systemd-remount-fs.service"><span class="term"><code class="filename">systemd-remount-fs.service</code></span><a class="headerlink" title="Permalink to this term" href="#systemd-remount-fs.service">¶</a></dt><dd><p><a href="systemd-remount-fs.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-remount-fs.service</span>(8)</span></a></p></dd><dt id="systemd-resolved.service"><span class="term"><code class="filename">systemd-resolved.service</code></span><a class="headerlink" title="Permalink to this term" href="#systemd-resolved.service">¶</a></dt><dd><p><a href="systemd-resolved.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-resolved.service</span>(8)</span></a></p></dd><dt id="systemd-rfkill@.service"><span class="term"><code class="filename">systemd-rfkill@.service</code></span><a class="headerlink" title="Permalink to this term" href="#systemd-rfkill@.service">¶</a></dt><dd><p><a href="systemd-rfkill@.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-rfkill@.service</span>(8)</span></a></p></dd><dt id="systemd-run"><span class="term"><span class="command"><strong>systemd-run</strong></span></span><a class="headerlink" title="Permalink to this term" href="#systemd-run">¶</a></dt><dd><p><a href="systemd-run.html"><span class="citerefentry"><span class="refentrytitle">systemd-run</span>(1)</span></a></p></dd><dt id="systemd-shutdownd.service"><span class="term"><code class="filename">systemd-shutdownd.service</code></span><a class="headerlink" title="Permalink to this term" href="#systemd-shutdownd.service">¶</a></dt><dd><p><a href="systemd-shutdownd.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-shutdownd.service</span>(8)</span></a></p></dd><dt id="systemd-shutdownd.socket"><span class="term"><code class="filename">systemd-shutdownd.socket</code></span><a class="headerlink" title="Permalink to this term" href="#systemd-shutdownd.socket">¶</a></dt><dd><p><a href="systemd-shutdownd.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-shutdownd.service</span>(8)</span></a></p></dd><dt id="systemd-socket-proxyd"><span class="term"><span class="command"><strong>systemd-socket-proxyd</strong></span></span><a class="headerlink" title="Permalink to this term" href="#systemd-socket-proxyd">¶</a></dt><dd><p><a href="systemd-socket-proxyd.html"><span class="citerefentry"><span class="refentrytitle">systemd-socket-proxyd</span>(8)</span></a></p></dd><dt id="systemd-suspend.service"><span class="term"><code class="filename">systemd-suspend.service</code></span><a class="headerlink" title="Permalink to this term" href="#systemd-suspend.service">¶</a></dt><dd><p><a href="systemd-suspend.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-suspend.service</span>(8)</span></a></p></dd><dt id="systemd-sysctl.service"><span class="term"><code class="filename">systemd-sysctl.service</code></span><a class="headerlink" title="Permalink to this term" href="#systemd-sysctl.service">¶</a></dt><dd><p><a href="systemd-sysctl.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-sysctl.service</span>(8)</span></a></p></dd><dt id="systemd-sysusers"><span class="term"><span class="command"><strong>systemd-sysusers</strong></span></span><a class="headerlink" title="Permalink to this term" href="#systemd-sysusers">¶</a></dt><dd><p><a href="systemd-sysusers.html"><span class="citerefentry"><span class="refentrytitle">systemd-sysusers</span>(8)</span></a></p></dd><dt id="systemd-sysusers.service"><span class="term"><code class="filename">systemd-sysusers.service</code></span><a class="headerlink" title="Permalink to this term" href="#systemd-sysusers.service">¶</a></dt><dd><p><a href="systemd-sysusers.html"><span class="citerefentry"><span class="refentrytitle">systemd-sysusers</span>(8)</span></a></p></dd><dt id="systemd-timedated.service"><span class="term"><code class="filename">systemd-timedated.service</code></span><a class="headerlink" title="Permalink to this term" href="#systemd-timedated.service">¶</a></dt><dd><p><a href="systemd-timedated.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-timedated.service</span>(8)</span></a></p></dd><dt id="systemd-timesyncd.service"><span class="term"><code class="filename">systemd-timesyncd.service</code></span><a class="headerlink" title="Permalink to this term" href="#systemd-timesyncd.service">¶</a></dt><dd><p><a href="systemd-timesyncd.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-timesyncd.service</span>(8)</span></a></p></dd><dt id="systemd-tmpfiles"><span class="term"><span class="command"><strong>systemd-tmpfiles</strong></span></span><a class="headerlink" title="Permalink to this term" href="#systemd-tmpfiles">¶</a></dt><dd><p><a href="systemd-tmpfiles.html"><span class="citerefentry"><span class="refentrytitle">systemd-tmpfiles</span>(8)</span></a></p></dd><dt id="systemd-tmpfiles-clean.service"><span class="term"><code class="filename">systemd-tmpfiles-clean.service</code></span><a class="headerlink" title="Permalink to this term" href="#systemd-tmpfiles-clean.service">¶</a></dt><dd><p><a href="systemd-tmpfiles.html"><span class="citerefentry"><span class="refentrytitle">systemd-tmpfiles</span>(8)</span></a></p></dd><dt id="systemd-tmpfiles-clean.timer"><span class="term"><code class="filename">systemd-tmpfiles-clean.timer</code></span><a class="headerlink" title="Permalink to this term" href="#systemd-tmpfiles-clean.timer">¶</a></dt><dd><p><a href="systemd-tmpfiles.html"><span class="citerefentry"><span class="refentrytitle">systemd-tmpfiles</span>(8)</span></a></p></dd><dt id="systemd-tmpfiles-setup-dev.service"><span class="term"><code class="filename">systemd-tmpfiles-setup-dev.service</code></span><a class="headerlink" title="Permalink to this term" href="#systemd-tmpfiles-setup-dev.service">¶</a></dt><dd><p><a href="systemd-tmpfiles.html"><span class="citerefentry"><span class="refentrytitle">systemd-tmpfiles</span>(8)</span></a></p></dd><dt id="systemd-tmpfiles-setup.service"><span class="term"><code class="filename">systemd-tmpfiles-setup.service</code></span><a class="headerlink" title="Permalink to this term" href="#systemd-tmpfiles-setup.service">¶</a></dt><dd><p><a href="systemd-tmpfiles.html"><span class="citerefentry"><span class="refentrytitle">systemd-tmpfiles</span>(8)</span></a></p></dd><dt id="systemd-tty-ask-password-agent"><span class="term"><span class="command"><strong>systemd-tty-ask-password-agent</strong></span></span><a class="headerlink" title="Permalink to this term" href="#systemd-tty-ask-password-agent">¶</a></dt><dd><p><a href="systemd-tty-ask-password-agent.html"><span class="citerefentry"><span class="refentrytitle">systemd-tty-ask-password-agent</span>(1)</span></a></p></dd><dt id="systemd-udevd-control.socket"><span class="term"><code class="filename">systemd-udevd-control.socket</code></span><a class="headerlink" title="Permalink to this term" href="#systemd-udevd-control.socket">¶</a></dt><dd><p><a href="systemd-udevd.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-udevd.service</span>(8)</span></a></p></dd><dt id="systemd-udevd-kernel.socket"><span class="term"><code class="filename">systemd-udevd-kernel.socket</code></span><a class="headerlink" title="Permalink to this term" href="#systemd-udevd-kernel.socket">¶</a></dt><dd><p><a href="systemd-udevd.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-udevd.service</span>(8)</span></a></p></dd><dt id="systemd-udevd.service"><span class="term"><code class="filename">systemd-udevd.service</code></span><a class="headerlink" title="Permalink to this term" href="#systemd-udevd.service">¶</a></dt><dd><p><a href="systemd-udevd.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-udevd.service</span>(8)</span></a></p></dd><dt id="systemd-update-done.service"><span class="term"><code class="filename">systemd-update-done.service</code></span><a class="headerlink" title="Permalink to this term" href="#systemd-update-done.service">¶</a></dt><dd><p><a href="systemd-update-done.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-update-done.service</span>(8)</span></a></p></dd><dt id="systemd-update-utmp-runlevel.service"><span class="term"><code class="filename">systemd-update-utmp-runlevel.service</code></span><a class="headerlink" title="Permalink to this term" href="#systemd-update-utmp-runlevel.service">¶</a></dt><dd><p><a href="systemd-update-utmp.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-update-utmp.service</span>(8)</span></a></p></dd><dt id="systemd-update-utmp.service"><span class="term"><code class="filename">systemd-update-utmp.service</code></span><a class="headerlink" title="Permalink to this term" href="#systemd-update-utmp.service">¶</a></dt><dd><p><a href="systemd-update-utmp.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-update-utmp.service</span>(8)</span></a></p></dd><dt id="systemd-user-sessions.service"><span class="term"><code class="filename">systemd-user-sessions.service</code></span><a class="headerlink" title="Permalink to this term" href="#systemd-user-sessions.service">¶</a></dt><dd><p><a href="systemd-user-sessions.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-user-sessions.service</span>(8)</span></a></p></dd><dt id="systemd-vconsole-setup.service"><span class="term"><code class="filename">systemd-vconsole-setup.service</code></span><a class="headerlink" title="Permalink to this term" href="#systemd-vconsole-setup.service">¶</a></dt><dd><p><a href="systemd-vconsole-setup.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-vconsole-setup.service</span>(8)</span></a></p></dd><dt id="target.target"><span class="term"><code class="filename"><em class="replaceable"><code>target</code></em>.target</code></span><a class="headerlink" title="Permalink to this term" href="#target.target">¶</a></dt><dd><p><a href="systemd.target.html"><span class="citerefentry"><span class="refentrytitle">systemd.target</span>(5)</span></a>, <a href="systemd.unit.html"><span class="citerefentry"><span class="refentrytitle">systemd.unit</span>(5)</span></a></p></dd><dt id="telinit"><span class="term"><span class="command"><strong>telinit</strong></span></span><a class="headerlink" title="Permalink to this term" href="#telinit">¶</a></dt><dd><p><a href="telinit.html"><span class="citerefentry"><span class="refentrytitle">telinit</span>(8)</span></a></p></dd><dt id="time-sync.target"><span class="term"><code class="filename">time-sync.target</code></span><a class="headerlink" title="Permalink to this term" href="#time-sync.target">¶</a></dt><dd><p><a href="systemd.special.html"><span class="citerefentry"><span class="refentrytitle">systemd.special</span>(7)</span></a></p></dd><dt id="timedatectl"><span class="term"><span class="command"><strong>timedatectl</strong></span></span><a class="headerlink" title="Permalink to this term" href="#timedatectl">¶</a></dt><dd><p><a href="timedatectl.html"><span class="citerefentry"><span class="refentrytitle">timedatectl</span>(1)</span></a></p></dd><dt id="timer.timer"><span class="term"><code class="filename"><em class="replaceable"><code>timer</code></em>.timer</code></span><a class="headerlink" title="Permalink to this term" href="#timer.timer">¶</a></dt><dd><p><a href="systemd.timer.html"><span class="citerefentry"><span class="refentrytitle">systemd.timer</span>(5)</span></a>, <a href="systemd.unit.html"><span class="citerefentry"><span class="refentrytitle">systemd.unit</span>(5)</span></a></p></dd><dt id="timers.target"><span class="term"><code class="filename">timers.target</code></span><a class="headerlink" title="Permalink to this term" href="#timers.target">¶</a></dt><dd><p><a href="systemd.special.html"><span class="citerefentry"><span class="refentrytitle">systemd.special</span>(7)</span></a></p></dd><dt id="udevadm"><span class="term"><span class="command"><strong>udevadm</strong></span></span><a class="headerlink" title="Permalink to this term" href="#udevadm">¶</a></dt><dd><p><a href="udevadm.html"><span class="citerefentry"><span class="refentrytitle">udevadm</span>(8)</span></a></p></dd><dt id="umount.target"><span class="term"><code class="filename">umount.target</code></span><a class="headerlink" title="Permalink to this term" href="#umount.target">¶</a></dt><dd><p><a href="systemd.special.html"><span class="citerefentry"><span class="refentrytitle">systemd.special</span>(7)</span></a></p></dd><dt id="user.slice"><span class="term"><code class="filename">user.slice</code></span><a class="headerlink" title="Permalink to this term" href="#user.slice">¶</a></dt><dd><p><a href="systemd.special.html"><span class="citerefentry"><span class="refentrytitle">systemd.special</span>(7)</span></a></p></dd></dl></div></div><div class="refsect1"><a name="idm214179507968"></a><h2 id="Colophon">Colophon<a class="headerlink" title="Permalink to this headline" href="#Colophon">¶</a></h2><p><a name="colophon"></a>This index contains 1621 entries in 14 sections,
+referring to 177 individual manual pages.
 </p></div></div></body></html>
index fa4ae74aabc4cc8c50f01107dfc97f2e6c707a67..fc62099bce75607f466cb1aa617d1c77f0525b3f 100644 (file)
 
 <varlistentry><term><varname>ConditionKernelCommandLine=</varname></term><listitem><para><citerefentry><refentrytitle>systemd.unit</refentrytitle><manvolnum>5</manvolnum></citerefentry></para></listitem></varlistentry>
 
+<varlistentry><term><varname>ConditionNeedsUpdate=</varname></term><listitem><para><citerefentry><refentrytitle>systemd.unit</refentrytitle><manvolnum>5</manvolnum></citerefentry></para></listitem></varlistentry>
+
 <varlistentry><term><varname>ConditionNull=</varname></term><listitem><para><citerefentry><refentrytitle>systemd.unit</refentrytitle><manvolnum>5</manvolnum></citerefentry></para></listitem></varlistentry>
 
 <varlistentry><term><varname>ConditionPathExists=</varname></term><listitem><para><citerefentry><refentrytitle>systemd.unit</refentrytitle><manvolnum>5</manvolnum></citerefentry></para></listitem></varlistentry>
 
 <varlistentry><term><varname>DefaultDependencies=</varname></term><listitem><para><citerefentry><refentrytitle>systemd.unit</refentrytitle><manvolnum>5</manvolnum></citerefentry></para></listitem></varlistentry>
 
+<varlistentry><term><varname>DefaultInstance=</varname></term><listitem><para><citerefentry><refentrytitle>systemd.unit</refentrytitle><manvolnum>5</manvolnum></citerefentry></para></listitem></varlistentry>
+
 <varlistentry><term><varname>Description=</varname></term><listitem><para><citerefentry><refentrytitle>systemd.unit</refentrytitle><manvolnum>5</manvolnum></citerefentry></para></listitem></varlistentry>
 
 <varlistentry><term><varname>DeviceAllow=</varname></term><listitem><para><citerefentry><refentrytitle>systemd.resource-control</refentrytitle><manvolnum>5</manvolnum></citerefentry></para></listitem></varlistentry>
 
 <varlistentry><term><varname>Restart=</varname></term><listitem><para><citerefentry><refentrytitle>systemd.service</refentrytitle><manvolnum>5</manvolnum></citerefentry></para></listitem></varlistentry>
 
+<varlistentry><term><varname>RestartForceExitStatus=</varname></term><listitem><para><citerefentry><refentrytitle>systemd.service</refentrytitle><manvolnum>5</manvolnum></citerefentry></para></listitem></varlistentry>
+
 <varlistentry><term><varname>RestartPreventExitStatus=</varname></term><listitem><para><citerefentry><refentrytitle>systemd.service</refentrytitle><manvolnum>5</manvolnum></citerefentry></para></listitem></varlistentry>
 
 <varlistentry><term><varname>RestartSec=</varname></term><listitem><para><citerefentry><refentrytitle>systemd.service</refentrytitle><manvolnum>5</manvolnum></citerefentry></para></listitem></varlistentry>
 
 <varlistentry><term><varname>Slice=</varname></term><listitem><para><citerefentry><refentrytitle>systemd.resource-control</refentrytitle><manvolnum>5</manvolnum></citerefentry></para></listitem></varlistentry>
 
+<varlistentry><term><varname>SloppyOptions=</varname></term><listitem><para><citerefentry><refentrytitle>systemd.mount</refentrytitle><manvolnum>5</manvolnum></citerefentry></para></listitem></varlistentry>
+
 <varlistentry><term><varname>SmackLabel=</varname></term><listitem><para><citerefentry><refentrytitle>systemd.socket</refentrytitle><manvolnum>5</manvolnum></citerefentry></para></listitem></varlistentry>
 
 <varlistentry><term><varname>SmackLabelIPIn=</varname></term><listitem><para><citerefentry><refentrytitle>systemd.socket</refentrytitle><manvolnum>5</manvolnum></citerefentry></para></listitem></varlistentry>
 
 <varlistentry><term><varname>rd.modules-load=</varname></term><listitem><para><citerefentry><refentrytitle>kernel-command-line</refentrytitle><manvolnum>7</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd-modules-load.service</refentrytitle><manvolnum>8</manvolnum></citerefentry></para></listitem></varlistentry>
 
+<varlistentry><term><varname>rd.systemd.gpt_auto=</varname></term><listitem><para><citerefentry><refentrytitle>kernel-command-line</refentrytitle><manvolnum>7</manvolnum></citerefentry></para></listitem></varlistentry>
+
 <varlistentry><term><varname>rd.systemd.unit=</varname></term><listitem><para><citerefentry><refentrytitle>kernel-command-line</refentrytitle><manvolnum>7</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry></para></listitem></varlistentry>
 
 <varlistentry><term><varname>rd.udev.children-max=</varname></term><listitem><para><citerefentry><refentrytitle>kernel-command-line</refentrytitle><manvolnum>7</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd-udevd.service</refentrytitle><manvolnum>8</manvolnum></citerefentry></para></listitem></varlistentry>
 
 <varlistentry><term><varname>rd.udev.log-priority=</varname></term><listitem><para><citerefentry><refentrytitle>kernel-command-line</refentrytitle><manvolnum>7</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd-udevd.service</refentrytitle><manvolnum>8</manvolnum></citerefentry></para></listitem></varlistentry>
 
+<varlistentry><term><varname>ro</varname></term><listitem><para><citerefentry><refentrytitle>kernel-command-line</refentrytitle><manvolnum>7</manvolnum></citerefentry></para></listitem></varlistentry>
+
+<varlistentry><term><varname>root=</varname></term><listitem><para><citerefentry><refentrytitle>kernel-command-line</refentrytitle><manvolnum>7</manvolnum></citerefentry></para></listitem></varlistentry>
+
+<varlistentry><term><varname>rootfsflags=</varname></term><listitem><para><citerefentry><refentrytitle>kernel-command-line</refentrytitle><manvolnum>7</manvolnum></citerefentry></para></listitem></varlistentry>
+
+<varlistentry><term><varname>rootfstype=</varname></term><listitem><para><citerefentry><refentrytitle>kernel-command-line</refentrytitle><manvolnum>7</manvolnum></citerefentry></para></listitem></varlistentry>
+
+<varlistentry><term><varname>rw</varname></term><listitem><para><citerefentry><refentrytitle>kernel-command-line</refentrytitle><manvolnum>7</manvolnum></citerefentry></para></listitem></varlistentry>
+
 <varlistentry><term><varname>s</varname></term><listitem><para><citerefentry><refentrytitle>kernel-command-line</refentrytitle><manvolnum>7</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry></para></listitem></varlistentry>
 
 <varlistentry><term><varname>single</varname></term><listitem><para><citerefentry><refentrytitle>kernel-command-line</refentrytitle><manvolnum>7</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry></para></listitem></varlistentry>
 
 <varlistentry><term><varname>systemd.crash_shell=</varname></term><listitem><para><citerefentry><refentrytitle>kernel-command-line</refentrytitle><manvolnum>7</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry></para></listitem></varlistentry>
 
+<varlistentry><term><varname>systemd.debug-shell</varname></term><listitem><para><citerefentry><refentrytitle>kernel-command-line</refentrytitle><manvolnum>7</manvolnum></citerefentry></para></listitem></varlistentry>
+
 <varlistentry><term><varname>systemd.default_standard_error=</varname></term><listitem><para><citerefentry><refentrytitle>kernel-command-line</refentrytitle><manvolnum>7</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry></para></listitem></varlistentry>
 
 <varlistentry><term><varname>systemd.default_standard_output=</varname></term><listitem><para><citerefentry><refentrytitle>kernel-command-line</refentrytitle><manvolnum>7</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry></para></listitem></varlistentry>
 
 <varlistentry><term><varname>systemd.dump_core=</varname></term><listitem><para><citerefentry><refentrytitle>kernel-command-line</refentrytitle><manvolnum>7</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry></para></listitem></varlistentry>
 
+<varlistentry><term><varname>systemd.gpt_auto=</varname></term><listitem><para><citerefentry><refentrytitle>kernel-command-line</refentrytitle><manvolnum>7</manvolnum></citerefentry></para></listitem></varlistentry>
+
 <varlistentry><term><varname>systemd.journald.forward_to_console=</varname></term><listitem><para><citerefentry><refentrytitle>kernel-command-line</refentrytitle><manvolnum>7</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd-journald.service</refentrytitle><manvolnum>8</manvolnum></citerefentry></para></listitem></varlistentry>
 
 <varlistentry><term><varname>systemd.journald.forward_to_kmsg=</varname></term><listitem><para><citerefentry><refentrytitle>kernel-command-line</refentrytitle><manvolnum>7</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd-journald.service</refentrytitle><manvolnum>8</manvolnum></citerefentry></para></listitem></varlistentry>
 
 <varlistentry><term><varname>systemd.log_target=</varname></term><listitem><para><citerefentry><refentrytitle>kernel-command-line</refentrytitle><manvolnum>7</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry></para></listitem></varlistentry>
 
+<varlistentry><term><varname>systemd.mask=</varname></term><listitem><para><citerefentry><refentrytitle>kernel-command-line</refentrytitle><manvolnum>7</manvolnum></citerefentry></para></listitem></varlistentry>
+
 <varlistentry><term><varname>systemd.restore_state=</varname></term><listitem><para><citerefentry><refentrytitle>kernel-command-line</refentrytitle><manvolnum>7</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd-backlight@.service</refentrytitle><manvolnum>8</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd-rfkill@.service</refentrytitle><manvolnum>8</manvolnum></citerefentry></para></listitem></varlistentry>
 
 <varlistentry><term><varname>systemd.setenv=</varname></term><listitem><para><citerefentry><refentrytitle>kernel-command-line</refentrytitle><manvolnum>7</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry></para></listitem></varlistentry>
 
 <varlistentry><term><varname>systemd.unit=</varname></term><listitem><para><citerefentry><refentrytitle>kernel-command-line</refentrytitle><manvolnum>7</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry></para></listitem></varlistentry>
 
+<varlistentry><term><varname>systemd.wants=</varname></term><listitem><para><citerefentry><refentrytitle>kernel-command-line</refentrytitle><manvolnum>7</manvolnum></citerefentry></para></listitem></varlistentry>
+
 <varlistentry><term><varname>udev.children-max=</varname></term><listitem><para><citerefentry><refentrytitle>kernel-command-line</refentrytitle><manvolnum>7</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd-udevd.service</refentrytitle><manvolnum>8</manvolnum></citerefentry></para></listitem></varlistentry>
 
 <varlistentry><term><varname>udev.exec-delay=</varname></term><listitem><para><citerefentry><refentrytitle>kernel-command-line</refentrytitle><manvolnum>7</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd-udevd.service</refentrytitle><manvolnum>8</manvolnum></citerefentry></para></listitem></varlistentry>
 
 <varlistentry><term><varname>DHCP=</varname></term><listitem><para><citerefentry><refentrytitle>systemd.network</refentrytitle><manvolnum>5</manvolnum></citerefentry></para></listitem></varlistentry>
 
+<varlistentry><term><varname>DHCPServer=</varname></term><listitem><para><citerefentry><refentrytitle>systemd.network</refentrytitle><manvolnum>5</manvolnum></citerefentry></para></listitem></varlistentry>
+
 <varlistentry><term><varname>DNS=</varname></term><listitem><para><citerefentry><refentrytitle>resolved.conf</refentrytitle><manvolnum>5</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd.network</refentrytitle><manvolnum>5</manvolnum></citerefentry></para></listitem></varlistentry>
 
-<varlistentry><term><varname>Description=</varname></term><listitem><para><citerefentry><refentrytitle>systemd.link</refentrytitle><manvolnum>5</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd.network</refentrytitle><manvolnum>5</manvolnum></citerefentry></para></listitem></varlistentry>
+<varlistentry><term><varname>Description=</varname></term><listitem><para><citerefentry><refentrytitle>systemd.link</refentrytitle><manvolnum>5</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd.netdev</refentrytitle><manvolnum>5</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd.network</refentrytitle><manvolnum>5</manvolnum></citerefentry></para></listitem></varlistentry>
 
 <varlistentry><term><varname>Destination=</varname></term><listitem><para><citerefentry><refentrytitle>systemd.network</refentrytitle><manvolnum>5</manvolnum></citerefentry></para></listitem></varlistentry>
 
+<varlistentry><term><varname>DiscoverPathMTU=</varname></term><listitem><para><citerefentry><refentrytitle>systemd.netdev</refentrytitle><manvolnum>5</manvolnum></citerefentry></para></listitem></varlistentry>
+
 <varlistentry><term><varname>Driver=</varname></term><listitem><para><citerefentry><refentrytitle>systemd.link</refentrytitle><manvolnum>5</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd.network</refentrytitle><manvolnum>5</manvolnum></citerefentry></para></listitem></varlistentry>
 
 <varlistentry><term><varname>Duplex=</varname></term><listitem><para><citerefentry><refentrytitle>systemd.link</refentrytitle><manvolnum>5</manvolnum></citerefentry></para></listitem></varlistentry>
 
 <varlistentry><term><varname>Gateway=</varname></term><listitem><para><citerefentry><refentrytitle>systemd.network</refentrytitle><manvolnum>5</manvolnum></citerefentry></para></listitem></varlistentry>
 
+<varlistentry><term><varname>Group=</varname></term><listitem><para><citerefentry><refentrytitle>systemd.netdev</refentrytitle><manvolnum>5</manvolnum></citerefentry></para></listitem></varlistentry>
+
 <varlistentry><term><varname>Host=</varname></term><listitem><para><citerefentry><refentrytitle>systemd.link</refentrytitle><manvolnum>5</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd.netdev</refentrytitle><manvolnum>5</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd.network</refentrytitle><manvolnum>5</manvolnum></citerefentry></para></listitem></varlistentry>
 
 <varlistentry><term><varname>IPv4LL=</varname></term><listitem><para><citerefentry><refentrytitle>systemd.network</refentrytitle><manvolnum>5</manvolnum></citerefentry></para></listitem></varlistentry>
 
 <varlistentry><term><varname>Label=</varname></term><listitem><para><citerefentry><refentrytitle>systemd.network</refentrytitle><manvolnum>5</manvolnum></citerefentry></para></listitem></varlistentry>
 
-<varlistentry><term><varname>MACAddress=</varname></term><listitem><para><citerefentry><refentrytitle>systemd.link</refentrytitle><manvolnum>5</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd.network</refentrytitle><manvolnum>5</manvolnum></citerefentry></para></listitem></varlistentry>
+<varlistentry><term><varname>Local=</varname></term><listitem><para><citerefentry><refentrytitle>systemd.netdev</refentrytitle><manvolnum>5</manvolnum></citerefentry></para></listitem></varlistentry>
+
+<varlistentry><term><varname>MACAddress=</varname></term><listitem><para><citerefentry><refentrytitle>systemd.link</refentrytitle><manvolnum>5</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd.netdev</refentrytitle><manvolnum>5</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd.network</refentrytitle><manvolnum>5</manvolnum></citerefentry></para></listitem></varlistentry>
 
 <varlistentry><term><varname>MACAddressPolicy=</varname></term><listitem><para><citerefentry><refentrytitle>systemd.link</refentrytitle><manvolnum>5</manvolnum></citerefentry></para></listitem></varlistentry>
 
 <varlistentry><term><varname>MACVLAN=</varname></term><listitem><para><citerefentry><refentrytitle>systemd.network</refentrytitle><manvolnum>5</manvolnum></citerefentry></para></listitem></varlistentry>
 
-<varlistentry><term><varname>MTUBytes=</varname></term><listitem><para><citerefentry><refentrytitle>systemd.link</refentrytitle><manvolnum>5</manvolnum></citerefentry></para></listitem></varlistentry>
+<varlistentry><term><varname>MTUBytes=</varname></term><listitem><para><citerefentry><refentrytitle>systemd.link</refentrytitle><manvolnum>5</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd.netdev</refentrytitle><manvolnum>5</manvolnum></citerefentry></para></listitem></varlistentry>
+
+<varlistentry><term><varname>MacLearning=</varname></term><listitem><para><citerefentry><refentrytitle>systemd.netdev</refentrytitle><manvolnum>5</manvolnum></citerefentry></para></listitem></varlistentry>
 
 <varlistentry><term><varname>Mode=</varname></term><listitem><para><citerefentry><refentrytitle>systemd.netdev</refentrytitle><manvolnum>5</manvolnum></citerefentry></para></listitem></varlistentry>
 
+<varlistentry><term><varname>MultiQueue=</varname></term><listitem><para><citerefentry><refentrytitle>systemd.netdev</refentrytitle><manvolnum>5</manvolnum></citerefentry></para></listitem></varlistentry>
+
 <varlistentry><term><varname>Name=</varname></term><listitem><para><citerefentry><refentrytitle>systemd.link</refentrytitle><manvolnum>5</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd.netdev</refentrytitle><manvolnum>5</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd.network</refentrytitle><manvolnum>5</manvolnum></citerefentry></para></listitem></varlistentry>
 
 <varlistentry><term><varname>NamePolicy=</varname></term><listitem><para><citerefentry><refentrytitle>systemd.link</refentrytitle><manvolnum>5</manvolnum></citerefentry></para></listitem></varlistentry>
 
+<varlistentry><term><varname>OneQueue=</varname></term><listitem><para><citerefentry><refentrytitle>systemd.netdev</refentrytitle><manvolnum>5</manvolnum></citerefentry></para></listitem></varlistentry>
+
+<varlistentry><term><varname>PacketInfo=</varname></term><listitem><para><citerefentry><refentrytitle>systemd.netdev</refentrytitle><manvolnum>5</manvolnum></citerefentry></para></listitem></varlistentry>
+
 <varlistentry><term><varname>Path=</varname></term><listitem><para><citerefentry><refentrytitle>systemd.link</refentrytitle><manvolnum>5</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd.network</refentrytitle><manvolnum>5</manvolnum></citerefentry></para></listitem></varlistentry>
 
+<varlistentry><term><varname>Remote=</varname></term><listitem><para><citerefentry><refentrytitle>systemd.netdev</refentrytitle><manvolnum>5</manvolnum></citerefentry></para></listitem></varlistentry>
+
+<varlistentry><term><varname>SendHostname=</varname></term><listitem><para><citerefentry><refentrytitle>systemd.network</refentrytitle><manvolnum>5</manvolnum></citerefentry></para></listitem></varlistentry>
+
+<varlistentry><term><varname>TOS=</varname></term><listitem><para><citerefentry><refentrytitle>systemd.netdev</refentrytitle><manvolnum>5</manvolnum></citerefentry></para></listitem></varlistentry>
+
+<varlistentry><term><varname>TTL=</varname></term><listitem><para><citerefentry><refentrytitle>systemd.netdev</refentrytitle><manvolnum>5</manvolnum></citerefentry></para></listitem></varlistentry>
+
+<varlistentry><term><varname>Tunnel=</varname></term><listitem><para><citerefentry><refentrytitle>systemd.network</refentrytitle><manvolnum>5</manvolnum></citerefentry></para></listitem></varlistentry>
+
 <varlistentry><term><varname>Type=</varname></term><listitem><para><citerefentry><refentrytitle>systemd.link</refentrytitle><manvolnum>5</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd.network</refentrytitle><manvolnum>5</manvolnum></citerefentry></para></listitem></varlistentry>
 
 <varlistentry><term><varname>UseDNS=</varname></term><listitem><para><citerefentry><refentrytitle>systemd.network</refentrytitle><manvolnum>5</manvolnum></citerefentry></para></listitem></varlistentry>
 
 <varlistentry><term><varname>UseMTU=</varname></term><listitem><para><citerefentry><refentrytitle>systemd.network</refentrytitle><manvolnum>5</manvolnum></citerefentry></para></listitem></varlistentry>
 
+<varlistentry><term><varname>UseRoutes=</varname></term><listitem><para><citerefentry><refentrytitle>systemd.network</refentrytitle><manvolnum>5</manvolnum></citerefentry></para></listitem></varlistentry>
+
+<varlistentry><term><varname>User=</varname></term><listitem><para><citerefentry><refentrytitle>systemd.netdev</refentrytitle><manvolnum>5</manvolnum></citerefentry></para></listitem></varlistentry>
+
 <varlistentry><term><varname>VLAN=</varname></term><listitem><para><citerefentry><refentrytitle>systemd.network</refentrytitle><manvolnum>5</manvolnum></citerefentry></para></listitem></varlistentry>
 
+<varlistentry><term><varname>VXLAN=</varname></term><listitem><para><citerefentry><refentrytitle>systemd.network</refentrytitle><manvolnum>5</manvolnum></citerefentry></para></listitem></varlistentry>
+
 <varlistentry><term><varname>Virtualization=</varname></term><listitem><para><citerefentry><refentrytitle>systemd.link</refentrytitle><manvolnum>5</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd.netdev</refentrytitle><manvolnum>5</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd.network</refentrytitle><manvolnum>5</manvolnum></citerefentry></para></listitem></varlistentry>
 
 <varlistentry><term><varname>WakeOnLan=</varname></term><listitem><para><citerefentry><refentrytitle>systemd.link</refentrytitle><manvolnum>5</manvolnum></citerefentry></para></listitem></varlistentry>
         </refsect1>
 
         <refsect1>
-                <title>crypttab options</title>
+                <title><filename>/etc/crypttab</filename> and
+                <filename>/etc/fstab</filename> options</title>
 
                 <para>Options which influence mounted filesystems and
                 encrypted volumes.</para>
 
-                <variablelist id="crypttab-options"><varlistentry><term><varname>cipher=</varname></term><listitem><para><citerefentry><refentrytitle>crypttab</refentrytitle><manvolnum>5</manvolnum></citerefentry></para></listitem></varlistentry>
+                <variablelist id="fstab-options"><varlistentry><term><constant>auto</constant></term><listitem><para><citerefentry><refentrytitle>systemd.mount</refentrytitle><manvolnum>5</manvolnum></citerefentry></para></listitem></varlistentry>
+
+<varlistentry><term><option>cipher=</option></term><listitem><para><citerefentry><refentrytitle>crypttab</refentrytitle><manvolnum>5</manvolnum></citerefentry></para></listitem></varlistentry>
+
+<varlistentry><term><option>discard</option></term><listitem><para><citerefentry><refentrytitle>crypttab</refentrytitle><manvolnum>5</manvolnum></citerefentry></para></listitem></varlistentry>
+
+<varlistentry><term><option>fail</option></term><listitem><para><citerefentry><refentrytitle>systemd.mount</refentrytitle><manvolnum>5</manvolnum></citerefentry></para></listitem></varlistentry>
 
-<varlistentry><term><varname>discard</varname></term><listitem><para><citerefentry><refentrytitle>crypttab</refentrytitle><manvolnum>5</manvolnum></citerefentry></para></listitem></varlistentry>
+<varlistentry><term><option>hash=</option></term><listitem><para><citerefentry><refentrytitle>crypttab</refentrytitle><manvolnum>5</manvolnum></citerefentry></para></listitem></varlistentry>
 
-<varlistentry><term><varname>hash=</varname></term><listitem><para><citerefentry><refentrytitle>crypttab</refentrytitle><manvolnum>5</manvolnum></citerefentry></para></listitem></varlistentry>
+<varlistentry><term><option>key-slot=</option></term><listitem><para><citerefentry><refentrytitle>crypttab</refentrytitle><manvolnum>5</manvolnum></citerefentry></para></listitem></varlistentry>
 
-<varlistentry><term><varname>key-slot=</varname></term><listitem><para><citerefentry><refentrytitle>crypttab</refentrytitle><manvolnum>5</manvolnum></citerefentry></para></listitem></varlistentry>
+<varlistentry><term><option>keyfile-offset=</option></term><listitem><para><citerefentry><refentrytitle>crypttab</refentrytitle><manvolnum>5</manvolnum></citerefentry></para></listitem></varlistentry>
 
-<varlistentry><term><varname>keyfile-offset=</varname></term><listitem><para><citerefentry><refentrytitle>crypttab</refentrytitle><manvolnum>5</manvolnum></citerefentry></para></listitem></varlistentry>
+<varlistentry><term><option>keyfile-size=</option></term><listitem><para><citerefentry><refentrytitle>crypttab</refentrytitle><manvolnum>5</manvolnum></citerefentry></para></listitem></varlistentry>
 
-<varlistentry><term><varname>keyfile-size=</varname></term><listitem><para><citerefentry><refentrytitle>crypttab</refentrytitle><manvolnum>5</manvolnum></citerefentry></para></listitem></varlistentry>
+<varlistentry><term><option>luks</option></term><listitem><para><citerefentry><refentrytitle>crypttab</refentrytitle><manvolnum>5</manvolnum></citerefentry></para></listitem></varlistentry>
 
-<varlistentry><term><varname>luks</varname></term><listitem><para><citerefentry><refentrytitle>crypttab</refentrytitle><manvolnum>5</manvolnum></citerefentry></para></listitem></varlistentry>
+<varlistentry><term><option>noauto</option></term><listitem><para><citerefentry><refentrytitle>crypttab</refentrytitle><manvolnum>5</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd.mount</refentrytitle><manvolnum>5</manvolnum></citerefentry></para></listitem></varlistentry>
 
-<varlistentry><term><varname>noauto</varname></term><listitem><para><citerefentry><refentrytitle>crypttab</refentrytitle><manvolnum>5</manvolnum></citerefentry></para></listitem></varlistentry>
+<varlistentry><term><option>nofail</option></term><listitem><para><citerefentry><refentrytitle>crypttab</refentrytitle><manvolnum>5</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd.mount</refentrytitle><manvolnum>5</manvolnum></citerefentry></para></listitem></varlistentry>
 
-<varlistentry><term><varname>nofail</varname></term><listitem><para><citerefentry><refentrytitle>crypttab</refentrytitle><manvolnum>5</manvolnum></citerefentry></para></listitem></varlistentry>
+<varlistentry><term><option>plain</option></term><listitem><para><citerefentry><refentrytitle>crypttab</refentrytitle><manvolnum>5</manvolnum></citerefentry></para></listitem></varlistentry>
 
-<varlistentry><term><varname>plain</varname></term><listitem><para><citerefentry><refentrytitle>crypttab</refentrytitle><manvolnum>5</manvolnum></citerefentry></para></listitem></varlistentry>
+<varlistentry><term><option>read-only</option></term><listitem><para><citerefentry><refentrytitle>crypttab</refentrytitle><manvolnum>5</manvolnum></citerefentry></para></listitem></varlistentry>
 
-<varlistentry><term><varname>read-only</varname></term><listitem><para><citerefentry><refentrytitle>crypttab</refentrytitle><manvolnum>5</manvolnum></citerefentry></para></listitem></varlistentry>
+<varlistentry><term><option>readonly</option></term><listitem><para><citerefentry><refentrytitle>crypttab</refentrytitle><manvolnum>5</manvolnum></citerefentry></para></listitem></varlistentry>
 
-<varlistentry><term><varname>readonly</varname></term><listitem><para><citerefentry><refentrytitle>crypttab</refentrytitle><manvolnum>5</manvolnum></citerefentry></para></listitem></varlistentry>
+<varlistentry><term><option>size=</option></term><listitem><para><citerefentry><refentrytitle>crypttab</refentrytitle><manvolnum>5</manvolnum></citerefentry></para></listitem></varlistentry>
 
-<varlistentry><term><varname>size=</varname></term><listitem><para><citerefentry><refentrytitle>crypttab</refentrytitle><manvolnum>5</manvolnum></citerefentry></para></listitem></varlistentry>
+<varlistentry><term><option>swap</option></term><listitem><para><citerefentry><refentrytitle>crypttab</refentrytitle><manvolnum>5</manvolnum></citerefentry></para></listitem></varlistentry>
 
-<varlistentry><term><varname>swap</varname></term><listitem><para><citerefentry><refentrytitle>crypttab</refentrytitle><manvolnum>5</manvolnum></citerefentry></para></listitem></varlistentry>
+<varlistentry><term><option>tcrypt</option></term><listitem><para><citerefentry><refentrytitle>crypttab</refentrytitle><manvolnum>5</manvolnum></citerefentry></para></listitem></varlistentry>
 
-<varlistentry><term><varname>tcrypt</varname></term><listitem><para><citerefentry><refentrytitle>crypttab</refentrytitle><manvolnum>5</manvolnum></citerefentry></para></listitem></varlistentry>
+<varlistentry><term><option>tcrypt-hidden</option></term><listitem><para><citerefentry><refentrytitle>crypttab</refentrytitle><manvolnum>5</manvolnum></citerefentry></para></listitem></varlistentry>
 
-<varlistentry><term><varname>tcrypt-hidden</varname></term><listitem><para><citerefentry><refentrytitle>crypttab</refentrytitle><manvolnum>5</manvolnum></citerefentry></para></listitem></varlistentry>
+<varlistentry><term><option>tcrypt-keyfile=</option></term><listitem><para><citerefentry><refentrytitle>crypttab</refentrytitle><manvolnum>5</manvolnum></citerefentry></para></listitem></varlistentry>
 
-<varlistentry><term><varname>tcrypt-keyfile=</varname></term><listitem><para><citerefentry><refentrytitle>crypttab</refentrytitle><manvolnum>5</manvolnum></citerefentry></para></listitem></varlistentry>
+<varlistentry><term><option>tcrypt-system</option></term><listitem><para><citerefentry><refentrytitle>crypttab</refentrytitle><manvolnum>5</manvolnum></citerefentry></para></listitem></varlistentry>
 
-<varlistentry><term><varname>tcrypt-system</varname></term><listitem><para><citerefentry><refentrytitle>crypttab</refentrytitle><manvolnum>5</manvolnum></citerefentry></para></listitem></varlistentry>
+<varlistentry><term><option>timeout=</option></term><listitem><para><citerefentry><refentrytitle>crypttab</refentrytitle><manvolnum>5</manvolnum></citerefentry></para></listitem></varlistentry>
 
-<varlistentry><term><varname>timeout=</varname></term><listitem><para><citerefentry><refentrytitle>crypttab</refentrytitle><manvolnum>5</manvolnum></citerefentry></para></listitem></varlistentry>
+<varlistentry><term><option>tmp</option></term><listitem><para><citerefentry><refentrytitle>crypttab</refentrytitle><manvolnum>5</manvolnum></citerefentry></para></listitem></varlistentry>
 
-<varlistentry><term><varname>tmp</varname></term><listitem><para><citerefentry><refentrytitle>crypttab</refentrytitle><manvolnum>5</manvolnum></citerefentry></para></listitem></varlistentry>
+<varlistentry><term><option>tries=</option></term><listitem><para><citerefentry><refentrytitle>crypttab</refentrytitle><manvolnum>5</manvolnum></citerefentry></para></listitem></varlistentry>
 
-<varlistentry><term><varname>tries=</varname></term><listitem><para><citerefentry><refentrytitle>crypttab</refentrytitle><manvolnum>5</manvolnum></citerefentry></para></listitem></varlistentry>
+<varlistentry><term><option>verify</option></term><listitem><para><citerefentry><refentrytitle>crypttab</refentrytitle><manvolnum>5</manvolnum></citerefentry></para></listitem></varlistentry>
 
-<varlistentry><term><varname>verify</varname></term><listitem><para><citerefentry><refentrytitle>crypttab</refentrytitle><manvolnum>5</manvolnum></citerefentry></para></listitem></varlistentry>
+<varlistentry><term><option>x-initrd.mount</option></term><listitem><para><citerefentry><refentrytitle>systemd.mount</refentrytitle><manvolnum>5</manvolnum></citerefentry></para></listitem></varlistentry>
+
+<varlistentry><term><option>x-systemd.automount</option></term><listitem><para><citerefentry><refentrytitle>systemd.mount</refentrytitle><manvolnum>5</manvolnum></citerefentry></para></listitem></varlistentry>
+
+<varlistentry><term><option>x-systemd.device-timeout=</option></term><listitem><para><citerefentry><refentrytitle>systemd.mount</refentrytitle><manvolnum>5</manvolnum></citerefentry></para></listitem></varlistentry>
 
 </variablelist>
         </refsect1>
 
 <varlistentry><term><option>--export-prefix=</option></term><listitem><para><citerefentry><refentrytitle>udevadm</refentrytitle><manvolnum>8</manvolnum></citerefentry></para></listitem></varlistentry>
 
-<varlistentry><term><option>--field=</option></term><listitem><para><citerefentry><refentrytitle>journalctl</refentrytitle><manvolnum>1</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd-coredumpctl</refentrytitle><manvolnum>1</manvolnum></citerefentry></para></listitem></varlistentry>
+<varlistentry><term><option>--field=</option></term><listitem><para><citerefentry><refentrytitle>coredumpctl</refentrytitle><manvolnum>1</manvolnum></citerefentry>, <citerefentry><refentrytitle>journalctl</refentrytitle><manvolnum>1</manvolnum></citerefentry></para></listitem></varlistentry>
 
 <varlistentry><term><option>--file-size-max=</option></term><listitem><para><citerefentry><refentrytitle>systemd-readahead-replay.service</refentrytitle><manvolnum>8</manvolnum></citerefentry></para></listitem></varlistentry>
 
 
 <varlistentry><term><option>--header</option></term><listitem><para><citerefentry><refentrytitle>journalctl</refentrytitle><manvolnum>1</manvolnum></citerefentry></para></listitem></varlistentry>
 
-<varlistentry><term><option>--help</option></term><listitem><para><citerefentry><refentrytitle>bootctl</refentrytitle><manvolnum>1</manvolnum></citerefentry>, <citerefentry><refentrytitle>busctl</refentrytitle><manvolnum>1</manvolnum></citerefentry>, <citerefentry><refentrytitle>halt</refentrytitle><manvolnum>8</manvolnum></citerefentry>, <citerefentry><refentrytitle>hostnamectl</refentrytitle><manvolnum>1</manvolnum></citerefentry>, <citerefentry><refentrytitle>journalctl</refentrytitle><manvolnum>1</manvolnum></citerefentry>, <citerefentry><refentrytitle>localectl</refentrytitle><manvolnum>1</manvolnum></citerefentry>, <citerefentry><refentrytitle>loginctl</refentrytitle><manvolnum>1</manvolnum></citerefentry>, <citerefentry><refentrytitle>machinectl</refentrytitle><manvolnum>1</manvolnum></citerefentry>, <citerefentry><refentrytitle>runlevel</refentrytitle><manvolnum>8</manvolnum></citerefentry>, <citerefentry><refentrytitle>shutdown</refentrytitle><manvolnum>8</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemctl</refentrytitle><manvolnum>1</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd-activate</refentrytitle><manvolnum>8</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd-analyze</refentrytitle><manvolnum>1</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd-ask-password</refentrytitle><manvolnum>1</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd-bootchart</refentrytitle><manvolnum>1</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd-bus-proxyd</refentrytitle><manvolnum>8</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd-cat</refentrytitle><manvolnum>1</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd-cgls</refentrytitle><manvolnum>1</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd-cgtop</refentrytitle><manvolnum>1</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd-coredumpctl</refentrytitle><manvolnum>1</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd-delta</refentrytitle><manvolnum>1</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd-detect-virt</refentrytitle><manvolnum>1</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd-inhibit</refentrytitle><manvolnum>1</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd-journal-gatewayd.service</refentrytitle><manvolnum>8</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd-journal-remote</refentrytitle><manvolnum>8</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd-machine-id-setup</refentrytitle><manvolnum>1</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd-notify</refentrytitle><manvolnum>1</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd-nspawn</refentrytitle><manvolnum>1</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd-readahead-replay.service</refentrytitle><manvolnum>8</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd-run</refentrytitle><manvolnum>1</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd-socket-proxyd</refentrytitle><manvolnum>8</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd-suspend.service</refentrytitle><manvolnum>8</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd-tmpfiles</refentrytitle><manvolnum>8</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd-tty-ask-password-agent</refentrytitle><manvolnum>1</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd-udevd.service</refentrytitle><manvolnum>8</manvolnum></citerefentry>, <citerefentry><refentrytitle>telinit</refentrytitle><manvolnum>8</manvolnum></citerefentry>, <citerefentry><refentrytitle>timedatectl</refentrytitle><manvolnum>1</manvolnum></citerefentry>, <citerefentry><refentrytitle>udevadm</refentrytitle><manvolnum>8</manvolnum></citerefentry></para></listitem></varlistentry>
+<varlistentry><term><option>--help</option></term><listitem><para><citerefentry><refentrytitle>bootctl</refentrytitle><manvolnum>1</manvolnum></citerefentry>, <citerefentry><refentrytitle>busctl</refentrytitle><manvolnum>1</manvolnum></citerefentry>, <citerefentry><refentrytitle>coredumpctl</refentrytitle><manvolnum>1</manvolnum></citerefentry>, <citerefentry><refentrytitle>halt</refentrytitle><manvolnum>8</manvolnum></citerefentry>, <citerefentry><refentrytitle>hostnamectl</refentrytitle><manvolnum>1</manvolnum></citerefentry>, <citerefentry><refentrytitle>journalctl</refentrytitle><manvolnum>1</manvolnum></citerefentry>, <citerefentry><refentrytitle>localectl</refentrytitle><manvolnum>1</manvolnum></citerefentry>, <citerefentry><refentrytitle>loginctl</refentrytitle><manvolnum>1</manvolnum></citerefentry>, <citerefentry><refentrytitle>machinectl</refentrytitle><manvolnum>1</manvolnum></citerefentry>, <citerefentry><refentrytitle>runlevel</refentrytitle><manvolnum>8</manvolnum></citerefentry>, <citerefentry><refentrytitle>shutdown</refentrytitle><manvolnum>8</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemctl</refentrytitle><manvolnum>1</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd-activate</refentrytitle><manvolnum>8</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd-analyze</refentrytitle><manvolnum>1</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd-ask-password</refentrytitle><manvolnum>1</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd-bootchart</refentrytitle><manvolnum>1</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd-bus-proxyd</refentrytitle><manvolnum>8</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd-cat</refentrytitle><manvolnum>1</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd-cgls</refentrytitle><manvolnum>1</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd-cgtop</refentrytitle><manvolnum>1</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd-delta</refentrytitle><manvolnum>1</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd-detect-virt</refentrytitle><manvolnum>1</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd-inhibit</refentrytitle><manvolnum>1</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd-journal-gatewayd.service</refentrytitle><manvolnum>8</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd-journal-remote</refentrytitle><manvolnum>8</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd-machine-id-setup</refentrytitle><manvolnum>1</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd-notify</refentrytitle><manvolnum>1</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd-nspawn</refentrytitle><manvolnum>1</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd-path</refentrytitle><manvolnum>1</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd-readahead-replay.service</refentrytitle><manvolnum>8</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd-run</refentrytitle><manvolnum>1</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd-socket-proxyd</refentrytitle><manvolnum>8</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd-suspend.service</refentrytitle><manvolnum>8</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd-sysusers</refentrytitle><manvolnum>8</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd-tmpfiles</refentrytitle><manvolnum>8</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd-tty-ask-password-agent</refentrytitle><manvolnum>1</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd-udevd.service</refentrytitle><manvolnum>8</manvolnum></citerefentry>, <citerefentry><refentrytitle>telinit</refentrytitle><manvolnum>8</manvolnum></citerefentry>, <citerefentry><refentrytitle>timedatectl</refentrytitle><manvolnum>1</manvolnum></citerefentry>, <citerefentry><refentrytitle>udevadm</refentrytitle><manvolnum>8</manvolnum></citerefentry></para></listitem></varlistentry>
 
 <varlistentry><term><option>--host=</option></term><listitem><para><citerefentry><refentrytitle>busctl</refentrytitle><manvolnum>1</manvolnum></citerefentry>, <citerefentry><refentrytitle>hostnamectl</refentrytitle><manvolnum>1</manvolnum></citerefentry>, <citerefentry><refentrytitle>localectl</refentrytitle><manvolnum>1</manvolnum></citerefentry>, <citerefentry><refentrytitle>loginctl</refentrytitle><manvolnum>1</manvolnum></citerefentry>, <citerefentry><refentrytitle>machinectl</refentrytitle><manvolnum>1</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemctl</refentrytitle><manvolnum>1</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd-analyze</refentrytitle><manvolnum>1</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd-run</refentrytitle><manvolnum>1</manvolnum></citerefentry>, <citerefentry><refentrytitle>timedatectl</refentrytitle><manvolnum>1</manvolnum></citerefentry></para></listitem></varlistentry>
 
 
 <varlistentry><term><option>--no-full</option></term><listitem><para><citerefentry><refentrytitle>journalctl</refentrytitle><manvolnum>1</manvolnum></citerefentry></para></listitem></varlistentry>
 
-<varlistentry><term><option>--no-legend</option></term><listitem><para><citerefentry><refentrytitle>busctl</refentrytitle><manvolnum>1</manvolnum></citerefentry>, <citerefentry><refentrytitle>loginctl</refentrytitle><manvolnum>1</manvolnum></citerefentry>, <citerefentry><refentrytitle>machinectl</refentrytitle><manvolnum>1</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemctl</refentrytitle><manvolnum>1</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd-coredumpctl</refentrytitle><manvolnum>1</manvolnum></citerefentry></para></listitem></varlistentry>
+<varlistentry><term><option>--no-legend</option></term><listitem><para><citerefentry><refentrytitle>busctl</refentrytitle><manvolnum>1</manvolnum></citerefentry>, <citerefentry><refentrytitle>coredumpctl</refentrytitle><manvolnum>1</manvolnum></citerefentry>, <citerefentry><refentrytitle>loginctl</refentrytitle><manvolnum>1</manvolnum></citerefentry>, <citerefentry><refentrytitle>machinectl</refentrytitle><manvolnum>1</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemctl</refentrytitle><manvolnum>1</manvolnum></citerefentry></para></listitem></varlistentry>
 
-<varlistentry><term><option>--no-pager</option></term><listitem><para><citerefentry><refentrytitle>busctl</refentrytitle><manvolnum>1</manvolnum></citerefentry>, <citerefentry><refentrytitle>journalctl</refentrytitle><manvolnum>1</manvolnum></citerefentry>, <citerefentry><refentrytitle>localectl</refentrytitle><manvolnum>1</manvolnum></citerefentry>, <citerefentry><refentrytitle>loginctl</refentrytitle><manvolnum>1</manvolnum></citerefentry>, <citerefentry><refentrytitle>machinectl</refentrytitle><manvolnum>1</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemctl</refentrytitle><manvolnum>1</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd-analyze</refentrytitle><manvolnum>1</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd-cgls</refentrytitle><manvolnum>1</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd-coredumpctl</refentrytitle><manvolnum>1</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd-delta</refentrytitle><manvolnum>1</manvolnum></citerefentry>, <citerefentry><refentrytitle>timedatectl</refentrytitle><manvolnum>1</manvolnum></citerefentry></para></listitem></varlistentry>
+<varlistentry><term><option>--no-pager</option></term><listitem><para><citerefentry><refentrytitle>busctl</refentrytitle><manvolnum>1</manvolnum></citerefentry>, <citerefentry><refentrytitle>coredumpctl</refentrytitle><manvolnum>1</manvolnum></citerefentry>, <citerefentry><refentrytitle>journalctl</refentrytitle><manvolnum>1</manvolnum></citerefentry>, <citerefentry><refentrytitle>localectl</refentrytitle><manvolnum>1</manvolnum></citerefentry>, <citerefentry><refentrytitle>loginctl</refentrytitle><manvolnum>1</manvolnum></citerefentry>, <citerefentry><refentrytitle>machinectl</refentrytitle><manvolnum>1</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemctl</refentrytitle><manvolnum>1</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd-analyze</refentrytitle><manvolnum>1</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd-cgls</refentrytitle><manvolnum>1</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd-delta</refentrytitle><manvolnum>1</manvolnum></citerefentry>, <citerefentry><refentrytitle>timedatectl</refentrytitle><manvolnum>1</manvolnum></citerefentry></para></listitem></varlistentry>
 
 <varlistentry><term><option>--no-reload</option></term><listitem><para><citerefentry><refentrytitle>systemctl</refentrytitle><manvolnum>1</manvolnum></citerefentry></para></listitem></varlistentry>
 
 
 <varlistentry><term><option>--output</option></term><listitem><para><citerefentry><refentrytitle>systemd-bootchart</refentrytitle><manvolnum>1</manvolnum></citerefentry></para></listitem></varlistentry>
 
-<varlistentry><term><option>--output=</option></term><listitem><para><citerefentry><refentrytitle>journalctl</refentrytitle><manvolnum>1</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemctl</refentrytitle><manvolnum>1</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd-coredumpctl</refentrytitle><manvolnum>1</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd-journal-remote</refentrytitle><manvolnum>8</manvolnum></citerefentry></para></listitem></varlistentry>
+<varlistentry><term><option>--output=</option></term><listitem><para><citerefentry><refentrytitle>coredumpctl</refentrytitle><manvolnum>1</manvolnum></citerefentry>, <citerefentry><refentrytitle>journalctl</refentrytitle><manvolnum>1</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemctl</refentrytitle><manvolnum>1</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd-journal-remote</refentrytitle><manvolnum>8</manvolnum></citerefentry></para></listitem></varlistentry>
 
 <varlistentry><term><option>--pager-end</option></term><listitem><para><citerefentry><refentrytitle>journalctl</refentrytitle><manvolnum>1</manvolnum></citerefentry></para></listitem></varlistentry>
 
 
 <varlistentry><term><option>--prefix=</option></term><listitem><para><citerefentry><refentrytitle>systemd-tmpfiles</refentrytitle><manvolnum>8</manvolnum></citerefentry></para></listitem></varlistentry>
 
+<varlistentry><term><option>--preset-mode=</option></term><listitem><para><citerefentry><refentrytitle>systemctl</refentrytitle><manvolnum>1</manvolnum></citerefentry></para></listitem></varlistentry>
+
 <varlistentry><term><option>--pretty</option></term><listitem><para><citerefentry><refentrytitle>hostnamectl</refentrytitle><manvolnum>1</manvolnum></citerefentry></para></listitem></varlistentry>
 
 <varlistentry><term><option>--priority=</option></term><listitem><para><citerefentry><refentrytitle>journalctl</refentrytitle><manvolnum>1</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd-cat</refentrytitle><manvolnum>1</manvolnum></citerefentry></para></listitem></varlistentry>
 
 <varlistentry><term><option>--root</option></term><listitem><para><citerefentry><refentrytitle>udevadm</refentrytitle><manvolnum>8</manvolnum></citerefentry></para></listitem></varlistentry>
 
-<varlistentry><term><option>--root=</option></term><listitem><para><citerefentry><refentrytitle>journalctl</refentrytitle><manvolnum>1</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemctl</refentrytitle><manvolnum>1</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd-machine-id-setup</refentrytitle><manvolnum>1</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd-tmpfiles</refentrytitle><manvolnum>8</manvolnum></citerefentry>, <citerefentry><refentrytitle>udevadm</refentrytitle><manvolnum>8</manvolnum></citerefentry></para></listitem></varlistentry>
+<varlistentry><term><option>--root=</option></term><listitem><para><citerefentry><refentrytitle>journalctl</refentrytitle><manvolnum>1</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemctl</refentrytitle><manvolnum>1</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd-machine-id-setup</refentrytitle><manvolnum>1</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd-sysusers</refentrytitle><manvolnum>8</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd-tmpfiles</refentrytitle><manvolnum>8</manvolnum></citerefentry>, <citerefentry><refentrytitle>udevadm</refentrytitle><manvolnum>8</manvolnum></citerefentry></para></listitem></varlistentry>
 
 <varlistentry><term><option>--runtime</option></term><listitem><para><citerefentry><refentrytitle>systemctl</refentrytitle><manvolnum>1</manvolnum></citerefentry></para></listitem></varlistentry>
 
 
 <varlistentry><term><option>--subsystem-nomatch=</option></term><listitem><para><citerefentry><refentrytitle>udevadm</refentrytitle><manvolnum>8</manvolnum></citerefentry></para></listitem></varlistentry>
 
+<varlistentry><term><option>--suffix=</option></term><listitem><para><citerefentry><refentrytitle>systemd-path</refentrytitle><manvolnum>1</manvolnum></citerefentry></para></listitem></varlistentry>
+
 <varlistentry><term><option>--sysname-match=</option></term><listitem><para><citerefentry><refentrytitle>udevadm</refentrytitle><manvolnum>8</manvolnum></citerefentry></para></listitem></varlistentry>
 
 <varlistentry><term><option>--system</option></term><listitem><para><citerefentry><refentrytitle>busctl</refentrytitle><manvolnum>1</manvolnum></citerefentry>, <citerefentry><refentrytitle>journalctl</refentrytitle><manvolnum>1</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemctl</refentrytitle><manvolnum>1</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd-analyze</refentrytitle><manvolnum>1</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd-run</refentrytitle><manvolnum>1</manvolnum></citerefentry></para></listitem></varlistentry>
 
 <varlistentry><term><option>--verify-key=</option></term><listitem><para><citerefentry><refentrytitle>journalctl</refentrytitle><manvolnum>1</manvolnum></citerefentry></para></listitem></varlistentry>
 
-<varlistentry><term><option>--version</option></term><listitem><para><citerefentry><refentrytitle>bootctl</refentrytitle><manvolnum>1</manvolnum></citerefentry>, <citerefentry><refentrytitle>busctl</refentrytitle><manvolnum>1</manvolnum></citerefentry>, <citerefentry><refentrytitle>hostnamectl</refentrytitle><manvolnum>1</manvolnum></citerefentry>, <citerefentry><refentrytitle>journalctl</refentrytitle><manvolnum>1</manvolnum></citerefentry>, <citerefentry><refentrytitle>localectl</refentrytitle><manvolnum>1</manvolnum></citerefentry>, <citerefentry><refentrytitle>loginctl</refentrytitle><manvolnum>1</manvolnum></citerefentry>, <citerefentry><refentrytitle>machinectl</refentrytitle><manvolnum>1</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemctl</refentrytitle><manvolnum>1</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd-activate</refentrytitle><manvolnum>8</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd-analyze</refentrytitle><manvolnum>1</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd-bus-proxyd</refentrytitle><manvolnum>8</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd-cat</refentrytitle><manvolnum>1</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd-cgls</refentrytitle><manvolnum>1</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd-cgtop</refentrytitle><manvolnum>1</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd-coredumpctl</refentrytitle><manvolnum>1</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd-delta</refentrytitle><manvolnum>1</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd-detect-virt</refentrytitle><manvolnum>1</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd-inhibit</refentrytitle><manvolnum>1</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd-journal-gatewayd.service</refentrytitle><manvolnum>8</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd-journal-remote</refentrytitle><manvolnum>8</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd-machine-id-setup</refentrytitle><manvolnum>1</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd-notify</refentrytitle><manvolnum>1</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd-nspawn</refentrytitle><manvolnum>1</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd-readahead-replay.service</refentrytitle><manvolnum>8</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd-run</refentrytitle><manvolnum>1</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd-socket-proxyd</refentrytitle><manvolnum>8</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd-suspend.service</refentrytitle><manvolnum>8</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd-tmpfiles</refentrytitle><manvolnum>8</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd-tty-ask-password-agent</refentrytitle><manvolnum>1</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd-udevd.service</refentrytitle><manvolnum>8</manvolnum></citerefentry>, <citerefentry><refentrytitle>timedatectl</refentrytitle><manvolnum>1</manvolnum></citerefentry>, <citerefentry><refentrytitle>udevadm</refentrytitle><manvolnum>8</manvolnum></citerefentry></para></listitem></varlistentry>
+<varlistentry><term><option>--version</option></term><listitem><para><citerefentry><refentrytitle>bootctl</refentrytitle><manvolnum>1</manvolnum></citerefentry>, <citerefentry><refentrytitle>busctl</refentrytitle><manvolnum>1</manvolnum></citerefentry>, <citerefentry><refentrytitle>coredumpctl</refentrytitle><manvolnum>1</manvolnum></citerefentry>, <citerefentry><refentrytitle>hostnamectl</refentrytitle><manvolnum>1</manvolnum></citerefentry>, <citerefentry><refentrytitle>journalctl</refentrytitle><manvolnum>1</manvolnum></citerefentry>, <citerefentry><refentrytitle>localectl</refentrytitle><manvolnum>1</manvolnum></citerefentry>, <citerefentry><refentrytitle>loginctl</refentrytitle><manvolnum>1</manvolnum></citerefentry>, <citerefentry><refentrytitle>machinectl</refentrytitle><manvolnum>1</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemctl</refentrytitle><manvolnum>1</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd-activate</refentrytitle><manvolnum>8</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd-analyze</refentrytitle><manvolnum>1</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd-bus-proxyd</refentrytitle><manvolnum>8</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd-cat</refentrytitle><manvolnum>1</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd-cgls</refentrytitle><manvolnum>1</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd-cgtop</refentrytitle><manvolnum>1</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd-delta</refentrytitle><manvolnum>1</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd-detect-virt</refentrytitle><manvolnum>1</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd-inhibit</refentrytitle><manvolnum>1</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd-journal-gatewayd.service</refentrytitle><manvolnum>8</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd-journal-remote</refentrytitle><manvolnum>8</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd-machine-id-setup</refentrytitle><manvolnum>1</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd-notify</refentrytitle><manvolnum>1</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd-nspawn</refentrytitle><manvolnum>1</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd-path</refentrytitle><manvolnum>1</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd-readahead-replay.service</refentrytitle><manvolnum>8</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd-run</refentrytitle><manvolnum>1</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd-socket-proxyd</refentrytitle><manvolnum>8</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd-suspend.service</refentrytitle><manvolnum>8</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd-sysusers</refentrytitle><manvolnum>8</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd-tmpfiles</refentrytitle><manvolnum>8</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd-tty-ask-password-agent</refentrytitle><manvolnum>1</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd-udevd.service</refentrytitle><manvolnum>8</manvolnum></citerefentry>, <citerefentry><refentrytitle>timedatectl</refentrytitle><manvolnum>1</manvolnum></citerefentry>, <citerefentry><refentrytitle>udevadm</refentrytitle><manvolnum>8</manvolnum></citerefentry></para></listitem></varlistentry>
 
 <varlistentry><term><option>--vm</option></term><listitem><para><citerefentry><refentrytitle>systemd-detect-virt</refentrytitle><manvolnum>1</manvolnum></citerefentry></para></listitem></varlistentry>
 
 
 <varlistentry><term><option>--wtmp-only</option></term><listitem><para><citerefentry><refentrytitle>halt</refentrytitle><manvolnum>8</manvolnum></citerefentry></para></listitem></varlistentry>
 
+<varlistentry><term><constant>-1</constant></term><listitem><para><citerefentry><refentrytitle>coredumpctl</refentrytitle><manvolnum>1</manvolnum></citerefentry></para></listitem></varlistentry>
+
 <varlistentry><term><option>-A</option></term><listitem><para><citerefentry><refentrytitle>udevadm</refentrytitle><manvolnum>8</manvolnum></citerefentry></para></listitem></varlistentry>
 
 <varlistentry><term><option>-C</option></term><listitem><para><citerefentry><refentrytitle>systemd-bootchart</refentrytitle><manvolnum>1</manvolnum></citerefentry></para></listitem></varlistentry>
 
 <varlistentry><term><option>-E</option></term><listitem><para><citerefentry><refentrytitle>systemd-activate</refentrytitle><manvolnum>8</manvolnum></citerefentry>, <citerefentry><refentrytitle>udevadm</refentrytitle><manvolnum>8</manvolnum></citerefentry></para></listitem></varlistentry>
 
-<varlistentry><term><option>-F</option></term><listitem><para><citerefentry><refentrytitle>journalctl</refentrytitle><manvolnum>1</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd-bootchart</refentrytitle><manvolnum>1</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd-coredumpctl</refentrytitle><manvolnum>1</manvolnum></citerefentry></para></listitem></varlistentry>
+<varlistentry><term><option>-F</option></term><listitem><para><citerefentry><refentrytitle>coredumpctl</refentrytitle><manvolnum>1</manvolnum></citerefentry>, <citerefentry><refentrytitle>journalctl</refentrytitle><manvolnum>1</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd-bootchart</refentrytitle><manvolnum>1</manvolnum></citerefentry></para></listitem></varlistentry>
 
 <varlistentry><term><option>-H</option></term><listitem><para><citerefentry><refentrytitle>busctl</refentrytitle><manvolnum>1</manvolnum></citerefentry>, <citerefentry><refentrytitle>hostnamectl</refentrytitle><manvolnum>1</manvolnum></citerefentry>, <citerefentry><refentrytitle>localectl</refentrytitle><manvolnum>1</manvolnum></citerefentry>, <citerefentry><refentrytitle>loginctl</refentrytitle><manvolnum>1</manvolnum></citerefentry>, <citerefentry><refentrytitle>machinectl</refentrytitle><manvolnum>1</manvolnum></citerefentry>, <citerefentry><refentrytitle>shutdown</refentrytitle><manvolnum>8</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemctl</refentrytitle><manvolnum>1</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd-analyze</refentrytitle><manvolnum>1</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd-run</refentrytitle><manvolnum>1</manvolnum></citerefentry>, <citerefentry><refentrytitle>timedatectl</refentrytitle><manvolnum>1</manvolnum></citerefentry></para></listitem></varlistentry>
 
 
 <varlistentry><term><option>-g</option></term><listitem><para><citerefentry><refentrytitle>systemd-bootchart</refentrytitle><manvolnum>1</manvolnum></citerefentry>, <citerefentry><refentrytitle>udevadm</refentrytitle><manvolnum>8</manvolnum></citerefentry></para></listitem></varlistentry>
 
-<varlistentry><term><option>-h</option></term><listitem><para><citerefentry><refentrytitle>bootctl</refentrytitle><manvolnum>1</manvolnum></citerefentry>, <citerefentry><refentrytitle>busctl</refentrytitle><manvolnum>1</manvolnum></citerefentry>, <citerefentry><refentrytitle>hostnamectl</refentrytitle><manvolnum>1</manvolnum></citerefentry>, <citerefentry><refentrytitle>journalctl</refentrytitle><manvolnum>1</manvolnum></citerefentry>, <citerefentry><refentrytitle>localectl</refentrytitle><manvolnum>1</manvolnum></citerefentry>, <citerefentry><refentrytitle>loginctl</refentrytitle><manvolnum>1</manvolnum></citerefentry>, <citerefentry><refentrytitle>machinectl</refentrytitle><manvolnum>1</manvolnum></citerefentry>, <citerefentry><refentrytitle>shutdown</refentrytitle><manvolnum>8</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemctl</refentrytitle><manvolnum>1</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd-activate</refentrytitle><manvolnum>8</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd-analyze</refentrytitle><manvolnum>1</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd-ask-password</refentrytitle><manvolnum>1</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd-bootchart</refentrytitle><manvolnum>1</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd-bus-proxyd</refentrytitle><manvolnum>8</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd-cat</refentrytitle><manvolnum>1</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd-cgls</refentrytitle><manvolnum>1</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd-cgtop</refentrytitle><manvolnum>1</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd-coredumpctl</refentrytitle><manvolnum>1</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd-delta</refentrytitle><manvolnum>1</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd-detect-virt</refentrytitle><manvolnum>1</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd-inhibit</refentrytitle><manvolnum>1</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd-journal-gatewayd.service</refentrytitle><manvolnum>8</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd-journal-remote</refentrytitle><manvolnum>8</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd-machine-id-setup</refentrytitle><manvolnum>1</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd-notify</refentrytitle><manvolnum>1</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd-nspawn</refentrytitle><manvolnum>1</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd-readahead-replay.service</refentrytitle><manvolnum>8</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd-run</refentrytitle><manvolnum>1</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd-socket-proxyd</refentrytitle><manvolnum>8</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd-suspend.service</refentrytitle><manvolnum>8</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd-tmpfiles</refentrytitle><manvolnum>8</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd-tty-ask-password-agent</refentrytitle><manvolnum>1</manvolnum></citerefentry>, <citerefentry><refentrytitle>timedatectl</refentrytitle><manvolnum>1</manvolnum></citerefentry>, <citerefentry><refentrytitle>udevadm</refentrytitle><manvolnum>8</manvolnum></citerefentry></para></listitem></varlistentry>
+<varlistentry><term><option>-h</option></term><listitem><para><citerefentry><refentrytitle>bootctl</refentrytitle><manvolnum>1</manvolnum></citerefentry>, <citerefentry><refentrytitle>busctl</refentrytitle><manvolnum>1</manvolnum></citerefentry>, <citerefentry><refentrytitle>coredumpctl</refentrytitle><manvolnum>1</manvolnum></citerefentry>, <citerefentry><refentrytitle>hostnamectl</refentrytitle><manvolnum>1</manvolnum></citerefentry>, <citerefentry><refentrytitle>journalctl</refentrytitle><manvolnum>1</manvolnum></citerefentry>, <citerefentry><refentrytitle>localectl</refentrytitle><manvolnum>1</manvolnum></citerefentry>, <citerefentry><refentrytitle>loginctl</refentrytitle><manvolnum>1</manvolnum></citerefentry>, <citerefentry><refentrytitle>machinectl</refentrytitle><manvolnum>1</manvolnum></citerefentry>, <citerefentry><refentrytitle>shutdown</refentrytitle><manvolnum>8</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemctl</refentrytitle><manvolnum>1</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd-activate</refentrytitle><manvolnum>8</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd-analyze</refentrytitle><manvolnum>1</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd-ask-password</refentrytitle><manvolnum>1</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd-bootchart</refentrytitle><manvolnum>1</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd-bus-proxyd</refentrytitle><manvolnum>8</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd-cat</refentrytitle><manvolnum>1</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd-cgls</refentrytitle><manvolnum>1</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd-cgtop</refentrytitle><manvolnum>1</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd-delta</refentrytitle><manvolnum>1</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd-detect-virt</refentrytitle><manvolnum>1</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd-inhibit</refentrytitle><manvolnum>1</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd-journal-gatewayd.service</refentrytitle><manvolnum>8</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd-journal-remote</refentrytitle><manvolnum>8</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd-machine-id-setup</refentrytitle><manvolnum>1</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd-notify</refentrytitle><manvolnum>1</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd-nspawn</refentrytitle><manvolnum>1</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd-path</refentrytitle><manvolnum>1</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd-readahead-replay.service</refentrytitle><manvolnum>8</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd-run</refentrytitle><manvolnum>1</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd-socket-proxyd</refentrytitle><manvolnum>8</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd-suspend.service</refentrytitle><manvolnum>8</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd-sysusers</refentrytitle><manvolnum>8</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd-tmpfiles</refentrytitle><manvolnum>8</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd-tty-ask-password-agent</refentrytitle><manvolnum>1</manvolnum></citerefentry>, <citerefentry><refentrytitle>timedatectl</refentrytitle><manvolnum>1</manvolnum></citerefentry>, <citerefentry><refentrytitle>udevadm</refentrytitle><manvolnum>8</manvolnum></citerefentry></para></listitem></varlistentry>
 
 <varlistentry><term><option>-i</option></term><listitem><para><citerefentry><refentrytitle>systemctl</refentrytitle><manvolnum>1</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd-bootchart</refentrytitle><manvolnum>1</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd-cgtop</refentrytitle><manvolnum>1</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd-networkd-wait-online.service</refentrytitle><manvolnum>8</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd-nspawn</refentrytitle><manvolnum>1</manvolnum></citerefentry></para></listitem></varlistentry>
 
 
 <varlistentry><term><option>-n</option></term><listitem><para><citerefentry><refentrytitle>journalctl</refentrytitle><manvolnum>1</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemctl</refentrytitle><manvolnum>1</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd-bootchart</refentrytitle><manvolnum>1</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd-cgtop</refentrytitle><manvolnum>1</manvolnum></citerefentry>, <citerefentry><refentrytitle>udevadm</refentrytitle><manvolnum>8</manvolnum></citerefentry></para></listitem></varlistentry>
 
-<varlistentry><term><option>-o</option></term><listitem><para><citerefentry><refentrytitle>journalctl</refentrytitle><manvolnum>1</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemctl</refentrytitle><manvolnum>1</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd-bootchart</refentrytitle><manvolnum>1</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd-coredumpctl</refentrytitle><manvolnum>1</manvolnum></citerefentry></para></listitem></varlistentry>
+<varlistentry><term><option>-o</option></term><listitem><para><citerefentry><refentrytitle>coredumpctl</refentrytitle><manvolnum>1</manvolnum></citerefentry>, <citerefentry><refentrytitle>journalctl</refentrytitle><manvolnum>1</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemctl</refentrytitle><manvolnum>1</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd-bootchart</refentrytitle><manvolnum>1</manvolnum></citerefentry></para></listitem></varlistentry>
 
 <varlistentry><term><option>-p</option></term><listitem><para><citerefentry><refentrytitle>halt</refentrytitle><manvolnum>8</manvolnum></citerefentry>, <citerefentry><refentrytitle>journalctl</refentrytitle><manvolnum>1</manvolnum></citerefentry>, <citerefentry><refentrytitle>loginctl</refentrytitle><manvolnum>1</manvolnum></citerefentry>, <citerefentry><refentrytitle>machinectl</refentrytitle><manvolnum>1</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemctl</refentrytitle><manvolnum>1</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd-bootchart</refentrytitle><manvolnum>1</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd-cat</refentrytitle><manvolnum>1</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd-cgtop</refentrytitle><manvolnum>1</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd-run</refentrytitle><manvolnum>1</manvolnum></citerefentry>, <citerefentry><refentrytitle>udevadm</refentrytitle><manvolnum>8</manvolnum></citerefentry></para></listitem></varlistentry>
 
 
 <varlistentry><term><varname>CPE_NAME=</varname></term><listitem><para><citerefentry><refentrytitle>os-release</refentrytitle><manvolnum>5</manvolnum></citerefentry></para></listitem></varlistentry>
 
-<varlistentry><term><varname>Compress=</varname></term><listitem><para><citerefentry><refentrytitle>journald.conf</refentrytitle><manvolnum>5</manvolnum></citerefentry></para></listitem></varlistentry>
+<varlistentry><term><varname>Compress=</varname></term><listitem><para><citerefentry><refentrytitle>coredump.conf</refentrytitle><manvolnum>5</manvolnum></citerefentry>, <citerefentry><refentrytitle>journald.conf</refentrytitle><manvolnum>5</manvolnum></citerefentry></para></listitem></varlistentry>
 
 <varlistentry><term><varname>D</varname></term><listitem><para><citerefentry><refentrytitle>tmpfiles.d</refentrytitle><manvolnum>5</manvolnum></citerefentry></para></listitem></varlistentry>
 
+<varlistentry><term><varname>ExternalSizeMax=</varname></term><listitem><para><citerefentry><refentrytitle>coredump.conf</refentrytitle><manvolnum>5</manvolnum></citerefentry></para></listitem></varlistentry>
+
 <varlistentry><term><varname>F</varname></term><listitem><para><citerefentry><refentrytitle>tmpfiles.d</refentrytitle><manvolnum>5</manvolnum></citerefentry></para></listitem></varlistentry>
 
 <varlistentry><term><varname>FONT=</varname></term><listitem><para><citerefentry><refentrytitle>vconsole.conf</refentrytitle><manvolnum>5</manvolnum></citerefentry></para></listitem></varlistentry>
 
 <varlistentry><term><varname>InhibitDelayMaxSec=</varname></term><listitem><para><citerefentry><refentrytitle>logind.conf</refentrytitle><manvolnum>5</manvolnum></citerefentry></para></listitem></varlistentry>
 
+<varlistentry><term><varname>JournalSizeMax=</varname></term><listitem><para><citerefentry><refentrytitle>coredump.conf</refentrytitle><manvolnum>5</manvolnum></citerefentry></para></listitem></varlistentry>
+
 <varlistentry><term><varname>KEYMAP=</varname></term><listitem><para><citerefentry><refentrytitle>vconsole.conf</refentrytitle><manvolnum>5</manvolnum></citerefentry></para></listitem></varlistentry>
 
 <varlistentry><term><varname>KEYMAP_TOGGLE=</varname></term><listitem><para><citerefentry><refentrytitle>vconsole.conf</refentrytitle><manvolnum>5</manvolnum></citerefentry></para></listitem></varlistentry>
 
+<varlistentry><term><varname>KeepFree=</varname></term><listitem><para><citerefentry><refentrytitle>coredump.conf</refentrytitle><manvolnum>5</manvolnum></citerefentry></para></listitem></varlistentry>
+
 <varlistentry><term><varname>KillExcludeUsers=</varname></term><listitem><para><citerefentry><refentrytitle>logind.conf</refentrytitle><manvolnum>5</manvolnum></citerefentry></para></listitem></varlistentry>
 
 <varlistentry><term><varname>KillOnlyUsers=</varname></term><listitem><para><citerefentry><refentrytitle>logind.conf</refentrytitle><manvolnum>5</manvolnum></citerefentry></para></listitem></varlistentry>
 
 <varlistentry><term><varname>L</varname></term><listitem><para><citerefentry><refentrytitle>tmpfiles.d</refentrytitle><manvolnum>5</manvolnum></citerefentry></para></listitem></varlistentry>
 
+<varlistentry><term><varname>L+</varname></term><listitem><para><citerefentry><refentrytitle>tmpfiles.d</refentrytitle><manvolnum>5</manvolnum></citerefentry></para></listitem></varlistentry>
+
 <varlistentry><term><varname>LidSwitchIgnoreInhibited=</varname></term><listitem><para><citerefentry><refentrytitle>logind.conf</refentrytitle><manvolnum>5</manvolnum></citerefentry></para></listitem></varlistentry>
 
 <varlistentry><term><varname>MaxFileSec=</varname></term><listitem><para><citerefentry><refentrytitle>journald.conf</refentrytitle><manvolnum>5</manvolnum></citerefentry></para></listitem></varlistentry>
 
 <varlistentry><term><varname>MaxRetentionSec=</varname></term><listitem><para><citerefentry><refentrytitle>journald.conf</refentrytitle><manvolnum>5</manvolnum></citerefentry></para></listitem></varlistentry>
 
+<varlistentry><term><varname>MaxUse=</varname></term><listitem><para><citerefentry><refentrytitle>coredump.conf</refentrytitle><manvolnum>5</manvolnum></citerefentry></para></listitem></varlistentry>
+
 <varlistentry><term><varname>NAME=</varname></term><listitem><para><citerefentry><refentrytitle>os-release</refentrytitle><manvolnum>5</manvolnum></citerefentry></para></listitem></varlistentry>
 
 <varlistentry><term><varname>NAutoVTs=</varname></term><listitem><para><citerefentry><refentrytitle>logind.conf</refentrytitle><manvolnum>5</manvolnum></citerefentry></para></listitem></varlistentry>
 
 <varlistentry><term><varname>PowerKeyIgnoreInhibited=</varname></term><listitem><para><citerefentry><refentrytitle>logind.conf</refentrytitle><manvolnum>5</manvolnum></citerefentry></para></listitem></varlistentry>
 
+<varlistentry><term><varname>ProcessSizeMax=</varname></term><listitem><para><citerefentry><refentrytitle>coredump.conf</refentrytitle><manvolnum>5</manvolnum></citerefentry></para></listitem></varlistentry>
+
 <varlistentry><term><varname>R</varname></term><listitem><para><citerefentry><refentrytitle>tmpfiles.d</refentrytitle><manvolnum>5</manvolnum></citerefentry></para></listitem></varlistentry>
 
 <varlistentry><term><varname>RateLimitBurst=</varname></term><listitem><para><citerefentry><refentrytitle>journald.conf</refentrytitle><manvolnum>5</manvolnum></citerefentry></para></listitem></varlistentry>
 
 <varlistentry><term><varname>SplitMode=</varname></term><listitem><para><citerefentry><refentrytitle>journald.conf</refentrytitle><manvolnum>5</manvolnum></citerefentry></para></listitem></varlistentry>
 
-<varlistentry><term><varname>Storage=</varname></term><listitem><para><citerefentry><refentrytitle>journald.conf</refentrytitle><manvolnum>5</manvolnum></citerefentry></para></listitem></varlistentry>
+<varlistentry><term><varname>Storage=</varname></term><listitem><para><citerefentry><refentrytitle>coredump.conf</refentrytitle><manvolnum>5</manvolnum></citerefentry>, <citerefentry><refentrytitle>journald.conf</refentrytitle><manvolnum>5</manvolnum></citerefentry></para></listitem></varlistentry>
 
 <varlistentry><term><varname>SuspendKeyIgnoreInhibited=</varname></term><listitem><para><citerefentry><refentrytitle>logind.conf</refentrytitle><manvolnum>5</manvolnum></citerefentry></para></listitem></varlistentry>
 
 
 <varlistentry><term><varname>b</varname></term><listitem><para><citerefentry><refentrytitle>tmpfiles.d</refentrytitle><manvolnum>5</manvolnum></citerefentry></para></listitem></varlistentry>
 
+<varlistentry><term><varname>b+</varname></term><listitem><para><citerefentry><refentrytitle>tmpfiles.d</refentrytitle><manvolnum>5</manvolnum></citerefentry></para></listitem></varlistentry>
+
 <varlistentry><term><varname>c</varname></term><listitem><para><citerefentry><refentrytitle>tmpfiles.d</refentrytitle><manvolnum>5</manvolnum></citerefentry></para></listitem></varlistentry>
 
+<varlistentry><term><varname>c+</varname></term><listitem><para><citerefentry><refentrytitle>tmpfiles.d</refentrytitle><manvolnum>5</manvolnum></citerefentry></para></listitem></varlistentry>
+
 <varlistentry><term><varname>d</varname></term><listitem><para><citerefentry><refentrytitle>tmpfiles.d</refentrytitle><manvolnum>5</manvolnum></citerefentry></para></listitem></varlistentry>
 
 <varlistentry><term><varname>equivalent</varname></term><listitem><para><citerefentry><refentrytitle>systemd-delta</refentrytitle><manvolnum>1</manvolnum></citerefentry></para></listitem></varlistentry>
 
 <varlistentry><term><varname>f</varname></term><listitem><para><citerefentry><refentrytitle>tmpfiles.d</refentrytitle><manvolnum>5</manvolnum></citerefentry></para></listitem></varlistentry>
 
+<varlistentry><term><varname>g</varname></term><listitem><para><citerefentry><refentrytitle>sysusers.d</refentrytitle><manvolnum>5</manvolnum></citerefentry></para></listitem></varlistentry>
+
 <varlistentry><term><varname>h</varname></term><listitem><para><citerefentry><refentrytitle>tmpfiles.d</refentrytitle><manvolnum>5</manvolnum></citerefentry></para></listitem></varlistentry>
 
-<varlistentry><term><constant>m</constant></term><listitem><para><citerefentry><refentrytitle>tmpfiles.d</refentrytitle><manvolnum>5</manvolnum></citerefentry></para></listitem></varlistentry>
+<varlistentry><term><constant>m</constant></term><listitem><para><citerefentry><refentrytitle>sysusers.d</refentrytitle><manvolnum>5</manvolnum></citerefentry>, <citerefentry><refentrytitle>tmpfiles.d</refentrytitle><manvolnum>5</manvolnum></citerefentry></para></listitem></varlistentry>
 
 <varlistentry><term><varname>masked</varname></term><listitem><para><citerefentry><refentrytitle>systemd-delta</refentrytitle><manvolnum>1</manvolnum></citerefentry></para></listitem></varlistentry>
 
 
 <varlistentry><term><varname>p</varname></term><listitem><para><citerefentry><refentrytitle>tmpfiles.d</refentrytitle><manvolnum>5</manvolnum></citerefentry></para></listitem></varlistentry>
 
+<varlistentry><term><varname>p+</varname></term><listitem><para><citerefentry><refentrytitle>tmpfiles.d</refentrytitle><manvolnum>5</manvolnum></citerefentry></para></listitem></varlistentry>
+
 <varlistentry><term><constant>r</constant></term><listitem><para><citerefentry><refentrytitle>tmpfiles.d</refentrytitle><manvolnum>5</manvolnum></citerefentry></para></listitem></varlistentry>
 
 <varlistentry><term><varname>redirected</varname></term><listitem><para><citerefentry><refentrytitle>systemd-delta</refentrytitle><manvolnum>1</manvolnum></citerefentry></para></listitem></varlistentry>
 
 <varlistentry><term><varname>s</varname></term><listitem><para><citerefentry><refentrytitle>tmpfiles.d</refentrytitle><manvolnum>5</manvolnum></citerefentry></para></listitem></varlistentry>
 
+<varlistentry><term><varname>u</varname></term><listitem><para><citerefentry><refentrytitle>sysusers.d</refentrytitle><manvolnum>5</manvolnum></citerefentry></para></listitem></varlistentry>
+
 <varlistentry><term><varname>udev_log</varname></term><listitem><para><citerefentry><refentrytitle>systemd-udevd.service</refentrytitle><manvolnum>8</manvolnum></citerefentry></para></listitem></varlistentry>
 
 <varlistentry><term><varname>unchanged</varname></term><listitem><para><citerefentry><refentrytitle>systemd-delta</refentrytitle><manvolnum>1</manvolnum></citerefentry></para></listitem></varlistentry>
                 <para>Paths and file names referred to in the
                 documentation.</para>
 
-                <variablelist id="filenames"><varlistentry><term><filename>/</filename></term><listitem><para><citerefentry><refentrytitle>systemd-gpt-auto-generator</refentrytitle><manvolnum>8</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd-remount-fs.service</refentrytitle><manvolnum>8</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd.unit</refentrytitle><manvolnum>5</manvolnum></citerefentry></para></listitem></varlistentry>
+                <variablelist id="filenames"><varlistentry><term><filename>/</filename></term><listitem><para><citerefentry><refentrytitle>file-hierarchy</refentrytitle><manvolnum>7</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd-gpt-auto-generator</refentrytitle><manvolnum>8</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd-remount-fs.service</refentrytitle><manvolnum>8</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd.unit</refentrytitle><manvolnum>5</manvolnum></citerefentry>, <citerefentry><refentrytitle>sysusers.d</refentrytitle><manvolnum>5</manvolnum></citerefentry></para></listitem></varlistentry>
 
 <varlistentry><term><filename>$HOME/.config/systemd/user/</filename></term><listitem><para><citerefentry><refentrytitle>systemd.unit</refentrytitle><manvolnum>5</manvolnum></citerefentry></para></listitem></varlistentry>
 
 
 <varlistentry><term><filename>/.readahead</filename></term><listitem><para><citerefentry><refentrytitle>systemd-readahead-replay.service</refentrytitle><manvolnum>8</manvolnum></citerefentry></para></listitem></varlistentry>
 
-<varlistentry><term><filename>/bin</filename></term><listitem><para><citerefentry><refentrytitle>systemd.exec</refentrytitle><manvolnum>5</manvolnum></citerefentry></para></listitem></varlistentry>
+<varlistentry><term><filename>/bin</filename></term><listitem><para><citerefentry><refentrytitle>file-hierarchy</refentrytitle><manvolnum>7</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd.exec</refentrytitle><manvolnum>5</manvolnum></citerefentry></para></listitem></varlistentry>
 
 <varlistentry><term><filename>/bin/ls</filename></term><listitem><para><citerefentry><refentrytitle>systemd-cat</refentrytitle><manvolnum>1</manvolnum></citerefentry></para></listitem></varlistentry>
 
-<varlistentry><term><filename>/boot</filename></term><listitem><para><citerefentry><refentrytitle>kernel-install</refentrytitle><manvolnum>8</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd-efi-boot-generator</refentrytitle><manvolnum>8</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd-gpt-auto-generator</refentrytitle><manvolnum>8</manvolnum></citerefentry></para></listitem></varlistentry>
+<varlistentry><term><filename>/boot</filename></term><listitem><para><citerefentry><refentrytitle>file-hierarchy</refentrytitle><manvolnum>7</manvolnum></citerefentry>, <citerefentry><refentrytitle>kernel-install</refentrytitle><manvolnum>8</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd-efi-boot-generator</refentrytitle><manvolnum>8</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd-gpt-auto-generator</refentrytitle><manvolnum>8</manvolnum></citerefentry></para></listitem></varlistentry>
 
 <varlistentry><term><filename>/boot/loader/entries/<replaceable>MACHINE-ID</replaceable>-<replaceable>KERNEL-VERSION</replaceable>.conf</filename></term><listitem><para><citerefentry><refentrytitle>kernel-install</refentrytitle><manvolnum>8</manvolnum></citerefentry></para></listitem></varlistentry>
 
-<varlistentry><term><filename>/dev</filename></term><listitem><para><citerefentry><refentrytitle>systemd-nspawn</refentrytitle><manvolnum>1</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd-remount-fs.service</refentrytitle><manvolnum>8</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd.device</refentrytitle><manvolnum>5</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd.journal-fields</refentrytitle><manvolnum>7</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd.resource-control</refentrytitle><manvolnum>5</manvolnum></citerefentry>, <citerefentry><refentrytitle>udev</refentrytitle><manvolnum>7</manvolnum></citerefentry></para></listitem></varlistentry>
+<varlistentry><term><filename>/dev</filename></term><listitem><para><citerefentry><refentrytitle>file-hierarchy</refentrytitle><manvolnum>7</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd-nspawn</refentrytitle><manvolnum>1</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd-remount-fs.service</refentrytitle><manvolnum>8</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd.device</refentrytitle><manvolnum>5</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd.journal-fields</refentrytitle><manvolnum>7</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd.resource-control</refentrytitle><manvolnum>5</manvolnum></citerefentry>, <citerefentry><refentrytitle>udev</refentrytitle><manvolnum>7</manvolnum></citerefentry></para></listitem></varlistentry>
 
 <varlistentry><term><filename>/dev/console</filename></term><listitem><para><citerefentry><refentrytitle>journald.conf</refentrytitle><manvolnum>5</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd-getty-generator</refentrytitle><manvolnum>8</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd-tty-ask-password-agent</refentrytitle><manvolnum>1</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd.exec</refentrytitle><manvolnum>5</manvolnum></citerefentry></para></listitem></varlistentry>
 
 
 <varlistentry><term><filename>/dev/mapper/srv</filename></term><listitem><para><citerefentry><refentrytitle>systemd-gpt-auto-generator</refentrytitle><manvolnum>8</manvolnum></citerefentry></para></listitem></varlistentry>
 
+<varlistentry><term><filename>/dev/net/tun</filename></term><listitem><para><citerefentry><refentrytitle>systemd.netdev</refentrytitle><manvolnum>5</manvolnum></citerefentry></para></listitem></varlistentry>
+
 <varlistentry><term><filename>/dev/null</filename></term><listitem><para><citerefentry><refentrytitle>binfmt.d</refentrytitle><manvolnum>5</manvolnum></citerefentry>, <citerefentry><refentrytitle>daemon</refentrytitle><manvolnum>7</manvolnum></citerefentry>, <citerefentry><refentrytitle>modules-load.d</refentrytitle><manvolnum>5</manvolnum></citerefentry>, <citerefentry><refentrytitle>sysctl.d</refentrytitle><manvolnum>5</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemctl</refentrytitle><manvolnum>1</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd.exec</refentrytitle><manvolnum>5</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd.link</refentrytitle><manvolnum>5</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd.netdev</refentrytitle><manvolnum>5</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd.network</refentrytitle><manvolnum>5</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd.preset</refentrytitle><manvolnum>5</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd.resource-control</refentrytitle><manvolnum>5</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd.unit</refentrytitle><manvolnum>5</manvolnum></citerefentry>, <citerefentry><refentrytitle>tmpfiles.d</refentrytitle><manvolnum>5</manvolnum></citerefentry>, <citerefentry><refentrytitle>udev</refentrytitle><manvolnum>7</manvolnum></citerefentry></para></listitem></varlistentry>
 
 <varlistentry><term><filename>/dev/random</filename></term><listitem><para><citerefentry><refentrytitle>crypttab</refentrytitle><manvolnum>5</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd.exec</refentrytitle><manvolnum>5</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd.resource-control</refentrytitle><manvolnum>5</manvolnum></citerefentry></para></listitem></varlistentry>
 
 <varlistentry><term><filename>/dev/sda5</filename></term><listitem><para><citerefentry><refentrytitle>systemd.resource-control</refentrytitle><manvolnum>5</manvolnum></citerefentry></para></listitem></varlistentry>
 
+<varlistentry><term><filename>/dev/shm</filename></term><listitem><para><citerefentry><refentrytitle>file-hierarchy</refentrytitle><manvolnum>7</manvolnum></citerefentry></para></listitem></varlistentry>
+
 <varlistentry><term><filename>/dev/urandom</filename></term><listitem><para><citerefentry><refentrytitle>crypttab</refentrytitle><manvolnum>5</manvolnum></citerefentry>, <citerefentry><refentrytitle>sd_id128_randomize</refentrytitle><manvolnum>3</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd.resource-control</refentrytitle><manvolnum>5</manvolnum></citerefentry></para></listitem></varlistentry>
 
 <varlistentry><term><filename>/dev/watchdog</filename></term><listitem><para><citerefentry><refentrytitle>systemd-system.conf</refentrytitle><manvolnum>5</manvolnum></citerefentry></para></listitem></varlistentry>
 
 <varlistentry><term><filename>/dev/zero</filename></term><listitem><para><citerefentry><refentrytitle>systemd.exec</refentrytitle><manvolnum>5</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd.resource-control</refentrytitle><manvolnum>5</manvolnum></citerefentry></para></listitem></varlistentry>
 
-<varlistentry><term><filename>/etc/</filename></term><listitem><para><citerefentry><refentrytitle>binfmt.d</refentrytitle><manvolnum>5</manvolnum></citerefentry>, <citerefentry><refentrytitle>modules-load.d</refentrytitle><manvolnum>5</manvolnum></citerefentry>, <citerefentry><refentrytitle>nss-myhostname</refentrytitle><manvolnum>8</manvolnum></citerefentry>, <citerefentry><refentrytitle>sysctl.d</refentrytitle><manvolnum>5</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemctl</refentrytitle><manvolnum>1</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd-delta</refentrytitle><manvolnum>1</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd.exec</refentrytitle><manvolnum>5</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd.link</refentrytitle><manvolnum>5</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd.mount</refentrytitle><manvolnum>5</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd.netdev</refentrytitle><manvolnum>5</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd.network</refentrytitle><manvolnum>5</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd.preset</refentrytitle><manvolnum>5</manvolnum></citerefentry>, <citerefentry><refentrytitle>udev</refentrytitle><manvolnum>7</manvolnum></citerefentry></para></listitem></varlistentry>
+<varlistentry><term><filename>/etc</filename></term><listitem><para><citerefentry><refentrytitle>binfmt.d</refentrytitle><manvolnum>5</manvolnum></citerefentry>, <citerefentry><refentrytitle>file-hierarchy</refentrytitle><manvolnum>7</manvolnum></citerefentry>, <citerefentry><refentrytitle>modules-load.d</refentrytitle><manvolnum>5</manvolnum></citerefentry>, <citerefentry><refentrytitle>nss-myhostname</refentrytitle><manvolnum>8</manvolnum></citerefentry>, <citerefentry><refentrytitle>os-release</refentrytitle><manvolnum>5</manvolnum></citerefentry>, <citerefentry><refentrytitle>sysctl.d</refentrytitle><manvolnum>5</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemctl</refentrytitle><manvolnum>1</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd-delta</refentrytitle><manvolnum>1</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd-update-done.service</refentrytitle><manvolnum>8</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd.exec</refentrytitle><manvolnum>5</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd.link</refentrytitle><manvolnum>5</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd.mount</refentrytitle><manvolnum>5</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd.netdev</refentrytitle><manvolnum>5</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd.network</refentrytitle><manvolnum>5</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd.preset</refentrytitle><manvolnum>5</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd.unit</refentrytitle><manvolnum>5</manvolnum></citerefentry>, <citerefentry><refentrytitle>udev</refentrytitle><manvolnum>7</manvolnum></citerefentry></para></listitem></varlistentry>
+
+<varlistentry><term><filename>/etc/.updated</filename></term><listitem><para><citerefentry><refentrytitle>systemd-update-done.service</refentrytitle><manvolnum>8</manvolnum></citerefentry></para></listitem></varlistentry>
 
 <varlistentry><term><filename>/etc/adjtime</filename></term><listitem><para><citerefentry><refentrytitle>timedatectl</refentrytitle><manvolnum>1</manvolnum></citerefentry></para></listitem></varlistentry>
 
 
 <varlistentry><term><filename>/etc/fstab</filename></term><listitem><para><citerefentry><refentrytitle>kernel-command-line</refentrytitle><manvolnum>7</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd-cryptsetup-generator</refentrytitle><manvolnum>8</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd-fsck@.service</refentrytitle><manvolnum>8</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd-fstab-generator</refentrytitle><manvolnum>8</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd-gpt-auto-generator</refentrytitle><manvolnum>8</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd-remount-fs.service</refentrytitle><manvolnum>8</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd.automount</refentrytitle><manvolnum>5</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd.mount</refentrytitle><manvolnum>5</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd.special</refentrytitle><manvolnum>7</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd.swap</refentrytitle><manvolnum>5</manvolnum></citerefentry></para></listitem></varlistentry>
 
+<varlistentry><term><filename>/etc/group</filename></term><listitem><para><citerefentry><refentrytitle>sysusers.d</refentrytitle><manvolnum>5</manvolnum></citerefentry></para></listitem></varlistentry>
+
 <varlistentry><term><filename>/etc/hostname</filename></term><listitem><para><citerefentry><refentrytitle>hostname</refentrytitle><manvolnum>5</manvolnum></citerefentry>, <citerefentry><refentrytitle>hostnamectl</refentrytitle><manvolnum>1</manvolnum></citerefentry>, <citerefentry><refentrytitle>machine-info</refentrytitle><manvolnum>5</manvolnum></citerefentry></para></listitem></varlistentry>
 
 <varlistentry><term><filename>/etc/hosts</filename></term><listitem><para><citerefentry><refentrytitle>nss-myhostname</refentrytitle><manvolnum>8</manvolnum></citerefentry></para></listitem></varlistentry>
 
 <varlistentry><term><filename>/etc/modules-load.d/*.conf</filename></term><listitem><para><citerefentry><refentrytitle>modules-load.d</refentrytitle><manvolnum>5</manvolnum></citerefentry></para></listitem></varlistentry>
 
+<varlistentry><term><filename>/etc/modules-load.d/bridge.conf</filename></term><listitem><para><citerefentry><refentrytitle>sysctl.d</refentrytitle><manvolnum>5</manvolnum></citerefentry></para></listitem></varlistentry>
+
 <varlistentry><term><filename>/etc/nsswitch.conf</filename></term><listitem><para><citerefentry><refentrytitle>nss-myhostname</refentrytitle><manvolnum>8</manvolnum></citerefentry></para></listitem></varlistentry>
 
 <varlistentry><term><filename>/etc/os-release</filename></term><listitem><para><citerefentry><refentrytitle>kernel-install</refentrytitle><manvolnum>8</manvolnum></citerefentry>, <citerefentry><refentrytitle>os-release</refentrytitle><manvolnum>5</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd-nspawn</refentrytitle><manvolnum>1</manvolnum></citerefentry></para></listitem></varlistentry>
 
+<varlistentry><term><filename>/etc/passwd</filename></term><listitem><para><citerefentry><refentrytitle>sysusers.d</refentrytitle><manvolnum>5</manvolnum></citerefentry></para></listitem></varlistentry>
+
 <varlistentry><term><filename>/etc/resolv.conf</filename></term><listitem><para><citerefentry><refentrytitle>systemd-resolved.service</refentrytitle><manvolnum>8</manvolnum></citerefentry></para></listitem></varlistentry>
 
 <varlistentry><term><filename>/etc/sysctl.d/</filename></term><listitem><para><citerefentry><refentrytitle>sysctl.d</refentrytitle><manvolnum>5</manvolnum></citerefentry></para></listitem></varlistentry>
 
 <varlistentry><term><filename>/etc/sysctl.d/*.conf</filename></term><listitem><para><citerefentry><refentrytitle>sysctl.d</refentrytitle><manvolnum>5</manvolnum></citerefentry></para></listitem></varlistentry>
 
+<varlistentry><term><filename>/etc/sysctl.d/bridge.conf</filename></term><listitem><para><citerefentry><refentrytitle>sysctl.d</refentrytitle><manvolnum>5</manvolnum></citerefentry></para></listitem></varlistentry>
+
+<varlistentry><term><filename>/etc/sysctl.d/domain-name.conf</filename></term><listitem><para><citerefentry><refentrytitle>sysctl.d</refentrytitle><manvolnum>5</manvolnum></citerefentry></para></listitem></varlistentry>
+
 <varlistentry><term><filename>/etc/systemd/bootchart.conf</filename></term><listitem><para><citerefentry><refentrytitle>bootchart.conf</refentrytitle><manvolnum>5</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd-bootchart</refentrytitle><manvolnum>1</manvolnum></citerefentry></para></listitem></varlistentry>
 
+<varlistentry><term><filename>/etc/systemd/coredump.conf</filename></term><listitem><para><citerefentry><refentrytitle>coredump.conf</refentrytitle><manvolnum>5</manvolnum></citerefentry></para></listitem></varlistentry>
+
 <varlistentry><term><filename>/etc/systemd/journald.conf</filename></term><listitem><para><citerefentry><refentrytitle>journald.conf</refentrytitle><manvolnum>5</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd-journald.service</refentrytitle><manvolnum>8</manvolnum></citerefentry></para></listitem></varlistentry>
 
 <varlistentry><term><filename>/etc/systemd/logind.conf</filename></term><listitem><para><citerefentry><refentrytitle>logind.conf</refentrytitle><manvolnum>5</manvolnum></citerefentry></para></listitem></varlistentry>
 
 <varlistentry><term><filename>/etc/udev/rules.d</filename></term><listitem><para><citerefentry><refentrytitle>udev</refentrytitle><manvolnum>7</manvolnum></citerefentry></para></listitem></varlistentry>
 
+<varlistentry><term><filename>/etc/udev/rules.d/99-bridge.conf</filename></term><listitem><para><citerefentry><refentrytitle>sysctl.d</refentrytitle><manvolnum>5</manvolnum></citerefentry></para></listitem></varlistentry>
+
 <varlistentry><term><filename>/etc/udev/udev.conf</filename></term><listitem><para><citerefentry><refentrytitle>systemd-udevd.service</refentrytitle><manvolnum>8</manvolnum></citerefentry></para></listitem></varlistentry>
 
 <varlistentry><term><filename>/etc/vconsole.conf</filename></term><listitem><para><citerefentry><refentrytitle>vconsole.conf</refentrytitle><manvolnum>5</manvolnum></citerefentry></para></listitem></varlistentry>
 
-<varlistentry><term><filename>/home</filename></term><listitem><para><citerefentry><refentrytitle>systemd-gpt-auto-generator</refentrytitle><manvolnum>8</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd.exec</refentrytitle><manvolnum>5</manvolnum></citerefentry></para></listitem></varlistentry>
+<varlistentry><term><filename>/home</filename></term><listitem><para><citerefentry><refentrytitle>file-hierarchy</refentrytitle><manvolnum>7</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd-gpt-auto-generator</refentrytitle><manvolnum>8</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd.exec</refentrytitle><manvolnum>5</manvolnum></citerefentry></para></listitem></varlistentry>
 
 <varlistentry><term><filename>/home/lennart</filename></term><listitem><para><citerefentry><refentrytitle>systemd.automount</refentrytitle><manvolnum>5</manvolnum></citerefentry></para></listitem></varlistentry>
 
-<varlistentry><term><filename>/lib</filename></term><listitem><para><citerefentry><refentrytitle>systemd-delta</refentrytitle><manvolnum>1</manvolnum></citerefentry></para></listitem></varlistentry>
+<varlistentry><term><filename>/lib</filename></term><listitem><para><citerefentry><refentrytitle>file-hierarchy</refentrytitle><manvolnum>7</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd-delta</refentrytitle><manvolnum>1</manvolnum></citerefentry></para></listitem></varlistentry>
+
+<varlistentry><term><filename>/lib64</filename></term><listitem><para><citerefentry><refentrytitle>file-hierarchy</refentrytitle><manvolnum>7</manvolnum></citerefentry></para></listitem></varlistentry>
 
-<varlistentry><term><filename>/proc</filename></term><listitem><para><citerefentry><refentrytitle>sd-login</refentrytitle><manvolnum>3</manvolnum></citerefentry>, <citerefentry><refentrytitle>sd_bus_creds_get_pid</refentrytitle><manvolnum>3</manvolnum></citerefentry>, <citerefentry><refentrytitle>sd_bus_creds_new_from_pid</refentrytitle><manvolnum>3</manvolnum></citerefentry>, <citerefentry><refentrytitle>sd_is_fifo</refentrytitle><manvolnum>3</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd-remount-fs.service</refentrytitle><manvolnum>8</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd.socket</refentrytitle><manvolnum>5</manvolnum></citerefentry>, <citerefentry><refentrytitle>tmpfiles.d</refentrytitle><manvolnum>5</manvolnum></citerefentry></para></listitem></varlistentry>
+<varlistentry><term><filename>/proc</filename></term><listitem><para><citerefentry><refentrytitle>file-hierarchy</refentrytitle><manvolnum>7</manvolnum></citerefentry>, <citerefentry><refentrytitle>sd-login</refentrytitle><manvolnum>3</manvolnum></citerefentry>, <citerefentry><refentrytitle>sd_bus_creds_get_pid</refentrytitle><manvolnum>3</manvolnum></citerefentry>, <citerefentry><refentrytitle>sd_bus_creds_new_from_pid</refentrytitle><manvolnum>3</manvolnum></citerefentry>, <citerefentry><refentrytitle>sd_is_fifo</refentrytitle><manvolnum>3</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd-remount-fs.service</refentrytitle><manvolnum>8</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd.socket</refentrytitle><manvolnum>5</manvolnum></citerefentry>, <citerefentry><refentrytitle>tmpfiles.d</refentrytitle><manvolnum>5</manvolnum></citerefentry></para></listitem></varlistentry>
 
 <varlistentry><term><filename>/proc/cmdline</filename></term><listitem><para><citerefentry><refentrytitle>kernel-command-line</refentrytitle><manvolnum>7</manvolnum></citerefentry>, <citerefentry><refentrytitle>kernel-install</refentrytitle><manvolnum>8</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry></para></listitem></varlistentry>
 
 
 <varlistentry><term><filename>/proc/self/sessionid</filename></term><listitem><para><citerefentry><refentrytitle>pam_systemd</refentrytitle><manvolnum>8</manvolnum></citerefentry></para></listitem></varlistentry>
 
-<varlistentry><term><filename>/proc/sys</filename></term><listitem><para><citerefentry><refentrytitle>systemd-nspawn</refentrytitle><manvolnum>1</manvolnum></citerefentry></para></listitem></varlistentry>
+<varlistentry><term><filename>/proc/sys</filename></term><listitem><para><citerefentry><refentrytitle>file-hierarchy</refentrytitle><manvolnum>7</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd-nspawn</refentrytitle><manvolnum>1</manvolnum></citerefentry></para></listitem></varlistentry>
 
 <varlistentry><term><filename>/proc/sys/kernel/domainname</filename></term><listitem><para><citerefentry><refentrytitle>sysctl.d</refentrytitle><manvolnum>5</manvolnum></citerefentry></para></listitem></varlistentry>
 
 
 <varlistentry><term><filename>/proc/sys/net/ipv6/bindv6only</filename></term><listitem><para><citerefentry><refentrytitle>systemd.socket</refentrytitle><manvolnum>5</manvolnum></citerefentry></para></listitem></varlistentry>
 
-<varlistentry><term><filename>/run/</filename></term><listitem><para><citerefentry><refentrytitle>binfmt.d</refentrytitle><manvolnum>5</manvolnum></citerefentry>, <citerefentry><refentrytitle>modules-load.d</refentrytitle><manvolnum>5</manvolnum></citerefentry>, <citerefentry><refentrytitle>sd-login</refentrytitle><manvolnum>3</manvolnum></citerefentry>, <citerefentry><refentrytitle>sysctl.d</refentrytitle><manvolnum>5</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemctl</refentrytitle><manvolnum>1</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd-delta</refentrytitle><manvolnum>1</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd-journald.service</refentrytitle><manvolnum>8</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd-nspawn</refentrytitle><manvolnum>1</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd.exec</refentrytitle><manvolnum>5</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd.link</refentrytitle><manvolnum>5</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd.netdev</refentrytitle><manvolnum>5</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd.network</refentrytitle><manvolnum>5</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd.preset</refentrytitle><manvolnum>5</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd.unit</refentrytitle><manvolnum>5</manvolnum></citerefentry>, <citerefentry><refentrytitle>tmpfiles.d</refentrytitle><manvolnum>5</manvolnum></citerefentry>, <citerefentry><refentrytitle>udev</refentrytitle><manvolnum>7</manvolnum></citerefentry></para></listitem></varlistentry>
+<varlistentry><term><filename>/root</filename></term><listitem><para><citerefentry><refentrytitle>file-hierarchy</refentrytitle><manvolnum>7</manvolnum></citerefentry></para></listitem></varlistentry>
+
+<varlistentry><term><filename>/run</filename></term><listitem><para><citerefentry><refentrytitle>binfmt.d</refentrytitle><manvolnum>5</manvolnum></citerefentry>, <citerefentry><refentrytitle>file-hierarchy</refentrytitle><manvolnum>7</manvolnum></citerefentry>, <citerefentry><refentrytitle>modules-load.d</refentrytitle><manvolnum>5</manvolnum></citerefentry>, <citerefentry><refentrytitle>sd-login</refentrytitle><manvolnum>3</manvolnum></citerefentry>, <citerefentry><refentrytitle>sysctl.d</refentrytitle><manvolnum>5</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemctl</refentrytitle><manvolnum>1</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd-delta</refentrytitle><manvolnum>1</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd-journald.service</refentrytitle><manvolnum>8</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd-nspawn</refentrytitle><manvolnum>1</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd.exec</refentrytitle><manvolnum>5</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd.link</refentrytitle><manvolnum>5</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd.netdev</refentrytitle><manvolnum>5</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd.network</refentrytitle><manvolnum>5</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd.preset</refentrytitle><manvolnum>5</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd.unit</refentrytitle><manvolnum>5</manvolnum></citerefentry>, <citerefentry><refentrytitle>tmpfiles.d</refentrytitle><manvolnum>5</manvolnum></citerefentry>, <citerefentry><refentrytitle>udev</refentrytitle><manvolnum>7</manvolnum></citerefentry></para></listitem></varlistentry>
 
 <varlistentry><term><filename>/run/binfmt.d/*.conf</filename></term><listitem><para><citerefentry><refentrytitle>binfmt.d</refentrytitle><manvolnum>5</manvolnum></citerefentry></para></listitem></varlistentry>
 
 <varlistentry><term><filename>/run/foobar.pid</filename></term><listitem><para><citerefentry><refentrytitle>daemon</refentrytitle><manvolnum>7</manvolnum></citerefentry></para></listitem></varlistentry>
 
-<varlistentry><term><filename>/run/log</filename></term><listitem><para><citerefentry><refentrytitle>bootchart.conf</refentrytitle><manvolnum>5</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd-bootchart</refentrytitle><manvolnum>1</manvolnum></citerefentry></para></listitem></varlistentry>
+<varlistentry><term><filename>/run/log</filename></term><listitem><para><citerefentry><refentrytitle>bootchart.conf</refentrytitle><manvolnum>5</manvolnum></citerefentry>, <citerefentry><refentrytitle>file-hierarchy</refentrytitle><manvolnum>7</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd-bootchart</refentrytitle><manvolnum>1</manvolnum></citerefentry></para></listitem></varlistentry>
 
 <varlistentry><term><filename>/run/log/journal</filename></term><listitem><para><citerefentry><refentrytitle>journald.conf</refentrytitle><manvolnum>5</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd-journald.service</refentrytitle><manvolnum>8</manvolnum></citerefentry></para></listitem></varlistentry>
 
 
 <varlistentry><term><filename>/run/udev/static_node-tags/<replaceable>tag</replaceable></filename></term><listitem><para><citerefentry><refentrytitle>udev</refentrytitle><manvolnum>7</manvolnum></citerefentry></para></listitem></varlistentry>
 
-<varlistentry><term><filename>/run/user</filename></term><listitem><para><citerefentry><refentrytitle>systemd.exec</refentrytitle><manvolnum>5</manvolnum></citerefentry></para></listitem></varlistentry>
+<varlistentry><term><filename>/run/user</filename></term><listitem><para><citerefentry><refentrytitle>file-hierarchy</refentrytitle><manvolnum>7</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd.exec</refentrytitle><manvolnum>5</manvolnum></citerefentry></para></listitem></varlistentry>
 
 <varlistentry><term><filename>/run/user/$USER</filename></term><listitem><para><citerefentry><refentrytitle>pam_systemd</refentrytitle><manvolnum>8</manvolnum></citerefentry></para></listitem></varlistentry>
 
-<varlistentry><term><filename>/sbin</filename></term><listitem><para><citerefentry><refentrytitle>systemd.exec</refentrytitle><manvolnum>5</manvolnum></citerefentry></para></listitem></varlistentry>
+<varlistentry><term><filename>/sbin</filename></term><listitem><para><citerefentry><refentrytitle>file-hierarchy</refentrytitle><manvolnum>7</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd.exec</refentrytitle><manvolnum>5</manvolnum></citerefentry></para></listitem></varlistentry>
+
+<varlistentry><term><filename>/sbin/fsck.</filename></term><listitem><para><citerefentry><refentrytitle>systemd-fsck@.service</refentrytitle><manvolnum>8</manvolnum></citerefentry></para></listitem></varlistentry>
 
 <varlistentry><term><filename>/sbin/init</filename></term><listitem><para><citerefentry><refentrytitle>bootchart.conf</refentrytitle><manvolnum>5</manvolnum></citerefentry></para></listitem></varlistentry>
 
-<varlistentry><term><filename>/srv</filename></term><listitem><para><citerefentry><refentrytitle>systemd-gpt-auto-generator</refentrytitle><manvolnum>8</manvolnum></citerefentry></para></listitem></varlistentry>
+<varlistentry><term><filename>/sbin/login</filename></term><listitem><para><citerefentry><refentrytitle>sysusers.d</refentrytitle><manvolnum>5</manvolnum></citerefentry></para></listitem></varlistentry>
+
+<varlistentry><term><filename>/srv</filename></term><listitem><para><citerefentry><refentrytitle>file-hierarchy</refentrytitle><manvolnum>7</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd-gpt-auto-generator</refentrytitle><manvolnum>8</manvolnum></citerefentry></para></listitem></varlistentry>
 
-<varlistentry><term><filename>/sys</filename></term><listitem><para><citerefentry><refentrytitle>loginctl</refentrytitle><manvolnum>1</manvolnum></citerefentry>, <citerefentry><refentrytitle>sd_is_fifo</refentrytitle><manvolnum>3</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd-nspawn</refentrytitle><manvolnum>1</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd-remount-fs.service</refentrytitle><manvolnum>8</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd.device</refentrytitle><manvolnum>5</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd.journal-fields</refentrytitle><manvolnum>7</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd.socket</refentrytitle><manvolnum>5</manvolnum></citerefentry>, <citerefentry><refentrytitle>tmpfiles.d</refentrytitle><manvolnum>5</manvolnum></citerefentry>, <citerefentry><refentrytitle>udevadm</refentrytitle><manvolnum>8</manvolnum></citerefentry></para></listitem></varlistentry>
+<varlistentry><term><filename>/sys</filename></term><listitem><para><citerefentry><refentrytitle>file-hierarchy</refentrytitle><manvolnum>7</manvolnum></citerefentry>, <citerefentry><refentrytitle>loginctl</refentrytitle><manvolnum>1</manvolnum></citerefentry>, <citerefentry><refentrytitle>sd_is_fifo</refentrytitle><manvolnum>3</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd-nspawn</refentrytitle><manvolnum>1</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd-remount-fs.service</refentrytitle><manvolnum>8</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd.device</refentrytitle><manvolnum>5</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd.journal-fields</refentrytitle><manvolnum>7</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd.socket</refentrytitle><manvolnum>5</manvolnum></citerefentry>, <citerefentry><refentrytitle>tmpfiles.d</refentrytitle><manvolnum>5</manvolnum></citerefentry>, <citerefentry><refentrytitle>udevadm</refentrytitle><manvolnum>8</manvolnum></citerefentry></para></listitem></varlistentry>
 
 <varlistentry><term><filename>/sys/fs/cgroup</filename></term><listitem><para><citerefentry><refentrytitle>sd-login</refentrytitle><manvolnum>3</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd-cgls</refentrytitle><manvolnum>1</manvolnum></citerefentry></para></listitem></varlistentry>
 
 
 <varlistentry><term><filename>/system-update</filename></term><listitem><para><citerefentry><refentrytitle>systemd-system-update-generator</refentrytitle><manvolnum>8</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd.special</refentrytitle><manvolnum>7</manvolnum></citerefentry></para></listitem></varlistentry>
 
-<varlistentry><term><filename>/tmp</filename></term><listitem><para><citerefentry><refentrytitle>crypttab</refentrytitle><manvolnum>5</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd.exec</refentrytitle><manvolnum>5</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd.unit</refentrytitle><manvolnum>5</manvolnum></citerefentry>, <citerefentry><refentrytitle>tmpfiles.d</refentrytitle><manvolnum>5</manvolnum></citerefentry></para></listitem></varlistentry>
+<varlistentry><term><filename>/tmp</filename></term><listitem><para><citerefentry><refentrytitle>crypttab</refentrytitle><manvolnum>5</manvolnum></citerefentry>, <citerefentry><refentrytitle>file-hierarchy</refentrytitle><manvolnum>7</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd.exec</refentrytitle><manvolnum>5</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd.unit</refentrytitle><manvolnum>5</manvolnum></citerefentry>, <citerefentry><refentrytitle>tmpfiles.d</refentrytitle><manvolnum>5</manvolnum></citerefentry></para></listitem></varlistentry>
 
 <varlistentry><term><filename>/tmp/var</filename></term><listitem><para><citerefentry><refentrytitle>systemd.unit</refentrytitle><manvolnum>5</manvolnum></citerefentry></para></listitem></varlistentry>
 
 <varlistentry><term><filename>/upload</filename></term><listitem><para><citerefentry><refentrytitle>systemd-journal-remote</refentrytitle><manvolnum>8</manvolnum></citerefentry></para></listitem></varlistentry>
 
-<varlistentry><term><filename>/usr</filename></term><listitem><para><citerefentry><refentrytitle>bootup</refentrytitle><manvolnum>7</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd-remount-fs.service</refentrytitle><manvolnum>8</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd.exec</refentrytitle><manvolnum>5</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd.mount</refentrytitle><manvolnum>5</manvolnum></citerefentry></para></listitem></varlistentry>
+<varlistentry><term><filename>/usr</filename></term><listitem><para><citerefentry><refentrytitle>bootup</refentrytitle><manvolnum>7</manvolnum></citerefentry>, <citerefentry><refentrytitle>file-hierarchy</refentrytitle><manvolnum>7</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd-remount-fs.service</refentrytitle><manvolnum>8</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd-update-done.service</refentrytitle><manvolnum>8</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd.exec</refentrytitle><manvolnum>5</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd.mount</refentrytitle><manvolnum>5</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd.unit</refentrytitle><manvolnum>5</manvolnum></citerefentry></para></listitem></varlistentry>
 
-<varlistentry><term><filename>/usr/bin</filename></term><listitem><para><citerefentry><refentrytitle>systemd.exec</refentrytitle><manvolnum>5</manvolnum></citerefentry></para></listitem></varlistentry>
+<varlistentry><term><filename>/usr/bin</filename></term><listitem><para><citerefentry><refentrytitle>file-hierarchy</refentrytitle><manvolnum>7</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd.exec</refentrytitle><manvolnum>5</manvolnum></citerefentry></para></listitem></varlistentry>
 
 <varlistentry><term><filename>/usr/bin/mount</filename></term><listitem><para><citerefentry><refentrytitle>systemctl</refentrytitle><manvolnum>1</manvolnum></citerefentry></para></listitem></varlistentry>
 
 <varlistentry><term><filename>/usr/bin/umount</filename></term><listitem><para><citerefentry><refentrytitle>systemctl</refentrytitle><manvolnum>1</manvolnum></citerefentry></para></listitem></varlistentry>
 
-<varlistentry><term><filename>/usr/lib/</filename></term><listitem><para><citerefentry><refentrytitle>binfmt.d</refentrytitle><manvolnum>5</manvolnum></citerefentry>, <citerefentry><refentrytitle>modules-load.d</refentrytitle><manvolnum>5</manvolnum></citerefentry>, <citerefentry><refentrytitle>sysctl.d</refentrytitle><manvolnum>5</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd-delta</refentrytitle><manvolnum>1</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd.link</refentrytitle><manvolnum>5</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd.netdev</refentrytitle><manvolnum>5</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd.network</refentrytitle><manvolnum>5</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd.preset</refentrytitle><manvolnum>5</manvolnum></citerefentry>, <citerefentry><refentrytitle>udev</refentrytitle><manvolnum>7</manvolnum></citerefentry></para></listitem></varlistentry>
+<varlistentry><term><filename>/usr/include</filename></term><listitem><para><citerefentry><refentrytitle>file-hierarchy</refentrytitle><manvolnum>7</manvolnum></citerefentry></para></listitem></varlistentry>
+
+<varlistentry><term><filename>/usr/lib</filename></term><listitem><para><citerefentry><refentrytitle>binfmt.d</refentrytitle><manvolnum>5</manvolnum></citerefentry>, <citerefentry><refentrytitle>file-hierarchy</refentrytitle><manvolnum>7</manvolnum></citerefentry>, <citerefentry><refentrytitle>modules-load.d</refentrytitle><manvolnum>5</manvolnum></citerefentry>, <citerefentry><refentrytitle>sysctl.d</refentrytitle><manvolnum>5</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd-delta</refentrytitle><manvolnum>1</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd.link</refentrytitle><manvolnum>5</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd.netdev</refentrytitle><manvolnum>5</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd.network</refentrytitle><manvolnum>5</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd.preset</refentrytitle><manvolnum>5</manvolnum></citerefentry>, <citerefentry><refentrytitle>udev</refentrytitle><manvolnum>7</manvolnum></citerefentry></para></listitem></varlistentry>
 
 <varlistentry><term><filename>/usr/lib/binfmt.d/*.conf</filename></term><listitem><para><citerefentry><refentrytitle>binfmt.d</refentrytitle><manvolnum>5</manvolnum></citerefentry></para></listitem></varlistentry>
 
 
 <varlistentry><term><filename>/usr/lib/modules-load.d/*.conf</filename></term><listitem><para><citerefentry><refentrytitle>modules-load.d</refentrytitle><manvolnum>5</manvolnum></citerefentry></para></listitem></varlistentry>
 
+<varlistentry><term><filename>/usr/lib/os-release</filename></term><listitem><para><citerefentry><refentrytitle>kernel-install</refentrytitle><manvolnum>8</manvolnum></citerefentry>, <citerefentry><refentrytitle>os-release</refentrytitle><manvolnum>5</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd-nspawn</refentrytitle><manvolnum>1</manvolnum></citerefentry></para></listitem></varlistentry>
+
 <varlistentry><term><filename>/usr/lib/sysctl.d/*.conf</filename></term><listitem><para><citerefentry><refentrytitle>sysctl.d</refentrytitle><manvolnum>5</manvolnum></citerefentry></para></listitem></varlistentry>
 
 <varlistentry><term><filename>/usr/lib/systemd/network</filename></term><listitem><para><citerefentry><refentrytitle>systemd-networkd.service</refentrytitle><manvolnum>8</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd.link</refentrytitle><manvolnum>5</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd.netdev</refentrytitle><manvolnum>5</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd.network</refentrytitle><manvolnum>5</manvolnum></citerefentry></para></listitem></varlistentry>
 
 <varlistentry><term><filename>/usr/lib/systemd/system-generators/systemd-cryptsetup-generator</filename></term><listitem><para><citerefentry><refentrytitle>systemd-cryptsetup-generator</refentrytitle><manvolnum>8</manvolnum></citerefentry></para></listitem></varlistentry>
 
+<varlistentry><term><filename>/usr/lib/systemd/system-generators/systemd-debug-generator</filename></term><listitem><para><citerefentry><refentrytitle>systemd-debug-generator</refentrytitle><manvolnum>8</manvolnum></citerefentry></para></listitem></varlistentry>
+
 <varlistentry><term><filename>/usr/lib/systemd/system-generators/systemd-efi-boot-generator</filename></term><listitem><para><citerefentry><refentrytitle>systemd-efi-boot-generator</refentrytitle><manvolnum>8</manvolnum></citerefentry></para></listitem></varlistentry>
 
 <varlistentry><term><filename>/usr/lib/systemd/system-generators/systemd-fstab-generator</filename></term><listitem><para><citerefentry><refentrytitle>systemd-fstab-generator</refentrytitle><manvolnum>8</manvolnum></citerefentry></para></listitem></varlistentry>
 
 <varlistentry><term><command>/usr/lib/systemd/systemd-udevd</command></term><listitem><para><citerefentry><refentrytitle>systemd-udevd.service</refentrytitle><manvolnum>8</manvolnum></citerefentry></para></listitem></varlistentry>
 
+<varlistentry><term><filename>/usr/lib/systemd/systemd-update-done</filename></term><listitem><para><citerefentry><refentrytitle>systemd-update-done.service</refentrytitle><manvolnum>8</manvolnum></citerefentry></para></listitem></varlistentry>
+
 <varlistentry><term><filename>/usr/lib/systemd/systemd-update-utmp</filename></term><listitem><para><citerefentry><refentrytitle>systemd-update-utmp.service</refentrytitle><manvolnum>8</manvolnum></citerefentry></para></listitem></varlistentry>
 
 <varlistentry><term><filename>/usr/lib/systemd/systemd-user-sessions</filename></term><listitem><para><citerefentry><refentrytitle>systemd-user-sessions.service</refentrytitle><manvolnum>8</manvolnum></citerefentry></para></listitem></varlistentry>
 
 <varlistentry><term><filename>/usr/lib/systemd/user-preset/*.preset</filename></term><listitem><para><citerefentry><refentrytitle>systemd.preset</refentrytitle><manvolnum>5</manvolnum></citerefentry></para></listitem></varlistentry>
 
+<varlistentry><term><filename>/usr/lib/sysusers.d/</filename></term><listitem><para><citerefentry><refentrytitle>sysusers.d</refentrytitle><manvolnum>5</manvolnum></citerefentry></para></listitem></varlistentry>
+
+<varlistentry><term><filename>/usr/lib/sysusers.d/*.conf</filename></term><listitem><para><citerefentry><refentrytitle>sysusers.d</refentrytitle><manvolnum>5</manvolnum></citerefentry></para></listitem></varlistentry>
+
 <varlistentry><term><filename>/usr/lib/tmpfiles.d</filename></term><listitem><para><citerefentry><refentrytitle>tmpfiles.d</refentrytitle><manvolnum>5</manvolnum></citerefentry></para></listitem></varlistentry>
 
 <varlistentry><term><filename>/usr/lib/tmpfiles.d/*.conf</filename></term><listitem><para><citerefentry><refentrytitle>tmpfiles.d</refentrytitle><manvolnum>5</manvolnum></citerefentry></para></listitem></varlistentry>
 
 <varlistentry><term><filename>/usr/lib/udev/rules.d</filename></term><listitem><para><citerefentry><refentrytitle>udev</refentrytitle><manvolnum>7</manvolnum></citerefentry></para></listitem></varlistentry>
 
+<varlistentry><term><filename>/usr/lib64</filename></term><listitem><para><citerefentry><refentrytitle>file-hierarchy</refentrytitle><manvolnum>7</manvolnum></citerefentry></para></listitem></varlistentry>
+
 <varlistentry><term><filename>/usr/local/bin</filename></term><listitem><para><citerefentry><refentrytitle>systemd.exec</refentrytitle><manvolnum>5</manvolnum></citerefentry></para></listitem></varlistentry>
 
 <varlistentry><term><filename>/usr/local/lib/systemd/system</filename></term><listitem><para><citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry></para></listitem></varlistentry>
 
 <varlistentry><term><filename>/usr/local/sbin</filename></term><listitem><para><citerefentry><refentrytitle>systemd.exec</refentrytitle><manvolnum>5</manvolnum></citerefentry></para></listitem></varlistentry>
 
-<varlistentry><term><filename>/usr/sbin</filename></term><listitem><para><citerefentry><refentrytitle>systemd.exec</refentrytitle><manvolnum>5</manvolnum></citerefentry></para></listitem></varlistentry>
+<varlistentry><term><filename>/usr/sbin</filename></term><listitem><para><citerefentry><refentrytitle>file-hierarchy</refentrytitle><manvolnum>7</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd.exec</refentrytitle><manvolnum>5</manvolnum></citerefentry></para></listitem></varlistentry>
+
+<varlistentry><term><filename>/usr/share</filename></term><listitem><para><citerefentry><refentrytitle>file-hierarchy</refentrytitle><manvolnum>7</manvolnum></citerefentry></para></listitem></varlistentry>
+
+<varlistentry><term><filename>/usr/share/doc</filename></term><listitem><para><citerefentry><refentrytitle>file-hierarchy</refentrytitle><manvolnum>7</manvolnum></citerefentry></para></listitem></varlistentry>
+
+<varlistentry><term><filename>/usr/share/factory</filename></term><listitem><para><citerefentry><refentrytitle>file-hierarchy</refentrytitle><manvolnum>7</manvolnum></citerefentry>, <citerefentry><refentrytitle>tmpfiles.d</refentrytitle><manvolnum>5</manvolnum></citerefentry></para></listitem></varlistentry>
+
+<varlistentry><term><filename>/usr/share/factory/etc</filename></term><listitem><para><citerefentry><refentrytitle>file-hierarchy</refentrytitle><manvolnum>7</manvolnum></citerefentry></para></listitem></varlistentry>
+
+<varlistentry><term><filename>/usr/share/factory/var</filename></term><listitem><para><citerefentry><refentrytitle>file-hierarchy</refentrytitle><manvolnum>7</manvolnum></citerefentry></para></listitem></varlistentry>
 
 <varlistentry><term><filename>/usr/share/zoneinfo/</filename></term><listitem><para><citerefentry><refentrytitle>localtime</refentrytitle><manvolnum>5</manvolnum></citerefentry></para></listitem></varlistentry>
 
-<varlistentry><term><filename>/var</filename></term><listitem><para><citerefentry><refentrytitle>journald.conf</refentrytitle><manvolnum>5</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd-journald.service</refentrytitle><manvolnum>8</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd-nspawn</refentrytitle><manvolnum>1</manvolnum></citerefentry>, <citerefentry><refentrytitle>tmpfiles.d</refentrytitle><manvolnum>5</manvolnum></citerefentry></para></listitem></varlistentry>
+<varlistentry><term><filename>/var</filename></term><listitem><para><citerefentry><refentrytitle>file-hierarchy</refentrytitle><manvolnum>7</manvolnum></citerefentry>, <citerefentry><refentrytitle>journald.conf</refentrytitle><manvolnum>5</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd-journald.service</refentrytitle><manvolnum>8</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd-nspawn</refentrytitle><manvolnum>1</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd-update-done.service</refentrytitle><manvolnum>8</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd.unit</refentrytitle><manvolnum>5</manvolnum></citerefentry>, <citerefentry><refentrytitle>tmpfiles.d</refentrytitle><manvolnum>5</manvolnum></citerefentry></para></listitem></varlistentry>
+
+<varlistentry><term><filename>/var/.updated</filename></term><listitem><para><citerefentry><refentrytitle>systemd-update-done.service</refentrytitle><manvolnum>8</manvolnum></citerefentry></para></listitem></varlistentry>
+
+<varlistentry><term><filename>/var/cache</filename></term><listitem><para><citerefentry><refentrytitle>file-hierarchy</refentrytitle><manvolnum>7</manvolnum></citerefentry></para></listitem></varlistentry>
+
+<varlistentry><term><filename>/var/lib</filename></term><listitem><para><citerefentry><refentrytitle>file-hierarchy</refentrytitle><manvolnum>7</manvolnum></citerefentry></para></listitem></varlistentry>
 
 <varlistentry><term><filename>/var/lib/dbus/machine-id</filename></term><listitem><para><citerefentry><refentrytitle>machine-id</refentrytitle><manvolnum>5</manvolnum></citerefentry></para></listitem></varlistentry>
 
 <varlistentry><term><filename>/var/lib/systemd/backlight/</filename></term><listitem><para><citerefentry><refentrytitle>systemd-backlight@.service</refentrytitle><manvolnum>8</manvolnum></citerefentry></para></listitem></varlistentry>
 
+<varlistentry><term><filename>/var/lib/systemd/coredump</filename></term><listitem><para><citerefentry><refentrytitle>coredump.conf</refentrytitle><manvolnum>5</manvolnum></citerefentry></para></listitem></varlistentry>
+
 <varlistentry><term><filename>/var/lib/systemd/random-seed</filename></term><listitem><para><citerefentry><refentrytitle>systemd-random-seed.service</refentrytitle><manvolnum>8</manvolnum></citerefentry></para></listitem></varlistentry>
 
 <varlistentry><term><filename>/var/lib/systemd/rfkill/</filename></term><listitem><para><citerefentry><refentrytitle>systemd-rfkill@.service</refentrytitle><manvolnum>8</manvolnum></citerefentry></para></listitem></varlistentry>
 
+<varlistentry><term><filename>/var/log</filename></term><listitem><para><citerefentry><refentrytitle>file-hierarchy</refentrytitle><manvolnum>7</manvolnum></citerefentry></para></listitem></varlistentry>
+
 <varlistentry><term><filename>/var/log/journal</filename></term><listitem><para><citerefentry><refentrytitle>journald.conf</refentrytitle><manvolnum>5</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd-journal-remote</refentrytitle><manvolnum>8</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd-journald.service</refentrytitle><manvolnum>8</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd-nspawn</refentrytitle><manvolnum>1</manvolnum></citerefentry></para></listitem></varlistentry>
 
 <varlistentry><term><filename>/var/log/journal/some.host/remote-some~host.journal</filename></term><listitem><para><citerefentry><refentrytitle>systemd-journal-remote</refentrytitle><manvolnum>8</manvolnum></citerefentry></para></listitem></varlistentry>
 
-<varlistentry><term><filename>/var/run</filename></term><listitem><para><citerefentry><refentrytitle>tmpfiles.d</refentrytitle><manvolnum>5</manvolnum></citerefentry></para></listitem></varlistentry>
+<varlistentry><term><filename>/var/run</filename></term><listitem><para><citerefentry><refentrytitle>file-hierarchy</refentrytitle><manvolnum>7</manvolnum></citerefentry>, <citerefentry><refentrytitle>tmpfiles.d</refentrytitle><manvolnum>5</manvolnum></citerefentry></para></listitem></varlistentry>
 
 <varlistentry><term><filename>/var/run/dbus/system_bus_socket</filename></term><listitem><para><citerefentry><refentrytitle>systemd-bus-proxyd@.service</refentrytitle><manvolnum>8</manvolnum></citerefentry></para></listitem></varlistentry>
 
 <varlistentry><term><filename>/var/run/utmp</filename></term><listitem><para><citerefentry><refentrytitle>runlevel</refentrytitle><manvolnum>8</manvolnum></citerefentry></para></listitem></varlistentry>
 
-<varlistentry><term><filename>/var/tmp</filename></term><listitem><para><citerefentry><refentrytitle>systemd.exec</refentrytitle><manvolnum>5</manvolnum></citerefentry>, <citerefentry><refentrytitle>tmpfiles.d</refentrytitle><manvolnum>5</manvolnum></citerefentry></para></listitem></varlistentry>
+<varlistentry><term><filename>/var/spool</filename></term><listitem><para><citerefentry><refentrytitle>file-hierarchy</refentrytitle><manvolnum>7</manvolnum></citerefentry></para></listitem></varlistentry>
+
+<varlistentry><term><filename>/var/tmp</filename></term><listitem><para><citerefentry><refentrytitle>file-hierarchy</refentrytitle><manvolnum>7</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd.exec</refentrytitle><manvolnum>5</manvolnum></citerefentry>, <citerefentry><refentrytitle>tmpfiles.d</refentrytitle><manvolnum>5</manvolnum></citerefentry></para></listitem></varlistentry>
 
 <varlistentry><term><filename><replaceable>automount</replaceable>.automount</filename></term><listitem><para><citerefentry><refentrytitle>systemd.automount</refentrytitle><manvolnum>5</manvolnum></citerefentry>, <citerefentry><refentrytitle>systemd.unit</refentrytitle><manvolnum>5</manvolnum></citerefentry></para></listitem></varlistentry>
 
 
 <varlistentry><term><command>busctl</command></term><listitem><para><citerefentry><refentrytitle>busctl</refentrytitle><manvolnum>1</manvolnum></citerefentry></para></listitem></varlistentry>
 
+<varlistentry><term><command>coredumpctl</command></term><listitem><para><citerefentry><refentrytitle>coredumpctl</refentrytitle><manvolnum>1</manvolnum></citerefentry></para></listitem></varlistentry>
+
+<varlistentry><term><filename>cryptsetup-pre.target</filename></term><listitem><para><citerefentry><refentrytitle>systemd.special</refentrytitle><manvolnum>7</manvolnum></citerefentry></para></listitem></varlistentry>
+
 <varlistentry><term><filename>cryptsetup.target</filename></term><listitem><para><citerefentry><refentrytitle>systemd.special</refentrytitle><manvolnum>7</manvolnum></citerefentry></para></listitem></varlistentry>
 
 <varlistentry><term><filename>ctrl-alt-del.target</filename></term><listitem><para><citerefentry><refentrytitle>systemd.special</refentrytitle><manvolnum>7</manvolnum></citerefentry></para></listitem></varlistentry>
 
 <varlistentry><term><command>systemd-cgtop</command></term><listitem><para><citerefentry><refentrytitle>systemd-cgtop</refentrytitle><manvolnum>1</manvolnum></citerefentry></para></listitem></varlistentry>
 
-<varlistentry><term><command>systemd-coredumpctl</command></term><listitem><para><citerefentry><refentrytitle>systemd-coredumpctl</refentrytitle><manvolnum>1</manvolnum></citerefentry></para></listitem></varlistentry>
-
 <varlistentry><term><filename>systemd-cryptsetup@.service</filename></term><listitem><para><citerefentry><refentrytitle>systemd-cryptsetup@.service</refentrytitle><manvolnum>8</manvolnum></citerefentry></para></listitem></varlistentry>
 
 <varlistentry><term><command>systemd-delta</command></term><listitem><para><citerefentry><refentrytitle>systemd-delta</refentrytitle><manvolnum>1</manvolnum></citerefentry></para></listitem></varlistentry>
 
 <varlistentry><term><command>systemd-nspawn</command></term><listitem><para><citerefentry><refentrytitle>systemd-nspawn</refentrytitle><manvolnum>1</manvolnum></citerefentry></para></listitem></varlistentry>
 
+<varlistentry><term><command>systemd-path</command></term><listitem><para><citerefentry><refentrytitle>systemd-path</refentrytitle><manvolnum>1</manvolnum></citerefentry></para></listitem></varlistentry>
+
 <varlistentry><term><filename>systemd-poweroff.service</filename></term><listitem><para><citerefentry><refentrytitle>systemd-halt.service</refentrytitle><manvolnum>8</manvolnum></citerefentry></para></listitem></varlistentry>
 
 <varlistentry><term><filename>systemd-quotacheck.service</filename></term><listitem><para><citerefentry><refentrytitle>systemd-quotacheck.service</refentrytitle><manvolnum>8</manvolnum></citerefentry></para></listitem></varlistentry>
 
 <varlistentry><term><filename>systemd-sysctl.service</filename></term><listitem><para><citerefentry><refentrytitle>systemd-sysctl.service</refentrytitle><manvolnum>8</manvolnum></citerefentry></para></listitem></varlistentry>
 
+<varlistentry><term><command>systemd-sysusers</command></term><listitem><para><citerefentry><refentrytitle>systemd-sysusers</refentrytitle><manvolnum>8</manvolnum></citerefentry></para></listitem></varlistentry>
+
+<varlistentry><term><filename>systemd-sysusers.service</filename></term><listitem><para><citerefentry><refentrytitle>systemd-sysusers</refentrytitle><manvolnum>8</manvolnum></citerefentry></para></listitem></varlistentry>
+
 <varlistentry><term><filename>systemd-timedated.service</filename></term><listitem><para><citerefentry><refentrytitle>systemd-timedated.service</refentrytitle><manvolnum>8</manvolnum></citerefentry></para></listitem></varlistentry>
 
 <varlistentry><term><filename>systemd-timesyncd.service</filename></term><listitem><para><citerefentry><refentrytitle>systemd-timesyncd.service</refentrytitle><manvolnum>8</manvolnum></citerefentry></para></listitem></varlistentry>
 
 <varlistentry><term><filename>systemd-udevd.service</filename></term><listitem><para><citerefentry><refentrytitle>systemd-udevd.service</refentrytitle><manvolnum>8</manvolnum></citerefentry></para></listitem></varlistentry>
 
+<varlistentry><term><filename>systemd-update-done.service</filename></term><listitem><para><citerefentry><refentrytitle>systemd-update-done.service</refentrytitle><manvolnum>8</manvolnum></citerefentry></para></listitem></varlistentry>
+
 <varlistentry><term><filename>systemd-update-utmp-runlevel.service</filename></term><listitem><para><citerefentry><refentrytitle>systemd-update-utmp.service</refentrytitle><manvolnum>8</manvolnum></citerefentry></para></listitem></varlistentry>
 
 <varlistentry><term><filename>systemd-update-utmp.service</filename></term><listitem><para><citerefentry><refentrytitle>systemd-update-utmp.service</refentrytitle><manvolnum>8</manvolnum></citerefentry></para></listitem></varlistentry>
 
         <refsect1>
                 <title>Colophon</title>
-                <para id="colophon">This index contains 1535 entries in 14 sections,
-referring to 170 individual manual pages.
+                <para id="colophon">This index contains 1621 entries in 14 sections,
+referring to 177 individual manual pages.
 </para>
         </refsect1>
 </refentry>
index c1d1dd26c51ad53a041924ef02a49688fc16fedc..29202e82220b80ba15a198789153f4d44b9a1e47 100644 (file)
@@ -1,5 +1,5 @@
 '\" t
-.TH "SYSTEMD\&.EXEC" "5" "" "systemd 214" "systemd.exec"
+.TH "SYSTEMD\&.EXEC" "5" "" "systemd 215" "systemd.exec"
 .\" -----------------------------------------------------------------
 .\" * Define some portability stuff
 .\" -----------------------------------------------------------------
@@ -522,10 +522,9 @@ Takes a boolean argument or
 "full"\&. If true, mounts the
 /usr
 directory read\-only for processes invoked by this unit\&. If set to
-"full"
-the
+"full", the
 /etc
-is mounted read\-only, too\&. This setting ensures that any modification of the vendor supplied operating system (and optionally its configuration) is prohibited for the service\&. It is recommended to enable this setting for all long\-running services, unless they are involved with system updates or need to modify the operating system in other ways\&. Note however, that processes retaining the CAP_SYS_ADMIN capability can undo the effect of this setting\&. This setting is hence particularly useful for daemons which have this capability removed, for example with
+directory is mounted read\-only, too\&. This setting ensures that any modification of the vendor supplied operating system (and optionally its configuration) is prohibited for the service\&. It is recommended to enable this setting for all long\-running services, unless they are involved with system updates or need to modify the operating system in other ways\&. Note however that processes retaining the CAP_SYS_ADMIN capability can undo the effect of this setting\&. This setting is hence particularly useful for daemons which have this capability removed, for example with
 \fICapabilityBoundingSet=\fR\&. Defaults to off\&.
 .RE
 .PP
@@ -537,8 +536,7 @@ Takes a boolean argument or
 and
 /run/user
 are made inaccessible and empty for processes invoked by this unit\&. If set to
-"read\-only"
-the two directores are made read\-only instead\&. It is recommended to enable this setting for all long\-running services (in particular network\-facing ones), to ensure they cannot get access to private user data, unless the services actually require access to the user\*(Aqs private data\&. Note however, that processes retaining the CAP_SYS_ADMIN capability can undo the effect of this setting\&. This setting is hence particularly useful for daemons which have this capability removed, for example with
+"read\-only", the two directores are made read\-only instead\&. It is recommended to enable this setting for all long\-running services (in particular network\-facing ones), to ensure they cannot get access to private user data, unless the services actually require access to the user\*(Aqs private data\&. Note however that processes retaining the CAP_SYS_ADMIN capability can undo the effect of this setting\&. This setting is hence particularly useful for daemons which have this capability removed, for example with
 \fICapabilityBoundingSet=\fR\&. Defaults to off\&.
 .RE
 .PP
index d3607ff7cd463837f8e2bd1651d791de7e3565de..e5376b908377f7841752c0ed5d5d0681fad3c3d1 100644 (file)
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="systemd.exec"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>systemd.exec — Execution environment configuration</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><p><code class="filename"><em class="replaceable"><code>service</code></em>.service</code>,
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="systemd.exec"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>systemd.exec — Execution environment configuration</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><p><code class="filename"><em class="replaceable"><code>service</code></em>.service</code>,
                 <code class="filename"><em class="replaceable"><code>socket</code></em>.socket</code>,
                 <code class="filename"><em class="replaceable"><code>mount</code></em>.mount</code>,
-                <code class="filename"><em class="replaceable"><code>swap</code></em>.swap</code></p></div><div class="refsect1"><a name="idm214195915600"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p>Unit configuration files for services, sockets,
+                <code class="filename"><em class="replaceable"><code>swap</code></em>.swap</code></p></div><div class="refsect1"><a name="idm214176829472"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p>Unit configuration files for services, sockets,
                 mount points, and swap devices share a subset of
                 configuration options which define the execution
                 environment of spawned processes.</p><p>This man page lists the configuration options
@@ -39,7 +39,7 @@
                 configuration files. The execution specific
                 configuration options are configured in the [Service],
                 [Socket], [Mount], or [Swap] sections, depending on the unit
-                type.</p></div><div class="refsect1"><a name="idm214194423040"></a><h2 id="Options">Options<a class="headerlink" title="Permalink to this headline" href="#Options">¶</a></h2><div class="variablelist"><dl class="variablelist"><dt id="WorkingDirectory="><span class="term"><code class="varname">WorkingDirectory=</code></span><a class="headerlink" title="Permalink to this term" href="#WorkingDirectory=">¶</a></dt><dd><p>Takes an absolute
+                type.</p></div><div class="refsect1"><a name="idm214178282400"></a><h2 id="Options">Options<a class="headerlink" title="Permalink to this headline" href="#Options">¶</a></h2><div class="variablelist"><dl class="variablelist"><dt id="WorkingDirectory="><span class="term"><code class="varname">WorkingDirectory=</code></span><a class="headerlink" title="Permalink to this term" href="#WorkingDirectory=">¶</a></dt><dd><p>Takes an absolute
                                 directory path. Sets the working
                                 directory for executed processes. If
                                 not set, defaults to the root directory
                                 mounts the <code class="filename">/usr</code>
                                 directory read-only for processes
                                 invoked by this unit. If set to
-                                "<code class="literal">full</code>" the
-                                <code class="filename">/etc</code> is mounted
+                                "<code class="literal">full</code>", the
+                                <code class="filename">/etc</code> directory is mounted
                                 read-only, too. This setting ensures
                                 that any modification of the vendor
                                 supplied operating system (and
                                 all long-running services, unless they
                                 are involved with system updates or
                                 need to modify the operating system in
-                                other ways. Note however, that
+                                other ways. Note however that
                                 processes retaining the CAP_SYS_ADMIN
                                 capability can undo the effect of this
                                 setting. This setting is hence
                                 <code class="filename">/run/user</code> are
                                 made inaccessible and empty for
                                 processes invoked by this unit. If set
-                                to "<code class="literal">read-only</code>" the
+                                to "<code class="literal">read-only</code>", the
                                 two directores are made read-only
                                 instead. It is recommended to enable
                                 this setting for all long-running
                                 ones), to ensure they cannot get access
                                 to private user data, unless the
                                 services actually require access to
-                                the user's private data. Note however,
+                                the user's private data. Note however
                                 that processes retaining the
                                 CAP_SYS_ADMIN capability can undo the
                                 effect of this setting. This setting
                                 directories that require more complex
                                 or different configuration or lifetime
                                 guarantees, please consider using
-                                <a href="tmpfiles.d.html"><span class="citerefentry"><span class="refentrytitle">tmpfiles.d</span>(5)</span></a>.</p></dd></dl></div></div><div class="refsect1"><a name="idm214191115952"></a><h2 id="Environment variables in spawned processes">Environment variables in spawned processes<a class="headerlink" title="Permalink to this headline" href="#Environment%20variables%20in%20spawned%20processes">¶</a></h2><p>Processes started by the system are executed in
+                                <a href="tmpfiles.d.html"><span class="citerefentry"><span class="refentrytitle">tmpfiles.d</span>(5)</span></a>.</p></dd></dl></div></div><div class="refsect1"><a name="idm214175926544"></a><h2 id="Environment variables in spawned processes">Environment variables in spawned processes<a class="headerlink" title="Permalink to this headline" href="#Environment%20variables%20in%20spawned%20processes">¶</a></h2><p>Processes started by the system are executed in
                 a clean environment in which select variables
                 listed below are set. System processes started by systemd
                 do not inherit variables from PID 1, but processes
                 <code class="varname">systemd.setenv=</code> (see
                 <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>). Additional
                 variables may also be set through PAM,
-                cf. <a href="pam_env.html"><span class="citerefentry"><span class="refentrytitle">pam_env</span>(8)</span></a>.</p></div><div class="refsect1"><a name="idm214191076464"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+                cf. <a href="pam_env.html"><span class="citerefentry"><span class="refentrytitle">pam_env</span>(8)</span></a>.</p></div><div class="refsect1"><a name="idm214175887296"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
                           <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
                           <a href="systemctl.html"><span class="citerefentry"><span class="refentrytitle">systemctl</span>(8)</span></a>,
                           <a href="journalctl.html"><span class="citerefentry"><span class="refentrytitle">journalctl</span>(8)</span></a>,
index c419424d9d6d0603587dc71b8b8e31baabe8bbeb..cc5442d45cf17be9b0c29051533cbf2428a44403 100644 (file)
                                 mounts the <filename>/usr</filename>
                                 directory read-only for processes
                                 invoked by this unit. If set to
-                                <literal>full</literal> the
-                                <filename>/etc</filename> is mounted
+                                <literal>full</literal>, the
+                                <filename>/etc</filename> directory is mounted
                                 read-only, too. This setting ensures
                                 that any modification of the vendor
                                 supplied operating system (and
                                 all long-running services, unless they
                                 are involved with system updates or
                                 need to modify the operating system in
-                                other ways. Note however, that
+                                other ways. Note however that
                                 processes retaining the CAP_SYS_ADMIN
                                 capability can undo the effect of this
                                 setting. This setting is hence
                                 <filename>/run/user</filename> are
                                 made inaccessible and empty for
                                 processes invoked by this unit. If set
-                                to <literal>read-only</literal> the
+                                to <literal>read-only</literal>, the
                                 two directores are made read-only
                                 instead. It is recommended to enable
                                 this setting for all long-running
                                 ones), to ensure they cannot get access
                                 to private user data, unless the
                                 services actually require access to
-                                the user's private data. Note however,
+                                the user's private data. Note however
                                 that processes retaining the
                                 CAP_SYS_ADMIN capability can undo the
                                 effect of this setting. This setting
index df7a66963280201db08a1aff766bbeb1c35738d6..df28bba8ae6ef44a4d4517cf28ef676816573fc3 100644 (file)
@@ -19,7 +19,7 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="systemd"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>systemd, init — systemd system and service manager</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="cmdsynopsis"><p><code class="command">systemd [OPTIONS...]</code> </p></div><div class="cmdsynopsis"><p><code class="command">init [OPTIONS...]  {COMMAND}</code> </p></div></div><div class="refsect1"><a name="idm214185400592"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p>systemd is a system and service manager for
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="systemd"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>systemd, init — systemd system and service manager</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="cmdsynopsis"><p><code class="command">systemd [OPTIONS...]</code> </p></div><div class="cmdsynopsis"><p><code class="command">init [OPTIONS...]  {COMMAND}</code> </p></div></div><div class="refsect1"><a name="idm214189898832"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p>systemd is a system and service manager for
                 Linux operating systems. When run as first process on
                 boot (as PID 1), it acts as init system that brings
                 up and maintains userspace services.</p><p>For compatibility with SysV, if systemd is called
@@ -34,7 +34,7 @@
                 <code class="filename">system.conf</code>, otherwise
                 <code class="filename">user.conf</code>. See
                 <a href="systemd-system.conf.html"><span class="citerefentry"><span class="refentrytitle">systemd-system.conf</span>(5)</span></a>
-                for more information.</p></div><div class="refsect1"><a name="idm214185392096"></a><h2 id="Options">Options<a class="headerlink" title="Permalink to this headline" href="#Options">¶</a></h2><p>The following options are understood:</p><div class="variablelist"><dl class="variablelist"><dt id="--test"><span class="term"><code class="option">--test</code></span><a class="headerlink" title="Permalink to this term" href="#--test">¶</a></dt><dd><p>Determine startup
+                for more information.</p></div><div class="refsect1"><a name="idm214188084384"></a><h2 id="Options">Options<a class="headerlink" title="Permalink to this headline" href="#Options">¶</a></h2><p>The following options are understood:</p><div class="variablelist"><dl class="variablelist"><dt id="--test"><span class="term"><code class="option">--test</code></span><a class="headerlink" title="Permalink to this term" href="#--test">¶</a></dt><dd><p>Determine startup
                                 sequence, dump it and exit. This is an
                                 option useful for debugging
                                 only.</p></dd><dt id="--dump-configuration-items"><span class="term"><code class="option">--dump-configuration-items</code></span><a class="headerlink" title="Permalink to this term" href="#--dump-configuration-items">¶</a></dt><dd><p>Dump understood unit
                                 <code class="option">--default-standard-error=</code>
                                 to
                                 <code class="option">inherit</code>.</p></dd><dt id="-h"><span class="term"><code class="option">-h</code>, </span><span class="term"><code class="option">--help</code></span><a class="headerlink" title="Permalink to this term" href="#-h">¶</a></dt><dd><p><a name="help-text"></a>Print a short help text and exit.
-    </p></dd><dt id="--version"><span class="term"><code class="option">--version</code></span><a class="headerlink" title="Permalink to this term" href="#--version">¶</a></dt><dd><p><a name="version-text"></a>Print a short version string and exit.</p></dd></dl></div></div><div class="refsect1"><a name="idm214186942512"></a><h2 id="Concepts">Concepts<a class="headerlink" title="Permalink to this headline" href="#Concepts">¶</a></h2><p>systemd provides a dependency system between
+    </p></dd><dt id="--version"><span class="term"><code class="option">--version</code></span><a class="headerlink" title="Permalink to this term" href="#--version">¶</a></dt><dd><p><a name="version-text"></a>Print a short version string and exit.</p></dd></dl></div></div><div class="refsect1"><a name="idm214189143952"></a><h2 id="Concepts">Concepts<a class="headerlink" title="Permalink to this headline" href="#Concepts">¶</a></h2><p>systemd provides a dependency system between
                 various entities called "units" of 12 different
                 types. Units encapsulate various objects that are
                 relevant for system boot-up and maintenance. The
                 or initrd environment should implement the
                 <a class="ulink" href="http://www.freedesktop.org/wiki/Software/systemd/ContainerInterface" target="_top">Container
                 Interface</a> or <a class="ulink" href="http://www.freedesktop.org/wiki/Software/systemd/InitrdInterface" target="_top">initrd
-                Interface</a> specifications, respectively.</p></div><div class="refsect1"><a name="idm214182266208"></a><h2 id="Directories">Directories<a class="headerlink" title="Permalink to this headline" href="#Directories">¶</a></h2><div class="variablelist"><dl class="variablelist"><dt id="System unit directories"><span class="term">System unit directories</span><a class="headerlink" title="Permalink to this term" href="#System%20unit%20directories">¶</a></dt><dd><p>The systemd system
+                Interface</a> specifications, respectively.</p></div><div class="refsect1"><a name="idm214189453632"></a><h2 id="Directories">Directories<a class="headerlink" title="Permalink to this headline" href="#Directories">¶</a></h2><div class="variablelist"><dl class="variablelist"><dt id="System unit directories"><span class="term">System unit directories</span><a class="headerlink" title="Permalink to this term" href="#System%20unit%20directories">¶</a></dt><dd><p>The systemd system
                                 manager reads unit configuration from
                                 various directories. Packages that
                                 want to install unit files shall place
                                 unit with a native unit configuration
                                 file cannot be started by activating it
                                 in the SysV runlevel link
-                                farm.</p></dd></dl></div></div><div class="refsect1"><a name="idm214182243984"></a><h2 id="Signals">Signals<a class="headerlink" title="Permalink to this headline" href="#Signals">¶</a></h2><div class="variablelist"><dl class="variablelist"><dt id="SIGTERM"><span class="term"><code class="constant">SIGTERM</code></span><a class="headerlink" title="Permalink to this term" href="#SIGTERM">¶</a></dt><dd><p>Upon receiving this
+                                farm.</p></dd></dl></div></div><div class="refsect1"><a name="idm214189693872"></a><h2 id="Signals">Signals<a class="headerlink" title="Permalink to this headline" href="#Signals">¶</a></h2><div class="variablelist"><dl class="variablelist"><dt id="SIGTERM"><span class="term"><code class="constant">SIGTERM</code></span><a class="headerlink" title="Permalink to this term" href="#SIGTERM">¶</a></dt><dd><p>Upon receiving this
                                 signal the systemd system manager
                                 serializes its state, reexecutes
                                 itself and deserializes the saved
                                 <code class="varname">systemd.log_target=syslog-or-kmsg</code>
                                 on <code class="constant">SIGRTMIN+29</code>) on
                                 the kernel command
-                                line.</p></dd></dl></div></div><div class="refsect1"><a name="idm214182175312"></a><h2 id="Environment">Environment<a class="headerlink" title="Permalink to this headline" href="#Environment">¶</a></h2><div class="variablelist"><dl class="variablelist"><dt id="$SYSTEMD_LOG_LEVEL"><span class="term"><code class="varname">$SYSTEMD_LOG_LEVEL</code></span><a class="headerlink" title="Permalink to this term" href="#%24SYSTEMD_LOG_LEVEL">¶</a></dt><dd><p>systemd reads the
+                                line.</p></dd></dl></div></div><div class="refsect1"><a name="idm214191284560"></a><h2 id="Environment">Environment<a class="headerlink" title="Permalink to this headline" href="#Environment">¶</a></h2><div class="variablelist"><dl class="variablelist"><dt id="$SYSTEMD_LOG_LEVEL"><span class="term"><code class="varname">$SYSTEMD_LOG_LEVEL</code></span><a class="headerlink" title="Permalink to this term" href="#%24SYSTEMD_LOG_LEVEL">¶</a></dt><dd><p>systemd reads the
                                 log level from this environment
                                 variable. This can be overridden with
                                 <code class="option">--log-level=</code>.</p></dd><dt id="$SYSTEMD_LOG_TARGET"><span class="term"><code class="varname">$SYSTEMD_LOG_TARGET</code></span><a class="headerlink" title="Permalink to this term" href="#%24SYSTEMD_LOG_TARGET">¶</a></dt><dd><p>systemd reads the
                                 start-up completion notification. See
                                 <a href="sd_notify.html"><span class="citerefentry"><span class="refentrytitle">sd_notify</span>(3)</span></a>
                                 for more information.
-                                </p></dd></dl></div></div><div class="refsect1"><a name="idm214182151888"></a><h2 id="Kernel Command Line">Kernel Command Line<a class="headerlink" title="Permalink to this headline" href="#Kernel%20Command%20Line">¶</a></h2><p>When run as system instance systemd parses a
+                                </p></dd></dl></div></div><div class="refsect1"><a name="idm214191260432"></a><h2 id="Kernel Command Line">Kernel Command Line<a class="headerlink" title="Permalink to this headline" href="#Kernel%20Command%20Line">¶</a></h2><p>When run as system instance systemd parses a
                 number of kernel command line
-                arguments<a href="#ftn.idm214182150864" class="footnote" name="idm214182150864"><sup class="footnote">[1]</sup></a>:</p><div class="variablelist"><dl class="variablelist"><dt id="systemd.unit="><span class="term"><code class="varname">systemd.unit=</code>, </span><span class="term"><code class="varname">rd.systemd.unit=</code></span><a class="headerlink" title="Permalink to this term" href="#systemd.unit=">¶</a></dt><dd><p>Overrides the unit to
+                arguments<a href="#ftn.idm214191259376" class="footnote" name="idm214191259376"><sup class="footnote">[1]</sup></a>:</p><div class="variablelist"><dl class="variablelist"><dt id="systemd.unit="><span class="term"><code class="varname">systemd.unit=</code>, </span><span class="term"><code class="varname">rd.systemd.unit=</code></span><a class="headerlink" title="Permalink to this term" href="#systemd.unit=">¶</a></dt><dd><p>Overrides the unit to
                                 activate on boot. Defaults to
                                 <code class="filename">default.target</code>. This
                                 may be used to temporarily boot into a
                                 </p></dd></dl></div><p>For other kernel command line parameters
                 understood by components of the core OS, please refer
                 to
-                <a href="kernel-command-line.html"><span class="citerefentry"><span class="refentrytitle">kernel-command-line</span>(7)</span></a>.</p></div><div class="refsect1"><a name="idm214182090736"></a><h2 id="Sockets and FIFOs">Sockets and FIFOs<a class="headerlink" title="Permalink to this headline" href="#Sockets%20and%20FIFOs">¶</a></h2><div class="variablelist"><dl class="variablelist"><dt id="/run/systemd/notify"><span class="term"><code class="filename">/run/systemd/notify</code></span><a class="headerlink" title="Permalink to this term" href="#/run/systemd/notify">¶</a></dt><dd><p>Daemon status
+                <a href="kernel-command-line.html"><span class="citerefentry"><span class="refentrytitle">kernel-command-line</span>(7)</span></a>.</p></div><div class="refsect1"><a name="idm214187977552"></a><h2 id="Sockets and FIFOs">Sockets and FIFOs<a class="headerlink" title="Permalink to this headline" href="#Sockets%20and%20FIFOs">¶</a></h2><div class="variablelist"><dl class="variablelist"><dt id="/run/systemd/notify"><span class="term"><code class="filename">/run/systemd/notify</code></span><a class="headerlink" title="Permalink to this term" href="#/run/systemd/notify">¶</a></dt><dd><p>Daemon status
                                 notification socket. This is an
                                 <code class="constant">AF_UNIX</code> datagram socket and is used to
                                 implement the daemon notification
                                 unit. This is a named pipe in the file
                                 system. This interface is obsolete and
                                 should not be used in new
-                                applications.</p></dd></dl></div></div><div class="refsect1"><a name="idm214182077552"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+                                applications.</p></dd></dl></div></div><div class="refsect1"><a name="idm214187964368"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
                         The <a class="ulink" href="http://www.freedesktop.org/wiki/Software/systemd/" target="_top">systemd Homepage</a>,
                         <a href="systemd-system.conf.html"><span class="citerefentry"><span class="refentrytitle">systemd-system.conf</span>(5)</span></a>,
                         <a href="locale.conf.html"><span class="citerefentry"><span class="refentrytitle">locale.conf</span>(5)</span></a>,
                         <a href="kernel-command-line.html"><span class="citerefentry"><span class="refentrytitle">kernel-command-line</span>(7)</span></a>,
                         <a href="bootup.html"><span class="citerefentry"><span class="refentrytitle">bootup</span>(7)</span></a>,
                         <a href="systemd.directives.html"><span class="citerefentry"><span class="refentrytitle">systemd.directives</span>(7)</span></a>
-                </p></div><div class="footnotes"><br><hr style="width:100; text-align:left;margin-left: 0"><div id="ftn.idm214182150864" class="footnote"><p><a href="#idm214182150864" class="para"><sup class="para">[1] </sup></a>If run inside a Linux
+                </p></div><div class="footnotes"><br><hr style="width:100; text-align:left;margin-left: 0"><div id="ftn.idm214191259376" class="footnote"><p><a href="#idm214191259376" class="para"><sup class="para">[1] </sup></a>If run inside a Linux
                 container these arguments may be passed as command
                 line arguments to systemd itself, next to any of the
                 command line options listed in the Options section
index 5220d5955888c344ef3c9f7d40273218ca2599c6..1d037f92b2b68f2edd5c5c893c9c007a1cfa5dcc 100644 (file)
@@ -1,5 +1,5 @@
 '\" t
-.TH "SYSTEMD\&.INDEX" "7" "" "systemd 214" "systemd.index"
+.TH "SYSTEMD\&.INDEX" "7" "" "systemd 215" "systemd.index"
 .\" -----------------------------------------------------------------
 .\" * Define some portability stuff
 .\" -----------------------------------------------------------------
@@ -41,6 +41,12 @@ systemd.index \- List all manpages from the systemd project
 
 .SH "C"
 .PP
+\fBcoredump.conf\fR(5)
+\-\- Coredump storage configuration file
+.br
+\fBcoredumpctl\fR(1)
+\-\- Retrieve coredumps from the journal
+.br
 \fBcrypttab\fR(5)
 \-\- Configuration for encrypted block devices
 .br
@@ -51,6 +57,12 @@ systemd.index \- List all manpages from the systemd project
 \-\- Writing and packaging system daemons
 .br
 
+.SH "F"
+.PP
+\fBfile-hierarchy\fR(7)
+\-\- File system hierarchy overview
+.br
+
 .SH "H"
 .PP
 \fBhalt\fR(8)
@@ -887,9 +899,6 @@ systemd.index \- List all manpages from the systemd project
 \fBsystemd-cgtop\fR(1)
 \-\- Show top control groups by their resource usage
 .br
-\fBsystemd-coredumpctl\fR(1)
-\-\- Retrieve coredumps from the journal
-.br
 \fBsystemd-cryptsetup\fR(8)
 \-\- Full disk decryption logic
 .br
@@ -899,6 +908,9 @@ systemd.index \- List all manpages from the systemd project
 \fBsystemd-cryptsetup@.service\fR(8)
 \-\- Full disk decryption logic
 .br
+\fBsystemd-debug-generator\fR(8)
+\-\- Generator for enabling a runtime debug shell and masking specific units at boot
+.br
 \fBsystemd-delta\fR(1)
 \-\- Find overridden configuration files
 .br
@@ -1025,6 +1037,9 @@ systemd.index \- List all manpages from the systemd project
 \fBsystemd-nspawn\fR(1)
 \-\- Spawn a namespace container for debugging, testing and building
 .br
+\fBsystemd-path\fR(1)
+\-\- List and query system and user paths
+.br
 \fBsystemd-poweroff.service\fR(8)
 \-\- System shutdown logic
 .br
@@ -1115,6 +1130,12 @@ systemd.index \- List all manpages from the systemd project
 \fBsystemd-system.conf\fR(5)
 \-\- System and session service manager configuration file
 .br
+\fBsystemd-sysusers\fR(8)
+\-\- Allocate system users and groups
+.br
+\fBsystemd-sysusers.service\fR(8)
+\-\- Allocate system users and groups
+.br
 \fBsystemd-timedated\fR(8)
 \-\- Time and date bus mechanism
 .br
@@ -1157,6 +1178,12 @@ systemd.index \- List all manpages from the systemd project
 \fBsystemd-udevd.service\fR(8)
 \-\- Device event managing daemon
 .br
+\fBsystemd-update-done\fR(8)
+\-\- Mark
+.br
+\fBsystemd-update-done.service\fR(8)
+\-\- Mark
+.br
 \fBsystemd-update-utmp\fR(8)
 \-\- Write audit and utmp updates at bootup, runlevel changes and shutdown
 .br
@@ -1253,6 +1280,9 @@ systemd.index \- List all manpages from the systemd project
 \fBsystemd.unit\fR(5)
 \-\- Unit configuration
 .br
+\fBsysusers.d\fR(5)
+\-\- Declarative allocation of system users and groups
+.br
 
 .SH "T"
 .PP
@@ -1285,4 +1315,4 @@ systemd.index \- List all manpages from the systemd project
 .PP
 \fBsystemd.directives\fR(7)
 .PP
-This index contains 403 entries, referring to 173 individual manual pages\&.
+This index contains 412 entries, referring to 180 individual manual pages\&.
index 61c1f5efb40f9e4e715193f7699d14d6099b2aef..6a68e816d6fbcef0bf1297fa2bf5ef944b566bdd 100644 (file)
@@ -19,6 +19,6 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="systemd.index"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>systemd.index — List all manpages from the systemd project</p></div><div class="refsect1"><a name="idm214190002240"></a><h2 id="B">B<a class="headerlink" title="Permalink to this headline" href="#B">¶</a></h2><p><a href="binfmt.d.html"><span class="citerefentry"><span class="refentrytitle">binfmt.d</span>(5)</span></a> -- Configure additional binary formats for executables at boot<br><a href="bootchart.conf.html"><span class="citerefentry"><span class="refentrytitle">bootchart.conf</span>(5)</span></a> -- Boot performance analysis graphing tool configuration file<br><a href="bootctl.html"><span class="citerefentry"><span class="refentrytitle">bootctl</span>(1)</span></a> -- Control the firmware and boot manager settings<br><a href="bootup.html"><span class="citerefentry"><span class="refentrytitle">bootup</span>(7)</span></a> -- System bootup process<br><a href="busctl.html"><span class="citerefentry"><span class="refentrytitle">busctl</span>(1)</span></a> -- Introspect the bus<br></p></div><div class="refsect1"><a name="idm214189997248"></a><h2 id="C">C<a class="headerlink" title="Permalink to this headline" href="#C">¶</a></h2><p><a href="crypttab.html"><span class="citerefentry"><span class="refentrytitle">crypttab</span>(5)</span></a> -- Configuration for encrypted block devices<br></p></div><div class="refsect1"><a name="idm214189995840"></a><h2 id="D">D<a class="headerlink" title="Permalink to this headline" href="#D">¶</a></h2><p><a href="daemon.html"><span class="citerefentry"><span class="refentrytitle">daemon</span>(7)</span></a> -- Writing and packaging system daemons<br></p></div><div class="refsect1"><a name="idm214189994432"></a><h2 id="H">H<a class="headerlink" title="Permalink to this headline" href="#H">¶</a></h2><p><a href="halt.html"><span class="citerefentry"><span class="refentrytitle">halt</span>(8)</span></a> -- Halt, power-off or reboot the machine<br><a href="hostname.html"><span class="citerefentry"><span class="refentrytitle">hostname</span>(5)</span></a> -- Local hostname configuration file<br><a href="hostnamectl.html"><span class="citerefentry"><span class="refentrytitle">hostnamectl</span>(1)</span></a> -- Control the system hostname<br></p></div><div class="refsect1"><a name="idm214189991232"></a><h2 id="I">I<a class="headerlink" title="Permalink to this headline" href="#I">¶</a></h2><p><a href="init.html"><span class="citerefentry"><span class="refentrytitle">init</span>(1)</span></a> -- systemd system and service manager<br></p></div><div class="refsect1"><a name="idm214189989824"></a><h2 id="J">J<a class="headerlink" title="Permalink to this headline" href="#J">¶</a></h2><p><a href="journalctl.html"><span class="citerefentry"><span class="refentrytitle">journalctl</span>(1)</span></a> -- Query the systemd journal<br><a href="journald.conf.html"><span class="citerefentry"><span class="refentrytitle">journald.conf</span>(5)</span></a> -- Journal service configuration file<br></p></div><div class="refsect1"><a name="idm214189987520"></a><h2 id="K">K<a class="headerlink" title="Permalink to this headline" href="#K">¶</a></h2><p><a href="kernel-command-line.html"><span class="citerefentry"><span class="refentrytitle">kernel-command-line</span>(7)</span></a> -- Kernel command line parameters<br><a href="kernel-install.html"><span class="citerefentry"><span class="refentrytitle">kernel-install</span>(8)</span></a> -- Add and remove kernel and initramfs images to and from /boot<br></p></div><div class="refsect1"><a name="idm214189985216"></a><h2 id="L">L<a class="headerlink" title="Permalink to this headline" href="#L">¶</a></h2><p><a href="locale.conf.html"><span class="citerefentry"><span class="refentrytitle">locale.conf</span>(5)</span></a> -- Configuration file for locale settings<br><a href="localectl.html"><span class="citerefentry"><span class="refentrytitle">localectl</span>(1)</span></a> -- Control the system locale and keyboard layout settings<br><a href="localtime.html"><span class="citerefentry"><span class="refentrytitle">localtime</span>(5)</span></a> -- Local timezone configuration file<br><a href="loginctl.html"><span class="citerefentry"><span class="refentrytitle">loginctl</span>(1)</span></a> -- Control the systemd login manager<br><a href="logind.conf.html"><span class="citerefentry"><span class="refentrytitle">logind.conf</span>(5)</span></a> -- Login manager configuration file<br></p></div><div class="refsect1"><a name="idm214189959600"></a><h2 id="M">M<a class="headerlink" title="Permalink to this headline" href="#M">¶</a></h2><p><a href="machine-id.html"><span class="citerefentry"><span class="refentrytitle">machine-id</span>(5)</span></a> -- Local machine ID configuration file<br><a href="machine-info.html"><span class="citerefentry"><span class="refentrytitle">machine-info</span>(5)</span></a> -- Local machine information file<br><a href="machinectl.html"><span class="citerefentry"><span class="refentrytitle">machinectl</span>(1)</span></a> -- Control the systemd machine manager<br><a href="modules-load.d.html"><span class="citerefentry"><span class="refentrytitle">modules-load.d</span>(5)</span></a> -- Configure kernel modules to load at boot<br></p></div><div class="refsect1"><a name="idm214189955504"></a><h2 id="N">N<a class="headerlink" title="Permalink to this headline" href="#N">¶</a></h2><p><a href="nss-myhostname.html"><span class="citerefentry"><span class="refentrytitle">nss-myhostname</span>(8)</span></a> -- Provide hostname resolution for the locally configured system hostname.<br></p></div><div class="refsect1"><a name="idm214189954096"></a><h2 id="O">O<a class="headerlink" title="Permalink to this headline" href="#O">¶</a></h2><p><a href="os-release.html"><span class="citerefentry"><span class="refentrytitle">os-release</span>(5)</span></a> -- Operating system identification<br></p></div><div class="refsect1"><a name="idm214189952688"></a><h2 id="P">P<a class="headerlink" title="Permalink to this headline" href="#P">¶</a></h2><p><a href="pam_systemd.html"><span class="citerefentry"><span class="refentrytitle">pam_systemd</span>(8)</span></a> -- Register user sessions in the systemd login manager<br><a href="poweroff.html"><span class="citerefentry"><span class="refentrytitle">poweroff</span>(8)</span></a> -- Halt, power-off or reboot the machine<br></p></div><div class="refsect1"><a name="idm214189950384"></a><h2 id="R">R<a class="headerlink" title="Permalink to this headline" href="#R">¶</a></h2><p><a href="reboot.html"><span class="citerefentry"><span class="refentrytitle">reboot</span>(8)</span></a> -- Halt, power-off or reboot the machine<br><a href="resolved.conf.html"><span class="citerefentry"><span class="refentrytitle">resolved.conf</span>(5)</span></a> -- Network Name Resolution configuration file<br><a href="runlevel.html"><span class="citerefentry"><span class="refentrytitle">runlevel</span>(8)</span></a> -- Print previous and current SysV runlevel<br></p></div><div class="refsect1"><a name="idm214189947184"></a><h2 id="S">S<a class="headerlink" title="Permalink to this headline" href="#S">¶</a></h2><p><a href="sd-daemon.html"><span class="citerefentry"><span class="refentrytitle">sd-daemon</span>(3)</span></a> -- APIs for new-style daemons<br><a href="sd-id128.html"><span class="citerefentry"><span class="refentrytitle">sd-id128</span>(3)</span></a> -- APIs for processing 128-bit IDs<br><a href="sd-journal.html"><span class="citerefentry"><span class="refentrytitle">sd-journal</span>(3)</span></a> -- APIs for submitting and querying log entries to and from the journal<br><a href="sd-login.html"><span class="citerefentry"><span class="refentrytitle">sd-login</span>(3)</span></a> -- APIs for tracking logins<br><a href="sd-readahead.html"><span class="citerefentry"><span class="refentrytitle">sd-readahead</span>(3)</span></a> -- Reference implementation of APIs for controlling boot-time read-ahead<br><a href="SD_ALERT.html"><span class="citerefentry"><span class="refentrytitle">SD_ALERT</span>(3)</span></a> -- APIs for new-style daemons<br><a href="sd_booted.html"><span class="citerefentry"><span class="refentrytitle">sd_booted</span>(3)</span></a> -- Test whether the system is running the systemd init system<br><a href="sd_bus_creds_get_audit_login_uid.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_creds_get_audit_login_uid</span>(3)</span></a> -- Retrieve fields from a credentials object<br><a href="sd_bus_creds_get_audit_session_id.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_creds_get_audit_session_id</span>(3)</span></a> -- Retrieve fields from a credentials object<br><a href="sd_bus_creds_get_cgroup.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_creds_get_cgroup</span>(3)</span></a> -- Retrieve fields from a credentials object<br><a href="sd_bus_creds_get_cmdline.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_creds_get_cmdline</span>(3)</span></a> -- Retrieve fields from a credentials object<br><a href="sd_bus_creds_get_comm.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_creds_get_comm</span>(3)</span></a> -- Retrieve fields from a credentials object<br><a href="sd_bus_creds_get_exe.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_creds_get_exe</span>(3)</span></a> -- Retrieve fields from a credentials object<br><a href="sd_bus_creds_get_gid.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_creds_get_gid</span>(3)</span></a> -- Retrieve fields from a credentials object<br><a href="sd_bus_creds_get_mask.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_creds_get_mask</span>(3)</span></a> -- Retrieve credentials object for the specified PID<br><a href="sd_bus_creds_get_owner_uid.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_creds_get_owner_uid</span>(3)</span></a> -- Retrieve fields from a credentials object<br><a href="sd_bus_creds_get_pid.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_creds_get_pid</span>(3)</span></a> -- Retrieve fields from a credentials object<br><a href="sd_bus_creds_get_pid_starttime.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_creds_get_pid_starttime</span>(3)</span></a> -- Retrieve fields from a credentials object<br><a href="sd_bus_creds_get_selinux_context.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_creds_get_selinux_context</span>(3)</span></a> -- Retrieve fields from a credentials object<br><a href="sd_bus_creds_get_session.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_creds_get_session</span>(3)</span></a> -- Retrieve fields from a credentials object<br><a href="sd_bus_creds_get_slice.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_creds_get_slice</span>(3)</span></a> -- Retrieve fields from a credentials object<br><a href="sd_bus_creds_get_tid.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_creds_get_tid</span>(3)</span></a> -- Retrieve fields from a credentials object<br><a href="sd_bus_creds_get_tid_comm.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_creds_get_tid_comm</span>(3)</span></a> -- Retrieve fields from a credentials object<br><a href="sd_bus_creds_get_uid.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_creds_get_uid</span>(3)</span></a> -- Retrieve fields from a credentials object<br><a href="sd_bus_creds_get_unique_name.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_creds_get_unique_name</span>(3)</span></a> -- Retrieve fields from a credentials object<br><a href="sd_bus_creds_get_unit.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_creds_get_unit</span>(3)</span></a> -- Retrieve fields from a credentials object<br><a href="sd_bus_creds_get_user_unit.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_creds_get_user_unit</span>(3)</span></a> -- Retrieve fields from a credentials object<br><a href="sd_bus_creds_get_well_known_names.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_creds_get_well_known_names</span>(3)</span></a> -- Retrieve fields from a credentials object<br><a href="sd_bus_creds_has_bounding_cap.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_creds_has_bounding_cap</span>(3)</span></a> -- Retrieve fields from a credentials object<br><a href="sd_bus_creds_has_effective_cap.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_creds_has_effective_cap</span>(3)</span></a> -- Retrieve fields from a credentials object<br><a href="sd_bus_creds_has_inheritable_cap.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_creds_has_inheritable_cap</span>(3)</span></a> -- Retrieve fields from a credentials object<br><a href="sd_bus_creds_has_permitted_cap.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_creds_has_permitted_cap</span>(3)</span></a> -- Retrieve fields from a credentials object<br><a href="sd_bus_creds_new_from_pid.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_creds_new_from_pid</span>(3)</span></a> -- Retrieve credentials object for the specified PID<br><a href="sd_bus_creds_ref.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_creds_ref</span>(3)</span></a> -- Retrieve credentials object for the specified PID<br><a href="sd_bus_creds_unref.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_creds_unref</span>(3)</span></a> -- Retrieve credentials object for the specified PID<br><a href="sd_bus_default_system.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_default_system</span>(3)</span></a> -- Open a connection to the system or user bus<br><a href="sd_bus_default_user.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_default_user</span>(3)</span></a> -- Open a connection to the system or user bus<br><a href="sd_bus_error.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_error</span>(3)</span></a> -- sd-bus error handling<br><a href="sd_bus_error_copy.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_error_copy</span>(3)</span></a> -- sd-bus error handling<br><a href="sd_bus_error_free.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_error_free</span>(3)</span></a> -- sd-bus error handling<br><a href="sd_bus_error_get_errno.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_error_get_errno</span>(3)</span></a> -- sd-bus error handling<br><a href="sd_bus_error_has_name.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_error_has_name</span>(3)</span></a> -- sd-bus error handling<br><a href="sd_bus_error_is_set.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_error_is_set</span>(3)</span></a> -- sd-bus error handling<br><a href="sd_bus_error_set.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_error_set</span>(3)</span></a> -- sd-bus error handling<br><a href="sd_bus_error_set_const.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_error_set_const</span>(3)</span></a> -- sd-bus error handling<br><a href="sd_bus_error_set_errno.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_error_set_errno</span>(3)</span></a> -- sd-bus error handling<br><a href="sd_bus_error_set_errnof.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_error_set_errnof</span>(3)</span></a> -- sd-bus error handling<br><a href="sd_bus_message_append.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_message_append</span>(3)</span></a> -- Attach parts of message based on a format string<br><a href="sd_bus_message_append_array.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_message_append_array</span>(3)</span></a> -- Attach an array of items to a message<br><a href="sd_bus_message_append_array_iovec.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_message_append_array_iovec</span>(3)</span></a> -- Attach an array of items to a message<br><a href="sd_bus_message_append_array_memfd.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_message_append_array_memfd</span>(3)</span></a> -- Attach an array of items to a message<br><a href="sd_bus_message_append_array_space.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_message_append_array_space</span>(3)</span></a> -- Attach an array of items to a message<br><a href="sd_bus_message_append_basic.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_message_append_basic</span>(3)</span></a> -- Attach a single part to a message<br><a href="sd_bus_message_append_string_iovec.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_message_append_string_iovec</span>(3)</span></a> -- Attach a string to a message<br><a href="sd_bus_message_append_string_memfd.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_message_append_string_memfd</span>(3)</span></a> -- Attach a string to a message<br><a href="sd_bus_message_append_string_space.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_message_append_string_space</span>(3)</span></a> -- Attach a string to a message<br><a href="sd_bus_message_append_strv.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_message_append_strv</span>(3)</span></a> -- Attach an array of strings to a message<br><a href="sd_bus_message_get_cookie.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_message_get_cookie</span>(3)</span></a> -- Returns the transaction cookie of a message<br><a href="sd_bus_message_get_monotonic_usec.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_message_get_monotonic_usec</span>(3)</span></a> -- Retrieve the sender timestamps and sequence number of a message<br><a href="sd_bus_message_get_realtime_usec.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_message_get_realtime_usec</span>(3)</span></a> -- Retrieve the sender timestamps and sequence number of a message<br><a href="sd_bus_message_get_reply_cookie.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_message_get_reply_cookie</span>(3)</span></a> -- Returns the transaction cookie of a message<br><a href="sd_bus_message_get_seqnum.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_message_get_seqnum</span>(3)</span></a> -- Retrieve the sender timestamps and sequence number of a message<br><a href="sd_bus_negotiate_creds.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_negotiate_creds</span>(3)</span></a> -- Control feature negotiation on bus connections<br><a href="sd_bus_negotiate_fds.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_negotiate_fds</span>(3)</span></a> -- Control feature negotiation on bus connections<br><a href="sd_bus_negotiate_timestamps.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_negotiate_timestamps</span>(3)</span></a> -- Control feature negotiation on bus connections<br><a href="sd_bus_new.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_new</span>(3)</span></a> -- Create a new bus object and create or destroy references to it<br><a href="sd_bus_open_system.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_open_system</span>(3)</span></a> -- Open a connection to the system or user bus<br><a href="sd_bus_open_system_container.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_open_system_container</span>(3)</span></a> -- Open a connection to the system or user bus<br><a href="sd_bus_open_system_remote.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_open_system_remote</span>(3)</span></a> -- Open a connection to the system or user bus<br><a href="sd_bus_open_user.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_open_user</span>(3)</span></a> -- Open a connection to the system or user bus<br><a href="sd_bus_path_decode.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_path_decode</span>(3)</span></a> -- Convert an external identifier into an object path and back<br><a href="sd_bus_path_encode.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_path_encode</span>(3)</span></a> -- Convert an external identifier into an object path and back<br><a href="sd_bus_ref.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_ref</span>(3)</span></a> -- Create a new bus object and create or destroy references to it<br><a href="sd_bus_release_name.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_release_name</span>(3)</span></a> -- Request or release a well-known name on a bus<br><a href="sd_bus_request_name.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_request_name</span>(3)</span></a> -- Request or release a well-known name on a bus<br><a href="sd_bus_unref.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_unref</span>(3)</span></a> -- Create a new bus object and create or destroy references to it<br><a href="SD_CRIT.html"><span class="citerefentry"><span class="refentrytitle">SD_CRIT</span>(3)</span></a> -- APIs for new-style daemons<br><a href="SD_DEBUG.html"><span class="citerefentry"><span class="refentrytitle">SD_DEBUG</span>(3)</span></a> -- APIs for new-style daemons<br><a href="SD_EMERG.html"><span class="citerefentry"><span class="refentrytitle">SD_EMERG</span>(3)</span></a> -- APIs for new-style daemons<br><a href="SD_ERR.html"><span class="citerefentry"><span class="refentrytitle">SD_ERR</span>(3)</span></a> -- APIs for new-style daemons<br><a href="sd_event_add_time.html"><span class="citerefentry"><span class="refentrytitle">sd_event_add_time</span>(3)</span></a> -- Add a timer event source to an event loop<br><a href="sd_event_default.html"><span class="citerefentry"><span class="refentrytitle">sd_event_default</span>(3)</span></a> -- Acquire and release an event loop object<br><a href="sd_event_new.html"><span class="citerefentry"><span class="refentrytitle">sd_event_new</span>(3)</span></a> -- Acquire and release an event loop object<br><a href="sd_event_ref.html"><span class="citerefentry"><span class="refentrytitle">sd_event_ref</span>(3)</span></a> -- Acquire and release an event loop object<br><a href="sd_event_source_get_time.html"><span class="citerefentry"><span class="refentrytitle">sd_event_source_get_time</span>(3)</span></a> -- Add a timer event source to an event loop<br><a href="sd_event_source_get_time_accuracy.html"><span class="citerefentry"><span class="refentrytitle">sd_event_source_get_time_accuracy</span>(3)</span></a> -- Add a timer event source to an event loop<br><a href="sd_event_source_get_time_clock.html"><span class="citerefentry"><span class="refentrytitle">sd_event_source_get_time_clock</span>(3)</span></a> -- Add a timer event source to an event loop<br><a href="sd_event_source_set_time.html"><span class="citerefentry"><span class="refentrytitle">sd_event_source_set_time</span>(3)</span></a> -- Add a timer event source to an event loop<br><a href="sd_event_source_set_time_accuracy.html"><span class="citerefentry"><span class="refentrytitle">sd_event_source_set_time_accuracy</span>(3)</span></a> -- Add a timer event source to an event loop<br><a href="sd_event_unref.html"><span class="citerefentry"><span class="refentrytitle">sd_event_unref</span>(3)</span></a> -- Acquire and release an event loop object<br><a href="sd_get_machine_names.html"><span class="citerefentry"><span class="refentrytitle">sd_get_machine_names</span>(3)</span></a> -- Determine available seats, sessions, logged in users and virtual machines/containers<br><a href="sd_get_seats.html"><span class="citerefentry"><span class="refentrytitle">sd_get_seats</span>(3)</span></a> -- Determine available seats, sessions, logged in users and virtual machines/containers<br><a href="sd_get_sessions.html"><span class="citerefentry"><span class="refentrytitle">sd_get_sessions</span>(3)</span></a> -- Determine available seats, sessions, logged in users and virtual machines/containers<br><a href="sd_get_uids.html"><span class="citerefentry"><span class="refentrytitle">sd_get_uids</span>(3)</span></a> -- Determine available seats, sessions, logged in users and virtual machines/containers<br><a href="SD_ID128_CONST_STR.html"><span class="citerefentry"><span class="refentrytitle">SD_ID128_CONST_STR</span>(3)</span></a> -- APIs for processing 128-bit IDs<br><a href="sd_id128_equal.html"><span class="citerefentry"><span class="refentrytitle">sd_id128_equal</span>(3)</span></a> -- APIs for processing 128-bit IDs<br><a href="SD_ID128_FORMAT_STR.html"><span class="citerefentry"><span class="refentrytitle">SD_ID128_FORMAT_STR</span>(3)</span></a> -- APIs for processing 128-bit IDs<br><a href="SD_ID128_FORMAT_VAL.html"><span class="citerefentry"><span class="refentrytitle">SD_ID128_FORMAT_VAL</span>(3)</span></a> -- APIs for processing 128-bit IDs<br><a href="sd_id128_from_string.html"><span class="citerefentry"><span class="refentrytitle">sd_id128_from_string</span>(3)</span></a> -- Format or parse 128-bit IDs as strings<br><a href="sd_id128_get_boot.html"><span class="citerefentry"><span class="refentrytitle">sd_id128_get_boot</span>(3)</span></a> -- Retrieve 128-bit IDs<br><a href="sd_id128_get_machine.html"><span class="citerefentry"><span class="refentrytitle">sd_id128_get_machine</span>(3)</span></a> -- Retrieve 128-bit IDs<br><a href="SD_ID128_MAKE.html"><span class="citerefentry"><span class="refentrytitle">SD_ID128_MAKE</span>(3)</span></a> -- APIs for processing 128-bit IDs<br><a href="sd_id128_randomize.html"><span class="citerefentry"><span class="refentrytitle">sd_id128_randomize</span>(3)</span></a> -- Generate 128-bit IDs<br><a href="sd_id128_t.html"><span class="citerefentry"><span class="refentrytitle">sd_id128_t</span>(3)</span></a> -- APIs for processing 128-bit IDs<br><a href="sd_id128_to_string.html"><span class="citerefentry"><span class="refentrytitle">sd_id128_to_string</span>(3)</span></a> -- Format or parse 128-bit IDs as strings<br><a href="SD_INFO.html"><span class="citerefentry"><span class="refentrytitle">SD_INFO</span>(3)</span></a> -- APIs for new-style daemons<br><a href="sd_is_fifo.html"><span class="citerefentry"><span class="refentrytitle">sd_is_fifo</span>(3)</span></a> -- Check the type of a file descriptor<br><a href="sd_is_mq.html"><span class="citerefentry"><span class="refentrytitle">sd_is_mq</span>(3)</span></a> -- Check the type of a file descriptor<br><a href="sd_is_socket.html"><span class="citerefentry"><span class="refentrytitle">sd_is_socket</span>(3)</span></a> -- Check the type of a file descriptor<br><a href="sd_is_socket_inet.html"><span class="citerefentry"><span class="refentrytitle">sd_is_socket_inet</span>(3)</span></a> -- Check the type of a file descriptor<br><a href="sd_is_socket_unix.html"><span class="citerefentry"><span class="refentrytitle">sd_is_socket_unix</span>(3)</span></a> -- Check the type of a file descriptor<br><a href="sd_is_special.html"><span class="citerefentry"><span class="refentrytitle">sd_is_special</span>(3)</span></a> -- Check the type of a file descriptor<br><a href="sd_journal.html"><span class="citerefentry"><span class="refentrytitle">sd_journal</span>(3)</span></a> -- Open the system journal for reading<br><a href="sd_journal_add_conjunction.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_add_conjunction</span>(3)</span></a> -- Add or remove entry matches<br><a href="sd_journal_add_disjunction.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_add_disjunction</span>(3)</span></a> -- Add or remove entry matches<br><a href="sd_journal_add_match.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_add_match</span>(3)</span></a> -- Add or remove entry matches<br><a href="SD_JOURNAL_APPEND.html"><span class="citerefentry"><span class="refentrytitle">SD_JOURNAL_APPEND</span>(3)</span></a> -- Journal change notification interface<br><a href="sd_journal_close.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_close</span>(3)</span></a> -- Open the system journal for reading<br><a href="SD_JOURNAL_CURRENT_USER.html"><span class="citerefentry"><span class="refentrytitle">SD_JOURNAL_CURRENT_USER</span>(3)</span></a> -- Open the system journal for reading<br><a href="sd_journal_enumerate_data.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_enumerate_data</span>(3)</span></a> -- Read data fields from the current journal entry<br><a href="sd_journal_enumerate_unique.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_enumerate_unique</span>(3)</span></a> -- Read unique data fields from the journal<br><a href="sd_journal_flush_matches.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_flush_matches</span>(3)</span></a> -- Add or remove entry matches<br><a href="SD_JOURNAL_FOREACH.html"><span class="citerefentry"><span class="refentrytitle">SD_JOURNAL_FOREACH</span>(3)</span></a> -- Advance or set back the read pointer in the journal<br><a href="SD_JOURNAL_FOREACH_BACKWARDS.html"><span class="citerefentry"><span class="refentrytitle">SD_JOURNAL_FOREACH_BACKWARDS</span>(3)</span></a> -- Advance or set back the read pointer in the journal<br><a href="SD_JOURNAL_FOREACH_DATA.html"><span class="citerefentry"><span class="refentrytitle">SD_JOURNAL_FOREACH_DATA</span>(3)</span></a> -- Read data fields from the current journal entry<br><a href="SD_JOURNAL_FOREACH_UNIQUE.html"><span class="citerefentry"><span class="refentrytitle">SD_JOURNAL_FOREACH_UNIQUE</span>(3)</span></a> -- Read unique data fields from the journal<br><a href="sd_journal_get_catalog.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_get_catalog</span>(3)</span></a> -- Retrieve message catalog entry<br><a href="sd_journal_get_catalog_for_message_id.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_get_catalog_for_message_id</span>(3)</span></a> -- Retrieve message catalog entry<br><a href="sd_journal_get_cursor.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_get_cursor</span>(3)</span></a> -- Get cursor string for or test cursor string against the current journal entry<br><a href="sd_journal_get_cutoff_monotonic_usec.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_get_cutoff_monotonic_usec</span>(3)</span></a> -- Read cut-off timestamps from the current journal entry<br><a href="sd_journal_get_cutoff_realtime_usec.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_get_cutoff_realtime_usec</span>(3)</span></a> -- Read cut-off timestamps from the current journal entry<br><a href="sd_journal_get_data.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_get_data</span>(3)</span></a> -- Read data fields from the current journal entry<br><a href="sd_journal_get_data_threshold.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_get_data_threshold</span>(3)</span></a> -- Read data fields from the current journal entry<br><a href="sd_journal_get_events.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_get_events</span>(3)</span></a> -- Journal change notification interface<br><a href="sd_journal_get_fd.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_get_fd</span>(3)</span></a> -- Journal change notification interface<br><a href="sd_journal_get_monotonic_usec.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_get_monotonic_usec</span>(3)</span></a> -- Read timestamps from the current journal entry<br><a href="sd_journal_get_realtime_usec.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_get_realtime_usec</span>(3)</span></a> -- Read timestamps from the current journal entry<br><a href="sd_journal_get_timeout.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_get_timeout</span>(3)</span></a> -- Journal change notification interface<br><a href="sd_journal_get_usage.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_get_usage</span>(3)</span></a> -- Journal disk usage<br><a href="SD_JOURNAL_INVALIDATE.html"><span class="citerefentry"><span class="refentrytitle">SD_JOURNAL_INVALIDATE</span>(3)</span></a> -- Journal change notification interface<br><a href="SD_JOURNAL_LOCAL_ONLY.html"><span class="citerefentry"><span class="refentrytitle">SD_JOURNAL_LOCAL_ONLY</span>(3)</span></a> -- Open the system journal for reading<br><a href="sd_journal_next.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_next</span>(3)</span></a> -- Advance or set back the read pointer in the journal<br><a href="sd_journal_next_skip.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_next_skip</span>(3)</span></a> -- Advance or set back the read pointer in the journal<br><a href="SD_JOURNAL_NOP.html"><span class="citerefentry"><span class="refentrytitle">SD_JOURNAL_NOP</span>(3)</span></a> -- Journal change notification interface<br><a href="sd_journal_open.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_open</span>(3)</span></a> -- Open the system journal for reading<br><a href="sd_journal_open_container.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_open_container</span>(3)</span></a> -- Open the system journal for reading<br><a href="sd_journal_open_directory.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_open_directory</span>(3)</span></a> -- Open the system journal for reading<br><a href="sd_journal_open_files.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_open_files</span>(3)</span></a> -- Open the system journal for reading<br><a href="sd_journal_perror.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_perror</span>(3)</span></a> -- Submit log entries to the journal<br><a href="sd_journal_previous.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_previous</span>(3)</span></a> -- Advance or set back the read pointer in the journal<br><a href="sd_journal_previous_skip.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_previous_skip</span>(3)</span></a> -- Advance or set back the read pointer in the journal<br><a href="sd_journal_print.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_print</span>(3)</span></a> -- Submit log entries to the journal<br><a href="sd_journal_printv.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_printv</span>(3)</span></a> -- Submit log entries to the journal<br><a href="sd_journal_process.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_process</span>(3)</span></a> -- Journal change notification interface<br><a href="sd_journal_query_unique.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_query_unique</span>(3)</span></a> -- Read unique data fields from the journal<br><a href="sd_journal_reliable_fd.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_reliable_fd</span>(3)</span></a> -- Journal change notification interface<br><a href="sd_journal_restart_data.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_restart_data</span>(3)</span></a> -- Read data fields from the current journal entry<br><a href="sd_journal_restart_unique.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_restart_unique</span>(3)</span></a> -- Read unique data fields from the journal<br><a href="SD_JOURNAL_RUNTIME_ONLY.html"><span class="citerefentry"><span class="refentrytitle">SD_JOURNAL_RUNTIME_ONLY</span>(3)</span></a> -- Open the system journal for reading<br><a href="sd_journal_seek_cursor.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_seek_cursor</span>(3)</span></a> -- Seek to a position in the journal<br><a href="sd_journal_seek_head.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_seek_head</span>(3)</span></a> -- Seek to a position in the journal<br><a href="sd_journal_seek_monotonic_usec.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_seek_monotonic_usec</span>(3)</span></a> -- Seek to a position in the journal<br><a href="sd_journal_seek_realtime_usec.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_seek_realtime_usec</span>(3)</span></a> -- Seek to a position in the journal<br><a href="sd_journal_seek_tail.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_seek_tail</span>(3)</span></a> -- Seek to a position in the journal<br><a href="sd_journal_send.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_send</span>(3)</span></a> -- Submit log entries to the journal<br><a href="sd_journal_sendv.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_sendv</span>(3)</span></a> -- Submit log entries to the journal<br><a href="sd_journal_set_data_threshold.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_set_data_threshold</span>(3)</span></a> -- Read data fields from the current journal entry<br><a href="sd_journal_stream_fd.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_stream_fd</span>(3)</span></a> -- Create log stream file descriptor to the journal<br><a href="SD_JOURNAL_SUPPRESS_LOCATION.html"><span class="citerefentry"><span class="refentrytitle">SD_JOURNAL_SUPPRESS_LOCATION</span>(3)</span></a> -- Submit log entries to the journal<br><a href="SD_JOURNAL_SYSTEM.html"><span class="citerefentry"><span class="refentrytitle">SD_JOURNAL_SYSTEM</span>(3)</span></a> -- Open the system journal for reading<br><a href="sd_journal_test_cursor.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_test_cursor</span>(3)</span></a> -- Get cursor string for or test cursor string against the current journal entry<br><a href="sd_journal_wait.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_wait</span>(3)</span></a> -- Journal change notification interface<br><a href="sd_listen_fds.html"><span class="citerefentry"><span class="refentrytitle">sd_listen_fds</span>(3)</span></a> -- Check for file descriptors passed by the system manager<br><a href="SD_LISTEN_FDS_START.html"><span class="citerefentry"><span class="refentrytitle">SD_LISTEN_FDS_START</span>(3)</span></a> -- Check for file descriptors passed by the system manager<br><a href="sd_login_monitor.html"><span class="citerefentry"><span class="refentrytitle">sd_login_monitor</span>(3)</span></a> -- Monitor login sessions, seats, users and virtual machines/containers<br><a href="sd_login_monitor_flush.html"><span class="citerefentry"><span class="refentrytitle">sd_login_monitor_flush</span>(3)</span></a> -- Monitor login sessions, seats, users and virtual machines/containers<br><a href="sd_login_monitor_get_events.html"><span class="citerefentry"><span class="refentrytitle">sd_login_monitor_get_events</span>(3)</span></a> -- Monitor login sessions, seats, users and virtual machines/containers<br><a href="sd_login_monitor_get_fd.html"><span class="citerefentry"><span class="refentrytitle">sd_login_monitor_get_fd</span>(3)</span></a> -- Monitor login sessions, seats, users and virtual machines/containers<br><a href="sd_login_monitor_get_timeout.html"><span class="citerefentry"><span class="refentrytitle">sd_login_monitor_get_timeout</span>(3)</span></a> -- Monitor login sessions, seats, users and virtual machines/containers<br><a href="sd_login_monitor_new.html"><span class="citerefentry"><span class="refentrytitle">sd_login_monitor_new</span>(3)</span></a> -- Monitor login sessions, seats, users and virtual machines/containers<br><a href="sd_login_monitor_unref.html"><span class="citerefentry"><span class="refentrytitle">sd_login_monitor_unref</span>(3)</span></a> -- Monitor login sessions, seats, users and virtual machines/containers<br><a href="SD_NOTICE.html"><span class="citerefentry"><span class="refentrytitle">SD_NOTICE</span>(3)</span></a> -- APIs for new-style daemons<br><a href="sd_notify.html"><span class="citerefentry"><span class="refentrytitle">sd_notify</span>(3)</span></a> -- Notify service manager about start-up completion and other daemon status changes<br><a href="sd_notifyf.html"><span class="citerefentry"><span class="refentrytitle">sd_notifyf</span>(3)</span></a> -- Notify service manager about start-up completion and other daemon status changes<br><a href="sd_peer_get_machine_name.html"><span class="citerefentry"><span class="refentrytitle">sd_peer_get_machine_name</span>(3)</span></a> -- Determine session, service, owner of a session, container/VM or slice of a specific PID or socket peer<br><a href="sd_peer_get_owner_uid.html"><span class="citerefentry"><span class="refentrytitle">sd_peer_get_owner_uid</span>(3)</span></a> -- Determine session, service, owner of a session, container/VM or slice of a specific PID or socket peer<br><a href="sd_peer_get_session.html"><span class="citerefentry"><span class="refentrytitle">sd_peer_get_session</span>(3)</span></a> -- Determine session, service, owner of a session, container/VM or slice of a specific PID or socket peer<br><a href="sd_peer_get_slice.html"><span class="citerefentry"><span class="refentrytitle">sd_peer_get_slice</span>(3)</span></a> -- Determine session, service, owner of a session, container/VM or slice of a specific PID or socket peer<br><a href="sd_peer_get_unit.html"><span class="citerefentry"><span class="refentrytitle">sd_peer_get_unit</span>(3)</span></a> -- Determine session, service, owner of a session, container/VM or slice of a specific PID or socket peer<br><a href="sd_peer_get_user_unit.html"><span class="citerefentry"><span class="refentrytitle">sd_peer_get_user_unit</span>(3)</span></a> -- Determine session, service, owner of a session, container/VM or slice of a specific PID or socket peer<br><a href="sd_pid_get_machine_name.html"><span class="citerefentry"><span class="refentrytitle">sd_pid_get_machine_name</span>(3)</span></a> -- Determine session, service, owner of a session, container/VM or slice of a specific PID or socket peer<br><a href="sd_pid_get_owner_uid.html"><span class="citerefentry"><span class="refentrytitle">sd_pid_get_owner_uid</span>(3)</span></a> -- Determine session, service, owner of a session, container/VM or slice of a specific PID or socket peer<br><a href="sd_pid_get_session.html"><span class="citerefentry"><span class="refentrytitle">sd_pid_get_session</span>(3)</span></a> -- Determine session, service, owner of a session, container/VM or slice of a specific PID or socket peer<br><a href="sd_pid_get_slice.html"><span class="citerefentry"><span class="refentrytitle">sd_pid_get_slice</span>(3)</span></a> -- Determine session, service, owner of a session, container/VM or slice of a specific PID or socket peer<br><a href="sd_pid_get_unit.html"><span class="citerefentry"><span class="refentrytitle">sd_pid_get_unit</span>(3)</span></a> -- Determine session, service, owner of a session, container/VM or slice of a specific PID or socket peer<br><a href="sd_pid_get_user_unit.html"><span class="citerefentry"><span class="refentrytitle">sd_pid_get_user_unit</span>(3)</span></a> -- Determine session, service, owner of a session, container/VM or slice of a specific PID or socket peer<br><a href="sd_readahead.html"><span class="citerefentry"><span class="refentrytitle">sd_readahead</span>(3)</span></a> -- Control ongoing disk boot-time read-ahead operations<br><a href="sd_seat_can_graphical.html"><span class="citerefentry"><span class="refentrytitle">sd_seat_can_graphical</span>(3)</span></a> -- Determine state of a specific seat<br><a href="sd_seat_can_multi_session.html"><span class="citerefentry"><span class="refentrytitle">sd_seat_can_multi_session</span>(3)</span></a> -- Determine state of a specific seat<br><a href="sd_seat_can_tty.html"><span class="citerefentry"><span class="refentrytitle">sd_seat_can_tty</span>(3)</span></a> -- Determine state of a specific seat<br><a href="sd_seat_get_active.html"><span class="citerefentry"><span class="refentrytitle">sd_seat_get_active</span>(3)</span></a> -- Determine state of a specific seat<br><a href="sd_seat_get_sessions.html"><span class="citerefentry"><span class="refentrytitle">sd_seat_get_sessions</span>(3)</span></a> -- Determine state of a specific seat<br><a href="sd_session_get_class.html"><span class="citerefentry"><span class="refentrytitle">sd_session_get_class</span>(3)</span></a> -- Determine state of a specific session<br><a href="sd_session_get_display.html"><span class="citerefentry"><span class="refentrytitle">sd_session_get_display</span>(3)</span></a> -- Determine state of a specific session<br><a href="sd_session_get_remote_host.html"><span class="citerefentry"><span class="refentrytitle">sd_session_get_remote_host</span>(3)</span></a> -- Determine state of a specific session<br><a href="sd_session_get_remote_user.html"><span class="citerefentry"><span class="refentrytitle">sd_session_get_remote_user</span>(3)</span></a> -- Determine state of a specific session<br><a href="sd_session_get_seat.html"><span class="citerefentry"><span class="refentrytitle">sd_session_get_seat</span>(3)</span></a> -- Determine state of a specific session<br><a href="sd_session_get_service.html"><span class="citerefentry"><span class="refentrytitle">sd_session_get_service</span>(3)</span></a> -- Determine state of a specific session<br><a href="sd_session_get_state.html"><span class="citerefentry"><span class="refentrytitle">sd_session_get_state</span>(3)</span></a> -- Determine state of a specific session<br><a href="sd_session_get_tty.html"><span class="citerefentry"><span class="refentrytitle">sd_session_get_tty</span>(3)</span></a> -- Determine state of a specific session<br><a href="sd_session_get_type.html"><span class="citerefentry"><span class="refentrytitle">sd_session_get_type</span>(3)</span></a> -- Determine state of a specific session<br><a href="sd_session_get_uid.html"><span class="citerefentry"><span class="refentrytitle">sd_session_get_uid</span>(3)</span></a> -- Determine state of a specific session<br><a href="sd_session_get_vt.html"><span class="citerefentry"><span class="refentrytitle">sd_session_get_vt</span>(3)</span></a> -- Determine state of a specific session<br><a href="sd_session_is_active.html"><span class="citerefentry"><span class="refentrytitle">sd_session_is_active</span>(3)</span></a> -- Determine state of a specific session<br><a href="sd_session_is_remote.html"><span class="citerefentry"><span class="refentrytitle">sd_session_is_remote</span>(3)</span></a> -- Determine state of a specific session<br><a href="sd_uid_get_display.html"><span class="citerefentry"><span class="refentrytitle">sd_uid_get_display</span>(3)</span></a> -- Determine login state of a specific Unix user ID<br><a href="sd_uid_get_seats.html"><span class="citerefentry"><span class="refentrytitle">sd_uid_get_seats</span>(3)</span></a> -- Determine login state of a specific Unix user ID<br><a href="sd_uid_get_sessions.html"><span class="citerefentry"><span class="refentrytitle">sd_uid_get_sessions</span>(3)</span></a> -- Determine login state of a specific Unix user ID<br><a href="sd_uid_get_state.html"><span class="citerefentry"><span class="refentrytitle">sd_uid_get_state</span>(3)</span></a> -- Determine login state of a specific Unix user ID<br><a href="sd_uid_is_on_seat.html"><span class="citerefentry"><span class="refentrytitle">sd_uid_is_on_seat</span>(3)</span></a> -- Determine login state of a specific Unix user ID<br><a href="SD_WARNING.html"><span class="citerefentry"><span class="refentrytitle">SD_WARNING</span>(3)</span></a> -- APIs for new-style daemons<br><a href="sd_watchdog_enabled.html"><span class="citerefentry"><span class="refentrytitle">sd_watchdog_enabled</span>(3)</span></a> -- Check whether the service manager expects watchdog keep-alive notifications from a service<br><a href="shutdown.html"><span class="citerefentry"><span class="refentrytitle">shutdown</span>(8)</span></a> -- Halt, power-off or reboot the machine<br><a href="sysctl.d.html"><span class="citerefentry"><span class="refentrytitle">sysctl.d</span>(5)</span></a> -- Configure kernel parameters at boot<br><a href="systemctl.html"><span class="citerefentry"><span class="refentrytitle">systemctl</span>(1)</span></a> -- Control the systemd system and service manager<br><a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a> -- systemd system and service manager<br><a href="systemd-activate.html"><span class="citerefentry"><span class="refentrytitle">systemd-activate</span>(8)</span></a> -- Test socket activation of daemons<br><a href="systemd-analyze.html"><span class="citerefentry"><span class="refentrytitle">systemd-analyze</span>(1)</span></a> -- Analyze system boot-up performance<br><a href="systemd-ask-password.html"><span class="citerefentry"><span class="refentrytitle">systemd-ask-password</span>(1)</span></a> -- Query the user for a system password<br><a href="systemd-ask-password-console.path.html"><span class="citerefentry"><span class="refentrytitle">systemd-ask-password-console.path</span>(8)</span></a> -- Query the user for system passwords on the console and via wall<br><a href="systemd-ask-password-console.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-ask-password-console.service</span>(8)</span></a> -- Query the user for system passwords on the console and via wall<br><a href="systemd-ask-password-wall.path.html"><span class="citerefentry"><span class="refentrytitle">systemd-ask-password-wall.path</span>(8)</span></a> -- Query the user for system passwords on the console and via wall<br><a href="systemd-ask-password-wall.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-ask-password-wall.service</span>(8)</span></a> -- Query the user for system passwords on the console and via wall<br><a href="systemd-backlight.html"><span class="citerefentry"><span class="refentrytitle">systemd-backlight</span>(8)</span></a> -- Load and save the display backlight brightness at boot and shutdown<br><a href="systemd-backlight@.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-backlight@.service</span>(8)</span></a> -- Load and save the display backlight brightness at boot and shutdown<br><a href="systemd-binfmt.html"><span class="citerefentry"><span class="refentrytitle">systemd-binfmt</span>(8)</span></a> -- Configure additional binary formats for executables at boot<br><a href="systemd-binfmt.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-binfmt.service</span>(8)</span></a> -- Configure additional binary formats for executables at boot<br><a href="systemd-bootchart.html"><span class="citerefentry"><span class="refentrytitle">systemd-bootchart</span>(1)</span></a> -- Boot performance graphing tool<br><a href="systemd-bus-proxyd.html"><span class="citerefentry"><span class="refentrytitle">systemd-bus-proxyd</span>(8)</span></a> -- Connect STDIO or a socket to a given bus address<br><a href="systemd-bus-proxyd.socket.html"><span class="citerefentry"><span class="refentrytitle">systemd-bus-proxyd.socket</span>(8)</span></a> -- Proxy classic D-Bus clients to kdbus<br><a href="systemd-bus-proxyd@.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-bus-proxyd@.service</span>(8)</span></a> -- Proxy classic D-Bus clients to kdbus<br><a href="systemd-cat.html"><span class="citerefentry"><span class="refentrytitle">systemd-cat</span>(1)</span></a> -- Connect a pipeline or program's output with the journal<br><a href="systemd-cgls.html"><span class="citerefentry"><span class="refentrytitle">systemd-cgls</span>(1)</span></a> -- Recursively show control group contents<br><a href="systemd-cgtop.html"><span class="citerefentry"><span class="refentrytitle">systemd-cgtop</span>(1)</span></a> -- Show top control groups by their resource usage<br><a href="systemd-coredumpctl.html"><span class="citerefentry"><span class="refentrytitle">systemd-coredumpctl</span>(1)</span></a> -- Retrieve coredumps from the journal<br><a href="systemd-cryptsetup.html"><span class="citerefentry"><span class="refentrytitle">systemd-cryptsetup</span>(8)</span></a> -- Full disk decryption logic<br><a href="systemd-cryptsetup-generator.html"><span class="citerefentry"><span class="refentrytitle">systemd-cryptsetup-generator</span>(8)</span></a> -- Unit generator for<br><a href="systemd-cryptsetup@.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-cryptsetup@.service</span>(8)</span></a> -- Full disk decryption logic<br><a href="systemd-delta.html"><span class="citerefentry"><span class="refentrytitle">systemd-delta</span>(1)</span></a> -- Find overridden configuration files<br><a href="systemd-detect-virt.html"><span class="citerefentry"><span class="refentrytitle">systemd-detect-virt</span>(1)</span></a> -- Detect execution in a virtualized environment<br><a href="systemd-efi-boot-generator.html"><span class="citerefentry"><span class="refentrytitle">systemd-efi-boot-generator</span>(8)</span></a> -- Generator for automatically mounting the EFI System Partition used by the current boot to<br><a href="systemd-fsck.html"><span class="citerefentry"><span class="refentrytitle">systemd-fsck</span>(8)</span></a> -- File system checker logic<br><a href="systemd-fsck-root.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-fsck-root.service</span>(8)</span></a> -- File system checker logic<br><a href="systemd-fsck@.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-fsck@.service</span>(8)</span></a> -- File system checker logic<br><a href="systemd-fstab-generator.html"><span class="citerefentry"><span class="refentrytitle">systemd-fstab-generator</span>(8)</span></a> -- Unit generator for /etc/fstab<br><a href="systemd-getty-generator.html"><span class="citerefentry"><span class="refentrytitle">systemd-getty-generator</span>(8)</span></a> -- Generator for enabling getty instances on the console<br><a href="systemd-gpt-auto-generator.html"><span class="citerefentry"><span class="refentrytitle">systemd-gpt-auto-generator</span>(8)</span></a> -- Generator for automatically discovering and mounting root,<br><a href="systemd-halt.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-halt.service</span>(8)</span></a> -- System shutdown logic<br><a href="systemd-hibernate.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-hibernate.service</span>(8)</span></a> -- System sleep state logic<br><a href="systemd-hostnamed.html"><span class="citerefentry"><span class="refentrytitle">systemd-hostnamed</span>(8)</span></a> -- Host name bus mechanism<br><a href="systemd-hostnamed.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-hostnamed.service</span>(8)</span></a> -- Host name bus mechanism<br><a href="systemd-hybrid-sleep.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-hybrid-sleep.service</span>(8)</span></a> -- System sleep state logic<br><a href="systemd-inhibit.html"><span class="citerefentry"><span class="refentrytitle">systemd-inhibit</span>(1)</span></a> -- Execute a program with an inhibition lock taken<br><a href="systemd-initctl.html"><span class="citerefentry"><span class="refentrytitle">systemd-initctl</span>(8)</span></a> -- /dev/initctl compatibility<br><a href="systemd-initctl.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-initctl.service</span>(8)</span></a> -- /dev/initctl compatibility<br><a href="systemd-initctl.socket.html"><span class="citerefentry"><span class="refentrytitle">systemd-initctl.socket</span>(8)</span></a> -- /dev/initctl compatibility<br><a href="systemd-journal-gatewayd.html"><span class="citerefentry"><span class="refentrytitle">systemd-journal-gatewayd</span>(8)</span></a> -- HTTP server for journal events<br><a href="systemd-journal-gatewayd.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-journal-gatewayd.service</span>(8)</span></a> -- HTTP server for journal events<br><a href="systemd-journal-gatewayd.socket.html"><span class="citerefentry"><span class="refentrytitle">systemd-journal-gatewayd.socket</span>(8)</span></a> -- HTTP server for journal events<br><a href="systemd-journal-remote.html"><span class="citerefentry"><span class="refentrytitle">systemd-journal-remote</span>(8)</span></a> -- Stream journal messages over the network<br><a href="systemd-journald.html"><span class="citerefentry"><span class="refentrytitle">systemd-journald</span>(8)</span></a> -- Journal service<br><a href="systemd-journald-dev-log.socket.html"><span class="citerefentry"><span class="refentrytitle">systemd-journald-dev-log.socket</span>(8)</span></a> -- Journal service<br><a href="systemd-journald.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-journald.service</span>(8)</span></a> -- Journal service<br><a href="systemd-journald.socket.html"><span class="citerefentry"><span class="refentrytitle">systemd-journald.socket</span>(8)</span></a> -- Journal service<br><a href="systemd-kexec.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-kexec.service</span>(8)</span></a> -- System shutdown logic<br><a href="systemd-localed.html"><span class="citerefentry"><span class="refentrytitle">systemd-localed</span>(8)</span></a> -- Locale bus mechanism<br><a href="systemd-localed.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-localed.service</span>(8)</span></a> -- Locale bus mechanism<br><a href="systemd-logind.html"><span class="citerefentry"><span class="refentrytitle">systemd-logind</span>(8)</span></a> -- Login manager<br><a href="systemd-logind.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-logind.service</span>(8)</span></a> -- Login manager<br><a href="systemd-machine-id-setup.html"><span class="citerefentry"><span class="refentrytitle">systemd-machine-id-setup</span>(1)</span></a> -- Initialize the machine ID in /etc/machine-id<br><a href="systemd-machined.html"><span class="citerefentry"><span class="refentrytitle">systemd-machined</span>(8)</span></a> -- Virtual machine and container registration manager<br><a href="systemd-machined.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-machined.service</span>(8)</span></a> -- Virtual machine and container registration manager<br><a href="systemd-modules-load.html"><span class="citerefentry"><span class="refentrytitle">systemd-modules-load</span>(8)</span></a> -- Configure kernel modules to load at boot<br><a href="systemd-modules-load.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-modules-load.service</span>(8)</span></a> -- Configure kernel modules to load at boot<br><a href="systemd-networkd.html"><span class="citerefentry"><span class="refentrytitle">systemd-networkd</span>(8)</span></a> -- Network manager<br><a href="systemd-networkd-wait-online.html"><span class="citerefentry"><span class="refentrytitle">systemd-networkd-wait-online</span>(8)</span></a> -- Wait for network to come online<br><a href="systemd-networkd-wait-online.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-networkd-wait-online.service</span>(8)</span></a> -- Wait for network to come online<br><a href="systemd-networkd.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-networkd.service</span>(8)</span></a> -- Network manager<br><a href="systemd-notify.html"><span class="citerefentry"><span class="refentrytitle">systemd-notify</span>(1)</span></a> -- Notify service manager about start-up completion and other daemon status changes<br><a href="systemd-nspawn.html"><span class="citerefentry"><span class="refentrytitle">systemd-nspawn</span>(1)</span></a> -- Spawn a namespace container for debugging, testing and building<br><a href="systemd-poweroff.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-poweroff.service</span>(8)</span></a> -- System shutdown logic<br><a href="systemd-quotacheck.html"><span class="citerefentry"><span class="refentrytitle">systemd-quotacheck</span>(8)</span></a> -- File system quota checker logic<br><a href="systemd-quotacheck.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-quotacheck.service</span>(8)</span></a> -- File system quota checker logic<br><a href="systemd-random-seed.html"><span class="citerefentry"><span class="refentrytitle">systemd-random-seed</span>(8)</span></a> -- Load and save the system random seed at boot and shutdown<br><a href="systemd-random-seed.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-random-seed.service</span>(8)</span></a> -- Load and save the system random seed at boot and shutdown<br><a href="systemd-readahead.html"><span class="citerefentry"><span class="refentrytitle">systemd-readahead</span>(8)</span></a> -- Disk read ahead logic<br><a href="systemd-readahead-collect.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-readahead-collect.service</span>(8)</span></a> -- Disk read ahead logic<br><a href="systemd-readahead-done.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-readahead-done.service</span>(8)</span></a> -- Disk read ahead logic<br><a href="systemd-readahead-done.timer.html"><span class="citerefentry"><span class="refentrytitle">systemd-readahead-done.timer</span>(8)</span></a> -- Disk read ahead logic<br><a href="systemd-readahead-replay.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-readahead-replay.service</span>(8)</span></a> -- Disk read ahead logic<br><a href="systemd-reboot.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-reboot.service</span>(8)</span></a> -- System shutdown logic<br><a href="systemd-remount-fs.html"><span class="citerefentry"><span class="refentrytitle">systemd-remount-fs</span>(8)</span></a> -- Remount root and kernel file systems<br><a href="systemd-remount-fs.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-remount-fs.service</span>(8)</span></a> -- Remount root and kernel file systems<br><a href="systemd-resolved.html"><span class="citerefentry"><span class="refentrytitle">systemd-resolved</span>(8)</span></a> -- Network Name Resolution manager<br><a href="systemd-resolved.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-resolved.service</span>(8)</span></a> -- Network Name Resolution manager<br><a href="systemd-rfkill.html"><span class="citerefentry"><span class="refentrytitle">systemd-rfkill</span>(8)</span></a> -- Load and save the RF kill switch state at boot and shutdown<br><a href="systemd-rfkill@.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-rfkill@.service</span>(8)</span></a> -- Load and save the RF kill switch state at boot and shutdown<br><a href="systemd-run.html"><span class="citerefentry"><span class="refentrytitle">systemd-run</span>(1)</span></a> -- Run programs in transient scope or service units<br><a href="systemd-shutdown.html"><span class="citerefentry"><span class="refentrytitle">systemd-shutdown</span>(8)</span></a> -- System shutdown logic<br><a href="systemd-shutdownd.html"><span class="citerefentry"><span class="refentrytitle">systemd-shutdownd</span>(8)</span></a> -- Scheduled shutdown service<br><a href="systemd-shutdownd.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-shutdownd.service</span>(8)</span></a> -- Scheduled shutdown service<br><a href="systemd-shutdownd.socket.html"><span class="citerefentry"><span class="refentrytitle">systemd-shutdownd.socket</span>(8)</span></a> -- Scheduled shutdown service<br><a href="systemd-sleep.html"><span class="citerefentry"><span class="refentrytitle">systemd-sleep</span>(8)</span></a> -- System sleep state logic<br><a href="systemd-sleep.conf.html"><span class="citerefentry"><span class="refentrytitle">systemd-sleep.conf</span>(5)</span></a> -- Suspend and hibernation configuration file<br><a href="systemd-socket-proxyd.html"><span class="citerefentry"><span class="refentrytitle">systemd-socket-proxyd</span>(8)</span></a> -- Bidirectionally proxy local sockets to another (possibly remote) socket.<br><a href="systemd-suspend.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-suspend.service</span>(8)</span></a> -- System sleep state logic<br><a href="systemd-sysctl.html"><span class="citerefentry"><span class="refentrytitle">systemd-sysctl</span>(8)</span></a> -- Configure kernel parameters at boot<br><a href="systemd-sysctl.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-sysctl.service</span>(8)</span></a> -- Configure kernel parameters at boot<br><a href="systemd-system-update-generator.html"><span class="citerefentry"><span class="refentrytitle">systemd-system-update-generator</span>(8)</span></a> -- Generator for redirecting boot to offline update mode<br><a href="systemd-system.conf.html"><span class="citerefentry"><span class="refentrytitle">systemd-system.conf</span>(5)</span></a> -- System and session service manager configuration file<br><a href="systemd-timedated.html"><span class="citerefentry"><span class="refentrytitle">systemd-timedated</span>(8)</span></a> -- Time and date bus mechanism<br><a href="systemd-timedated.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-timedated.service</span>(8)</span></a> -- Time and date bus mechanism<br><a href="systemd-timesyncd.html"><span class="citerefentry"><span class="refentrytitle">systemd-timesyncd</span>(8)</span></a> -- Network Time Synchronization<br><a href="systemd-timesyncd.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-timesyncd.service</span>(8)</span></a> -- Network Time Synchronization<br><a href="systemd-tmpfiles.html"><span class="citerefentry"><span class="refentrytitle">systemd-tmpfiles</span>(8)</span></a> -- Creates, deletes and cleans up volatile and temporary files and directories<br><a href="systemd-tmpfiles-clean.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-tmpfiles-clean.service</span>(8)</span></a> -- Creates, deletes and cleans up volatile and temporary files and directories<br><a href="systemd-tmpfiles-clean.timer.html"><span class="citerefentry"><span class="refentrytitle">systemd-tmpfiles-clean.timer</span>(8)</span></a> -- Creates, deletes and cleans up volatile and temporary files and directories<br><a href="systemd-tmpfiles-setup-dev.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-tmpfiles-setup-dev.service</span>(8)</span></a> -- Creates, deletes and cleans up volatile and temporary files and directories<br><a href="systemd-tmpfiles-setup.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-tmpfiles-setup.service</span>(8)</span></a> -- Creates, deletes and cleans up volatile and temporary files and directories<br><a href="systemd-tty-ask-password-agent.html"><span class="citerefentry"><span class="refentrytitle">systemd-tty-ask-password-agent</span>(1)</span></a> -- List or process pending systemd password requests<br><a href="systemd-udevd.html"><span class="citerefentry"><span class="refentrytitle">systemd-udevd</span>(8)</span></a> -- Device event managing daemon<br><a href="systemd-udevd-control.socket.html"><span class="citerefentry"><span class="refentrytitle">systemd-udevd-control.socket</span>(8)</span></a> -- Device event managing daemon<br><a href="systemd-udevd-kernel.socket.html"><span class="citerefentry"><span class="refentrytitle">systemd-udevd-kernel.socket</span>(8)</span></a> -- Device event managing daemon<br><a href="systemd-udevd.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-udevd.service</span>(8)</span></a> -- Device event managing daemon<br><a href="systemd-update-utmp.html"><span class="citerefentry"><span class="refentrytitle">systemd-update-utmp</span>(8)</span></a> -- Write audit and utmp updates at bootup, runlevel changes and shutdown<br><a href="systemd-update-utmp-runlevel.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-update-utmp-runlevel.service</span>(8)</span></a> -- Write audit and utmp updates at bootup, runlevel changes and shutdown<br><a href="systemd-update-utmp.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-update-utmp.service</span>(8)</span></a> -- Write audit and utmp updates at bootup, runlevel changes and shutdown<br><a href="systemd-user-sessions.html"><span class="citerefentry"><span class="refentrytitle">systemd-user-sessions</span>(8)</span></a> -- Permit user logins after boot, prohibit user logins at shutdown<br><a href="systemd-user-sessions.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-user-sessions.service</span>(8)</span></a> -- Permit user logins after boot, prohibit user logins at shutdown<br><a href="systemd-user.conf.html"><span class="citerefentry"><span class="refentrytitle">systemd-user.conf</span>(5)</span></a> -- System and session service manager configuration file<br><a href="systemd-vconsole-setup.html"><span class="citerefentry"><span class="refentrytitle">systemd-vconsole-setup</span>(8)</span></a> -- Configure the virtual console at boot<br><a href="systemd-vconsole-setup.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-vconsole-setup.service</span>(8)</span></a> -- Configure the virtual console at boot<br><a href="systemd.automount.html"><span class="citerefentry"><span class="refentrytitle">systemd.automount</span>(5)</span></a> -- Automount unit configuration<br><a href="systemd.device.html"><span class="citerefentry"><span class="refentrytitle">systemd.device</span>(5)</span></a> -- Device unit configuration<br><a href="systemd.directives.html"><span class="citerefentry"><span class="refentrytitle">systemd.directives</span>(7)</span></a> -- Index of configuration directives<br><a href="systemd.exec.html"><span class="citerefentry"><span class="refentrytitle">systemd.exec</span>(5)</span></a> -- Execution environment configuration<br><a href="systemd.journal-fields.html"><span class="citerefentry"><span class="refentrytitle">systemd.journal-fields</span>(7)</span></a> -- Special journal fields<br><a href="systemd.kill.html"><span class="citerefentry"><span class="refentrytitle">systemd.kill</span>(5)</span></a> -- Process killing procedure configuration<br><a href="systemd.link.html"><span class="citerefentry"><span class="refentrytitle">systemd.link</span>(5)</span></a> -- Network device configuration<br><a href="systemd.mount.html"><span class="citerefentry"><span class="refentrytitle">systemd.mount</span>(5)</span></a> -- Mount unit configuration<br><a href="systemd.netdev.html"><span class="citerefentry"><span class="refentrytitle">systemd.netdev</span>(5)</span></a> -- Virtual Network Device configuration<br><a href="systemd.network.html"><span class="citerefentry"><span class="refentrytitle">systemd.network</span>(5)</span></a> -- Network configuration<br><a href="systemd.path.html"><span class="citerefentry"><span class="refentrytitle">systemd.path</span>(5)</span></a> -- Path unit configuration<br><a href="systemd.preset.html"><span class="citerefentry"><span class="refentrytitle">systemd.preset</span>(5)</span></a> -- Service enablement presets<br><a href="systemd.resource-control.html"><span class="citerefentry"><span class="refentrytitle">systemd.resource-control</span>(5)</span></a> -- Resource control unit settings<br><a href="systemd.scope.html"><span class="citerefentry"><span class="refentrytitle">systemd.scope</span>(5)</span></a> -- Scope unit configuration<br><a href="systemd.service.html"><span class="citerefentry"><span class="refentrytitle">systemd.service</span>(5)</span></a> -- Service unit configuration<br><a href="systemd.slice.html"><span class="citerefentry"><span class="refentrytitle">systemd.slice</span>(5)</span></a> -- Slice unit configuration<br><a href="systemd.snapshot.html"><span class="citerefentry"><span class="refentrytitle">systemd.snapshot</span>(5)</span></a> -- Snapshot unit configuration<br><a href="systemd.socket.html"><span class="citerefentry"><span class="refentrytitle">systemd.socket</span>(5)</span></a> -- Socket unit configuration<br><a href="systemd.special.html"><span class="citerefentry"><span class="refentrytitle">systemd.special</span>(7)</span></a> -- Special systemd units<br><a href="systemd.swap.html"><span class="citerefentry"><span class="refentrytitle">systemd.swap</span>(5)</span></a> -- Swap unit configuration<br><a href="systemd.target.html"><span class="citerefentry"><span class="refentrytitle">systemd.target</span>(5)</span></a> -- Target unit configuration<br><a href="systemd.time.html"><span class="citerefentry"><span class="refentrytitle">systemd.time</span>(7)</span></a> -- Time and date specifications<br><a href="systemd.timer.html"><span class="citerefentry"><span class="refentrytitle">systemd.timer</span>(5)</span></a> -- Timer unit configuration<br><a href="systemd.unit.html"><span class="citerefentry"><span class="refentrytitle">systemd.unit</span>(5)</span></a> -- Unit configuration<br></p></div><div class="refsect1"><a name="idm214189595360"></a><h2 id="T">T<a class="headerlink" title="Permalink to this headline" href="#T">¶</a></h2><p><a href="telinit.html"><span class="citerefentry"><span class="refentrytitle">telinit</span>(8)</span></a> -- Change SysV runlevel<br><a href="timedatectl.html"><span class="citerefentry"><span class="refentrytitle">timedatectl</span>(1)</span></a> -- Control the system time and date<br><a href="tmpfiles.d.html"><span class="citerefentry"><span class="refentrytitle">tmpfiles.d</span>(5)</span></a> -- Configuration for creation, deletion and cleaning of volatile and temporary files<br></p></div><div class="refsect1"><a name="idm214189591968"></a><h2 id="U">U<a class="headerlink" title="Permalink to this headline" href="#U">¶</a></h2><p><a href="udev.html"><span class="citerefentry"><span class="refentrytitle">udev</span>(7)</span></a> -- Dynamic device management<br><a href="udevadm.html"><span class="citerefentry"><span class="refentrytitle">udevadm</span>(8)</span></a> -- udev management tool<br></p></div><div class="refsect1"><a name="idm214189589568"></a><h2 id="V">V<a class="headerlink" title="Permalink to this headline" href="#V">¶</a></h2><p><a href="vconsole.conf.html"><span class="citerefentry"><span class="refentrytitle">vconsole.conf</span>(5)</span></a> -- Configuration file for the virtual console<br></p></div><div class="refsect1"><a name="idm214189588096"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="systemd.index"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>systemd.index — List all manpages from the systemd project</p></div><div class="refsect1"><a name="idm214175805536"></a><h2 id="B">B<a class="headerlink" title="Permalink to this headline" href="#B">¶</a></h2><p><a href="binfmt.d.html"><span class="citerefentry"><span class="refentrytitle">binfmt.d</span>(5)</span></a> -- Configure additional binary formats for executables at boot<br><a href="bootchart.conf.html"><span class="citerefentry"><span class="refentrytitle">bootchart.conf</span>(5)</span></a> -- Boot performance analysis graphing tool configuration file<br><a href="bootctl.html"><span class="citerefentry"><span class="refentrytitle">bootctl</span>(1)</span></a> -- Control the firmware and boot manager settings<br><a href="bootup.html"><span class="citerefentry"><span class="refentrytitle">bootup</span>(7)</span></a> -- System bootup process<br><a href="busctl.html"><span class="citerefentry"><span class="refentrytitle">busctl</span>(1)</span></a> -- Introspect the bus<br></p></div><div class="refsect1"><a name="idm214175800544"></a><h2 id="C">C<a class="headerlink" title="Permalink to this headline" href="#C">¶</a></h2><p><a href="coredump.conf.html"><span class="citerefentry"><span class="refentrytitle">coredump.conf</span>(5)</span></a> -- Coredump storage configuration file<br><a href="coredumpctl.html"><span class="citerefentry"><span class="refentrytitle">coredumpctl</span>(1)</span></a> -- Retrieve coredumps from the journal<br><a href="crypttab.html"><span class="citerefentry"><span class="refentrytitle">crypttab</span>(5)</span></a> -- Configuration for encrypted block devices<br></p></div><div class="refsect1"><a name="idm214175797344"></a><h2 id="D">D<a class="headerlink" title="Permalink to this headline" href="#D">¶</a></h2><p><a href="daemon.html"><span class="citerefentry"><span class="refentrytitle">daemon</span>(7)</span></a> -- Writing and packaging system daemons<br></p></div><div class="refsect1"><a name="idm214175795936"></a><h2 id="F">F<a class="headerlink" title="Permalink to this headline" href="#F">¶</a></h2><p><a href="file-hierarchy.html"><span class="citerefentry"><span class="refentrytitle">file-hierarchy</span>(7)</span></a> -- File system hierarchy overview<br></p></div><div class="refsect1"><a name="idm214175794528"></a><h2 id="H">H<a class="headerlink" title="Permalink to this headline" href="#H">¶</a></h2><p><a href="halt.html"><span class="citerefentry"><span class="refentrytitle">halt</span>(8)</span></a> -- Halt, power-off or reboot the machine<br><a href="hostname.html"><span class="citerefentry"><span class="refentrytitle">hostname</span>(5)</span></a> -- Local hostname configuration file<br><a href="hostnamectl.html"><span class="citerefentry"><span class="refentrytitle">hostnamectl</span>(1)</span></a> -- Control the system hostname<br></p></div><div class="refsect1"><a name="idm214175791328"></a><h2 id="I">I<a class="headerlink" title="Permalink to this headline" href="#I">¶</a></h2><p><a href="init.html"><span class="citerefentry"><span class="refentrytitle">init</span>(1)</span></a> -- systemd system and service manager<br></p></div><div class="refsect1"><a name="idm214175789920"></a><h2 id="J">J<a class="headerlink" title="Permalink to this headline" href="#J">¶</a></h2><p><a href="journalctl.html"><span class="citerefentry"><span class="refentrytitle">journalctl</span>(1)</span></a> -- Query the systemd journal<br><a href="journald.conf.html"><span class="citerefentry"><span class="refentrytitle">journald.conf</span>(5)</span></a> -- Journal service configuration file<br></p></div><div class="refsect1"><a name="idm214175855872"></a><h2 id="K">K<a class="headerlink" title="Permalink to this headline" href="#K">¶</a></h2><p><a href="kernel-command-line.html"><span class="citerefentry"><span class="refentrytitle">kernel-command-line</span>(7)</span></a> -- Kernel command line parameters<br><a href="kernel-install.html"><span class="citerefentry"><span class="refentrytitle">kernel-install</span>(8)</span></a> -- Add and remove kernel and initramfs images to and from /boot<br></p></div><div class="refsect1"><a name="idm214175764816"></a><h2 id="L">L<a class="headerlink" title="Permalink to this headline" href="#L">¶</a></h2><p><a href="locale.conf.html"><span class="citerefentry"><span class="refentrytitle">locale.conf</span>(5)</span></a> -- Configuration file for locale settings<br><a href="localectl.html"><span class="citerefentry"><span class="refentrytitle">localectl</span>(1)</span></a> -- Control the system locale and keyboard layout settings<br><a href="localtime.html"><span class="citerefentry"><span class="refentrytitle">localtime</span>(5)</span></a> -- Local timezone configuration file<br><a href="loginctl.html"><span class="citerefentry"><span class="refentrytitle">loginctl</span>(1)</span></a> -- Control the systemd login manager<br><a href="logind.conf.html"><span class="citerefentry"><span class="refentrytitle">logind.conf</span>(5)</span></a> -- Login manager configuration file<br></p></div><div class="refsect1"><a name="idm214175759824"></a><h2 id="M">M<a class="headerlink" title="Permalink to this headline" href="#M">¶</a></h2><p><a href="machine-id.html"><span class="citerefentry"><span class="refentrytitle">machine-id</span>(5)</span></a> -- Local machine ID configuration file<br><a href="machine-info.html"><span class="citerefentry"><span class="refentrytitle">machine-info</span>(5)</span></a> -- Local machine information file<br><a href="machinectl.html"><span class="citerefentry"><span class="refentrytitle">machinectl</span>(1)</span></a> -- Control the systemd machine manager<br><a href="modules-load.d.html"><span class="citerefentry"><span class="refentrytitle">modules-load.d</span>(5)</span></a> -- Configure kernel modules to load at boot<br></p></div><div class="refsect1"><a name="idm214175755728"></a><h2 id="N">N<a class="headerlink" title="Permalink to this headline" href="#N">¶</a></h2><p><a href="nss-myhostname.html"><span class="citerefentry"><span class="refentrytitle">nss-myhostname</span>(8)</span></a> -- Provide hostname resolution for the locally configured system hostname.<br></p></div><div class="refsect1"><a name="idm214175754320"></a><h2 id="O">O<a class="headerlink" title="Permalink to this headline" href="#O">¶</a></h2><p><a href="os-release.html"><span class="citerefentry"><span class="refentrytitle">os-release</span>(5)</span></a> -- Operating system identification<br></p></div><div class="refsect1"><a name="idm214175752912"></a><h2 id="P">P<a class="headerlink" title="Permalink to this headline" href="#P">¶</a></h2><p><a href="pam_systemd.html"><span class="citerefentry"><span class="refentrytitle">pam_systemd</span>(8)</span></a> -- Register user sessions in the systemd login manager<br><a href="poweroff.html"><span class="citerefentry"><span class="refentrytitle">poweroff</span>(8)</span></a> -- Halt, power-off or reboot the machine<br></p></div><div class="refsect1"><a name="idm214175750608"></a><h2 id="R">R<a class="headerlink" title="Permalink to this headline" href="#R">¶</a></h2><p><a href="reboot.html"><span class="citerefentry"><span class="refentrytitle">reboot</span>(8)</span></a> -- Halt, power-off or reboot the machine<br><a href="resolved.conf.html"><span class="citerefentry"><span class="refentrytitle">resolved.conf</span>(5)</span></a> -- Network Name Resolution configuration file<br><a href="runlevel.html"><span class="citerefentry"><span class="refentrytitle">runlevel</span>(8)</span></a> -- Print previous and current SysV runlevel<br></p></div><div class="refsect1"><a name="idm214175747408"></a><h2 id="S">S<a class="headerlink" title="Permalink to this headline" href="#S">¶</a></h2><p><a href="sd-daemon.html"><span class="citerefentry"><span class="refentrytitle">sd-daemon</span>(3)</span></a> -- APIs for new-style daemons<br><a href="sd-id128.html"><span class="citerefentry"><span class="refentrytitle">sd-id128</span>(3)</span></a> -- APIs for processing 128-bit IDs<br><a href="sd-journal.html"><span class="citerefentry"><span class="refentrytitle">sd-journal</span>(3)</span></a> -- APIs for submitting and querying log entries to and from the journal<br><a href="sd-login.html"><span class="citerefentry"><span class="refentrytitle">sd-login</span>(3)</span></a> -- APIs for tracking logins<br><a href="sd-readahead.html"><span class="citerefentry"><span class="refentrytitle">sd-readahead</span>(3)</span></a> -- Reference implementation of APIs for controlling boot-time read-ahead<br><a href="SD_ALERT.html"><span class="citerefentry"><span class="refentrytitle">SD_ALERT</span>(3)</span></a> -- APIs for new-style daemons<br><a href="sd_booted.html"><span class="citerefentry"><span class="refentrytitle">sd_booted</span>(3)</span></a> -- Test whether the system is running the systemd init system<br><a href="sd_bus_creds_get_audit_login_uid.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_creds_get_audit_login_uid</span>(3)</span></a> -- Retrieve fields from a credentials object<br><a href="sd_bus_creds_get_audit_session_id.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_creds_get_audit_session_id</span>(3)</span></a> -- Retrieve fields from a credentials object<br><a href="sd_bus_creds_get_cgroup.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_creds_get_cgroup</span>(3)</span></a> -- Retrieve fields from a credentials object<br><a href="sd_bus_creds_get_cmdline.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_creds_get_cmdline</span>(3)</span></a> -- Retrieve fields from a credentials object<br><a href="sd_bus_creds_get_comm.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_creds_get_comm</span>(3)</span></a> -- Retrieve fields from a credentials object<br><a href="sd_bus_creds_get_exe.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_creds_get_exe</span>(3)</span></a> -- Retrieve fields from a credentials object<br><a href="sd_bus_creds_get_gid.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_creds_get_gid</span>(3)</span></a> -- Retrieve fields from a credentials object<br><a href="sd_bus_creds_get_mask.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_creds_get_mask</span>(3)</span></a> -- Retrieve credentials object for the specified PID<br><a href="sd_bus_creds_get_owner_uid.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_creds_get_owner_uid</span>(3)</span></a> -- Retrieve fields from a credentials object<br><a href="sd_bus_creds_get_pid.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_creds_get_pid</span>(3)</span></a> -- Retrieve fields from a credentials object<br><a href="sd_bus_creds_get_pid_starttime.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_creds_get_pid_starttime</span>(3)</span></a> -- Retrieve fields from a credentials object<br><a href="sd_bus_creds_get_selinux_context.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_creds_get_selinux_context</span>(3)</span></a> -- Retrieve fields from a credentials object<br><a href="sd_bus_creds_get_session.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_creds_get_session</span>(3)</span></a> -- Retrieve fields from a credentials object<br><a href="sd_bus_creds_get_slice.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_creds_get_slice</span>(3)</span></a> -- Retrieve fields from a credentials object<br><a href="sd_bus_creds_get_tid.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_creds_get_tid</span>(3)</span></a> -- Retrieve fields from a credentials object<br><a href="sd_bus_creds_get_tid_comm.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_creds_get_tid_comm</span>(3)</span></a> -- Retrieve fields from a credentials object<br><a href="sd_bus_creds_get_uid.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_creds_get_uid</span>(3)</span></a> -- Retrieve fields from a credentials object<br><a href="sd_bus_creds_get_unique_name.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_creds_get_unique_name</span>(3)</span></a> -- Retrieve fields from a credentials object<br><a href="sd_bus_creds_get_unit.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_creds_get_unit</span>(3)</span></a> -- Retrieve fields from a credentials object<br><a href="sd_bus_creds_get_user_unit.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_creds_get_user_unit</span>(3)</span></a> -- Retrieve fields from a credentials object<br><a href="sd_bus_creds_get_well_known_names.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_creds_get_well_known_names</span>(3)</span></a> -- Retrieve fields from a credentials object<br><a href="sd_bus_creds_has_bounding_cap.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_creds_has_bounding_cap</span>(3)</span></a> -- Retrieve fields from a credentials object<br><a href="sd_bus_creds_has_effective_cap.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_creds_has_effective_cap</span>(3)</span></a> -- Retrieve fields from a credentials object<br><a href="sd_bus_creds_has_inheritable_cap.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_creds_has_inheritable_cap</span>(3)</span></a> -- Retrieve fields from a credentials object<br><a href="sd_bus_creds_has_permitted_cap.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_creds_has_permitted_cap</span>(3)</span></a> -- Retrieve fields from a credentials object<br><a href="sd_bus_creds_new_from_pid.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_creds_new_from_pid</span>(3)</span></a> -- Retrieve credentials object for the specified PID<br><a href="sd_bus_creds_ref.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_creds_ref</span>(3)</span></a> -- Retrieve credentials object for the specified PID<br><a href="sd_bus_creds_unref.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_creds_unref</span>(3)</span></a> -- Retrieve credentials object for the specified PID<br><a href="sd_bus_default_system.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_default_system</span>(3)</span></a> -- Open a connection to the system or user bus<br><a href="sd_bus_default_user.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_default_user</span>(3)</span></a> -- Open a connection to the system or user bus<br><a href="sd_bus_error.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_error</span>(3)</span></a> -- sd-bus error handling<br><a href="sd_bus_error_copy.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_error_copy</span>(3)</span></a> -- sd-bus error handling<br><a href="sd_bus_error_free.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_error_free</span>(3)</span></a> -- sd-bus error handling<br><a href="sd_bus_error_get_errno.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_error_get_errno</span>(3)</span></a> -- sd-bus error handling<br><a href="sd_bus_error_has_name.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_error_has_name</span>(3)</span></a> -- sd-bus error handling<br><a href="sd_bus_error_is_set.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_error_is_set</span>(3)</span></a> -- sd-bus error handling<br><a href="sd_bus_error_set.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_error_set</span>(3)</span></a> -- sd-bus error handling<br><a href="sd_bus_error_set_const.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_error_set_const</span>(3)</span></a> -- sd-bus error handling<br><a href="sd_bus_error_set_errno.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_error_set_errno</span>(3)</span></a> -- sd-bus error handling<br><a href="sd_bus_error_set_errnof.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_error_set_errnof</span>(3)</span></a> -- sd-bus error handling<br><a href="sd_bus_message_append.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_message_append</span>(3)</span></a> -- Attach parts of message based on a format string<br><a href="sd_bus_message_append_array.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_message_append_array</span>(3)</span></a> -- Attach an array of items to a message<br><a href="sd_bus_message_append_array_iovec.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_message_append_array_iovec</span>(3)</span></a> -- Attach an array of items to a message<br><a href="sd_bus_message_append_array_memfd.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_message_append_array_memfd</span>(3)</span></a> -- Attach an array of items to a message<br><a href="sd_bus_message_append_array_space.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_message_append_array_space</span>(3)</span></a> -- Attach an array of items to a message<br><a href="sd_bus_message_append_basic.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_message_append_basic</span>(3)</span></a> -- Attach a single part to a message<br><a href="sd_bus_message_append_string_iovec.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_message_append_string_iovec</span>(3)</span></a> -- Attach a string to a message<br><a href="sd_bus_message_append_string_memfd.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_message_append_string_memfd</span>(3)</span></a> -- Attach a string to a message<br><a href="sd_bus_message_append_string_space.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_message_append_string_space</span>(3)</span></a> -- Attach a string to a message<br><a href="sd_bus_message_append_strv.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_message_append_strv</span>(3)</span></a> -- Attach an array of strings to a message<br><a href="sd_bus_message_get_cookie.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_message_get_cookie</span>(3)</span></a> -- Returns the transaction cookie of a message<br><a href="sd_bus_message_get_monotonic_usec.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_message_get_monotonic_usec</span>(3)</span></a> -- Retrieve the sender timestamps and sequence number of a message<br><a href="sd_bus_message_get_realtime_usec.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_message_get_realtime_usec</span>(3)</span></a> -- Retrieve the sender timestamps and sequence number of a message<br><a href="sd_bus_message_get_reply_cookie.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_message_get_reply_cookie</span>(3)</span></a> -- Returns the transaction cookie of a message<br><a href="sd_bus_message_get_seqnum.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_message_get_seqnum</span>(3)</span></a> -- Retrieve the sender timestamps and sequence number of a message<br><a href="sd_bus_negotiate_creds.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_negotiate_creds</span>(3)</span></a> -- Control feature negotiation on bus connections<br><a href="sd_bus_negotiate_fds.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_negotiate_fds</span>(3)</span></a> -- Control feature negotiation on bus connections<br><a href="sd_bus_negotiate_timestamps.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_negotiate_timestamps</span>(3)</span></a> -- Control feature negotiation on bus connections<br><a href="sd_bus_new.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_new</span>(3)</span></a> -- Create a new bus object and create or destroy references to it<br><a href="sd_bus_open_system.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_open_system</span>(3)</span></a> -- Open a connection to the system or user bus<br><a href="sd_bus_open_system_container.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_open_system_container</span>(3)</span></a> -- Open a connection to the system or user bus<br><a href="sd_bus_open_system_remote.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_open_system_remote</span>(3)</span></a> -- Open a connection to the system or user bus<br><a href="sd_bus_open_user.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_open_user</span>(3)</span></a> -- Open a connection to the system or user bus<br><a href="sd_bus_path_decode.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_path_decode</span>(3)</span></a> -- Convert an external identifier into an object path and back<br><a href="sd_bus_path_encode.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_path_encode</span>(3)</span></a> -- Convert an external identifier into an object path and back<br><a href="sd_bus_ref.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_ref</span>(3)</span></a> -- Create a new bus object and create or destroy references to it<br><a href="sd_bus_release_name.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_release_name</span>(3)</span></a> -- Request or release a well-known name on a bus<br><a href="sd_bus_request_name.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_request_name</span>(3)</span></a> -- Request or release a well-known name on a bus<br><a href="sd_bus_unref.html"><span class="citerefentry"><span class="refentrytitle">sd_bus_unref</span>(3)</span></a> -- Create a new bus object and create or destroy references to it<br><a href="SD_CRIT.html"><span class="citerefentry"><span class="refentrytitle">SD_CRIT</span>(3)</span></a> -- APIs for new-style daemons<br><a href="SD_DEBUG.html"><span class="citerefentry"><span class="refentrytitle">SD_DEBUG</span>(3)</span></a> -- APIs for new-style daemons<br><a href="SD_EMERG.html"><span class="citerefentry"><span class="refentrytitle">SD_EMERG</span>(3)</span></a> -- APIs for new-style daemons<br><a href="SD_ERR.html"><span class="citerefentry"><span class="refentrytitle">SD_ERR</span>(3)</span></a> -- APIs for new-style daemons<br><a href="sd_event_add_time.html"><span class="citerefentry"><span class="refentrytitle">sd_event_add_time</span>(3)</span></a> -- Add a timer event source to an event loop<br><a href="sd_event_default.html"><span class="citerefentry"><span class="refentrytitle">sd_event_default</span>(3)</span></a> -- Acquire and release an event loop object<br><a href="sd_event_new.html"><span class="citerefentry"><span class="refentrytitle">sd_event_new</span>(3)</span></a> -- Acquire and release an event loop object<br><a href="sd_event_ref.html"><span class="citerefentry"><span class="refentrytitle">sd_event_ref</span>(3)</span></a> -- Acquire and release an event loop object<br><a href="sd_event_source_get_time.html"><span class="citerefentry"><span class="refentrytitle">sd_event_source_get_time</span>(3)</span></a> -- Add a timer event source to an event loop<br><a href="sd_event_source_get_time_accuracy.html"><span class="citerefentry"><span class="refentrytitle">sd_event_source_get_time_accuracy</span>(3)</span></a> -- Add a timer event source to an event loop<br><a href="sd_event_source_get_time_clock.html"><span class="citerefentry"><span class="refentrytitle">sd_event_source_get_time_clock</span>(3)</span></a> -- Add a timer event source to an event loop<br><a href="sd_event_source_set_time.html"><span class="citerefentry"><span class="refentrytitle">sd_event_source_set_time</span>(3)</span></a> -- Add a timer event source to an event loop<br><a href="sd_event_source_set_time_accuracy.html"><span class="citerefentry"><span class="refentrytitle">sd_event_source_set_time_accuracy</span>(3)</span></a> -- Add a timer event source to an event loop<br><a href="sd_event_unref.html"><span class="citerefentry"><span class="refentrytitle">sd_event_unref</span>(3)</span></a> -- Acquire and release an event loop object<br><a href="sd_get_machine_names.html"><span class="citerefentry"><span class="refentrytitle">sd_get_machine_names</span>(3)</span></a> -- Determine available seats, sessions, logged in users and virtual machines/containers<br><a href="sd_get_seats.html"><span class="citerefentry"><span class="refentrytitle">sd_get_seats</span>(3)</span></a> -- Determine available seats, sessions, logged in users and virtual machines/containers<br><a href="sd_get_sessions.html"><span class="citerefentry"><span class="refentrytitle">sd_get_sessions</span>(3)</span></a> -- Determine available seats, sessions, logged in users and virtual machines/containers<br><a href="sd_get_uids.html"><span class="citerefentry"><span class="refentrytitle">sd_get_uids</span>(3)</span></a> -- Determine available seats, sessions, logged in users and virtual machines/containers<br><a href="SD_ID128_CONST_STR.html"><span class="citerefentry"><span class="refentrytitle">SD_ID128_CONST_STR</span>(3)</span></a> -- APIs for processing 128-bit IDs<br><a href="sd_id128_equal.html"><span class="citerefentry"><span class="refentrytitle">sd_id128_equal</span>(3)</span></a> -- APIs for processing 128-bit IDs<br><a href="SD_ID128_FORMAT_STR.html"><span class="citerefentry"><span class="refentrytitle">SD_ID128_FORMAT_STR</span>(3)</span></a> -- APIs for processing 128-bit IDs<br><a href="SD_ID128_FORMAT_VAL.html"><span class="citerefentry"><span class="refentrytitle">SD_ID128_FORMAT_VAL</span>(3)</span></a> -- APIs for processing 128-bit IDs<br><a href="sd_id128_from_string.html"><span class="citerefentry"><span class="refentrytitle">sd_id128_from_string</span>(3)</span></a> -- Format or parse 128-bit IDs as strings<br><a href="sd_id128_get_boot.html"><span class="citerefentry"><span class="refentrytitle">sd_id128_get_boot</span>(3)</span></a> -- Retrieve 128-bit IDs<br><a href="sd_id128_get_machine.html"><span class="citerefentry"><span class="refentrytitle">sd_id128_get_machine</span>(3)</span></a> -- Retrieve 128-bit IDs<br><a href="SD_ID128_MAKE.html"><span class="citerefentry"><span class="refentrytitle">SD_ID128_MAKE</span>(3)</span></a> -- APIs for processing 128-bit IDs<br><a href="sd_id128_randomize.html"><span class="citerefentry"><span class="refentrytitle">sd_id128_randomize</span>(3)</span></a> -- Generate 128-bit IDs<br><a href="sd_id128_t.html"><span class="citerefentry"><span class="refentrytitle">sd_id128_t</span>(3)</span></a> -- APIs for processing 128-bit IDs<br><a href="sd_id128_to_string.html"><span class="citerefentry"><span class="refentrytitle">sd_id128_to_string</span>(3)</span></a> -- Format or parse 128-bit IDs as strings<br><a href="SD_INFO.html"><span class="citerefentry"><span class="refentrytitle">SD_INFO</span>(3)</span></a> -- APIs for new-style daemons<br><a href="sd_is_fifo.html"><span class="citerefentry"><span class="refentrytitle">sd_is_fifo</span>(3)</span></a> -- Check the type of a file descriptor<br><a href="sd_is_mq.html"><span class="citerefentry"><span class="refentrytitle">sd_is_mq</span>(3)</span></a> -- Check the type of a file descriptor<br><a href="sd_is_socket.html"><span class="citerefentry"><span class="refentrytitle">sd_is_socket</span>(3)</span></a> -- Check the type of a file descriptor<br><a href="sd_is_socket_inet.html"><span class="citerefentry"><span class="refentrytitle">sd_is_socket_inet</span>(3)</span></a> -- Check the type of a file descriptor<br><a href="sd_is_socket_unix.html"><span class="citerefentry"><span class="refentrytitle">sd_is_socket_unix</span>(3)</span></a> -- Check the type of a file descriptor<br><a href="sd_is_special.html"><span class="citerefentry"><span class="refentrytitle">sd_is_special</span>(3)</span></a> -- Check the type of a file descriptor<br><a href="sd_journal.html"><span class="citerefentry"><span class="refentrytitle">sd_journal</span>(3)</span></a> -- Open the system journal for reading<br><a href="sd_journal_add_conjunction.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_add_conjunction</span>(3)</span></a> -- Add or remove entry matches<br><a href="sd_journal_add_disjunction.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_add_disjunction</span>(3)</span></a> -- Add or remove entry matches<br><a href="sd_journal_add_match.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_add_match</span>(3)</span></a> -- Add or remove entry matches<br><a href="SD_JOURNAL_APPEND.html"><span class="citerefentry"><span class="refentrytitle">SD_JOURNAL_APPEND</span>(3)</span></a> -- Journal change notification interface<br><a href="sd_journal_close.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_close</span>(3)</span></a> -- Open the system journal for reading<br><a href="SD_JOURNAL_CURRENT_USER.html"><span class="citerefentry"><span class="refentrytitle">SD_JOURNAL_CURRENT_USER</span>(3)</span></a> -- Open the system journal for reading<br><a href="sd_journal_enumerate_data.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_enumerate_data</span>(3)</span></a> -- Read data fields from the current journal entry<br><a href="sd_journal_enumerate_unique.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_enumerate_unique</span>(3)</span></a> -- Read unique data fields from the journal<br><a href="sd_journal_flush_matches.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_flush_matches</span>(3)</span></a> -- Add or remove entry matches<br><a href="SD_JOURNAL_FOREACH.html"><span class="citerefentry"><span class="refentrytitle">SD_JOURNAL_FOREACH</span>(3)</span></a> -- Advance or set back the read pointer in the journal<br><a href="SD_JOURNAL_FOREACH_BACKWARDS.html"><span class="citerefentry"><span class="refentrytitle">SD_JOURNAL_FOREACH_BACKWARDS</span>(3)</span></a> -- Advance or set back the read pointer in the journal<br><a href="SD_JOURNAL_FOREACH_DATA.html"><span class="citerefentry"><span class="refentrytitle">SD_JOURNAL_FOREACH_DATA</span>(3)</span></a> -- Read data fields from the current journal entry<br><a href="SD_JOURNAL_FOREACH_UNIQUE.html"><span class="citerefentry"><span class="refentrytitle">SD_JOURNAL_FOREACH_UNIQUE</span>(3)</span></a> -- Read unique data fields from the journal<br><a href="sd_journal_get_catalog.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_get_catalog</span>(3)</span></a> -- Retrieve message catalog entry<br><a href="sd_journal_get_catalog_for_message_id.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_get_catalog_for_message_id</span>(3)</span></a> -- Retrieve message catalog entry<br><a href="sd_journal_get_cursor.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_get_cursor</span>(3)</span></a> -- Get cursor string for or test cursor string against the current journal entry<br><a href="sd_journal_get_cutoff_monotonic_usec.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_get_cutoff_monotonic_usec</span>(3)</span></a> -- Read cut-off timestamps from the current journal entry<br><a href="sd_journal_get_cutoff_realtime_usec.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_get_cutoff_realtime_usec</span>(3)</span></a> -- Read cut-off timestamps from the current journal entry<br><a href="sd_journal_get_data.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_get_data</span>(3)</span></a> -- Read data fields from the current journal entry<br><a href="sd_journal_get_data_threshold.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_get_data_threshold</span>(3)</span></a> -- Read data fields from the current journal entry<br><a href="sd_journal_get_events.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_get_events</span>(3)</span></a> -- Journal change notification interface<br><a href="sd_journal_get_fd.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_get_fd</span>(3)</span></a> -- Journal change notification interface<br><a href="sd_journal_get_monotonic_usec.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_get_monotonic_usec</span>(3)</span></a> -- Read timestamps from the current journal entry<br><a href="sd_journal_get_realtime_usec.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_get_realtime_usec</span>(3)</span></a> -- Read timestamps from the current journal entry<br><a href="sd_journal_get_timeout.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_get_timeout</span>(3)</span></a> -- Journal change notification interface<br><a href="sd_journal_get_usage.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_get_usage</span>(3)</span></a> -- Journal disk usage<br><a href="SD_JOURNAL_INVALIDATE.html"><span class="citerefentry"><span class="refentrytitle">SD_JOURNAL_INVALIDATE</span>(3)</span></a> -- Journal change notification interface<br><a href="SD_JOURNAL_LOCAL_ONLY.html"><span class="citerefentry"><span class="refentrytitle">SD_JOURNAL_LOCAL_ONLY</span>(3)</span></a> -- Open the system journal for reading<br><a href="sd_journal_next.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_next</span>(3)</span></a> -- Advance or set back the read pointer in the journal<br><a href="sd_journal_next_skip.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_next_skip</span>(3)</span></a> -- Advance or set back the read pointer in the journal<br><a href="SD_JOURNAL_NOP.html"><span class="citerefentry"><span class="refentrytitle">SD_JOURNAL_NOP</span>(3)</span></a> -- Journal change notification interface<br><a href="sd_journal_open.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_open</span>(3)</span></a> -- Open the system journal for reading<br><a href="sd_journal_open_container.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_open_container</span>(3)</span></a> -- Open the system journal for reading<br><a href="sd_journal_open_directory.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_open_directory</span>(3)</span></a> -- Open the system journal for reading<br><a href="sd_journal_open_files.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_open_files</span>(3)</span></a> -- Open the system journal for reading<br><a href="sd_journal_perror.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_perror</span>(3)</span></a> -- Submit log entries to the journal<br><a href="sd_journal_previous.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_previous</span>(3)</span></a> -- Advance or set back the read pointer in the journal<br><a href="sd_journal_previous_skip.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_previous_skip</span>(3)</span></a> -- Advance or set back the read pointer in the journal<br><a href="sd_journal_print.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_print</span>(3)</span></a> -- Submit log entries to the journal<br><a href="sd_journal_printv.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_printv</span>(3)</span></a> -- Submit log entries to the journal<br><a href="sd_journal_process.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_process</span>(3)</span></a> -- Journal change notification interface<br><a href="sd_journal_query_unique.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_query_unique</span>(3)</span></a> -- Read unique data fields from the journal<br><a href="sd_journal_reliable_fd.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_reliable_fd</span>(3)</span></a> -- Journal change notification interface<br><a href="sd_journal_restart_data.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_restart_data</span>(3)</span></a> -- Read data fields from the current journal entry<br><a href="sd_journal_restart_unique.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_restart_unique</span>(3)</span></a> -- Read unique data fields from the journal<br><a href="SD_JOURNAL_RUNTIME_ONLY.html"><span class="citerefentry"><span class="refentrytitle">SD_JOURNAL_RUNTIME_ONLY</span>(3)</span></a> -- Open the system journal for reading<br><a href="sd_journal_seek_cursor.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_seek_cursor</span>(3)</span></a> -- Seek to a position in the journal<br><a href="sd_journal_seek_head.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_seek_head</span>(3)</span></a> -- Seek to a position in the journal<br><a href="sd_journal_seek_monotonic_usec.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_seek_monotonic_usec</span>(3)</span></a> -- Seek to a position in the journal<br><a href="sd_journal_seek_realtime_usec.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_seek_realtime_usec</span>(3)</span></a> -- Seek to a position in the journal<br><a href="sd_journal_seek_tail.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_seek_tail</span>(3)</span></a> -- Seek to a position in the journal<br><a href="sd_journal_send.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_send</span>(3)</span></a> -- Submit log entries to the journal<br><a href="sd_journal_sendv.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_sendv</span>(3)</span></a> -- Submit log entries to the journal<br><a href="sd_journal_set_data_threshold.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_set_data_threshold</span>(3)</span></a> -- Read data fields from the current journal entry<br><a href="sd_journal_stream_fd.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_stream_fd</span>(3)</span></a> -- Create log stream file descriptor to the journal<br><a href="SD_JOURNAL_SUPPRESS_LOCATION.html"><span class="citerefentry"><span class="refentrytitle">SD_JOURNAL_SUPPRESS_LOCATION</span>(3)</span></a> -- Submit log entries to the journal<br><a href="SD_JOURNAL_SYSTEM.html"><span class="citerefentry"><span class="refentrytitle">SD_JOURNAL_SYSTEM</span>(3)</span></a> -- Open the system journal for reading<br><a href="sd_journal_test_cursor.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_test_cursor</span>(3)</span></a> -- Get cursor string for or test cursor string against the current journal entry<br><a href="sd_journal_wait.html"><span class="citerefentry"><span class="refentrytitle">sd_journal_wait</span>(3)</span></a> -- Journal change notification interface<br><a href="sd_listen_fds.html"><span class="citerefentry"><span class="refentrytitle">sd_listen_fds</span>(3)</span></a> -- Check for file descriptors passed by the system manager<br><a href="SD_LISTEN_FDS_START.html"><span class="citerefentry"><span class="refentrytitle">SD_LISTEN_FDS_START</span>(3)</span></a> -- Check for file descriptors passed by the system manager<br><a href="sd_login_monitor.html"><span class="citerefentry"><span class="refentrytitle">sd_login_monitor</span>(3)</span></a> -- Monitor login sessions, seats, users and virtual machines/containers<br><a href="sd_login_monitor_flush.html"><span class="citerefentry"><span class="refentrytitle">sd_login_monitor_flush</span>(3)</span></a> -- Monitor login sessions, seats, users and virtual machines/containers<br><a href="sd_login_monitor_get_events.html"><span class="citerefentry"><span class="refentrytitle">sd_login_monitor_get_events</span>(3)</span></a> -- Monitor login sessions, seats, users and virtual machines/containers<br><a href="sd_login_monitor_get_fd.html"><span class="citerefentry"><span class="refentrytitle">sd_login_monitor_get_fd</span>(3)</span></a> -- Monitor login sessions, seats, users and virtual machines/containers<br><a href="sd_login_monitor_get_timeout.html"><span class="citerefentry"><span class="refentrytitle">sd_login_monitor_get_timeout</span>(3)</span></a> -- Monitor login sessions, seats, users and virtual machines/containers<br><a href="sd_login_monitor_new.html"><span class="citerefentry"><span class="refentrytitle">sd_login_monitor_new</span>(3)</span></a> -- Monitor login sessions, seats, users and virtual machines/containers<br><a href="sd_login_monitor_unref.html"><span class="citerefentry"><span class="refentrytitle">sd_login_monitor_unref</span>(3)</span></a> -- Monitor login sessions, seats, users and virtual machines/containers<br><a href="SD_NOTICE.html"><span class="citerefentry"><span class="refentrytitle">SD_NOTICE</span>(3)</span></a> -- APIs for new-style daemons<br><a href="sd_notify.html"><span class="citerefentry"><span class="refentrytitle">sd_notify</span>(3)</span></a> -- Notify service manager about start-up completion and other daemon status changes<br><a href="sd_notifyf.html"><span class="citerefentry"><span class="refentrytitle">sd_notifyf</span>(3)</span></a> -- Notify service manager about start-up completion and other daemon status changes<br><a href="sd_peer_get_machine_name.html"><span class="citerefentry"><span class="refentrytitle">sd_peer_get_machine_name</span>(3)</span></a> -- Determine session, service, owner of a session, container/VM or slice of a specific PID or socket peer<br><a href="sd_peer_get_owner_uid.html"><span class="citerefentry"><span class="refentrytitle">sd_peer_get_owner_uid</span>(3)</span></a> -- Determine session, service, owner of a session, container/VM or slice of a specific PID or socket peer<br><a href="sd_peer_get_session.html"><span class="citerefentry"><span class="refentrytitle">sd_peer_get_session</span>(3)</span></a> -- Determine session, service, owner of a session, container/VM or slice of a specific PID or socket peer<br><a href="sd_peer_get_slice.html"><span class="citerefentry"><span class="refentrytitle">sd_peer_get_slice</span>(3)</span></a> -- Determine session, service, owner of a session, container/VM or slice of a specific PID or socket peer<br><a href="sd_peer_get_unit.html"><span class="citerefentry"><span class="refentrytitle">sd_peer_get_unit</span>(3)</span></a> -- Determine session, service, owner of a session, container/VM or slice of a specific PID or socket peer<br><a href="sd_peer_get_user_unit.html"><span class="citerefentry"><span class="refentrytitle">sd_peer_get_user_unit</span>(3)</span></a> -- Determine session, service, owner of a session, container/VM or slice of a specific PID or socket peer<br><a href="sd_pid_get_machine_name.html"><span class="citerefentry"><span class="refentrytitle">sd_pid_get_machine_name</span>(3)</span></a> -- Determine session, service, owner of a session, container/VM or slice of a specific PID or socket peer<br><a href="sd_pid_get_owner_uid.html"><span class="citerefentry"><span class="refentrytitle">sd_pid_get_owner_uid</span>(3)</span></a> -- Determine session, service, owner of a session, container/VM or slice of a specific PID or socket peer<br><a href="sd_pid_get_session.html"><span class="citerefentry"><span class="refentrytitle">sd_pid_get_session</span>(3)</span></a> -- Determine session, service, owner of a session, container/VM or slice of a specific PID or socket peer<br><a href="sd_pid_get_slice.html"><span class="citerefentry"><span class="refentrytitle">sd_pid_get_slice</span>(3)</span></a> -- Determine session, service, owner of a session, container/VM or slice of a specific PID or socket peer<br><a href="sd_pid_get_unit.html"><span class="citerefentry"><span class="refentrytitle">sd_pid_get_unit</span>(3)</span></a> -- Determine session, service, owner of a session, container/VM or slice of a specific PID or socket peer<br><a href="sd_pid_get_user_unit.html"><span class="citerefentry"><span class="refentrytitle">sd_pid_get_user_unit</span>(3)</span></a> -- Determine session, service, owner of a session, container/VM or slice of a specific PID or socket peer<br><a href="sd_readahead.html"><span class="citerefentry"><span class="refentrytitle">sd_readahead</span>(3)</span></a> -- Control ongoing disk boot-time read-ahead operations<br><a href="sd_seat_can_graphical.html"><span class="citerefentry"><span class="refentrytitle">sd_seat_can_graphical</span>(3)</span></a> -- Determine state of a specific seat<br><a href="sd_seat_can_multi_session.html"><span class="citerefentry"><span class="refentrytitle">sd_seat_can_multi_session</span>(3)</span></a> -- Determine state of a specific seat<br><a href="sd_seat_can_tty.html"><span class="citerefentry"><span class="refentrytitle">sd_seat_can_tty</span>(3)</span></a> -- Determine state of a specific seat<br><a href="sd_seat_get_active.html"><span class="citerefentry"><span class="refentrytitle">sd_seat_get_active</span>(3)</span></a> -- Determine state of a specific seat<br><a href="sd_seat_get_sessions.html"><span class="citerefentry"><span class="refentrytitle">sd_seat_get_sessions</span>(3)</span></a> -- Determine state of a specific seat<br><a href="sd_session_get_class.html"><span class="citerefentry"><span class="refentrytitle">sd_session_get_class</span>(3)</span></a> -- Determine state of a specific session<br><a href="sd_session_get_display.html"><span class="citerefentry"><span class="refentrytitle">sd_session_get_display</span>(3)</span></a> -- Determine state of a specific session<br><a href="sd_session_get_remote_host.html"><span class="citerefentry"><span class="refentrytitle">sd_session_get_remote_host</span>(3)</span></a> -- Determine state of a specific session<br><a href="sd_session_get_remote_user.html"><span class="citerefentry"><span class="refentrytitle">sd_session_get_remote_user</span>(3)</span></a> -- Determine state of a specific session<br><a href="sd_session_get_seat.html"><span class="citerefentry"><span class="refentrytitle">sd_session_get_seat</span>(3)</span></a> -- Determine state of a specific session<br><a href="sd_session_get_service.html"><span class="citerefentry"><span class="refentrytitle">sd_session_get_service</span>(3)</span></a> -- Determine state of a specific session<br><a href="sd_session_get_state.html"><span class="citerefentry"><span class="refentrytitle">sd_session_get_state</span>(3)</span></a> -- Determine state of a specific session<br><a href="sd_session_get_tty.html"><span class="citerefentry"><span class="refentrytitle">sd_session_get_tty</span>(3)</span></a> -- Determine state of a specific session<br><a href="sd_session_get_type.html"><span class="citerefentry"><span class="refentrytitle">sd_session_get_type</span>(3)</span></a> -- Determine state of a specific session<br><a href="sd_session_get_uid.html"><span class="citerefentry"><span class="refentrytitle">sd_session_get_uid</span>(3)</span></a> -- Determine state of a specific session<br><a href="sd_session_get_vt.html"><span class="citerefentry"><span class="refentrytitle">sd_session_get_vt</span>(3)</span></a> -- Determine state of a specific session<br><a href="sd_session_is_active.html"><span class="citerefentry"><span class="refentrytitle">sd_session_is_active</span>(3)</span></a> -- Determine state of a specific session<br><a href="sd_session_is_remote.html"><span class="citerefentry"><span class="refentrytitle">sd_session_is_remote</span>(3)</span></a> -- Determine state of a specific session<br><a href="sd_uid_get_display.html"><span class="citerefentry"><span class="refentrytitle">sd_uid_get_display</span>(3)</span></a> -- Determine login state of a specific Unix user ID<br><a href="sd_uid_get_seats.html"><span class="citerefentry"><span class="refentrytitle">sd_uid_get_seats</span>(3)</span></a> -- Determine login state of a specific Unix user ID<br><a href="sd_uid_get_sessions.html"><span class="citerefentry"><span class="refentrytitle">sd_uid_get_sessions</span>(3)</span></a> -- Determine login state of a specific Unix user ID<br><a href="sd_uid_get_state.html"><span class="citerefentry"><span class="refentrytitle">sd_uid_get_state</span>(3)</span></a> -- Determine login state of a specific Unix user ID<br><a href="sd_uid_is_on_seat.html"><span class="citerefentry"><span class="refentrytitle">sd_uid_is_on_seat</span>(3)</span></a> -- Determine login state of a specific Unix user ID<br><a href="SD_WARNING.html"><span class="citerefentry"><span class="refentrytitle">SD_WARNING</span>(3)</span></a> -- APIs for new-style daemons<br><a href="sd_watchdog_enabled.html"><span class="citerefentry"><span class="refentrytitle">sd_watchdog_enabled</span>(3)</span></a> -- Check whether the service manager expects watchdog keep-alive notifications from a service<br><a href="shutdown.html"><span class="citerefentry"><span class="refentrytitle">shutdown</span>(8)</span></a> -- Halt, power-off or reboot the machine<br><a href="sysctl.d.html"><span class="citerefentry"><span class="refentrytitle">sysctl.d</span>(5)</span></a> -- Configure kernel parameters at boot<br><a href="systemctl.html"><span class="citerefentry"><span class="refentrytitle">systemctl</span>(1)</span></a> -- Control the systemd system and service manager<br><a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a> -- systemd system and service manager<br><a href="systemd-activate.html"><span class="citerefentry"><span class="refentrytitle">systemd-activate</span>(8)</span></a> -- Test socket activation of daemons<br><a href="systemd-analyze.html"><span class="citerefentry"><span class="refentrytitle">systemd-analyze</span>(1)</span></a> -- Analyze system boot-up performance<br><a href="systemd-ask-password.html"><span class="citerefentry"><span class="refentrytitle">systemd-ask-password</span>(1)</span></a> -- Query the user for a system password<br><a href="systemd-ask-password-console.path.html"><span class="citerefentry"><span class="refentrytitle">systemd-ask-password-console.path</span>(8)</span></a> -- Query the user for system passwords on the console and via wall<br><a href="systemd-ask-password-console.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-ask-password-console.service</span>(8)</span></a> -- Query the user for system passwords on the console and via wall<br><a href="systemd-ask-password-wall.path.html"><span class="citerefentry"><span class="refentrytitle">systemd-ask-password-wall.path</span>(8)</span></a> -- Query the user for system passwords on the console and via wall<br><a href="systemd-ask-password-wall.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-ask-password-wall.service</span>(8)</span></a> -- Query the user for system passwords on the console and via wall<br><a href="systemd-backlight.html"><span class="citerefentry"><span class="refentrytitle">systemd-backlight</span>(8)</span></a> -- Load and save the display backlight brightness at boot and shutdown<br><a href="systemd-backlight@.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-backlight@.service</span>(8)</span></a> -- Load and save the display backlight brightness at boot and shutdown<br><a href="systemd-binfmt.html"><span class="citerefentry"><span class="refentrytitle">systemd-binfmt</span>(8)</span></a> -- Configure additional binary formats for executables at boot<br><a href="systemd-binfmt.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-binfmt.service</span>(8)</span></a> -- Configure additional binary formats for executables at boot<br><a href="systemd-bootchart.html"><span class="citerefentry"><span class="refentrytitle">systemd-bootchart</span>(1)</span></a> -- Boot performance graphing tool<br><a href="systemd-bus-proxyd.html"><span class="citerefentry"><span class="refentrytitle">systemd-bus-proxyd</span>(8)</span></a> -- Connect STDIO or a socket to a given bus address<br><a href="systemd-bus-proxyd.socket.html"><span class="citerefentry"><span class="refentrytitle">systemd-bus-proxyd.socket</span>(8)</span></a> -- Proxy classic D-Bus clients to kdbus<br><a href="systemd-bus-proxyd@.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-bus-proxyd@.service</span>(8)</span></a> -- Proxy classic D-Bus clients to kdbus<br><a href="systemd-cat.html"><span class="citerefentry"><span class="refentrytitle">systemd-cat</span>(1)</span></a> -- Connect a pipeline or program's output with the journal<br><a href="systemd-cgls.html"><span class="citerefentry"><span class="refentrytitle">systemd-cgls</span>(1)</span></a> -- Recursively show control group contents<br><a href="systemd-cgtop.html"><span class="citerefentry"><span class="refentrytitle">systemd-cgtop</span>(1)</span></a> -- Show top control groups by their resource usage<br><a href="systemd-cryptsetup.html"><span class="citerefentry"><span class="refentrytitle">systemd-cryptsetup</span>(8)</span></a> -- Full disk decryption logic<br><a href="systemd-cryptsetup-generator.html"><span class="citerefentry"><span class="refentrytitle">systemd-cryptsetup-generator</span>(8)</span></a> -- Unit generator for<br><a href="systemd-cryptsetup@.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-cryptsetup@.service</span>(8)</span></a> -- Full disk decryption logic<br><a href="systemd-debug-generator.html"><span class="citerefentry"><span class="refentrytitle">systemd-debug-generator</span>(8)</span></a> -- Generator for enabling a runtime debug shell and masking specific units at boot<br><a href="systemd-delta.html"><span class="citerefentry"><span class="refentrytitle">systemd-delta</span>(1)</span></a> -- Find overridden configuration files<br><a href="systemd-detect-virt.html"><span class="citerefentry"><span class="refentrytitle">systemd-detect-virt</span>(1)</span></a> -- Detect execution in a virtualized environment<br><a href="systemd-efi-boot-generator.html"><span class="citerefentry"><span class="refentrytitle">systemd-efi-boot-generator</span>(8)</span></a> -- Generator for automatically mounting the EFI System Partition used by the current boot to<br><a href="systemd-fsck.html"><span class="citerefentry"><span class="refentrytitle">systemd-fsck</span>(8)</span></a> -- File system checker logic<br><a href="systemd-fsck-root.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-fsck-root.service</span>(8)</span></a> -- File system checker logic<br><a href="systemd-fsck@.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-fsck@.service</span>(8)</span></a> -- File system checker logic<br><a href="systemd-fstab-generator.html"><span class="citerefentry"><span class="refentrytitle">systemd-fstab-generator</span>(8)</span></a> -- Unit generator for /etc/fstab<br><a href="systemd-getty-generator.html"><span class="citerefentry"><span class="refentrytitle">systemd-getty-generator</span>(8)</span></a> -- Generator for enabling getty instances on the console<br><a href="systemd-gpt-auto-generator.html"><span class="citerefentry"><span class="refentrytitle">systemd-gpt-auto-generator</span>(8)</span></a> -- Generator for automatically discovering and mounting root,<br><a href="systemd-halt.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-halt.service</span>(8)</span></a> -- System shutdown logic<br><a href="systemd-hibernate.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-hibernate.service</span>(8)</span></a> -- System sleep state logic<br><a href="systemd-hostnamed.html"><span class="citerefentry"><span class="refentrytitle">systemd-hostnamed</span>(8)</span></a> -- Host name bus mechanism<br><a href="systemd-hostnamed.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-hostnamed.service</span>(8)</span></a> -- Host name bus mechanism<br><a href="systemd-hybrid-sleep.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-hybrid-sleep.service</span>(8)</span></a> -- System sleep state logic<br><a href="systemd-inhibit.html"><span class="citerefentry"><span class="refentrytitle">systemd-inhibit</span>(1)</span></a> -- Execute a program with an inhibition lock taken<br><a href="systemd-initctl.html"><span class="citerefentry"><span class="refentrytitle">systemd-initctl</span>(8)</span></a> -- /dev/initctl compatibility<br><a href="systemd-initctl.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-initctl.service</span>(8)</span></a> -- /dev/initctl compatibility<br><a href="systemd-initctl.socket.html"><span class="citerefentry"><span class="refentrytitle">systemd-initctl.socket</span>(8)</span></a> -- /dev/initctl compatibility<br><a href="systemd-journal-gatewayd.html"><span class="citerefentry"><span class="refentrytitle">systemd-journal-gatewayd</span>(8)</span></a> -- HTTP server for journal events<br><a href="systemd-journal-gatewayd.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-journal-gatewayd.service</span>(8)</span></a> -- HTTP server for journal events<br><a href="systemd-journal-gatewayd.socket.html"><span class="citerefentry"><span class="refentrytitle">systemd-journal-gatewayd.socket</span>(8)</span></a> -- HTTP server for journal events<br><a href="systemd-journal-remote.html"><span class="citerefentry"><span class="refentrytitle">systemd-journal-remote</span>(8)</span></a> -- Stream journal messages over the network<br><a href="systemd-journald.html"><span class="citerefentry"><span class="refentrytitle">systemd-journald</span>(8)</span></a> -- Journal service<br><a href="systemd-journald-dev-log.socket.html"><span class="citerefentry"><span class="refentrytitle">systemd-journald-dev-log.socket</span>(8)</span></a> -- Journal service<br><a href="systemd-journald.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-journald.service</span>(8)</span></a> -- Journal service<br><a href="systemd-journald.socket.html"><span class="citerefentry"><span class="refentrytitle">systemd-journald.socket</span>(8)</span></a> -- Journal service<br><a href="systemd-kexec.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-kexec.service</span>(8)</span></a> -- System shutdown logic<br><a href="systemd-localed.html"><span class="citerefentry"><span class="refentrytitle">systemd-localed</span>(8)</span></a> -- Locale bus mechanism<br><a href="systemd-localed.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-localed.service</span>(8)</span></a> -- Locale bus mechanism<br><a href="systemd-logind.html"><span class="citerefentry"><span class="refentrytitle">systemd-logind</span>(8)</span></a> -- Login manager<br><a href="systemd-logind.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-logind.service</span>(8)</span></a> -- Login manager<br><a href="systemd-machine-id-setup.html"><span class="citerefentry"><span class="refentrytitle">systemd-machine-id-setup</span>(1)</span></a> -- Initialize the machine ID in /etc/machine-id<br><a href="systemd-machined.html"><span class="citerefentry"><span class="refentrytitle">systemd-machined</span>(8)</span></a> -- Virtual machine and container registration manager<br><a href="systemd-machined.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-machined.service</span>(8)</span></a> -- Virtual machine and container registration manager<br><a href="systemd-modules-load.html"><span class="citerefentry"><span class="refentrytitle">systemd-modules-load</span>(8)</span></a> -- Configure kernel modules to load at boot<br><a href="systemd-modules-load.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-modules-load.service</span>(8)</span></a> -- Configure kernel modules to load at boot<br><a href="systemd-networkd.html"><span class="citerefentry"><span class="refentrytitle">systemd-networkd</span>(8)</span></a> -- Network manager<br><a href="systemd-networkd-wait-online.html"><span class="citerefentry"><span class="refentrytitle">systemd-networkd-wait-online</span>(8)</span></a> -- Wait for network to come online<br><a href="systemd-networkd-wait-online.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-networkd-wait-online.service</span>(8)</span></a> -- Wait for network to come online<br><a href="systemd-networkd.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-networkd.service</span>(8)</span></a> -- Network manager<br><a href="systemd-notify.html"><span class="citerefentry"><span class="refentrytitle">systemd-notify</span>(1)</span></a> -- Notify service manager about start-up completion and other daemon status changes<br><a href="systemd-nspawn.html"><span class="citerefentry"><span class="refentrytitle">systemd-nspawn</span>(1)</span></a> -- Spawn a namespace container for debugging, testing and building<br><a href="systemd-path.html"><span class="citerefentry"><span class="refentrytitle">systemd-path</span>(1)</span></a> -- List and query system and user paths<br><a href="systemd-poweroff.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-poweroff.service</span>(8)</span></a> -- System shutdown logic<br><a href="systemd-quotacheck.html"><span class="citerefentry"><span class="refentrytitle">systemd-quotacheck</span>(8)</span></a> -- File system quota checker logic<br><a href="systemd-quotacheck.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-quotacheck.service</span>(8)</span></a> -- File system quota checker logic<br><a href="systemd-random-seed.html"><span class="citerefentry"><span class="refentrytitle">systemd-random-seed</span>(8)</span></a> -- Load and save the system random seed at boot and shutdown<br><a href="systemd-random-seed.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-random-seed.service</span>(8)</span></a> -- Load and save the system random seed at boot and shutdown<br><a href="systemd-readahead.html"><span class="citerefentry"><span class="refentrytitle">systemd-readahead</span>(8)</span></a> -- Disk read ahead logic<br><a href="systemd-readahead-collect.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-readahead-collect.service</span>(8)</span></a> -- Disk read ahead logic<br><a href="systemd-readahead-done.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-readahead-done.service</span>(8)</span></a> -- Disk read ahead logic<br><a href="systemd-readahead-done.timer.html"><span class="citerefentry"><span class="refentrytitle">systemd-readahead-done.timer</span>(8)</span></a> -- Disk read ahead logic<br><a href="systemd-readahead-replay.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-readahead-replay.service</span>(8)</span></a> -- Disk read ahead logic<br><a href="systemd-reboot.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-reboot.service</span>(8)</span></a> -- System shutdown logic<br><a href="systemd-remount-fs.html"><span class="citerefentry"><span class="refentrytitle">systemd-remount-fs</span>(8)</span></a> -- Remount root and kernel file systems<br><a href="systemd-remount-fs.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-remount-fs.service</span>(8)</span></a> -- Remount root and kernel file systems<br><a href="systemd-resolved.html"><span class="citerefentry"><span class="refentrytitle">systemd-resolved</span>(8)</span></a> -- Network Name Resolution manager<br><a href="systemd-resolved.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-resolved.service</span>(8)</span></a> -- Network Name Resolution manager<br><a href="systemd-rfkill.html"><span class="citerefentry"><span class="refentrytitle">systemd-rfkill</span>(8)</span></a> -- Load and save the RF kill switch state at boot and shutdown<br><a href="systemd-rfkill@.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-rfkill@.service</span>(8)</span></a> -- Load and save the RF kill switch state at boot and shutdown<br><a href="systemd-run.html"><span class="citerefentry"><span class="refentrytitle">systemd-run</span>(1)</span></a> -- Run programs in transient scope or service units<br><a href="systemd-shutdown.html"><span class="citerefentry"><span class="refentrytitle">systemd-shutdown</span>(8)</span></a> -- System shutdown logic<br><a href="systemd-shutdownd.html"><span class="citerefentry"><span class="refentrytitle">systemd-shutdownd</span>(8)</span></a> -- Scheduled shutdown service<br><a href="systemd-shutdownd.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-shutdownd.service</span>(8)</span></a> -- Scheduled shutdown service<br><a href="systemd-shutdownd.socket.html"><span class="citerefentry"><span class="refentrytitle">systemd-shutdownd.socket</span>(8)</span></a> -- Scheduled shutdown service<br><a href="systemd-sleep.html"><span class="citerefentry"><span class="refentrytitle">systemd-sleep</span>(8)</span></a> -- System sleep state logic<br><a href="systemd-sleep.conf.html"><span class="citerefentry"><span class="refentrytitle">systemd-sleep.conf</span>(5)</span></a> -- Suspend and hibernation configuration file<br><a href="systemd-socket-proxyd.html"><span class="citerefentry"><span class="refentrytitle">systemd-socket-proxyd</span>(8)</span></a> -- Bidirectionally proxy local sockets to another (possibly remote) socket.<br><a href="systemd-suspend.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-suspend.service</span>(8)</span></a> -- System sleep state logic<br><a href="systemd-sysctl.html"><span class="citerefentry"><span class="refentrytitle">systemd-sysctl</span>(8)</span></a> -- Configure kernel parameters at boot<br><a href="systemd-sysctl.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-sysctl.service</span>(8)</span></a> -- Configure kernel parameters at boot<br><a href="systemd-system-update-generator.html"><span class="citerefentry"><span class="refentrytitle">systemd-system-update-generator</span>(8)</span></a> -- Generator for redirecting boot to offline update mode<br><a href="systemd-system.conf.html"><span class="citerefentry"><span class="refentrytitle">systemd-system.conf</span>(5)</span></a> -- System and session service manager configuration file<br><a href="systemd-sysusers.html"><span class="citerefentry"><span class="refentrytitle">systemd-sysusers</span>(8)</span></a> -- Allocate system users and groups<br><a href="systemd-sysusers.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-sysusers.service</span>(8)</span></a> -- Allocate system users and groups<br><a href="systemd-timedated.html"><span class="citerefentry"><span class="refentrytitle">systemd-timedated</span>(8)</span></a> -- Time and date bus mechanism<br><a href="systemd-timedated.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-timedated.service</span>(8)</span></a> -- Time and date bus mechanism<br><a href="systemd-timesyncd.html"><span class="citerefentry"><span class="refentrytitle">systemd-timesyncd</span>(8)</span></a> -- Network Time Synchronization<br><a href="systemd-timesyncd.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-timesyncd.service</span>(8)</span></a> -- Network Time Synchronization<br><a href="systemd-tmpfiles.html"><span class="citerefentry"><span class="refentrytitle">systemd-tmpfiles</span>(8)</span></a> -- Creates, deletes and cleans up volatile and temporary files and directories<br><a href="systemd-tmpfiles-clean.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-tmpfiles-clean.service</span>(8)</span></a> -- Creates, deletes and cleans up volatile and temporary files and directories<br><a href="systemd-tmpfiles-clean.timer.html"><span class="citerefentry"><span class="refentrytitle">systemd-tmpfiles-clean.timer</span>(8)</span></a> -- Creates, deletes and cleans up volatile and temporary files and directories<br><a href="systemd-tmpfiles-setup-dev.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-tmpfiles-setup-dev.service</span>(8)</span></a> -- Creates, deletes and cleans up volatile and temporary files and directories<br><a href="systemd-tmpfiles-setup.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-tmpfiles-setup.service</span>(8)</span></a> -- Creates, deletes and cleans up volatile and temporary files and directories<br><a href="systemd-tty-ask-password-agent.html"><span class="citerefentry"><span class="refentrytitle">systemd-tty-ask-password-agent</span>(1)</span></a> -- List or process pending systemd password requests<br><a href="systemd-udevd.html"><span class="citerefentry"><span class="refentrytitle">systemd-udevd</span>(8)</span></a> -- Device event managing daemon<br><a href="systemd-udevd-control.socket.html"><span class="citerefentry"><span class="refentrytitle">systemd-udevd-control.socket</span>(8)</span></a> -- Device event managing daemon<br><a href="systemd-udevd-kernel.socket.html"><span class="citerefentry"><span class="refentrytitle">systemd-udevd-kernel.socket</span>(8)</span></a> -- Device event managing daemon<br><a href="systemd-udevd.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-udevd.service</span>(8)</span></a> -- Device event managing daemon<br><a href="systemd-update-done.html"><span class="citerefentry"><span class="refentrytitle">systemd-update-done</span>(8)</span></a> -- Mark<br><a href="systemd-update-done.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-update-done.service</span>(8)</span></a> -- Mark<br><a href="systemd-update-utmp.html"><span class="citerefentry"><span class="refentrytitle">systemd-update-utmp</span>(8)</span></a> -- Write audit and utmp updates at bootup, runlevel changes and shutdown<br><a href="systemd-update-utmp-runlevel.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-update-utmp-runlevel.service</span>(8)</span></a> -- Write audit and utmp updates at bootup, runlevel changes and shutdown<br><a href="systemd-update-utmp.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-update-utmp.service</span>(8)</span></a> -- Write audit and utmp updates at bootup, runlevel changes and shutdown<br><a href="systemd-user-sessions.html"><span class="citerefentry"><span class="refentrytitle">systemd-user-sessions</span>(8)</span></a> -- Permit user logins after boot, prohibit user logins at shutdown<br><a href="systemd-user-sessions.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-user-sessions.service</span>(8)</span></a> -- Permit user logins after boot, prohibit user logins at shutdown<br><a href="systemd-user.conf.html"><span class="citerefentry"><span class="refentrytitle">systemd-user.conf</span>(5)</span></a> -- System and session service manager configuration file<br><a href="systemd-vconsole-setup.html"><span class="citerefentry"><span class="refentrytitle">systemd-vconsole-setup</span>(8)</span></a> -- Configure the virtual console at boot<br><a href="systemd-vconsole-setup.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-vconsole-setup.service</span>(8)</span></a> -- Configure the virtual console at boot<br><a href="systemd.automount.html"><span class="citerefentry"><span class="refentrytitle">systemd.automount</span>(5)</span></a> -- Automount unit configuration<br><a href="systemd.device.html"><span class="citerefentry"><span class="refentrytitle">systemd.device</span>(5)</span></a> -- Device unit configuration<br><a href="systemd.directives.html"><span class="citerefentry"><span class="refentrytitle">systemd.directives</span>(7)</span></a> -- Index of configuration directives<br><a href="systemd.exec.html"><span class="citerefentry"><span class="refentrytitle">systemd.exec</span>(5)</span></a> -- Execution environment configuration<br><a href="systemd.journal-fields.html"><span class="citerefentry"><span class="refentrytitle">systemd.journal-fields</span>(7)</span></a> -- Special journal fields<br><a href="systemd.kill.html"><span class="citerefentry"><span class="refentrytitle">systemd.kill</span>(5)</span></a> -- Process killing procedure configuration<br><a href="systemd.link.html"><span class="citerefentry"><span class="refentrytitle">systemd.link</span>(5)</span></a> -- Network device configuration<br><a href="systemd.mount.html"><span class="citerefentry"><span class="refentrytitle">systemd.mount</span>(5)</span></a> -- Mount unit configuration<br><a href="systemd.netdev.html"><span class="citerefentry"><span class="refentrytitle">systemd.netdev</span>(5)</span></a> -- Virtual Network Device configuration<br><a href="systemd.network.html"><span class="citerefentry"><span class="refentrytitle">systemd.network</span>(5)</span></a> -- Network configuration<br><a href="systemd.path.html"><span class="citerefentry"><span class="refentrytitle">systemd.path</span>(5)</span></a> -- Path unit configuration<br><a href="systemd.preset.html"><span class="citerefentry"><span class="refentrytitle">systemd.preset</span>(5)</span></a> -- Service enablement presets<br><a href="systemd.resource-control.html"><span class="citerefentry"><span class="refentrytitle">systemd.resource-control</span>(5)</span></a> -- Resource control unit settings<br><a href="systemd.scope.html"><span class="citerefentry"><span class="refentrytitle">systemd.scope</span>(5)</span></a> -- Scope unit configuration<br><a href="systemd.service.html"><span class="citerefentry"><span class="refentrytitle">systemd.service</span>(5)</span></a> -- Service unit configuration<br><a href="systemd.slice.html"><span class="citerefentry"><span class="refentrytitle">systemd.slice</span>(5)</span></a> -- Slice unit configuration<br><a href="systemd.snapshot.html"><span class="citerefentry"><span class="refentrytitle">systemd.snapshot</span>(5)</span></a> -- Snapshot unit configuration<br><a href="systemd.socket.html"><span class="citerefentry"><span class="refentrytitle">systemd.socket</span>(5)</span></a> -- Socket unit configuration<br><a href="systemd.special.html"><span class="citerefentry"><span class="refentrytitle">systemd.special</span>(7)</span></a> -- Special systemd units<br><a href="systemd.swap.html"><span class="citerefentry"><span class="refentrytitle">systemd.swap</span>(5)</span></a> -- Swap unit configuration<br><a href="systemd.target.html"><span class="citerefentry"><span class="refentrytitle">systemd.target</span>(5)</span></a> -- Target unit configuration<br><a href="systemd.time.html"><span class="citerefentry"><span class="refentrytitle">systemd.time</span>(7)</span></a> -- Time and date specifications<br><a href="systemd.timer.html"><span class="citerefentry"><span class="refentrytitle">systemd.timer</span>(5)</span></a> -- Timer unit configuration<br><a href="systemd.unit.html"><span class="citerefentry"><span class="refentrytitle">systemd.unit</span>(5)</span></a> -- Unit configuration<br><a href="sysusers.d.html"><span class="citerefentry"><span class="refentrytitle">sysusers.d</span>(5)</span></a> -- Declarative allocation of system users and groups<br></p></div><div class="refsect1"><a name="idm214175387472"></a><h2 id="T">T<a class="headerlink" title="Permalink to this headline" href="#T">¶</a></h2><p><a href="telinit.html"><span class="citerefentry"><span class="refentrytitle">telinit</span>(8)</span></a> -- Change SysV runlevel<br><a href="timedatectl.html"><span class="citerefentry"><span class="refentrytitle">timedatectl</span>(1)</span></a> -- Control the system time and date<br><a href="tmpfiles.d.html"><span class="citerefentry"><span class="refentrytitle">tmpfiles.d</span>(5)</span></a> -- Configuration for creation, deletion and cleaning of volatile and temporary files<br></p></div><div class="refsect1"><a name="idm214175383984"></a><h2 id="U">U<a class="headerlink" title="Permalink to this headline" href="#U">¶</a></h2><p><a href="udev.html"><span class="citerefentry"><span class="refentrytitle">udev</span>(7)</span></a> -- Dynamic device management<br><a href="udevadm.html"><span class="citerefentry"><span class="refentrytitle">udevadm</span>(8)</span></a> -- udev management tool<br></p></div><div class="refsect1"><a name="idm214175381520"></a><h2 id="V">V<a class="headerlink" title="Permalink to this headline" href="#V">¶</a></h2><p><a href="vconsole.conf.html"><span class="citerefentry"><span class="refentrytitle">vconsole.conf</span>(5)</span></a> -- Configuration file for the virtual console<br></p></div><div class="refsect1"><a name="idm214175380016"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
       <a href="systemd.directives.html"><span class="citerefentry"><span class="refentrytitle">systemd.directives</span>(7)</span></a>
-    </p><p><a name="counts"></a>This index contains 403 entries, referring to 173 individual manual pages.</p></div></div></body></html>
+    </p><p><a name="counts"></a>This index contains 412 entries, referring to 180 individual manual pages.</p></div></div></body></html>
index 5229582acf3c4619a68573261fed9832729d9123..25b04570de545000d605b0a0bc3ad16392b47ccd 100644 (file)
     <refname>systemd.index</refname>
     <refpurpose>List all manpages from the systemd project</refpurpose>
   </refnamediv>
-<refsect1><title>B</title><para><citerefentry><refentrytitle>binfmt.d</refentrytitle><manvolnum>5</manvolnum></citerefentry> -- Configure additional binary formats for executables at boot<sbr/><citerefentry><refentrytitle>bootchart.conf</refentrytitle><manvolnum>5</manvolnum></citerefentry> -- Boot performance analysis graphing tool configuration file<sbr/><citerefentry><refentrytitle>bootctl</refentrytitle><manvolnum>1</manvolnum></citerefentry> -- Control the firmware and boot manager settings<sbr/><citerefentry><refentrytitle>bootup</refentrytitle><manvolnum>7</manvolnum></citerefentry> -- System bootup process<sbr/><citerefentry><refentrytitle>busctl</refentrytitle><manvolnum>1</manvolnum></citerefentry> -- Introspect the bus<sbr/></para></refsect1><refsect1><title>C</title><para><citerefentry><refentrytitle>crypttab</refentrytitle><manvolnum>5</manvolnum></citerefentry> -- Configuration for encrypted block devices<sbr/></para></refsect1><refsect1><title>D</title><para><citerefentry><refentrytitle>daemon</refentrytitle><manvolnum>7</manvolnum></citerefentry> -- Writing and packaging system daemons<sbr/></para></refsect1><refsect1><title>H</title><para><citerefentry><refentrytitle>halt</refentrytitle><manvolnum>8</manvolnum></citerefentry> -- Halt, power-off or reboot the machine<sbr/><citerefentry><refentrytitle>hostname</refentrytitle><manvolnum>5</manvolnum></citerefentry> -- Local hostname configuration file<sbr/><citerefentry><refentrytitle>hostnamectl</refentrytitle><manvolnum>1</manvolnum></citerefentry> -- Control the system hostname<sbr/></para></refsect1><refsect1><title>I</title><para><citerefentry><refentrytitle>init</refentrytitle><manvolnum>1</manvolnum></citerefentry> -- systemd system and service manager<sbr/></para></refsect1><refsect1><title>J</title><para><citerefentry><refentrytitle>journalctl</refentrytitle><manvolnum>1</manvolnum></citerefentry> -- Query the systemd journal<sbr/><citerefentry><refentrytitle>journald.conf</refentrytitle><manvolnum>5</manvolnum></citerefentry> -- Journal service configuration file<sbr/></para></refsect1><refsect1><title>K</title><para><citerefentry><refentrytitle>kernel-command-line</refentrytitle><manvolnum>7</manvolnum></citerefentry> -- Kernel command line parameters<sbr/><citerefentry><refentrytitle>kernel-install</refentrytitle><manvolnum>8</manvolnum></citerefentry> -- Add and remove kernel and initramfs images to and from /boot<sbr/></para></refsect1><refsect1><title>L</title><para><citerefentry><refentrytitle>locale.conf</refentrytitle><manvolnum>5</manvolnum></citerefentry> -- Configuration file for locale settings<sbr/><citerefentry><refentrytitle>localectl</refentrytitle><manvolnum>1</manvolnum></citerefentry> -- Control the system locale and keyboard layout settings<sbr/><citerefentry><refentrytitle>localtime</refentrytitle><manvolnum>5</manvolnum></citerefentry> -- Local timezone configuration file<sbr/><citerefentry><refentrytitle>loginctl</refentrytitle><manvolnum>1</manvolnum></citerefentry> -- Control the systemd login manager<sbr/><citerefentry><refentrytitle>logind.conf</refentrytitle><manvolnum>5</manvolnum></citerefentry> -- Login manager configuration file<sbr/></para></refsect1><refsect1><title>M</title><para><citerefentry><refentrytitle>machine-id</refentrytitle><manvolnum>5</manvolnum></citerefentry> -- Local machine ID configuration file<sbr/><citerefentry><refentrytitle>machine-info</refentrytitle><manvolnum>5</manvolnum></citerefentry> -- Local machine information file<sbr/><citerefentry><refentrytitle>machinectl</refentrytitle><manvolnum>1</manvolnum></citerefentry> -- Control the systemd machine manager<sbr/><citerefentry><refentrytitle>modules-load.d</refentrytitle><manvolnum>5</manvolnum></citerefentry> -- Configure kernel modules to load at boot<sbr/></para></refsect1><refsect1><title>N</title><para><citerefentry><refentrytitle>nss-myhostname</refentrytitle><manvolnum>8</manvolnum></citerefentry> -- Provide hostname resolution for the locally configured system hostname.<sbr/></para></refsect1><refsect1><title>O</title><para><citerefentry><refentrytitle>os-release</refentrytitle><manvolnum>5</manvolnum></citerefentry> -- Operating system identification<sbr/></para></refsect1><refsect1><title>P</title><para><citerefentry><refentrytitle>pam_systemd</refentrytitle><manvolnum>8</manvolnum></citerefentry> -- Register user sessions in the systemd login manager<sbr/><citerefentry><refentrytitle>poweroff</refentrytitle><manvolnum>8</manvolnum></citerefentry> -- Halt, power-off or reboot the machine<sbr/></para></refsect1><refsect1><title>R</title><para><citerefentry><refentrytitle>reboot</refentrytitle><manvolnum>8</manvolnum></citerefentry> -- Halt, power-off or reboot the machine<sbr/><citerefentry><refentrytitle>resolved.conf</refentrytitle><manvolnum>5</manvolnum></citerefentry> -- Network Name Resolution configuration file<sbr/><citerefentry><refentrytitle>runlevel</refentrytitle><manvolnum>8</manvolnum></citerefentry> -- Print previous and current SysV runlevel<sbr/></para></refsect1><refsect1><title>S</title><para><citerefentry><refentrytitle>sd-daemon</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- APIs for new-style daemons<sbr/><citerefentry><refentrytitle>sd-id128</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- APIs for processing 128-bit IDs<sbr/><citerefentry><refentrytitle>sd-journal</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- APIs for submitting and querying log entries to and from the journal<sbr/><citerefentry><refentrytitle>sd-login</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- APIs for tracking logins<sbr/><citerefentry><refentrytitle>sd-readahead</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Reference implementation of APIs for controlling boot-time read-ahead<sbr/><citerefentry><refentrytitle>SD_ALERT</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- APIs for new-style daemons<sbr/><citerefentry><refentrytitle>sd_booted</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Test whether the system is running the systemd init system<sbr/><citerefentry><refentrytitle>sd_bus_creds_get_audit_login_uid</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Retrieve fields from a credentials object<sbr/><citerefentry><refentrytitle>sd_bus_creds_get_audit_session_id</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Retrieve fields from a credentials object<sbr/><citerefentry><refentrytitle>sd_bus_creds_get_cgroup</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Retrieve fields from a credentials object<sbr/><citerefentry><refentrytitle>sd_bus_creds_get_cmdline</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Retrieve fields from a credentials object<sbr/><citerefentry><refentrytitle>sd_bus_creds_get_comm</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Retrieve fields from a credentials object<sbr/><citerefentry><refentrytitle>sd_bus_creds_get_exe</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Retrieve fields from a credentials object<sbr/><citerefentry><refentrytitle>sd_bus_creds_get_gid</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Retrieve fields from a credentials object<sbr/><citerefentry><refentrytitle>sd_bus_creds_get_mask</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Retrieve credentials object for the specified PID<sbr/><citerefentry><refentrytitle>sd_bus_creds_get_owner_uid</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Retrieve fields from a credentials object<sbr/><citerefentry><refentrytitle>sd_bus_creds_get_pid</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Retrieve fields from a credentials object<sbr/><citerefentry><refentrytitle>sd_bus_creds_get_pid_starttime</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Retrieve fields from a credentials object<sbr/><citerefentry><refentrytitle>sd_bus_creds_get_selinux_context</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Retrieve fields from a credentials object<sbr/><citerefentry><refentrytitle>sd_bus_creds_get_session</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Retrieve fields from a credentials object<sbr/><citerefentry><refentrytitle>sd_bus_creds_get_slice</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Retrieve fields from a credentials object<sbr/><citerefentry><refentrytitle>sd_bus_creds_get_tid</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Retrieve fields from a credentials object<sbr/><citerefentry><refentrytitle>sd_bus_creds_get_tid_comm</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Retrieve fields from a credentials object<sbr/><citerefentry><refentrytitle>sd_bus_creds_get_uid</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Retrieve fields from a credentials object<sbr/><citerefentry><refentrytitle>sd_bus_creds_get_unique_name</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Retrieve fields from a credentials object<sbr/><citerefentry><refentrytitle>sd_bus_creds_get_unit</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Retrieve fields from a credentials object<sbr/><citerefentry><refentrytitle>sd_bus_creds_get_user_unit</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Retrieve fields from a credentials object<sbr/><citerefentry><refentrytitle>sd_bus_creds_get_well_known_names</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Retrieve fields from a credentials object<sbr/><citerefentry><refentrytitle>sd_bus_creds_has_bounding_cap</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Retrieve fields from a credentials object<sbr/><citerefentry><refentrytitle>sd_bus_creds_has_effective_cap</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Retrieve fields from a credentials object<sbr/><citerefentry><refentrytitle>sd_bus_creds_has_inheritable_cap</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Retrieve fields from a credentials object<sbr/><citerefentry><refentrytitle>sd_bus_creds_has_permitted_cap</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Retrieve fields from a credentials object<sbr/><citerefentry><refentrytitle>sd_bus_creds_new_from_pid</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Retrieve credentials object for the specified PID<sbr/><citerefentry><refentrytitle>sd_bus_creds_ref</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Retrieve credentials object for the specified PID<sbr/><citerefentry><refentrytitle>sd_bus_creds_unref</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Retrieve credentials object for the specified PID<sbr/><citerefentry><refentrytitle>sd_bus_default_system</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Open a connection to the system or user bus<sbr/><citerefentry><refentrytitle>sd_bus_default_user</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Open a connection to the system or user bus<sbr/><citerefentry><refentrytitle>sd_bus_error</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- sd-bus error handling<sbr/><citerefentry><refentrytitle>sd_bus_error_copy</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- sd-bus error handling<sbr/><citerefentry><refentrytitle>sd_bus_error_free</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- sd-bus error handling<sbr/><citerefentry><refentrytitle>sd_bus_error_get_errno</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- sd-bus error handling<sbr/><citerefentry><refentrytitle>sd_bus_error_has_name</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- sd-bus error handling<sbr/><citerefentry><refentrytitle>sd_bus_error_is_set</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- sd-bus error handling<sbr/><citerefentry><refentrytitle>sd_bus_error_set</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- sd-bus error handling<sbr/><citerefentry><refentrytitle>sd_bus_error_set_const</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- sd-bus error handling<sbr/><citerefentry><refentrytitle>sd_bus_error_set_errno</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- sd-bus error handling<sbr/><citerefentry><refentrytitle>sd_bus_error_set_errnof</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- sd-bus error handling<sbr/><citerefentry><refentrytitle>sd_bus_message_append</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Attach parts of message based on a format string<sbr/><citerefentry><refentrytitle>sd_bus_message_append_array</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Attach an array of items to a message<sbr/><citerefentry><refentrytitle>sd_bus_message_append_array_iovec</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Attach an array of items to a message<sbr/><citerefentry><refentrytitle>sd_bus_message_append_array_memfd</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Attach an array of items to a message<sbr/><citerefentry><refentrytitle>sd_bus_message_append_array_space</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Attach an array of items to a message<sbr/><citerefentry><refentrytitle>sd_bus_message_append_basic</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Attach a single part to a message<sbr/><citerefentry><refentrytitle>sd_bus_message_append_string_iovec</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Attach a string to a message<sbr/><citerefentry><refentrytitle>sd_bus_message_append_string_memfd</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Attach a string to a message<sbr/><citerefentry><refentrytitle>sd_bus_message_append_string_space</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Attach a string to a message<sbr/><citerefentry><refentrytitle>sd_bus_message_append_strv</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Attach an array of strings to a message<sbr/><citerefentry><refentrytitle>sd_bus_message_get_cookie</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Returns the transaction cookie of a message<sbr/><citerefentry><refentrytitle>sd_bus_message_get_monotonic_usec</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Retrieve the sender timestamps and sequence number of a message<sbr/><citerefentry><refentrytitle>sd_bus_message_get_realtime_usec</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Retrieve the sender timestamps and sequence number of a message<sbr/><citerefentry><refentrytitle>sd_bus_message_get_reply_cookie</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Returns the transaction cookie of a message<sbr/><citerefentry><refentrytitle>sd_bus_message_get_seqnum</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Retrieve the sender timestamps and sequence number of a message<sbr/><citerefentry><refentrytitle>sd_bus_negotiate_creds</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Control feature negotiation on bus connections<sbr/><citerefentry><refentrytitle>sd_bus_negotiate_fds</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Control feature negotiation on bus connections<sbr/><citerefentry><refentrytitle>sd_bus_negotiate_timestamps</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Control feature negotiation on bus connections<sbr/><citerefentry><refentrytitle>sd_bus_new</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Create a new bus object and create or destroy references to it<sbr/><citerefentry><refentrytitle>sd_bus_open_system</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Open a connection to the system or user bus<sbr/><citerefentry><refentrytitle>sd_bus_open_system_container</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Open a connection to the system or user bus<sbr/><citerefentry><refentrytitle>sd_bus_open_system_remote</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Open a connection to the system or user bus<sbr/><citerefentry><refentrytitle>sd_bus_open_user</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Open a connection to the system or user bus<sbr/><citerefentry><refentrytitle>sd_bus_path_decode</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Convert an external identifier into an object path and back<sbr/><citerefentry><refentrytitle>sd_bus_path_encode</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Convert an external identifier into an object path and back<sbr/><citerefentry><refentrytitle>sd_bus_ref</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Create a new bus object and create or destroy references to it<sbr/><citerefentry><refentrytitle>sd_bus_release_name</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Request or release a well-known name on a bus<sbr/><citerefentry><refentrytitle>sd_bus_request_name</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Request or release a well-known name on a bus<sbr/><citerefentry><refentrytitle>sd_bus_unref</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Create a new bus object and create or destroy references to it<sbr/><citerefentry><refentrytitle>SD_CRIT</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- APIs for new-style daemons<sbr/><citerefentry><refentrytitle>SD_DEBUG</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- APIs for new-style daemons<sbr/><citerefentry><refentrytitle>SD_EMERG</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- APIs for new-style daemons<sbr/><citerefentry><refentrytitle>SD_ERR</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- APIs for new-style daemons<sbr/><citerefentry><refentrytitle>sd_event_add_time</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Add a timer event source to an event loop<sbr/><citerefentry><refentrytitle>sd_event_default</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Acquire and release an event loop object<sbr/><citerefentry><refentrytitle>sd_event_new</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Acquire and release an event loop object<sbr/><citerefentry><refentrytitle>sd_event_ref</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Acquire and release an event loop object<sbr/><citerefentry><refentrytitle>sd_event_source_get_time</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Add a timer event source to an event loop<sbr/><citerefentry><refentrytitle>sd_event_source_get_time_accuracy</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Add a timer event source to an event loop<sbr/><citerefentry><refentrytitle>sd_event_source_get_time_clock</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Add a timer event source to an event loop<sbr/><citerefentry><refentrytitle>sd_event_source_set_time</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Add a timer event source to an event loop<sbr/><citerefentry><refentrytitle>sd_event_source_set_time_accuracy</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Add a timer event source to an event loop<sbr/><citerefentry><refentrytitle>sd_event_unref</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Acquire and release an event loop object<sbr/><citerefentry><refentrytitle>sd_get_machine_names</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Determine available seats, sessions, logged in users and virtual machines/containers<sbr/><citerefentry><refentrytitle>sd_get_seats</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Determine available seats, sessions, logged in users and virtual machines/containers<sbr/><citerefentry><refentrytitle>sd_get_sessions</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Determine available seats, sessions, logged in users and virtual machines/containers<sbr/><citerefentry><refentrytitle>sd_get_uids</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Determine available seats, sessions, logged in users and virtual machines/containers<sbr/><citerefentry><refentrytitle>SD_ID128_CONST_STR</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- APIs for processing 128-bit IDs<sbr/><citerefentry><refentrytitle>sd_id128_equal</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- APIs for processing 128-bit IDs<sbr/><citerefentry><refentrytitle>SD_ID128_FORMAT_STR</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- APIs for processing 128-bit IDs<sbr/><citerefentry><refentrytitle>SD_ID128_FORMAT_VAL</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- APIs for processing 128-bit IDs<sbr/><citerefentry><refentrytitle>sd_id128_from_string</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Format or parse 128-bit IDs as strings<sbr/><citerefentry><refentrytitle>sd_id128_get_boot</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Retrieve 128-bit IDs<sbr/><citerefentry><refentrytitle>sd_id128_get_machine</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Retrieve 128-bit IDs<sbr/><citerefentry><refentrytitle>SD_ID128_MAKE</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- APIs for processing 128-bit IDs<sbr/><citerefentry><refentrytitle>sd_id128_randomize</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Generate 128-bit IDs<sbr/><citerefentry><refentrytitle>sd_id128_t</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- APIs for processing 128-bit IDs<sbr/><citerefentry><refentrytitle>sd_id128_to_string</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Format or parse 128-bit IDs as strings<sbr/><citerefentry><refentrytitle>SD_INFO</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- APIs for new-style daemons<sbr/><citerefentry><refentrytitle>sd_is_fifo</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Check the type of a file descriptor<sbr/><citerefentry><refentrytitle>sd_is_mq</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Check the type of a file descriptor<sbr/><citerefentry><refentrytitle>sd_is_socket</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Check the type of a file descriptor<sbr/><citerefentry><refentrytitle>sd_is_socket_inet</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Check the type of a file descriptor<sbr/><citerefentry><refentrytitle>sd_is_socket_unix</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Check the type of a file descriptor<sbr/><citerefentry><refentrytitle>sd_is_special</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Check the type of a file descriptor<sbr/><citerefentry><refentrytitle>sd_journal</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Open the system journal for reading<sbr/><citerefentry><refentrytitle>sd_journal_add_conjunction</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Add or remove entry matches<sbr/><citerefentry><refentrytitle>sd_journal_add_disjunction</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Add or remove entry matches<sbr/><citerefentry><refentrytitle>sd_journal_add_match</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Add or remove entry matches<sbr/><citerefentry><refentrytitle>SD_JOURNAL_APPEND</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Journal change notification interface<sbr/><citerefentry><refentrytitle>sd_journal_close</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Open the system journal for reading<sbr/><citerefentry><refentrytitle>SD_JOURNAL_CURRENT_USER</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Open the system journal for reading<sbr/><citerefentry><refentrytitle>sd_journal_enumerate_data</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Read data fields from the current journal entry<sbr/><citerefentry><refentrytitle>sd_journal_enumerate_unique</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Read unique data fields from the journal<sbr/><citerefentry><refentrytitle>sd_journal_flush_matches</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Add or remove entry matches<sbr/><citerefentry><refentrytitle>SD_JOURNAL_FOREACH</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Advance or set back the read pointer in the journal<sbr/><citerefentry><refentrytitle>SD_JOURNAL_FOREACH_BACKWARDS</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Advance or set back the read pointer in the journal<sbr/><citerefentry><refentrytitle>SD_JOURNAL_FOREACH_DATA</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Read data fields from the current journal entry<sbr/><citerefentry><refentrytitle>SD_JOURNAL_FOREACH_UNIQUE</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Read unique data fields from the journal<sbr/><citerefentry><refentrytitle>sd_journal_get_catalog</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Retrieve message catalog entry<sbr/><citerefentry><refentrytitle>sd_journal_get_catalog_for_message_id</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Retrieve message catalog entry<sbr/><citerefentry><refentrytitle>sd_journal_get_cursor</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Get cursor string for or test cursor string against the current journal entry<sbr/><citerefentry><refentrytitle>sd_journal_get_cutoff_monotonic_usec</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Read cut-off timestamps from the current journal entry<sbr/><citerefentry><refentrytitle>sd_journal_get_cutoff_realtime_usec</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Read cut-off timestamps from the current journal entry<sbr/><citerefentry><refentrytitle>sd_journal_get_data</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Read data fields from the current journal entry<sbr/><citerefentry><refentrytitle>sd_journal_get_data_threshold</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Read data fields from the current journal entry<sbr/><citerefentry><refentrytitle>sd_journal_get_events</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Journal change notification interface<sbr/><citerefentry><refentrytitle>sd_journal_get_fd</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Journal change notification interface<sbr/><citerefentry><refentrytitle>sd_journal_get_monotonic_usec</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Read timestamps from the current journal entry<sbr/><citerefentry><refentrytitle>sd_journal_get_realtime_usec</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Read timestamps from the current journal entry<sbr/><citerefentry><refentrytitle>sd_journal_get_timeout</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Journal change notification interface<sbr/><citerefentry><refentrytitle>sd_journal_get_usage</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Journal disk usage<sbr/><citerefentry><refentrytitle>SD_JOURNAL_INVALIDATE</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Journal change notification interface<sbr/><citerefentry><refentrytitle>SD_JOURNAL_LOCAL_ONLY</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Open the system journal for reading<sbr/><citerefentry><refentrytitle>sd_journal_next</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Advance or set back the read pointer in the journal<sbr/><citerefentry><refentrytitle>sd_journal_next_skip</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Advance or set back the read pointer in the journal<sbr/><citerefentry><refentrytitle>SD_JOURNAL_NOP</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Journal change notification interface<sbr/><citerefentry><refentrytitle>sd_journal_open</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Open the system journal for reading<sbr/><citerefentry><refentrytitle>sd_journal_open_container</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Open the system journal for reading<sbr/><citerefentry><refentrytitle>sd_journal_open_directory</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Open the system journal for reading<sbr/><citerefentry><refentrytitle>sd_journal_open_files</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Open the system journal for reading<sbr/><citerefentry><refentrytitle>sd_journal_perror</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Submit log entries to the journal<sbr/><citerefentry><refentrytitle>sd_journal_previous</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Advance or set back the read pointer in the journal<sbr/><citerefentry><refentrytitle>sd_journal_previous_skip</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Advance or set back the read pointer in the journal<sbr/><citerefentry><refentrytitle>sd_journal_print</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Submit log entries to the journal<sbr/><citerefentry><refentrytitle>sd_journal_printv</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Submit log entries to the journal<sbr/><citerefentry><refentrytitle>sd_journal_process</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Journal change notification interface<sbr/><citerefentry><refentrytitle>sd_journal_query_unique</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Read unique data fields from the journal<sbr/><citerefentry><refentrytitle>sd_journal_reliable_fd</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Journal change notification interface<sbr/><citerefentry><refentrytitle>sd_journal_restart_data</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Read data fields from the current journal entry<sbr/><citerefentry><refentrytitle>sd_journal_restart_unique</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Read unique data fields from the journal<sbr/><citerefentry><refentrytitle>SD_JOURNAL_RUNTIME_ONLY</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Open the system journal for reading<sbr/><citerefentry><refentrytitle>sd_journal_seek_cursor</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Seek to a position in the journal<sbr/><citerefentry><refentrytitle>sd_journal_seek_head</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Seek to a position in the journal<sbr/><citerefentry><refentrytitle>sd_journal_seek_monotonic_usec</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Seek to a position in the journal<sbr/><citerefentry><refentrytitle>sd_journal_seek_realtime_usec</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Seek to a position in the journal<sbr/><citerefentry><refentrytitle>sd_journal_seek_tail</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Seek to a position in the journal<sbr/><citerefentry><refentrytitle>sd_journal_send</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Submit log entries to the journal<sbr/><citerefentry><refentrytitle>sd_journal_sendv</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Submit log entries to the journal<sbr/><citerefentry><refentrytitle>sd_journal_set_data_threshold</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Read data fields from the current journal entry<sbr/><citerefentry><refentrytitle>sd_journal_stream_fd</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Create log stream file descriptor to the journal<sbr/><citerefentry><refentrytitle>SD_JOURNAL_SUPPRESS_LOCATION</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Submit log entries to the journal<sbr/><citerefentry><refentrytitle>SD_JOURNAL_SYSTEM</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Open the system journal for reading<sbr/><citerefentry><refentrytitle>sd_journal_test_cursor</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Get cursor string for or test cursor string against the current journal entry<sbr/><citerefentry><refentrytitle>sd_journal_wait</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Journal change notification interface<sbr/><citerefentry><refentrytitle>sd_listen_fds</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Check for file descriptors passed by the system manager<sbr/><citerefentry><refentrytitle>SD_LISTEN_FDS_START</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Check for file descriptors passed by the system manager<sbr/><citerefentry><refentrytitle>sd_login_monitor</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Monitor login sessions, seats, users and virtual machines/containers<sbr/><citerefentry><refentrytitle>sd_login_monitor_flush</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Monitor login sessions, seats, users and virtual machines/containers<sbr/><citerefentry><refentrytitle>sd_login_monitor_get_events</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Monitor login sessions, seats, users and virtual machines/containers<sbr/><citerefentry><refentrytitle>sd_login_monitor_get_fd</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Monitor login sessions, seats, users and virtual machines/containers<sbr/><citerefentry><refentrytitle>sd_login_monitor_get_timeout</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Monitor login sessions, seats, users and virtual machines/containers<sbr/><citerefentry><refentrytitle>sd_login_monitor_new</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Monitor login sessions, seats, users and virtual machines/containers<sbr/><citerefentry><refentrytitle>sd_login_monitor_unref</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Monitor login sessions, seats, users and virtual machines/containers<sbr/><citerefentry><refentrytitle>SD_NOTICE</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- APIs for new-style daemons<sbr/><citerefentry><refentrytitle>sd_notify</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Notify service manager about start-up completion and other daemon status changes<sbr/><citerefentry><refentrytitle>sd_notifyf</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Notify service manager about start-up completion and other daemon status changes<sbr/><citerefentry><refentrytitle>sd_peer_get_machine_name</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Determine session, service, owner of a session, container/VM or slice of a specific PID or socket peer<sbr/><citerefentry><refentrytitle>sd_peer_get_owner_uid</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Determine session, service, owner of a session, container/VM or slice of a specific PID or socket peer<sbr/><citerefentry><refentrytitle>sd_peer_get_session</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Determine session, service, owner of a session, container/VM or slice of a specific PID or socket peer<sbr/><citerefentry><refentrytitle>sd_peer_get_slice</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Determine session, service, owner of a session, container/VM or slice of a specific PID or socket peer<sbr/><citerefentry><refentrytitle>sd_peer_get_unit</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Determine session, service, owner of a session, container/VM or slice of a specific PID or socket peer<sbr/><citerefentry><refentrytitle>sd_peer_get_user_unit</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Determine session, service, owner of a session, container/VM or slice of a specific PID or socket peer<sbr/><citerefentry><refentrytitle>sd_pid_get_machine_name</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Determine session, service, owner of a session, container/VM or slice of a specific PID or socket peer<sbr/><citerefentry><refentrytitle>sd_pid_get_owner_uid</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Determine session, service, owner of a session, container/VM or slice of a specific PID or socket peer<sbr/><citerefentry><refentrytitle>sd_pid_get_session</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Determine session, service, owner of a session, container/VM or slice of a specific PID or socket peer<sbr/><citerefentry><refentrytitle>sd_pid_get_slice</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Determine session, service, owner of a session, container/VM or slice of a specific PID or socket peer<sbr/><citerefentry><refentrytitle>sd_pid_get_unit</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Determine session, service, owner of a session, container/VM or slice of a specific PID or socket peer<sbr/><citerefentry><refentrytitle>sd_pid_get_user_unit</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Determine session, service, owner of a session, container/VM or slice of a specific PID or socket peer<sbr/><citerefentry><refentrytitle>sd_readahead</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Control ongoing disk boot-time read-ahead operations<sbr/><citerefentry><refentrytitle>sd_seat_can_graphical</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Determine state of a specific seat<sbr/><citerefentry><refentrytitle>sd_seat_can_multi_session</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Determine state of a specific seat<sbr/><citerefentry><refentrytitle>sd_seat_can_tty</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Determine state of a specific seat<sbr/><citerefentry><refentrytitle>sd_seat_get_active</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Determine state of a specific seat<sbr/><citerefentry><refentrytitle>sd_seat_get_sessions</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Determine state of a specific seat<sbr/><citerefentry><refentrytitle>sd_session_get_class</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Determine state of a specific session<sbr/><citerefentry><refentrytitle>sd_session_get_display</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Determine state of a specific session<sbr/><citerefentry><refentrytitle>sd_session_get_remote_host</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Determine state of a specific session<sbr/><citerefentry><refentrytitle>sd_session_get_remote_user</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Determine state of a specific session<sbr/><citerefentry><refentrytitle>sd_session_get_seat</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Determine state of a specific session<sbr/><citerefentry><refentrytitle>sd_session_get_service</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Determine state of a specific session<sbr/><citerefentry><refentrytitle>sd_session_get_state</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Determine state of a specific session<sbr/><citerefentry><refentrytitle>sd_session_get_tty</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Determine state of a specific session<sbr/><citerefentry><refentrytitle>sd_session_get_type</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Determine state of a specific session<sbr/><citerefentry><refentrytitle>sd_session_get_uid</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Determine state of a specific session<sbr/><citerefentry><refentrytitle>sd_session_get_vt</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Determine state of a specific session<sbr/><citerefentry><refentrytitle>sd_session_is_active</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Determine state of a specific session<sbr/><citerefentry><refentrytitle>sd_session_is_remote</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Determine state of a specific session<sbr/><citerefentry><refentrytitle>sd_uid_get_display</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Determine login state of a specific Unix user ID<sbr/><citerefentry><refentrytitle>sd_uid_get_seats</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Determine login state of a specific Unix user ID<sbr/><citerefentry><refentrytitle>sd_uid_get_sessions</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Determine login state of a specific Unix user ID<sbr/><citerefentry><refentrytitle>sd_uid_get_state</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Determine login state of a specific Unix user ID<sbr/><citerefentry><refentrytitle>sd_uid_is_on_seat</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Determine login state of a specific Unix user ID<sbr/><citerefentry><refentrytitle>SD_WARNING</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- APIs for new-style daemons<sbr/><citerefentry><refentrytitle>sd_watchdog_enabled</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Check whether the service manager expects watchdog keep-alive notifications from a service<sbr/><citerefentry><refentrytitle>shutdown</refentrytitle><manvolnum>8</manvolnum></citerefentry> -- Halt, power-off or reboot the machine<sbr/><citerefentry><refentrytitle>sysctl.d</refentrytitle><manvolnum>5</manvolnum></citerefentry> -- Configure kernel parameters at boot<sbr/><citerefentry><refentrytitle>systemctl</refentrytitle><manvolnum>1</manvolnum></citerefentry> -- Control the systemd system and service manager<sbr/><citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry> -- systemd system and service manager<sbr/><citerefentry><refentrytitle>systemd-activate</refentrytitle><manvolnum>8</manvolnum></citerefentry> -- Test socket activation of daemons<sbr/><citerefentry><refentrytitle>systemd-analyze</refentrytitle><manvolnum>1</manvolnum></citerefentry> -- Analyze system boot-up performance<sbr/><citerefentry><refentrytitle>systemd-ask-password</refentrytitle><manvolnum>1</manvolnum></citerefentry> -- Query the user for a system password<sbr/><citerefentry><refentrytitle>systemd-ask-password-console.path</refentrytitle><manvolnum>8</manvolnum></citerefentry> -- Query the user for system passwords on the console and via wall<sbr/><citerefentry><refentrytitle>systemd-ask-password-console.service</refentrytitle><manvolnum>8</manvolnum></citerefentry> -- Query the user for system passwords on the console and via wall<sbr/><citerefentry><refentrytitle>systemd-ask-password-wall.path</refentrytitle><manvolnum>8</manvolnum></citerefentry> -- Query the user for system passwords on the console and via wall<sbr/><citerefentry><refentrytitle>systemd-ask-password-wall.service</refentrytitle><manvolnum>8</manvolnum></citerefentry> -- Query the user for system passwords on the console and via wall<sbr/><citerefentry><refentrytitle>systemd-backlight</refentrytitle><manvolnum>8</manvolnum></citerefentry> -- Load and save the display backlight brightness at boot and shutdown<sbr/><citerefentry><refentrytitle>systemd-backlight@.service</refentrytitle><manvolnum>8</manvolnum></citerefentry> -- Load and save the display backlight brightness at boot and shutdown<sbr/><citerefentry><refentrytitle>systemd-binfmt</refentrytitle><manvolnum>8</manvolnum></citerefentry> -- Configure additional binary formats for executables at boot<sbr/><citerefentry><refentrytitle>systemd-binfmt.service</refentrytitle><manvolnum>8</manvolnum></citerefentry> -- Configure additional binary formats for executables at boot<sbr/><citerefentry><refentrytitle>systemd-bootchart</refentrytitle><manvolnum>1</manvolnum></citerefentry> -- Boot performance graphing tool<sbr/><citerefentry><refentrytitle>systemd-bus-proxyd</refentrytitle><manvolnum>8</manvolnum></citerefentry> -- Connect STDIO or a socket to a given bus address<sbr/><citerefentry><refentrytitle>systemd-bus-proxyd.socket</refentrytitle><manvolnum>8</manvolnum></citerefentry> -- Proxy classic D-Bus clients to kdbus<sbr/><citerefentry><refentrytitle>systemd-bus-proxyd@.service</refentrytitle><manvolnum>8</manvolnum></citerefentry> -- Proxy classic D-Bus clients to kdbus<sbr/><citerefentry><refentrytitle>systemd-cat</refentrytitle><manvolnum>1</manvolnum></citerefentry> -- Connect a pipeline or program's output with the journal<sbr/><citerefentry><refentrytitle>systemd-cgls</refentrytitle><manvolnum>1</manvolnum></citerefentry> -- Recursively show control group contents<sbr/><citerefentry><refentrytitle>systemd-cgtop</refentrytitle><manvolnum>1</manvolnum></citerefentry> -- Show top control groups by their resource usage<sbr/><citerefentry><refentrytitle>systemd-coredumpctl</refentrytitle><manvolnum>1</manvolnum></citerefentry> -- Retrieve coredumps from the journal<sbr/><citerefentry><refentrytitle>systemd-cryptsetup</refentrytitle><manvolnum>8</manvolnum></citerefentry> -- Full disk decryption logic<sbr/><citerefentry><refentrytitle>systemd-cryptsetup-generator</refentrytitle><manvolnum>8</manvolnum></citerefentry> -- Unit generator for<sbr/><citerefentry><refentrytitle>systemd-cryptsetup@.service</refentrytitle><manvolnum>8</manvolnum></citerefentry> -- Full disk decryption logic<sbr/><citerefentry><refentrytitle>systemd-delta</refentrytitle><manvolnum>1</manvolnum></citerefentry> -- Find overridden configuration files<sbr/><citerefentry><refentrytitle>systemd-detect-virt</refentrytitle><manvolnum>1</manvolnum></citerefentry> -- Detect execution in a virtualized environment<sbr/><citerefentry><refentrytitle>systemd-efi-boot-generator</refentrytitle><manvolnum>8</manvolnum></citerefentry> -- Generator for automatically mounting the EFI System Partition used by the current boot to<sbr/><citerefentry><refentrytitle>systemd-fsck</refentrytitle><manvolnum>8</manvolnum></citerefentry> -- File system checker logic<sbr/><citerefentry><refentrytitle>systemd-fsck-root.service</refentrytitle><manvolnum>8</manvolnum></citerefentry> -- File system checker logic<sbr/><citerefentry><refentrytitle>systemd-fsck@.service</refentrytitle><manvolnum>8</manvolnum></citerefentry> -- File system checker logic<sbr/><citerefentry><refentrytitle>systemd-fstab-generator</refentrytitle><manvolnum>8</manvolnum></citerefentry> -- Unit generator for /etc/fstab<sbr/><citerefentry><refentrytitle>systemd-getty-generator</refentrytitle><manvolnum>8</manvolnum></citerefentry> -- Generator for enabling getty instances on the console<sbr/><citerefentry><refentrytitle>systemd-gpt-auto-generator</refentrytitle><manvolnum>8</manvolnum></citerefentry> -- Generator for automatically discovering and mounting root,<sbr/><citerefentry><refentrytitle>systemd-halt.service</refentrytitle><manvolnum>8</manvolnum></citerefentry> -- System shutdown logic<sbr/><citerefentry><refentrytitle>systemd-hibernate.service</refentrytitle><manvolnum>8</manvolnum></citerefentry> -- System sleep state logic<sbr/><citerefentry><refentrytitle>systemd-hostnamed</refentrytitle><manvolnum>8</manvolnum></citerefentry> -- Host name bus mechanism<sbr/><citerefentry><refentrytitle>systemd-hostnamed.service</refentrytitle><manvolnum>8</manvolnum></citerefentry> -- Host name bus mechanism<sbr/><citerefentry><refentrytitle>systemd-hybrid-sleep.service</refentrytitle><manvolnum>8</manvolnum></citerefentry> -- System sleep state logic<sbr/><citerefentry><refentrytitle>systemd-inhibit</refentrytitle><manvolnum>1</manvolnum></citerefentry> -- Execute a program with an inhibition lock taken<sbr/><citerefentry><refentrytitle>systemd-initctl</refentrytitle><manvolnum>8</manvolnum></citerefentry> -- /dev/initctl compatibility<sbr/><citerefentry><refentrytitle>systemd-initctl.service</refentrytitle><manvolnum>8</manvolnum></citerefentry> -- /dev/initctl compatibility<sbr/><citerefentry><refentrytitle>systemd-initctl.socket</refentrytitle><manvolnum>8</manvolnum></citerefentry> -- /dev/initctl compatibility<sbr/><citerefentry><refentrytitle>systemd-journal-gatewayd</refentrytitle><manvolnum>8</manvolnum></citerefentry> -- HTTP server for journal events<sbr/><citerefentry><refentrytitle>systemd-journal-gatewayd.service</refentrytitle><manvolnum>8</manvolnum></citerefentry> -- HTTP server for journal events<sbr/><citerefentry><refentrytitle>systemd-journal-gatewayd.socket</refentrytitle><manvolnum>8</manvolnum></citerefentry> -- HTTP server for journal events<sbr/><citerefentry><refentrytitle>systemd-journal-remote</refentrytitle><manvolnum>8</manvolnum></citerefentry> -- Stream journal messages over the network<sbr/><citerefentry><refentrytitle>systemd-journald</refentrytitle><manvolnum>8</manvolnum></citerefentry> -- Journal service<sbr/><citerefentry><refentrytitle>systemd-journald-dev-log.socket</refentrytitle><manvolnum>8</manvolnum></citerefentry> -- Journal service<sbr/><citerefentry><refentrytitle>systemd-journald.service</refentrytitle><manvolnum>8</manvolnum></citerefentry> -- Journal service<sbr/><citerefentry><refentrytitle>systemd-journald.socket</refentrytitle><manvolnum>8</manvolnum></citerefentry> -- Journal service<sbr/><citerefentry><refentrytitle>systemd-kexec.service</refentrytitle><manvolnum>8</manvolnum></citerefentry> -- System shutdown logic<sbr/><citerefentry><refentrytitle>systemd-localed</refentrytitle><manvolnum>8</manvolnum></citerefentry> -- Locale bus mechanism<sbr/><citerefentry><refentrytitle>systemd-localed.service</refentrytitle><manvolnum>8</manvolnum></citerefentry> -- Locale bus mechanism<sbr/><citerefentry><refentrytitle>systemd-logind</refentrytitle><manvolnum>8</manvolnum></citerefentry> -- Login manager<sbr/><citerefentry><refentrytitle>systemd-logind.service</refentrytitle><manvolnum>8</manvolnum></citerefentry> -- Login manager<sbr/><citerefentry><refentrytitle>systemd-machine-id-setup</refentrytitle><manvolnum>1</manvolnum></citerefentry> -- Initialize the machine ID in /etc/machine-id<sbr/><citerefentry><refentrytitle>systemd-machined</refentrytitle><manvolnum>8</manvolnum></citerefentry> -- Virtual machine and container registration manager<sbr/><citerefentry><refentrytitle>systemd-machined.service</refentrytitle><manvolnum>8</manvolnum></citerefentry> -- Virtual machine and container registration manager<sbr/><citerefentry><refentrytitle>systemd-modules-load</refentrytitle><manvolnum>8</manvolnum></citerefentry> -- Configure kernel modules to load at boot<sbr/><citerefentry><refentrytitle>systemd-modules-load.service</refentrytitle><manvolnum>8</manvolnum></citerefentry> -- Configure kernel modules to load at boot<sbr/><citerefentry><refentrytitle>systemd-networkd</refentrytitle><manvolnum>8</manvolnum></citerefentry> -- Network manager<sbr/><citerefentry><refentrytitle>systemd-networkd-wait-online</refentrytitle><manvolnum>8</manvolnum></citerefentry> -- Wait for network to come online<sbr/><citerefentry><refentrytitle>systemd-networkd-wait-online.service</refentrytitle><manvolnum>8</manvolnum></citerefentry> -- Wait for network to come online<sbr/><citerefentry><refentrytitle>systemd-networkd.service</refentrytitle><manvolnum>8</manvolnum></citerefentry> -- Network manager<sbr/><citerefentry><refentrytitle>systemd-notify</refentrytitle><manvolnum>1</manvolnum></citerefentry> -- Notify service manager about start-up completion and other daemon status changes<sbr/><citerefentry><refentrytitle>systemd-nspawn</refentrytitle><manvolnum>1</manvolnum></citerefentry> -- Spawn a namespace container for debugging, testing and building<sbr/><citerefentry><refentrytitle>systemd-poweroff.service</refentrytitle><manvolnum>8</manvolnum></citerefentry> -- System shutdown logic<sbr/><citerefentry><refentrytitle>systemd-quotacheck</refentrytitle><manvolnum>8</manvolnum></citerefentry> -- File system quota checker logic<sbr/><citerefentry><refentrytitle>systemd-quotacheck.service</refentrytitle><manvolnum>8</manvolnum></citerefentry> -- File system quota checker logic<sbr/><citerefentry><refentrytitle>systemd-random-seed</refentrytitle><manvolnum>8</manvolnum></citerefentry> -- Load and save the system random seed at boot and shutdown<sbr/><citerefentry><refentrytitle>systemd-random-seed.service</refentrytitle><manvolnum>8</manvolnum></citerefentry> -- Load and save the system random seed at boot and shutdown<sbr/><citerefentry><refentrytitle>systemd-readahead</refentrytitle><manvolnum>8</manvolnum></citerefentry> -- Disk read ahead logic<sbr/><citerefentry><refentrytitle>systemd-readahead-collect.service</refentrytitle><manvolnum>8</manvolnum></citerefentry> -- Disk read ahead logic<sbr/><citerefentry><refentrytitle>systemd-readahead-done.service</refentrytitle><manvolnum>8</manvolnum></citerefentry> -- Disk read ahead logic<sbr/><citerefentry><refentrytitle>systemd-readahead-done.timer</refentrytitle><manvolnum>8</manvolnum></citerefentry> -- Disk read ahead logic<sbr/><citerefentry><refentrytitle>systemd-readahead-replay.service</refentrytitle><manvolnum>8</manvolnum></citerefentry> -- Disk read ahead logic<sbr/><citerefentry><refentrytitle>systemd-reboot.service</refentrytitle><manvolnum>8</manvolnum></citerefentry> -- System shutdown logic<sbr/><citerefentry><refentrytitle>systemd-remount-fs</refentrytitle><manvolnum>8</manvolnum></citerefentry> -- Remount root and kernel file systems<sbr/><citerefentry><refentrytitle>systemd-remount-fs.service</refentrytitle><manvolnum>8</manvolnum></citerefentry> -- Remount root and kernel file systems<sbr/><citerefentry><refentrytitle>systemd-resolved</refentrytitle><manvolnum>8</manvolnum></citerefentry> -- Network Name Resolution manager<sbr/><citerefentry><refentrytitle>systemd-resolved.service</refentrytitle><manvolnum>8</manvolnum></citerefentry> -- Network Name Resolution manager<sbr/><citerefentry><refentrytitle>systemd-rfkill</refentrytitle><manvolnum>8</manvolnum></citerefentry> -- Load and save the RF kill switch state at boot and shutdown<sbr/><citerefentry><refentrytitle>systemd-rfkill@.service</refentrytitle><manvolnum>8</manvolnum></citerefentry> -- Load and save the RF kill switch state at boot and shutdown<sbr/><citerefentry><refentrytitle>systemd-run</refentrytitle><manvolnum>1</manvolnum></citerefentry> -- Run programs in transient scope or service units<sbr/><citerefentry><refentrytitle>systemd-shutdown</refentrytitle><manvolnum>8</manvolnum></citerefentry> -- System shutdown logic<sbr/><citerefentry><refentrytitle>systemd-shutdownd</refentrytitle><manvolnum>8</manvolnum></citerefentry> -- Scheduled shutdown service<sbr/><citerefentry><refentrytitle>systemd-shutdownd.service</refentrytitle><manvolnum>8</manvolnum></citerefentry> -- Scheduled shutdown service<sbr/><citerefentry><refentrytitle>systemd-shutdownd.socket</refentrytitle><manvolnum>8</manvolnum></citerefentry> -- Scheduled shutdown service<sbr/><citerefentry><refentrytitle>systemd-sleep</refentrytitle><manvolnum>8</manvolnum></citerefentry> -- System sleep state logic<sbr/><citerefentry><refentrytitle>systemd-sleep.conf</refentrytitle><manvolnum>5</manvolnum></citerefentry> -- Suspend and hibernation configuration file<sbr/><citerefentry><refentrytitle>systemd-socket-proxyd</refentrytitle><manvolnum>8</manvolnum></citerefentry> -- Bidirectionally proxy local sockets to another (possibly remote) socket.<sbr/><citerefentry><refentrytitle>systemd-suspend.service</refentrytitle><manvolnum>8</manvolnum></citerefentry> -- System sleep state logic<sbr/><citerefentry><refentrytitle>systemd-sysctl</refentrytitle><manvolnum>8</manvolnum></citerefentry> -- Configure kernel parameters at boot<sbr/><citerefentry><refentrytitle>systemd-sysctl.service</refentrytitle><manvolnum>8</manvolnum></citerefentry> -- Configure kernel parameters at boot<sbr/><citerefentry><refentrytitle>systemd-system-update-generator</refentrytitle><manvolnum>8</manvolnum></citerefentry> -- Generator for redirecting boot to offline update mode<sbr/><citerefentry><refentrytitle>systemd-system.conf</refentrytitle><manvolnum>5</manvolnum></citerefentry> -- System and session service manager configuration file<sbr/><citerefentry><refentrytitle>systemd-timedated</refentrytitle><manvolnum>8</manvolnum></citerefentry> -- Time and date bus mechanism<sbr/><citerefentry><refentrytitle>systemd-timedated.service</refentrytitle><manvolnum>8</manvolnum></citerefentry> -- Time and date bus mechanism<sbr/><citerefentry><refentrytitle>systemd-timesyncd</refentrytitle><manvolnum>8</manvolnum></citerefentry> -- Network Time Synchronization<sbr/><citerefentry><refentrytitle>systemd-timesyncd.service</refentrytitle><manvolnum>8</manvolnum></citerefentry> -- Network Time Synchronization<sbr/><citerefentry><refentrytitle>systemd-tmpfiles</refentrytitle><manvolnum>8</manvolnum></citerefentry> -- Creates, deletes and cleans up volatile and temporary files and directories<sbr/><citerefentry><refentrytitle>systemd-tmpfiles-clean.service</refentrytitle><manvolnum>8</manvolnum></citerefentry> -- Creates, deletes and cleans up volatile and temporary files and directories<sbr/><citerefentry><refentrytitle>systemd-tmpfiles-clean.timer</refentrytitle><manvolnum>8</manvolnum></citerefentry> -- Creates, deletes and cleans up volatile and temporary files and directories<sbr/><citerefentry><refentrytitle>systemd-tmpfiles-setup-dev.service</refentrytitle><manvolnum>8</manvolnum></citerefentry> -- Creates, deletes and cleans up volatile and temporary files and directories<sbr/><citerefentry><refentrytitle>systemd-tmpfiles-setup.service</refentrytitle><manvolnum>8</manvolnum></citerefentry> -- Creates, deletes and cleans up volatile and temporary files and directories<sbr/><citerefentry><refentrytitle>systemd-tty-ask-password-agent</refentrytitle><manvolnum>1</manvolnum></citerefentry> -- List or process pending systemd password requests<sbr/><citerefentry><refentrytitle>systemd-udevd</refentrytitle><manvolnum>8</manvolnum></citerefentry> -- Device event managing daemon<sbr/><citerefentry><refentrytitle>systemd-udevd-control.socket</refentrytitle><manvolnum>8</manvolnum></citerefentry> -- Device event managing daemon<sbr/><citerefentry><refentrytitle>systemd-udevd-kernel.socket</refentrytitle><manvolnum>8</manvolnum></citerefentry> -- Device event managing daemon<sbr/><citerefentry><refentrytitle>systemd-udevd.service</refentrytitle><manvolnum>8</manvolnum></citerefentry> -- Device event managing daemon<sbr/><citerefentry><refentrytitle>systemd-update-utmp</refentrytitle><manvolnum>8</manvolnum></citerefentry> -- Write audit and utmp updates at bootup, runlevel changes and shutdown<sbr/><citerefentry><refentrytitle>systemd-update-utmp-runlevel.service</refentrytitle><manvolnum>8</manvolnum></citerefentry> -- Write audit and utmp updates at bootup, runlevel changes and shutdown<sbr/><citerefentry><refentrytitle>systemd-update-utmp.service</refentrytitle><manvolnum>8</manvolnum></citerefentry> -- Write audit and utmp updates at bootup, runlevel changes and shutdown<sbr/><citerefentry><refentrytitle>systemd-user-sessions</refentrytitle><manvolnum>8</manvolnum></citerefentry> -- Permit user logins after boot, prohibit user logins at shutdown<sbr/><citerefentry><refentrytitle>systemd-user-sessions.service</refentrytitle><manvolnum>8</manvolnum></citerefentry> -- Permit user logins after boot, prohibit user logins at shutdown<sbr/><citerefentry><refentrytitle>systemd-user.conf</refentrytitle><manvolnum>5</manvolnum></citerefentry> -- System and session service manager configuration file<sbr/><citerefentry><refentrytitle>systemd-vconsole-setup</refentrytitle><manvolnum>8</manvolnum></citerefentry> -- Configure the virtual console at boot<sbr/><citerefentry><refentrytitle>systemd-vconsole-setup.service</refentrytitle><manvolnum>8</manvolnum></citerefentry> -- Configure the virtual console at boot<sbr/><citerefentry><refentrytitle>systemd.automount</refentrytitle><manvolnum>5</manvolnum></citerefentry> -- Automount unit configuration<sbr/><citerefentry><refentrytitle>systemd.device</refentrytitle><manvolnum>5</manvolnum></citerefentry> -- Device unit configuration<sbr/><citerefentry><refentrytitle>systemd.directives</refentrytitle><manvolnum>7</manvolnum></citerefentry> -- Index of configuration directives<sbr/><citerefentry><refentrytitle>systemd.exec</refentrytitle><manvolnum>5</manvolnum></citerefentry> -- Execution environment configuration<sbr/><citerefentry><refentrytitle>systemd.journal-fields</refentrytitle><manvolnum>7</manvolnum></citerefentry> -- Special journal fields<sbr/><citerefentry><refentrytitle>systemd.kill</refentrytitle><manvolnum>5</manvolnum></citerefentry> -- Process killing procedure configuration<sbr/><citerefentry><refentrytitle>systemd.link</refentrytitle><manvolnum>5</manvolnum></citerefentry> -- Network device configuration<sbr/><citerefentry><refentrytitle>systemd.mount</refentrytitle><manvolnum>5</manvolnum></citerefentry> -- Mount unit configuration<sbr/><citerefentry><refentrytitle>systemd.netdev</refentrytitle><manvolnum>5</manvolnum></citerefentry> -- Virtual Network Device configuration<sbr/><citerefentry><refentrytitle>systemd.network</refentrytitle><manvolnum>5</manvolnum></citerefentry> -- Network configuration<sbr/><citerefentry><refentrytitle>systemd.path</refentrytitle><manvolnum>5</manvolnum></citerefentry> -- Path unit configuration<sbr/><citerefentry><refentrytitle>systemd.preset</refentrytitle><manvolnum>5</manvolnum></citerefentry> -- Service enablement presets<sbr/><citerefentry><refentrytitle>systemd.resource-control</refentrytitle><manvolnum>5</manvolnum></citerefentry> -- Resource control unit settings<sbr/><citerefentry><refentrytitle>systemd.scope</refentrytitle><manvolnum>5</manvolnum></citerefentry> -- Scope unit configuration<sbr/><citerefentry><refentrytitle>systemd.service</refentrytitle><manvolnum>5</manvolnum></citerefentry> -- Service unit configuration<sbr/><citerefentry><refentrytitle>systemd.slice</refentrytitle><manvolnum>5</manvolnum></citerefentry> -- Slice unit configuration<sbr/><citerefentry><refentrytitle>systemd.snapshot</refentrytitle><manvolnum>5</manvolnum></citerefentry> -- Snapshot unit configuration<sbr/><citerefentry><refentrytitle>systemd.socket</refentrytitle><manvolnum>5</manvolnum></citerefentry> -- Socket unit configuration<sbr/><citerefentry><refentrytitle>systemd.special</refentrytitle><manvolnum>7</manvolnum></citerefentry> -- Special systemd units<sbr/><citerefentry><refentrytitle>systemd.swap</refentrytitle><manvolnum>5</manvolnum></citerefentry> -- Swap unit configuration<sbr/><citerefentry><refentrytitle>systemd.target</refentrytitle><manvolnum>5</manvolnum></citerefentry> -- Target unit configuration<sbr/><citerefentry><refentrytitle>systemd.time</refentrytitle><manvolnum>7</manvolnum></citerefentry> -- Time and date specifications<sbr/><citerefentry><refentrytitle>systemd.timer</refentrytitle><manvolnum>5</manvolnum></citerefentry> -- Timer unit configuration<sbr/><citerefentry><refentrytitle>systemd.unit</refentrytitle><manvolnum>5</manvolnum></citerefentry> -- Unit configuration<sbr/></para></refsect1><refsect1><title>T</title><para><citerefentry><refentrytitle>telinit</refentrytitle><manvolnum>8</manvolnum></citerefentry> -- Change SysV runlevel<sbr/><citerefentry><refentrytitle>timedatectl</refentrytitle><manvolnum>1</manvolnum></citerefentry> -- Control the system time and date<sbr/><citerefentry><refentrytitle>tmpfiles.d</refentrytitle><manvolnum>5</manvolnum></citerefentry> -- Configuration for creation, deletion and cleaning of volatile and temporary files<sbr/></para></refsect1><refsect1><title>U</title><para><citerefentry><refentrytitle>udev</refentrytitle><manvolnum>7</manvolnum></citerefentry> -- Dynamic device management<sbr/><citerefentry><refentrytitle>udevadm</refentrytitle><manvolnum>8</manvolnum></citerefentry> -- udev management tool<sbr/></para></refsect1><refsect1><title>V</title><para><citerefentry><refentrytitle>vconsole.conf</refentrytitle><manvolnum>5</manvolnum></citerefentry> -- Configuration file for the virtual console<sbr/></para></refsect1><refsect1>
+<refsect1><title>B</title><para><citerefentry><refentrytitle>binfmt.d</refentrytitle><manvolnum>5</manvolnum></citerefentry> -- Configure additional binary formats for executables at boot<sbr/><citerefentry><refentrytitle>bootchart.conf</refentrytitle><manvolnum>5</manvolnum></citerefentry> -- Boot performance analysis graphing tool configuration file<sbr/><citerefentry><refentrytitle>bootctl</refentrytitle><manvolnum>1</manvolnum></citerefentry> -- Control the firmware and boot manager settings<sbr/><citerefentry><refentrytitle>bootup</refentrytitle><manvolnum>7</manvolnum></citerefentry> -- System bootup process<sbr/><citerefentry><refentrytitle>busctl</refentrytitle><manvolnum>1</manvolnum></citerefentry> -- Introspect the bus<sbr/></para></refsect1><refsect1><title>C</title><para><citerefentry><refentrytitle>coredump.conf</refentrytitle><manvolnum>5</manvolnum></citerefentry> -- Coredump storage configuration file<sbr/><citerefentry><refentrytitle>coredumpctl</refentrytitle><manvolnum>1</manvolnum></citerefentry> -- Retrieve coredumps from the journal<sbr/><citerefentry><refentrytitle>crypttab</refentrytitle><manvolnum>5</manvolnum></citerefentry> -- Configuration for encrypted block devices<sbr/></para></refsect1><refsect1><title>D</title><para><citerefentry><refentrytitle>daemon</refentrytitle><manvolnum>7</manvolnum></citerefentry> -- Writing and packaging system daemons<sbr/></para></refsect1><refsect1><title>F</title><para><citerefentry><refentrytitle>file-hierarchy</refentrytitle><manvolnum>7</manvolnum></citerefentry> -- File system hierarchy overview<sbr/></para></refsect1><refsect1><title>H</title><para><citerefentry><refentrytitle>halt</refentrytitle><manvolnum>8</manvolnum></citerefentry> -- Halt, power-off or reboot the machine<sbr/><citerefentry><refentrytitle>hostname</refentrytitle><manvolnum>5</manvolnum></citerefentry> -- Local hostname configuration file<sbr/><citerefentry><refentrytitle>hostnamectl</refentrytitle><manvolnum>1</manvolnum></citerefentry> -- Control the system hostname<sbr/></para></refsect1><refsect1><title>I</title><para><citerefentry><refentrytitle>init</refentrytitle><manvolnum>1</manvolnum></citerefentry> -- systemd system and service manager<sbr/></para></refsect1><refsect1><title>J</title><para><citerefentry><refentrytitle>journalctl</refentrytitle><manvolnum>1</manvolnum></citerefentry> -- Query the systemd journal<sbr/><citerefentry><refentrytitle>journald.conf</refentrytitle><manvolnum>5</manvolnum></citerefentry> -- Journal service configuration file<sbr/></para></refsect1><refsect1><title>K</title><para><citerefentry><refentrytitle>kernel-command-line</refentrytitle><manvolnum>7</manvolnum></citerefentry> -- Kernel command line parameters<sbr/><citerefentry><refentrytitle>kernel-install</refentrytitle><manvolnum>8</manvolnum></citerefentry> -- Add and remove kernel and initramfs images to and from /boot<sbr/></para></refsect1><refsect1><title>L</title><para><citerefentry><refentrytitle>locale.conf</refentrytitle><manvolnum>5</manvolnum></citerefentry> -- Configuration file for locale settings<sbr/><citerefentry><refentrytitle>localectl</refentrytitle><manvolnum>1</manvolnum></citerefentry> -- Control the system locale and keyboard layout settings<sbr/><citerefentry><refentrytitle>localtime</refentrytitle><manvolnum>5</manvolnum></citerefentry> -- Local timezone configuration file<sbr/><citerefentry><refentrytitle>loginctl</refentrytitle><manvolnum>1</manvolnum></citerefentry> -- Control the systemd login manager<sbr/><citerefentry><refentrytitle>logind.conf</refentrytitle><manvolnum>5</manvolnum></citerefentry> -- Login manager configuration file<sbr/></para></refsect1><refsect1><title>M</title><para><citerefentry><refentrytitle>machine-id</refentrytitle><manvolnum>5</manvolnum></citerefentry> -- Local machine ID configuration file<sbr/><citerefentry><refentrytitle>machine-info</refentrytitle><manvolnum>5</manvolnum></citerefentry> -- Local machine information file<sbr/><citerefentry><refentrytitle>machinectl</refentrytitle><manvolnum>1</manvolnum></citerefentry> -- Control the systemd machine manager<sbr/><citerefentry><refentrytitle>modules-load.d</refentrytitle><manvolnum>5</manvolnum></citerefentry> -- Configure kernel modules to load at boot<sbr/></para></refsect1><refsect1><title>N</title><para><citerefentry><refentrytitle>nss-myhostname</refentrytitle><manvolnum>8</manvolnum></citerefentry> -- Provide hostname resolution for the locally configured system hostname.<sbr/></para></refsect1><refsect1><title>O</title><para><citerefentry><refentrytitle>os-release</refentrytitle><manvolnum>5</manvolnum></citerefentry> -- Operating system identification<sbr/></para></refsect1><refsect1><title>P</title><para><citerefentry><refentrytitle>pam_systemd</refentrytitle><manvolnum>8</manvolnum></citerefentry> -- Register user sessions in the systemd login manager<sbr/><citerefentry><refentrytitle>poweroff</refentrytitle><manvolnum>8</manvolnum></citerefentry> -- Halt, power-off or reboot the machine<sbr/></para></refsect1><refsect1><title>R</title><para><citerefentry><refentrytitle>reboot</refentrytitle><manvolnum>8</manvolnum></citerefentry> -- Halt, power-off or reboot the machine<sbr/><citerefentry><refentrytitle>resolved.conf</refentrytitle><manvolnum>5</manvolnum></citerefentry> -- Network Name Resolution configuration file<sbr/><citerefentry><refentrytitle>runlevel</refentrytitle><manvolnum>8</manvolnum></citerefentry> -- Print previous and current SysV runlevel<sbr/></para></refsect1><refsect1><title>S</title><para><citerefentry><refentrytitle>sd-daemon</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- APIs for new-style daemons<sbr/><citerefentry><refentrytitle>sd-id128</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- APIs for processing 128-bit IDs<sbr/><citerefentry><refentrytitle>sd-journal</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- APIs for submitting and querying log entries to and from the journal<sbr/><citerefentry><refentrytitle>sd-login</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- APIs for tracking logins<sbr/><citerefentry><refentrytitle>sd-readahead</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Reference implementation of APIs for controlling boot-time read-ahead<sbr/><citerefentry><refentrytitle>SD_ALERT</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- APIs for new-style daemons<sbr/><citerefentry><refentrytitle>sd_booted</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Test whether the system is running the systemd init system<sbr/><citerefentry><refentrytitle>sd_bus_creds_get_audit_login_uid</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Retrieve fields from a credentials object<sbr/><citerefentry><refentrytitle>sd_bus_creds_get_audit_session_id</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Retrieve fields from a credentials object<sbr/><citerefentry><refentrytitle>sd_bus_creds_get_cgroup</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Retrieve fields from a credentials object<sbr/><citerefentry><refentrytitle>sd_bus_creds_get_cmdline</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Retrieve fields from a credentials object<sbr/><citerefentry><refentrytitle>sd_bus_creds_get_comm</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Retrieve fields from a credentials object<sbr/><citerefentry><refentrytitle>sd_bus_creds_get_exe</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Retrieve fields from a credentials object<sbr/><citerefentry><refentrytitle>sd_bus_creds_get_gid</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Retrieve fields from a credentials object<sbr/><citerefentry><refentrytitle>sd_bus_creds_get_mask</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Retrieve credentials object for the specified PID<sbr/><citerefentry><refentrytitle>sd_bus_creds_get_owner_uid</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Retrieve fields from a credentials object<sbr/><citerefentry><refentrytitle>sd_bus_creds_get_pid</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Retrieve fields from a credentials object<sbr/><citerefentry><refentrytitle>sd_bus_creds_get_pid_starttime</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Retrieve fields from a credentials object<sbr/><citerefentry><refentrytitle>sd_bus_creds_get_selinux_context</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Retrieve fields from a credentials object<sbr/><citerefentry><refentrytitle>sd_bus_creds_get_session</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Retrieve fields from a credentials object<sbr/><citerefentry><refentrytitle>sd_bus_creds_get_slice</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Retrieve fields from a credentials object<sbr/><citerefentry><refentrytitle>sd_bus_creds_get_tid</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Retrieve fields from a credentials object<sbr/><citerefentry><refentrytitle>sd_bus_creds_get_tid_comm</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Retrieve fields from a credentials object<sbr/><citerefentry><refentrytitle>sd_bus_creds_get_uid</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Retrieve fields from a credentials object<sbr/><citerefentry><refentrytitle>sd_bus_creds_get_unique_name</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Retrieve fields from a credentials object<sbr/><citerefentry><refentrytitle>sd_bus_creds_get_unit</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Retrieve fields from a credentials object<sbr/><citerefentry><refentrytitle>sd_bus_creds_get_user_unit</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Retrieve fields from a credentials object<sbr/><citerefentry><refentrytitle>sd_bus_creds_get_well_known_names</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Retrieve fields from a credentials object<sbr/><citerefentry><refentrytitle>sd_bus_creds_has_bounding_cap</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Retrieve fields from a credentials object<sbr/><citerefentry><refentrytitle>sd_bus_creds_has_effective_cap</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Retrieve fields from a credentials object<sbr/><citerefentry><refentrytitle>sd_bus_creds_has_inheritable_cap</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Retrieve fields from a credentials object<sbr/><citerefentry><refentrytitle>sd_bus_creds_has_permitted_cap</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Retrieve fields from a credentials object<sbr/><citerefentry><refentrytitle>sd_bus_creds_new_from_pid</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Retrieve credentials object for the specified PID<sbr/><citerefentry><refentrytitle>sd_bus_creds_ref</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Retrieve credentials object for the specified PID<sbr/><citerefentry><refentrytitle>sd_bus_creds_unref</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Retrieve credentials object for the specified PID<sbr/><citerefentry><refentrytitle>sd_bus_default_system</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Open a connection to the system or user bus<sbr/><citerefentry><refentrytitle>sd_bus_default_user</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Open a connection to the system or user bus<sbr/><citerefentry><refentrytitle>sd_bus_error</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- sd-bus error handling<sbr/><citerefentry><refentrytitle>sd_bus_error_copy</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- sd-bus error handling<sbr/><citerefentry><refentrytitle>sd_bus_error_free</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- sd-bus error handling<sbr/><citerefentry><refentrytitle>sd_bus_error_get_errno</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- sd-bus error handling<sbr/><citerefentry><refentrytitle>sd_bus_error_has_name</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- sd-bus error handling<sbr/><citerefentry><refentrytitle>sd_bus_error_is_set</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- sd-bus error handling<sbr/><citerefentry><refentrytitle>sd_bus_error_set</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- sd-bus error handling<sbr/><citerefentry><refentrytitle>sd_bus_error_set_const</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- sd-bus error handling<sbr/><citerefentry><refentrytitle>sd_bus_error_set_errno</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- sd-bus error handling<sbr/><citerefentry><refentrytitle>sd_bus_error_set_errnof</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- sd-bus error handling<sbr/><citerefentry><refentrytitle>sd_bus_message_append</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Attach parts of message based on a format string<sbr/><citerefentry><refentrytitle>sd_bus_message_append_array</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Attach an array of items to a message<sbr/><citerefentry><refentrytitle>sd_bus_message_append_array_iovec</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Attach an array of items to a message<sbr/><citerefentry><refentrytitle>sd_bus_message_append_array_memfd</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Attach an array of items to a message<sbr/><citerefentry><refentrytitle>sd_bus_message_append_array_space</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Attach an array of items to a message<sbr/><citerefentry><refentrytitle>sd_bus_message_append_basic</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Attach a single part to a message<sbr/><citerefentry><refentrytitle>sd_bus_message_append_string_iovec</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Attach a string to a message<sbr/><citerefentry><refentrytitle>sd_bus_message_append_string_memfd</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Attach a string to a message<sbr/><citerefentry><refentrytitle>sd_bus_message_append_string_space</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Attach a string to a message<sbr/><citerefentry><refentrytitle>sd_bus_message_append_strv</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Attach an array of strings to a message<sbr/><citerefentry><refentrytitle>sd_bus_message_get_cookie</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Returns the transaction cookie of a message<sbr/><citerefentry><refentrytitle>sd_bus_message_get_monotonic_usec</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Retrieve the sender timestamps and sequence number of a message<sbr/><citerefentry><refentrytitle>sd_bus_message_get_realtime_usec</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Retrieve the sender timestamps and sequence number of a message<sbr/><citerefentry><refentrytitle>sd_bus_message_get_reply_cookie</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Returns the transaction cookie of a message<sbr/><citerefentry><refentrytitle>sd_bus_message_get_seqnum</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Retrieve the sender timestamps and sequence number of a message<sbr/><citerefentry><refentrytitle>sd_bus_negotiate_creds</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Control feature negotiation on bus connections<sbr/><citerefentry><refentrytitle>sd_bus_negotiate_fds</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Control feature negotiation on bus connections<sbr/><citerefentry><refentrytitle>sd_bus_negotiate_timestamps</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Control feature negotiation on bus connections<sbr/><citerefentry><refentrytitle>sd_bus_new</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Create a new bus object and create or destroy references to it<sbr/><citerefentry><refentrytitle>sd_bus_open_system</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Open a connection to the system or user bus<sbr/><citerefentry><refentrytitle>sd_bus_open_system_container</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Open a connection to the system or user bus<sbr/><citerefentry><refentrytitle>sd_bus_open_system_remote</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Open a connection to the system or user bus<sbr/><citerefentry><refentrytitle>sd_bus_open_user</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Open a connection to the system or user bus<sbr/><citerefentry><refentrytitle>sd_bus_path_decode</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Convert an external identifier into an object path and back<sbr/><citerefentry><refentrytitle>sd_bus_path_encode</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Convert an external identifier into an object path and back<sbr/><citerefentry><refentrytitle>sd_bus_ref</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Create a new bus object and create or destroy references to it<sbr/><citerefentry><refentrytitle>sd_bus_release_name</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Request or release a well-known name on a bus<sbr/><citerefentry><refentrytitle>sd_bus_request_name</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Request or release a well-known name on a bus<sbr/><citerefentry><refentrytitle>sd_bus_unref</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Create a new bus object and create or destroy references to it<sbr/><citerefentry><refentrytitle>SD_CRIT</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- APIs for new-style daemons<sbr/><citerefentry><refentrytitle>SD_DEBUG</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- APIs for new-style daemons<sbr/><citerefentry><refentrytitle>SD_EMERG</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- APIs for new-style daemons<sbr/><citerefentry><refentrytitle>SD_ERR</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- APIs for new-style daemons<sbr/><citerefentry><refentrytitle>sd_event_add_time</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Add a timer event source to an event loop<sbr/><citerefentry><refentrytitle>sd_event_default</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Acquire and release an event loop object<sbr/><citerefentry><refentrytitle>sd_event_new</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Acquire and release an event loop object<sbr/><citerefentry><refentrytitle>sd_event_ref</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Acquire and release an event loop object<sbr/><citerefentry><refentrytitle>sd_event_source_get_time</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Add a timer event source to an event loop<sbr/><citerefentry><refentrytitle>sd_event_source_get_time_accuracy</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Add a timer event source to an event loop<sbr/><citerefentry><refentrytitle>sd_event_source_get_time_clock</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Add a timer event source to an event loop<sbr/><citerefentry><refentrytitle>sd_event_source_set_time</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Add a timer event source to an event loop<sbr/><citerefentry><refentrytitle>sd_event_source_set_time_accuracy</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Add a timer event source to an event loop<sbr/><citerefentry><refentrytitle>sd_event_unref</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Acquire and release an event loop object<sbr/><citerefentry><refentrytitle>sd_get_machine_names</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Determine available seats, sessions, logged in users and virtual machines/containers<sbr/><citerefentry><refentrytitle>sd_get_seats</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Determine available seats, sessions, logged in users and virtual machines/containers<sbr/><citerefentry><refentrytitle>sd_get_sessions</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Determine available seats, sessions, logged in users and virtual machines/containers<sbr/><citerefentry><refentrytitle>sd_get_uids</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Determine available seats, sessions, logged in users and virtual machines/containers<sbr/><citerefentry><refentrytitle>SD_ID128_CONST_STR</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- APIs for processing 128-bit IDs<sbr/><citerefentry><refentrytitle>sd_id128_equal</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- APIs for processing 128-bit IDs<sbr/><citerefentry><refentrytitle>SD_ID128_FORMAT_STR</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- APIs for processing 128-bit IDs<sbr/><citerefentry><refentrytitle>SD_ID128_FORMAT_VAL</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- APIs for processing 128-bit IDs<sbr/><citerefentry><refentrytitle>sd_id128_from_string</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Format or parse 128-bit IDs as strings<sbr/><citerefentry><refentrytitle>sd_id128_get_boot</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Retrieve 128-bit IDs<sbr/><citerefentry><refentrytitle>sd_id128_get_machine</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Retrieve 128-bit IDs<sbr/><citerefentry><refentrytitle>SD_ID128_MAKE</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- APIs for processing 128-bit IDs<sbr/><citerefentry><refentrytitle>sd_id128_randomize</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Generate 128-bit IDs<sbr/><citerefentry><refentrytitle>sd_id128_t</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- APIs for processing 128-bit IDs<sbr/><citerefentry><refentrytitle>sd_id128_to_string</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Format or parse 128-bit IDs as strings<sbr/><citerefentry><refentrytitle>SD_INFO</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- APIs for new-style daemons<sbr/><citerefentry><refentrytitle>sd_is_fifo</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Check the type of a file descriptor<sbr/><citerefentry><refentrytitle>sd_is_mq</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Check the type of a file descriptor<sbr/><citerefentry><refentrytitle>sd_is_socket</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Check the type of a file descriptor<sbr/><citerefentry><refentrytitle>sd_is_socket_inet</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Check the type of a file descriptor<sbr/><citerefentry><refentrytitle>sd_is_socket_unix</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Check the type of a file descriptor<sbr/><citerefentry><refentrytitle>sd_is_special</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Check the type of a file descriptor<sbr/><citerefentry><refentrytitle>sd_journal</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Open the system journal for reading<sbr/><citerefentry><refentrytitle>sd_journal_add_conjunction</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Add or remove entry matches<sbr/><citerefentry><refentrytitle>sd_journal_add_disjunction</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Add or remove entry matches<sbr/><citerefentry><refentrytitle>sd_journal_add_match</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Add or remove entry matches<sbr/><citerefentry><refentrytitle>SD_JOURNAL_APPEND</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Journal change notification interface<sbr/><citerefentry><refentrytitle>sd_journal_close</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Open the system journal for reading<sbr/><citerefentry><refentrytitle>SD_JOURNAL_CURRENT_USER</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Open the system journal for reading<sbr/><citerefentry><refentrytitle>sd_journal_enumerate_data</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Read data fields from the current journal entry<sbr/><citerefentry><refentrytitle>sd_journal_enumerate_unique</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Read unique data fields from the journal<sbr/><citerefentry><refentrytitle>sd_journal_flush_matches</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Add or remove entry matches<sbr/><citerefentry><refentrytitle>SD_JOURNAL_FOREACH</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Advance or set back the read pointer in the journal<sbr/><citerefentry><refentrytitle>SD_JOURNAL_FOREACH_BACKWARDS</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Advance or set back the read pointer in the journal<sbr/><citerefentry><refentrytitle>SD_JOURNAL_FOREACH_DATA</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Read data fields from the current journal entry<sbr/><citerefentry><refentrytitle>SD_JOURNAL_FOREACH_UNIQUE</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Read unique data fields from the journal<sbr/><citerefentry><refentrytitle>sd_journal_get_catalog</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Retrieve message catalog entry<sbr/><citerefentry><refentrytitle>sd_journal_get_catalog_for_message_id</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Retrieve message catalog entry<sbr/><citerefentry><refentrytitle>sd_journal_get_cursor</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Get cursor string for or test cursor string against the current journal entry<sbr/><citerefentry><refentrytitle>sd_journal_get_cutoff_monotonic_usec</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Read cut-off timestamps from the current journal entry<sbr/><citerefentry><refentrytitle>sd_journal_get_cutoff_realtime_usec</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Read cut-off timestamps from the current journal entry<sbr/><citerefentry><refentrytitle>sd_journal_get_data</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Read data fields from the current journal entry<sbr/><citerefentry><refentrytitle>sd_journal_get_data_threshold</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Read data fields from the current journal entry<sbr/><citerefentry><refentrytitle>sd_journal_get_events</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Journal change notification interface<sbr/><citerefentry><refentrytitle>sd_journal_get_fd</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Journal change notification interface<sbr/><citerefentry><refentrytitle>sd_journal_get_monotonic_usec</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Read timestamps from the current journal entry<sbr/><citerefentry><refentrytitle>sd_journal_get_realtime_usec</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Read timestamps from the current journal entry<sbr/><citerefentry><refentrytitle>sd_journal_get_timeout</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Journal change notification interface<sbr/><citerefentry><refentrytitle>sd_journal_get_usage</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Journal disk usage<sbr/><citerefentry><refentrytitle>SD_JOURNAL_INVALIDATE</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Journal change notification interface<sbr/><citerefentry><refentrytitle>SD_JOURNAL_LOCAL_ONLY</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Open the system journal for reading<sbr/><citerefentry><refentrytitle>sd_journal_next</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Advance or set back the read pointer in the journal<sbr/><citerefentry><refentrytitle>sd_journal_next_skip</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Advance or set back the read pointer in the journal<sbr/><citerefentry><refentrytitle>SD_JOURNAL_NOP</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Journal change notification interface<sbr/><citerefentry><refentrytitle>sd_journal_open</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Open the system journal for reading<sbr/><citerefentry><refentrytitle>sd_journal_open_container</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Open the system journal for reading<sbr/><citerefentry><refentrytitle>sd_journal_open_directory</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Open the system journal for reading<sbr/><citerefentry><refentrytitle>sd_journal_open_files</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Open the system journal for reading<sbr/><citerefentry><refentrytitle>sd_journal_perror</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Submit log entries to the journal<sbr/><citerefentry><refentrytitle>sd_journal_previous</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Advance or set back the read pointer in the journal<sbr/><citerefentry><refentrytitle>sd_journal_previous_skip</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Advance or set back the read pointer in the journal<sbr/><citerefentry><refentrytitle>sd_journal_print</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Submit log entries to the journal<sbr/><citerefentry><refentrytitle>sd_journal_printv</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Submit log entries to the journal<sbr/><citerefentry><refentrytitle>sd_journal_process</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Journal change notification interface<sbr/><citerefentry><refentrytitle>sd_journal_query_unique</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Read unique data fields from the journal<sbr/><citerefentry><refentrytitle>sd_journal_reliable_fd</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Journal change notification interface<sbr/><citerefentry><refentrytitle>sd_journal_restart_data</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Read data fields from the current journal entry<sbr/><citerefentry><refentrytitle>sd_journal_restart_unique</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Read unique data fields from the journal<sbr/><citerefentry><refentrytitle>SD_JOURNAL_RUNTIME_ONLY</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Open the system journal for reading<sbr/><citerefentry><refentrytitle>sd_journal_seek_cursor</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Seek to a position in the journal<sbr/><citerefentry><refentrytitle>sd_journal_seek_head</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Seek to a position in the journal<sbr/><citerefentry><refentrytitle>sd_journal_seek_monotonic_usec</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Seek to a position in the journal<sbr/><citerefentry><refentrytitle>sd_journal_seek_realtime_usec</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Seek to a position in the journal<sbr/><citerefentry><refentrytitle>sd_journal_seek_tail</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Seek to a position in the journal<sbr/><citerefentry><refentrytitle>sd_journal_send</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Submit log entries to the journal<sbr/><citerefentry><refentrytitle>sd_journal_sendv</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Submit log entries to the journal<sbr/><citerefentry><refentrytitle>sd_journal_set_data_threshold</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Read data fields from the current journal entry<sbr/><citerefentry><refentrytitle>sd_journal_stream_fd</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Create log stream file descriptor to the journal<sbr/><citerefentry><refentrytitle>SD_JOURNAL_SUPPRESS_LOCATION</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Submit log entries to the journal<sbr/><citerefentry><refentrytitle>SD_JOURNAL_SYSTEM</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Open the system journal for reading<sbr/><citerefentry><refentrytitle>sd_journal_test_cursor</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Get cursor string for or test cursor string against the current journal entry<sbr/><citerefentry><refentrytitle>sd_journal_wait</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Journal change notification interface<sbr/><citerefentry><refentrytitle>sd_listen_fds</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Check for file descriptors passed by the system manager<sbr/><citerefentry><refentrytitle>SD_LISTEN_FDS_START</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Check for file descriptors passed by the system manager<sbr/><citerefentry><refentrytitle>sd_login_monitor</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Monitor login sessions, seats, users and virtual machines/containers<sbr/><citerefentry><refentrytitle>sd_login_monitor_flush</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Monitor login sessions, seats, users and virtual machines/containers<sbr/><citerefentry><refentrytitle>sd_login_monitor_get_events</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Monitor login sessions, seats, users and virtual machines/containers<sbr/><citerefentry><refentrytitle>sd_login_monitor_get_fd</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Monitor login sessions, seats, users and virtual machines/containers<sbr/><citerefentry><refentrytitle>sd_login_monitor_get_timeout</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Monitor login sessions, seats, users and virtual machines/containers<sbr/><citerefentry><refentrytitle>sd_login_monitor_new</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Monitor login sessions, seats, users and virtual machines/containers<sbr/><citerefentry><refentrytitle>sd_login_monitor_unref</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Monitor login sessions, seats, users and virtual machines/containers<sbr/><citerefentry><refentrytitle>SD_NOTICE</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- APIs for new-style daemons<sbr/><citerefentry><refentrytitle>sd_notify</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Notify service manager about start-up completion and other daemon status changes<sbr/><citerefentry><refentrytitle>sd_notifyf</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Notify service manager about start-up completion and other daemon status changes<sbr/><citerefentry><refentrytitle>sd_peer_get_machine_name</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Determine session, service, owner of a session, container/VM or slice of a specific PID or socket peer<sbr/><citerefentry><refentrytitle>sd_peer_get_owner_uid</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Determine session, service, owner of a session, container/VM or slice of a specific PID or socket peer<sbr/><citerefentry><refentrytitle>sd_peer_get_session</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Determine session, service, owner of a session, container/VM or slice of a specific PID or socket peer<sbr/><citerefentry><refentrytitle>sd_peer_get_slice</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Determine session, service, owner of a session, container/VM or slice of a specific PID or socket peer<sbr/><citerefentry><refentrytitle>sd_peer_get_unit</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Determine session, service, owner of a session, container/VM or slice of a specific PID or socket peer<sbr/><citerefentry><refentrytitle>sd_peer_get_user_unit</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Determine session, service, owner of a session, container/VM or slice of a specific PID or socket peer<sbr/><citerefentry><refentrytitle>sd_pid_get_machine_name</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Determine session, service, owner of a session, container/VM or slice of a specific PID or socket peer<sbr/><citerefentry><refentrytitle>sd_pid_get_owner_uid</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Determine session, service, owner of a session, container/VM or slice of a specific PID or socket peer<sbr/><citerefentry><refentrytitle>sd_pid_get_session</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Determine session, service, owner of a session, container/VM or slice of a specific PID or socket peer<sbr/><citerefentry><refentrytitle>sd_pid_get_slice</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Determine session, service, owner of a session, container/VM or slice of a specific PID or socket peer<sbr/><citerefentry><refentrytitle>sd_pid_get_unit</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Determine session, service, owner of a session, container/VM or slice of a specific PID or socket peer<sbr/><citerefentry><refentrytitle>sd_pid_get_user_unit</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Determine session, service, owner of a session, container/VM or slice of a specific PID or socket peer<sbr/><citerefentry><refentrytitle>sd_readahead</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Control ongoing disk boot-time read-ahead operations<sbr/><citerefentry><refentrytitle>sd_seat_can_graphical</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Determine state of a specific seat<sbr/><citerefentry><refentrytitle>sd_seat_can_multi_session</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Determine state of a specific seat<sbr/><citerefentry><refentrytitle>sd_seat_can_tty</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Determine state of a specific seat<sbr/><citerefentry><refentrytitle>sd_seat_get_active</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Determine state of a specific seat<sbr/><citerefentry><refentrytitle>sd_seat_get_sessions</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Determine state of a specific seat<sbr/><citerefentry><refentrytitle>sd_session_get_class</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Determine state of a specific session<sbr/><citerefentry><refentrytitle>sd_session_get_display</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Determine state of a specific session<sbr/><citerefentry><refentrytitle>sd_session_get_remote_host</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Determine state of a specific session<sbr/><citerefentry><refentrytitle>sd_session_get_remote_user</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Determine state of a specific session<sbr/><citerefentry><refentrytitle>sd_session_get_seat</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Determine state of a specific session<sbr/><citerefentry><refentrytitle>sd_session_get_service</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Determine state of a specific session<sbr/><citerefentry><refentrytitle>sd_session_get_state</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Determine state of a specific session<sbr/><citerefentry><refentrytitle>sd_session_get_tty</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Determine state of a specific session<sbr/><citerefentry><refentrytitle>sd_session_get_type</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Determine state of a specific session<sbr/><citerefentry><refentrytitle>sd_session_get_uid</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Determine state of a specific session<sbr/><citerefentry><refentrytitle>sd_session_get_vt</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Determine state of a specific session<sbr/><citerefentry><refentrytitle>sd_session_is_active</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Determine state of a specific session<sbr/><citerefentry><refentrytitle>sd_session_is_remote</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Determine state of a specific session<sbr/><citerefentry><refentrytitle>sd_uid_get_display</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Determine login state of a specific Unix user ID<sbr/><citerefentry><refentrytitle>sd_uid_get_seats</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Determine login state of a specific Unix user ID<sbr/><citerefentry><refentrytitle>sd_uid_get_sessions</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Determine login state of a specific Unix user ID<sbr/><citerefentry><refentrytitle>sd_uid_get_state</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Determine login state of a specific Unix user ID<sbr/><citerefentry><refentrytitle>sd_uid_is_on_seat</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Determine login state of a specific Unix user ID<sbr/><citerefentry><refentrytitle>SD_WARNING</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- APIs for new-style daemons<sbr/><citerefentry><refentrytitle>sd_watchdog_enabled</refentrytitle><manvolnum>3</manvolnum></citerefentry> -- Check whether the service manager expects watchdog keep-alive notifications from a service<sbr/><citerefentry><refentrytitle>shutdown</refentrytitle><manvolnum>8</manvolnum></citerefentry> -- Halt, power-off or reboot the machine<sbr/><citerefentry><refentrytitle>sysctl.d</refentrytitle><manvolnum>5</manvolnum></citerefentry> -- Configure kernel parameters at boot<sbr/><citerefentry><refentrytitle>systemctl</refentrytitle><manvolnum>1</manvolnum></citerefentry> -- Control the systemd system and service manager<sbr/><citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry> -- systemd system and service manager<sbr/><citerefentry><refentrytitle>systemd-activate</refentrytitle><manvolnum>8</manvolnum></citerefentry> -- Test socket activation of daemons<sbr/><citerefentry><refentrytitle>systemd-analyze</refentrytitle><manvolnum>1</manvolnum></citerefentry> -- Analyze system boot-up performance<sbr/><citerefentry><refentrytitle>systemd-ask-password</refentrytitle><manvolnum>1</manvolnum></citerefentry> -- Query the user for a system password<sbr/><citerefentry><refentrytitle>systemd-ask-password-console.path</refentrytitle><manvolnum>8</manvolnum></citerefentry> -- Query the user for system passwords on the console and via wall<sbr/><citerefentry><refentrytitle>systemd-ask-password-console.service</refentrytitle><manvolnum>8</manvolnum></citerefentry> -- Query the user for system passwords on the console and via wall<sbr/><citerefentry><refentrytitle>systemd-ask-password-wall.path</refentrytitle><manvolnum>8</manvolnum></citerefentry> -- Query the user for system passwords on the console and via wall<sbr/><citerefentry><refentrytitle>systemd-ask-password-wall.service</refentrytitle><manvolnum>8</manvolnum></citerefentry> -- Query the user for system passwords on the console and via wall<sbr/><citerefentry><refentrytitle>systemd-backlight</refentrytitle><manvolnum>8</manvolnum></citerefentry> -- Load and save the display backlight brightness at boot and shutdown<sbr/><citerefentry><refentrytitle>systemd-backlight@.service</refentrytitle><manvolnum>8</manvolnum></citerefentry> -- Load and save the display backlight brightness at boot and shutdown<sbr/><citerefentry><refentrytitle>systemd-binfmt</refentrytitle><manvolnum>8</manvolnum></citerefentry> -- Configure additional binary formats for executables at boot<sbr/><citerefentry><refentrytitle>systemd-binfmt.service</refentrytitle><manvolnum>8</manvolnum></citerefentry> -- Configure additional binary formats for executables at boot<sbr/><citerefentry><refentrytitle>systemd-bootchart</refentrytitle><manvolnum>1</manvolnum></citerefentry> -- Boot performance graphing tool<sbr/><citerefentry><refentrytitle>systemd-bus-proxyd</refentrytitle><manvolnum>8</manvolnum></citerefentry> -- Connect STDIO or a socket to a given bus address<sbr/><citerefentry><refentrytitle>systemd-bus-proxyd.socket</refentrytitle><manvolnum>8</manvolnum></citerefentry> -- Proxy classic D-Bus clients to kdbus<sbr/><citerefentry><refentrytitle>systemd-bus-proxyd@.service</refentrytitle><manvolnum>8</manvolnum></citerefentry> -- Proxy classic D-Bus clients to kdbus<sbr/><citerefentry><refentrytitle>systemd-cat</refentrytitle><manvolnum>1</manvolnum></citerefentry> -- Connect a pipeline or program's output with the journal<sbr/><citerefentry><refentrytitle>systemd-cgls</refentrytitle><manvolnum>1</manvolnum></citerefentry> -- Recursively show control group contents<sbr/><citerefentry><refentrytitle>systemd-cgtop</refentrytitle><manvolnum>1</manvolnum></citerefentry> -- Show top control groups by their resource usage<sbr/><citerefentry><refentrytitle>systemd-cryptsetup</refentrytitle><manvolnum>8</manvolnum></citerefentry> -- Full disk decryption logic<sbr/><citerefentry><refentrytitle>systemd-cryptsetup-generator</refentrytitle><manvolnum>8</manvolnum></citerefentry> -- Unit generator for<sbr/><citerefentry><refentrytitle>systemd-cryptsetup@.service</refentrytitle><manvolnum>8</manvolnum></citerefentry> -- Full disk decryption logic<sbr/><citerefentry><refentrytitle>systemd-debug-generator</refentrytitle><manvolnum>8</manvolnum></citerefentry> -- Generator for enabling a runtime debug shell and masking specific units at boot<sbr/><citerefentry><refentrytitle>systemd-delta</refentrytitle><manvolnum>1</manvolnum></citerefentry> -- Find overridden configuration files<sbr/><citerefentry><refentrytitle>systemd-detect-virt</refentrytitle><manvolnum>1</manvolnum></citerefentry> -- Detect execution in a virtualized environment<sbr/><citerefentry><refentrytitle>systemd-efi-boot-generator</refentrytitle><manvolnum>8</manvolnum></citerefentry> -- Generator for automatically mounting the EFI System Partition used by the current boot to<sbr/><citerefentry><refentrytitle>systemd-fsck</refentrytitle><manvolnum>8</manvolnum></citerefentry> -- File system checker logic<sbr/><citerefentry><refentrytitle>systemd-fsck-root.service</refentrytitle><manvolnum>8</manvolnum></citerefentry> -- File system checker logic<sbr/><citerefentry><refentrytitle>systemd-fsck@.service</refentrytitle><manvolnum>8</manvolnum></citerefentry> -- File system checker logic<sbr/><citerefentry><refentrytitle>systemd-fstab-generator</refentrytitle><manvolnum>8</manvolnum></citerefentry> -- Unit generator for /etc/fstab<sbr/><citerefentry><refentrytitle>systemd-getty-generator</refentrytitle><manvolnum>8</manvolnum></citerefentry> -- Generator for enabling getty instances on the console<sbr/><citerefentry><refentrytitle>systemd-gpt-auto-generator</refentrytitle><manvolnum>8</manvolnum></citerefentry> -- Generator for automatically discovering and mounting root,<sbr/><citerefentry><refentrytitle>systemd-halt.service</refentrytitle><manvolnum>8</manvolnum></citerefentry> -- System shutdown logic<sbr/><citerefentry><refentrytitle>systemd-hibernate.service</refentrytitle><manvolnum>8</manvolnum></citerefentry> -- System sleep state logic<sbr/><citerefentry><refentrytitle>systemd-hostnamed</refentrytitle><manvolnum>8</manvolnum></citerefentry> -- Host name bus mechanism<sbr/><citerefentry><refentrytitle>systemd-hostnamed.service</refentrytitle><manvolnum>8</manvolnum></citerefentry> -- Host name bus mechanism<sbr/><citerefentry><refentrytitle>systemd-hybrid-sleep.service</refentrytitle><manvolnum>8</manvolnum></citerefentry> -- System sleep state logic<sbr/><citerefentry><refentrytitle>systemd-inhibit</refentrytitle><manvolnum>1</manvolnum></citerefentry> -- Execute a program with an inhibition lock taken<sbr/><citerefentry><refentrytitle>systemd-initctl</refentrytitle><manvolnum>8</manvolnum></citerefentry> -- /dev/initctl compatibility<sbr/><citerefentry><refentrytitle>systemd-initctl.service</refentrytitle><manvolnum>8</manvolnum></citerefentry> -- /dev/initctl compatibility<sbr/><citerefentry><refentrytitle>systemd-initctl.socket</refentrytitle><manvolnum>8</manvolnum></citerefentry> -- /dev/initctl compatibility<sbr/><citerefentry><refentrytitle>systemd-journal-gatewayd</refentrytitle><manvolnum>8</manvolnum></citerefentry> -- HTTP server for journal events<sbr/><citerefentry><refentrytitle>systemd-journal-gatewayd.service</refentrytitle><manvolnum>8</manvolnum></citerefentry> -- HTTP server for journal events<sbr/><citerefentry><refentrytitle>systemd-journal-gatewayd.socket</refentrytitle><manvolnum>8</manvolnum></citerefentry> -- HTTP server for journal events<sbr/><citerefentry><refentrytitle>systemd-journal-remote</refentrytitle><manvolnum>8</manvolnum></citerefentry> -- Stream journal messages over the network<sbr/><citerefentry><refentrytitle>systemd-journald</refentrytitle><manvolnum>8</manvolnum></citerefentry> -- Journal service<sbr/><citerefentry><refentrytitle>systemd-journald-dev-log.socket</refentrytitle><manvolnum>8</manvolnum></citerefentry> -- Journal service<sbr/><citerefentry><refentrytitle>systemd-journald.service</refentrytitle><manvolnum>8</manvolnum></citerefentry> -- Journal service<sbr/><citerefentry><refentrytitle>systemd-journald.socket</refentrytitle><manvolnum>8</manvolnum></citerefentry> -- Journal service<sbr/><citerefentry><refentrytitle>systemd-kexec.service</refentrytitle><manvolnum>8</manvolnum></citerefentry> -- System shutdown logic<sbr/><citerefentry><refentrytitle>systemd-localed</refentrytitle><manvolnum>8</manvolnum></citerefentry> -- Locale bus mechanism<sbr/><citerefentry><refentrytitle>systemd-localed.service</refentrytitle><manvolnum>8</manvolnum></citerefentry> -- Locale bus mechanism<sbr/><citerefentry><refentrytitle>systemd-logind</refentrytitle><manvolnum>8</manvolnum></citerefentry> -- Login manager<sbr/><citerefentry><refentrytitle>systemd-logind.service</refentrytitle><manvolnum>8</manvolnum></citerefentry> -- Login manager<sbr/><citerefentry><refentrytitle>systemd-machine-id-setup</refentrytitle><manvolnum>1</manvolnum></citerefentry> -- Initialize the machine ID in /etc/machine-id<sbr/><citerefentry><refentrytitle>systemd-machined</refentrytitle><manvolnum>8</manvolnum></citerefentry> -- Virtual machine and container registration manager<sbr/><citerefentry><refentrytitle>systemd-machined.service</refentrytitle><manvolnum>8</manvolnum></citerefentry> -- Virtual machine and container registration manager<sbr/><citerefentry><refentrytitle>systemd-modules-load</refentrytitle><manvolnum>8</manvolnum></citerefentry> -- Configure kernel modules to load at boot<sbr/><citerefentry><refentrytitle>systemd-modules-load.service</refentrytitle><manvolnum>8</manvolnum></citerefentry> -- Configure kernel modules to load at boot<sbr/><citerefentry><refentrytitle>systemd-networkd</refentrytitle><manvolnum>8</manvolnum></citerefentry> -- Network manager<sbr/><citerefentry><refentrytitle>systemd-networkd-wait-online</refentrytitle><manvolnum>8</manvolnum></citerefentry> -- Wait for network to come online<sbr/><citerefentry><refentrytitle>systemd-networkd-wait-online.service</refentrytitle><manvolnum>8</manvolnum></citerefentry> -- Wait for network to come online<sbr/><citerefentry><refentrytitle>systemd-networkd.service</refentrytitle><manvolnum>8</manvolnum></citerefentry> -- Network manager<sbr/><citerefentry><refentrytitle>systemd-notify</refentrytitle><manvolnum>1</manvolnum></citerefentry> -- Notify service manager about start-up completion and other daemon status changes<sbr/><citerefentry><refentrytitle>systemd-nspawn</refentrytitle><manvolnum>1</manvolnum></citerefentry> -- Spawn a namespace container for debugging, testing and building<sbr/><citerefentry><refentrytitle>systemd-path</refentrytitle><manvolnum>1</manvolnum></citerefentry> -- List and query system and user paths<sbr/><citerefentry><refentrytitle>systemd-poweroff.service</refentrytitle><manvolnum>8</manvolnum></citerefentry> -- System shutdown logic<sbr/><citerefentry><refentrytitle>systemd-quotacheck</refentrytitle><manvolnum>8</manvolnum></citerefentry> -- File system quota checker logic<sbr/><citerefentry><refentrytitle>systemd-quotacheck.service</refentrytitle><manvolnum>8</manvolnum></citerefentry> -- File system quota checker logic<sbr/><citerefentry><refentrytitle>systemd-random-seed</refentrytitle><manvolnum>8</manvolnum></citerefentry> -- Load and save the system random seed at boot and shutdown<sbr/><citerefentry><refentrytitle>systemd-random-seed.service</refentrytitle><manvolnum>8</manvolnum></citerefentry> -- Load and save the system random seed at boot and shutdown<sbr/><citerefentry><refentrytitle>systemd-readahead</refentrytitle><manvolnum>8</manvolnum></citerefentry> -- Disk read ahead logic<sbr/><citerefentry><refentrytitle>systemd-readahead-collect.service</refentrytitle><manvolnum>8</manvolnum></citerefentry> -- Disk read ahead logic<sbr/><citerefentry><refentrytitle>systemd-readahead-done.service</refentrytitle><manvolnum>8</manvolnum></citerefentry> -- Disk read ahead logic<sbr/><citerefentry><refentrytitle>systemd-readahead-done.timer</refentrytitle><manvolnum>8</manvolnum></citerefentry> -- Disk read ahead logic<sbr/><citerefentry><refentrytitle>systemd-readahead-replay.service</refentrytitle><manvolnum>8</manvolnum></citerefentry> -- Disk read ahead logic<sbr/><citerefentry><refentrytitle>systemd-reboot.service</refentrytitle><manvolnum>8</manvolnum></citerefentry> -- System shutdown logic<sbr/><citerefentry><refentrytitle>systemd-remount-fs</refentrytitle><manvolnum>8</manvolnum></citerefentry> -- Remount root and kernel file systems<sbr/><citerefentry><refentrytitle>systemd-remount-fs.service</refentrytitle><manvolnum>8</manvolnum></citerefentry> -- Remount root and kernel file systems<sbr/><citerefentry><refentrytitle>systemd-resolved</refentrytitle><manvolnum>8</manvolnum></citerefentry> -- Network Name Resolution manager<sbr/><citerefentry><refentrytitle>systemd-resolved.service</refentrytitle><manvolnum>8</manvolnum></citerefentry> -- Network Name Resolution manager<sbr/><citerefentry><refentrytitle>systemd-rfkill</refentrytitle><manvolnum>8</manvolnum></citerefentry> -- Load and save the RF kill switch state at boot and shutdown<sbr/><citerefentry><refentrytitle>systemd-rfkill@.service</refentrytitle><manvolnum>8</manvolnum></citerefentry> -- Load and save the RF kill switch state at boot and shutdown<sbr/><citerefentry><refentrytitle>systemd-run</refentrytitle><manvolnum>1</manvolnum></citerefentry> -- Run programs in transient scope or service units<sbr/><citerefentry><refentrytitle>systemd-shutdown</refentrytitle><manvolnum>8</manvolnum></citerefentry> -- System shutdown logic<sbr/><citerefentry><refentrytitle>systemd-shutdownd</refentrytitle><manvolnum>8</manvolnum></citerefentry> -- Scheduled shutdown service<sbr/><citerefentry><refentrytitle>systemd-shutdownd.service</refentrytitle><manvolnum>8</manvolnum></citerefentry> -- Scheduled shutdown service<sbr/><citerefentry><refentrytitle>systemd-shutdownd.socket</refentrytitle><manvolnum>8</manvolnum></citerefentry> -- Scheduled shutdown service<sbr/><citerefentry><refentrytitle>systemd-sleep</refentrytitle><manvolnum>8</manvolnum></citerefentry> -- System sleep state logic<sbr/><citerefentry><refentrytitle>systemd-sleep.conf</refentrytitle><manvolnum>5</manvolnum></citerefentry> -- Suspend and hibernation configuration file<sbr/><citerefentry><refentrytitle>systemd-socket-proxyd</refentrytitle><manvolnum>8</manvolnum></citerefentry> -- Bidirectionally proxy local sockets to another (possibly remote) socket.<sbr/><citerefentry><refentrytitle>systemd-suspend.service</refentrytitle><manvolnum>8</manvolnum></citerefentry> -- System sleep state logic<sbr/><citerefentry><refentrytitle>systemd-sysctl</refentrytitle><manvolnum>8</manvolnum></citerefentry> -- Configure kernel parameters at boot<sbr/><citerefentry><refentrytitle>systemd-sysctl.service</refentrytitle><manvolnum>8</manvolnum></citerefentry> -- Configure kernel parameters at boot<sbr/><citerefentry><refentrytitle>systemd-system-update-generator</refentrytitle><manvolnum>8</manvolnum></citerefentry> -- Generator for redirecting boot to offline update mode<sbr/><citerefentry><refentrytitle>systemd-system.conf</refentrytitle><manvolnum>5</manvolnum></citerefentry> -- System and session service manager configuration file<sbr/><citerefentry><refentrytitle>systemd-sysusers</refentrytitle><manvolnum>8</manvolnum></citerefentry> -- Allocate system users and groups<sbr/><citerefentry><refentrytitle>systemd-sysusers.service</refentrytitle><manvolnum>8</manvolnum></citerefentry> -- Allocate system users and groups<sbr/><citerefentry><refentrytitle>systemd-timedated</refentrytitle><manvolnum>8</manvolnum></citerefentry> -- Time and date bus mechanism<sbr/><citerefentry><refentrytitle>systemd-timedated.service</refentrytitle><manvolnum>8</manvolnum></citerefentry> -- Time and date bus mechanism<sbr/><citerefentry><refentrytitle>systemd-timesyncd</refentrytitle><manvolnum>8</manvolnum></citerefentry> -- Network Time Synchronization<sbr/><citerefentry><refentrytitle>systemd-timesyncd.service</refentrytitle><manvolnum>8</manvolnum></citerefentry> -- Network Time Synchronization<sbr/><citerefentry><refentrytitle>systemd-tmpfiles</refentrytitle><manvolnum>8</manvolnum></citerefentry> -- Creates, deletes and cleans up volatile and temporary files and directories<sbr/><citerefentry><refentrytitle>systemd-tmpfiles-clean.service</refentrytitle><manvolnum>8</manvolnum></citerefentry> -- Creates, deletes and cleans up volatile and temporary files and directories<sbr/><citerefentry><refentrytitle>systemd-tmpfiles-clean.timer</refentrytitle><manvolnum>8</manvolnum></citerefentry> -- Creates, deletes and cleans up volatile and temporary files and directories<sbr/><citerefentry><refentrytitle>systemd-tmpfiles-setup-dev.service</refentrytitle><manvolnum>8</manvolnum></citerefentry> -- Creates, deletes and cleans up volatile and temporary files and directories<sbr/><citerefentry><refentrytitle>systemd-tmpfiles-setup.service</refentrytitle><manvolnum>8</manvolnum></citerefentry> -- Creates, deletes and cleans up volatile and temporary files and directories<sbr/><citerefentry><refentrytitle>systemd-tty-ask-password-agent</refentrytitle><manvolnum>1</manvolnum></citerefentry> -- List or process pending systemd password requests<sbr/><citerefentry><refentrytitle>systemd-udevd</refentrytitle><manvolnum>8</manvolnum></citerefentry> -- Device event managing daemon<sbr/><citerefentry><refentrytitle>systemd-udevd-control.socket</refentrytitle><manvolnum>8</manvolnum></citerefentry> -- Device event managing daemon<sbr/><citerefentry><refentrytitle>systemd-udevd-kernel.socket</refentrytitle><manvolnum>8</manvolnum></citerefentry> -- Device event managing daemon<sbr/><citerefentry><refentrytitle>systemd-udevd.service</refentrytitle><manvolnum>8</manvolnum></citerefentry> -- Device event managing daemon<sbr/><citerefentry><refentrytitle>systemd-update-done</refentrytitle><manvolnum>8</manvolnum></citerefentry> -- Mark<sbr/><citerefentry><refentrytitle>systemd-update-done.service</refentrytitle><manvolnum>8</manvolnum></citerefentry> -- Mark<sbr/><citerefentry><refentrytitle>systemd-update-utmp</refentrytitle><manvolnum>8</manvolnum></citerefentry> -- Write audit and utmp updates at bootup, runlevel changes and shutdown<sbr/><citerefentry><refentrytitle>systemd-update-utmp-runlevel.service</refentrytitle><manvolnum>8</manvolnum></citerefentry> -- Write audit and utmp updates at bootup, runlevel changes and shutdown<sbr/><citerefentry><refentrytitle>systemd-update-utmp.service</refentrytitle><manvolnum>8</manvolnum></citerefentry> -- Write audit and utmp updates at bootup, runlevel changes and shutdown<sbr/><citerefentry><refentrytitle>systemd-user-sessions</refentrytitle><manvolnum>8</manvolnum></citerefentry> -- Permit user logins after boot, prohibit user logins at shutdown<sbr/><citerefentry><refentrytitle>systemd-user-sessions.service</refentrytitle><manvolnum>8</manvolnum></citerefentry> -- Permit user logins after boot, prohibit user logins at shutdown<sbr/><citerefentry><refentrytitle>systemd-user.conf</refentrytitle><manvolnum>5</manvolnum></citerefentry> -- System and session service manager configuration file<sbr/><citerefentry><refentrytitle>systemd-vconsole-setup</refentrytitle><manvolnum>8</manvolnum></citerefentry> -- Configure the virtual console at boot<sbr/><citerefentry><refentrytitle>systemd-vconsole-setup.service</refentrytitle><manvolnum>8</manvolnum></citerefentry> -- Configure the virtual console at boot<sbr/><citerefentry><refentrytitle>systemd.automount</refentrytitle><manvolnum>5</manvolnum></citerefentry> -- Automount unit configuration<sbr/><citerefentry><refentrytitle>systemd.device</refentrytitle><manvolnum>5</manvolnum></citerefentry> -- Device unit configuration<sbr/><citerefentry><refentrytitle>systemd.directives</refentrytitle><manvolnum>7</manvolnum></citerefentry> -- Index of configuration directives<sbr/><citerefentry><refentrytitle>systemd.exec</refentrytitle><manvolnum>5</manvolnum></citerefentry> -- Execution environment configuration<sbr/><citerefentry><refentrytitle>systemd.journal-fields</refentrytitle><manvolnum>7</manvolnum></citerefentry> -- Special journal fields<sbr/><citerefentry><refentrytitle>systemd.kill</refentrytitle><manvolnum>5</manvolnum></citerefentry> -- Process killing procedure configuration<sbr/><citerefentry><refentrytitle>systemd.link</refentrytitle><manvolnum>5</manvolnum></citerefentry> -- Network device configuration<sbr/><citerefentry><refentrytitle>systemd.mount</refentrytitle><manvolnum>5</manvolnum></citerefentry> -- Mount unit configuration<sbr/><citerefentry><refentrytitle>systemd.netdev</refentrytitle><manvolnum>5</manvolnum></citerefentry> -- Virtual Network Device configuration<sbr/><citerefentry><refentrytitle>systemd.network</refentrytitle><manvolnum>5</manvolnum></citerefentry> -- Network configuration<sbr/><citerefentry><refentrytitle>systemd.path</refentrytitle><manvolnum>5</manvolnum></citerefentry> -- Path unit configuration<sbr/><citerefentry><refentrytitle>systemd.preset</refentrytitle><manvolnum>5</manvolnum></citerefentry> -- Service enablement presets<sbr/><citerefentry><refentrytitle>systemd.resource-control</refentrytitle><manvolnum>5</manvolnum></citerefentry> -- Resource control unit settings<sbr/><citerefentry><refentrytitle>systemd.scope</refentrytitle><manvolnum>5</manvolnum></citerefentry> -- Scope unit configuration<sbr/><citerefentry><refentrytitle>systemd.service</refentrytitle><manvolnum>5</manvolnum></citerefentry> -- Service unit configuration<sbr/><citerefentry><refentrytitle>systemd.slice</refentrytitle><manvolnum>5</manvolnum></citerefentry> -- Slice unit configuration<sbr/><citerefentry><refentrytitle>systemd.snapshot</refentrytitle><manvolnum>5</manvolnum></citerefentry> -- Snapshot unit configuration<sbr/><citerefentry><refentrytitle>systemd.socket</refentrytitle><manvolnum>5</manvolnum></citerefentry> -- Socket unit configuration<sbr/><citerefentry><refentrytitle>systemd.special</refentrytitle><manvolnum>7</manvolnum></citerefentry> -- Special systemd units<sbr/><citerefentry><refentrytitle>systemd.swap</refentrytitle><manvolnum>5</manvolnum></citerefentry> -- Swap unit configuration<sbr/><citerefentry><refentrytitle>systemd.target</refentrytitle><manvolnum>5</manvolnum></citerefentry> -- Target unit configuration<sbr/><citerefentry><refentrytitle>systemd.time</refentrytitle><manvolnum>7</manvolnum></citerefentry> -- Time and date specifications<sbr/><citerefentry><refentrytitle>systemd.timer</refentrytitle><manvolnum>5</manvolnum></citerefentry> -- Timer unit configuration<sbr/><citerefentry><refentrytitle>systemd.unit</refentrytitle><manvolnum>5</manvolnum></citerefentry> -- Unit configuration<sbr/><citerefentry><refentrytitle>sysusers.d</refentrytitle><manvolnum>5</manvolnum></citerefentry> -- Declarative allocation of system users and groups<sbr/></para></refsect1><refsect1><title>T</title><para><citerefentry><refentrytitle>telinit</refentrytitle><manvolnum>8</manvolnum></citerefentry> -- Change SysV runlevel<sbr/><citerefentry><refentrytitle>timedatectl</refentrytitle><manvolnum>1</manvolnum></citerefentry> -- Control the system time and date<sbr/><citerefentry><refentrytitle>tmpfiles.d</refentrytitle><manvolnum>5</manvolnum></citerefentry> -- Configuration for creation, deletion and cleaning of volatile and temporary files<sbr/></para></refsect1><refsect1><title>U</title><para><citerefentry><refentrytitle>udev</refentrytitle><manvolnum>7</manvolnum></citerefentry> -- Dynamic device management<sbr/><citerefentry><refentrytitle>udevadm</refentrytitle><manvolnum>8</manvolnum></citerefentry> -- udev management tool<sbr/></para></refsect1><refsect1><title>V</title><para><citerefentry><refentrytitle>vconsole.conf</refentrytitle><manvolnum>5</manvolnum></citerefentry> -- Configuration file for the virtual console<sbr/></para></refsect1><refsect1>
     <title>See Also</title>
     <para>
       <citerefentry><refentrytitle>systemd.directives</refentrytitle><manvolnum>7</manvolnum></citerefentry>
     </para>
 
-    <para id="counts">This index contains 403 entries, referring to 173 individual manual pages.</para>
+    <para id="counts">This index contains 412 entries, referring to 180 individual manual pages.</para>
   </refsect1></refentry>
index 0a384fcb4be905fa9cfc09931581803453a4bfdd..bf863d0cc78c4695fe028b42ddbd9d78ada016f6 100644 (file)
@@ -1,5 +1,5 @@
 '\" t
-.TH "SYSTEMD\&.JOURNAL\-FIELDS" "7" "" "systemd 214" "systemd.journal-fields"
+.TH "SYSTEMD\&.JOURNAL\-FIELDS" "7" "" "systemd 215" "systemd.journal-fields"
 .\" -----------------------------------------------------------------
 .\" * Define some portability stuff
 .\" -----------------------------------------------------------------
@@ -198,7 +198,7 @@ coredump kernel helper:
 \fICOREDUMP_UNIT=\fR, \fICOREDUMP_USER_UNIT=\fR
 .RS 4
 Used to annotate messages containing coredumps from system and session units\&. See
-\fBsystemd-coredumpctl\fR(1)\&.
+\fBcoredumpctl\fR(1)\&.
 .RE
 .PP
 Priviledged programs (currently UID 0) may attach
@@ -263,7 +263,7 @@ The monotonic time (\fBCLOCK_MONOTONIC\fR) at the point in time the entry was re
 \fBjournalctl\fR(1),
 \fBjournald.conf\fR(5),
 \fBsd-journal\fR(3),
-\fBsystemd-coredumpctl\fR(1),
+\fBcoredumpctl\fR(1),
 \fBsystemd.directives\fR(7)
 .SH "NOTES"
 .IP " 1." 4
index 77bab94e7200b2ad26056da6049cdca759105a90..45fe328cc7c0b63128bd579b0d0dee070b2fd876 100644 (file)
@@ -19,7 +19,7 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="systemd.journal-fields"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>systemd.journal-fields — Special journal fields</p></div><div class="refsect1"><a name="idm214193829296"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p>Entries in the journal resemble an environment
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="systemd.journal-fields"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>systemd.journal-fields — Special journal fields</p></div><div class="refsect1"><a name="idm214184810768"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p>Entries in the journal resemble an environment
                 block in their syntax but with fields that can
                 include binary data. Primarily, fields are formatted
                 UTF-8 text strings, and binary formatting is used only
@@ -28,7 +28,7 @@
                 applications, but a few fields have special
                 meaning. All fields with special meanings are
                 optional. In some cases, fields may appear more than
-                once per entry.</p></div><div class="refsect1"><a name="idm214193826576"></a><h2 id="User Journal Fields">User Journal Fields<a class="headerlink" title="Permalink to this headline" href="#User%20Journal%20Fields">¶</a></h2><p>User fields are fields that are directly passed
+                once per entry.</p></div><div class="refsect1"><a name="idm214184434256"></a><h2 id="User Journal Fields">User Journal Fields<a class="headerlink" title="Permalink to this headline" href="#User%20Journal%20Fields">¶</a></h2><p>User fields are fields that are directly passed
                 from clients and stored in the journal.</p><div class="variablelist"><dl class="variablelist"><dt id="MESSAGE="><span class="term"><code class="varname">MESSAGE=</code></span><a class="headerlink" title="Permalink to this term" href="#MESSAGE=">¶</a></dt><dd><p>The human-readable
                                         message string for this
                                         entry. This is supposed to be
@@ -77,7 +77,7 @@
                                         PID. (Note that the tag is
                                         usually derived from glibc's
                                         <code class="varname">program_invocation_short_name</code>
-                                        variable, see <a href="program_invocation_short_name.html"><span class="citerefentry"><span class="refentrytitle">program_invocation_short_name</span>(3)</span></a>.)</p></dd></dl></div></div><div class="refsect1"><a name="idm214194061296"></a><h2 id="Trusted Journal Fields">Trusted Journal Fields<a class="headerlink" title="Permalink to this headline" href="#Trusted%20Journal%20Fields">¶</a></h2><p>Fields prefixed with an underscore are trusted
+                                        variable, see <a href="program_invocation_short_name.html"><span class="citerefentry"><span class="refentrytitle">program_invocation_short_name</span>(3)</span></a>.)</p></dd></dl></div></div><div class="refsect1"><a name="idm214186362608"></a><h2 id="Trusted Journal Fields">Trusted Journal Fields<a class="headerlink" title="Permalink to this headline" href="#Trusted%20Journal%20Fields">¶</a></h2><p>Fields prefixed with an underscore are trusted
                 fields, i.e. fields that are implicitly added by the
                 journal and cannot be altered by client code.</p><div class="variablelist"><dl class="variablelist"><dt id="_PID="><span class="term"><code class="varname">_PID=</code>, </span><span class="term"><code class="varname">_UID=</code>, </span><span class="term"><code class="varname">_GID=</code></span><a class="headerlink" title="Permalink to this term" href="#_PID=">¶</a></dt><dd><p>The process, user, and
                                         group ID of the process the
                                                         </span><a class="headerlink" title="Permalink to this term" href="#%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20kernel%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20">¶</a></dt><dd><p>for those
                                                                 read from the
                                                                 kernel
-                                                                </p></dd></dl></div></dd></dl></div></div><div class="refsect1"><a name="idm214189311216"></a><h2 id="Kernel Journal Fields">Kernel Journal Fields<a class="headerlink" title="Permalink to this headline" href="#Kernel%20Journal%20Fields">¶</a></h2><p>Kernel fields are fields that are used by
+                                                                </p></dd></dl></div></dd></dl></div></div><div class="refsect1"><a name="idm214184538176"></a><h2 id="Kernel Journal Fields">Kernel Journal Fields<a class="headerlink" title="Permalink to this headline" href="#Kernel%20Journal%20Fields">¶</a></h2><p>Kernel fields are fields that are used by
                 messages originating in the kernel and stored in the
                 journal.</p><div class="variablelist"><dl class="variablelist"><dt id="_KERNEL_DEVICE="><span class="term"><code class="varname">_KERNEL_DEVICE=</code></span><a class="headerlink" title="Permalink to this term" href="#_KERNEL_DEVICE=">¶</a></dt><dd><p>The kernel device
                                         name. If the entry is
                                         pointing to the device node in
                                         <code class="filename">/dev</code>. This
                                         field is frequently set more
-                                        than once per entry.</p></dd></dl></div></div><div class="refsect1"><a name="idm214189293856"></a><h2 id="Fields to log on behalf of a different program">Fields to log on behalf of a different program<a class="headerlink" title="Permalink to this headline" href="#Fields%20to%20log%20on%20behalf%20of%20a%20different%20program">¶</a></h2><p>Fields in this section are used by programs
+                                        than once per entry.</p></dd></dl></div></div><div class="refsect1"><a name="idm214185136352"></a><h2 id="Fields to log on behalf of a different program">Fields to log on behalf of a different program<a class="headerlink" title="Permalink to this headline" href="#Fields%20to%20log%20on%20behalf%20of%20a%20different%20program">¶</a></h2><p>Fields in this section are used by programs
                 to specify that they are logging on behalf of another
                 program or unit.
                 </p><p>Fields used by the <span class="command"><strong>systemd-coredump</strong></span>
                                         messages containing coredumps from
                                         system and session units.
                                         See
-                                        <a href="systemd-coredumpctl.html"><span class="citerefentry"><span class="refentrytitle">systemd-coredumpctl</span>(1)</span></a>.
+                                        <a href="coredumpctl.html"><span class="citerefentry"><span class="refentrytitle">coredumpctl</span>(1)</span></a>.
                                         </p></dd></dl></div><p>Priviledged programs (currently UID 0) may
                 attach <code class="varname">OBJECT_PID=</code> to a
                 message. This will instruct
                                         as described above, except that the
                                         process identified by <em class="replaceable"><code>PID</code></em>
                                         is described, instead of the process
-                                        which logged the message.</p></dd></dl></div></div><div class="refsect1"><a name="idm214189269824"></a><h2 id="Address Fields">Address Fields<a class="headerlink" title="Permalink to this headline" href="#Address%20Fields">¶</a></h2><p>During serialization into external formats, such
+                                        which logged the message.</p></dd></dl></div></div><div class="refsect1"><a name="idm214186169520"></a><h2 id="Address Fields">Address Fields<a class="headerlink" title="Permalink to this headline" href="#Address%20Fields">¶</a></h2><p>During serialization into external formats, such
                 as the <a class="ulink" href="http://www.freedesktop.org/wiki/Software/systemd/export" target="_top">Journal
                 Export Format</a> or the <a class="ulink" href="http://www.freedesktop.org/wiki/Software/systemd/json" target="_top">Journal
                 JSON Format</a>, the addresses of journal entries
                                         address for the entry, this
                                         should be combined with with the
                                         boot ID in "<code class="literal">_BOOT_ID=</code>".
-                                        </p></dd></dl></div></div><div class="refsect1"><a name="idm214189256000"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+                                        </p></dd></dl></div></div><div class="refsect1"><a name="idm214184586832"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
                           <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
                           <a href="journalctl.html"><span class="citerefentry"><span class="refentrytitle">journalctl</span>(1)</span></a>,
                           <a href="journald.conf.html"><span class="citerefentry"><span class="refentrytitle">journald.conf</span>(5)</span></a>,
                           <a href="sd-journal.html"><span class="citerefentry"><span class="refentrytitle">sd-journal</span>(3)</span></a>,
-                          <a href="systemd-coredumpctl.html"><span class="citerefentry"><span class="refentrytitle">systemd-coredumpctl</span>(1)</span></a>,
+                          <a href="coredumpctl.html"><span class="citerefentry"><span class="refentrytitle">coredumpctl</span>(1)</span></a>,
                           <a href="systemd.directives.html"><span class="citerefentry"><span class="refentrytitle">systemd.directives</span>(7)</span></a>
                   </p></div></div></body></html>
index 6eeb6e395d5b86b706daf662c2ed075b3f3bda42..472a0855cd7764232fddd96005b72c3114b4bcef 100644 (file)
                                         messages containing coredumps from
                                         system and session units.
                                         See
-                                        <citerefentry><refentrytitle>systemd-coredumpctl</refentrytitle><manvolnum>1</manvolnum></citerefentry>.
+                                        <citerefentry><refentrytitle>coredumpctl</refentrytitle><manvolnum>1</manvolnum></citerefentry>.
                                         </para>
                                 </listitem>
                         </varlistentry>
                           <citerefentry><refentrytitle>journalctl</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
                           <citerefentry><refentrytitle>journald.conf</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
                           <citerefentry><refentrytitle>sd-journal</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
-                          <citerefentry><refentrytitle>systemd-coredumpctl</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
+                          <citerefentry><refentrytitle>coredumpctl</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
                           <citerefentry><refentrytitle>systemd.directives</refentrytitle><manvolnum>7</manvolnum></citerefentry>
                   </para>
         </refsect1>
index 4523c505ea11d03546cf25d9bacaffb68a599694..9465af28816d59e4c56b95efdf7c9a862390163e 100644 (file)
@@ -1,5 +1,5 @@
 '\" t
-.TH "SYSTEMD\&.KILL" "5" "" "systemd 214" "systemd.kill"
+.TH "SYSTEMD\&.KILL" "5" "" "systemd 215" "systemd.kill"
 .\" -----------------------------------------------------------------
 .\" * Define some portability stuff
 .\" -----------------------------------------------------------------
index 82fc3119497e264168084bd368011e516551ca1a..0eb442d0efcc04bdfd2bdf477520d8d7d926aed9 100644 (file)
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="systemd.kill"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>systemd.kill — Process killing procedure
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="systemd.kill"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>systemd.kill — Process killing procedure
                 configuration</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><p><code class="filename"><em class="replaceable"><code>service</code></em>.service</code>,
                 <code class="filename"><em class="replaceable"><code>socket</code></em>.socket</code>,
                 <code class="filename"><em class="replaceable"><code>mount</code></em>.mount</code>,
                 <code class="filename"><em class="replaceable"><code>swap</code></em>.swap</code>,
-                <code class="filename"><em class="replaceable"><code>scope</code></em>.scope</code></p></div><div class="refsect1"><a name="idm214170634336"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p>Unit configuration files for services, sockets,
+                <code class="filename"><em class="replaceable"><code>scope</code></em>.scope</code></p></div><div class="refsect1"><a name="idm214167918160"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p>Unit configuration files for services, sockets,
                 mount points, swap devices and scopes share a subset
                 of configuration options which define the
                 killing procedure of processes belonging to the unit.</p><p>This man page lists the configuration options
@@ -42,7 +42,7 @@
                 specific to each unit type.</p><p>The kill procedure
                 configuration options are configured in the [Service],
                 [Socket], [Mount] or [Swap] section, depending on the
-                unit type.</p></div><div class="refsect1"><a name="idm214170626640"></a><h2 id="Options">Options<a class="headerlink" title="Permalink to this headline" href="#Options">¶</a></h2><div class="variablelist"><dl class="variablelist"><dt id="KillMode="><span class="term"><code class="varname">KillMode=</code></span><a class="headerlink" title="Permalink to this term" href="#KillMode=">¶</a></dt><dd><p>Specifies how
+                unit type.</p></div><div class="refsect1"><a name="idm214169586688"></a><h2 id="Options">Options<a class="headerlink" title="Permalink to this headline" href="#Options">¶</a></h2><div class="variablelist"><dl class="variablelist"><dt id="KillMode="><span class="term"><code class="varname">KillMode=</code></span><a class="headerlink" title="Permalink to this term" href="#KillMode=">¶</a></dt><dd><p>Specifies how
                                 processes of this unit shall be
                                 killed. One of
                                 <code class="option">control-group</code>,
                                 shutdown procedure left processes of
                                 the service around. Takes a boolean
                                 value. Defaults to "yes".
-                                </p></dd></dl></div></div><div class="refsect1"><a name="idm214172206912"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+                                </p></dd></dl></div></div><div class="refsect1"><a name="idm214170164624"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
                           <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
                           <a href="systemctl.html"><span class="citerefentry"><span class="refentrytitle">systemctl</span>(8)</span></a>,
                           <a href="journalctl.html"><span class="citerefentry"><span class="refentrytitle">journalctl</span>(8)</span></a>,
index 3bd9bdecb08abfa1a37684ab461173ba608a9c20..09349e9a2f262ffdd4d317bb4eb4c89252d73239 100644 (file)
@@ -1,5 +1,5 @@
 '\" t
-.TH "SYSTEMD\&.LINK" "5" "" "systemd 214" "systemd.link"
+.TH "SYSTEMD\&.LINK" "5" "" "systemd 215" "systemd.link"
 .\" -----------------------------------------------------------------
 .\" * Define some portability stuff
 .\" -----------------------------------------------------------------
@@ -50,6 +50,7 @@ The link file contains a
 section, which determines if a given link file may be applied to a given device; and a
 "[Link]"
 section specifying how the device should be configured\&. The first (in lexical order) of the link files that matches a given device is applied\&.
+.SH "[MATCH] SECTION OPTIONS"
 .PP
 A link file is said to match a device if each of the entries in the
 "[Match]"
@@ -116,6 +117,7 @@ in
 \fBsystemd.unit\fR(5)
 for details\&.
 .RE
+.SH "[LINK] SECTION OPTIONS"
 .PP
 The
 "[Link]"
index 332cf23597cd5b90397a04f0d6b1e77bc8d8a180..06ec2c42aa81b51717097e6e43774548a69055bd 100644 (file)
@@ -19,7 +19,7 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="systemd.link"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>systemd.link — Network device configuration</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><p><code class="filename"><em class="replaceable"><code>link</code></em>.link</code></p></div><div class="refsect1"><a name="idm214174005280"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p>Network link configuration is performed by the <span class="command"><strong>net_setup_link</strong></span>
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="systemd.link"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>systemd.link — Network device configuration</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><p><code class="filename"><em class="replaceable"><code>link</code></em>.link</code></p></div><div class="refsect1"><a name="idm214167301024"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p>Network link configuration is performed by the <span class="command"><strong>net_setup_link</strong></span>
                 udev builtin.</p><p>The link files are read from the files located in the
                 system network directory <code class="filename">/usr/lib/systemd/network</code>,
                 the volatile runtime network directory <code class="filename">/run/systemd/network</code>,
@@ -37,7 +37,7 @@
                 determines if a given link file may be applied to a given device; and a
                 "<code class="literal">[Link]</code>" section specifying how the device should be
                 configured. The first (in lexical order) of the link files that matches
-                a given device is applied.</p><p>A link file is said to match a device if each of the entries in the
+                a given device is applied.</p></div><div class="refsect1"><a name="idm214167231168"></a><h2 id="[Match] Section Options">[Match] Section Options<a class="headerlink" title="Permalink to this headline" href="#%5BMatch%5D%20Section%20Options">¶</a></h2><p>A link file is said to match a device if each of the entries in the
                 "<code class="literal">[Match]</code>" section matches, or if the section is empty.
                 The following keys are accepted:</p><div class="variablelist"><dl class="variablelist"><dt id="MACAddress="><span class="term"><code class="varname">MACAddress=</code></span><a class="headerlink" title="Permalink to this term" href="#MACAddress=">¶</a></dt><dd><p>The hardware address.</p></dd><dt id="Path="><span class="term"><code class="varname">Path=</code></span><a class="headerlink" title="Permalink to this term" href="#Path=">¶</a></dt><dd><p>The persistent path, as exposed by the
                                 udev property "<code class="literal">ID_PATH</code>". May
@@ -63,7 +63,7 @@
                                         specific architecture. See
                                         "<code class="literal">ConditionArchitecture=</code>" in
                                         <a href="systemd.unit.html"><span class="citerefentry"><span class="refentrytitle">systemd.unit</span>(5)</span></a>
-                                        for details.</p></dd></dl></div><p>The "<code class="literal">[Link]</code>" section accepts the following
+                                        for details.</p></dd></dl></div></div><div class="refsect1"><a name="idm214169589552"></a><h2 id="[Link] Section Options">[Link] Section Options<a class="headerlink" title="Permalink to this headline" href="#%5BLink%5D%20Section%20Options">¶</a></h2><p>The "<code class="literal">[Link]</code>" section accepts the following
                 keys:</p><div class="variablelist"><dl class="variablelist"><dt id="Description="><span class="term"><code class="varname">Description=</code></span><a class="headerlink" title="Permalink to this term" href="#Description=">¶</a></dt><dd><p>A description of the device.</p></dd><dt id="Alias="><span class="term"><code class="varname">Alias=</code></span><a class="headerlink" title="Permalink to this term" href="#Alias=">¶</a></dt><dd><p>The "<code class="literal">ifalias</code>" is set to
                                         this value.</p></dd><dt id="MACAddressPolicy="><span class="term"><code class="varname">MACAddressPolicy=</code></span><a class="headerlink" title="Permalink to this term" href="#MACAddressPolicy=">¶</a></dt><dd><p>The policy by which the MAC address
                                         should be set. The available policies are:
                                         The accepted values are "<code class="literal">half</code>"
                                         and "<code class="literal">full</code>".</p></dd><dt id="WakeOnLan="><span class="term"><code class="varname">WakeOnLan=</code></span><a class="headerlink" title="Permalink to this term" href="#WakeOnLan=">¶</a></dt><dd><p>The Wake-on-LAN policy to set for the
                                         device. The supported values are:</p><div class="variablelist"><dl class="variablelist"><dt id="phy"><span class="term">"<code class="literal">phy</code>"</span><a class="headerlink" title="Permalink to this term" href="#phy">¶</a></dt><dd><p>Wake on PHY activity.</p></dd><dt id="magic"><span class="term">"<code class="literal">magic</code>"</span><a class="headerlink" title="Permalink to this term" href="#magic">¶</a></dt><dd><p>Wake on receipt of a magic packet.
-                                                                </p></dd><dt id="off"><span class="term">"<code class="literal">off</code>"</span><a class="headerlink" title="Permalink to this term" href="#off">¶</a></dt><dd><p>Never wake.</p></dd></dl></div></dd></dl></div></div><div class="refsect1"><a name="idm214169472160"></a><h2 id="Example">Example<a class="headerlink" title="Permalink to this headline" href="#Example">¶</a></h2><div class="example"><a name="idm214169471520"></a><p class="title"><b>Example 1. /etc/systemd/network/wireless.link</b></p><div class="example-contents"><pre class="programlisting">[Match]
+                                                                </p></dd><dt id="off"><span class="term">"<code class="literal">off</code>"</span><a class="headerlink" title="Permalink to this term" href="#off">¶</a></dt><dd><p>Never wake.</p></dd></dl></div></dd></dl></div></div><div class="refsect1"><a name="idm214167421376"></a><h2 id="Example">Example<a class="headerlink" title="Permalink to this headline" href="#Example">¶</a></h2><div class="example"><a name="idm214168941088"></a><p class="title"><b>Example 1. /etc/systemd/network/wireless.link</b></p><div class="example-contents"><pre class="programlisting">[Match]
 MACAddress=12:34:56:78:9a:bc
 Driver=brcmsmac
 Path=pci-0000:02:00.0-*
@@ -131,7 +131,7 @@ Name=wireless0
 MTUBytes=1450
 BitsPerSecond=10M
 WakeOnLan=magic
-MACAddress=cb:a9:87:65:43:21</pre></div></div><br class="example-break"></div><div class="refsect1"><a name="idm214169469744"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+MACAddress=cb:a9:87:65:43:21</pre></div></div><br class="example-break"></div><div class="refsect1"><a name="idm214168063536"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
                         <a href="systemd-udevd.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-udevd.service</span>(8)</span></a>,
                         <a href="udevadm.html"><span class="citerefentry"><span class="refentrytitle">udevadm</span>(8)</span></a>
                 </p></div></div></body></html>
index f73182aca9da124a80ecae6c63586038d5be2ee1..05effc3b713c1a1e7c0ff6beb1e6dfcc311ab9d6 100644 (file)
                 <literal>[Link]</literal> section specifying how the device should be
                 configured. The first (in lexical order) of the link files that matches
                 a given device is applied.</para>
+        </refsect1>
+
+        <refsect1>
+                <title>[Match] Section Options</title>
 
                 <para>A link file is said to match a device if each of the entries in the
                 <literal>[Match]</literal> section matches, or if the section is empty.
                         </varlistentry>
                 </variablelist>
 
+        </refsect1>
+
+        <refsect1>
+                <title>[Link] Section Options</title>
+
                 <para>The <literal>[Link]</literal> section accepts the following
                 keys:</para>
 
index 9f10c9b5ecf62591b3f57cb4efb56668b7ac8f4b..8b1ebf61df79123a7543f630f96d345d9f8c2e66 100644 (file)
@@ -1,5 +1,5 @@
 '\" t
-.TH "SYSTEMD\&.MOUNT" "5" "" "systemd 214" "systemd.mount"
+.TH "SYSTEMD\&.MOUNT" "5" "" "systemd 215" "systemd.mount"
 .\" -----------------------------------------------------------------
 .\" * Define some portability stuff
 .\" -----------------------------------------------------------------
@@ -86,35 +86,63 @@ When reading
 a few special mount options are understood by systemd which influence how dependencies are created for mount points from
 /etc/fstab\&. systemd will create a dependency of type
 \fBWants\fR
-from either
+or
+\fBRequires\fR
+(see option
+\fBnofail\fR
+below), from either
 local\-fs\&.target
 or
-remote\-fs\&.target, depending whether the file system is local or remote\&. If
+remote\-fs\&.target, depending whether the file system is local or remote\&.
+.PP
 \fBx\-systemd\&.automount\fR
-is set, an automount unit will be created for the file system\&. See
+.RS 4
+An automount unit will be created for the file system\&. See
 \fBsystemd.automount\fR(5)
-for details\&. If
+for details\&.
+.RE
+.PP
 \fBx\-systemd\&.device\-timeout=\fR
-is specified, it may be used to configure how long systemd should wait for a device to show up before giving up on an entry from
-/etc/fstab\&. Specify a time in seconds or explicitly specify a unit as
+.RS 4
+Configure how long systemd should wait for a device to show up before giving up on an entry from
+/etc/fstab\&. Specify a time in seconds or explicitly append a unit as
 "s",
 "min",
 "h",
 "ms"\&.
+.sp
+Note that this option can only be used in
+/etc/fstab, and will be ignored when part of
+\fIOptions=\fR
+setting in a unit file\&.
+.RE
 .PP
-If
+\fBnofail\fR, \fBfail\fR
+.RS 4
+With
 \fBnofail\fR
-is given, this mount will be only wanted, not required, by the
+this mount will be only wanted, not required, by the
 local\-fs\&.target\&. This means that the boot will continue even if this mount point is not mounted successfully\&. Option
 \fBfail\fR
 has the opposite meaning and is the default\&.
+.RE
 .PP
-If
-\fBnoauto\fR
-is given, this mount will not be added as a dependency for
+\fBnoauto\fR, \fBauto\fR
+.RS 4
+With
+\fBnoauto\fR, this mount will not be added as a dependency for
 local\-fs\&.target\&. This means that it will not be mounted automatically during boot, unless it is pulled in by some other unit\&. Option
 \fBauto\fR
 has the opposite meaning and is the default\&.
+.RE
+.PP
+\fBx\-initrd\&.mount\fR
+.RS 4
+An additional filesystem to be mounted in the initramfs\&. See
+initrd\-fs\&.target
+description in
+\fBsystemd.special\fR(7)\&.
+.RE
 .PP
 If a mount point is configured in both
 /etc/fstab
@@ -157,6 +185,16 @@ for details\&. This setting is optional\&.
 Mount options to use when mounting\&. This takes a comma\-separated list of options\&. This setting is optional\&.
 .RE
 .PP
+\fISloppyOptions=\fR
+.RS 4
+Takes a boolean argument\&. If true, parsing of the options specified in
+\fIOptions=\fR
+is relaxed, and unknown mount options are tolerated\&. This corresponds with
+\fBmount\fR(8)\*(Aqs
+\fI\-s\fR
+switch\&. Defaults to off\&.
+.RE
+.PP
 \fIDirectoryMode=\fR
 .RS 4
 Directories of mount points (and any parent directories) are automatically created if needed\&. This option specifies the file system access mode used when creating these directories\&. Takes an access mode in octal notation\&. Defaults to 0755\&.
index 47edcfd9f9bd429c7fefaa0cb789297c9665f308..7f9bfe1a93c4d4c26c164dadcb120dabbe1d13e3 100644 (file)
@@ -19,7 +19,7 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="systemd.mount"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>systemd.mount — Mount unit configuration</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><p><code class="filename"><em class="replaceable"><code>mount</code></em>.mount</code></p></div><div class="refsect1"><a name="idm214185662048"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p>A unit configuration file whose name ends in
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="systemd.mount"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>systemd.mount — Mount unit configuration</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><p><code class="filename"><em class="replaceable"><code>mount</code></em>.mount</code></p></div><div class="refsect1"><a name="idm214182106304"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p>A unit configuration file whose name ends in
                 "<code class="literal">.mount</code>" encodes information about
                 a file system mount point controlled and supervised by
                 systemd.</p><p>This man page lists the configuration options
@@ -70,7 +70,7 @@
                 userspace-to-userpace interfaces. Some of them may not
                 be changed via mount units, and cannot be disabled.
                 For a longer discussion see <a class="ulink" href="http://www.freedesktop.org/wiki/Software/systemd/APIFileSystems" target="_top">API
-                File Systems</a>.</p></div><div class="refsect1"><a name="idm214184229664"></a><h2 id="/etc/fstab"><code class="filename">/etc/fstab</code><a class="headerlink" title="Permalink to this headline" href="#/etc/fstab">¶</a></h2><p>Mount units may either be configured via unit
+                File Systems</a>.</p></div><div class="refsect1"><a name="idm214182689296"></a><h2 id="/etc/fstab"><code class="filename">/etc/fstab</code><a class="headerlink" title="Permalink to this headline" href="#/etc/fstab">¶</a></h2><p>Mount units may either be configured via unit
                 files, or via <code class="filename">/etc/fstab</code> (see
                 <a href="fstab.html"><span class="citerefentry"><span class="refentrytitle">fstab</span>(5)</span></a>
                 for details). Mounts listed in
                 which influence how dependencies are created for mount
                 points from <code class="filename">/etc/fstab</code>. systemd
                 will create a dependency of type
-                <code class="option">Wants</code> from either
-                <code class="filename">local-fs.target</code> or
+                <code class="option">Wants</code> or <code class="option">Requires</code>
+                (see option <code class="option">nofail</code> below), from
+                either <code class="filename">local-fs.target</code> or
                 <code class="filename">remote-fs.target</code>, depending
-                whether the file system is local or remote. If
-                <code class="option">x-systemd.automount</code> is set, an
-                automount unit will be created for the file
-                system. See
-                <a href="systemd.automount.html"><span class="citerefentry"><span class="refentrytitle">systemd.automount</span>(5)</span></a>
-                for details. If
-                <code class="option">x-systemd.device-timeout=</code> is
-                specified, it may be used to configure how long systemd
-                should wait for a device to show up before giving up
-                on an entry from
-                <code class="filename">/etc/fstab</code>. Specify a time in
-                seconds or explicitly specify a unit as
-                "<code class="literal">s</code>", "<code class="literal">min</code>",
-                "<code class="literal">h</code>", "<code class="literal">ms</code>".</p><p>If <code class="option">nofail</code> is given, this mount
-                will be only wanted, not required, by the
-                <code class="filename">local-fs.target</code>. This means that
-                the boot will continue even if this mount point is not
-                mounted successfully. Option <code class="option">fail</code> has
-                the opposite meaning and is the default.</p><p>If <code class="option">noauto</code> is given, this mount
-                will not be added as a dependency for
-                <code class="filename">local-fs.target</code>. This means that
-                it will not be mounted automatically during boot,
-                unless it is pulled in by some other unit. Option
-                <code class="option">auto</code> has the opposite meaning and is
-                the default.</p><p>If a mount point is configured in both
+                whether the file system is local or remote.</p><div class="variablelist"><dl class="variablelist"><dt id="x-systemd.automount"><span class="term"><code class="option">x-systemd.automount</code></span><a class="headerlink" title="Permalink to this term" href="#x-systemd.automount">¶</a></dt><dd><p>An automount unit will be created
+                    for the file system. See
+                    <a href="systemd.automount.html"><span class="citerefentry"><span class="refentrytitle">systemd.automount</span>(5)</span></a>
+                    for details.</p></dd><dt id="x-systemd.device-timeout="><span class="term"><code class="option">x-systemd.device-timeout=</code></span><a class="headerlink" title="Permalink to this term" href="#x-systemd.device-timeout=">¶</a></dt><dd><p>Configure how long systemd should
+                    wait for a device to show up before giving up on
+                    an entry from
+                    <code class="filename">/etc/fstab</code>. Specify a time in
+                    seconds or explicitly append a unit as
+                    "<code class="literal">s</code>", "<code class="literal">min</code>",
+                    "<code class="literal">h</code>",
+                    "<code class="literal">ms</code>".</p><p>Note that this option can only be used in
+                    <code class="filename">/etc/fstab</code>, and will be
+                    ignored when part of <code class="varname">Options=</code>
+                    setting in a unit file.</p></dd><dt id="nofail"><span class="term"><code class="option">nofail</code>, </span><span class="term"><code class="option">fail</code></span><a class="headerlink" title="Permalink to this term" href="#nofail">¶</a></dt><dd><p>With <code class="option">nofail</code> this
+                    mount will be only wanted, not required, by the
+                    <code class="filename">local-fs.target</code>. This means
+                    that the boot will continue even if this mount
+                    point is not mounted successfully. Option
+                    <code class="option">fail</code> has the opposite meaning and
+                    is the default.</p></dd><dt id="noauto"><span class="term"><code class="option">noauto</code>, </span><span class="term"><code class="option">auto</code></span><a class="headerlink" title="Permalink to this term" href="#noauto">¶</a></dt><dd><p>With <code class="option">noauto</code>, this
+                    mount will not be added as a dependency for
+                    <code class="filename">local-fs.target</code>. This means
+                    that it will not be mounted automatically during
+                    boot, unless it is pulled in by some other
+                    unit. Option <code class="option">auto</code> has the
+                    opposite meaning and is the default.</p></dd><dt id="x-initrd.mount"><span class="term"><code class="option">x-initrd.mount</code></span><a class="headerlink" title="Permalink to this term" href="#x-initrd.mount">¶</a></dt><dd><p>An additional filesystem to be
+                    mounted in the initramfs. See
+                    <code class="filename">initrd-fs.target</code> description
+                    in
+                    <a href="systemd.special.html"><span class="citerefentry"><span class="refentrytitle">systemd.special</span>(7)</span></a>.
+                    </p></dd></dl></div><p>If a mount point is configured in both
                 <code class="filename">/etc/fstab</code> and a unit file that
                 is stored below <code class="filename">/usr</code>, the former
                 will take precedence. If the unit file is stored below
                 this is superseded by the rule that configuration in
                 <code class="filename">/etc</code> will always take precedence
                 over configuration in
-                <code class="filename">/usr</code>.</p></div><div class="refsect1"><a name="idm214185802912"></a><h2 id="Options">Options<a class="headerlink" title="Permalink to this headline" href="#Options">¶</a></h2><p>Mount files must include a [Mount] section,
+                <code class="filename">/usr</code>.</p></div><div class="refsect1"><a name="idm214181078496"></a><h2 id="Options">Options<a class="headerlink" title="Permalink to this headline" href="#Options">¶</a></h2><p>Mount files must include a [Mount] section,
                 which carries information about the file system mount points it
                 supervises. A number of options that may be used in
                 this section are shared with other unit types. These
                                 optional.</p></dd><dt id="Options="><span class="term"><code class="varname">Options=</code></span><a class="headerlink" title="Permalink to this term" href="#Options=">¶</a></dt><dd><p>Mount options to use
                                 when mounting. This takes a
                                 comma-separated list of options. This
-                                setting is optional.</p></dd><dt id="DirectoryMode="><span class="term"><code class="varname">DirectoryMode=</code></span><a class="headerlink" title="Permalink to this term" href="#DirectoryMode=">¶</a></dt><dd><p>Directories of mount
+                                setting is optional.</p></dd><dt id="SloppyOptions="><span class="term"><code class="varname">SloppyOptions=</code></span><a class="headerlink" title="Permalink to this term" href="#SloppyOptions=">¶</a></dt><dd><p>Takes a boolean
+                                argument. If true, parsing of the
+                                options specified in
+                                <code class="varname">Options=</code> is
+                                relaxed, and unknown mount options are
+                                tolerated. This corresponds with
+                                <a href="mount.html"><span class="citerefentry"><span class="refentrytitle">mount</span>(8)</span></a>'s
+                                <em class="parameter"><code>-s</code></em>
+                                switch. Defaults to
+                                off.</p></dd><dt id="DirectoryMode="><span class="term"><code class="varname">DirectoryMode=</code></span><a class="headerlink" title="Permalink to this term" href="#DirectoryMode=">¶</a></dt><dd><p>Directories of mount
                                 points (and any parent directories)
                                 are automatically created if
                                 needed. This option specifies the file
                 <a href="systemd.exec.html"><span class="citerefentry"><span class="refentrytitle">systemd.exec</span>(5)</span></a>
                 and
                 <a href="systemd.kill.html"><span class="citerefentry"><span class="refentrytitle">systemd.kill</span>(5)</span></a>
-                for more settings.</p></div><div class="refsect1"><a name="idm214181154208"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+                for more settings.</p></div><div class="refsect1"><a name="idm214180019264"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
                           <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
                           <a href="systemctl.html"><span class="citerefentry"><span class="refentrytitle">systemctl</span>(8)</span></a>,
                           <a href="systemd.unit.html"><span class="citerefentry"><span class="refentrytitle">systemd.unit</span>(5)</span></a>,
index 657cf11be36bcc0ae056cba23f7f97717718d8c3..3bc4d3aeff07e161eaa5de03f63c4a60b2c97238 100644 (file)
                 which influence how dependencies are created for mount
                 points from <filename>/etc/fstab</filename>. systemd
                 will create a dependency of type
-                <option>Wants</option> from either
-                <filename>local-fs.target</filename> or
+                <option>Wants</option> or <option>Requires</option>
+                (see option <option>nofail</option> below), from
+                either <filename>local-fs.target</filename> or
                 <filename>remote-fs.target</filename>, depending
-                whether the file system is local or remote. If
-                <option>x-systemd.automount</option> is set, an
-                automount unit will be created for the file
-                system. See
-                <citerefentry><refentrytitle>systemd.automount</refentrytitle><manvolnum>5</manvolnum></citerefentry>
-                for details. If
-                <option>x-systemd.device-timeout=</option> is
-                specified, it may be used to configure how long systemd
-                should wait for a device to show up before giving up
-                on an entry from
-                <filename>/etc/fstab</filename>. Specify a time in
-                seconds or explicitly specify a unit as
-                <literal>s</literal>, <literal>min</literal>,
-                <literal>h</literal>, <literal>ms</literal>.</para>
-
-                <para>If <option>nofail</option> is given, this mount
-                will be only wanted, not required, by the
-                <filename>local-fs.target</filename>. This means that
-                the boot will continue even if this mount point is not
-                mounted successfully. Option <option>fail</option> has
-                the opposite meaning and is the default.</para>
-
-                <para>If <option>noauto</option> is given, this mount
-                will not be added as a dependency for
-                <filename>local-fs.target</filename>. This means that
-                it will not be mounted automatically during boot,
-                unless it is pulled in by some other unit. Option
-                <option>auto</option> has the opposite meaning and is
-                the default.</para>
+                whether the file system is local or remote.</para>
+
+                <variablelist class='fstab-options'>
+
+                  <varlistentry>
+                    <term><option>x-systemd.automount</option></term>
+
+                    <listitem><para>An automount unit will be created
+                    for the file system. See
+                    <citerefentry><refentrytitle>systemd.automount</refentrytitle><manvolnum>5</manvolnum></citerefentry>
+                    for details.</para></listitem>
+                  </varlistentry>
+
+                  <varlistentry>
+                    <term><option>x-systemd.device-timeout=</option></term>
+
+                    <listitem><para>Configure how long systemd should
+                    wait for a device to show up before giving up on
+                    an entry from
+                    <filename>/etc/fstab</filename>. Specify a time in
+                    seconds or explicitly append a unit as
+                    <literal>s</literal>, <literal>min</literal>,
+                    <literal>h</literal>,
+                    <literal>ms</literal>.</para>
+
+                    <para>Note that this option can only be used in
+                    <filename>/etc/fstab</filename>, and will be
+                    ignored when part of <varname>Options=</varname>
+                    setting in a unit file.</para>
+                    </listitem>
+                  </varlistentry>
+
+                  <varlistentry>
+                    <term><option>nofail</option></term>
+                    <term><option>fail</option></term>
+
+                    <listitem><para>With <option>nofail</option> this
+                    mount will be only wanted, not required, by the
+                    <filename>local-fs.target</filename>. This means
+                    that the boot will continue even if this mount
+                    point is not mounted successfully. Option
+                    <option>fail</option> has the opposite meaning and
+                    is the default.</para>
+                    </listitem>
+                  </varlistentry>
+
+                  <varlistentry>
+                    <term><option>noauto</option></term>
+                    <term><option>auto</option></term>
+
+                    <listitem><para>With <option>noauto</option>, this
+                    mount will not be added as a dependency for
+                    <filename>local-fs.target</filename>. This means
+                    that it will not be mounted automatically during
+                    boot, unless it is pulled in by some other
+                    unit. Option <option>auto</option> has the
+                    opposite meaning and is the default.</para>
+                    </listitem>
+                  </varlistentry>
+
+                  <varlistentry>
+                    <term><option>x-initrd.mount</option></term>
+
+                    <listitem><para>An additional filesystem to be
+                    mounted in the initramfs. See
+                    <filename>initrd-fs.target</filename> description
+                    in
+                    <citerefentry><refentrytitle>systemd.special</refentrytitle><manvolnum>7</manvolnum></citerefentry>.
+                    </para></listitem>
+                  </varlistentry>
+                </variablelist>
 
                 <para>If a mount point is configured in both
                 <filename>/etc/fstab</filename> and a unit file that
                                 setting is optional.</para></listitem>
                         </varlistentry>
 
+                        <varlistentry>
+                                <term><varname>SloppyOptions=</varname></term>
+
+                                <listitem><para>Takes a boolean
+                                argument. If true, parsing of the
+                                options specified in
+                                <varname>Options=</varname> is
+                                relaxed, and unknown mount options are
+                                tolerated. This corresponds with
+                                <citerefentry><refentrytitle>mount</refentrytitle><manvolnum>8</manvolnum></citerefentry>'s
+                                <parameter>-s</parameter>
+                                switch. Defaults to
+                                off.</para></listitem>
+                        </varlistentry>
+
                         <varlistentry>
                                 <term><varname>DirectoryMode=</varname></term>
                                 <listitem><para>Directories of mount
index c597bd9a51e3732cb3c4f27578c84f16c51b5d7a..1254303650278b0ff25eb0ea876a8a623c88d2e6 100644 (file)
@@ -1,5 +1,5 @@
 '\" t
-.TH "SYSTEMD\&.NETDEV" "5" "" "systemd 214" "systemd.network"
+.TH "SYSTEMD\&.NETDEV" "5" "" "systemd 215" "systemd.network"
 .\" -----------------------------------------------------------------
 .\" * Define some portability stuff
 .\" -----------------------------------------------------------------
@@ -48,6 +48,7 @@ take precedence over files with the same name in
 with the same name as a configuration file in
 /usr/lib, pointing to
 /dev/null, disables the configuration file entirely\&.
+.SH "[MATCH] SECTION OPTIONS"
 .PP
 A virtual network device is only created if the
 "[Match]"
@@ -88,11 +89,17 @@ in
 \fBsystemd.unit\fR(5)
 for details\&.
 .RE
+.SH "[NETDEV] SECTION OPTIONS"
 .PP
 The
 "[NetDev]"
 section accepts the following keys:
 .PP
+\fIDescription=\fR
+.RS 4
+A free\-form description of the netdev\&.
+.RE
+.PP
 \fIName=\fR
 .RS 4
 The interface name used when creating the netdev\&. This option is compulsory\&.
@@ -103,12 +110,30 @@ The interface name used when creating the netdev\&. This option is compulsory\&.
 The netdev kind\&. Currently,
 "bridge",
 "bond",
-"vlan"
-and
-"macvlan"
+"vlan",
+"macvlan",
+"vxlan",
+"ipip",
+"gre",
+"sit",
+"vti",
+"veth", and
+"dummy"
 are supported\&. This option is compulsory\&.
 .RE
 .PP
+\fIMTUBytes=\fR
+.RS 4
+The maximum transmission unit in bytes to set for the device\&. The usual suffixes K, M, G, are supported and are understood to the base of 1024\&.
+.RE
+.PP
+\fIMACAddress=\fR
+.RS 4
+The MAC address to use for the device\&. If none is given, one is generated based on the interface name and the
+\fBmachine-id\fR(5)\&.
+.RE
+.SH "[VLAN] SECTION OPTIONS"
+.PP
 The
 "[VLAN]"
 section only applies for netdevs of kind
@@ -118,6 +143,7 @@ section only applies for netdevs of kind
 .RS 4
 The VLAN ID to use\&. An integer in the range 0\(en4094\&. This option is compulsory\&.
 .RE
+.SH "[MACVLAN] SECTION OPTIONS"
 .PP
 The
 "[MACVLAN]"
@@ -133,6 +159,139 @@ The MACVLAN mode to use\&. The supported options are
 and
 "passthru"\&.
 .RE
+.SH "[VXLAN] SECTION OPTIONS"
+.PP
+The
+"[VXLAN]"
+section only applies for netdevs of kind
+"vxlan", and accepts the following key:
+.PP
+\fIId=\fR
+.RS 4
+The VXLAN ID to use\&.
+.RE
+.PP
+\fIGroup=\fR
+.RS 4
+An assigned multicast group IP address\&.
+.RE
+.PP
+\fITOS=\fR
+.RS 4
+The Type Of Service byte value for a vxlan interface\&.
+.RE
+.PP
+\fITTL=\fR
+.RS 4
+A fixed Time To Live N on Virtual eXtensible Local Area Network packets\&. N is a number in the range 1\-255\&. 0 is a special value meaning that packets inherit the TTL value\&.
+.RE
+.PP
+\fIMacLearning=\fR
+.RS 4
+A boolean\&. When true, enables dynamic MAC learning to discover remote MAC addresses\&.
+.RE
+.SH "[TUNNEL] SECTION OPTIONS"
+.PP
+The
+"[Tunnel]"
+section only applies for netdevs of kind
+"ipip",
+"sit",
+"gre"
+and
+"vti"
+and accepts the following keys:
+.PP
+\fILocal=\fR
+.RS 4
+A static local address for tunneled packets\&. It must be an address on another interface of this host\&.
+.RE
+.PP
+\fIRemote=\fR
+.RS 4
+The remote endpoint of the tunnel\&.
+.RE
+.PP
+\fITOS=\fR
+.RS 4
+The Type Of Service byte value for a tunnel interface\&. For details about the TOS see the
+\m[blue]\fBType of Service in the Internet Protocol Suite\fR\m[]\&\s-2\u[1]\d\s+2
+document\&.
+.RE
+.PP
+\fITTL=\fR
+.RS 4
+A fixed Time To Live N on tunneled packets\&. N is a number in the range 1\-255\&. 0 is a special value meaning that packets inherit the TTL value\&. The default value for IPv4 tunnels is: inherit\&. The default value for IPv6 tunnels is: 64\&.
+.RE
+.PP
+\fIDiscoverPathMTU=\fR
+.RS 4
+A boolean\&. When true, enables Path MTU Discovery on the tunnel\&.
+.RE
+.SH "[PEER] SECTION OPTIONS"
+.PP
+The
+"[Peer]"
+section only applies for netdevs of kind
+"veth"
+and accepts the following key:
+.PP
+\fIName=\fR
+.RS 4
+The interface name used when creating the netdev\&. This option is compulsory\&.
+.RE
+.PP
+\fIMACAddress=\fR
+.RS 4
+The peer MACAddress, if not set it is generated in the same way as the MAC address of the main interface\&.
+.RE
+.SH "[TUN] SECTION OPTIONS"
+.PP
+The
+"[Tun]"
+section only applies for netdevs of kind
+"tun", and accepts the following keys:
+.PP
+\fIOneQueue=\fR
+.RS 4
+Takes a boolean argument\&. Configures whether all packets are queued at the device (enabled), or a fixed number of packets are queued at the device and the rest at the
+"qdisc"\&. Defaults to
+"no"\&.
+.RE
+.PP
+\fIMultiQueue=\fR
+.RS 4
+Takes a boolean argument\&. Configures whether to use multiple file descriptors (queues) to parallelize packets sending and receiving\&. Defaults to
+"no"\&.
+.RE
+.PP
+\fIPacketInfo=\fR
+.RS 4
+Takes a boolean argument\&. Configures whether packets should be prepened with four extra bytes (two flag bytes and two protocol bytes)\&. If disabled it indicates that the packets will be pure IP packets\&. Defaults to
+"no"\&.
+.RE
+.PP
+\fIUser=\fR
+.RS 4
+User to grant access to the
+/dev/net/tun
+device\&.
+.RE
+.PP
+\fIGroup=\fR
+.RS 4
+Group to grant access to the
+/dev/net/tun
+device\&.
+.RE
+.SH "[TAP] SECTION OPTIONS"
+.PP
+The
+"[Tap]"
+section only applies for netdevs of kind
+"tap", and accepts the same keys as the
+"[Tun]"
+section\&.
 .SH "EXAMPLE"
 .PP
 \fBExample\ \&1.\ \&/etc/systemd/network/bridge.netdev\fR
@@ -168,8 +327,141 @@ Id=1
 .if n \{\
 .RE
 .\}
+.PP
+\fBExample\ \&3.\ \&/etc/systemd/network/ipip.netdev\fR
+.sp
+.if n \{\
+.RS 4
+.\}
+.nf
+[NetDev]
+Name=ipip\-tun
+Kind=ipip
+MTUBytes=1480
+
+[Tunnel]
+Local=192\&.168\&.223\&.238
+Remote=192\&.169\&.224\&.239
+TTL=64
+.fi
+.if n \{\
+.RE
+.\}
+.PP
+\fBExample\ \&4.\ \&/etc/systemd/network/tap.netdev\fR
+.sp
+.if n \{\
+.RS 4
+.\}
+.nf
+[NetDev]
+Name=tap\-test
+Kind=tap
+
+[Tap]
+MultiQueue=true
+PacketInfo=true
+.fi
+.if n \{\
+.RE
+.\}
+.PP
+\fBExample\ \&5.\ \&/etc/systemd/network/sit.netdev\fR
+.sp
+.if n \{\
+.RS 4
+.\}
+.nf
+[NetDev]
+Name=sit\-tun
+Kind=sit
+MTUBytes=1480
+
+[Tunnel]
+Local=10\&.65\&.223\&.238
+Remote=10\&.65\&.223\&.239
+.fi
+.if n \{\
+.RE
+.\}
+.PP
+\fBExample\ \&6.\ \&/etc/systemd/network/gre.netdev\fR
+.sp
+.if n \{\
+.RS 4
+.\}
+.nf
+[NetDev]
+Name=gre\-tun
+Kind=gre
+MTUBytes=1480
+
+[Tunnel]
+Local=10\&.65\&.223\&.238
+Remote=10\&.65\&.223\&.239
+.fi
+.if n \{\
+.RE
+.\}
+.PP
+\fBExample\ \&7.\ \&/etc/systemd/network/vti.netdev\fR
+.sp
+.if n \{\
+.RS 4
+.\}
+.nf
+[NetDev]
+Name=vti\-tun
+Kind=vti
+MTUBytes=1480
+
+[Tunnel]
+Local=10\&.65\&.223\&.238
+Remote=10\&.65\&.223\&.239
+.fi
+.if n \{\
+.RE
+.\}
+.PP
+\fBExample\ \&8.\ \&/etc/systemd/network/veth.netdev\fR
+.sp
+.if n \{\
+.RS 4
+.\}
+.nf
+[NetDev]
+Name=veth\-test
+Kind=veth
+
+[Peer]
+Name=veth\-peer
+.fi
+.if n \{\
+.RE
+.\}
+.PP
+\fBExample\ \&9.\ \&/etc/systemd/network/dummy.netdev\fR
+.sp
+.if n \{\
+.RS 4
+.\}
+.nf
+[NetDev]
+Name=dummy\-test
+Kind=dummy
+MACAddress=12:34:56:78:9a:bc
+.fi
+.if n \{\
+.RE
+.\}
 .SH "SEE ALSO"
 .PP
 \fBsystemd\fR(1),
 \fBsystemd-networkd\fR(8),
 \fBsystemd.network\fR(5)
+.SH "NOTES"
+.IP " 1." 4
+Type of Service in the Internet Protocol Suite
+.RS 4
+\%http://tools.ietf.org/html/rfc1349
+.RE
index 7ebafa038485a21b86e524cf85cbfed38a41e996..cdbf952e5aaa468e80a96471c22246fee16e35b5 100644 (file)
@@ -19,7 +19,7 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="systemd.netdev"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>systemd.netdev — Virtual Network Device configuration</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><p><code class="filename"><em class="replaceable"><code>netdev</code></em>.netdev</code></p></div><div class="refsect1"><a name="idm214188018224"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p>Network setup is performed by
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="systemd.netdev"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>systemd.netdev — Virtual Network Device configuration</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><p><code class="filename"><em class="replaceable"><code>netdev</code></em>.netdev</code></p></div><div class="refsect1"><a name="idm214175257200"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p>Network setup is performed by
                 <a href="systemd-networkd.html"><span class="citerefentry"><span class="refentrytitle">systemd-networkd</span>(8)</span></a>.
                 </p><p>Virtual Network Device files must have the extension
                 <code class="filename">.netdev</code>; other extensions are ignored. Virtual
@@ -37,7 +37,7 @@
                 system-supplied configuration file with a local file if needed; a symlink in
                 <code class="filename">/etc</code> with the same name as a configuration file in
                 <code class="filename">/usr/lib</code>, pointing to <code class="filename">/dev/null</code>,
-                disables the configuration file entirely.</p><p>A virtual network device is only created if the
+                disables the configuration file entirely.</p></div><div class="refsect1"><a name="idm214175246240"></a><h2 id="[Match] Section Options">[Match] Section Options<a class="headerlink" title="Permalink to this headline" href="#%5BMatch%5D%20Section%20Options">¶</a></h2><p>A virtual network device is only created if the
                 "<code class="literal">[Match]</code>" section matches the current
                 environment, or if the section is empty. The following keys are accepted:</p><div class="variablelist"><dl class="variablelist"><dt id="Host="><span class="term"><code class="varname">Host=</code></span><a class="headerlink" title="Permalink to this term" href="#Host=">¶</a></dt><dd><p>Matches against the hostname or machine ID of the
                                                 host. See "<code class="literal">ConditionHost=</code>" in
                                                 architecture. See "<code class="literal">ConditionArchitecture=</code>" in
                                                 <a href="systemd.unit.html"><span class="citerefentry"><span class="refentrytitle">systemd.unit</span>(5)</span></a>
                                                 for details.
-                                                </p></dd></dl></div><p>The "<code class="literal">[NetDev]</code>" section accepts the following
-                        keys:</p><div class="variablelist"><dl class="variablelist"><dt id="Name="><span class="term"><code class="varname">Name=</code></span><a class="headerlink" title="Permalink to this term" href="#Name=">¶</a></dt><dd><p>The interface name used when creating the
+                                                </p></dd></dl></div></div><div class="refsect1"><a name="idm214179182688"></a><h2 id="[NetDev] Section Options">[NetDev] Section Options<a class="headerlink" title="Permalink to this headline" href="#%5BNetDev%5D%20Section%20Options">¶</a></h2><p>The "<code class="literal">[NetDev]</code>" section accepts the following
+                        keys:</p><div class="variablelist"><dl class="variablelist"><dt id="Description="><span class="term"><code class="varname">Description=</code></span><a class="headerlink" title="Permalink to this term" href="#Description=">¶</a></dt><dd><p>A free-form description of the netdev.
+                                                </p></dd><dt id="Name="><span class="term"><code class="varname">Name=</code></span><a class="headerlink" title="Permalink to this term" href="#Name=">¶</a></dt><dd><p>The interface name used when creating the
                                                 netdev. This option is compulsory.</p></dd><dt id="Kind="><span class="term"><code class="varname">Kind=</code></span><a class="headerlink" title="Permalink to this term" href="#Kind=">¶</a></dt><dd><p>The netdev kind. Currently, "<code class="literal">bridge</code>",
-                                                "<code class="literal">bond</code>", "<code class="literal">vlan</code>" and
-                                                "<code class="literal">macvlan</code>" are supported. This option
-                                                is compulsory.</p></dd></dl></div><p>The "<code class="literal">[VLAN]</code>" section only applies for netdevs of kind "<code class="literal">vlan</code>",
+                                                "<code class="literal">bond</code>", "<code class="literal">vlan</code>",
+                                                "<code class="literal">macvlan</code>", "<code class="literal">vxlan</code>",
+                                                "<code class="literal">ipip</code>", "<code class="literal">gre</code>",
+                                                "<code class="literal">sit</code>", "<code class="literal">vti</code>",
+                                                "<code class="literal">veth</code>", and "<code class="literal">dummy</code>"
+                                                are supported. This option is compulsory.</p></dd><dt id="MTUBytes="><span class="term"><code class="varname">MTUBytes=</code></span><a class="headerlink" title="Permalink to this term" href="#MTUBytes=">¶</a></dt><dd><p>The maximum transmission unit in bytes to
+                                                set for the device. The usual suffixes K, M, G,
+                                                are supported and are understood to the base of
+                                                1024.</p></dd><dt id="MACAddress="><span class="term"><code class="varname">MACAddress=</code></span><a class="headerlink" title="Permalink to this term" href="#MACAddress=">¶</a></dt><dd><p>The MAC address to use for the device.
+                                                If none is given, one is generated based on
+                                                the interface name and the
+                                                <a href="machine-id.html"><span class="citerefentry"><span class="refentrytitle">machine-id</span>(5)</span></a>.
+                                                </p></dd></dl></div></div><div class="refsect1"><a name="idm214179154848"></a><h2 id="[VLAN] Section Options">[VLAN] Section Options<a class="headerlink" title="Permalink to this headline" href="#%5BVLAN%5D%20Section%20Options">¶</a></h2><p>The "<code class="literal">[VLAN]</code>" section only applies for netdevs of kind "<code class="literal">vlan</code>",
                         and accepts the following key:</p><div class="variablelist"><dl class="variablelist"><dt id="Id="><span class="term"><code class="varname">Id=</code></span><a class="headerlink" title="Permalink to this term" href="#Id=">¶</a></dt><dd><p>The VLAN ID to use. An integer in the range 0–4094.
-                                                This option is compulsory.</p></dd></dl></div><p>The "<code class="literal">[MACVLAN]</code>" section only applies for netdevs of kind
+                                                This option is compulsory.</p></dd></dl></div></div><div class="refsect1"><a name="idm214179149536"></a><h2 id="[MACVLAN] Section Options">[MACVLAN] Section Options<a class="headerlink" title="Permalink to this headline" href="#%5BMACVLAN%5D%20Section%20Options">¶</a></h2><p>The "<code class="literal">[MACVLAN]</code>" section only applies for netdevs of kind
                         "<code class="literal">macvlan</code>", and accepts the following key:</p><div class="variablelist"><dl class="variablelist"><dt id="Mode="><span class="term"><code class="varname">Mode=</code></span><a class="headerlink" title="Permalink to this term" href="#Mode=">¶</a></dt><dd><p>The MACVLAN mode to use. The supported options are
                                                 "<code class="literal">private</code>", "<code class="literal">vepa</code>",
                                                 "<code class="literal">bridge</code>" and "<code class="literal">passthru</code>".
-                                                </p></dd></dl></div></div><div class="refsect1"><a name="idm214190871728"></a><h2 id="Example">Example<a class="headerlink" title="Permalink to this headline" href="#Example">¶</a></h2><div class="example"><a name="idm214190871056"></a><p class="title"><b>Example 1. /etc/systemd/network/bridge.netdev</b></p><div class="example-contents"><pre class="programlisting">[NetDev]
+                                                </p></dd></dl></div></div><div class="refsect1"><a name="idm214174175360"></a><h2 id="[VXLAN] Section Options">[VXLAN] Section Options<a class="headerlink" title="Permalink to this headline" href="#%5BVXLAN%5D%20Section%20Options">¶</a></h2><p>The "<code class="literal">[VXLAN]</code>" section only applies for netdevs of kind
+                        "<code class="literal">vxlan</code>", and accepts the following key:</p><div class="variablelist"><dl class="variablelist"><dt id="Id="><span class="term"><code class="varname">Id=</code></span><a class="headerlink" title="Permalink to this term" href="#Id=">¶</a></dt><dd><p>The VXLAN ID to use.</p></dd><dt id="Group="><span class="term"><code class="varname">Group=</code></span><a class="headerlink" title="Permalink to this term" href="#Group=">¶</a></dt><dd><p>An assigned multicast group IP address.</p></dd><dt id="TOS="><span class="term"><code class="varname">TOS=</code></span><a class="headerlink" title="Permalink to this term" href="#TOS=">¶</a></dt><dd><p>The Type Of Service byte value for a vxlan interface.</p></dd><dt id="TTL="><span class="term"><code class="varname">TTL=</code></span><a class="headerlink" title="Permalink to this term" href="#TTL=">¶</a></dt><dd><p>A fixed Time To Live N on Virtual eXtensible Local Area Network packets.
+                                                N is a number in the range 1-255. 0 is a special value meaning that packets
+                                                inherit the TTL value.</p></dd><dt id="MacLearning="><span class="term"><code class="varname">MacLearning=</code></span><a class="headerlink" title="Permalink to this term" href="#MacLearning=">¶</a></dt><dd><p>A boolean. When true, enables dynamic MAC learning
+                                                to discover remote MAC addresses.</p></dd></dl></div></div><div class="refsect1"><a name="idm214174163584"></a><h2 id="[Tunnel] Section Options">[Tunnel] Section Options<a class="headerlink" title="Permalink to this headline" href="#%5BTunnel%5D%20Section%20Options">¶</a></h2><p>The "<code class="literal">[Tunnel]</code>" section only applies for netdevs of kind
+                        "<code class="literal">ipip</code>", "<code class="literal">sit</code>", "<code class="literal">gre</code>" and
+                        "<code class="literal">vti</code>" and accepts the following keys:</p><div class="variablelist"><dl class="variablelist"><dt id="Local="><span class="term"><code class="varname">Local=</code></span><a class="headerlink" title="Permalink to this term" href="#Local=">¶</a></dt><dd><p>A static local address for tunneled packets.
+                                                It must be an address on another interface of this host.</p></dd><dt id="Remote="><span class="term"><code class="varname">Remote=</code></span><a class="headerlink" title="Permalink to this term" href="#Remote=">¶</a></dt><dd><p>The remote endpoint of the tunnel.</p></dd><dt id="TOS="><span class="term"><code class="varname">TOS=</code></span><a class="headerlink" title="Permalink to this term" href="#TOS=">¶</a></dt><dd><p>The Type Of Service byte value for a tunnel interface.
+                                                For details about the TOS see the
+                                                <a class="ulink" href="http://tools.ietf.org/html/rfc1349" target="_top">
+                                                Type of Service in the Internet Protocol Suite
+                                                </a> document.
+                                                </p></dd><dt id="TTL="><span class="term"><code class="varname">TTL=</code></span><a class="headerlink" title="Permalink to this term" href="#TTL=">¶</a></dt><dd><p>A fixed Time To Live N on tunneled packets.
+                                                N is a number in the range 1-255. 0 is a special value meaning that packets
+                                                inherit the TTL value. The default value for IPv4 tunnels is: inherit.
+                                                The default value for IPv6 tunnels is: 64.</p></dd><dt id="DiscoverPathMTU="><span class="term"><code class="varname">DiscoverPathMTU=</code></span><a class="headerlink" title="Permalink to this term" href="#DiscoverPathMTU=">¶</a></dt><dd><p>A boolean. When true, enables Path MTU Discovery on the tunnel.</p></dd></dl></div></div><div class="refsect1"><a name="idm214174148736"></a><h2 id="[Peer] Section Options">[Peer] Section Options<a class="headerlink" title="Permalink to this headline" href="#%5BPeer%5D%20Section%20Options">¶</a></h2><p>The "<code class="literal">[Peer]</code>" section only applies for netdevs of kind "<code class="literal">veth</code>"
+                        and accepts the following key:</p><div class="variablelist"><dl class="variablelist"><dt id="Name="><span class="term"><code class="varname">Name=</code></span><a class="headerlink" title="Permalink to this term" href="#Name=">¶</a></dt><dd><p>The interface name used when creating the netdev.
+                                                This option is compulsory.</p></dd><dt id="MACAddress="><span class="term"><code class="varname">MACAddress=</code></span><a class="headerlink" title="Permalink to this term" href="#MACAddress=">¶</a></dt><dd><p>The peer MACAddress, if not set it is generated in the same
+                                                way as the MAC address of the main interface.</p></dd></dl></div></div><div class="refsect1"><a name="idm214174142064"></a><h2 id="[Tun] Section Options">[Tun] Section Options<a class="headerlink" title="Permalink to this headline" href="#%5BTun%5D%20Section%20Options">¶</a></h2><p>The "<code class="literal">[Tun]</code>" section only applies for netdevs of kind
+                        "<code class="literal">tun</code>", and accepts the following keys:</p><div class="variablelist"><dl class="variablelist"><dt id="OneQueue="><span class="term"><code class="varname">OneQueue=</code></span><a class="headerlink" title="Permalink to this term" href="#OneQueue=">¶</a></dt><dd><p>Takes a boolean argument. Configures whether
+                                        all packets are queued at the device (enabled), or a fixed number
+                                        of packets are queued at the device and the rest at the
+                                        "<code class="literal">qdisc</code>". Defaults to "<code class="literal">no</code>".</p></dd><dt id="MultiQueue="><span class="term"><code class="varname">MultiQueue=</code></span><a class="headerlink" title="Permalink to this term" href="#MultiQueue=">¶</a></dt><dd><p>Takes a boolean argument. Configures whether to
+                                        use multiple file descriptors (queues) to parallelize packets
+                                        sending and receiving. Defaults to "<code class="literal">no</code>".</p></dd><dt id="PacketInfo="><span class="term"><code class="varname">PacketInfo=</code></span><a class="headerlink" title="Permalink to this term" href="#PacketInfo=">¶</a></dt><dd><p>Takes a boolean argument. Configures whether packets
+                                        should be prepened with four extra bytes (two flag bytes and two
+                                        protocol bytes). If disabled it indicates that the packets will be
+                                        pure IP packets. Defaults to "<code class="literal">no</code>".</p></dd><dt id="User="><span class="term"><code class="varname">User=</code></span><a class="headerlink" title="Permalink to this term" href="#User=">¶</a></dt><dd><p>User to grant access to the <code class="filename">/dev/net/tun</code>
+                                        device.</p></dd><dt id="Group="><span class="term"><code class="varname">Group=</code></span><a class="headerlink" title="Permalink to this term" href="#Group=">¶</a></dt><dd><p>Group to grant access to the <code class="filename">/dev/net/tun</code>
+                                        device.</p></dd></dl></div></div><div class="refsect1"><a name="idm214174126640"></a><h2 id="[Tap] Section Options">[Tap] Section Options<a class="headerlink" title="Permalink to this headline" href="#%5BTap%5D%20Section%20Options">¶</a></h2><p>The "<code class="literal">[Tap]</code>" section only applies for netdevs of kind
+                        "<code class="literal">tap</code>", and accepts the same keys as the
+                        "<code class="literal">[Tun]</code>" section.</p></div><div class="refsect1"><a name="idm214174123456"></a><h2 id="Example">Example<a class="headerlink" title="Permalink to this headline" href="#Example">¶</a></h2><div class="example"><a name="idm214174122816"></a><p class="title"><b>Example 1. /etc/systemd/network/bridge.netdev</b></p><div class="example-contents"><pre class="programlisting">[NetDev]
 Name=bridge0
-Kind=bridge</pre></div></div><br class="example-break"><div class="example"><a name="idm214190869536"></a><p class="title"><b>Example 2. /etc/systemd/network/vlan1.netdev</b></p><div class="example-contents"><pre class="programlisting">[Match]
+Kind=bridge</pre></div></div><br class="example-break"><div class="example"><a name="idm214174121424"></a><p class="title"><b>Example 2. /etc/systemd/network/vlan1.netdev</b></p><div class="example-contents"><pre class="programlisting">[Match]
 Virtualization=no
 
 [NetDev]
@@ -78,7 +120,50 @@ Name=vlan1
 Kind=vlan
 
 [VLAN]
-Id=1</pre></div></div><br class="example-break"></div><div class="refsect1"><a name="idm214190867856"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+Id=1</pre></div></div><br class="example-break"><div class="example"><a name="idm214174119952"></a><p class="title"><b>Example 3. /etc/systemd/network/ipip.netdev</b></p><div class="example-contents"><pre class="programlisting">[NetDev]
+Name=ipip-tun
+Kind=ipip
+MTUBytes=1480
+
+[Tunnel]
+Local=192.168.223.238
+Remote=192.169.224.239
+TTL=64</pre></div></div><br class="example-break"><div class="example"><a name="idm214174118432"></a><p class="title"><b>Example 4. /etc/systemd/network/tap.netdev</b></p><div class="example-contents"><pre class="programlisting">[NetDev]
+Name=tap-test
+Kind=tap
+
+[Tap]
+MultiQueue=true
+PacketInfo=true</pre></div></div><br class="example-break"><div class="example"><a name="idm214174116960"></a><p class="title"><b>Example 5. /etc/systemd/network/sit.netdev</b></p><div class="example-contents"><pre class="programlisting">[NetDev]
+Name=sit-tun
+Kind=sit
+MTUBytes=1480
+
+[Tunnel]
+Local=10.65.223.238
+Remote=10.65.223.239</pre></div></div><br class="example-break"><div class="example"><a name="idm214174115456"></a><p class="title"><b>Example 6. /etc/systemd/network/gre.netdev</b></p><div class="example-contents"><pre class="programlisting">[NetDev]
+Name=gre-tun
+Kind=gre
+MTUBytes=1480
+
+[Tunnel]
+Local=10.65.223.238
+Remote=10.65.223.239</pre></div></div><br class="example-break"><div class="example"><a name="idm214174113952"></a><p class="title"><b>Example 7. /etc/systemd/network/vti.netdev</b></p><div class="example-contents"><pre class="programlisting">[NetDev]
+Name=vti-tun
+Kind=vti
+MTUBytes=1480
+
+[Tunnel]
+Local=10.65.223.238
+Remote=10.65.223.239</pre></div></div><br class="example-break"><div class="example"><a name="idm214174112448"></a><p class="title"><b>Example 8. /etc/systemd/network/veth.netdev</b></p><div class="example-contents"><pre class="programlisting">[NetDev]
+Name=veth-test
+Kind=veth
+
+[Peer]
+Name=veth-peer</pre></div></div><br class="example-break"><div class="example"><a name="idm214174110976"></a><p class="title"><b>Example 9. /etc/systemd/network/dummy.netdev</b></p><div class="example-contents"><pre class="programlisting">[NetDev]
+Name=dummy-test
+Kind=dummy
+MACAddress=12:34:56:78:9a:bc</pre></div></div><br class="example-break"></div><div class="refsect1"><a name="idm214174109376"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
                         <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
                         <a href="systemd-networkd.html"><span class="citerefentry"><span class="refentrytitle">systemd-networkd</span>(8)</span></a>,
                         <a href="systemd.network.html"><span class="citerefentry"><span class="refentrytitle">systemd.network</span>(5)</span></a>
index c17ae9eb22e919d906ea19ddbbb4a1dc7be01bf0..c90bd8f98c13520e57d20753bf799d56e375fd90 100644 (file)
                 <filename>/usr/lib</filename>, pointing to <filename>/dev/null</filename>,
                 disables the configuration file entirely.</para>
 
+        </refsect1>
+
+        <refsect1>
+                <title>[Match] Section Options</title>
+
                 <para>A virtual network device is only created if the
                 <literal>[Match]</literal> section matches the current
                 environment, or if the section is empty. The following keys are accepted:</para>
                                 </varlistentry>
                         </variablelist>
 
+        </refsect1>
+
+        <refsect1>
+                <title>[NetDev] Section Options</title>
+
                         <para>The <literal>[NetDev]</literal> section accepts the following
                         keys:</para>
 
                         <variablelist class='network-directives'>
+                                <varlistentry>
+                                        <term><varname>Description=</varname></term>
+                                        <listitem>
+                                                <para>A free-form description of the netdev.
+                                                </para>
+                                        </listitem>
+                                </varlistentry>
                                 <varlistentry>
                                         <term><varname>Name=</varname></term>
                                         <listitem>
                                         <term><varname>Kind=</varname></term>
                                         <listitem>
                                                 <para>The netdev kind. Currently, <literal>bridge</literal>,
-                                                <literal>bond</literal>, <literal>vlan</literal> and
-                                                <literal>macvlan</literal> are supported. This option
-                                                is compulsory.</para>
+                                                <literal>bond</literal>, <literal>vlan</literal>,
+                                                <literal>macvlan</literal>, <literal>vxlan</literal>,
+                                                <literal>ipip</literal>, <literal>gre</literal>,
+                                                <literal>sit</literal>, <literal>vti</literal>,
+                                                <literal>veth</literal>, and <literal>dummy</literal>
+                                                are supported. This option is compulsory.</para>
+                                        </listitem>
+                                </varlistentry>
+                                <varlistentry>
+                                        <term><varname>MTUBytes=</varname></term>
+                                        <listitem>
+                                                <para>The maximum transmission unit in bytes to
+                                                set for the device. The usual suffixes K, M, G,
+                                                are supported and are understood to the base of
+                                                1024.</para>
+                                        </listitem>
+                                </varlistentry>
+                                <varlistentry>
+                                        <term><varname>MACAddress=</varname></term>
+                                        <listitem>
+                                                <para>The MAC address to use for the device.
+                                                If none is given, one is generated based on
+                                                the interface name and the
+                                                <citerefentry><refentrytitle>machine-id</refentrytitle><manvolnum>5</manvolnum></citerefentry>.
+                                                </para>
                                         </listitem>
                                 </varlistentry>
                         </variablelist>
+        </refsect1>
+
+        <refsect1>
+                <title>[VLAN] Section Options</title>
 
                         <para>The <literal>[VLAN]</literal> section only applies for netdevs of kind <literal>vlan</literal>,
                         and accepts the following key:</para>
                                 </varlistentry>
                         </variablelist>
 
+        </refsect1>
+
+        <refsect1>
+                <title>[MACVLAN] Section Options</title>
+
                         <para>The <literal>[MACVLAN]</literal> section only applies for netdevs of kind
                         <literal>macvlan</literal>, and accepts the following key:</para>
 
                         </variablelist>
 
         </refsect1>
+        <refsect1>
+                <title>[VXLAN] Section Options</title>
+                        <para>The <literal>[VXLAN]</literal> section only applies for netdevs of kind
+                        <literal>vxlan</literal>, and accepts the following key:</para>
+
+                        <variablelist class='network-directives'>
+                                <varlistentry>
+                                        <term><varname>Id=</varname></term>
+                                        <listitem>
+                                                <para>The VXLAN ID to use.</para>
+                                        </listitem>
+                                </varlistentry>
+                                <varlistentry>
+                                        <term><varname>Group=</varname></term>
+                                        <listitem>
+                                                <para>An assigned multicast group IP address.</para>
+                                        </listitem>
+                                </varlistentry>
+                                <varlistentry>
+                                        <term><varname>TOS=</varname></term>
+                                        <listitem>
+                                                <para>The Type Of Service byte value for a vxlan interface.</para>
+                                        </listitem>
+                                </varlistentry>
+                                <varlistentry>
+                                        <term><varname>TTL=</varname></term>
+                                        <listitem>
+                                                <para>A fixed Time To Live N on Virtual eXtensible Local Area Network packets.
+                                                N is a number in the range 1-255. 0 is a special value meaning that packets
+                                                inherit the TTL value.</para>
+                                        </listitem>
+                                </varlistentry>
+                                <varlistentry>
+                                        <term><varname>MacLearning=</varname></term>
+                                        <listitem>
+                                                <para>A boolean. When true, enables dynamic MAC learning
+                                                to discover remote MAC addresses.</para>
+                                        </listitem>
+                                </varlistentry>
+                        </variablelist>
+        </refsect1>
+        <refsect1>
+                <title>[Tunnel] Section Options</title>
+
+                        <para>The <literal>[Tunnel]</literal> section only applies for netdevs of kind
+                        <literal>ipip</literal>, <literal>sit</literal>, <literal>gre</literal> and
+                        <literal>vti</literal> and accepts the following keys:</para>
+
+                        <variablelist class='network-directives'>
+                                <varlistentry>
+                                        <term><varname>Local=</varname></term>
+                                        <listitem>
+                                                <para>A static local address for tunneled packets.
+                                                It must be an address on another interface of this host.</para>
+                                        </listitem>
+                                </varlistentry>
+                                <varlistentry>
+                                        <term><varname>Remote=</varname></term>
+                                        <listitem>
+                                                <para>The remote endpoint of the tunnel.</para>
+                                        </listitem>
+                                </varlistentry>
+                                <varlistentry>
+                                        <term><varname>TOS=</varname></term>
+                                        <listitem>
+                                                <para>The Type Of Service byte value for a tunnel interface.
+                                                For details about the TOS see the
+                                                <ulink url="http://tools.ietf.org/html/rfc1349">
+                                                Type of Service in the Internet Protocol Suite
+                                                </ulink> document.
+                                                </para>
+                                        </listitem>
+                                </varlistentry>
+                                <varlistentry>
+                                        <term><varname>TTL=</varname></term>
+                                        <listitem>
+                                                <para>A fixed Time To Live N on tunneled packets.
+                                                N is a number in the range 1-255. 0 is a special value meaning that packets
+                                                inherit the TTL value. The default value for IPv4 tunnels is: inherit.
+                                                The default value for IPv6 tunnels is: 64.</para>
+                                        </listitem>
+                                </varlistentry>
+                                <varlistentry>
+                                        <term><varname>DiscoverPathMTU=</varname></term>
+                                        <listitem>
+                                                <para>A boolean. When true, enables Path MTU Discovery on the tunnel.</para>
+                                        </listitem>
+                                </varlistentry>
+                        </variablelist>
+        </refsect1>
+        <refsect1>
+                <title>[Peer] Section Options</title>
+
+                        <para>The <literal>[Peer]</literal> section only applies for netdevs of kind <literal>veth</literal>
+                        and accepts the following key:</para>
+
+                        <variablelist class='network-directives'>
+                                <varlistentry>
+                                        <term><varname>Name=</varname></term>
+                                        <listitem>
+                                                <para>The interface name used when creating the netdev.
+                                                This option is compulsory.</para>
+                                        </listitem>
+                                </varlistentry>
+                                <varlistentry>
+                                        <term><varname>MACAddress=</varname></term>
+                                        <listitem>
+                                                <para>The peer MACAddress, if not set it is generated in the same
+                                                way as the MAC address of the main interface.</para>
+                                        </listitem>
+                                </varlistentry>
+                        </variablelist>
+        </refsect1>
+        <refsect1>
+                <title>[Tun] Section Options</title>
+
+                        <para>The <literal>[Tun]</literal> section only applies for netdevs of kind
+                        <literal>tun</literal>, and accepts the following keys:</para>
+
+                        <variablelist class='network-directives'>
+                                <varlistentry>
+                                        <term><varname>OneQueue=</varname></term>
+                                        <listitem><para>Takes a boolean argument. Configures whether
+                                        all packets are queued at the device (enabled), or a fixed number
+                                        of packets are queued at the device and the rest at the
+                                        <literal>qdisc</literal>. Defaults to <literal>no</literal>.</para>
+                                        </listitem>
+                                </varlistentry>
+                                <varlistentry>
+                                        <term><varname>MultiQueue=</varname></term>
+                                        <listitem><para>Takes a boolean argument. Configures whether to
+                                        use multiple file descriptors (queues) to parallelize packets
+                                        sending and receiving. Defaults to <literal>no</literal>.</para>
+                                        </listitem>
+                                </varlistentry>
+                                <varlistentry>
+                                        <term><varname>PacketInfo=</varname></term>
+                                        <listitem><para>Takes a boolean argument. Configures whether packets
+                                        should be prepened with four extra bytes (two flag bytes and two
+                                        protocol bytes). If disabled it indicates that the packets will be
+                                        pure IP packets. Defaults to <literal>no</literal>.</para>
+                                        </listitem>
+                                </varlistentry>
+                                <varlistentry>
+                                        <term><varname>User=</varname></term>
+                                        <listitem><para>User to grant access to the <filename>/dev/net/tun</filename>
+                                        device.</para>
+                                        </listitem>
+                                </varlistentry>
+                                <varlistentry>
+                                        <term><varname>Group=</varname></term>
+                                        <listitem><para>Group to grant access to the <filename>/dev/net/tun</filename>
+                                        device.</para>
+                                        </listitem>
+                                </varlistentry>
+
+                        </variablelist>
+
+        </refsect1>
+
+        <refsect1>
+                <title>[Tap] Section Options</title>
+
+                        <para>The <literal>[Tap]</literal> section only applies for netdevs of kind
+                        <literal>tap</literal>, and accepts the same keys as the
+                        <literal>[Tun]</literal> section.</para>
+        </refsect1>
 
         <refsect1>
                 <title>Example</title>
@@ -202,9 +417,84 @@ Kind=vlan
 [VLAN]
 Id=1</programlisting>
                 </example>
+                <example>
+                        <title>/etc/systemd/network/ipip.netdev</title>
+                        <programlisting>[NetDev]
+Name=ipip-tun
+Kind=ipip
+MTUBytes=1480
+
+[Tunnel]
+Local=192.168.223.238
+Remote=192.169.224.239
+TTL=64</programlisting>
+                </example>
+                <example>
+                  <title>/etc/systemd/network/tap.netdev</title>
+                  <programlisting>[NetDev]
+Name=tap-test
+Kind=tap
 
-        </refsect1>
+[Tap]
+MultiQueue=true
+PacketInfo=true</programlisting> </example>
+
+                <example>
+                        <title>/etc/systemd/network/sit.netdev</title>
+                        <programlisting>[NetDev]
+Name=sit-tun
+Kind=sit
+MTUBytes=1480
+
+[Tunnel]
+Local=10.65.223.238
+Remote=10.65.223.239</programlisting>
+                </example>
 
+                <example>
+                        <title>/etc/systemd/network/gre.netdev</title>
+                        <programlisting>[NetDev]
+Name=gre-tun
+Kind=gre
+MTUBytes=1480
+
+[Tunnel]
+Local=10.65.223.238
+Remote=10.65.223.239</programlisting>
+                </example>
+
+                <example>
+                        <title>/etc/systemd/network/vti.netdev</title>
+
+                        <programlisting>[NetDev]
+Name=vti-tun
+Kind=vti
+MTUBytes=1480
+
+[Tunnel]
+Local=10.65.223.238
+Remote=10.65.223.239</programlisting>
+                </example>
+
+                <example>
+                        <title>/etc/systemd/network/veth.netdev</title>
+                        <programlisting>[NetDev]
+Name=veth-test
+Kind=veth
+
+[Peer]
+Name=veth-peer</programlisting>
+                </example>
+
+                <example>
+                        <title>/etc/systemd/network/dummy.netdev</title>
+                        <programlisting>[NetDev]
+Name=dummy-test
+Kind=dummy
+MACAddress=12:34:56:78:9a:bc</programlisting>
+                </example>
+
+        </refsect1>
         <refsect1>
                 <title>See Also</title>
                 <para>
index 49bffba870bb824c04f9da1d8a61d83d889866ff..07923d45eb28d3bf5f76b05073e6b088a1636584 100644 (file)
@@ -1,5 +1,5 @@
 '\" t
-.TH "SYSTEMD\&.NETWORK" "5" "" "systemd 214" "systemd.network"
+.TH "SYSTEMD\&.NETWORK" "5" "" "systemd 215" "systemd.network"
 .\" -----------------------------------------------------------------
 .\" * Define some portability stuff
 .\" -----------------------------------------------------------------
@@ -48,6 +48,7 @@ take precedence over files with the same name in
 with the same name as a configuration file in
 /usr/lib, pointing to
 /dev/null, disables the configuration file entirely\&.
+.SH "[MATCH] SECTION OPTIONS"
 .PP
 The network file contains a
 "[Match]"
@@ -126,6 +127,7 @@ in
 \fBsystemd.unit\fR(5)
 for details\&.
 .RE
+.SH "[NETWORK] SECTION OPTIONS"
 .PP
 The
 "[Network]"
@@ -138,7 +140,17 @@ A description of the device\&. This is only used for presentation purposes\&.
 .PP
 \fIDHCP=\fR
 .RS 4
-A boolean\&. When true, enables basic DHCPv4 support\&.
+Enables DHCPv4 and/or DHCPv6 support\&. Accepts
+"both",
+"none",
+"v4"
+or
+"v6"\&.
+.RE
+.PP
+\fIDHCPServer=\fR
+.RS 4
+A boolean\&. Enables a basic DHCPv4 server on the device\&. Mostly useful for handing out leases to container instances\&.
 .RE
 .PP
 \fIIPv4LL=\fR
@@ -154,6 +166,8 @@ A static IPv4 or IPv6 address and its prefix length, separated by a
 "/"
 character\&. Specify this key more than once to configure several addresses\&. The format of the address must be as described in
 \fBinet_pton\fR(3)\&. This is a short\-hand for an [Address] section only containing an Address key (see below)\&. This option may be specified more than once\&.
+.sp
+If the specified address is 0\&.0\&.0\&.0 (for IPv4) or [::] (for IPv6), a new address range of the requested size is automatically allocated from a system\-wide pool of unused ranges\&. The allocated range is checked against all current network interfaces and all known network configuration files to avoid address range conflicts\&. The default system\-wide pool consists of 192\&.168\&.0\&.0/16, 172\&.16\&.0\&.0/12 and 10\&.0\&.0\&.0/8 for IPv4, and fc00::/7 for IPv6\&. This functionality is useful to manage a large number of dynamically created network interfaces with the same network configuration and automatic address range assignment\&.
 .RE
 .PP
 \fIGateway=\fR
@@ -188,6 +202,17 @@ The name of a VLAN to create on the link\&. This option may be specified more th
 The name of a MACVLAN to create on the link\&. This option may be specified more than once\&.
 .RE
 .PP
+\fIVXLAN=\fR
+.RS 4
+The name of a VXLAN to create on the link\&. This option may be specified more than once\&.
+.RE
+.PP
+\fITunnel=\fR
+.RS 4
+The name of a Tunnel to create on the link\&. This option may be specified more than once\&.
+.RE
+.SH "[ADDRESS] SECTION OPTIONS"
+.PP
 An
 "[Address]"
 section accepts the following keys\&. Specify several
@@ -213,6 +238,7 @@ key\&.
 .RS 4
 An address label\&.
 .RE
+.SH "[ROUTE] SECTION OPTIONS"
 .PP
 The
 "[Route]"
@@ -231,9 +257,10 @@ section\&. This key is mandatory\&.
 .RS 4
 The destination prefix of the route\&. Possibly followed by a slash and the prefixlength\&. If ommitted, a full\-length host route is assumed\&.
 .RE
+.SH "[DHCP] SECTION OPTIONS"
 .PP
 The
-"[DHCPv4]"
+"[DHCP]"
 section accepts the following keys:
 .PP
 \fIUseDNS=\fR
@@ -246,11 +273,21 @@ When true (the default), the DNS servers received from the DHCP server will be u
 When true, the interface maximum transmission unit from the DHCP server will be used on the current link\&. Defaults to false\&.
 .RE
 .PP
+\fISendHostname=\fR
+.RS 4
+When true (the default), the machine\*(Aqs hostname will be sent to the DHCP server
+.RE
+.PP
 \fIUseHostname=\fR
 .RS 4
 When true (the default), the hostname received from the DHCP server will be used as the transient hostname\&.
 .RE
 .PP
+\fIUseRoutes=\fR
+.RS 4
+When true (the default), the static routes will be requested from the DHCP server and added to the routing table with metric of 1024\&.
+.RE
+.PP
 \fICriticalConnection=\fR
 .RS 4
 When true, the connection will never be torn down even if the DHCP lease expires\&. This is contrary to the DHCP specification, but may be the best choice if, say, the root filesystem relies on this connection\&. Defaults to false\&.
@@ -323,6 +360,70 @@ Bridge=bridge0
 .if n \{\
 .RE
 .\}
+.PP
+\fBExample\ \&5.\ \&/etc/systemd/network/ipip.network\fR
+.sp
+.if n \{\
+.RS 4
+.\}
+.nf
+[Match]
+Name=em1
+
+[Network]
+Tunnel=ipip\-tun
+.fi
+.if n \{\
+.RE
+.\}
+.PP
+\fBExample\ \&6.\ \&/etc/systemd/network/sit.network\fR
+.sp
+.if n \{\
+.RS 4
+.\}
+.nf
+[Match]
+Name=em1
+
+[Network]
+Tunnel=sit\-tun
+.fi
+.if n \{\
+.RE
+.\}
+.PP
+\fBExample\ \&7.\ \&/etc/systemd/network/gre.network\fR
+.sp
+.if n \{\
+.RS 4
+.\}
+.nf
+[Match]
+Name=em1
+
+[Network]
+Tunnel=gre\-tun
+.fi
+.if n \{\
+.RE
+.\}
+.PP
+\fBExample\ \&8.\ \&/etc/systemd/network/vti.network\fR
+.sp
+.if n \{\
+.RS 4
+.\}
+.nf
+[Match]
+Name=em1
+
+[Network]
+Tunnel=vti\-tun
+.fi
+.if n \{\
+.RE
+.\}
 .SH "SEE ALSO"
 .PP
 \fBsystemd\fR(1),
index 8bae0a9548f162db4735a72f085362d08de7b678..b2b8adcb00d6d069682303f9b2efe18a8d47d6d0 100644 (file)
@@ -19,7 +19,7 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="systemd.network"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>systemd.network — Network configuration</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><p><code class="filename"><em class="replaceable"><code>network</code></em>.network</code></p></div><div class="refsect1"><a name="idm214190992336"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p>Network setup is performed by
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="systemd.network"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>systemd.network — Network configuration</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><p><code class="filename"><em class="replaceable"><code>network</code></em>.network</code></p></div><div class="refsect1"><a name="idm214167761904"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p>Network setup is performed by
                <a href="systemd-networkd.html"><span class="citerefentry"><span class="refentrytitle">systemd-networkd</span>(8)</span></a>.
                </p><p>Network files must have the extension <code class="filename">.network</code>;
                 other extensions are ignored. Networks are applied to links whenever the links
@@ -37,7 +37,7 @@
                 system-supplied configuration file with a local file if needed; a symlink in
                 <code class="filename">/etc</code> with the same name as a configuration file in
                 <code class="filename">/usr/lib</code>, pointing to <code class="filename">/dev/null</code>,
-                disables the configuration file entirely.</p><p>The network file contains a "<code class="literal">[Match]</code>" section,
+                disables the configuration file entirely.</p></div><div class="refsect1"><a name="idm214167750736"></a><h2 id="[Match] Section Options">[Match] Section Options<a class="headerlink" title="Permalink to this headline" href="#%5BMatch%5D%20Section%20Options">¶</a></h2><p>The network file contains a "<code class="literal">[Match]</code>" section,
                         which determines if a given network file may be applied to a given device;
                         and a "<code class="literal">[Network]</code>" section specifying how the device should
                         be configured. The first (in lexical order) of the network files that
                                                 architecture. See "<code class="literal">ConditionArchitecture=</code>" in
                                                 <a href="systemd.unit.html"><span class="citerefentry"><span class="refentrytitle">systemd.unit</span>(5)</span></a>
                                                 for details.
-                                                </p></dd></dl></div><p>The "<code class="literal">[Network]</code>" section accepts the following keys:</p><div class="variablelist"><dl class="variablelist"><dt id="Description="><span class="term"><code class="varname">Description=</code></span><a class="headerlink" title="Permalink to this term" href="#Description=">¶</a></dt><dd><p>A description of the device. This is only used for
-                                                presentation purposes.</p></dd><dt id="DHCP="><span class="term"><code class="varname">DHCP=</code></span><a class="headerlink" title="Permalink to this term" href="#DHCP=">¶</a></dt><dd><p>A boolean. When true, enables basic DHCPv4 support.</p></dd><dt id="IPv4LL="><span class="term"><code class="varname">IPv4LL=</code></span><a class="headerlink" title="Permalink to this term" href="#IPv4LL=">¶</a></dt><dd><p>A boolean. When true, enables IPv4 link-local support.
+                                                </p></dd></dl></div></div><div class="refsect1"><a name="idm214171662832"></a><h2 id="[Network] Section Options">[Network] Section Options<a class="headerlink" title="Permalink to this headline" href="#%5BNetwork%5D%20Section%20Options">¶</a></h2><p>The "<code class="literal">[Network]</code>" section accepts the following keys:</p><div class="variablelist"><dl class="variablelist"><dt id="Description="><span class="term"><code class="varname">Description=</code></span><a class="headerlink" title="Permalink to this term" href="#Description=">¶</a></dt><dd><p>A description of the device. This is only used for
+                                                presentation purposes.</p></dd><dt id="DHCP="><span class="term"><code class="varname">DHCP=</code></span><a class="headerlink" title="Permalink to this term" href="#DHCP=">¶</a></dt><dd><p>Enables DHCPv4 and/or DHCPv6 support. Accepts
+                                                "<code class="literal">both</code>", "<code class="literal">none</code>",
+                                                "<code class="literal">v4</code>" or "<code class="literal">v6</code>".</p></dd><dt id="DHCPServer="><span class="term"><code class="varname">DHCPServer=</code></span><a class="headerlink" title="Permalink to this term" href="#DHCPServer=">¶</a></dt><dd><p>A boolean. Enables a basic DHCPv4 server on the
+                                                device. Mostly useful for handing out leases to container
+                                                instances.</p></dd><dt id="IPv4LL="><span class="term"><code class="varname">IPv4LL=</code></span><a class="headerlink" title="Permalink to this term" href="#IPv4LL=">¶</a></dt><dd><p>A boolean. When true, enables IPv4 link-local support.
                                                 If "<code class="literal">DHCP=</code>" is also true, acquiring DHCP address
                                                 will deprecate previously acquired IPv4 link-local address or
                                                 stop acquiring process if one has not been acquired before.
                                                 This is a short-hand for an [Address] section only containing
                                                 an Address key (see below). This option may be specified
                                                 more than once.
-                                                </p></dd><dt id="Gateway="><span class="term"><code class="varname">Gateway=</code></span><a class="headerlink" title="Permalink to this term" href="#Gateway=">¶</a></dt><dd><p>The gateway address, which must be in the format described in
+                                                </p><p>If the specified
+                                                address is 0.0.0.0
+                                                (for IPv4) or [::]
+                                                (for IPv6), a new
+                                                address range of the
+                                                requested size is
+                                                automatically
+                                                allocated from a
+                                                system-wide pool of
+                                                unused ranges. The
+                                                allocated range is
+                                                checked against all
+                                                current network
+                                                interfaces and all
+                                                known network
+                                                configuration files to
+                                                avoid address range
+                                                conflicts. The default
+                                                system-wide pool
+                                                consists of
+                                                192.168.0.0/16,
+                                                172.16.0.0/12 and
+                                                10.0.0.0/8 for IPv4,
+                                                and fc00::/7 for
+                                                IPv6. This
+                                                functionality is
+                                                useful to manage a
+                                                large number of
+                                                dynamically created
+                                                network interfaces
+                                                with the same network
+                                                configuration and
+                                                automatic address
+                                                range
+                                                assignment.</p></dd><dt id="Gateway="><span class="term"><code class="varname">Gateway=</code></span><a class="headerlink" title="Permalink to this term" href="#Gateway=">¶</a></dt><dd><p>The gateway address, which must be in the format described in
                                                 <a href="inet_pton.html"><span class="citerefentry"><span class="refentrytitle">inet_pton</span>(3)</span></a>.
                                                 This is a short-hand for a [Route] section only containing a Gateway
                                                 key. This option may be specified more than once.</p></dd><dt id="DNS="><span class="term"><code class="varname">DNS=</code></span><a class="headerlink" title="Permalink to this term" href="#DNS=">¶</a></dt><dd><p>A DNS server address, which must be in the format described in
                                                 <a href="inet_pton.html"><span class="citerefentry"><span class="refentrytitle">inet_pton</span>(3)</span></a>.
                                                 This option may be specified more than once.</p></dd><dt id="Bridge="><span class="term"><code class="varname">Bridge=</code></span><a class="headerlink" title="Permalink to this term" href="#Bridge=">¶</a></dt><dd><p>The name of the bridge to add the link to.</p></dd><dt id="Bond="><span class="term"><code class="varname">Bond=</code></span><a class="headerlink" title="Permalink to this term" href="#Bond=">¶</a></dt><dd><p>The name of the bond to add the link to.</p></dd><dt id="VLAN="><span class="term"><code class="varname">VLAN=</code></span><a class="headerlink" title="Permalink to this term" href="#VLAN=">¶</a></dt><dd><p>The name of a VLAN to create on the link. This option
                                                 may be specified more than once.</p></dd><dt id="MACVLAN="><span class="term"><code class="varname">MACVLAN=</code></span><a class="headerlink" title="Permalink to this term" href="#MACVLAN=">¶</a></dt><dd><p>The name of a MACVLAN to create on the link. This option
-                                                may be specified more than once.</p></dd></dl></div><p>An "<code class="literal">[Address]</code>" section accepts the following keys.
+                                                may be specified more than once.</p></dd><dt id="VXLAN="><span class="term"><code class="varname">VXLAN=</code></span><a class="headerlink" title="Permalink to this term" href="#VXLAN=">¶</a></dt><dd><p>The name of a VXLAN to create on the link. This option
+                                                may be specified more than once.</p></dd><dt id="Tunnel="><span class="term"><code class="varname">Tunnel=</code></span><a class="headerlink" title="Permalink to this term" href="#Tunnel=">¶</a></dt><dd><p>The name of a Tunnel to create on the link. This option
+                                                may be specified more than once.</p></dd></dl></div></div><div class="refsect1"><a name="idm214166659648"></a><h2 id="[Address] Section Options">[Address] Section Options<a class="headerlink" title="Permalink to this headline" href="#%5BAddress%5D%20Section%20Options">¶</a></h2><p>An "<code class="literal">[Address]</code>" section accepts the following keys.
                         Specify several "<code class="literal">[Address]</code>" sections to configure several
                         addresses.</p><div class="variablelist"><dl class="variablelist"><dt id="Address="><span class="term"><code class="varname">Address=</code></span><a class="headerlink" title="Permalink to this term" href="#Address=">¶</a></dt><dd><p>As in the "<code class="literal">[Network]</code>" section. This key is mandatory.</p></dd><dt id="Broadcast="><span class="term"><code class="varname">Broadcast=</code></span><a class="headerlink" title="Permalink to this term" href="#Broadcast=">¶</a></dt><dd><p>The broadcast address, which must be in the format described in
                                                 <a href="inet_pton.html"><span class="citerefentry"><span class="refentrytitle">inet_pton</span>(3)</span></a>.
                                                 This key only applies to IPv4 addresses. If it is not given, it is
-                                                derived from the "<code class="literal">Address</code>" key.</p></dd><dt id="Label="><span class="term"><code class="varname">Label=</code></span><a class="headerlink" title="Permalink to this term" href="#Label=">¶</a></dt><dd><p>An address label.</p></dd></dl></div><p>The "<code class="literal">[Route]</code>" section accepts the following keys. Specify
+                                                derived from the "<code class="literal">Address</code>" key.</p></dd><dt id="Label="><span class="term"><code class="varname">Label=</code></span><a class="headerlink" title="Permalink to this term" href="#Label=">¶</a></dt><dd><p>An address label.</p></dd></dl></div></div><div class="refsect1"><a name="idm214166649296"></a><h2 id="[Route] Section Options">[Route] Section Options<a class="headerlink" title="Permalink to this headline" href="#%5BRoute%5D%20Section%20Options">¶</a></h2><p>The "<code class="literal">[Route]</code>" section accepts the following keys. Specify
                         several "<code class="literal">[Route]</code>" sections to configure several routes.</p><div class="variablelist"><dl class="variablelist"><dt id="Gateway="><span class="term"><code class="varname">Gateway=</code></span><a class="headerlink" title="Permalink to this term" href="#Gateway=">¶</a></dt><dd><p>As in the "<code class="literal">[Network]</code>" section. This key is mandatory.</p></dd><dt id="Destination="><span class="term"><code class="varname">Destination=</code></span><a class="headerlink" title="Permalink to this term" href="#Destination=">¶</a></dt><dd><p>The destination prefix of the route. Possibly followed by a slash and the
-                                                prefixlength. If ommitted, a full-length host route is assumed.</p></dd></dl></div><p>The "<code class="literal">[DHCPv4]</code>" section accepts the following keys:</p><div class="variablelist"><dl class="variablelist"><dt id="UseDNS="><span class="term"><code class="varname">UseDNS=</code></span><a class="headerlink" title="Permalink to this term" href="#UseDNS=">¶</a></dt><dd><p>When true (the default), the DNS servers received from the DHCP server will
+                                                prefixlength. If ommitted, a full-length host route is assumed.</p></dd></dl></div></div><div class="refsect1"><a name="idm214166642016"></a><h2 id="[DHCP] Section Options">[DHCP] Section Options<a class="headerlink" title="Permalink to this headline" href="#%5BDHCP%5D%20Section%20Options">¶</a></h2><p>The "<code class="literal">[DHCP]</code>" section accepts the following keys:</p><div class="variablelist"><dl class="variablelist"><dt id="UseDNS="><span class="term"><code class="varname">UseDNS=</code></span><a class="headerlink" title="Permalink to this term" href="#UseDNS=">¶</a></dt><dd><p>When true (the default), the DNS servers received from the DHCP server will
                                                 be used and take precedence over any statically configured ones.</p></dd><dt id="UseMTU="><span class="term"><code class="varname">UseMTU=</code></span><a class="headerlink" title="Permalink to this term" href="#UseMTU=">¶</a></dt><dd><p>When true, the interface maximum transmission unit from the DHCP server will
-                                                be used on the current link. Defaults to false.</p></dd><dt id="UseHostname="><span class="term"><code class="varname">UseHostname=</code></span><a class="headerlink" title="Permalink to this term" href="#UseHostname=">¶</a></dt><dd><p>When true (the default), the hostname received from the DHCP server
-                                                will be used as the transient hostname.</p></dd><dt id="CriticalConnection="><span class="term"><code class="varname">CriticalConnection=</code></span><a class="headerlink" title="Permalink to this term" href="#CriticalConnection=">¶</a></dt><dd><p>When true, the connection will never be torn down even if the DHCP lease
+                                                be used on the current link. Defaults to false.</p></dd><dt id="SendHostname="><span class="term"><code class="varname">SendHostname=</code></span><a class="headerlink" title="Permalink to this term" href="#SendHostname=">¶</a></dt><dd><p>When true (the default), the machine's hostname will be sent to the DHCP
+                                                server</p></dd><dt id="UseHostname="><span class="term"><code class="varname">UseHostname=</code></span><a class="headerlink" title="Permalink to this term" href="#UseHostname=">¶</a></dt><dd><p>When true (the default), the hostname received from the DHCP server
+                                                will be used as the transient hostname.</p></dd><dt id="UseRoutes="><span class="term"><code class="varname">UseRoutes=</code></span><a class="headerlink" title="Permalink to this term" href="#UseRoutes=">¶</a></dt><dd><p>When true (the default), the static routes will be requested from the DHCP server
+                                                and added to the routing table with metric of 1024.</p></dd><dt id="CriticalConnection="><span class="term"><code class="varname">CriticalConnection=</code></span><a class="headerlink" title="Permalink to this term" href="#CriticalConnection=">¶</a></dt><dd><p>When true, the connection will never be torn down even if the DHCP lease
                                                 expires. This is contrary to the DHCP specification, but may be the best choice
-                                                if, say, the root filesystem relies on this connection. Defaults to false.</p></dd></dl></div></div><div class="refsect1"><a name="idm214189480736"></a><h2 id="Example">Example<a class="headerlink" title="Permalink to this headline" href="#Example">¶</a></h2><div class="example"><a name="idm214189480096"></a><p class="title"><b>Example 1. /etc/systemd/network/50-static.network</b></p><div class="example-contents"><pre class="programlisting">[Match]
+                                                if, say, the root filesystem relies on this connection. Defaults to false.</p></dd></dl></div></div><div class="refsect1"><a name="idm214166628384"></a><h2 id="Example">Example<a class="headerlink" title="Permalink to this headline" href="#Example">¶</a></h2><div class="example"><a name="idm214166627744"></a><p class="title"><b>Example 1. /etc/systemd/network/50-static.network</b></p><div class="example-contents"><pre class="programlisting">[Match]
 Name=enp2s0
 
 [Network]
 Address=192.168.0.15/24
-Gateway=192.168.0.1</pre></div></div><br class="example-break"><div class="example"><a name="idm214189478608"></a><p class="title"><b>Example 2. /etc/systemd/network/80-dhcp.network</b></p><div class="example-contents"><pre class="programlisting">[Match]
+Gateway=192.168.0.1</pre></div></div><br class="example-break"><div class="example"><a name="idm214166626256"></a><p class="title"><b>Example 2. /etc/systemd/network/80-dhcp.network</b></p><div class="example-contents"><pre class="programlisting">[Match]
 Name=en*
 
 [Network]
-DHCP=yes</pre></div></div><br class="example-break"><div class="example"><a name="idm214189477216"></a><p class="title"><b>Example 3. /etc/systemd/network/bridge-static.network</b></p><div class="example-contents"><pre class="programlisting">[Match]
+DHCP=yes</pre></div></div><br class="example-break"><div class="example"><a name="idm214166624864"></a><p class="title"><b>Example 3. /etc/systemd/network/bridge-static.network</b></p><div class="example-contents"><pre class="programlisting">[Match]
 Name=bridge0
 
 [Network]
 Address=192.168.0.15/24
 Gateway=192.168.0.1
-DNS=192.168.0.1</pre></div></div><br class="example-break"><div class="example"><a name="idm214189475712"></a><p class="title"><b>Example 4. /etc/systemd/network/bridge-slave-interface.network</b></p><div class="example-contents"><pre class="programlisting">[Match]
+DNS=192.168.0.1</pre></div></div><br class="example-break"><div class="example"><a name="idm214166623360"></a><p class="title"><b>Example 4. /etc/systemd/network/bridge-slave-interface.network</b></p><div class="example-contents"><pre class="programlisting">[Match]
 Name=enp2s0
 
 [Network]
-Bridge=bridge0</pre></div></div><br class="example-break"></div><div class="refsect1"><a name="idm214189474192"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+Bridge=bridge0</pre></div></div><br class="example-break"><div class="example"><a name="idm214166621968"></a><p class="title"><b>Example 5. /etc/systemd/network/ipip.network</b></p><div class="example-contents"><pre class="programlisting">[Match]
+Name=em1
+
+[Network]
+Tunnel=ipip-tun</pre></div></div><br class="example-break"><div class="example"><a name="idm214166620576"></a><p class="title"><b>Example 6. /etc/systemd/network/sit.network</b></p><div class="example-contents"><pre class="programlisting">[Match]
+Name=em1
+
+[Network]
+Tunnel=sit-tun</pre></div></div><br class="example-break"><div class="example"><a name="idm214166619184"></a><p class="title"><b>Example 7. /etc/systemd/network/gre.network</b></p><div class="example-contents"><pre class="programlisting">[Match]
+Name=em1
+
+[Network]
+Tunnel=gre-tun</pre></div></div><br class="example-break"><div class="example"><a name="idm214166617792"></a><p class="title"><b>Example 8. /etc/systemd/network/vti.network</b></p><div class="example-contents"><pre class="programlisting">[Match]
+Name=em1
+
+[Network]
+Tunnel=vti-tun</pre></div></div><br class="example-break"></div><div class="refsect1"><a name="idm214166616272"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
                         <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
                         <a href="systemd-networkd.html"><span class="citerefentry"><span class="refentrytitle">systemd-networkd</span>(8)</span></a>,
                         <a href="systemd.netdev.html"><span class="citerefentry"><span class="refentrytitle">systemd.netdev</span>(5)</span></a>
index efe6ce755ff775ff198e07bbbaf2fd2805ebd1cc..2b0eb567be02068683fa8074f2a63dfbdcb26ac7 100644 (file)
                 <filename>/usr/lib</filename>, pointing to <filename>/dev/null</filename>,
                 disables the configuration file entirely.</para>
 
+        </refsect1>
+
+        <refsect1>
+                <title>[Match] Section Options</title>
+
                         <para>The network file contains a <literal>[Match]</literal> section,
                         which determines if a given network file may be applied to a given device;
                         and a <literal>[Network]</literal> section specifying how the device should
                                 </varlistentry>
                         </variablelist>
 
+        </refsect1>
+
+        <refsect1>
+                <title>[Network] Section Options</title>
+
                         <para>The <literal>[Network]</literal> section accepts the following keys:</para>
 
                         <variablelist class='network-directives'>
                                 <varlistentry>
                                         <term><varname>DHCP=</varname></term>
                                         <listitem>
-                                                <para>A boolean. When true, enables basic DHCPv4 support.</para>
+                                                <para>Enables DHCPv4 and/or DHCPv6 support. Accepts
+                                                <literal>both</literal>, <literal>none</literal>,
+                                                <literal>v4</literal> or <literal>v6</literal>.</para>
+                                        </listitem>
+                                </varlistentry>
+                                <varlistentry>
+                                        <term><varname>DHCPServer=</varname></term>
+                                        <listitem>
+                                                <para>A boolean. Enables a basic DHCPv4 server on the
+                                                device. Mostly useful for handing out leases to container
+                                                instances.</para>
                                         </listitem>
                                 </varlistentry>
                                 <varlistentry>
                                                 an Address key (see below). This option may be specified
                                                 more than once.
                                                 </para>
+
+                                                <para>If the specified
+                                                address is 0.0.0.0
+                                                (for IPv4) or [::]
+                                                (for IPv6), a new
+                                                address range of the
+                                                requested size is
+                                                automatically
+                                                allocated from a
+                                                system-wide pool of
+                                                unused ranges. The
+                                                allocated range is
+                                                checked against all
+                                                current network
+                                                interfaces and all
+                                                known network
+                                                configuration files to
+                                                avoid address range
+                                                conflicts. The default
+                                                system-wide pool
+                                                consists of
+                                                192.168.0.0/16,
+                                                172.16.0.0/12 and
+                                                10.0.0.0/8 for IPv4,
+                                                and fc00::/7 for
+                                                IPv6. This
+                                                functionality is
+                                                useful to manage a
+                                                large number of
+                                                dynamically created
+                                                network interfaces
+                                                with the same network
+                                                configuration and
+                                                automatic address
+                                                range
+                                                assignment.</para>
+
                                         </listitem>
                                 </varlistentry>
                                 <varlistentry>
                                                 This option may be specified more than once.</para>
                                         </listitem>
                                 </varlistentry>
+<!-- TODO: document NTP= option when it is actually used somewhere -->
                                 <varlistentry>
                                         <term><varname>Bridge=</varname></term>
                                         <listitem>
                                                 may be specified more than once.</para>
                                         </listitem>
                                 </varlistentry>
+                                <varlistentry>
+                                        <term><varname>VXLAN=</varname></term>
+                                        <listitem>
+                                                <para>The name of a VXLAN to create on the link. This option
+                                                may be specified more than once.</para>
+                                        </listitem>
+                                </varlistentry>
+                                <varlistentry>
+                                        <term><varname>Tunnel=</varname></term>
+                                        <listitem>
+                                                <para>The name of a Tunnel to create on the link. This option
+                                                may be specified more than once.</para>
+                                        </listitem>
+                                </varlistentry>
                         </variablelist>
 
+        </refsect1>
+
+        <refsect1>
+                <title>[Address] Section Options</title>
+
                         <para>An <literal>[Address]</literal> section accepts the following keys.
                         Specify several <literal>[Address]</literal> sections to configure several
                         addresses.</para>
                                         </listitem>
                                 </varlistentry>
                         </variablelist>
+        </refsect1>
 
+        <refsect1>
+                <title>[Route] Section Options</title>
                         <para>The <literal>[Route]</literal> section accepts the following keys. Specify
                         several <literal>[Route]</literal> sections to configure several routes.</para>
 
                                         </listitem>
                                 </varlistentry>
                         </variablelist>
+        </refsect1>
 
-                        <para>The <literal>[DHCPv4]</literal> section accepts the following keys:</para>
+        <refsect1>
+                <title>[DHCP] Section Options</title>
+                        <para>The <literal>[DHCP]</literal> section accepts the following keys:</para>
 
                         <variablelist class='network-directives'>
                                 <varlistentry>
                                                 be used on the current link. Defaults to false.</para>
                                         </listitem>
                                 </varlistentry>
+                                <varlistentry>
+                                        <term><varname>SendHostname=</varname></term>
+                                        <listitem>
+                                                <para>When true (the default), the machine's hostname will be sent to the DHCP
+                                                server</para>
+                                        </listitem>
+                                </varlistentry>
                                 <varlistentry>
                                         <term><varname>UseHostname=</varname></term>
                                         <listitem>
                                                 will be used as the transient hostname.</para>
                                         </listitem>
                                 </varlistentry>
+                                <varlistentry>
+                                        <term><varname>UseRoutes=</varname></term>
+                                        <listitem>
+                                                <para>When true (the default), the static routes will be requested from the DHCP server
+                                                and added to the routing table with metric of 1024.</para>
+                                        </listitem>
+                                </varlistentry>
                                 <varlistentry>
                                         <term><varname>CriticalConnection=</varname></term>
                                         <listitem>
@@ -384,6 +481,45 @@ Name=enp2s0
 [Network]
 Bridge=bridge0</programlisting>
                 </example>
+                <example>
+                        <title>/etc/systemd/network/ipip.network</title>
+
+                        <programlisting>[Match]
+Name=em1
+
+[Network]
+Tunnel=ipip-tun</programlisting>
+                </example>
+
+                <example>
+                        <title>/etc/systemd/network/sit.network</title>
+
+                        <programlisting>[Match]
+Name=em1
+
+[Network]
+Tunnel=sit-tun</programlisting>
+                </example>
+
+                <example>
+                        <title>/etc/systemd/network/gre.network</title>
+
+                        <programlisting>[Match]
+Name=em1
+
+[Network]
+Tunnel=gre-tun</programlisting>
+                </example>
+
+                <example>
+                        <title>/etc/systemd/network/vti.network</title>
+
+                        <programlisting>[Match]
+Name=em1
+
+[Network]
+Tunnel=vti-tun</programlisting>
+                </example>
         </refsect1>
 
         <refsect1>
index 10088794d497c1c8051453cefa9814712618b3aa..ba9426565052c29fa74aa525cf202100ccd8ca0a 100644 (file)
@@ -1,5 +1,5 @@
 '\" t
-.TH "SYSTEMD\&.PATH" "5" "" "systemd 214" "systemd.path"
+.TH "SYSTEMD\&.PATH" "5" "" "systemd 215" "systemd.path"
 .\" -----------------------------------------------------------------
 .\" * Define some portability stuff
 .\" -----------------------------------------------------------------
index 85127076356de348326f2656568b67d30bf000d0..d544f8c703cf1fd191a7e232ed7624e1e0957a5d 100644 (file)
@@ -19,7 +19,7 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="systemd.path"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>systemd.path — Path unit configuration</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><p><code class="filename"><em class="replaceable"><code>path</code></em>.path</code></p></div><div class="refsect1"><a name="idm214189184768"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p>A unit configuration file whose name ends in
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="systemd.path"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>systemd.path — Path unit configuration</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><p><code class="filename"><em class="replaceable"><code>path</code></em>.path</code></p></div><div class="refsect1"><a name="idm214171559104"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p>A unit configuration file whose name ends in
                 "<code class="literal">.path</code>" encodes information about
                 a path monitored by systemd, for
                 path-based activation.</p><p>This man page lists the configuration options
@@ -51,7 +51,7 @@
                 that path units are terminated cleanly prior to system
                 shutdown. Only path units involved with early boot or
                 late system shutdown should disable this option.
-                </p></div><div class="refsect1"><a name="idm214189174128"></a><h2 id="Options">Options<a class="headerlink" title="Permalink to this headline" href="#Options">¶</a></h2><p>Path files must include a [Path] section,
+                </p></div><div class="refsect1"><a name="idm214171147168"></a><h2 id="Options">Options<a class="headerlink" title="Permalink to this headline" href="#Options">¶</a></h2><p>Path files must include a [Path] section,
                 which carries information about the path(s) it
                 monitors. The options specific to the [Path] section
                 of path units are the following:</p><div class="variablelist"><dl class="variablelist"><dt id="PathExists="><span class="term"><code class="varname">PathExists=</code>, </span><span class="term"><code class="varname">PathExistsGlob=</code>, </span><span class="term"><code class="varname">PathChanged=</code>, </span><span class="term"><code class="varname">PathModified=</code>, </span><span class="term"><code class="varname">DirectoryNotEmpty=</code></span><a class="headerlink" title="Permalink to this term" href="#PathExists=">¶</a></dt><dd><p>Defines paths to
                                 create the directories in
                                 question. Takes an access mode in
                                 octal notation. Defaults to
-                                <code class="option">0755</code>.</p></dd></dl></div></div><div class="refsect1"><a name="idm214193125264"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+                                <code class="option">0755</code>.</p></dd></dl></div></div><div class="refsect1"><a name="idm214171452944"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
                           <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
                           <a href="systemctl.html"><span class="citerefentry"><span class="refentrytitle">systemctl</span>(8)</span></a>,
                           <a href="systemd.unit.html"><span class="citerefentry"><span class="refentrytitle">systemd.unit</span>(5)</span></a>,
index 947635e87911205b02eebf64c1fff886a557fafe..43eb191043c26d85e8033e428f9fb7ed0b40dd9b 100644 (file)
@@ -1,5 +1,5 @@
 '\" t
-.TH "SYSTEMD\&.PRESET" "5" "" "systemd 214" "systemd.preset"
+.TH "SYSTEMD\&.PRESET" "5" "" "systemd 215" "systemd.preset"
 .\" -----------------------------------------------------------------
 .\" * Define some portability stuff
 .\" -----------------------------------------------------------------
index 13e6c035b3d4ab9087d462f6f961347662932c03..3013bf35061b8af558754e7f52843cb17b5a66be 100644 (file)
@@ -19,7 +19,7 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="systemd.preset"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>systemd.preset — Service enablement presets</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><p><code class="filename">/etc/systemd/system-preset/*.preset</code></p><p><code class="filename">/run/systemd/system-preset/*.preset</code></p><p><code class="filename">/usr/lib/systemd/system-preset/*.preset</code></p><p><code class="filename">/etc/systemd/user-preset/*.preset</code></p><p><code class="filename">/run/systemd/user-preset/*.preset</code></p><p><code class="filename">/usr/lib/systemd/user-preset/*.preset</code></p></div><div class="refsect1"><a name="idm214186940592"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p>Preset files may be used to encode policy which
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="systemd.preset"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>systemd.preset — Service enablement presets</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><p><code class="filename">/etc/systemd/system-preset/*.preset</code></p><p><code class="filename">/run/systemd/system-preset/*.preset</code></p><p><code class="filename">/usr/lib/systemd/system-preset/*.preset</code></p><p><code class="filename">/etc/systemd/user-preset/*.preset</code></p><p><code class="filename">/run/systemd/user-preset/*.preset</code></p><p><code class="filename">/usr/lib/systemd/user-preset/*.preset</code></p></div><div class="refsect1"><a name="idm214173617984"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p>Preset files may be used to encode policy which
                 units shall be enabled by default and which ones
                 shall be disabled. They are read by <span class="command"><strong>systemctl
                 preset</strong></span> (for more information see
@@ -44,7 +44,7 @@
                 units shall rather be disabled, it is necessary to ship
                 a preset file with a single, catchall
                 "<code class="filename">disable *</code>" line. (See example 1,
-                below.)</p></div><div class="refsect1"><a name="idm214186932608"></a><h2 id="Preset File Format">Preset File Format<a class="headerlink" title="Permalink to this headline" href="#Preset%20File%20Format">¶</a></h2><p>The preset files contain a list of
+                below.)</p></div><div class="refsect1"><a name="idm214172493824"></a><h2 id="Preset File Format">Preset File Format<a class="headerlink" title="Permalink to this headline" href="#Preset%20File%20Format">¶</a></h2><p>The preset files contain a list of
                 directives consisting of either the word
                 "<code class="literal">enable</code>" or
                 "<code class="literal">disable</code>" followed by a space and a
                 file supplied by the vendor, the recommended way is to
                 place a symlink to <code class="filename">/dev/null</code> in
                 <code class="filename">/etc/systemd/system-preset/</code>
-                bearing the same filename.</p></div><div class="refsect1"><a name="idm214190816080"></a><h2 id="Example">Example<a class="headerlink" title="Permalink to this headline" href="#Example">¶</a></h2><div class="example"><a name="idm214190815408"></a><p class="title"><b>Example 1. Default off example <code class="filename">/usr/lib/systemd/system-preset/99-default.preset</code>:</b></p><div class="example-contents"><pre class="programlisting">disable *</pre></div></div><br class="example-break"><p>This disables all units. Due to the filename
+                bearing the same filename.</p></div><div class="refsect1"><a name="idm214172649696"></a><h2 id="Example">Example<a class="headerlink" title="Permalink to this headline" href="#Example">¶</a></h2><div class="example"><a name="idm214173353776"></a><p class="title"><b>Example 1. Default off example <code class="filename">/usr/lib/systemd/system-preset/99-default.preset</code>:</b></p><div class="example-contents"><pre class="programlisting">disable *</pre></div></div><br class="example-break"><p>This disables all units. Due to the filename
                 prefix "<code class="literal">99-</code>", it will be read last and
                 hence can easily be overridden by spin or
-                administrator preset policy or suchlike.</p><div class="example"><a name="idm214190812016"></a><p class="title"><b>Example 2. A GNOME spin example <code class="filename">/usr/lib/systemd/system-preset/50-gnome.preset</code>:</b></p><div class="example-contents"><pre class="programlisting">enable gdm.service
+                administrator preset policy or suchlike.</p><div class="example"><a name="idm214172611440"></a><p class="title"><b>Example 2. A GNOME spin example <code class="filename">/usr/lib/systemd/system-preset/50-gnome.preset</code>:</b></p><div class="example-contents"><pre class="programlisting">enable gdm.service
 enable colord.service
 enable accounts-daemon.service
 enable avahi-daemon.*</pre></div></div><br class="example-break"><p>This enables the three mentioned units, plus all
@@ -92,7 +92,7 @@ enable avahi-daemon.*</pre></div></div><br class="example-break"><p>This enables
                 enabled as they are installed. It leaves all other
                 units untouched, and subject to other (later) preset
                 files, for example like the one from the first example
-                above.</p><div class="example"><a name="idm214190800992"></a><p class="title"><b>Example 3. Administrator policy <code class="filename">/etc/systemd/system-preset/00-lennart.preset</code>:</b></p><div class="example-contents"><pre class="programlisting">enable httpd.service
+                above.</p><div class="example"><a name="idm214172886672"></a><p class="title"><b>Example 3. Administrator policy <code class="filename">/etc/systemd/system-preset/00-lennart.preset</code>:</b></p><div class="example-contents"><pre class="programlisting">enable httpd.service
 enable sshd.service
 enable postfix.service
 disable *</pre></div></div><br class="example-break"><p>This enables three specific services and
@@ -100,7 +100,7 @@ disable *</pre></div></div><br class="example-break"><p>This enables three speci
                 to specifically select the units to enable, and
                 disable all others. Due to the filename prefix
                 "<code class="literal">00-</code>" it will be read early and hence
-                overrides all other preset policy files.</p></div><div class="refsect1"><a name="idm214190797280"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+                overrides all other preset policy files.</p></div><div class="refsect1"><a name="idm214173400832"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
                         <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
                         <a href="systemctl.html"><span class="citerefentry"><span class="refentrytitle">systemctl</span>(1)</span></a>,
                         <a href="systemd-delta.html"><span class="citerefentry"><span class="refentrytitle">systemd-delta</span>(1)</span></a>
index 7a0cab7a89a80fb6a801a8302d4ebf3bd64274d6..b773936212bd7df138f2d92b1734cd01be94bf87 100644 (file)
@@ -1,5 +1,5 @@
 '\" t
-.TH "SYSTEMD\&.RESOURCE\-CONTROL" "5" "" "systemd 214" "systemd.resource-control"
+.TH "SYSTEMD\&.RESOURCE\-CONTROL" "5" "" "systemd 215" "systemd.resource-control"
 .\" -----------------------------------------------------------------
 .\" * Define some portability stuff
 .\" -----------------------------------------------------------------
index 6dde27070494fede111c422b1a44e96898e85200..9c1fe89d8dc1965ce1f40c3b9376de1ab1aed69f 100644 (file)
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="systemd.resource-control"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>systemd.resource-control — Resource control unit settings</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><p>
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="systemd.resource-control"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>systemd.resource-control — Resource control unit settings</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><p>
       <code class="filename"><em class="replaceable"><code>slice</code></em>.slice</code>,
       <code class="filename"><em class="replaceable"><code>scope</code></em>.scope</code>,
       <code class="filename"><em class="replaceable"><code>service</code></em>.service</code>,
       <code class="filename"><em class="replaceable"><code>socket</code></em>.socket</code>,
       <code class="filename"><em class="replaceable"><code>mount</code></em>.mount</code>,
       <code class="filename"><em class="replaceable"><code>swap</code></em>.swap</code>
-    </p></div><div class="refsect1"><a name="idm214188347712"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p>Unit configuration files for services, slices, scopes,
+    </p></div><div class="refsect1"><a name="idm214193410544"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p>Unit configuration files for services, slices, scopes,
     sockets, mount points, and swap devices share a subset of
     configuration options for resource control of spawned
     processes. Internally, this relies on the Control Groups
@@ -47,7 +47,7 @@
     [Slice], [Scope], [Service], [Socket], [Mount], or [Swap]
     sections, depending on the unit type.</p><p>See the <a class="ulink" href="http://www.freedesktop.org/wiki/Software/systemd/ControlGroupInterface/" target="_top">New
     Control Group Interfaces</a> for an introduction on how to make
-    use of resource control APIs from programs.</p></div><div class="refsect1"><a name="idm214188338544"></a><h2 id="Options">Options<a class="headerlink" title="Permalink to this headline" href="#Options">¶</a></h2><p>Units of the types listed above can have settings
+    use of resource control APIs from programs.</p></div><div class="refsect1"><a name="idm214190908640"></a><h2 id="Options">Options<a class="headerlink" title="Permalink to this headline" href="#Options">¶</a></h2><p>Units of the types listed above can have settings
     for resource control configuration:</p><div class="variablelist"><dl class="variablelist"><dt id="CPUAccounting="><span class="term"><code class="varname">CPUAccounting=</code></span><a class="headerlink" title="Permalink to this term" href="#CPUAccounting=">¶</a></dt><dd><p>Turn on CPU usage accounting for this unit. Takes a
           boolean argument. Note that turning on CPU accounting for
           one unit might also implicitly turn it on for all units
           settings applied.</p><p>For units of type slice, the only accepted value for
           this setting is the parent slice. Since the name of a slice
           unit implies the parent slice, it is hence redundant to ever
-          set this parameter directly for slice units.</p></dd></dl></div></div><div class="refsect1"><a name="idm214187240864"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+          set this parameter directly for slice units.</p></dd></dl></div></div><div class="refsect1"><a name="idm214191662576"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
       <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
       <a href="systemd.unit.html"><span class="citerefentry"><span class="refentrytitle">systemd.unit</span>(5)</span></a>,
       <a href="systemd.service.html"><span class="citerefentry"><span class="refentrytitle">systemd.service</span>(5)</span></a>,
index 27732b34e8ac2fae001d5bb53fafb72c619d5f6c..f3ae553979096cbc8d82979c25dda49333830790 100644 (file)
@@ -1,5 +1,5 @@
 '\" t
-.TH "SYSTEMD\&.SCOPE" "5" "" "systemd 214" "systemd.scope"
+.TH "SYSTEMD\&.SCOPE" "5" "" "systemd 215" "systemd.scope"
 .\" -----------------------------------------------------------------
 .\" * Define some portability stuff
 .\" -----------------------------------------------------------------
index e64e7a9231f584d17e3ee9dbb73495a33b179e6e..5975e192dfa3614623b3b56a95cc977b8a2d336b 100644 (file)
@@ -19,7 +19,7 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="systemd.scope"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>systemd.scope — Scope unit configuration</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><p><code class="filename"><em class="replaceable"><code>scope</code></em>.scope</code></p></div><div class="refsect1"><a name="idm214199277184"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p>Scope units are not configured via unit configuration files,
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="systemd.scope"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>systemd.scope — Scope unit configuration</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><p><code class="filename"><em class="replaceable"><code>scope</code></em>.scope</code></p></div><div class="refsect1"><a name="idm214193636544"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p>Scope units are not configured via unit configuration files,
     but are only created programmatically using the bus interfaces of
     systemd. They are named similar to filenames. A unit whose name
     ends in "<code class="literal">.scope</code>" refers to a scope unit. Scopes
@@ -38,7 +38,7 @@
     that scope units are removed prior to system
     shutdown. Only scope units involved with early boot or
     late system shutdown should disable this option.
-    </p></div><div class="refsect1"><a name="idm214199269680"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+    </p></div><div class="refsect1"><a name="idm214192881920"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
       <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
       <a href="systemd-run.html"><span class="citerefentry"><span class="refentrytitle">systemd-run</span>(1)</span></a>,
       <a href="systemd.unit.html"><span class="citerefentry"><span class="refentrytitle">systemd.unit</span>(5)</span></a>,
index c4b378dab48d1db9ad612d1447f94cc67aee0176..bcefbb3becc144fbe648fb2e7875abeedaeef03b 100644 (file)
@@ -1,5 +1,5 @@
 '\" t
-.TH "SYSTEMD\&.SERVICE" "5" "" "systemd 214" "systemd.service"
+.TH "SYSTEMD\&.SERVICE" "5" "" "systemd 215" "systemd.service"
 .\" -----------------------------------------------------------------
 .\" * Define some portability stuff
 .\" -----------------------------------------------------------------
@@ -583,13 +583,15 @@ X
 T}
 .TE
 .sp 1
-In addition to the above settings, the service will not be restarted if the exit code or signal is specified in
+As exceptions to the setting above the service will not be restarted if the exit code or signal is specified in
 \fIRestartPreventExitStatus=\fR
+(see below)\&. Also, the services will always be restarted if the exit code or signal is specified in
+\fIRestartForceExitStatus=\fR
 (see below)\&.
 .sp
 Setting this to
 \fBon\-failure\fR
-is the recommended choice for long\-running services, in order to increase reliability by attempting automatic recovery from errors\&. For services that shall be able to terminate on their own choice (and avoiding immediate restart)
+is the recommended choice for long\-running services, in order to increase reliability by attempting automatic recovery from errors\&. For services that shall be able to terminate on their own choice (and avoid immediate restarting),
 \fBon\-abnormal\fR
 is an alternative choice\&.
 .RE
@@ -606,7 +608,7 @@ Takes a list of exit status definitions that when returned by the main service p
 .RS 4
 .\}
 .nf
-SuccessExitStatus=1 2 8 \fBSIGKILL\fR
+SuccessExitStatus=1 2 8 SIGKILL
 .fi
 .if n \{\
 .RE
@@ -627,12 +629,30 @@ This option may appear more than once, in which case the list of successful exit
 \fIRestartPreventExitStatus=\fR
 .RS 4
 Takes a list of exit status definitions that when returned by the main service process will prevent automatic service restarts, regardless of the restart setting configured with
-\fIRestart=\fR\&. Exit status definitions can either be numeric exit codes or termination signal names, and are separated by spaces\&. Defaults to the empty list, so that, by default, no exit status is excluded from the configured restart logic\&. Example:
-"RestartPreventExitStatus=1 6 SIGABRT", ensures that exit codes 1 and 6 and the termination signal
+\fIRestart=\fR\&. Exit status definitions can either be numeric exit codes or termination signal names, and are separated by spaces\&. Defaults to the empty list, so that, by default, no exit status is excluded from the configured restart logic\&. For example:
+.sp
+.if n \{\
+.RS 4
+.\}
+.nf
+RestartPreventExitStatus=1 6 SIGABRT
+.fi
+.if n \{\
+.RE
+.\}
+.sp
+ensures that exit codes 1 and 6 and the termination signal
 \fBSIGABRT\fR
 will not result in automatic service restarting\&. This option may appear more than once, in which case the list of restart\-preventing statuses is merged\&. If the empty string is assigned to this option, the list is reset and all prior assignments of this option will have no effect\&.
 .RE
 .PP
+\fIRestartForceExitStatus=\fR
+.RS 4
+Takes a list of exit status definitions that when returned by the main service process will force automatic service restarts, regardless of the restart setting configured with
+\fIRestart=\fR\&. The argument format is similar to
+\fIRestartPreventExitStatus=\fR\&.
+.RE
+.PP
 \fIPermissionsStartOnly=\fR
 .RS 4
 Takes a boolean argument\&. If true, the permission\-related execution options, as configured with
index 132e1092bdff1baf6ee8b9ca9920e034617fdb83..d0571c6f392533ce3515e76a55f0f3f5a98188c7 100644 (file)
@@ -19,7 +19,7 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="systemd.service"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>systemd.service — Service unit configuration</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><p><code class="filename"><em class="replaceable"><code>service</code></em>.service</code></p></div><div class="refsect1"><a name="idm214184384128"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p>A unit configuration file whose name ends in
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="systemd.service"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>systemd.service — Service unit configuration</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><p><code class="filename"><em class="replaceable"><code>service</code></em>.service</code></p></div><div class="refsect1"><a name="idm214197490064"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p>A unit configuration file whose name ends in
                 <code class="filename">.service</code> encodes information
                 about a process controlled and supervised by
                 systemd.</p><p>This man page lists the configuration options
@@ -62,7 +62,7 @@
                 comprehensive but not 100%. For details about the
                 incompatibilities, see the <a class="ulink" href="http://www.freedesktop.org/wiki/Software/systemd/Incompatibilities" target="_top">Incompatibilities
                 with SysV</a> document.
-                </p></div><div class="refsect1"><a name="idm214188267056"></a><h2 id="Options">Options<a class="headerlink" title="Permalink to this headline" href="#Options">¶</a></h2><p>Service files must include a
+                </p></div><div class="refsect1"><a name="idm214201426880"></a><h2 id="Options">Options<a class="headerlink" title="Permalink to this headline" href="#Options">¶</a></h2><p>Service files must include a
                 "<code class="literal">[Service]</code>" section, which carries
                 information about the service and the process it
                 supervises. A number of options that may be used in
@@ -554,10 +554,15 @@ ExecStart=/bin/echo $ONE $TWO ${TWO}</pre><p>This will execute
                                 will be restarted regardless of
                                 whether it exited cleanly or not, got
                                 terminated abnormally by a signal, or
-                                hit a timeout.</p><div class="table"><a name="idm214183204432"></a><p class="title"><b>Table 1. Exit causes and the effect of the <code class="varname">Restart=</code> settings on them</b></p><div class="table-contents"><table summary="Exit causes and the effect of the Restart= settings on them" border="1"><colgroup><col class="path"><col class="expl"></colgroup><thead><tr><th>Restart settings/Exit causes</th><th><code class="option">no</code></th><th><code class="option">always</code></th><th><code class="option">on-success</code></th><th><code class="option">on-failure</code></th><th><code class="option">on-abnormal</code></th><th><code class="option">on-abort</code></th><th><code class="option">on-watchdog</code></th></tr></thead><tbody><tr><td>Clean exit code or signal</td><td> </td><td>X</td><td>X</td><td> </td><td> </td><td> </td><td> </td></tr><tr><td>Unclean exit code</td><td> </td><td>X</td><td> </td><td>X</td><td> </td><td> </td><td> </td></tr><tr><td>Unclean signal</td><td> </td><td>X</td><td> </td><td>X</td><td>X</td><td>X</td><td> </td></tr><tr><td>Timeout</td><td> </td><td>X</td><td> </td><td>X</td><td>X</td><td> </td><td> </td></tr><tr><td>Watchdog</td><td> </td><td>X</td><td> </td><td>X</td><td>X</td><td> </td><td>X</td></tr></tbody></table></div></div><br class="table-break"><p>In addition to the above settings,
-                                the service will not be restarted if the
-                                exit code or signal is specified in
+                                hit a timeout.</p><div class="table"><a name="idm214196309824"></a><p class="title"><b>Table 1. Exit causes and the effect of the <code class="varname">Restart=</code> settings on them</b></p><div class="table-contents"><table summary="Exit causes and the effect of the Restart= settings on them" border="1"><colgroup><col class="path"><col class="expl"></colgroup><thead><tr><th>Restart settings/Exit causes</th><th><code class="option">no</code></th><th><code class="option">always</code></th><th><code class="option">on-success</code></th><th><code class="option">on-failure</code></th><th><code class="option">on-abnormal</code></th><th><code class="option">on-abort</code></th><th><code class="option">on-watchdog</code></th></tr></thead><tbody><tr><td>Clean exit code or signal</td><td> </td><td>X</td><td>X</td><td> </td><td> </td><td> </td><td> </td></tr><tr><td>Unclean exit code</td><td> </td><td>X</td><td> </td><td>X</td><td> </td><td> </td><td> </td></tr><tr><td>Unclean signal</td><td> </td><td>X</td><td> </td><td>X</td><td>X</td><td>X</td><td> </td></tr><tr><td>Timeout</td><td> </td><td>X</td><td> </td><td>X</td><td>X</td><td> </td><td> </td></tr><tr><td>Watchdog</td><td> </td><td>X</td><td> </td><td>X</td><td>X</td><td> </td><td>X</td></tr></tbody></table></div></div><br class="table-break"><p>As exceptions to the setting
+                                above the service will not be
+                                restarted if the exit code or signal
+                                is specified in
                                 <code class="varname">RestartPreventExitStatus=</code>
+                                (see below). Also, the services will
+                                always be restarted if the exit code
+                                or signal is specified in
+                                <code class="varname">RestartForceExitStatus=</code>
                                 (see below).</p><p>Setting this to
                                 <code class="option">on-failure</code> is the
                                 recommended choice for long-running
@@ -565,8 +570,8 @@ ExecStart=/bin/echo $ONE $TWO ${TWO}</pre><p>This will execute
                                 reliability by attempting automatic
                                 recovery from errors. For services
                                 that shall be able to terminate on
-                                their own choice (and avoiding
-                                immediate restart)
+                                their own choice (and avoid
+                                immediate restarting),
                                 <code class="option">on-abnormal</code> is an
                                 alternative choice.</p></dd><dt id="SuccessExitStatus="><span class="term"><code class="varname">SuccessExitStatus=</code></span><a class="headerlink" title="Permalink to this term" href="#SuccessExitStatus=">¶</a></dt><dd><p>Takes a list of exit
                                 status definitions that when returned
@@ -578,7 +583,7 @@ ExecStart=/bin/echo $ONE $TWO ${TWO}</pre><p>This will execute
                                 definitions can either be numeric exit
                                 codes or termination signal names,
                                 separated by spaces. For example:
-                                </p><pre class="programlisting">SuccessExitStatus=1 2 8 <code class="constant">SIGKILL</code></pre><p>
+                                </p><pre class="programlisting">SuccessExitStatus=1 2 8 SIGKILL</pre><p>
                                 ensures that exit codes 1, 2, 8 and
                                 the termination signal
                                 <code class="constant">SIGKILL</code> are
@@ -609,9 +614,8 @@ ExecStart=/bin/echo $ONE $TWO ${TWO}</pre><p>This will execute
                                 spaces. Defaults to the empty list, so
                                 that, by default, no exit status is
                                 excluded from the configured restart
-                                logic. Example:
-                                "<code class="literal">RestartPreventExitStatus=1 6
-                                SIGABRT</code>", ensures that exit
+                                logic. For example:
+                                </p><pre class="programlisting">RestartPreventExitStatus=1 6 SIGABRT</pre><p> ensures that exit
                                 codes 1 and 6 and the termination
                                 signal <code class="constant">SIGABRT</code> will
                                 not result in automatic service
@@ -622,7 +626,14 @@ ExecStart=/bin/echo $ONE $TWO ${TWO}</pre><p>This will execute
                                 string is assigned to this option, the
                                 list is reset and all prior assignments
                                 of this option will have no
-                                effect.</p></dd><dt id="PermissionsStartOnly="><span class="term"><code class="varname">PermissionsStartOnly=</code></span><a class="headerlink" title="Permalink to this term" href="#PermissionsStartOnly=">¶</a></dt><dd><p>Takes a boolean
+                                effect.</p></dd><dt id="RestartForceExitStatus="><span class="term"><code class="varname">RestartForceExitStatus=</code></span><a class="headerlink" title="Permalink to this term" href="#RestartForceExitStatus=">¶</a></dt><dd><p>Takes a list of exit
+                                status definitions that when returned
+                                by the main service process will force
+                                automatic service restarts, regardless
+                                of the restart setting configured with
+                                <code class="varname">Restart=</code>. The
+                                argument format is similar to
+                                <code class="varname">RestartPreventExitStatus=</code>.</p></dd><dt id="PermissionsStartOnly="><span class="term"><code class="varname">PermissionsStartOnly=</code></span><a class="headerlink" title="Permalink to this term" href="#PermissionsStartOnly=">¶</a></dt><dd><p>Takes a boolean
                                 argument. If true, the permission-related
                                 execution options, as
                                 configured with
@@ -811,7 +822,7 @@ ExecStart=/bin/echo $ONE $TWO ${TWO}</pre><p>This will execute
                 <a href="systemd.exec.html"><span class="citerefentry"><span class="refentrytitle">systemd.exec</span>(5)</span></a>
                 and
                 <a href="systemd.kill.html"><span class="citerefentry"><span class="refentrytitle">systemd.kill</span>(5)</span></a>
-                for more settings.</p></div><div class="refsect1"><a name="idm214183108928"></a><h2 id="Compatibility Options">Compatibility Options<a class="headerlink" title="Permalink to this headline" href="#Compatibility%20Options">¶</a></h2><p>The following options are also available in the
+                for more settings.</p></div><div class="refsect1"><a name="idm214196210688"></a><h2 id="Compatibility Options">Compatibility Options<a class="headerlink" title="Permalink to this headline" href="#Compatibility%20Options">¶</a></h2><p>The following options are also available in the
                 "<code class="literal">[Service]</code>" section, but exist purely
                 for compatibility reasons and should not be used in
                 newly written service files.</p><div class="variablelist"><dl class="variablelist"><dt id="SysVStartPriority="><span class="term"><code class="varname">SysVStartPriority=</code></span><a class="headerlink" title="Permalink to this term" href="#SysVStartPriority=">¶</a></dt><dd><p>Set the SysV start
@@ -832,7 +843,7 @@ ExecStart=/bin/echo $ONE $TWO ${TWO}</pre><p>This will execute
                                 instead. For more details, see
                                 <a href="systemd.unit.html"><span class="citerefentry"><span class="refentrytitle">systemd.unit</span>(5)</span></a>.
                                 If used, pass an integer value in the
-                                range 0-99.</p></dd></dl></div></div><div class="refsect1"><a name="idm214183102224"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+                                range 0-99.</p></dd></dl></div></div><div class="refsect1"><a name="idm214196203136"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
                           <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
                           <a href="systemctl.html"><span class="citerefentry"><span class="refentrytitle">systemctl</span>(8)</span></a>,
                           <a href="systemd.unit.html"><span class="citerefentry"><span class="refentrytitle">systemd.unit</span>(5)</span></a>,
index 640318ba4412779ce9d8b2c750c2c369a124f52d..01312502601d57057f32d36b3b5c688a7f335fa8 100644 (file)
@@ -825,10 +825,15 @@ ExecStart=/bin/echo $ONE $TWO ${TWO}</programlisting>
                                         </tgroup>
                                 </table>
 
-                                <para>In addition to the above settings,
-                                the service will not be restarted if the
-                                exit code or signal is specified in
+                                <para>As exceptions to the setting
+                                above the service will not be
+                                restarted if the exit code or signal
+                                is specified in
                                 <varname>RestartPreventExitStatus=</varname>
+                                (see below). Also, the services will
+                                always be restarted if the exit code
+                                or signal is specified in
+                                <varname>RestartForceExitStatus=</varname>
                                 (see below).</para>
 
                                 <para>Setting this to
@@ -838,8 +843,8 @@ ExecStart=/bin/echo $ONE $TWO ${TWO}</programlisting>
                                 reliability by attempting automatic
                                 recovery from errors. For services
                                 that shall be able to terminate on
-                                their own choice (and avoiding
-                                immediate restart)
+                                their own choice (and avoid
+                                immediate restarting),
                                 <option>on-abnormal</option> is an
                                 alternative choice.</para>
                                 </listitem>
@@ -857,7 +862,7 @@ ExecStart=/bin/echo $ONE $TWO ${TWO}</programlisting>
                                 definitions can either be numeric exit
                                 codes or termination signal names,
                                 separated by spaces. For example:
-                                <programlisting>SuccessExitStatus=1 2 8 <constant>SIGKILL</constant></programlisting>
+                                <programlisting>SuccessExitStatus=1 2 8 SIGKILL</programlisting>
                                 ensures that exit codes 1, 2, 8 and
                                 the termination signal
                                 <constant>SIGKILL</constant> are
@@ -897,9 +902,8 @@ ExecStart=/bin/echo $ONE $TWO ${TWO}</programlisting>
                                 spaces. Defaults to the empty list, so
                                 that, by default, no exit status is
                                 excluded from the configured restart
-                                logic. Example:
-                                <literal>RestartPreventExitStatus=1 6
-                                SIGABRT</literal>, ensures that exit
+                                logic. For example:
+                                <programlisting>RestartPreventExitStatus=1 6 SIGABRT</programlisting> ensures that exit
                                 codes 1 and 6 and the termination
                                 signal <constant>SIGABRT</constant> will
                                 not result in automatic service
@@ -913,6 +917,18 @@ ExecStart=/bin/echo $ONE $TWO ${TWO}</programlisting>
                                 effect.</para></listitem>
                         </varlistentry>
 
+                        <varlistentry>
+                                <term><varname>RestartForceExitStatus=</varname></term>
+                                <listitem><para>Takes a list of exit
+                                status definitions that when returned
+                                by the main service process will force
+                                automatic service restarts, regardless
+                                of the restart setting configured with
+                                <varname>Restart=</varname>. The
+                                argument format is similar to
+                                <varname>RestartPreventExitStatus=</varname>.</para></listitem>
+                        </varlistentry>
+
                         <varlistentry>
                                 <term><varname>PermissionsStartOnly=</varname></term>
                                 <listitem><para>Takes a boolean
index d886fe7e3967ea756bf8da5624e22c8edecb93a1..a003914da0b8fea5116361a31a9a6a17e9e89fdc 100644 (file)
@@ -1,5 +1,5 @@
 '\" t
-.TH "SYSTEMD\&.SLICE" "5" "" "systemd 214" "systemd.slice"
+.TH "SYSTEMD\&.SLICE" "5" "" "systemd 215" "systemd.slice"
 .\" -----------------------------------------------------------------
 .\" * Define some portability stuff
 .\" -----------------------------------------------------------------
index bc2e195e72675a825b43ac05135ff20325a89ed4..afcb1168028040204bf134b47bab428c8fdfc0a1 100644 (file)
@@ -19,7 +19,7 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="systemd.slice"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>systemd.slice — Slice unit configuration</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><p><code class="filename"><em class="replaceable"><code>slice</code></em>.slice</code></p></div><div class="refsect1"><a name="idm214178621056"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p>A unit configuration file whose name ends in
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="systemd.slice"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>systemd.slice — Slice unit configuration</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><p><code class="filename"><em class="replaceable"><code>slice</code></em>.slice</code></p></div><div class="refsect1"><a name="idm214176181488"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p>A unit configuration file whose name ends in
     "<code class="literal">.slice</code>" encodes information about a slice which
     is a concept for hierarchically managing resources of a group of
     processes. This management is performed by creating a node in the
@@ -61,7 +61,7 @@
     that slice units are removed prior to system
     shutdown. Only slice units involved with early boot or
     late system shutdown should disable this option.
-    </p></div><div class="refsect1"><a name="idm214178605920"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+    </p></div><div class="refsect1"><a name="idm214172331440"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
       <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
       <a href="systemd.unit.html"><span class="citerefentry"><span class="refentrytitle">systemd.unit</span>(5)</span></a>,
       <a href="systemd.resource-control.html"><span class="citerefentry"><span class="refentrytitle">systemd.resource-control</span>(5)</span></a>,
index 479eaaee42932445de4ecbf264cf94d9d8febd92..1973bc96920491829aaeca7195dba5b65a42d0d9 100644 (file)
@@ -1,5 +1,5 @@
 '\" t
-.TH "SYSTEMD\&.SNAPSHOT" "5" "" "systemd 214" "systemd.snapshot"
+.TH "SYSTEMD\&.SNAPSHOT" "5" "" "systemd 215" "systemd.snapshot"
 .\" -----------------------------------------------------------------
 .\" * Define some portability stuff
 .\" -----------------------------------------------------------------
index 0f76793a81b840ac2637c2e9ea91fc157d6830ef..521cda4801ec295c00db2510502e7bce1e5f1678 100644 (file)
@@ -19,7 +19,7 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="systemd.snapshot"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>systemd.snapshot — Snapshot unit configuration</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><p><code class="filename"><em class="replaceable"><code>snapshot</code></em>.snapshot</code></p></div><div class="refsect1"><a name="idm214171878912"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p>Snapshot units are not configured via unit
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="systemd.snapshot"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>systemd.snapshot — Snapshot unit configuration</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><p><code class="filename"><em class="replaceable"><code>snapshot</code></em>.snapshot</code></p></div><div class="refsect1"><a name="idm214193697152"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p>Snapshot units are not configured via unit
                 configuration files. Nonetheless they are named
                 similar to filenames. A unit whose name ends in
                 "<code class="literal">.snapshot</code>" refers to a dynamic
@@ -35,7 +35,7 @@
                 <span class="command"><strong>systemctl isolate</strong></span>. They are
                 useful to roll back to a defined state after
                 temporarily starting/stopping services or
-                similar.</p></div><div class="refsect1"><a name="idm214171873904"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+                similar.</p></div><div class="refsect1"><a name="idm214193691984"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
                           <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
                           <a href="systemctl.html"><span class="citerefentry"><span class="refentrytitle">systemctl</span>(8)</span></a>,
                           <a href="systemd.unit.html"><span class="citerefentry"><span class="refentrytitle">systemd.unit</span>(5)</span></a>,
index a94b12a574da4ed18cc34db413a48c80ddd7a813..ab4e5d4c44d1649c9243aa3b8c115463ad4f6e41 100644 (file)
@@ -1,5 +1,5 @@
 '\" t
-.TH "SYSTEMD\&.SOCKET" "5" "" "systemd 214" "systemd.socket"
+.TH "SYSTEMD\&.SOCKET" "5" "" "systemd 215" "systemd.socket"
 .\" -----------------------------------------------------------------
 .\" * Define some portability stuff
 .\" -----------------------------------------------------------------
@@ -225,7 +225,7 @@ is created\&.
 .PP
 \fISocketUser=\fR, \fISocketGroup=\fR
 .RS 4
-Takes a UNIX user/group name\&. When specified all AF_UNIX sockets and FIFO nodes in the file system are owned by the specified user and group\&. If unset (the default), the nodes are owned by the root user/group (if run in system context) or the invoking user/group (if run in user context)\&. If only a user is specified but no group, then the group is derived from the user\*(Aqs default group\&.
+Takes a UNIX user/group name\&. When specified, all AF_UNIX sockets and FIFO nodes in the file system are owned by the specified user and group\&. If unset (the default), the nodes are owned by the root user/group (if run in system context) or the invoking user/group (if run in user context)\&. If only a user is specified but no group, then the group is derived from the user\*(Aqs default group\&.
 .RE
 .PP
 \fISocketMode=\fR
@@ -433,13 +433,13 @@ Specifies the service unit name to activate on incoming traffic\&. This setting
 .PP
 \fIRemoveOnStop=\fR
 .RS 4
-Takes a boolean argument\&. If enabled any file nodes created by this socket unit are removed when it is stopped\&. This applies to AF_UNIX sockets in the file system, POSIX message queues as well as FIFOs, as well as any symlinks to them configured with
-\fISymlinks=\fR\&. Normally it should not be necessary to use this option, and is not recommended as services might continue to run after the socket unit has been terminated and it should still be possible to communicate with them via their file system node\&. Defaults to off\&.
+Takes a boolean argument\&. If enabled, any file nodes created by this socket unit are removed when it is stopped\&. This applies to AF_UNIX sockets in the file system, POSIX message queues, FIFOs, as well as any symlinks to them configured with
+\fISymlinks=\fR\&. Normally, it should not be necessary to use this option, and is not recommended as services might continue to run after the socket unit has been terminated and it should still be possible to communicate with them via their file system node\&. Defaults to off\&.
 .RE
 .PP
 \fISymlinks=\fR
 .RS 4
-Takes a list of file system paths\&. The specified paths will be created as symlinks to the AF_UNIX socket path or FIFO path of this socket unit\&. If this setting is used only one AF_UNIX socket in the file system or one FIFO may be configured for the socket unit\&. Use this option to manage one or more symlinked alias names for a socket, binding their lifecycle together\&. Defaults to the empty list\&.
+Takes a list of file system paths\&. The specified paths will be created as symlinks to the AF_UNIX socket path or FIFO path of this socket unit\&. If this setting is used, only one AF_UNIX socket in the file system or one FIFO may be configured for the socket unit\&. Use this option to manage one or more symlinked alias names for a socket, binding their lifecycle together\&. Defaults to the empty list\&.
 .RE
 .PP
 Check
index 4f1d9fbc640d693138a7250861b58308014d93e1..092ebb5612203bfbe3715824e4c42027b588c49b 100644 (file)
@@ -19,7 +19,7 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="systemd.socket"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>systemd.socket — Socket unit configuration</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><p><code class="filename"><em class="replaceable"><code>socket</code></em>.socket</code></p></div><div class="refsect1"><a name="idm214174500608"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p>A unit configuration file whose name ends in
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="systemd.socket"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>systemd.socket — Socket unit configuration</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><p><code class="filename"><em class="replaceable"><code>socket</code></em>.socket</code></p></div><div class="refsect1"><a name="idm214183103728"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p>A unit configuration file whose name ends in
                 "<code class="literal">.socket</code>" encodes information about
                 an IPC or network socket or a file system FIFO
                 controlled and supervised by systemd, for socket-based
@@ -97,7 +97,7 @@
                 <a href="inetd.html"><span class="citerefentry"><span class="refentrytitle">inetd</span>(8)</span></a>-style
                 socket passing (i.e. sockets passed in via standard input and
                 output, using <code class="varname">StandardInput=socket</code>
-                in the service file).</p></div><div class="refsect1"><a name="idm214178372784"></a><h2 id="Options">Options<a class="headerlink" title="Permalink to this headline" href="#Options">¶</a></h2><p>Socket files must include a [Socket] section,
+                in the service file).</p></div><div class="refsect1"><a name="idm214183195712"></a><h2 id="Options">Options<a class="headerlink" title="Permalink to this headline" href="#Options">¶</a></h2><p>Socket files must include a [Socket] section,
                 which carries information about the socket or FIFO it
                 supervises. A number of options that may be used in
                 this section are shared with other unit types. These
                                 device unit
                                 (<a href="systemd.device.html"><span class="citerefentry"><span class="refentrytitle">systemd.device</span>(5)</span></a>
                                 is created.</p></dd><dt id="SocketUser="><span class="term"><code class="varname">SocketUser=</code>, </span><span class="term"><code class="varname">SocketGroup=</code></span><a class="headerlink" title="Permalink to this term" href="#SocketUser=">¶</a></dt><dd><p>Takes a UNIX
-                                user/group name. When specified
+                                user/group name. When specified,
                                 all AF_UNIX sockets and FIFO nodes in
                                 the file system are owned by the
                                 specified user and group. If unset
                                 suffix replaced). In most cases, it
                                 should not be necessary to use this
                                 option.</p></dd><dt id="RemoveOnStop="><span class="term"><code class="varname">RemoveOnStop=</code></span><a class="headerlink" title="Permalink to this term" href="#RemoveOnStop=">¶</a></dt><dd><p>Takes a boolean
-                                argument. If enabled any file nodes
+                                argument. If enabled, any file nodes
                                 created by this socket unit are
                                 removed when it is stopped. This
                                 applies to AF_UNIX sockets in the file
-                                system, POSIX message queues as well
-                                as FIFOs, as well as any symlinks to
+                                system, POSIX message queues, FIFOs,
+                                as well as any symlinks to
                                 them configured with
-                                <code class="varname">Symlinks=</code>. Normally
+                                <code class="varname">Symlinks=</code>. Normally,
                                 it should not be necessary to use this
                                 option, and is not recommended as
                                 services might continue to run after
                                 system paths. The specified paths will
                                 be created as symlinks to the AF_UNIX
                                 socket path or FIFO path of this
-                                socket unit.  If this setting is used
+                                socket unit.  If this setting is used,
                                 only one AF_UNIX socket in the file
                                 system or one FIFO may be configured
                                 for the socket unit. Use this option
                 <a href="systemd.exec.html"><span class="citerefentry"><span class="refentrytitle">systemd.exec</span>(5)</span></a>
                 and
                 <a href="systemd.kill.html"><span class="citerefentry"><span class="refentrytitle">systemd.kill</span>(5)</span></a>
-                for more settings.</p></div><div class="refsect1"><a name="idm214173311424"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+                for more settings.</p></div><div class="refsect1"><a name="idm214178079200"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
                           <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
                           <a href="systemctl.html"><span class="citerefentry"><span class="refentrytitle">systemctl</span>(8)</span></a>,
                           <a href="systemd.unit.html"><span class="citerefentry"><span class="refentrytitle">systemd.unit</span>(5)</span></a>,
index b3607a8b63fb9f38c93239d9f626d6e114f58b3f..aeeb97fccdccaa0063aaa6445af8f315ef796943 100644 (file)
                                 <term><varname>SocketGroup=</varname></term>
 
                                 <listitem><para>Takes a UNIX
-                                user/group name. When specified
+                                user/group name. When specified,
                                 all AF_UNIX sockets and FIFO nodes in
                                 the file system are owned by the
                                 specified user and group. If unset
                         <varlistentry>
                                 <term><varname>RemoveOnStop=</varname></term>
                                 <listitem><para>Takes a boolean
-                                argument. If enabled any file nodes
+                                argument. If enabled, any file nodes
                                 created by this socket unit are
                                 removed when it is stopped. This
                                 applies to AF_UNIX sockets in the file
-                                system, POSIX message queues as well
-                                as FIFOs, as well as any symlinks to
+                                system, POSIX message queues, FIFOs,
+                                as well as any symlinks to
                                 them configured with
-                                <varname>Symlinks=</varname>. Normally
+                                <varname>Symlinks=</varname>. Normally,
                                 it should not be necessary to use this
                                 option, and is not recommended as
                                 services might continue to run after
                                 system paths. The specified paths will
                                 be created as symlinks to the AF_UNIX
                                 socket path or FIFO path of this
-                                socket unit.  If this setting is used
+                                socket unit.  If this setting is used,
                                 only one AF_UNIX socket in the file
                                 system or one FIFO may be configured
                                 for the socket unit. Use this option
index a5f8a78473c07adea004618ca0eaf74bdb2b69f9..a417f38d78fe2a1c45b9bca2e344c401227bcb14 100644 (file)
@@ -1,5 +1,5 @@
 '\" t
-.TH "SYSTEMD\&.SPECIAL" "7" "" "systemd 214" "systemd.special"
+.TH "SYSTEMD\&.SPECIAL" "7" "" "systemd 215" "systemd.special"
 .\" -----------------------------------------------------------------
 .\" * Define some portability stuff
 .\" -----------------------------------------------------------------
@@ -27,6 +27,7 @@ basic\&.target,
 bluetooth\&.target,
 ctrl\-alt\-del\&.target,
 cryptsetup\&.target,
+cryptsetup\-pre\&.target,
 dbus\&.service,
 dbus\&.socket,
 default\&.target,
@@ -206,10 +207,10 @@ to
 sysroot\-usr\&.mount
 and all mount points found in
 /etc/fstab
-that have the
-\fBauto\fR
-and
+that have
 \fBx\-initrd\&.mount\fR
+and not have
+\fBnoauto\fR
 mount options set\&.
 .RE
 .PP
@@ -491,6 +492,11 @@ Note that these passive units cannot be started manually, i\&.e\&.
 "systemctl start time\-sync\&.target"
 will fail with an error\&. They can only be pulled in by dependency\&. This is enforced since they exist for ordering purposes only and thus are not useful as only unit within a transaction\&.
 .PP
+cryptsetup\-pre\&.target
+.RS 4
+This passive target unit may be pulled in by services that want to run before any encrypted block device is set up\&. All encrypted block devices are set up after this target has been reached\&. Since the shutdown order is implicitly the reverse start\-up order between units, this target is particularly useful to ensure that a service is shut down only after all encrypted block devices are fully stopped\&.
+.RE
+.PP
 local\-fs\-pre\&.target
 .RS 4
 This target unit is automatically ordered before all local mount points marked with
@@ -618,7 +624,7 @@ By default, all user processes and services started on behalf of the user, inclu
 .PP
 machine\&.slice
 .RS 4
-By defalt, all virtual machines and containers registered with
+By default, all virtual machines and containers registered with
 \fBsystemd\-machined\fR
 are found in this slice\&.
 .RE
index 28faefd0f5680b34a0082e5d445b66962eeb4315..1627fc638b561e4488a61f5e82e1850107899766 100644 (file)
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="systemd.special"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>systemd.special — Special systemd units</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><p><code class="filename">basic.target</code>,
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="systemd.special"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>systemd.special — Special systemd units</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><p><code class="filename">basic.target</code>,
                 <code class="filename">bluetooth.target</code>,
                 <code class="filename">ctrl-alt-del.target</code>,
                 <code class="filename">cryptsetup.target</code>,
+                <code class="filename">cryptsetup-pre.target</code>,
                 <code class="filename">dbus.service</code>,
                 <code class="filename">dbus.socket</code>,
                 <code class="filename">default.target</code>,
@@ -76,9 +77,9 @@
                 <code class="filename">-.slice</code>,
                 <code class="filename">system.slice</code>,
                 <code class="filename">user.slice</code>,
-                <code class="filename">machine.slice</code></p></div><div class="refsect1"><a name="idm214190107648"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p>A few units are treated specially by
+                <code class="filename">machine.slice</code></p></div><div class="refsect1"><a name="idm214177962192"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p>A few units are treated specially by
                 systemd. They have special internal semantics and
-                cannot be renamed.</p></div><div class="refsect1"><a name="idm214190106304"></a><h2 id="Special System Units">Special System Units<a class="headerlink" title="Permalink to this headline" href="#Special%20System%20Units">¶</a></h2><div class="variablelist"><dl class="variablelist"><dt id="basic.target"><span class="term"><code class="filename">basic.target</code></span><a class="headerlink" title="Permalink to this term" href="#basic.target">¶</a></dt><dd><p>A special target unit
+                cannot be renamed.</p></div><div class="refsect1"><a name="idm214177960848"></a><h2 id="Special System Units">Special System Units<a class="headerlink" title="Permalink to this headline" href="#Special%20System%20Units">¶</a></h2><div class="variablelist"><dl class="variablelist"><dt id="basic.target"><span class="term"><code class="filename">basic.target</code></span><a class="headerlink" title="Permalink to this term" href="#basic.target">¶</a></dt><dd><p>A special target unit
                                         covering basic boot-up.</p><p>systemd automatically
                                         adds dependencies of the types
                                         <code class="varname">Requires=</code>
                                         <code class="filename">sysroot-usr.mount</code>
                                         and all mount points found in
                                         <code class="filename">/etc/fstab</code>
-                                        that have the
-                                        <code class="option">auto</code> and
+                                        that have
                                         <code class="option">x-initrd.mount</code>
-                                        mount options set.
-                                        </p></dd><dt id="kbrequest.target"><span class="term"><code class="filename">kbrequest.target</code></span><a class="headerlink" title="Permalink to this term" href="#kbrequest.target">¶</a></dt><dd><p>systemd starts this
+                                        and not have <code class="option">noauto</code>
+                                        mount options set.</p></dd><dt id="kbrequest.target"><span class="term"><code class="filename">kbrequest.target</code></span><a class="headerlink" title="Permalink to this term" href="#kbrequest.target">¶</a></dt><dd><p>systemd starts this
                                         target whenever Alt+ArrowUp is
                                         pressed on the console. This
                                         is a good candidate to be
                                         their mount unit, which is
                                         implicitly done when
                                         <code class="varname">DefaultDependencies=yes</code>
-                                        is set (the default).</p></dd></dl></div></div><div class="refsect1"><a name="idm214185044752"></a><h2 id="Special System Units for Devices">Special System Units for Devices<a class="headerlink" title="Permalink to this headline" href="#Special%20System%20Units%20for%20Devices">¶</a></h2><p>Some target units are automatically pulled in as
+                                        is set (the default).</p></dd></dl></div></div><div class="refsect1"><a name="idm214172840096"></a><h2 id="Special System Units for Devices">Special System Units for Devices<a class="headerlink" title="Permalink to this headline" href="#Special%20System%20Units%20for%20Devices">¶</a></h2><p>Some target units are automatically pulled in as
                 devices of certain kinds show up in the system. These
                 may be used to automatically activate various services
                 based on the specific type of the available
                                         boot.</p><p>This may be used to pull
                                         in audio management daemons
                                         dynamically when audio
-                                        hardware is found.</p></dd></dl></div></div><div class="refsect1"><a name="idm214185031600"></a><h2 id="Special Passive System Units ">Special Passive System Units <a class="headerlink" title="Permalink to this headline" href="#Special%20Passive%20System%20Units%20">¶</a></h2><p>A number of special system targets are defined
+                                        hardware is found.</p></dd></dl></div></div><div class="refsect1"><a name="idm214172826944"></a><h2 id="Special Passive System Units ">Special Passive System Units <a class="headerlink" title="Permalink to this headline" href="#Special%20Passive%20System%20Units%20">¶</a></h2><p>A number of special system targets are defined
                 that can be used to properly order boot-up of optional
                 services. These targets are generally not part of the
                 initial boot transaction, unless they are explicitly
                 error. They can only be pulled in by dependency. This
                 is enforced since they exist for ordering purposes
                 only and thus are not useful as only unit within a
-                transaction.</p><div class="variablelist"><dl class="variablelist"><dt id="local-fs-pre.target"><span class="term"><code class="filename">local-fs-pre.target</code></span><a class="headerlink" title="Permalink to this term" href="#local-fs-pre.target">¶</a></dt><dd><p>This target unit is
+                transaction.</p><div class="variablelist"><dl class="variablelist"><dt id="cryptsetup-pre.target"><span class="term"><code class="filename">cryptsetup-pre.target</code></span><a class="headerlink" title="Permalink to this term" href="#cryptsetup-pre.target">¶</a></dt><dd><p>This passive target unit
+                                        may be pulled in by services
+                                        that want to run before any
+                                        encrypted block device is set
+                                        up. All encrypted block
+                                        devices are set up after this
+                                        target has been reached. Since
+                                        the shutdown order is
+                                        implicitly the reverse
+                                        start-up order between units,
+                                        this target is particularly
+                                        useful to ensure that a
+                                        service is shut down only
+                                        after all encrypted block
+                                        devices are fully
+                                        stopped.</p></dd><dt id="local-fs-pre.target"><span class="term"><code class="filename">local-fs-pre.target</code></span><a class="headerlink" title="Permalink to this term" href="#local-fs-pre.target">¶</a></dt><dd><p>This target unit is
                                         automatically ordered before
                                         all local mount points marked
                                         with <code class="option">auto</code>
                                         init script service units with
                                         an LSB header referring to the
                                         "<code class="literal">$time</code>"
-                                        facility. </p></dd></dl></div></div><div class="refsect1"><a name="idm214184985344"></a><h2 id="Special User Units">Special User Units<a class="headerlink" title="Permalink to this headline" href="#Special%20User%20Units">¶</a></h2><p>When systemd runs as a user instance, the
+                                        facility. </p></dd></dl></div></div><div class="refsect1"><a name="idm214172785472"></a><h2 id="Special User Units">Special User Units<a class="headerlink" title="Permalink to this headline" href="#Special%20User%20Units">¶</a></h2><p>When systemd runs as a user instance, the
                 following special units are available, which have
                 similar definitions as their system counterparts:
                 <code class="filename">default.target</code>,
                                         which in turn should be
                                         conflicted by all units that
                                         want to be shut down on
-                                        user service manager exit.</p></dd></dl></div></div><div class="refsect1"><a name="idm214184972448"></a><h2 id="Special Slice Units">Special Slice Units<a class="headerlink" title="Permalink to this headline" href="#Special%20Slice%20Units">¶</a></h2><p>There are four "<code class="literal">.slice</code>" units
+                                        user service manager exit.</p></dd></dl></div></div><div class="refsect1"><a name="idm214172772576"></a><h2 id="Special Slice Units">Special Slice Units<a class="headerlink" title="Permalink to this headline" href="#Special%20Slice%20Units">¶</a></h2><p>There are four "<code class="literal">.slice</code>" units
                 which form the basis of the hierarchy for assignment
                 of resources for services, users, and virtual machines
                 or containers.</p><div class="variablelist"><dl class="variablelist"><dt id="-.slice"><span class="term"><code class="filename">-.slice</code></span><a class="headerlink" title="Permalink to this term" href="#-.slice">¶</a></dt><dd><p>The root slice is the
                                         on behalf of the user,
                                         including the per-user systemd
                                         instance are found in this
-                                        slice.</p></dd><dt id="machine.slice"><span class="term"><code class="filename">machine.slice</code></span><a class="headerlink" title="Permalink to this term" href="#machine.slice">¶</a></dt><dd><p>By defalt, all virtual
+                                        slice.</p></dd><dt id="machine.slice"><span class="term"><code class="filename">machine.slice</code></span><a class="headerlink" title="Permalink to this term" href="#machine.slice">¶</a></dt><dd><p>By default, all virtual
                                         machines and containers
                                         registered with
                                         <span class="command"><strong>systemd-machined</strong></span>
                                         are found in this slice.
-                                        </p></dd></dl></div></div><div class="refsect1"><a name="idm214184959984"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+                                        </p></dd></dl></div></div><div class="refsect1"><a name="idm214172760096"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
                           <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
                           <a href="systemd.unit.html"><span class="citerefentry"><span class="refentrytitle">systemd.unit</span>(5)</span></a>,
                           <a href="systemd.service.html"><span class="citerefentry"><span class="refentrytitle">systemd.service</span>(5)</span></a>,
index cda6edd42b54a4d543403a12bd9c8076d7a726e6..f84639e2b4829d0ed6805289ecd47f7a30f10cd9 100644 (file)
@@ -52,6 +52,7 @@
                 <filename>bluetooth.target</filename>,
                 <filename>ctrl-alt-del.target</filename>,
                 <filename>cryptsetup.target</filename>,
+                <filename>cryptsetup-pre.target</filename>,
                 <filename>dbus.service</filename>,
                 <filename>dbus.socket</filename>,
                 <filename>default.target</filename>,
                                         <filename>sysroot-usr.mount</filename>
                                         and all mount points found in
                                         <filename>/etc/fstab</filename>
-                                        that have the
-                                        <option>auto</option> and
+                                        that have
                                         <option>x-initrd.mount</option>
-                                        mount options set.
-                                        </para>
+                                        and not have <option>noauto</option>
+                                        mount options set.</para>
                                 </listitem>
                         </varlistentry>
                         <varlistentry>
                 transaction.</para>
 
                 <variablelist>
+                        <varlistentry>
+                                <term><filename>cryptsetup-pre.target</filename></term>
+                                <listitem>
+                                        <para>This passive target unit
+                                        may be pulled in by services
+                                        that want to run before any
+                                        encrypted block device is set
+                                        up. All encrypted block
+                                        devices are set up after this
+                                        target has been reached. Since
+                                        the shutdown order is
+                                        implicitly the reverse
+                                        start-up order between units,
+                                        this target is particularly
+                                        useful to ensure that a
+                                        service is shut down only
+                                        after all encrypted block
+                                        devices are fully
+                                        stopped.</para>
+                                </listitem>
+                        </varlistentry>
                         <varlistentry>
                                 <term><filename>local-fs-pre.target</filename></term>
                                 <listitem>
                         <varlistentry>
                                 <term><filename>machine.slice</filename></term>
                                 <listitem>
-                                        <para>By defalt, all virtual
+                                        <para>By default, all virtual
                                         machines and containers
                                         registered with
                                         <command>systemd-machined</command>
index d4ea992b197f50b6b21f584d9683b0fac53da0bc..c49289a24405661b4bb0a85e26e4cf35e48f6219 100644 (file)
@@ -1,5 +1,5 @@
 '\" t
-.TH "SYSTEMD\&.SWAP" "5" "" "systemd 214" "systemd.swap"
+.TH "SYSTEMD\&.SWAP" "5" "" "systemd 215" "systemd.swap"
 .\" -----------------------------------------------------------------
 .\" * Define some portability stuff
 .\" -----------------------------------------------------------------
index 6742618dd267364d307015927ae48388b82c6917..383d1a31aef306ff27f6c7335abd9ae0609a2f03 100644 (file)
@@ -19,7 +19,7 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="systemd.swap"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>systemd.swap — Swap unit configuration</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><p><code class="filename"><em class="replaceable"><code>swap</code></em>.swap</code></p></div><div class="refsect1"><a name="idm214193803712"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p>A unit configuration file whose name ends in
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="systemd.swap"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>systemd.swap — Swap unit configuration</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><p><code class="filename"><em class="replaceable"><code>swap</code></em>.swap</code></p></div><div class="refsect1"><a name="idm214170852608"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p>A unit configuration file whose name ends in
                 "<code class="literal">.swap</code>" encodes information about a
                 swap device or file for memory paging controlled and
                 supervised by systemd.</p><p>This man page lists the configuration options
@@ -51,7 +51,7 @@
                 <code class="varname">DefaultDependencies=</code> enabled
                 implicitly acquire a conflicting dependency to
                 <code class="filename">umount.target</code> so that they are
-                deactivated at shutdown.</p></div><div class="refsect1"><a name="idm214193790848"></a><h2 id="fstab"><code class="filename">fstab</code><a class="headerlink" title="Permalink to this headline" href="#fstab">¶</a></h2><p>Swap units may either be configured via unit
+                deactivated at shutdown.</p></div><div class="refsect1"><a name="idm214167005072"></a><h2 id="fstab"><code class="filename">fstab</code><a class="headerlink" title="Permalink to this headline" href="#fstab">¶</a></h2><p>Swap units may either be configured via unit
                 files, or via <code class="filename">/etc/fstab</code> (see
                 <a href="fstab.html"><span class="citerefentry"><span class="refentrytitle">fstab</span>(5)</span></a>
                 for details). Swaps listed in
@@ -67,7 +67,7 @@
                 <code class="filename">/etc/fstab</code> are also added as
                 requirements to <code class="filename">swap.target</code>, so
                 that they are waited for and activated during
-                boot.</p></div><div class="refsect1"><a name="idm214197684176"></a><h2 id="Options">Options<a class="headerlink" title="Permalink to this headline" href="#Options">¶</a></h2><p>Swap files must include a [Swap] section, which
+                boot.</p></div><div class="refsect1"><a name="idm214170949104"></a><h2 id="Options">Options<a class="headerlink" title="Permalink to this headline" href="#Options">¶</a></h2><p>Swap files must include a [Swap] section, which
                 carries information about the swap device it
                 supervises. A number of options that may be used in
                 this section are shared with other unit types. These
                 <a href="systemd.exec.html"><span class="citerefentry"><span class="refentrytitle">systemd.exec</span>(5)</span></a>
                 and
                 <a href="systemd.kill.html"><span class="citerefentry"><span class="refentrytitle">systemd.kill</span>(5)</span></a>
-                for more settings.</p></div><div class="refsect1"><a name="idm214197659856"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+                for more settings.</p></div><div class="refsect1"><a name="idm214170924512"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
                           <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
                           <a href="systemctl.html"><span class="citerefentry"><span class="refentrytitle">systemctl</span>(8)</span></a>,
                           <a href="systemd.unit.html"><span class="citerefentry"><span class="refentrytitle">systemd.unit</span>(5)</span></a>,
index 7f64182566f180fd447dab03137d5d10979b7f5e..e50f9d9732ed6fca9aac5138ef1e1fca4cf42fce 100644 (file)
@@ -1,5 +1,5 @@
 '\" t
-.TH "SYSTEMD\&.TARGET" "5" "" "systemd 214" "systemd.target"
+.TH "SYSTEMD\&.TARGET" "5" "" "systemd 215" "systemd.target"
 .\" -----------------------------------------------------------------
 .\" * Define some portability stuff
 .\" -----------------------------------------------------------------
index 3e10bcd6ec8f821022c6a839d22b7aef5950260d..a23ce626a215cfc2d0dfda6e874d3180d1116d4c 100644 (file)
@@ -19,7 +19,7 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="systemd.target"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>systemd.target — Target unit configuration</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><p><code class="filename"><em class="replaceable"><code>target</code></em>.target</code></p></div><div class="refsect1"><a name="idm214176231744"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p>A unit configuration file whose name ends in
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="systemd.target"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>systemd.target — Target unit configuration</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><p><code class="filename"><em class="replaceable"><code>target</code></em>.target</code></p></div><div class="refsect1"><a name="idm214170922224"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p>A unit configuration file whose name ends in
                 "<code class="literal">.target</code>" encodes information about
                 a target unit of systemd, which is used for grouping
                 units and as well-known synchronization points during
@@ -51,7 +51,7 @@
                 dependencies of type <code class="varname">After=</code> if the
                 units in question also have
                 <code class="varname">DefaultDependencies=true</code>.
-                </p></div><div class="refsect1"><a name="idm214176222064"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+                </p></div><div class="refsect1"><a name="idm214167077728"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
                           <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
                           <a href="systemctl.html"><span class="citerefentry"><span class="refentrytitle">systemctl</span>(8)</span></a>,
                           <a href="systemd.unit.html"><span class="citerefentry"><span class="refentrytitle">systemd.unit</span>(5)</span></a>,
index 31e7930cb2188b877a9149cc00e16391a29d132c..00841e73b8586183d0cf1a550e4d000607be3d2f 100644 (file)
@@ -1,5 +1,5 @@
 '\" t
-.TH "SYSTEMD\&.TIME" "7" "" "systemd 214" "systemd.time"
+.TH "SYSTEMD\&.TIME" "7" "" "systemd 215" "systemd.time"
 .\" -----------------------------------------------------------------
 .\" * Define some portability stuff
 .\" -----------------------------------------------------------------
index 33a8291bf7155715895eb423f93cba86edb4d92b..918acb7026c4552d861212a08b1c41d425997d2a 100644 (file)
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="systemd.time"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>systemd.time — Time and date specifications</p></div><div class="refsect1"><a name="idm214188406976"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p>In systemd, timestamps, time spans, and calendar
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="systemd.time"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>systemd.time — Time and date specifications</p></div><div class="refsect1"><a name="idm214177369584"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p>In systemd, timestamps, time spans, and calendar
                 events are displayed and may be specified in closely
-                related syntaxes.</p></div><div class="refsect1"><a name="idm214188405632"></a><h2 id="Displaying Time Spans">Displaying Time Spans<a class="headerlink" title="Permalink to this headline" href="#Displaying%20Time%20Spans">¶</a></h2><p>Time spans refer to time durations. On display,
+                related syntaxes.</p></div><div class="refsect1"><a name="idm214173533376"></a><h2 id="Displaying Time Spans">Displaying Time Spans<a class="headerlink" title="Permalink to this headline" href="#Displaying%20Time%20Spans">¶</a></h2><p>Time spans refer to time durations. On display,
                 systemd will present time spans as a space-separated
                 series of time values each suffixed by a time
                 unit.</p><pre class="programlisting">2h 30min</pre><p>All specified time values are meant to be added
-                up. The above hence refers to 150 minutes.</p></div><div class="refsect1"><a name="idm214188403136"></a><h2 id="Parsing Time Spans">Parsing Time Spans<a class="headerlink" title="Permalink to this headline" href="#Parsing%20Time%20Spans">¶</a></h2><p>When parsing, systemd will accept the same
+                up. The above hence refers to 150 minutes.</p></div><div class="refsect1"><a name="idm214173530880"></a><h2 id="Parsing Time Spans">Parsing Time Spans<a class="headerlink" title="Permalink to this headline" href="#Parsing%20Time%20Spans">¶</a></h2><p>When parsing, systemd will accept the same
                 time span syntax. Separating spaces may be omitted. The
                 following time units are understood:</p><div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "><li class="listitem"><p>usec, us</p></li><li class="listitem"><p>msec, ms</p></li><li class="listitem"><p>seconds, second, sec, s</p></li><li class="listitem"><p>minutes, minute, min, m</p></li><li class="listitem"><p>hours, hour, hr, h</p></li><li class="listitem"><p>days, day, d</p></li><li class="listitem"><p>weeks, week, w</p></li><li class="listitem"><p>months, month</p></li><li class="listitem"><p>years, year, y</p></li></ul></div><p>If no time unit is specified, generally seconds
                 are assumed, but some exceptions exist and are marked
 48hr
 1y 12month
 55s500ms
-300ms20s 5day</pre></div><div class="refsect1"><a name="idm214188393472"></a><h2 id="Displaying Timestamps">Displaying Timestamps<a class="headerlink" title="Permalink to this headline" href="#Displaying%20Timestamps">¶</a></h2><p>Timestamps refer to specific, unique points in
+300ms20s 5day</pre></div><div class="refsect1"><a name="idm214173521216"></a><h2 id="Displaying Timestamps">Displaying Timestamps<a class="headerlink" title="Permalink to this headline" href="#Displaying%20Timestamps">¶</a></h2><p>Timestamps refer to specific, unique points in
                 time. On display, systemd will format these in the
                 local timezone as follows:</p><pre class="programlisting">Fri 2012-11-23 23:02:15 CET</pre><p>The weekday is printed according to the locale
-                choice of the user.</p></div><div class="refsect1"><a name="idm214188391024"></a><h2 id="Parsing Timestamps">Parsing Timestamps<a class="headerlink" title="Permalink to this headline" href="#Parsing%20Timestamps">¶</a></h2><p>When parsing systemd will accept a similar
+                choice of the user.</p></div><div class="refsect1"><a name="idm214173518768"></a><h2 id="Parsing Timestamps">Parsing Timestamps<a class="headerlink" title="Permalink to this headline" href="#Parsing%20Timestamps">¶</a></h2><p>When parsing systemd will accept a similar
                 timestamp syntax, but excluding any timezone
                 specification (this limitation might be removed
                 eventually). The weekday specification is optional,
@@ -99,7 +99,7 @@
                 of invocation of the command) instead or in addition
                 to an absolute timestamp as described above. A
                 relative timestamp is formatted as follows:</p><p>2 months 5 days ago</p><p>Note that any relative timestamp will also parse
-                correctly where a timestamp is expected. (see above)</p></div><div class="refsect1"><a name="idm214192249904"></a><h2 id="Calendar Events">Calendar Events<a class="headerlink" title="Permalink to this headline" href="#Calendar%20Events">¶</a></h2><p>Calendar events may be used to refer to one or
+                correctly where a timestamp is expected. (see above)</p></div><div class="refsect1"><a name="idm214177428256"></a><h2 id="Calendar Events">Calendar Events<a class="headerlink" title="Permalink to this headline" href="#Calendar%20Events">¶</a></h2><p>Calendar events may be used to refer to one or
                 more points in time in a single expression. They form
                 a superset of the absolute timestamps explained above:</p><pre class="programlisting">Thu,Fri 2012-*-1,5 11:12:13</pre><p>The above refers to 11:12:13 of the first or
                 fifth day of any month of the year 2012, given that it
@@ -154,7 +154,7 @@ Wed-Sat,Tue 12-10-15 1:2:3 → Tue-Sat 2012-10-15 01:02:03
                     weekly → Mon *-*-* 00:00:00
                      *:2/3 → *-*-* *:02/3:00</pre><p>Calendar events are used by timer units, see
                   <a href="systemd.timer.html"><span class="citerefentry"><span class="refentrytitle">systemd.timer</span>(5)</span></a>
-                  for details.</p></div><div class="refsect1"><a name="idm214187323696"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+                  for details.</p></div><div class="refsect1"><a name="idm214172453600"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
                           <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
                           <a href="journalctl.html"><span class="citerefentry"><span class="refentrytitle">journalctl</span>(1)</span></a>,
                           <a href="systemd.timer.html"><span class="citerefentry"><span class="refentrytitle">systemd.timer</span>(5)</span></a>,
index 5077cc2c9ef89ac4de9a64e28240eb57ab2ce34c..5c9cdc9266622b67898336661494f6be6fa366e3 100644 (file)
@@ -1,5 +1,5 @@
 '\" t
-.TH "SYSTEMD\&.TIMER" "5" "" "systemd 214" "systemd.timer"
+.TH "SYSTEMD\&.TIMER" "5" "" "systemd 215" "systemd.timer"
 .\" -----------------------------------------------------------------
 .\" * Define some portability stuff
 .\" -----------------------------------------------------------------
index 8ec30c68e9e63aa8062207895ee15b23e2999aac..318e134c7020d5861fcb4dc204ac1f9c240c8432 100644 (file)
@@ -19,7 +19,7 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="systemd.timer"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>systemd.timer — Timer unit configuration</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><p><code class="filename"><em class="replaceable"><code>timer</code></em>.timer</code></p></div><div class="refsect1"><a name="idm214183002432"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p>A unit configuration file whose name ends in
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="systemd.timer"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>systemd.timer — Timer unit configuration</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><p><code class="filename"><em class="replaceable"><code>timer</code></em>.timer</code></p></div><div class="refsect1"><a name="idm214184246512"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p>A unit configuration file whose name ends in
                 "<code class="literal">.timer</code>" encodes information about
                 a timer controlled and supervised by systemd, for
                 timer-based activation.</p><p>This man page lists the configuration options
@@ -45,7 +45,7 @@
                 that timer units are stopped cleanly prior to system
                 shutdown. Only timer units involved with early boot or
                 late system shutdown should disable this
-                option.</p></div><div class="refsect1"><a name="idm214182993248"></a><h2 id="Options">Options<a class="headerlink" title="Permalink to this headline" href="#Options">¶</a></h2><p>Timer files must include a [Timer] section,
+                option.</p></div><div class="refsect1"><a name="idm214180402560"></a><h2 id="Options">Options<a class="headerlink" title="Permalink to this headline" href="#Options">¶</a></h2><p>Timer files must include a [Timer] section,
                 which carries information about the timer it
                 defines. The options specific to the [Timer] section
                 of timer units are the following:</p><div class="variablelist"><dl class="variablelist"><dt id="OnActiveSec="><span class="term"><code class="varname">OnActiveSec=</code>, </span><span class="term"><code class="varname">OnBootSec=</code>, </span><span class="term"><code class="varname">OnStartupSec=</code>, </span><span class="term"><code class="varname">OnUnitActiveSec=</code>, </span><span class="term"><code class="varname">OnUnitInactiveSec=</code></span><a class="headerlink" title="Permalink to this term" href="#OnActiveSec=">¶</a></dt><dd><p>Defines monotonic timers
                                 suspending it again after any work
                                 that is to be done is
                                 finished. Defaults to
-                                <code class="varname">false</code>.</p></dd></dl></div></div><div class="refsect1"><a name="idm214186872976"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+                                <code class="varname">false</code>.</p></dd></dl></div></div><div class="refsect1"><a name="idm214184333120"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
                           <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
                           <a href="systemctl.html"><span class="citerefentry"><span class="refentrytitle">systemctl</span>(8)</span></a>,
                           <a href="systemd.unit.html"><span class="citerefentry"><span class="refentrytitle">systemd.unit</span>(5)</span></a>,
index c31e79f97cbb5ea45fba59a4c292e664b9d99b65..8287026edbe8836640e340fa26a2223a4ec478d4 100644 (file)
@@ -1,5 +1,5 @@
 '\" t
-.TH "SYSTEMD\&.UNIT" "5" "" "systemd 214" "systemd.unit"
+.TH "SYSTEMD\&.UNIT" "5" "" "systemd 215" "systemd.unit"
 .\" -----------------------------------------------------------------
 .\" * Define some portability stuff
 .\" -----------------------------------------------------------------
@@ -512,7 +512,7 @@ mode\&. This value defaults to 0 (job timeouts disabled), except for device unit
 in service units) as the job timeout has no effect on the unit itself, only on the job that might be pending for it\&. Or in other words: unit\-specific timeouts are useful to abort unit state changes, and revert them\&. The job timeout set with this option however is useful to abort only the job waiting for the unit state to change\&.
 .RE
 .PP
-\fIConditionArchitecture=\fR, \fIConditionVirtualization=\fR, \fIConditionHost=\fR, \fIConditionKernelCommandLine=\fR, \fIConditionSecurity=\fR, \fIConditionCapability=\fR, \fIConditionACPower=\fR, \fIConditionPathExists=\fR, \fIConditionPathExistsGlob=\fR, \fIConditionPathIsDirectory=\fR, \fIConditionPathIsSymbolicLink=\fR, \fIConditionPathIsMountPoint=\fR, \fIConditionPathIsReadWrite=\fR, \fIConditionDirectoryNotEmpty=\fR, \fIConditionFileNotEmpty=\fR, \fIConditionFileIsExecutable=\fR, \fIConditionNull=\fR
+\fIConditionArchitecture=\fR, \fIConditionVirtualization=\fR, \fIConditionHost=\fR, \fIConditionKernelCommandLine=\fR, \fIConditionSecurity=\fR, \fIConditionCapability=\fR, \fIConditionACPower=\fR, \fIConditionNeedsUpdate=\fR, \fIConditionPathExists=\fR, \fIConditionPathExistsGlob=\fR, \fIConditionPathIsDirectory=\fR, \fIConditionPathIsSymbolicLink=\fR, \fIConditionPathIsMountPoint=\fR, \fIConditionPathIsReadWrite=\fR, \fIConditionDirectoryNotEmpty=\fR, \fIConditionFileNotEmpty=\fR, \fIConditionFileIsExecutable=\fR, \fIConditionNull=\fR
 .RS 4
 Before starting a unit verify that the specified condition is true\&. If it is not true, the starting of the unit will be skipped, however all ordering dependencies of it are still respected\&. A failing condition will not result in the unit being moved into a failure state\&. The condition is checked at the time the queued start job is to be executed\&.
 .sp
@@ -597,6 +597,25 @@ may be used to check whether the system has AC power, or is exclusively battery
 \fItrue\fR, the condition will hold only if at least one AC connector of the system is connected to a power source, or if no AC connectors are known\&. Conversely, if set to
 \fIfalse\fR, the condition will hold only if there is at least one AC connector known and all AC connectors are disconnected from a power source\&.
 .sp
+\fIConditionNeedsUpdate=\fR
+takes one of
+/var
+or
+/etc
+as argument, possibly prefixed with a
+"!"
+(for inverting the condition)\&. This condition may be used to conditionalize units on whether the specified directory requires an update because
+/usr\*(Aqs modification time is newer than the stamp file
+\&.updated
+in the specified directory\&. This is useful to implement offline updates of the vendor operating system resources in
+/usr
+that require updating of
+/etc
+or
+/var
+on the next following boot\&. Units making use of this condition should order themselves before
+\fBsystemd-update-done.service\fR(8), to make sure they run before the stamp files\*(Aqs modification time gets reset indicating a completed update\&.
+.sp
 With
 \fIConditionPathExists=\fR
 a file existence condition is checked before a unit is started\&. If the specified absolute path name does not exist, the condition will fail\&. If the absolute path name passed to
@@ -653,7 +672,7 @@ If multiple conditions are specified, the unit will be executed if all of them a
 .PP
 \fISourcePath=\fR
 .RS 4
-A path to a configuration file this unit has been generated from\&. This is primarily useful for implementation of generator tools that convert configuration from an external configuration file format into native unit files\&. Thus functionality should not be used in normal units\&.
+A path to a configuration file this unit has been generated from\&. This is primarily useful for implementation of generator tools that convert configuration from an external configuration file format into native unit files\&. This functionality should not be used in normal units\&.
 .RE
 .SH "[INSTALL] SECTION OPTIONS"
 .PP
@@ -725,6 +744,11 @@ will automatically install/uninstall units listed in this option as well\&.
 This option may be used more than once, or a space\-separated list of unit names may be given\&.
 .RE
 .PP
+\fIDefaultInstance=\fR
+.RS 4
+In template unit files, this specifies for which instance the unit shall be enabled if the template is enabled without any explicitly set instance\&. This option has no effect in non\-template unit files\&. The specified string must be usable as instance identifier\&.
+.RE
+.PP
 The following specifiers are interpreted in the Install section: %n, %N, %p, %i, %U, %u, %m, %H, %b, %v\&. For their meaning see the next section\&.
 .SH "SPECIFIERS"
 .PP
index 939c7f02f2db0eabc0c926117edd52aac2ecf4c4..575eeff0f194ca253231d1fb616286cd0fc42557 100644 (file)
@@ -19,7 +19,7 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="systemd.unit"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>systemd.unit — Unit configuration</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><p><code class="filename"><em class="replaceable"><code>service</code></em>.service</code>,
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="systemd.unit"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>systemd.unit — Unit configuration</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><p><code class="filename"><em class="replaceable"><code>service</code></em>.service</code>,
                 <code class="filename"><em class="replaceable"><code>socket</code></em>.socket</code>,
                 <code class="filename"><em class="replaceable"><code>device</code></em>.device</code>,
                 <code class="filename"><em class="replaceable"><code>mount</code></em>.mount</code>,
@@ -40,7 +40,7 @@
 <code class="filename">/run/systemd/user/*</code><br>
 <code class="filename">/usr/lib/systemd/user/*</code><br>
 <code class="filename">...</code><br>
-                </p></div></div><div class="refsect1"><a name="idm214172899200"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p>A unit configuration file encodes information
+                </p></div></div><div class="refsect1"><a name="idm214201004864"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p>A unit configuration file encodes information
                 about a service, a socket, a device, a mount point, an
                 automount point, a swap file or partition, a start-up
                 target, a watched file system path, a timer controlled
                 fully disable a unit, making it impossible to start it
                 even manually.</p><p>The unit file format is covered by the
                 <a class="ulink" href="http://www.freedesktop.org/wiki/Software/systemd/InterfaceStabilityPromise" target="_top">Interface
-                Stability Promise</a>.</p></div><div class="refsect1"><a name="idm214167896448"></a><h2 id="Unit Load Path">Unit Load Path<a class="headerlink" title="Permalink to this headline" href="#Unit%20Load%20Path">¶</a></h2><p>Unit files are loaded from a set of paths
+                Stability Promise</a>.</p></div><div class="refsect1"><a name="idm214195948752"></a><h2 id="Unit Load Path">Unit Load Path<a class="headerlink" title="Permalink to this headline" href="#Unit%20Load%20Path">¶</a></h2><p>Unit files are loaded from a set of paths
                 determined during compilation, described in the two
                 tables below. Unit files found in directories listed
                 earlier override files with the same name in
                 <code class="varname">$SYSTEMD_UNIT_PATH</code> is set, this
                 contents of this variable overrides the unit load
                 path.
-                </p><div class="table"><a name="idm214167893840"></a><p class="title"><b>Table 1. 
+                </p><div class="table"><a name="idm214195946144"></a><p class="title"><b>Table 1. 
                     Load path when running in system mode (<code class="option">--system</code>).
                   </b></p><div class="table-contents"><table summary="
                     Load path when running in system mode (--system).
-                  " border="1"><colgroup><col class="path"><col class="expl"></colgroup><thead><tr><th>Path</th><th>Description</th></tr></thead><tbody><tr><td><code class="filename">/etc/systemd/system</code></td><td>Local configuration</td></tr><tr><td><code class="filename">/run/systemd/system</code></td><td>Runtime units</td></tr><tr><td><code class="filename">/usr/lib/systemd/system</code></td><td>Units of installed packages</td></tr></tbody></table></div></div><br class="table-break"><div class="table"><a name="idm214167884592"></a><p class="title"><b>Table 2. 
+                  " border="1"><colgroup><col class="path"><col class="expl"></colgroup><thead><tr><th>Path</th><th>Description</th></tr></thead><tbody><tr><td><code class="filename">/etc/systemd/system</code></td><td>Local configuration</td></tr><tr><td><code class="filename">/run/systemd/system</code></td><td>Runtime units</td></tr><tr><td><code class="filename">/usr/lib/systemd/system</code></td><td>Units of installed packages</td></tr></tbody></table></div></div><br class="table-break"><div class="table"><a name="idm214195936896"></a><p class="title"><b>Table 2. 
                     Load path when running in user mode (<code class="option">--user</code>).
                   </b></p><div class="table-contents"><table summary="
                     Load path when running in user mode (--user).
                 <a href="systemctl.html"><span class="citerefentry"><span class="refentrytitle">systemctl</span>(1)</span></a>. Also,
                 some units are dynamically created via generators
                 <a class="ulink" href="http://www.freedesktop.org/wiki/Software/systemd/Generators/" target="_top">Generators</a>.
-                </p></div><div class="refsect1"><a name="idm214167869504"></a><h2 id="[Unit] Section Options">[Unit] Section Options<a class="headerlink" title="Permalink to this headline" href="#%5BUnit%5D%20Section%20Options">¶</a></h2><p>Unit file may include a [Unit] section, which
+                </p></div><div class="refsect1"><a name="idm214195921808"></a><h2 id="[Unit] Section Options">[Unit] Section Options<a class="headerlink" title="Permalink to this headline" href="#%5BUnit%5D%20Section%20Options">¶</a></h2><p>Unit file may include a [Unit] section, which
                 carries generic information about the unit that is not
                 dependent on the type of unit:</p><div class="variablelist"><dl class="variablelist"><dt id="Description="><span class="term"><code class="varname">Description=</code></span><a class="headerlink" title="Permalink to this term" href="#Description=">¶</a></dt><dd><p>A free-form string
                                 describing the unit. This is intended
                                 timeout set with this option however
                                 is useful to abort only the job
                                 waiting for the unit state to
-                                change.</p></dd><dt id="ConditionArchitecture="><span class="term"><code class="varname">ConditionArchitecture=</code>, </span><span class="term"><code class="varname">ConditionVirtualization=</code>, </span><span class="term"><code class="varname">ConditionHost=</code>, </span><span class="term"><code class="varname">ConditionKernelCommandLine=</code>, </span><span class="term"><code class="varname">ConditionSecurity=</code>, </span><span class="term"><code class="varname">ConditionCapability=</code>, </span><span class="term"><code class="varname">ConditionACPower=</code>, </span><span class="term"><code class="varname">ConditionPathExists=</code>, </span><span class="term"><code class="varname">ConditionPathExistsGlob=</code>, </span><span class="term"><code class="varname">ConditionPathIsDirectory=</code>, </span><span class="term"><code class="varname">ConditionPathIsSymbolicLink=</code>, </span><span class="term"><code class="varname">ConditionPathIsMountPoint=</code>, </span><span class="term"><code class="varname">ConditionPathIsReadWrite=</code>, </span><span class="term"><code class="varname">ConditionDirectoryNotEmpty=</code>, </span><span class="term"><code class="varname">ConditionFileNotEmpty=</code>, </span><span class="term"><code class="varname">ConditionFileIsExecutable=</code>, </span><span class="term"><code class="varname">ConditionNull=</code></span><a class="headerlink" title="Permalink to this term" href="#ConditionArchitecture=">¶</a></dt><dd><p>Before starting a unit
+                                change.</p></dd><dt id="ConditionArchitecture="><span class="term"><code class="varname">ConditionArchitecture=</code>, </span><span class="term"><code class="varname">ConditionVirtualization=</code>, </span><span class="term"><code class="varname">ConditionHost=</code>, </span><span class="term"><code class="varname">ConditionKernelCommandLine=</code>, </span><span class="term"><code class="varname">ConditionSecurity=</code>, </span><span class="term"><code class="varname">ConditionCapability=</code>, </span><span class="term"><code class="varname">ConditionACPower=</code>, </span><span class="term"><code class="varname">ConditionNeedsUpdate=</code>, </span><span class="term"><code class="varname">ConditionPathExists=</code>, </span><span class="term"><code class="varname">ConditionPathExistsGlob=</code>, </span><span class="term"><code class="varname">ConditionPathIsDirectory=</code>, </span><span class="term"><code class="varname">ConditionPathIsSymbolicLink=</code>, </span><span class="term"><code class="varname">ConditionPathIsMountPoint=</code>, </span><span class="term"><code class="varname">ConditionPathIsReadWrite=</code>, </span><span class="term"><code class="varname">ConditionDirectoryNotEmpty=</code>, </span><span class="term"><code class="varname">ConditionFileNotEmpty=</code>, </span><span class="term"><code class="varname">ConditionFileIsExecutable=</code>, </span><span class="term"><code class="varname">ConditionNull=</code></span><a class="headerlink" title="Permalink to this term" href="#ConditionArchitecture=">¶</a></dt><dd><p>Before starting a unit
                                 verify that the specified condition is
                                 true. If it is not true, the starting
                                 of the unit will be skipped, however
                                 condition will hold only if there is
                                 at least one AC connector known and
                                 all AC connectors are disconnected
-                                from a power source.</p><p>With
+                                from a power source.</p><p><code class="varname">ConditionNeedsUpdate=</code>
+                                takes one of <code class="filename">/var</code>
+                                or <code class="filename">/etc</code> as
+                                argument, possibly prefixed with a
+                                "<code class="literal">!</code>" (for inverting
+                                the condition). This condition may be
+                                used to conditionalize units on
+                                whether the specified directory
+                                requires an update because
+                                <code class="filename">/usr</code>'s
+                                modification time is newer than the
+                                stamp file
+                                <code class="filename">.updated</code> in the
+                                specified directory. This is useful to
+                                implement offline updates of the
+                                vendor operating system resources in
+                                <code class="filename">/usr</code> that require
+                                updating of <code class="filename">/etc</code>
+                                or <code class="filename">/var</code> on the
+                                next following boot. Units making use
+                                of this condition should order
+                                themselves before
+                                <a href="systemd-update-done.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-update-done.service</span>(8)</span></a>,
+                                to make sure they run before the stamp
+                                files's modification time gets reset
+                                indicating a completed update.</p><p>With
                                 <code class="varname">ConditionPathExists=</code>
                                 a file existence condition is
                                 checked before a unit is started. If
                                 useful for implementation of generator
                                 tools that convert configuration from
                                 an external configuration file format
-                                into native unit files. Thus
+                                into native unit files. This
                                 functionality should not be used in
-                                normal units.</p></dd></dl></div></div><div class="refsect1"><a name="idm214167695584"></a><h2 id="[Install] Section Options">[Install] Section Options<a class="headerlink" title="Permalink to this headline" href="#%5BInstall%5D%20Section%20Options">¶</a></h2><p>Unit file may include a [Install] section, which
+                                normal units.</p></dd></dl></div></div><div class="refsect1"><a name="idm214195738800"></a><h2 id="[Install] Section Options">[Install] Section Options<a class="headerlink" title="Permalink to this headline" href="#%5BInstall%5D%20Section%20Options">¶</a></h2><p>Unit file may include a [Install] section, which
                 carries installation information for the unit. This
                 section is not interpreted by
                 <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>
                                 well.</p><p>This option may be used more
                                 than once, or a space-separated list
                                 of unit names may be
-                                given.</p></dd></dl></div><p>The following specifiers are interpreted in the
+                                given.</p></dd><dt id="DefaultInstance="><span class="term"><code class="varname">DefaultInstance=</code></span><a class="headerlink" title="Permalink to this term" href="#DefaultInstance=">¶</a></dt><dd><p>In template unit files,
+                                this specifies for which instance the
+                                unit shall be enabled if the template
+                                is enabled without any explicitly set
+                                instance. This option has no effect in
+                                non-template unit files. The specified
+                                string must be usable as instance
+                                identifier.</p></dd></dl></div><p>The following specifiers are interpreted in the
                 Install section: %n, %N, %p, %i, %U, %u, %m, %H, %b, %v.
                 For their meaning see the next section.
-                </p></div><div class="refsect1"><a name="idm214167669312"></a><h2 id="Specifiers">Specifiers<a class="headerlink" title="Permalink to this headline" href="#Specifiers">¶</a></h2><p>Many settings resolve specifiers which may be
+                </p></div><div class="refsect1"><a name="idm214195710624"></a><h2 id="Specifiers">Specifiers<a class="headerlink" title="Permalink to this headline" href="#Specifiers">¶</a></h2><p>Many settings resolve specifiers which may be
                 used to write generic unit files referring to runtime
                 or unit parameters that are replaced when the unit
                 files are loaded. The following specifiers are
-                understood:</p><div class="table"><a name="idm214167668000"></a><p class="title"><b>Table 3. Specifiers available in unit files</b></p><div class="table-contents"><table summary="Specifiers available in unit files" border="1"><colgroup><col align="left" class="spec"><col align="left" class="mean"><col align="left" class="detail"></colgroup><thead><tr><th align="left">Specifier</th><th align="left">Meaning</th><th align="left">Details</th></tr></thead><tbody><tr><td align="left">"<code class="literal">%n</code>"</td><td align="left">Full unit name</td><td align="left"> </td></tr><tr><td align="left">"<code class="literal">%N</code>"</td><td align="left">Unescaped full unit name</td><td align="left">Same as "<code class="literal">%n</code>", but with escaping undone</td></tr><tr><td align="left">"<code class="literal">%p</code>"</td><td align="left">Prefix name</td><td align="left">For instantiated units, this refers to the string before the "<code class="literal">@</code>" character of the unit name. For non-instantiated units, this refers to the name of the unit with the type suffix removed.</td></tr><tr><td align="left">"<code class="literal">%P</code>"</td><td align="left">Unescaped prefix name</td><td align="left">Same as "<code class="literal">%p</code>", but with escaping undone</td></tr><tr><td align="left">"<code class="literal">%i</code>"</td><td align="left">Instance name</td><td align="left">For instantiated units: this is the string between the "<code class="literal">@</code>" character and the suffix of the unit name.</td></tr><tr><td align="left">"<code class="literal">%I</code>"</td><td align="left">Unescaped instance name</td><td align="left">Same as "<code class="literal">%i</code>", but with escaping undone</td></tr><tr><td align="left">"<code class="literal">%f</code>"</td><td align="left">Unescaped filename</td><td align="left">This is either the unescaped instance name (if applicable) with <code class="filename">/</code> prepended (if applicable), or the prefix name prepended with <code class="filename">/</code>.</td></tr><tr><td align="left">"<code class="literal">%c</code>"</td><td align="left">Control group path of the unit</td><td align="left">This path does not include the <code class="filename">/sys/fs/cgroup/systemd/</code> prefix.</td></tr><tr><td align="left">"<code class="literal">%r</code>"</td><td align="left">Control group path of the slice the unit is placed in</td><td align="left">This usually maps to the parent cgroup path of "<code class="literal">%c</code>".</td></tr><tr><td align="left">"<code class="literal">%R</code>"</td><td align="left">Root control group path below which slices and units are placed</td><td align="left">For system instances, this resolves to <code class="filename">/</code>, except in containers, where this maps to the container's root control group path.</td></tr><tr><td align="left">"<code class="literal">%t</code>"</td><td align="left">Runtime directory</td><td align="left">This is either <code class="filename">/run</code> (for the system manager) or the path "<code class="literal">$XDG_RUNTIME_DIR</code>" resolves to (for user managers).</td></tr><tr><td align="left">"<code class="literal">%u</code>"</td><td align="left">User name</td><td align="left">This is the name of the configured user of the unit, or (if none is set) the user running the systemd instance.</td></tr><tr><td align="left">"<code class="literal">%U</code>"</td><td align="left">User UID</td><td align="left">This is the numeric UID of the configured user of the unit, or (if none is set) the user running the systemd user instance. Note that this specifier is not available for units run by the systemd system instance (as opposed to those run by a systemd user instance), unless the user has been configured as a numeric UID in the first place or the configured user is the root user.</td></tr><tr><td align="left">"<code class="literal">%h</code>"</td><td align="left">User home directory</td><td align="left">This is the home directory of the configured user of the unit, or (if none is set) the user running the systemd user instance. Similar to "<code class="literal">%U</code>", this specifier is not available for units run by the systemd system instance, unless the configured user is the root user.</td></tr><tr><td align="left">"<code class="literal">%s</code>"</td><td align="left">User shell</td><td align="left">This is the shell of the configured user of the unit, or (if none is set) the user running the systemd user instance. Similar to "<code class="literal">%U</code>", this specifier is not available for units run by the systemd system instance, unless the configured user is the root user.</td></tr><tr><td align="left">"<code class="literal">%m</code>"</td><td align="left">Machine ID</td><td align="left">The machine ID of the running system, formatted as string. See <a href="machine-id.html"><span class="citerefentry"><span class="refentrytitle">machine-id</span>(5)</span></a> for more information.</td></tr><tr><td align="left">"<code class="literal">%b</code>"</td><td align="left">Boot ID</td><td align="left">The boot ID of the running system, formatted as string. See <a href="random.html"><span class="citerefentry"><span class="refentrytitle">random</span>(4)</span></a> for more information.</td></tr><tr><td align="left">"<code class="literal">%H</code>"</td><td align="left">Host name</td><td align="left">The hostname of the running system at the point in time the unit configuation is loaded.</td></tr><tr><td align="left">"<code class="literal">%v</code>"</td><td align="left">Kernel release</td><td align="left">Identical to <span class="command"><strong>uname -r</strong></span> output</td></tr><tr><td align="left">"<code class="literal">%%</code>"</td><td align="left">Single percent sign</td><td align="left">Use "<code class="literal">%%</code>" in place of "<code class="literal">%</code>" to specify a single percent sign.</td></tr></tbody></table></div></div><br class="table-break"></div><div class="refsect1"><a name="idm214167609920"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+                understood:</p><div class="table"><a name="idm214195709312"></a><p class="title"><b>Table 3. Specifiers available in unit files</b></p><div class="table-contents"><table summary="Specifiers available in unit files" border="1"><colgroup><col align="left" class="spec"><col align="left" class="mean"><col align="left" class="detail"></colgroup><thead><tr><th align="left">Specifier</th><th align="left">Meaning</th><th align="left">Details</th></tr></thead><tbody><tr><td align="left">"<code class="literal">%n</code>"</td><td align="left">Full unit name</td><td align="left"> </td></tr><tr><td align="left">"<code class="literal">%N</code>"</td><td align="left">Unescaped full unit name</td><td align="left">Same as "<code class="literal">%n</code>", but with escaping undone</td></tr><tr><td align="left">"<code class="literal">%p</code>"</td><td align="left">Prefix name</td><td align="left">For instantiated units, this refers to the string before the "<code class="literal">@</code>" character of the unit name. For non-instantiated units, this refers to the name of the unit with the type suffix removed.</td></tr><tr><td align="left">"<code class="literal">%P</code>"</td><td align="left">Unescaped prefix name</td><td align="left">Same as "<code class="literal">%p</code>", but with escaping undone</td></tr><tr><td align="left">"<code class="literal">%i</code>"</td><td align="left">Instance name</td><td align="left">For instantiated units: this is the string between the "<code class="literal">@</code>" character and the suffix of the unit name.</td></tr><tr><td align="left">"<code class="literal">%I</code>"</td><td align="left">Unescaped instance name</td><td align="left">Same as "<code class="literal">%i</code>", but with escaping undone</td></tr><tr><td align="left">"<code class="literal">%f</code>"</td><td align="left">Unescaped filename</td><td align="left">This is either the unescaped instance name (if applicable) with <code class="filename">/</code> prepended (if applicable), or the prefix name prepended with <code class="filename">/</code>.</td></tr><tr><td align="left">"<code class="literal">%c</code>"</td><td align="left">Control group path of the unit</td><td align="left">This path does not include the <code class="filename">/sys/fs/cgroup/systemd/</code> prefix.</td></tr><tr><td align="left">"<code class="literal">%r</code>"</td><td align="left">Control group path of the slice the unit is placed in</td><td align="left">This usually maps to the parent cgroup path of "<code class="literal">%c</code>".</td></tr><tr><td align="left">"<code class="literal">%R</code>"</td><td align="left">Root control group path below which slices and units are placed</td><td align="left">For system instances, this resolves to <code class="filename">/</code>, except in containers, where this maps to the container's root control group path.</td></tr><tr><td align="left">"<code class="literal">%t</code>"</td><td align="left">Runtime directory</td><td align="left">This is either <code class="filename">/run</code> (for the system manager) or the path "<code class="literal">$XDG_RUNTIME_DIR</code>" resolves to (for user managers).</td></tr><tr><td align="left">"<code class="literal">%u</code>"</td><td align="left">User name</td><td align="left">This is the name of the configured user of the unit, or (if none is set) the user running the systemd instance.</td></tr><tr><td align="left">"<code class="literal">%U</code>"</td><td align="left">User UID</td><td align="left">This is the numeric UID of the configured user of the unit, or (if none is set) the user running the systemd user instance. Note that this specifier is not available for units run by the systemd system instance (as opposed to those run by a systemd user instance), unless the user has been configured as a numeric UID in the first place or the configured user is the root user.</td></tr><tr><td align="left">"<code class="literal">%h</code>"</td><td align="left">User home directory</td><td align="left">This is the home directory of the configured user of the unit, or (if none is set) the user running the systemd user instance. Similar to "<code class="literal">%U</code>", this specifier is not available for units run by the systemd system instance, unless the configured user is the root user.</td></tr><tr><td align="left">"<code class="literal">%s</code>"</td><td align="left">User shell</td><td align="left">This is the shell of the configured user of the unit, or (if none is set) the user running the systemd user instance. Similar to "<code class="literal">%U</code>", this specifier is not available for units run by the systemd system instance, unless the configured user is the root user.</td></tr><tr><td align="left">"<code class="literal">%m</code>"</td><td align="left">Machine ID</td><td align="left">The machine ID of the running system, formatted as string. See <a href="machine-id.html"><span class="citerefentry"><span class="refentrytitle">machine-id</span>(5)</span></a> for more information.</td></tr><tr><td align="left">"<code class="literal">%b</code>"</td><td align="left">Boot ID</td><td align="left">The boot ID of the running system, formatted as string. See <a href="random.html"><span class="citerefentry"><span class="refentrytitle">random</span>(4)</span></a> for more information.</td></tr><tr><td align="left">"<code class="literal">%H</code>"</td><td align="left">Host name</td><td align="left">The hostname of the running system at the point in time the unit configuation is loaded.</td></tr><tr><td align="left">"<code class="literal">%v</code>"</td><td align="left">Kernel release</td><td align="left">Identical to <span class="command"><strong>uname -r</strong></span> output</td></tr><tr><td align="left">"<code class="literal">%%</code>"</td><td align="left">Single percent sign</td><td align="left">Use "<code class="literal">%%</code>" in place of "<code class="literal">%</code>" to specify a single percent sign.</td></tr></tbody></table></div></div><br class="table-break"></div><div class="refsect1"><a name="idm214195651232"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
                         <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
                         <a href="systemctl.html"><span class="citerefentry"><span class="refentrytitle">systemctl</span>(8)</span></a>,
                         <a href="systemd.special.html"><span class="citerefentry"><span class="refentrytitle">systemd.special</span>(7)</span></a>,
index e9031567d2880b32a64c29f43d64fbf7d4dcaafb..960fb90dbd1d8080bbb97958327b0574b5270300 100644 (file)
                                 <term><varname>ConditionSecurity=</varname></term>
                                 <term><varname>ConditionCapability=</varname></term>
                                 <term><varname>ConditionACPower=</varname></term>
+                                <term><varname>ConditionNeedsUpdate=</varname></term>
                                 <term><varname>ConditionPathExists=</varname></term>
                                 <term><varname>ConditionPathExistsGlob=</varname></term>
                                 <term><varname>ConditionPathIsDirectory=</varname></term>
                                 all AC connectors are disconnected
                                 from a power source.</para>
 
+                                <para><varname>ConditionNeedsUpdate=</varname>
+                                takes one of <filename>/var</filename>
+                                or <filename>/etc</filename> as
+                                argument, possibly prefixed with a
+                                <literal>!</literal> (for inverting
+                                the condition). This condition may be
+                                used to conditionalize units on
+                                whether the specified directory
+                                requires an update because
+                                <filename>/usr</filename>'s
+                                modification time is newer than the
+                                stamp file
+                                <filename>.updated</filename> in the
+                                specified directory. This is useful to
+                                implement offline updates of the
+                                vendor operating system resources in
+                                <filename>/usr</filename> that require
+                                updating of <filename>/etc</filename>
+                                or <filename>/var</filename> on the
+                                next following boot. Units making use
+                                of this condition should order
+                                themselves before
+                                <citerefentry><refentrytitle>systemd-update-done.service</refentrytitle><manvolnum>8</manvolnum></citerefentry>,
+                                to make sure they run before the stamp
+                                files's modification time gets reset
+                                indicating a completed update.</para>
+
                                 <para>With
                                 <varname>ConditionPathExists=</varname>
                                 a file existence condition is
                                 useful for implementation of generator
                                 tools that convert configuration from
                                 an external configuration file format
-                                into native unit files. Thus
+                                into native unit files. This
                                 functionality should not be used in
                                 normal units.</para></listitem>
                         </varlistentry>
                                 of unit names may be
                                 given.</para></listitem>
                         </varlistentry>
+
+                        <varlistentry>
+                                <term><varname>DefaultInstance=</varname></term>
+
+                                <listitem><para>In template unit files,
+                                this specifies for which instance the
+                                unit shall be enabled if the template
+                                is enabled without any explicitly set
+                                instance. This option has no effect in
+                                non-template unit files. The specified
+                                string must be usable as instance
+                                identifier.</para></listitem>
+                        </varlistentry>
                 </variablelist>
 
                 <para>The following specifiers are interpreted in the
diff --git a/man/sysusers.d.5 b/man/sysusers.d.5
new file mode 100644 (file)
index 0000000..c9315b6
--- /dev/null
@@ -0,0 +1,109 @@
+'\" t
+.TH "SYSUSERS\&.D" "5" "" "systemd 215" "sysusers.d"
+.\" -----------------------------------------------------------------
+.\" * Define some portability stuff
+.\" -----------------------------------------------------------------
+.\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+.\" http://bugs.debian.org/507673
+.\" http://lists.gnu.org/archive/html/groff/2009-02/msg00013.html
+.\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+.ie \n(.g .ds Aq \(aq
+.el       .ds Aq '
+.\" -----------------------------------------------------------------
+.\" * set default formatting
+.\" -----------------------------------------------------------------
+.\" disable hyphenation
+.nh
+.\" disable justification (adjust text to left margin only)
+.ad l
+.\" -----------------------------------------------------------------
+.\" * MAIN CONTENT STARTS HERE *
+.\" -----------------------------------------------------------------
+.SH "NAME"
+sysusers.d \- Declarative allocation of system users and groups
+.SH "SYNOPSIS"
+.PP
+/usr/lib/sysusers\&.d/*\&.conf
+.SH "DESCRIPTION"
+.PP
+\fBsystemd\-sysusers\fR
+uses the files from
+/usr/lib/sysusers\&.d/
+to create system users and groups at package installation or boot time\&. This tool may be used for allocating system users and groups only, it is not useful for creating non\-system users and groups, as it accessed
+/etc/passwd
+and
+/etc/group
+directly, bypassing any more complex user database, for example any database involving NIS or LDAP\&.
+.SH "FILE FORMAT"
+.PP
+Each file shall be named in the style of
+\fIpackage\fR\&.conf\&.
+.PP
+All files are sorted by their filename in lexicographic order, regardless of which of the directories they reside in\&. If multiple files specify the same user or group, the entry in the file with the lexicographically earliest name will be applied, all all other conflicting entries will be logged as errors\&. Users and groups are processed in the order they are listed\&.
+.PP
+The file format is one line per user or group containing name, ID and GECOS field description:
+.sp
+.if n \{\
+.RS 4
+.\}
+.nf
+# Type Name ID GECOS
+u httpd 440 "HTTP User"
+u authd /usr/bin/authd "Authorization user"
+g input \- \-
+m authd input
+.fi
+.if n \{\
+.RE
+.\}
+.SS "Type"
+.PP
+The type consists of a single letter\&. The following line types are understood:
+.PP
+\fIu\fR
+.RS 4
+Create a system user and group of the specified name should they not exist yet\&. The user\*(Aqs primary group will be set to the group bearing the same name\&. The user\*(Aqs shell will be set to
+/sbin/login, the home directory to
+/\&. The account will be created disabled, so that logins are not allowed\&.
+.RE
+.PP
+\fIg\fR
+.RS 4
+Create a system group of the specified name should it not exist yet\&. Note that
+\fIu\fR
+implicitly create a matching group\&. The group will be created with no password set\&.
+.RE
+.PP
+\fIm\fR
+.RS 4
+Add a user to a group\&. If the user or group are not existing yet, they will be implicitly created\&.
+.RE
+.SS "Name"
+.PP
+The name field specifies the user or group name\&. It should be be shorter than 256 characters and avoid any non\-ASCII characters, and not begin with a numeric character\&. It is strongly recommended to pick user and group names that are unlikely to clash with normal users created by the administrator\&. A good scheme to guarantee this is by prefixing all system and group names with the underscore, and avoiding too generic names\&.
+.PP
+For
+\fIm\fR
+lines this field should contain the user name to add to a group\&.
+.SS "ID"
+.PP
+For
+\fIu\fR
+and
+\fIg\fR
+the numeric 32bit UID or GID of the user/group\&. Do not use IDs 65535 or 4294967295, as they have special placeholder meanings\&. Specify "\-" for automatic UID/GID allocation for the user or group\&. Alternatively, specify an absolute path in the file system\&. In this case the UID/GID is read from the path\*(Aqs owner/group\&. This is useful to create users whose UID/GID match the owners of pre\-existing files (such as SUID or SGID binaries)\&.
+.PP
+For
+\fIm\fR
+lines this field should contain the group name to add to a user to\&.
+.SS "GECOS"
+.PP
+A short, descriptive string for users to be created, enclosed in quotation marks\&. Note that this field may not contain colons\&.
+.PP
+Only applies to lines of type
+\fIu\fR
+and should otherwise be left unset\&.
+.SH "SEE ALSO"
+.PP
+\fBsystemd\fR(1),
+\fBsystemd-sysusers\fR(8)
diff --git a/man/sysusers.d.html b/man/sysusers.d.html
new file mode 100644 (file)
index 0000000..42dec26
--- /dev/null
@@ -0,0 +1,101 @@
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>sysusers.d</title><meta name="generator" content="DocBook XSL Stylesheets V1.78.1"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><style>
+    a.headerlink {
+      color: #c60f0f;
+      font-size: 0.8em;
+      padding: 0 4px 0 4px;
+      text-decoration: none;
+      visibility: hidden;
+    }
+
+    a.headerlink:hover {
+      background-color: #c60f0f;
+      color: white;
+    }
+
+    h1:hover > a.headerlink, h2:hover > a.headerlink, h3:hover > a.headerlink, dt:hover > a.headerlink {
+      visibility: visible;
+    }
+  </style><a href="index.html">Index </a>·
+  <a href="systemd.directives.html">Directives </a>·
+  <a href="../python-systemd/index.html">Python </a>·
+  <a href="../libudev/index.html">libudev </a>·
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="sysusers.d"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>sysusers.d — Declarative allocation of system users and groups</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><p><code class="filename">/usr/lib/sysusers.d/*.conf</code></p></div><div class="refsect1"><a name="idm214170527280"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><span class="command"><strong>systemd-sysusers</strong></span> uses the
+                files from <code class="filename">/usr/lib/sysusers.d/</code>
+                to create system users and groups at package
+                installation or boot time. This tool may be used for
+                allocating system users and groups only, it is not
+                useful for creating non-system users and groups, as it
+                accessed <code class="filename">/etc/passwd</code> and
+                <code class="filename">/etc/group</code> directly, bypassing
+                any more complex user database, for example any
+                database involving NIS or LDAP.</p></div><div class="refsect1"><a name="idm214170523056"></a><h2 id="File Format">File Format<a class="headerlink" title="Permalink to this headline" href="#File%20Format">¶</a></h2><p>Each file shall be named in the style of
+                <code class="filename"><em class="replaceable"><code>package</code></em>.conf</code>.</p><p>All files are sorted by their filename in
+                lexicographic order, regardless of which of the
+                directories they reside in. If multiple files specify
+                the same user or group, the entry in the file with the
+                lexicographically earliest name will be applied, all
+                all other conflicting entries will be logged as
+                errors. Users and groups are
+                processed in the order they are listed.</p><p>The file format is one line per user or group
+                containing name, ID and GECOS field description:</p><pre class="programlisting"># Type Name ID GECOS
+u httpd 440 "HTTP User"
+u authd /usr/bin/authd "Authorization user"
+g input - -
+m authd input</pre><div class="refsect2"><a name="idm214170518848"></a><h3 id="Type">Type<a class="headerlink" title="Permalink to this headline" href="#Type">¶</a></h3><p>The type consists of a single
+                        letter. The following line types are
+                        understood:</p><div class="variablelist"><dl class="variablelist"><dt id="u"><span class="term"><code class="varname">u</code></span><a class="headerlink" title="Permalink to this term" href="#u">¶</a></dt><dd><p>Create a
+                                        system user and group of the
+                                        specified name should they not
+                                        exist yet. The user's primary
+                                        group will be set to the group
+                                        bearing the same name. The
+                                        user's shell will be set to
+                                        <code class="filename">/sbin/login</code>,
+                                        the home directory to
+                                        <code class="filename">/</code>. The
+                                        account will be created
+                                        disabled, so that logins are
+                                        not allowed.</p></dd><dt id="g"><span class="term"><code class="varname">g</code></span><a class="headerlink" title="Permalink to this term" href="#g">¶</a></dt><dd><p>Create a
+                                        system group of the specified
+                                        name should it not exist
+                                        yet. Note that
+                                        <code class="varname">u</code>
+                                        implicitly create a matching
+                                        group. The group will be
+                                        created with no password
+                                        set.</p></dd><dt id="m"><span class="term"><code class="varname">m</code></span><a class="headerlink" title="Permalink to this term" href="#m">¶</a></dt><dd><p>Add a user to
+                                        a group. If the user or group
+                                        are not existing yet, they
+                                        will be implicitly
+                                        created.</p></dd></dl></div></div><div class="refsect2"><a name="idm214174461584"></a><h3 id="Name">Name<a class="headerlink" title="Permalink to this headline" href="#Name">¶</a></h3><p>The name field specifies the user or
+                        group name. It should be be shorter than 256
+                        characters and avoid any non-ASCII characters,
+                        and not begin with a numeric character. It is
+                        strongly recommended to pick user and group
+                        names that are unlikely to clash with normal
+                        users created by the administrator. A good
+                        scheme to guarantee this is by prefixing all
+                        system and group names with the underscore,
+                        and avoiding too generic names.</p><p>For <code class="varname">m</code> lines this
+                        field should contain the user name to add to a
+                        group.</p></div><div class="refsect2"><a name="idm214174458848"></a><h3 id="ID">ID<a class="headerlink" title="Permalink to this headline" href="#ID">¶</a></h3><p>For <code class="varname">u</code> and
+                        <code class="varname">g</code> the numeric 32bit UID or
+                        GID of the user/group. Do not use IDs 65535 or
+                        4294967295, as they have special placeholder
+                        meanings. Specify "-" for automatic UID/GID
+                        allocation for the user or
+                        group. Alternatively, specify an absolute path
+                        in the file system. In this case the UID/GID
+                        is read from the path's owner/group. This is
+                        useful to create users whose UID/GID match the
+                        owners of pre-existing files (such as SUID or
+                        SGID binaries).</p><p>For <code class="varname">m</code> lines this
+                        field should contain the group name to add to
+                        a user to.</p></div><div class="refsect2"><a name="idm214174454560"></a><h3 id="GECOS">GECOS<a class="headerlink" title="Permalink to this headline" href="#GECOS">¶</a></h3><p>A short, descriptive string for users to
+                        be created, enclosed in quotation marks. Note
+                        that this field may not contain colons.</p><p>Only applies to lines of type
+                        <code class="varname">u</code> and should otherwise be
+                        left unset.</p></div></div><div class="refsect1"><a name="idm214174452288"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+                        <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
+                        <a href="systemd-sysusers.html"><span class="citerefentry"><span class="refentrytitle">systemd-sysusers</span>(8)</span></a>
+                </p></div></div></body></html>
diff --git a/man/sysusers.d.xml b/man/sysusers.d.xml
new file mode 100644 (file)
index 0000000..549b3f6
--- /dev/null
@@ -0,0 +1,203 @@
+<?xml version="1.0"?>
+<!--*-nxml-*-->
+<!DOCTYPE refentry PUBLIC "-//OASIS//DTD DocBook XML V4.2//EN" "http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd">
+<!--
+  This file is part of systemd.
+
+  Copyright 2014 Lennart Poettering
+
+  systemd is free software; you can redistribute it and/or modify it
+  under the terms of the GNU Lesser General Public License as published by
+  the Free Software Foundation; either version 2.1 of the License, or
+  (at your option) any later version.
+
+  systemd is distributed in the hope that it will be useful, but
+  WITHOUT ANY WARRANTY; without even the implied warranty of
+  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+  Lesser General Public License for more details.
+
+  You should have received a copy of the GNU Lesser General Public License
+  along with systemd; If not, see <http://www.gnu.org/licenses/>.
+-->
+<refentry id="sysusers.d">
+
+        <refentryinfo>
+                <title>sysusers.d</title>
+                <productname>systemd</productname>
+
+                <authorgroup>
+                        <author>
+                                <contrib>Developer</contrib>
+                                <firstname>Lennart</firstname>
+                                <surname>Poettering</surname>
+                                <email>lennart@poettering.net</email>
+                        </author>
+                </authorgroup>
+        </refentryinfo>
+
+        <refmeta>
+                <refentrytitle>sysusers.d</refentrytitle>
+                <manvolnum>5</manvolnum>
+        </refmeta>
+
+        <refnamediv>
+                <refname>sysusers.d</refname>
+                <refpurpose>Declarative allocation of system users and groups</refpurpose>
+        </refnamediv>
+
+        <refsynopsisdiv>
+                <para><filename>/usr/lib/sysusers.d/*.conf</filename></para>
+        </refsynopsisdiv>
+
+        <refsect1>
+                <title>Description</title>
+
+                <para><command>systemd-sysusers</command> uses the
+                files from <filename>/usr/lib/sysusers.d/</filename>
+                to create system users and groups at package
+                installation or boot time. This tool may be used for
+                allocating system users and groups only, it is not
+                useful for creating non-system users and groups, as it
+                accessed <filename>/etc/passwd</filename> and
+                <filename>/etc/group</filename> directly, bypassing
+                any more complex user database, for example any
+                database involving NIS or LDAP.</para>
+
+        </refsect1>
+
+        <refsect1>
+                <title>File Format</title>
+
+                <para>Each file shall be named in the style of
+                <filename><replaceable>package</replaceable>.conf</filename>.</para>
+
+                <para>All files are sorted by their filename in
+                lexicographic order, regardless of which of the
+                directories they reside in. If multiple files specify
+                the same user or group, the entry in the file with the
+                lexicographically earliest name will be applied, all
+                all other conflicting entries will be logged as
+                errors. Users and groups are
+                processed in the order they are listed.</para>
+
+                <para>The file format is one line per user or group
+                containing name, ID and GECOS field description:</para>
+
+                <programlisting># Type Name ID GECOS
+u httpd 440 "HTTP User"
+u authd /usr/bin/authd "Authorization user"
+g input - -
+m authd input</programlisting>
+
+                <refsect2>
+                        <title>Type</title>
+
+                        <para>The type consists of a single
+                        letter. The following line types are
+                        understood:</para>
+
+                        <variablelist>
+                                <varlistentry>
+                                        <term><varname>u</varname></term>
+                                        <listitem><para>Create a
+                                        system user and group of the
+                                        specified name should they not
+                                        exist yet. The user's primary
+                                        group will be set to the group
+                                        bearing the same name. The
+                                        user's shell will be set to
+                                        <filename>/sbin/login</filename>,
+                                        the home directory to
+                                        <filename>/</filename>. The
+                                        account will be created
+                                        disabled, so that logins are
+                                        not allowed.</para></listitem>
+                                </varlistentry>
+
+                                <varlistentry>
+                                        <term><varname>g</varname></term>
+                                        <listitem><para>Create a
+                                        system group of the specified
+                                        name should it not exist
+                                        yet. Note that
+                                        <varname>u</varname>
+                                        implicitly create a matching
+                                        group. The group will be
+                                        created with no password
+                                        set.</para></listitem>
+                                </varlistentry>
+
+                                <varlistentry>
+                                        <term><varname>m</varname></term>
+                                        <listitem><para>Add a user to
+                                        a group. If the user or group
+                                        are not existing yet, they
+                                        will be implicitly
+                                        created.</para></listitem>
+                                </varlistentry>
+                        </variablelist>
+                </refsect2>
+
+                <refsect2>
+                        <title>Name</title>
+
+                        <para>The name field specifies the user or
+                        group name. It should be be shorter than 256
+                        characters and avoid any non-ASCII characters,
+                        and not begin with a numeric character. It is
+                        strongly recommended to pick user and group
+                        names that are unlikely to clash with normal
+                        users created by the administrator. A good
+                        scheme to guarantee this is by prefixing all
+                        system and group names with the underscore,
+                        and avoiding too generic names.</para>
+
+                        <para>For <varname>m</varname> lines this
+                        field should contain the user name to add to a
+                        group.</para>
+                </refsect2>
+
+                <refsect2>
+                        <title>ID</title>
+
+                        <para>For <varname>u</varname> and
+                        <varname>g</varname> the numeric 32bit UID or
+                        GID of the user/group. Do not use IDs 65535 or
+                        4294967295, as they have special placeholder
+                        meanings. Specify "-" for automatic UID/GID
+                        allocation for the user or
+                        group. Alternatively, specify an absolute path
+                        in the file system. In this case the UID/GID
+                        is read from the path's owner/group. This is
+                        useful to create users whose UID/GID match the
+                        owners of pre-existing files (such as SUID or
+                        SGID binaries).</para>
+
+                        <para>For <varname>m</varname> lines this
+                        field should contain the group name to add to
+                        a user to.</para>
+                </refsect2>
+
+                <refsect2>
+                        <title>GECOS</title>
+
+                        <para>A short, descriptive string for users to
+                        be created, enclosed in quotation marks. Note
+                        that this field may not contain colons.</para>
+
+                        <para>Only applies to lines of type
+                        <varname>u</varname> and should otherwise be
+                        left unset.</para>
+                </refsect2>
+
+        </refsect1>
+
+        <refsect1>
+                <title>See Also</title>
+                <para>
+                        <citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
+                        <citerefentry><refentrytitle>systemd-sysusers</refentrytitle><manvolnum>8</manvolnum></citerefentry>
+                </para>
+        </refsect1>
+
+</refentry>
index 704669373d775fb5f1ec83613de16d10336176c5..3998563163b8f883b5f3930fd2e6fcb1e8e6a3de 100644 (file)
@@ -1,5 +1,5 @@
 '\" t
-.TH "TELINIT" "8" "" "systemd 214" "telinit"
+.TH "TELINIT" "8" "" "systemd 215" "telinit"
 .\" -----------------------------------------------------------------
 .\" * Define some portability stuff
 .\" -----------------------------------------------------------------
index ec552e3c00e10803574e289f065c8850fa7660a6..ec53903825a254b858e2d9d4a43ac899e1889cdf 100644 (file)
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="telinit"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>telinit — Change SysV runlevel</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="cmdsynopsis"><p><code class="command">telinit [OPTIONS...]  {COMMAND}</code> </p></div></div><div class="refsect1"><a name="idm214169975632"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><span class="command"><strong>telinit</strong></span> may be used to change
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="telinit"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>telinit — Change SysV runlevel</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="cmdsynopsis"><p><code class="command">telinit [OPTIONS...]  {COMMAND}</code> </p></div></div><div class="refsect1"><a name="idm214191885648"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><span class="command"><strong>telinit</strong></span> may be used to change
                 the SysV system runlevel. Since the concept of SysV
                 runlevels is obsolete the runlevel requests
                 will be transparently translated into systemd unit
-                activation requests.</p></div><div class="refsect1"><a name="idm214169973616"></a><h2 id="Options">Options<a class="headerlink" title="Permalink to this headline" href="#Options">¶</a></h2><p>The following options are understood:</p><div class="variablelist"><dl class="variablelist"><dt id="--help"><span class="term"><code class="option">--help</code></span><a class="headerlink" title="Permalink to this term" href="#--help">¶</a></dt><dd><p><a name="help-text"></a>Print a short help text and exit.
+                activation requests.</p></div><div class="refsect1"><a name="idm214191883632"></a><h2 id="Options">Options<a class="headerlink" title="Permalink to this headline" href="#Options">¶</a></h2><p>The following options are understood:</p><div class="variablelist"><dl class="variablelist"><dt id="--help"><span class="term"><code class="option">--help</code></span><a class="headerlink" title="Permalink to this term" href="#--help">¶</a></dt><dd><p><a name="help-text"></a>Print a short help text and exit.
     </p></dd><dt id="--no-wall"><span class="term"><code class="option">--no-wall</code></span><a class="headerlink" title="Permalink to this term" href="#--no-wall">¶</a></dt><dd><p>Do not send wall
                                 message before
                                 reboot/halt/power-off.</p></dd></dl></div><p>The following commands are understood:</p><div class="variablelist"><dl class="variablelist"><dt id="0"><span class="term"><span class="command"><strong>0</strong></span></span><a class="headerlink" title="Permalink to this term" href="#0">¶</a></dt><dd><p>Power-off the
                                 reexecute daemon and deserialize state
                                 again. This is equivalent to
                                 <span class="command"><strong>systemctl
-                                daemon-reexec</strong></span>.</p></dd></dl></div></div><div class="refsect1"><a name="idm214173836432"></a><h2 id="Exit status">Exit status<a class="headerlink" title="Permalink to this headline" href="#Exit%20status">¶</a></h2><p>On success, 0 is returned, a non-zero failure
-                code otherwise.</p></div><div class="refsect1"><a name="idm214173835248"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p>This is a legacy command available for compatibility
+                                daemon-reexec</strong></span>.</p></dd></dl></div></div><div class="refsect1"><a name="idm214195797504"></a><h2 id="Exit status">Exit status<a class="headerlink" title="Permalink to this headline" href="#Exit%20status">¶</a></h2><p>On success, 0 is returned, a non-zero failure
+                code otherwise.</p></div><div class="refsect1"><a name="idm214195796320"></a><h2 id="Notes">Notes<a class="headerlink" title="Permalink to this headline" href="#Notes">¶</a></h2><p>This is a legacy command available for compatibility
                 only. It should not be used anymore, as the concept of
-                runlevels is obsolete.</p></div><div class="refsect1"><a name="idm214173833888"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+                runlevels is obsolete.</p></div><div class="refsect1"><a name="idm214195794960"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
                         <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
                         <a href="systemctl.html"><span class="citerefentry"><span class="refentrytitle">systemctl</span>(1)</span></a>,
                         <a href="wall.html"><span class="citerefentry"><span class="refentrytitle">wall</span>(1)</span></a>
index ccf72f3fdd18591ad7cecd78d408981ad787f904..02ed6cb13c7c881b56ff6b5bd6038712a9e31fc4 100644 (file)
@@ -1,5 +1,5 @@
 '\" t
-.TH "TIMEDATECTL" "1" "" "systemd 214" "timedatectl"
+.TH "TIMEDATECTL" "1" "" "systemd 215" "timedatectl"
 .\" -----------------------------------------------------------------
 .\" * Define some portability stuff
 .\" -----------------------------------------------------------------
@@ -46,8 +46,10 @@ is invoked and this option is passed, the system clock is synchronized from the
 .PP
 \fB\-H\fR, \fB\-\-host=\fR
 .RS 4
-Execute the operation remotely\&. Specify a hostname, or username and hostname separated by
-"@", to connect to\&. This will use SSH to talk to the remote machine manager instance\&.
+Execute the operation remotely\&. Specify a hostname, or a username and hostname separated by
+"@", to connect to\&. The hostname may optionally be suffixed by a container name, separated by
+":", which connects directly to a specific container on the specified host\&. This will use SSH to talk to the remote machine manager instance\&. Container names may be enumerated with
+\fBmachinectl \-H \fR\fB\fIHOST\fR\fR\&.
 .RE
 .PP
 \fB\-M\fR, \fB\-\-machine=\fR
index f235bcc54b3c051c1831942506ece286339d98d6..65f327e2f290825331bd37a8dcfd204fbe63e50d 100644 (file)
@@ -19,9 +19,9 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="timedatectl"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>timedatectl — Control the system time and date</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="cmdsynopsis"><p><code class="command">timedatectl [OPTIONS...]  {COMMAND}</code> </p></div></div><div class="refsect1"><a name="idm214173771152"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><span class="command"><strong>timedatectl</strong></span> may be used to
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="timedatectl"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>timedatectl — Control the system time and date</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="cmdsynopsis"><p><code class="command">timedatectl [OPTIONS...]  {COMMAND}</code> </p></div></div><div class="refsect1"><a name="idm214188218784"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><span class="command"><strong>timedatectl</strong></span> may be used to
                 query and change the system clock and its
-                settings.</p></div><div class="refsect1"><a name="idm214173064848"></a><h2 id="Options">Options<a class="headerlink" title="Permalink to this headline" href="#Options">¶</a></h2><p>The following options are understood:</p><div class="variablelist"><dl class="variablelist"><dt id="--no-ask-password"><span class="term"><code class="option">--no-ask-password</code></span><a class="headerlink" title="Permalink to this term" href="#--no-ask-password">¶</a></dt><dd><p>Do not query the user
+                settings.</p></div><div class="refsect1"><a name="idm214188216928"></a><h2 id="Options">Options<a class="headerlink" title="Permalink to this headline" href="#Options">¶</a></h2><p>The following options are understood:</p><div class="variablelist"><dl class="variablelist"><dt id="--no-ask-password"><span class="term"><code class="option">--no-ask-password</code></span><a class="headerlink" title="Permalink to this term" href="#--no-ask-password">¶</a></dt><dd><p>Do not query the user
                                 for authentication for privileged
                                 operations.</p></dd><dt id="--adjust-system-clock"><span class="term"><code class="option">--adjust-system-clock</code></span><a class="headerlink" title="Permalink to this term" href="#--adjust-system-clock">¶</a></dt><dd><p>If
                                 <span class="command"><strong>set-local-rtc</strong></span> is
                                 RTC again, taking the new setting into
                                 account. Otherwise, the RTC is
                                 synchronized from the system
-                                clock.</p></dd><dt id="-H"><span class="term"><code class="option">-H</code>, </span><span class="term"><code class="option">--host=</code></span><a class="headerlink" title="Permalink to this term" href="#-H">¶</a></dt><dd><p><a name="host-text"></a>Execute the operation remotely. Specify a hostname, or
+                                clock.</p></dd><dt id="-H"><span class="term"><code class="option">-H</code>, </span><span class="term"><code class="option">--host=</code></span><a class="headerlink" title="Permalink to this term" href="#-H">¶</a></dt><dd><p><a name="host-text"></a>Execute the operation remotely. Specify a hostname, or a
       username and hostname separated by "<code class="literal">@</code>", to
-      connect to. This will use SSH to talk to the remote machine
-      manager instance.</p></dd><dt id="-M"><span class="term"><code class="option">-M</code>, </span><span class="term"><code class="option">--machine=</code></span><a class="headerlink" title="Permalink to this term" href="#-M">¶</a></dt><dd><p><a name="machine-text"></a>Execute operation on a local container. Specify a
+      connect to. The hostname may optionally be suffixed by a
+      container name, separated by "<code class="literal">:</code>", which
+      connects directly to a specific container on the specified
+      host. This will use SSH to talk to the remote machine manager
+      instance. Container names may be enumerated with
+      <span class="command"><strong>machinectl -H
+      <em class="replaceable"><code>HOST</code></em></strong></span>.</p></dd><dt id="-M"><span class="term"><code class="option">-M</code>, </span><span class="term"><code class="option">--machine=</code></span><a class="headerlink" title="Permalink to this term" href="#-M">¶</a></dt><dd><p><a name="machine-text"></a>Execute operation on a local container. Specify a
       container name to connect to.</p></dd><dt id="-h"><span class="term"><code class="option">-h</code>, </span><span class="term"><code class="option">--help</code></span><a class="headerlink" title="Permalink to this term" href="#-h">¶</a></dt><dd><p><a name="help-text"></a>Print a short help text and exit.
     </p></dd><dt id="--version"><span class="term"><code class="option">--version</code></span><a class="headerlink" title="Permalink to this term" href="#--version">¶</a></dt><dd><p><a name="version-text"></a>Print a short version string and exit.</p></dd><dt id="--no-pager"><span class="term"><code class="option">--no-pager</code></span><a class="headerlink" title="Permalink to this term" href="#--no-pager">¶</a></dt><dd><p>Do not pipe output into a pager.</p></dd></dl></div><p>The following commands are understood:</p><div class="variablelist"><dl class="variablelist"><dt id="status"><span class="term"><span class="command"><strong>status</strong></span></span><a class="headerlink" title="Permalink to this term" href="#status">¶</a></dt><dd><p>Show current settings
                                 of the system clock and
@@ -80,8 +85,8 @@
                                 argument. Controls whether NTP based
                                 network time synchronization is
                                 enabled (if
-                                available).</p></dd></dl></div></div><div class="refsect1"><a name="idm214173280544"></a><h2 id="Exit status">Exit status<a class="headerlink" title="Permalink to this headline" href="#Exit%20status">¶</a></h2><p>On success, 0 is returned, a non-zero failure
-                code otherwise.</p></div><div class="refsect1"><a name="idm214156331056"></a><h2 id="Environment">Environment<a class="headerlink" title="Permalink to this headline" href="#Environment">¶</a></h2><div class="variablelist"><dl class="variablelist"><dt id="$SYSTEMD_PAGER"><span class="term"><code class="varname">$SYSTEMD_PAGER</code></span><a class="headerlink" title="Permalink to this term" href="#%24SYSTEMD_PAGER">¶</a></dt><dd><p>Pager to use when
+                                available).</p></dd></dl></div></div><div class="refsect1"><a name="idm214192134048"></a><h2 id="Exit status">Exit status<a class="headerlink" title="Permalink to this headline" href="#Exit%20status">¶</a></h2><p>On success, 0 is returned, a non-zero failure
+                code otherwise.</p></div><div class="refsect1"><a name="idm214173847264"></a><h2 id="Environment">Environment<a class="headerlink" title="Permalink to this headline" href="#Environment">¶</a></h2><div class="variablelist"><dl class="variablelist"><dt id="$SYSTEMD_PAGER"><span class="term"><code class="varname">$SYSTEMD_PAGER</code></span><a class="headerlink" title="Permalink to this term" href="#%24SYSTEMD_PAGER">¶</a></dt><dd><p>Pager to use when
                         <code class="option">--no-pager</code> is not given;
                         overrides <code class="varname">$PAGER</code>.  Setting
                         this to an empty string or the value
@@ -89,7 +94,7 @@
                         <code class="option">--no-pager</code>.</p></dd><dt id="$SYSTEMD_LESS"><span class="term"><code class="varname">$SYSTEMD_LESS</code></span><a class="headerlink" title="Permalink to this term" href="#%24SYSTEMD_LESS">¶</a></dt><dd><p>Override the default
                         options passed to
                         <span class="command"><strong>less</strong></span>
-                        ("<code class="literal">FRSXMK</code>").</p></dd></dl></div></div><div class="refsect1"><a name="idm214174396832"></a><h2 id="Examples">Examples<a class="headerlink" title="Permalink to this headline" href="#Examples">¶</a></h2><p>Show current settings:
+                        ("<code class="literal">FRSXMK</code>").</p></dd></dl></div></div><div class="refsect1"><a name="idm214192132352"></a><h2 id="Examples">Examples<a class="headerlink" title="Permalink to this headline" href="#Examples">¶</a></h2><p>Show current settings:
                 </p><pre class="programlisting">$ timedatectl
       Local time: Fri, 2012-11-02 09:26:46 CET
   Universal time: Fri, 2012-11-02 08:26:46 UTC
@@ -120,7 +125,7 @@ chronyd.service - NTP client/server
           Loaded: loaded (/usr/lib/systemd/system/chronyd.service; enabled)
           Active: active (running) since Fri, 2012-11-02 09:36:25 CET; 5s ago
 ...</pre><p>
-                </p></div><div class="refsect1"><a name="idm214172994464"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+                </p></div><div class="refsect1"><a name="idm214192127008"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
                         <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
                         <a href="hwclock.html"><span class="citerefentry"><span class="refentrytitle">hwclock</span>(8)</span></a>,
                         <a href="date.html"><span class="citerefentry"><span class="refentrytitle">date</span>(1)</span></a>,
index fd330f2c416bec17823f4e0bcfa09880d4622dee..53233a6a614ecc54b6116a93518df53f428d074f 100644 (file)
@@ -1,5 +1,5 @@
 '\" t
-.TH "TMPFILES\&.D" "5" "" "systemd 214" "tmpfiles.d"
+.TH "TMPFILES\&.D" "5" "" "systemd 215" "tmpfiles.d"
 .\" -----------------------------------------------------------------
 .\" * Define some portability stuff
 .\" -----------------------------------------------------------------
@@ -72,7 +72,7 @@ override files with the same name in
 /usr/lib/tmpfiles\&.d\&. Packages should install their configuration files in
 /usr/lib/tmpfiles\&.d\&. Files in
 /etc/tmpfiles\&.d
-are reserved for the local administrator, who may use this logic to override the configuration files installed by vendor packages\&. All configuration files are sorted by their filename in lexicographic order, regardless of which of the directories they reside in\&. If multiple files specify the same path, the entry in the file with the lexicographically earliest name will be applied, all all other conflicting entries will be logged as errors\&. When two lines are prefix and suffix of each other, then the prefix is always processed first, the suffix later\&. Otherwise the files/directories are processed in the order they are listed\&.
+are reserved for the local administrator, who may use this logic to override the configuration files installed by vendor packages\&. All configuration files are sorted by their filename in lexicographic order, regardless of which of the directories they reside in\&. If multiple files specify the same path, the entry in the file with the lexicographically earliest name will be applied, all all other conflicting entries will be logged as errors\&. When two lines are prefix and suffix of each other, then the prefix is always processed first, the suffix later\&. Otherwise, the files/directories are processed in the order they are listed\&.
 .PP
 If the administrator wants to disable a configuration file supplied by the vendor, the recommended way is to place a symlink to
 /dev/null
@@ -124,29 +124,41 @@ Create a directory if it does not exist yet\&.
 Create or empty a directory\&.
 .RE
 .PP
-\fIp\fR
+\fIp\fR, \fIp+\fR
 .RS 4
-Create a named pipe (FIFO) if it does not exist yet\&.
+Create a named pipe (FIFO) if it does not exist yet\&. If suffixed with
+\fI+\fR
+and a file already exists where the pipe is to be created, it will be removed and be replaced by the pipe\&.
 .RE
 .PP
-\fIL\fR
+\fIL\fR, \fIL+\fR
 .RS 4
-Create a symlink if it does not exist yet\&.
+Create a symlink if it does not exist yet\&. If suffixed with
+\fI+\fR
+and a file already exists where the symlink is to be created, it will be removed and be replaced by the symlink\&. If the argument is omitted, symlinks to files with the same name residing in the directory
+/usr/share/factory/
+are created\&.
 .RE
 .PP
-\fIc\fR
+\fIc\fR, \fIc+\fR
 .RS 4
-Create a character device node if it does not exist yet\&.
+Create a character device node if it does not exist yet\&. If suffixed with
+\fI+\fR
+and a file already exists where the device node is to be created, it will be removed and be replaced by the device node\&.
 .RE
 .PP
-\fIb\fR
+\fIb\fR, \fIb+\fR
 .RS 4
-Create a block device node if it does not exist yet\&.
+Create a block device node if it does not exist yet\&. If suffixed with
+\fI+\fR
+and a file already exists where the device node is to be created, it will be removed and be replaced by the device node\&.
 .RE
 .PP
 \fIC\fR
 .RS 4
-Recursively copy a file or directory, if the destination files or directories don\*(Aqt exist yet\&.
+Recursively copy a file or directory, if the destination files or directories do not exist yet\&. Note that this command will not descend into subdirectories if the destination directory already exists\&. Instead, the entire copy operation is skipped\&. If the argument is omitted, files from the source directory
+/usr/share/factory/
+with the same name are copied\&.
 .RE
 .PP
 \fIx\fR
@@ -290,8 +302,7 @@ lines, if omitted or when set to
 lines\&.
 .PP
 Optionally, if prefixed with
-"~"
-the access mode is masked based on the already set access bits for existing file or directories: if the existing file has all executable bits unset then all executable bits are removed from the new access mode, too\&. Similar, if all read bits are removed from the old access mode they will be removed from the new access mode too, and if all write bits are removed, they will be removed from the new access mode too\&. In addition the sticky/suid/gid bit is removed unless applied to a directory\&. This functionality is particularly useful in conjunction with
+"~", the access mode is masked based on the already set access bits for existing file or directories: if the existing file has all executable bits unset, all executable bits are removed from the new access mode, too\&. Similarly, if all read bits are removed from the old access mode, they will be removed from the new access mode too, and if all write bits are removed, they will be removed from the new access mode too\&. In addition, the sticky/SUID/SGID bit is removed unless applied to a directory\&. This functionality is particularly useful in conjunction with
 \fIZ\fR\&.
 .SS "UID, GID"
 .PP
@@ -339,8 +350,7 @@ determines the major/minor of the device node, with major and minor formatted as
 \fIF\fR, and
 \fIw\fR
 may be used to specify a short string that is written to the file, suffixed by a newline\&. For
-\fIC\fR
-specifies the source file or directory\&. Ignored for all other lines\&.
+\fIC\fR, specifies the source file or directory\&. Ignored for all other lines\&.
 .SH "EXAMPLE"
 .PP
 \fBExample\ \&1.\ \&/etc/tmpfiles.d/screen.conf example\fR
index b485cdf1513b5cf1735b78fd1d2ba46edacead16..4a503f91af383ae053b0ee54427b7fe85a0a5fbf 100644 (file)
@@ -19,8 +19,8 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="tmpfiles.d"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>tmpfiles.d — Configuration for creation, deletion and
-                cleaning of volatile and temporary files</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><p><code class="filename">/etc/tmpfiles.d/*.conf</code></p><p><code class="filename">/run/tmpfiles.d/*.conf</code></p><p><code class="filename">/usr/lib/tmpfiles.d/*.conf</code></p></div><div class="refsect1"><a name="idm214168874640"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><span class="command"><strong>systemd-tmpfiles</strong></span> uses the
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="tmpfiles.d"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>tmpfiles.d — Configuration for creation, deletion and
+                cleaning of volatile and temporary files</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><p><code class="filename">/etc/tmpfiles.d/*.conf</code></p><p><code class="filename">/run/tmpfiles.d/*.conf</code></p><p><code class="filename">/usr/lib/tmpfiles.d/*.conf</code></p></div><div class="refsect1"><a name="idm214189249856"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><span class="command"><strong>systemd-tmpfiles</strong></span> uses the
                 configuration files from the above directories to describe the
                 creation, cleaning and removal of volatile and
                 temporary files and directories which usually reside
@@ -38,7 +38,7 @@
                 consider declaring them in their unit files using
                 <code class="varname">RuntimeDirectory=</code>
                 (see <a href="systemd.exec.html"><span class="citerefentry"><span class="refentrytitle">systemd.exec</span>(5)</span></a> for details),
-                if this is feasible.</p></div><div class="refsect1"><a name="idm214168863376"></a><h2 id="Configuration Format">Configuration Format<a class="headerlink" title="Permalink to this headline" href="#Configuration%20Format">¶</a></h2><p>Each configuration file shall be named in the
+                if this is feasible.</p></div><div class="refsect1"><a name="idm214188157328"></a><h2 id="Configuration Format">Configuration Format<a class="headerlink" title="Permalink to this headline" href="#Configuration%20Format">¶</a></h2><p>Each configuration file shall be named in the
                 style of
                 <code class="filename"><em class="replaceable"><code>package</code></em>.conf</code>
                 or
@@ -65,7 +65,7 @@
                 all other conflicting entries will be logged as
                 errors. When two lines are prefix and suffix of each
                 other, then the prefix is always processed first, the
-                suffix later. Otherwise the files/directories are
+                suffix later. Otherwise, the files/directories are
                 processed in the order they are listed.</p><p>If the administrator wants to disable a
                 configuration file supplied by the vendor, the
                 recommended way is to place a symlink to
                 containing type, path, mode, ownership, age, and argument
                 fields:</p><pre class="programlisting">#Type Path        Mode UID  GID  Age Argument
 d    /run/user   0755 root root 10d -
-L    /tmp/foobar -    -    -    -   /dev/null</pre><div class="refsect2"><a name="idm214172751296"></a><h3 id="Type">Type<a class="headerlink" title="Permalink to this headline" href="#Type">¶</a></h3><p>The type consists of a single letter and
+L    /tmp/foobar -    -    -    -   /dev/null</pre><div class="refsect2"><a name="idm214192046416"></a><h3 id="Type">Type<a class="headerlink" title="Permalink to this headline" href="#Type">¶</a></h3><p>The type consists of a single letter and
                         optionally an exclamation mark.</p><p>The following line types are understood:</p><div class="variablelist"><dl class="variablelist"><dt id="f"><span class="term"><code class="varname">f</code></span><a class="headerlink" title="Permalink to this term" href="#f">¶</a></dt><dd><p>Create a file if it does not exist yet. If the argument parameter is given, it will be written to the file.</p></dd><dt id="F"><span class="term"><code class="varname">F</code></span><a class="headerlink" title="Permalink to this term" href="#F">¶</a></dt><dd><p>Create or truncate a file. If the argument parameter is given, it will be written to the file.</p></dd><dt id="w"><span class="term"><code class="varname">w</code></span><a class="headerlink" title="Permalink to this term" href="#w">¶</a></dt><dd><p>Write the argument parameter to a file, if the file exists.
                                             Lines of this type accept shell-style globs in place of normal path
                                             names. The argument parameter will be written without a trailing
-                                            newline. C-style backslash escapes are interpreted.</p></dd><dt id="d"><span class="term"><code class="varname">d</code></span><a class="headerlink" title="Permalink to this term" href="#d">¶</a></dt><dd><p>Create a directory if it does not exist yet.</p></dd><dt id="D"><span class="term"><code class="varname">D</code></span><a class="headerlink" title="Permalink to this term" href="#D">¶</a></dt><dd><p>Create or empty a directory.</p></dd><dt id="p"><span class="term"><code class="varname">p</code></span><a class="headerlink" title="Permalink to this term" href="#p">¶</a></dt><dd><p>Create a named pipe (FIFO) if it does not exist yet.</p></dd><dt id="L"><span class="term"><code class="varname">L</code></span><a class="headerlink" title="Permalink to this term" href="#L">¶</a></dt><dd><p>Create a symlink if it does not exist yet.</p></dd><dt id="c"><span class="term"><code class="varname">c</code></span><a class="headerlink" title="Permalink to this term" href="#c">¶</a></dt><dd><p>Create a character device node if it does not exist yet.</p></dd><dt id="b"><span class="term"><code class="varname">b</code></span><a class="headerlink" title="Permalink to this term" href="#b">¶</a></dt><dd><p>Create a block device node if it does not exist yet.</p></dd><dt id="C"><span class="term"><code class="varname">C</code></span><a class="headerlink" title="Permalink to this term" href="#C">¶</a></dt><dd><p>Recursively copy a file or directory, if the destination files or directories don't exist yet.</p></dd><dt id="x"><span class="term"><code class="varname">x</code></span><a class="headerlink" title="Permalink to this term" href="#x">¶</a></dt><dd><p>Ignore a path
+                                            newline. C-style backslash escapes are interpreted.</p></dd><dt id="d"><span class="term"><code class="varname">d</code></span><a class="headerlink" title="Permalink to this term" href="#d">¶</a></dt><dd><p>Create a directory if it does not exist yet.</p></dd><dt id="D"><span class="term"><code class="varname">D</code></span><a class="headerlink" title="Permalink to this term" href="#D">¶</a></dt><dd><p>Create or empty a directory.</p></dd><dt id="p"><span class="term"><code class="varname">p</code>, </span><span class="term"><code class="varname">p+</code></span><a class="headerlink" title="Permalink to this term" href="#p">¶</a></dt><dd><p>Create a named
+                                        pipe (FIFO) if it does not
+                                        exist yet. If suffixed with
+                                        <code class="varname">+</code> and a
+                                        file already exists where the
+                                        pipe is to be created, it will
+                                        be removed and be replaced by
+                                        the pipe.</p></dd><dt id="L"><span class="term"><code class="varname">L</code>, </span><span class="term"><code class="varname">L+</code></span><a class="headerlink" title="Permalink to this term" href="#L">¶</a></dt><dd><p>Create a
+                                        symlink if it does not exist
+                                        yet. If suffixed with
+                                        <code class="varname">+</code> and a
+                                        file already exists where the
+                                        symlink is to be created, it
+                                        will be removed and be
+                                        replaced by the
+                                        symlink. If the argument is omitted,
+                                        symlinks to files with the same name
+                                        residing in the directory
+                                        <code class="filename">/usr/share/factory/</code>
+                                        are created.</p></dd><dt id="c"><span class="term"><code class="varname">c</code>, </span><span class="term"><code class="varname">c+</code></span><a class="headerlink" title="Permalink to this term" href="#c">¶</a></dt><dd><p>Create a
+                                        character device node if it
+                                        does not exist yet. If
+                                        suffixed with
+                                        <code class="varname">+</code> and a
+                                        file already exists where the
+                                        device node is to be created,
+                                        it will be removed and be
+                                        replaced by the device
+                                        node.</p></dd><dt id="b"><span class="term"><code class="varname">b</code>, </span><span class="term"><code class="varname">b+</code></span><a class="headerlink" title="Permalink to this term" href="#b">¶</a></dt><dd><p>Create a block
+                                        device node if it does not
+                                        exist yet. If suffixed with
+                                        <code class="varname">+</code> and a
+                                        file already exists where the
+                                        device node is to be created,
+                                        it will be removed and be
+                                        replaced by the device
+                                        node.</p></dd><dt id="C"><span class="term"><code class="varname">C</code></span><a class="headerlink" title="Permalink to this term" href="#C">¶</a></dt><dd><p>Recursively
+                                        copy a file or directory, if
+                                        the destination files or
+                                        directories do not exist
+                                        yet. Note that this command
+                                        will not descend into
+                                        subdirectories if the
+                                        destination directory already
+                                        exists. Instead, the entire
+                                        copy operation is
+                                        skipped. If the argument is omitted,
+                                        files from the source directory
+                                        <code class="filename">/usr/share/factory/</code>
+                                        with the same name are copied.</p></dd><dt id="x"><span class="term"><code class="varname">x</code></span><a class="headerlink" title="Permalink to this term" href="#x">¶</a></dt><dd><p>Ignore a path
                                         during cleaning. Use this type
                                         to exclude paths from clean-up
                                         as controlled with the Age
@@ -154,9 +203,9 @@ d /tmp/.X11-unix 1777 root root 10d
 r! /tmp/.X[0-9]*-lock</pre><p>
                         The second line in contrast to the first one
                         would break a running system, and will only be
-                        executed with <code class="option">--boot</code>.</p></div><div class="refsect2"><a name="idm214167785216"></a><h3 id="Path">Path<a class="headerlink" title="Permalink to this headline" href="#Path">¶</a></h3><p>The file system path specification supports simple specifier
+                        executed with <code class="option">--boot</code>.</p></div><div class="refsect2"><a name="idm214187362048"></a><h3 id="Path">Path<a class="headerlink" title="Permalink to this headline" href="#Path">¶</a></h3><p>The file system path specification supports simple specifier
                         expansion. The following expansions are
-                        understood:</p><div class="table"><a name="idm214167784016"></a><p class="title"><b>Table 1. Specifiers available</b></p><div class="table-contents"><table summary="Specifiers available" border="1"><colgroup><col align="left" class="spec"><col align="left" class="mean"><col align="left" class="detail"></colgroup><thead><tr><th align="left">Specifier</th><th align="left">Meaning</th><th align="left">Details</th></tr></thead><tbody><tr><td align="left">"<code class="literal">%m</code>"</td><td align="left">Machine ID</td><td align="left">The machine ID of the running system, formatted as string. See <a href="machine-id.html"><span class="citerefentry"><span class="refentrytitle">machine-id</span>(5)</span></a> for more information.</td></tr><tr><td align="left">"<code class="literal">%b</code>"</td><td align="left">Boot ID</td><td align="left">The boot ID of the running system, formatted as string. See <a href="random.html"><span class="citerefentry"><span class="refentrytitle">random</span>(4)</span></a> for more information.</td></tr><tr><td align="left">"<code class="literal">%H</code>"</td><td align="left">Host name</td><td align="left">The hostname of the running system.</td></tr><tr><td align="left">"<code class="literal">%v</code>"</td><td align="left">Kernel release</td><td align="left">Identical to <span class="command"><strong>uname -r</strong></span> output.</td></tr><tr><td align="left">"<code class="literal">%%</code>"</td><td align="left">Escaped %</td><td align="left">Single percent sign.</td></tr></tbody></table></div></div><br class="table-break"></div><div class="refsect2"><a name="idm214167766304"></a><h3 id="Mode">Mode<a class="headerlink" title="Permalink to this headline" href="#Mode">¶</a></h3><p>The file access mode to use when
+                        understood:</p><div class="table"><a name="idm214187360848"></a><p class="title"><b>Table 1. Specifiers available</b></p><div class="table-contents"><table summary="Specifiers available" border="1"><colgroup><col align="left" class="spec"><col align="left" class="mean"><col align="left" class="detail"></colgroup><thead><tr><th align="left">Specifier</th><th align="left">Meaning</th><th align="left">Details</th></tr></thead><tbody><tr><td align="left">"<code class="literal">%m</code>"</td><td align="left">Machine ID</td><td align="left">The machine ID of the running system, formatted as string. See <a href="machine-id.html"><span class="citerefentry"><span class="refentrytitle">machine-id</span>(5)</span></a> for more information.</td></tr><tr><td align="left">"<code class="literal">%b</code>"</td><td align="left">Boot ID</td><td align="left">The boot ID of the running system, formatted as string. See <a href="random.html"><span class="citerefentry"><span class="refentrytitle">random</span>(4)</span></a> for more information.</td></tr><tr><td align="left">"<code class="literal">%H</code>"</td><td align="left">Host name</td><td align="left">The hostname of the running system.</td></tr><tr><td align="left">"<code class="literal">%v</code>"</td><td align="left">Kernel release</td><td align="left">Identical to <span class="command"><strong>uname -r</strong></span> output.</td></tr><tr><td align="left">"<code class="literal">%%</code>"</td><td align="left">Escaped %</td><td align="left">Single percent sign.</td></tr></tbody></table></div></div><br class="table-break"></div><div class="refsect2"><a name="idm214187343136"></a><h3 id="Mode">Mode<a class="headerlink" title="Permalink to this headline" href="#Mode">¶</a></h3><p>The file access mode to use when
                         creating this file or directory. If omitted or
                         when set to -, the default is used: 0755 for
                         directories, 0644 for all other file objects.
@@ -167,20 +216,20 @@ r! /tmp/.X[0-9]*-lock</pre><p>
                         ignored for <code class="varname">x</code>,
                         <code class="varname">r</code>, <code class="varname">R</code>,
                         <code class="varname">L</code> lines.</p><p>Optionally, if prefixed with
-                        "<code class="literal">~</code>" the access mode is masked
+                        "<code class="literal">~</code>", the access mode is masked
                         based on the already set access bits for
                         existing file or directories: if the existing
-                        file has all executable bits unset then all
+                        file has all executable bits unset, all
                         executable bits are removed from the new
-                        access mode, too. Similar, if all read bits
-                        are removed from the old access mode they will
+                        access mode, too. Similarly, if all read bits
+                        are removed from the old access mode, they will
                         be removed from the new access mode too, and
                         if all write bits are removed, they will be
                         removed from the new access mode too. In
-                        addition the sticky/suid/gid bit is removed unless
+                        addition, the sticky/SUID/SGID bit is removed unless
                         applied to a directory. This
                         functionality is particularly useful in
-                        conjunction with <code class="varname">Z</code>.</p></div><div class="refsect2"><a name="idm214167759424"></a><h3 id="UID, GID">UID, GID<a class="headerlink" title="Permalink to this headline" href="#UID,%20GID">¶</a></h3><p>The user and group to use for this file
+                        conjunction with <code class="varname">Z</code>.</p></div><div class="refsect2"><a name="idm214187336352"></a><h3 id="UID, GID">UID, GID<a class="headerlink" title="Permalink to this headline" href="#UID,%20GID">¶</a></h3><p>The user and group to use for this file
                         or directory. This may either be a numeric
                         user/group ID or a user or group name. If
                         omitted or when set to "<code class="literal">-</code>",
@@ -191,7 +240,7 @@ r! /tmp/.X[0-9]*-lock</pre><p>
                         parameters are ignored for
                         <code class="varname">x</code>, <code class="varname">r</code>,
                         <code class="varname">R</code>, <code class="varname">L</code>
-                        lines.</p></div><div class="refsect2"><a name="idm214167754784"></a><h3 id="Age">Age<a class="headerlink" title="Permalink to this headline" href="#Age">¶</a></h3><p>The date field, when set, is used to
+                        lines.</p></div><div class="refsect2"><a name="idm214187331808"></a><h3 id="Age">Age<a class="headerlink" title="Permalink to this headline" href="#Age">¶</a></h3><p>The date field, when set, is used to
                         decide what files to delete when cleaning. If
                         a file or directory is older than the current
                         time minus the age field, it is deleted. The
@@ -211,7 +260,7 @@ r! /tmp/.X[0-9]*-lock</pre><p>
                         is only applied to files and directories one
                         level inside the directory specified, but not
                         the files and directories immediately inside
-                        it.</p></div><div class="refsect2"><a name="idm214167743728"></a><h3 id="Argument">Argument<a class="headerlink" title="Permalink to this headline" href="#Argument">¶</a></h3><p>For <code class="varname">L</code> lines
+                        it.</p></div><div class="refsect2"><a name="idm214187320928"></a><h3 id="Argument">Argument<a class="headerlink" title="Permalink to this headline" href="#Argument">¶</a></h3><p>For <code class="varname">L</code> lines
                         determines the destination path of the
                         symlink. For <code class="varname">c</code>,
                         <code class="varname">b</code> determines the
@@ -223,11 +272,11 @@ r! /tmp/.X[0-9]*-lock</pre><p>
                         and <code class="varname">w</code> may be used to
                         specify a short string that is written to the
                         file, suffixed by a newline. For
-                        <code class="varname">C</code> specifies the source file
+                        <code class="varname">C</code>, specifies the source file
                         or directory. Ignored for all other
-                        lines.</p></div></div><div class="refsect1"><a name="idm214167737888"></a><h2 id="Example">Example<a class="headerlink" title="Permalink to this headline" href="#Example">¶</a></h2><div class="example"><a name="idm214167737248"></a><p class="title"><b>Example 1. /etc/tmpfiles.d/screen.conf example</b></p><div class="example-contents"><p><span class="command"><strong>screen</strong></span> needs two directories created at boot with specific modes and ownership.</p><pre class="programlisting">d /run/screens  1777 root root 10d
-d /run/uscreens 0755 root root 10d12h</pre></div></div><br class="example-break"><div class="example"><a name="idm214167734784"></a><p class="title"><b>Example 2. /etc/tmpfiles.d/abrt.conf example</b></p><div class="example-contents"><p><span class="command"><strong>abrt</strong></span> needs a directory created at boot with specific mode and ownership and its content should be preserved.</p><pre class="programlisting">d /var/tmp/abrt 0755 abrt abrt
-x /var/tmp/abrt/*</pre></div></div><br class="example-break"></div><div class="refsect1"><a name="idm214167732256"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+                        lines.</p></div></div><div class="refsect1"><a name="idm214187315088"></a><h2 id="Example">Example<a class="headerlink" title="Permalink to this headline" href="#Example">¶</a></h2><div class="example"><a name="idm214187314448"></a><p class="title"><b>Example 1. /etc/tmpfiles.d/screen.conf example</b></p><div class="example-contents"><p><span class="command"><strong>screen</strong></span> needs two directories created at boot with specific modes and ownership.</p><pre class="programlisting">d /run/screens  1777 root root 10d
+d /run/uscreens 0755 root root 10d12h</pre></div></div><br class="example-break"><div class="example"><a name="idm214187311984"></a><p class="title"><b>Example 2. /etc/tmpfiles.d/abrt.conf example</b></p><div class="example-contents"><p><span class="command"><strong>abrt</strong></span> needs a directory created at boot with specific mode and ownership and its content should be preserved.</p><pre class="programlisting">d /var/tmp/abrt 0755 abrt abrt
+x /var/tmp/abrt/*</pre></div></div><br class="example-break"></div><div class="refsect1"><a name="idm214187309456"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
                         <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
                         <a href="systemd-tmpfiles.html"><span class="citerefentry"><span class="refentrytitle">systemd-tmpfiles</span>(8)</span></a>,
                         <a href="systemd-delta.html"><span class="citerefentry"><span class="refentrytitle">systemd-delta</span>(1)</span></a>,
index 0081a6762aee3bc3d137b09c03c1be93b2a49ef4..81457c45e059b144398ad3c6ec3fb50219e7c9fd 100644 (file)
                 all other conflicting entries will be logged as
                 errors. When two lines are prefix and suffix of each
                 other, then the prefix is always processed first, the
-                suffix later. Otherwise the files/directories are
+                suffix later. Otherwise, the files/directories are
                 processed in the order they are listed.</para>
 
                 <para>If the administrator wants to disable a
@@ -169,27 +169,80 @@ L    /tmp/foobar -    -    -    -   /dev/null</programlisting>
 
                                 <varlistentry>
                                         <term><varname>p</varname></term>
-                                        <listitem><para>Create a named pipe (FIFO) if it does not exist yet.</para></listitem>
+                                        <term><varname>p+</varname></term>
+                                        <listitem><para>Create a named
+                                        pipe (FIFO) if it does not
+                                        exist yet. If suffixed with
+                                        <varname>+</varname> and a
+                                        file already exists where the
+                                        pipe is to be created, it will
+                                        be removed and be replaced by
+                                        the pipe.</para></listitem>
                                 </varlistentry>
 
                                 <varlistentry>
                                         <term><varname>L</varname></term>
-                                        <listitem><para>Create a symlink if it does not exist yet.</para></listitem>
+                                        <term><varname>L+</varname></term>
+                                        <listitem><para>Create a
+                                        symlink if it does not exist
+                                        yet. If suffixed with
+                                        <varname>+</varname> and a
+                                        file already exists where the
+                                        symlink is to be created, it
+                                        will be removed and be
+                                        replaced by the
+                                        symlink. If the argument is omitted,
+                                        symlinks to files with the same name
+                                        residing in the directory
+                                        <filename>/usr/share/factory/</filename>
+                                        are created.</para></listitem>
                                 </varlistentry>
 
                                 <varlistentry>
                                         <term><varname>c</varname></term>
-                                        <listitem><para>Create a character device node if it does not exist yet.</para></listitem>
+                                        <term><varname>c+</varname></term>
+                                        <listitem><para>Create a
+                                        character device node if it
+                                        does not exist yet. If
+                                        suffixed with
+                                        <varname>+</varname> and a
+                                        file already exists where the
+                                        device node is to be created,
+                                        it will be removed and be
+                                        replaced by the device
+                                        node.</para></listitem>
                                 </varlistentry>
 
                                 <varlistentry>
                                         <term><varname>b</varname></term>
-                                        <listitem><para>Create a block device node if it does not exist yet.</para></listitem>
+                                        <term><varname>b+</varname></term>
+                                        <listitem><para>Create a block
+                                        device node if it does not
+                                        exist yet. If suffixed with
+                                        <varname>+</varname> and a
+                                        file already exists where the
+                                        device node is to be created,
+                                        it will be removed and be
+                                        replaced by the device
+                                        node.</para></listitem>
                                 </varlistentry>
 
                                 <varlistentry>
                                         <term><varname>C</varname></term>
-                                        <listitem><para>Recursively copy a file or directory, if the destination files or directories don't exist yet.</para></listitem>
+                                        <listitem><para>Recursively
+                                        copy a file or directory, if
+                                        the destination files or
+                                        directories do not exist
+                                        yet. Note that this command
+                                        will not descend into
+                                        subdirectories if the
+                                        destination directory already
+                                        exists. Instead, the entire
+                                        copy operation is
+                                        skipped. If the argument is omitted,
+                                        files from the source directory
+                                        <filename>/usr/share/factory/</filename>
+                                        with the same name are copied.</para></listitem>
                                 </varlistentry>
 
                                 <varlistentry>
@@ -370,17 +423,17 @@ r! /tmp/.X[0-9]*-lock</programlisting>
                         <varname>L</varname> lines.</para>
 
                         <para>Optionally, if prefixed with
-                        <literal>~</literal> the access mode is masked
+                        <literal>~</literal>, the access mode is masked
                         based on the already set access bits for
                         existing file or directories: if the existing
-                        file has all executable bits unset then all
+                        file has all executable bits unset, all
                         executable bits are removed from the new
-                        access mode, too. Similar, if all read bits
-                        are removed from the old access mode they will
+                        access mode, too. Similarly, if all read bits
+                        are removed from the old access mode, they will
                         be removed from the new access mode too, and
                         if all write bits are removed, they will be
                         removed from the new access mode too. In
-                        addition the sticky/suid/gid bit is removed unless
+                        addition, the sticky/SUID/SGID bit is removed unless
                         applied to a directory. This
                         functionality is particularly useful in
                         conjunction with <varname>Z</varname>.</para>
@@ -463,7 +516,7 @@ r! /tmp/.X[0-9]*-lock</programlisting>
                         and <varname>w</varname> may be used to
                         specify a short string that is written to the
                         file, suffixed by a newline. For
-                        <varname>C</varname> specifies the source file
+                        <varname>C</varname>, specifies the source file
                         or directory. Ignored for all other
                         lines.</para>
                 </refsect2>
index 4917b6a06d57316f317444530baffe957ef1ef00..86e253d1b53eeaccc95b1b9438026eaf920a4005 100644 (file)
@@ -1,5 +1,5 @@
 '\" t
-.TH "UDEV" "7" "" "systemd 214" "udev"
+.TH "UDEV" "7" "" "systemd 215" "udev"
 .\" -----------------------------------------------------------------
 .\" * Define some portability stuff
 .\" -----------------------------------------------------------------
index 9860524aa71602f84434e4c37b401ec49f41e772..958c501204eaa3251101fb8696a03a43b32e035e 100644 (file)
@@ -19,7 +19,7 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="udev"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>udev — Dynamic device management</p></div><div class="refsect1"><a name="idm214182478784"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p>udev supplies the system software with device events, manages permissions
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="udev"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>udev — Dynamic device management</p></div><div class="refsect1"><a name="idm214191469312"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p>udev supplies the system software with device events, manages permissions
     of device nodes and may create additional symlinks in the <code class="filename">/dev</code>
     directory, or renames network interfaces. The kernel usually just assigns unpredictable
     device names based on the order of discovery. Meaningful symlinks or network device
@@ -31,7 +31,7 @@
     provide additional device information to be stored in the udev database or
     to be used to create meaningful symlink names.</p><p>All device information udev processes is stored in the udev database and
     sent out to possible event subscribers. Access to all stored data and the event
-    sources is provided by the library libudev.</p></div><div class="refsect1"><a name="idm214182474192"></a><h2 id="Rules Files">Rules Files<a class="headerlink" title="Permalink to this headline" href="#Rules%20Files">¶</a></h2><p>The udev rules are read from the files located in the
+    sources is provided by the library libudev.</p></div><div class="refsect1"><a name="idm214191424784"></a><h2 id="Rules Files">Rules Files<a class="headerlink" title="Permalink to this headline" href="#Rules%20Files">¶</a></h2><p>The udev rules are read from the files located in the
       system rules directory <code class="filename">/usr/lib/udev/rules.d</code>,
       the volatile runtime directory <code class="filename">/run/udev/rules.d</code>
       and the local administration directory <code class="filename">/etc/udev/rules.d</code>.
             If the number is followed by the "<code class="literal">+</code>" character, this part plus all remaining parts
             of the result string are substituted: "<code class="literal">%c{N+}</code>".</p></dd><dt id="$parent, %P"><span class="term"><code class="option">$parent</code>, <code class="option">%P</code></span><a class="headerlink" title="Permalink to this term" href="#%24parent,%20%P">¶</a></dt><dd><p>The node name of the parent device.</p></dd><dt id="$name"><span class="term"><code class="option">$name</code></span><a class="headerlink" title="Permalink to this term" href="#%24name">¶</a></dt><dd><p>The current name of the device. If not changed by a rule, it is the
             name of the kernel device.</p></dd><dt id="$links"><span class="term"><code class="option">$links</code></span><a class="headerlink" title="Permalink to this term" href="#%24links">¶</a></dt><dd><p>A space-separated list of the current symlinks. The value is
-            only set during a remove event or if an earlier rule assigned a value.</p></dd><dt id="$root, %r"><span class="term"><code class="option">$root</code>, <code class="option">%r</code></span><a class="headerlink" title="Permalink to this term" href="#%24root,%20%r">¶</a></dt><dd><p>The udev_root value.</p></dd><dt id="$sys, %S"><span class="term"><code class="option">$sys</code>, <code class="option">%S</code></span><a class="headerlink" title="Permalink to this term" href="#%24sys,%20%S">¶</a></dt><dd><p>The sysfs mount point.</p></dd><dt id="$devnode, %N"><span class="term"><code class="option">$devnode</code>, <code class="option">%N</code></span><a class="headerlink" title="Permalink to this term" href="#%24devnode,%20%N">¶</a></dt><dd><p>The name of the device node.</p></dd><dt id="%%"><span class="term"><code class="option">%%</code></span><a class="headerlink" title="Permalink to this term" href="#%%">¶</a></dt><dd><p>The "<code class="literal">%</code>" character itself.</p></dd><dt id="$$"><span class="term"><code class="option">$$</code></span><a class="headerlink" title="Permalink to this term" href="#%24%24">¶</a></dt><dd><p>The "<code class="literal">$</code>" character itself.</p></dd></dl></div></div><div class="refsect1"><a name="idm214181258176"></a><h2 id="Hardware Database Files">Hardware Database Files<a class="headerlink" title="Permalink to this headline" href="#Hardware%20Database%20Files">¶</a></h2><p>The hwdb files are read from the files located in the
+            only set during a remove event or if an earlier rule assigned a value.</p></dd><dt id="$root, %r"><span class="term"><code class="option">$root</code>, <code class="option">%r</code></span><a class="headerlink" title="Permalink to this term" href="#%24root,%20%r">¶</a></dt><dd><p>The udev_root value.</p></dd><dt id="$sys, %S"><span class="term"><code class="option">$sys</code>, <code class="option">%S</code></span><a class="headerlink" title="Permalink to this term" href="#%24sys,%20%S">¶</a></dt><dd><p>The sysfs mount point.</p></dd><dt id="$devnode, %N"><span class="term"><code class="option">$devnode</code>, <code class="option">%N</code></span><a class="headerlink" title="Permalink to this term" href="#%24devnode,%20%N">¶</a></dt><dd><p>The name of the device node.</p></dd><dt id="%%"><span class="term"><code class="option">%%</code></span><a class="headerlink" title="Permalink to this term" href="#%%">¶</a></dt><dd><p>The "<code class="literal">%</code>" character itself.</p></dd><dt id="$$"><span class="term"><code class="option">$$</code></span><a class="headerlink" title="Permalink to this term" href="#%24%24">¶</a></dt><dd><p>The "<code class="literal">$</code>" character itself.</p></dd></dl></div></div><div class="refsect1"><a name="idm214186759088"></a><h2 id="Hardware Database Files">Hardware Database Files<a class="headerlink" title="Permalink to this headline" href="#Hardware%20Database%20Files">¶</a></h2><p>The hwdb files are read from the files located in the
       system hwdb directory <code class="filename">/usr/lib/udev/hwdb.d</code>,
       the volatile runtime directory <code class="filename">/run/udev/hwdb.d</code>
       and the local administration directory <code class="filename">/etc/udev/hwdb.d</code>.
       of a record. Lines beginning with "<code class="literal">#</code>" are ignored.</p><p>The content of all hwdb files is read by
       <a href="udevadm.html"><span class="citerefentry"><span class="refentrytitle">udevadm</span>(8)</span></a>
       and compiled to a binary database located at <code class="filename">/etc/udev/hwdb.bin</code>.
-      During runtime only the binary database is used.</p></div><div class="refsect1"><a name="idm214181245744"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+      During runtime only the binary database is used.</p></div><div class="refsect1"><a name="idm214186746656"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
       <a href="systemd-udevd.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-udevd.service</span>(8)</span></a>,
       <a href="udevadm.html"><span class="citerefentry"><span class="refentrytitle">udevadm</span>(8)</span></a>
       <a href="systemd.link.html"><span class="citerefentry"><span class="refentrytitle">systemd.link</span>(5)</span></a>
index e72fbf65bb552fa388d3080df3437cdc316c61c4..b5a1b3aee6dd05d89aab57a0f181b82f8ffa9e67 100644 (file)
@@ -1,5 +1,5 @@
 '\" t
-.TH "UDEVADM" "8" "" "systemd 214" "udevadm"
+.TH "UDEVADM" "8" "" "systemd 215" "udevadm"
 .\" -----------------------------------------------------------------
 .\" * Define some portability stuff
 .\" -----------------------------------------------------------------
index 473581ad06ef9bb7dba2dae6283d9fc7edb85842..6c0ff4410ae663eb9e8262b674c52479d9dd169f 100644 (file)
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="udevadm"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>udevadm — udev management tool</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="cmdsynopsis"><p><code class="command">udevadm</code>  [<code class="option">--debug</code>] [<code class="option">--version</code>] [<code class="option">--help</code>]</p></div><div class="cmdsynopsis"><p><code class="command">udevadm info <em class="replaceable"><code>options</code></em></code> </p></div><div class="cmdsynopsis"><p><code class="command">udevadm trigger [<span class="optional">options</span>]</code> </p></div><div class="cmdsynopsis"><p><code class="command">udevadm settle [<span class="optional">options</span>]</code> </p></div><div class="cmdsynopsis"><p><code class="command">udevadm control <em class="replaceable"><code>command</code></em></code> </p></div><div class="cmdsynopsis"><p><code class="command">udevadm monitor [<span class="optional">options</span>]</code> </p></div><div class="cmdsynopsis"><p><code class="command">udevadm hwdb [<span class="optional">options</span>]</code> </p></div><div class="cmdsynopsis"><p><code class="command">udevadm test [<span class="optional">options</span>] <em class="replaceable"><code>devpath</code></em></code> </p></div><div class="cmdsynopsis"><p><code class="command">udevadm test-builtin [<span class="optional">options</span>] <em class="replaceable"><code>command</code></em> <em class="replaceable"><code>devpath</code></em></code> </p></div></div><div class="refsect1"><a name="idm214197770064"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><span class="command"><strong>udevadm</strong></span> expects a command and command
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="udevadm"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>udevadm — udev management tool</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="cmdsynopsis"><p><code class="command">udevadm</code>  [<code class="option">--debug</code>] [<code class="option">--version</code>] [<code class="option">--help</code>]</p></div><div class="cmdsynopsis"><p><code class="command">udevadm info <em class="replaceable"><code>options</code></em></code> </p></div><div class="cmdsynopsis"><p><code class="command">udevadm trigger [<span class="optional">options</span>]</code> </p></div><div class="cmdsynopsis"><p><code class="command">udevadm settle [<span class="optional">options</span>]</code> </p></div><div class="cmdsynopsis"><p><code class="command">udevadm control <em class="replaceable"><code>command</code></em></code> </p></div><div class="cmdsynopsis"><p><code class="command">udevadm monitor [<span class="optional">options</span>]</code> </p></div><div class="cmdsynopsis"><p><code class="command">udevadm hwdb [<span class="optional">options</span>]</code> </p></div><div class="cmdsynopsis"><p><code class="command">udevadm test [<span class="optional">options</span>] <em class="replaceable"><code>devpath</code></em></code> </p></div><div class="cmdsynopsis"><p><code class="command">udevadm test-builtin [<span class="optional">options</span>] <em class="replaceable"><code>command</code></em> <em class="replaceable"><code>devpath</code></em></code> </p></div></div><div class="refsect1"><a name="idm214169730704"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><span class="command"><strong>udevadm</strong></span> expects a command and command
     specific options.  It controls the runtime behavior of
     <span class="command"><strong>systemd-udevd</strong></span>, requests kernel events, manages
-    the event queue, and provides simple debugging mechanisms.</p></div><div class="refsect1"><a name="idm214197767536"></a><h2 id="OPTIONS">OPTIONS<a class="headerlink" title="Permalink to this headline" href="#OPTIONS">¶</a></h2><div class="variablelist"><dl class="variablelist"><dt id="--debug"><span class="term"><code class="option">--debug</code></span><a class="headerlink" title="Permalink to this term" href="#--debug">¶</a></dt><dd><p>Print debug messages to standard error.</p></dd><dt id="--version"><span class="term"><code class="option">--version</code></span><a class="headerlink" title="Permalink to this term" href="#--version">¶</a></dt><dd><p>Print version number.</p></dd><dt id="-h"><span class="term"><code class="option">-h</code>, </span><span class="term"><code class="option">--help</code></span><a class="headerlink" title="Permalink to this term" href="#-h">¶</a></dt><dd><p>Print help text.</p></dd></dl></div><div class="refsect2"><a name="idm214197760800"></a><h3 id="udevadm info [OPTIONS] [DEVPATH|FILE]">udevadm info [<span class="optional"><em class="replaceable"><code>OPTIONS</code></em></span>] [<span class="optional"><em class="replaceable"><code>DEVPATH</code></em>|<em class="replaceable"><code>FILE</code></em></span>]<a class="headerlink" title="Permalink to this headline" href="#udevadm%20info%20%5BOPTIONS%5D%20%5BDEVPATH%7CFILE%5D">¶</a></h3><p>Queries the udev database for device information
+    the event queue, and provides simple debugging mechanisms.</p></div><div class="refsect1"><a name="idm214169728176"></a><h2 id="OPTIONS">OPTIONS<a class="headerlink" title="Permalink to this headline" href="#OPTIONS">¶</a></h2><div class="variablelist"><dl class="variablelist"><dt id="--debug"><span class="term"><code class="option">--debug</code></span><a class="headerlink" title="Permalink to this term" href="#--debug">¶</a></dt><dd><p>Print debug messages to standard error.</p></dd><dt id="--version"><span class="term"><code class="option">--version</code></span><a class="headerlink" title="Permalink to this term" href="#--version">¶</a></dt><dd><p>Print version number.</p></dd><dt id="-h"><span class="term"><code class="option">-h</code>, </span><span class="term"><code class="option">--help</code></span><a class="headerlink" title="Permalink to this term" href="#-h">¶</a></dt><dd><p>Print help text.</p></dd></dl></div><div class="refsect2"><a name="idm214173624144"></a><h3 id="udevadm info [OPTIONS] [DEVPATH|FILE]">udevadm info [<span class="optional"><em class="replaceable"><code>OPTIONS</code></em></span>] [<span class="optional"><em class="replaceable"><code>DEVPATH</code></em>|<em class="replaceable"><code>FILE</code></em></span>]<a class="headerlink" title="Permalink to this headline" href="#udevadm%20info%20%5BOPTIONS%5D%20%5BDEVPATH%7CFILE%5D">¶</a></h3><p>Queries the udev database for device information
       stored in the udev database. It can also query the properties
       of a device from its sysfs representation to help creating udev
       rules that match this device.</p><div class="variablelist"><dl class="variablelist"><dt id="-q"><span class="term"><code class="option">-q</code>, </span><span class="term"><code class="option">--query=<em class="replaceable"><code>TYPE</code></em></code></span><a class="headerlink" title="Permalink to this term" href="#-q">¶</a></dt><dd><p>Query the database for the specified type of device
@@ -47,7 +47,7 @@
             query.</p></dd><dt id="-a"><span class="term"><code class="option">-a</code>, </span><span class="term"><code class="option">--attribute-walk</code></span><a class="headerlink" title="Permalink to this term" href="#-a">¶</a></dt><dd><p>Print all sysfs properties of the specified device that can be used
             in udev rules to match the specified device. It prints all devices
             along the chain, up to the root of sysfs that can be used in udev rules.</p></dd><dt id="-x"><span class="term"><code class="option">-x</code>, </span><span class="term"><code class="option">--export</code></span><a class="headerlink" title="Permalink to this term" href="#-x">¶</a></dt><dd><p>Print output as key/value pairs. Values are enclosed in single quotes.</p></dd><dt id="-P"><span class="term"><code class="option">-P</code>, </span><span class="term"><code class="option">--export-prefix=<em class="replaceable"><code>NAME</code></em></code></span><a class="headerlink" title="Permalink to this term" href="#-P">¶</a></dt><dd><p>Add a prefix to the key name of exported values.</p></dd><dt id="-d"><span class="term"><code class="option">-d</code>, </span><span class="term"><code class="option">--device-id-of-file=<em class="replaceable"><code>FILE</code></em></code></span><a class="headerlink" title="Permalink to this term" href="#-d">¶</a></dt><dd><p>Print major/minor numbers of the underlying device, where the file
-            lives on.</p></dd><dt id="-e"><span class="term"><code class="option">-e</code>, </span><span class="term"><code class="option">--export-db</code></span><a class="headerlink" title="Permalink to this term" href="#-e">¶</a></dt><dd><p>Export the content of the udev database.</p></dd><dt id="-c"><span class="term"><code class="option">-c</code>, </span><span class="term"><code class="option">--cleanup-db</code></span><a class="headerlink" title="Permalink to this term" href="#-c">¶</a></dt><dd><p>Cleanup the udev database.</p></dd><dt id="--version"><span class="term"><code class="option">--version</code></span><a class="headerlink" title="Permalink to this term" href="#--version">¶</a></dt><dd><p>Print version.</p></dd><dt id="-h"><span class="term"><code class="option">-h</code>, </span><span class="term"><code class="option">--help</code></span><a class="headerlink" title="Permalink to this term" href="#-h">¶</a></dt><dd><p>Print help text.</p></dd></dl></div></div><div class="refsect2"><a name="idm214192795712"></a><h3 id="udevadm trigger [options]">udevadm trigger [<span class="optional">options</span>]<a class="headerlink" title="Permalink to this headline" href="#udevadm%20trigger%20%5Boptions%5D">¶</a></h3><p>Request device events from the kernel. Primarily used to replay events at system coldplug time.</p><div class="variablelist"><dl class="variablelist"><dt id="-v"><span class="term"><code class="option">-v</code>, </span><span class="term"><code class="option">--verbose</code></span><a class="headerlink" title="Permalink to this term" href="#-v">¶</a></dt><dd><p>Print the list of devices which will be triggered.</p></dd><dt id="-n"><span class="term"><code class="option">-n</code>, </span><span class="term"><code class="option">--dry-run</code></span><a class="headerlink" title="Permalink to this term" href="#-n">¶</a></dt><dd><p>Do not actually trigger the event.</p></dd><dt id="-t"><span class="term"><code class="option">-t</code>, </span><span class="term"><code class="option">--type=<em class="replaceable"><code>TYPE</code></em></code></span><a class="headerlink" title="Permalink to this term" href="#-t">¶</a></dt><dd><p>Trigger a specific type of devices. Valid types are:
+            lives on.</p></dd><dt id="-e"><span class="term"><code class="option">-e</code>, </span><span class="term"><code class="option">--export-db</code></span><a class="headerlink" title="Permalink to this term" href="#-e">¶</a></dt><dd><p>Export the content of the udev database.</p></dd><dt id="-c"><span class="term"><code class="option">-c</code>, </span><span class="term"><code class="option">--cleanup-db</code></span><a class="headerlink" title="Permalink to this term" href="#-c">¶</a></dt><dd><p>Cleanup the udev database.</p></dd><dt id="--version"><span class="term"><code class="option">--version</code></span><a class="headerlink" title="Permalink to this term" href="#--version">¶</a></dt><dd><p>Print version.</p></dd><dt id="-h"><span class="term"><code class="option">-h</code>, </span><span class="term"><code class="option">--help</code></span><a class="headerlink" title="Permalink to this term" href="#-h">¶</a></dt><dd><p>Print help text.</p></dd></dl></div></div><div class="refsect2"><a name="idm214168948752"></a><h3 id="udevadm trigger [options]">udevadm trigger [<span class="optional">options</span>]<a class="headerlink" title="Permalink to this headline" href="#udevadm%20trigger%20%5Boptions%5D">¶</a></h3><p>Request device events from the kernel. Primarily used to replay events at system coldplug time.</p><div class="variablelist"><dl class="variablelist"><dt id="-v"><span class="term"><code class="option">-v</code>, </span><span class="term"><code class="option">--verbose</code></span><a class="headerlink" title="Permalink to this term" href="#-v">¶</a></dt><dd><p>Print the list of devices which will be triggered.</p></dd><dt id="-n"><span class="term"><code class="option">-n</code>, </span><span class="term"><code class="option">--dry-run</code></span><a class="headerlink" title="Permalink to this term" href="#-n">¶</a></dt><dd><p>Do not actually trigger the event.</p></dd><dt id="-t"><span class="term"><code class="option">-t</code>, </span><span class="term"><code class="option">--type=<em class="replaceable"><code>TYPE</code></em></code></span><a class="headerlink" title="Permalink to this term" href="#-t">¶</a></dt><dd><p>Trigger a specific type of devices. Valid types are:
             <span class="command"><strong>devices</strong></span>, <span class="command"><strong>subsystems</strong></span>.
             The default value is <span class="command"><strong>devices</strong></span>.</p></dd><dt id="-c"><span class="term"><code class="option">-c</code>, </span><span class="term"><code class="option">--action=<em class="replaceable"><code>ACTION</code></em></code></span><a class="headerlink" title="Permalink to this term" href="#-c">¶</a></dt><dd><p>Type of event to be triggered. The default value is
             <span class="command"><strong>change</strong></span>.</p></dd><dt id="-s"><span class="term"><code class="option">-s</code>, </span><span class="term"><code class="option">--subsystem-match=<em class="replaceable"><code>SUBSYSTEM</code></em></code></span><a class="headerlink" title="Permalink to this term" href="#-s">¶</a></dt><dd><p>Trigger events for devices which belong to a
             option can be specified multiple times.</p></dd><dt id="-y"><span class="term"><code class="option">-y</code>, </span><span class="term"><code class="option">--sysname-match=<em class="replaceable"><code>NAME</code></em></code></span><a class="headerlink" title="Permalink to this term" href="#-y">¶</a></dt><dd><p>Trigger events for devices with a matching sys
             device name. This option can be specified multiple times
             and supports shell style pattern matching.</p></dd><dt id="-b"><span class="term"><code class="option">-b</code>, </span><span class="term"><code class="option">--parent-match=<em class="replaceable"><code>SYSPATH</code></em></code></span><a class="headerlink" title="Permalink to this term" href="#-b">¶</a></dt><dd><p>Trigger events for all children of a given
-            device.</p></dd><dt id="-h"><span class="term"><code class="option">-h</code>, </span><span class="term"><code class="option">--help</code></span><a class="headerlink" title="Permalink to this term" href="#-h">¶</a></dt><dd><p>Print help text.</p></dd></dl></div></div><div class="refsect2"><a name="idm214192757696"></a><h3 id="udevadm settle [options]">udevadm settle [<span class="optional">options</span>]<a class="headerlink" title="Permalink to this headline" href="#udevadm%20settle%20%5Boptions%5D">¶</a></h3><p>Watches the udev event queue, and exits if all current events are handled.</p><div class="variablelist"><dl class="variablelist"><dt id="-t"><span class="term"><code class="option">-t</code>, </span><span class="term"><code class="option">--timeout=<em class="replaceable"><code>SECONDS</code></em></code></span><a class="headerlink" title="Permalink to this term" href="#-t">¶</a></dt><dd><p>Maximum number of seconds to wait for the event
+            device.</p></dd><dt id="-h"><span class="term"><code class="option">-h</code>, </span><span class="term"><code class="option">--help</code></span><a class="headerlink" title="Permalink to this term" href="#-h">¶</a></dt><dd><p>Print help text.</p></dd></dl></div></div><div class="refsect2"><a name="idm214168910848"></a><h3 id="udevadm settle [options]">udevadm settle [<span class="optional">options</span>]<a class="headerlink" title="Permalink to this headline" href="#udevadm%20settle%20%5Boptions%5D">¶</a></h3><p>Watches the udev event queue, and exits if all current events are handled.</p><div class="variablelist"><dl class="variablelist"><dt id="-t"><span class="term"><code class="option">-t</code>, </span><span class="term"><code class="option">--timeout=<em class="replaceable"><code>SECONDS</code></em></code></span><a class="headerlink" title="Permalink to this term" href="#-t">¶</a></dt><dd><p>Maximum number of seconds to wait for the event
             queue to become empty. The default value is 120 seconds. A
             value of 0 will check if the queue is empty and always
-            return immediately.</p></dd><dt id="-E"><span class="term"><code class="option">-E</code>, </span><span class="term"><code class="option">--exit-if-exists=<em class="replaceable"><code>FILE</code></em></code></span><a class="headerlink" title="Permalink to this term" href="#-E">¶</a></dt><dd><p>Stop waiting if file exists.</p></dd><dt id="-h"><span class="term"><code class="option">-h</code>, </span><span class="term"><code class="option">--help</code></span><a class="headerlink" title="Permalink to this term" href="#-h">¶</a></dt><dd><p>Print help text.</p></dd></dl></div></div><div class="refsect2"><a name="idm214192748752"></a><h3 id="udevadm control command">udevadm control <em class="replaceable"><code>command</code></em><a class="headerlink" title="Permalink to this headline" href="#udevadm%20control%20command">¶</a></h3><p>Modify the internal state of the running udev daemon.</p><div class="variablelist"><dl class="variablelist"><dt id="-x"><span class="term"><code class="option">-x</code>, </span><span class="term"><code class="option">--exit</code></span><a class="headerlink" title="Permalink to this term" href="#-x">¶</a></dt><dd><p>Signal and wait for systemd-udevd to exit.</p></dd><dt id="-l"><span class="term"><code class="option">-l</code>, </span><span class="term"><code class="option">--log-priority=<em class="replaceable"><code>value</code></em></code></span><a class="headerlink" title="Permalink to this term" href="#-l">¶</a></dt><dd><p>Set the internal log level of systemd-udevd. Valid values are the numerical
+            return immediately.</p></dd><dt id="-E"><span class="term"><code class="option">-E</code>, </span><span class="term"><code class="option">--exit-if-exists=<em class="replaceable"><code>FILE</code></em></code></span><a class="headerlink" title="Permalink to this term" href="#-E">¶</a></dt><dd><p>Stop waiting if file exists.</p></dd><dt id="-h"><span class="term"><code class="option">-h</code>, </span><span class="term"><code class="option">--help</code></span><a class="headerlink" title="Permalink to this term" href="#-h">¶</a></dt><dd><p>Print help text.</p></dd></dl></div></div><div class="refsect2"><a name="idm214168901904"></a><h3 id="udevadm control command">udevadm control <em class="replaceable"><code>command</code></em><a class="headerlink" title="Permalink to this headline" href="#udevadm%20control%20command">¶</a></h3><p>Modify the internal state of the running udev daemon.</p><div class="variablelist"><dl class="variablelist"><dt id="-x"><span class="term"><code class="option">-x</code>, </span><span class="term"><code class="option">--exit</code></span><a class="headerlink" title="Permalink to this term" href="#-x">¶</a></dt><dd><p>Signal and wait for systemd-udevd to exit.</p></dd><dt id="-l"><span class="term"><code class="option">-l</code>, </span><span class="term"><code class="option">--log-priority=<em class="replaceable"><code>value</code></em></code></span><a class="headerlink" title="Permalink to this term" href="#-l">¶</a></dt><dd><p>Set the internal log level of systemd-udevd. Valid values are the numerical
             syslog priorities or their textual representations: <code class="option">err</code>,
             <code class="option">info</code> and <code class="option">debug</code>.</p></dd><dt id="-s"><span class="term"><code class="option">-s</code>, </span><span class="term"><code class="option">--stop-exec-queue</code></span><a class="headerlink" title="Permalink to this term" href="#-s">¶</a></dt><dd><p>Signal systemd-udevd to stop executing new events. Incoming events
             will be queued.</p></dd><dt id="-S"><span class="term"><code class="option">-S</code>, </span><span class="term"><code class="option">--start-exec-queue</code></span><a class="headerlink" title="Permalink to this term" href="#-S">¶</a></dt><dd><p>Signal systemd-udevd to enable the execution of events.</p></dd><dt id="-R"><span class="term"><code class="option">-R</code>, </span><span class="term"><code class="option">--reload</code></span><a class="headerlink" title="Permalink to this term" href="#-R">¶</a></dt><dd><p>Signal systemd-udevd to reload the rules files and other databases like the kernel
             module index. Reloading rules and databases does not apply any changes to already
             existing devices; the new configuration will only be applied to new events.</p></dd><dt id="-p"><span class="term"><code class="option">-p</code>, </span><span class="term"><code class="option">--property=<em class="replaceable"><code>KEY</code></em>=<em class="replaceable"><code>value</code></em></code></span><a class="headerlink" title="Permalink to this term" href="#-p">¶</a></dt><dd><p>Set a global property for all events.</p></dd><dt id="-m"><span class="term"><code class="option">-m</code>, </span><span class="term"><code class="option">--children-max=</code><em class="replaceable"><code>value</code></em></span><a class="headerlink" title="Permalink to this term" href="#-m">¶</a></dt><dd><p>Set the maximum number of events, systemd-udevd will handle at the
-            same time.</p></dd><dt id="--timeout=seconds"><span class="term"><code class="option">--timeout=</code><em class="replaceable"><code>seconds</code></em></span><a class="headerlink" title="Permalink to this term" href="#--timeout=seconds">¶</a></dt><dd><p>The maximum number of seconds to wait for a reply from systemd-udevd.</p></dd><dt id="-h"><span class="term"><code class="option">-h</code>, </span><span class="term"><code class="option">--help</code></span><a class="headerlink" title="Permalink to this term" href="#-h">¶</a></dt><dd><p>Print help text.</p></dd></dl></div></div><div class="refsect2"><a name="idm214192724784"></a><h3 id="udevadm monitor [options]">udevadm monitor [<span class="optional">options</span>]<a class="headerlink" title="Permalink to this headline" href="#udevadm%20monitor%20%5Boptions%5D">¶</a></h3><p>Listens to the kernel uevents and events sent out by a udev rule
+            same time.</p></dd><dt id="--timeout=seconds"><span class="term"><code class="option">--timeout=</code><em class="replaceable"><code>seconds</code></em></span><a class="headerlink" title="Permalink to this term" href="#--timeout=seconds">¶</a></dt><dd><p>The maximum number of seconds to wait for a reply from systemd-udevd.</p></dd><dt id="-h"><span class="term"><code class="option">-h</code>, </span><span class="term"><code class="option">--help</code></span><a class="headerlink" title="Permalink to this term" href="#-h">¶</a></dt><dd><p>Print help text.</p></dd></dl></div></div><div class="refsect2"><a name="idm214168877936"></a><h3 id="udevadm monitor [options]">udevadm monitor [<span class="optional">options</span>]<a class="headerlink" title="Permalink to this headline" href="#udevadm%20monitor%20%5Boptions%5D">¶</a></h3><p>Listens to the kernel uevents and events sent out by a udev rule
       and prints the devpath of the event to the console. It can be used to analyze the
       event timing, by comparing the timestamps of the kernel uevent and the udev event.
-      </p><div class="variablelist"><dl class="variablelist"><dt id="-k"><span class="term"><code class="option">-k</code>, </span><span class="term"><code class="option">--kernel</code></span><a class="headerlink" title="Permalink to this term" href="#-k">¶</a></dt><dd><p>Print the kernel uevents.</p></dd><dt id="-u"><span class="term"><code class="option">-u</code>, </span><span class="term"><code class="option">--udev</code></span><a class="headerlink" title="Permalink to this term" href="#-u">¶</a></dt><dd><p>Print the udev event after the rule processing.</p></dd><dt id="-p"><span class="term"><code class="option">-p</code>, </span><span class="term"><code class="option">--property</code></span><a class="headerlink" title="Permalink to this term" href="#-p">¶</a></dt><dd><p>Also print the properties of the event.</p></dd><dt id="-s"><span class="term"><code class="option">-s</code>, </span><span class="term"><code class="option">--subsystem-match=<em class="replaceable"><code>string[/string]</code></em></code></span><a class="headerlink" title="Permalink to this term" href="#-s">¶</a></dt><dd><p>Filter events by subsystem[/devtype]. Only udev events with a matching subsystem value will pass.</p></dd><dt id="-t"><span class="term"><code class="option">-t</code>, </span><span class="term"><code class="option">--tag-match=<em class="replaceable"><code>string</code></em></code></span><a class="headerlink" title="Permalink to this term" href="#-t">¶</a></dt><dd><p>Filter events by property. Only udev events with a given tag attached will pass.</p></dd><dt id="-h"><span class="term"><code class="option">-h</code>, </span><span class="term"><code class="option">--help</code></span><a class="headerlink" title="Permalink to this term" href="#-h">¶</a></dt><dd><p>Print help text.</p></dd></dl></div></div><div class="refsect2"><a name="idm214192709168"></a><h3 id="udevadm hwdb [options]">udevadm hwdb [<span class="optional">options</span>]<a class="headerlink" title="Permalink to this headline" href="#udevadm%20hwdb%20%5Boptions%5D">¶</a></h3><p>Maintain the hardware database index in <code class="filename">/etc/udev/hwdb.bin</code>.</p><div class="variablelist"><dl class="variablelist"><dt id="-u"><span class="term"><code class="option">-u</code>, </span><span class="term"><code class="option">--update</code></span><a class="headerlink" title="Permalink to this term" href="#-u">¶</a></dt><dd><p>Compile the hardware database information located in /usr/lib/udev/hwdb.d/,
+      </p><div class="variablelist"><dl class="variablelist"><dt id="-k"><span class="term"><code class="option">-k</code>, </span><span class="term"><code class="option">--kernel</code></span><a class="headerlink" title="Permalink to this term" href="#-k">¶</a></dt><dd><p>Print the kernel uevents.</p></dd><dt id="-u"><span class="term"><code class="option">-u</code>, </span><span class="term"><code class="option">--udev</code></span><a class="headerlink" title="Permalink to this term" href="#-u">¶</a></dt><dd><p>Print the udev event after the rule processing.</p></dd><dt id="-p"><span class="term"><code class="option">-p</code>, </span><span class="term"><code class="option">--property</code></span><a class="headerlink" title="Permalink to this term" href="#-p">¶</a></dt><dd><p>Also print the properties of the event.</p></dd><dt id="-s"><span class="term"><code class="option">-s</code>, </span><span class="term"><code class="option">--subsystem-match=<em class="replaceable"><code>string[/string]</code></em></code></span><a class="headerlink" title="Permalink to this term" href="#-s">¶</a></dt><dd><p>Filter events by subsystem[/devtype]. Only udev events with a matching subsystem value will pass.</p></dd><dt id="-t"><span class="term"><code class="option">-t</code>, </span><span class="term"><code class="option">--tag-match=<em class="replaceable"><code>string</code></em></code></span><a class="headerlink" title="Permalink to this term" href="#-t">¶</a></dt><dd><p>Filter events by property. Only udev events with a given tag attached will pass.</p></dd><dt id="-h"><span class="term"><code class="option">-h</code>, </span><span class="term"><code class="option">--help</code></span><a class="headerlink" title="Permalink to this term" href="#-h">¶</a></dt><dd><p>Print help text.</p></dd></dl></div></div><div class="refsect2"><a name="idm214168862224"></a><h3 id="udevadm hwdb [options]">udevadm hwdb [<span class="optional">options</span>]<a class="headerlink" title="Permalink to this headline" href="#udevadm%20hwdb%20%5Boptions%5D">¶</a></h3><p>Maintain the hardware database index in <code class="filename">/etc/udev/hwdb.bin</code>.</p><div class="variablelist"><dl class="variablelist"><dt id="-u"><span class="term"><code class="option">-u</code>, </span><span class="term"><code class="option">--update</code></span><a class="headerlink" title="Permalink to this term" href="#-u">¶</a></dt><dd><p>Compile the hardware database information located in /usr/lib/udev/hwdb.d/,
             /etc/udev/hwdb.d/ and store it in <code class="filename">/etc/udev/hwdb.bin</code>. This should be done after
             any update to the source files; it will not be called automatically. The running
             udev daemon will detect a new database on its own and does not need to be
             notified about it.</p></dd><dt id="-t"><span class="term"><code class="option">-t</code>, </span><span class="term"><code class="option">--test=<em class="replaceable"><code>string</code></em></code></span><a class="headerlink" title="Permalink to this term" href="#-t">¶</a></dt><dd><p>Query the database with a modalias string, and print the
-            retrieved properties.</p></dd><dt id="-r"><span class="term"><code class="option">-r</code>, </span><span class="term"><code class="option">--root=<em class="replaceable"><code>string</code></em></code></span><a class="headerlink" title="Permalink to this term" href="#-r">¶</a></dt><dd><p>Alternative root path in the file system for reading and writing files.</p></dd><dt id="-h"><span class="term"><code class="option">-h</code>, </span><span class="term"><code class="option">--help</code></span><a class="headerlink" title="Permalink to this term" href="#-h">¶</a></dt><dd><p>Print help text.</p></dd></dl></div></div><div class="refsect2"><a name="idm214192696448"></a><h3 id="udevadm test [options] devpath">udevadm test [<span class="optional">options</span>] <em class="replaceable"><code>devpath</code></em><a class="headerlink" title="Permalink to this headline" href="#udevadm%20test%20%5Boptions%5D%20devpath">¶</a></h3><p>Simulate a udev event run for the given device, and print debug output.</p><div class="variablelist"><dl class="variablelist"><dt id="-a"><span class="term"><code class="option">-a</code>, </span><span class="term"><code class="option">--action=<em class="replaceable"><code>string</code></em></code></span><a class="headerlink" title="Permalink to this term" href="#-a">¶</a></dt><dd><p>The action string.</p></dd><dt id="-N"><span class="term"><code class="option">-N</code>, </span><span class="term"><code class="option">--resolve-names=<code class="constant">early</code>|<code class="constant">late</code>|<code class="constant">never</code></code></span><a class="headerlink" title="Permalink to this term" href="#-N">¶</a></dt><dd><p>Specify when udevadm should resolve names of users
+            retrieved properties.</p></dd><dt id="-r"><span class="term"><code class="option">-r</code>, </span><span class="term"><code class="option">--root=<em class="replaceable"><code>string</code></em></code></span><a class="headerlink" title="Permalink to this term" href="#-r">¶</a></dt><dd><p>Alternative root path in the file system for reading and writing files.</p></dd><dt id="-h"><span class="term"><code class="option">-h</code>, </span><span class="term"><code class="option">--help</code></span><a class="headerlink" title="Permalink to this term" href="#-h">¶</a></dt><dd><p>Print help text.</p></dd></dl></div></div><div class="refsect2"><a name="idm214168849504"></a><h3 id="udevadm test [options] devpath">udevadm test [<span class="optional">options</span>] <em class="replaceable"><code>devpath</code></em><a class="headerlink" title="Permalink to this headline" href="#udevadm%20test%20%5Boptions%5D%20devpath">¶</a></h3><p>Simulate a udev event run for the given device, and print debug output.</p><div class="variablelist"><dl class="variablelist"><dt id="-a"><span class="term"><code class="option">-a</code>, </span><span class="term"><code class="option">--action=<em class="replaceable"><code>string</code></em></code></span><a class="headerlink" title="Permalink to this term" href="#-a">¶</a></dt><dd><p>The action string.</p></dd><dt id="-N"><span class="term"><code class="option">-N</code>, </span><span class="term"><code class="option">--resolve-names=<code class="constant">early</code>|<code class="constant">late</code>|<code class="constant">never</code></code></span><a class="headerlink" title="Permalink to this term" href="#-N">¶</a></dt><dd><p>Specify when udevadm should resolve names of users
             and groups.  When set to <code class="constant">early</code> (the
             default), names will be resolved when the rules are
             parsed. When set to <code class="constant">late</code>, names will
             be resolved for every event. When set to
             <code class="constant">never</code>, names will never be resolved
-            and all devices will be owned by root.</p></dd><dt id="-h"><span class="term"><code class="option">-h</code>, </span><span class="term"><code class="option">--help</code></span><a class="headerlink" title="Permalink to this term" href="#-h">¶</a></dt><dd><p>Print help text.</p></dd></dl></div></div><div class="refsect2"><a name="idm214192684944"></a><h3 id="udevadm test-builtin [options] COMMAND DEVPATH">udevadm test-builtin [<span class="optional">options</span>] <em class="replaceable"><code>COMMAND</code></em> <em class="replaceable"><code>DEVPATH</code></em><a class="headerlink" title="Permalink to this headline" href="#udevadm%20test-builtin%20%5Boptions%5D%20COMMAND%20DEVPATH">¶</a></h3><p>Run a built-in command <em class="replaceable"><code>COMMAND</code></em>
+            and all devices will be owned by root.</p></dd><dt id="-h"><span class="term"><code class="option">-h</code>, </span><span class="term"><code class="option">--help</code></span><a class="headerlink" title="Permalink to this term" href="#-h">¶</a></dt><dd><p>Print help text.</p></dd></dl></div></div><div class="refsect2"><a name="idm214168838000"></a><h3 id="udevadm test-builtin [options] COMMAND DEVPATH">udevadm test-builtin [<span class="optional">options</span>] <em class="replaceable"><code>COMMAND</code></em> <em class="replaceable"><code>DEVPATH</code></em><a class="headerlink" title="Permalink to this headline" href="#udevadm%20test-builtin%20%5Boptions%5D%20COMMAND%20DEVPATH">¶</a></h3><p>Run a built-in command <em class="replaceable"><code>COMMAND</code></em>
       for device <em class="replaceable"><code>DEVPATH</code></em>, and print debug
-      output.</p><div class="variablelist"><dl class="variablelist"><dt id="-h"><span class="term"><code class="option">-h</code>, </span><span class="term"><code class="option">--help</code></span><a class="headerlink" title="Permalink to this term" href="#-h">¶</a></dt><dd><p>Print help text.</p></dd></dl></div></div></div><div class="refsect1"><a name="idm214192679440"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p><a href="udev.html"><span class="citerefentry"><span class="refentrytitle">udev</span>(7)</span></a>,
+      output.</p><div class="variablelist"><dl class="variablelist"><dt id="-h"><span class="term"><code class="option">-h</code>, </span><span class="term"><code class="option">--help</code></span><a class="headerlink" title="Permalink to this term" href="#-h">¶</a></dt><dd><p>Print help text.</p></dd></dl></div></div></div><div class="refsect1"><a name="idm214168832496"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p><a href="udev.html"><span class="citerefentry"><span class="refentrytitle">udev</span>(7)</span></a>,
     <a href="systemd-udevd.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-udevd.service</span>(8)</span></a></p></div></div></body></html>
index cca5c79a7ac0cd510122d22eabaec403b27d34ef..8616c5424954e91137decd1b72acf17fc03ad214 100644 (file)
     <term><option>--host=</option></term>
 
     <listitem id='host-text'>
-      <para>Execute the operation remotely. Specify a hostname, or
+      <para>Execute the operation remotely. Specify a hostname, or a
       username and hostname separated by <literal>@</literal>, to
-      connect to. This will use SSH to talk to the remote machine
-      manager instance.</para>
+      connect to. The hostname may optionally be suffixed by a
+      container name, separated by <literal>:</literal>, which
+      connects directly to a specific container on the specified
+      host. This will use SSH to talk to the remote machine manager
+      instance. Container names may be enumerated with
+      <command>machinectl -H
+      <replaceable>HOST</replaceable></command>.</para>
     </listitem>
   </varlistentry>
 
index a6d4a194317d98493efedecba14ff4eeb174b13c..05a25fe81521c5756d28f3616b8f1147280da9f3 100644 (file)
@@ -1,5 +1,5 @@
 '\" t
-.TH "VCONSOLE\&.CONF" "5" "" "systemd 214" "vconsole.conf"
+.TH "VCONSOLE\&.CONF" "5" "" "systemd 215" "vconsole.conf"
 .\" -----------------------------------------------------------------
 .\" * Define some portability stuff
 .\" -----------------------------------------------------------------
index e5c6964f2e59c634e2d2ebb9eeeaf89e0d9d88cc..b0095a736c01c76f310fbd43cd4f8095e5688bbd 100644 (file)
@@ -19,7 +19,7 @@
   <a href="systemd.directives.html">Directives </a>·
   <a href="../python-systemd/index.html">Python </a>·
   <a href="../libudev/index.html">libudev </a>·
-  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 214</span><hr><div class="refentry"><a name="vconsole.conf"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>vconsole.conf — Configuration file for the virtual console</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><p><code class="filename">/etc/vconsole.conf</code></p></div><div class="refsect1"><a name="idm214196236976"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p>The <code class="filename">/etc/vconsole.conf</code> file
+  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="vconsole.conf"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>vconsole.conf — Configuration file for the virtual console</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><p><code class="filename">/etc/vconsole.conf</code></p></div><div class="refsect1"><a name="idm214188601936"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p>The <code class="filename">/etc/vconsole.conf</code> file
                 configures the virtual console, i.e. keyboard mapping
                 and console font. It is applied at boot by
                 <a href="systemd-vconsole-setup.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-vconsole-setup.service</span>(8)</span></a>.</p><p>The basic file format of the
@@ -39,7 +39,7 @@
                 to override the console settings at boot.</p><p>Depending on the operating system other
                 configuration files might be checked for configuration
                 of the virtual console as well, however only as
-                fallback.</p></div><div class="refsect1"><a name="idm214196667504"></a><h2 id="Options">Options<a class="headerlink" title="Permalink to this headline" href="#Options">¶</a></h2><p>The following options are understood:</p><div class="variablelist"><dl class="variablelist"><dt id="KEYMAP="><span class="term"><code class="varname">KEYMAP=</code>, </span><span class="term"><code class="varname">KEYMAP_TOGGLE=</code></span><a class="headerlink" title="Permalink to this term" href="#KEYMAP=">¶</a></dt><dd><p>Configures the key
+                fallback.</p></div><div class="refsect1"><a name="idm214188594400"></a><h2 id="Options">Options<a class="headerlink" title="Permalink to this headline" href="#Options">¶</a></h2><p>The following options are understood:</p><div class="variablelist"><dl class="variablelist"><dt id="KEYMAP="><span class="term"><code class="varname">KEYMAP=</code>, </span><span class="term"><code class="varname">KEYMAP_TOGGLE=</code></span><a class="headerlink" title="Permalink to this term" href="#KEYMAP=">¶</a></dt><dd><p>Configures the key
                                 mapping table for the
                                 keyboard. <code class="varname">KEYMAP=</code>
                                 defaults to "<code class="literal">us</code>" if
@@ -49,8 +49,8 @@
                                 keymap and is by default
                                 unset.</p></dd><dt id="FONT="><span class="term"><code class="varname">FONT=</code>, </span><span class="term"><code class="varname">FONT_MAP=</code>, </span><span class="term"><code class="varname">FONT_UNIMAP=</code></span><a class="headerlink" title="Permalink to this term" href="#FONT=">¶</a></dt><dd><p>Configures the console
                                 font, the console map and the unicode
-                                font map.</p></dd></dl></div></div><div class="refsect1"><a name="idm214196442416"></a><h2 id="Example">Example<a class="headerlink" title="Permalink to this headline" href="#Example">¶</a></h2><div class="example"><a name="idm214195705424"></a><p class="title"><b>Example 1. German keyboard and console</b></p><div class="example-contents"><p><code class="filename">/etc/vconsole.conf</code>:</p><pre class="programlisting">KEYMAP=de-latin1
-FONT=latarcyrheb-sun16</pre></div></div><br class="example-break"></div><div class="refsect1"><a name="idm214196297840"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
+                                font map.</p></dd></dl></div></div><div class="refsect1"><a name="idm214192540192"></a><h2 id="Example">Example<a class="headerlink" title="Permalink to this headline" href="#Example">¶</a></h2><div class="example"><a name="idm214192539520"></a><p class="title"><b>Example 1. German keyboard and console</b></p><div class="example-contents"><p><code class="filename">/etc/vconsole.conf</code>:</p><pre class="programlisting">KEYMAP=de-latin1
+FONT=latarcyrheb-sun16</pre></div></div><br class="example-break"></div><div class="refsect1"><a name="idm214192536928"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p>
                           <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>,
                           <a href="systemd-vconsole-setup.service.html"><span class="citerefentry"><span class="refentrytitle">systemd-vconsole-setup.service</span>(8)</span></a>,
                           <a href="loadkeys.html"><span class="citerefentry"><span class="refentrytitle">loadkeys</span>(1)</span></a>,
index 8d9293f23958bac3db4903d4db5048acded663d1..6863ca9ce9055061ad9f392ae257021ccb02e5d6 100644 (file)
@@ -10,5 +10,5 @@ Virtualization=container
 Name=host0
 
 [Network]
-DHCP=yes
+DHCP=both
 IPv4LL=yes
index f0c02b0ee594a60c21bae14b2a47798d1e6f1edf..cb04c7cb3dea5a2c85ac3cbdbeb87b82f41da84a 100644 (file)
@@ -10,4 +10,6 @@ Name=ve-*
 Driver=veth
 
 [Network]
+Address=0.0.0.0/28
 IPv4LL=yes
+DHCPServer=yes
index 820ca82d0203050f6adf70c8f5610cd3eb0c2761..2cb0f30b69f475b9227ca7f67798b78e7e7df72c 100644 (file)
@@ -1,3 +1,4 @@
+de
 el
 fr
 it
diff --git a/po/de.po b/po/de.po
new file mode 100644 (file)
index 0000000..a41e33d
--- /dev/null
+++ b/po/de.po
@@ -0,0 +1,418 @@
+# German translation for systemd.
+# Copyright (C) 2014 systemd's COPYRIGHT HOLDER
+# This file is distributed under the same license as the systemd package.
+# Christian Kirbach <Christian.Kirbach@gmail.com>, 2014.
+# Benjamin Steinwender <b@stbe.at>, 2014.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: systemd master\n"
+"Report-Msgid-Bugs-To: https://bugs.freedesktop.org/enter_bug.cgi?"
+"product=systemd&keywords=I18N+L10N&component=general\n"
+"POT-Creation-Date: 2014-06-02 10:25+0000\n"
+"PO-Revision-Date: 2014-06-02 22:43+0100\n"
+"Last-Translator: Benjamin Steinwender <b@stbe.at>\n"
+"Language-Team: German <gnome-de@gnome.org>\n"
+"Language: de\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
+"X-Generator: Poedit 1.6.5\n"
+
+#: ../src/hostname/org.freedesktop.hostname1.policy.in.h:1
+msgid "Set host name"
+msgstr "Rechnername festlegen"
+
+#: ../src/hostname/org.freedesktop.hostname1.policy.in.h:2
+msgid "Authentication is required to set the local host name."
+msgstr "Legitimierung ist zum Festlegen des lokalen Rechnernamens notwendig"
+
+#: ../src/hostname/org.freedesktop.hostname1.policy.in.h:3
+msgid "Set static host name"
+msgstr "Statischen Rechnernamen festlegen"
+
+#: ../src/hostname/org.freedesktop.hostname1.policy.in.h:4
+msgid ""
+"Authentication is required to set the statically configured local host name, "
+"as well as the pretty host name."
+msgstr ""
+"Authentifizierung ist erforderlich, um den statisch geänderten, lokalen "
+"Rechnernamen, sowie den beschönigten Rechnernamen festzulegen."
+
+#: ../src/hostname/org.freedesktop.hostname1.policy.in.h:5
+msgid "Set machine information"
+msgstr "Maschinen-Information festlegen"
+
+#: ../src/hostname/org.freedesktop.hostname1.policy.in.h:6
+msgid "Authentication is required to set local machine information."
+msgstr ""
+"Legitimierung ist zum Festlegen der lokalen Maschinen-Information "
+"erforderlich."
+
+#: ../src/locale/org.freedesktop.locale1.policy.in.h:1
+msgid "Set system locale"
+msgstr "Die lokale Sprachumgebung festlegen"
+
+#: ../src/locale/org.freedesktop.locale1.policy.in.h:2
+msgid "Authentication is required to set the system locale."
+msgstr ""
+"Legitimierung ist zum Festlegen der systemweiten Spracheinstellungen "
+"erforderlich."
+
+#: ../src/locale/org.freedesktop.locale1.policy.in.h:3
+msgid "Set system keyboard settings"
+msgstr "Tastatureinstellungen des Systems festlegen"
+
+#: ../src/locale/org.freedesktop.locale1.policy.in.h:4
+msgid "Authentication is required to set the system keyboard settings."
+msgstr ""
+"Legitimierung ist zum Festlegen der Tastatureinstellungen des Systems "
+"erforderlich."
+
+#: ../src/login/org.freedesktop.login1.policy.in.h:1
+msgid "Allow applications to inhibit system shutdown"
+msgstr "Anwendungen dürfen das Herunterfahren des Systems unterbinden"
+
+#: ../src/login/org.freedesktop.login1.policy.in.h:2
+msgid ""
+"Authentication is required to allow an application to inhibit system "
+"shutdown."
+msgstr ""
+"Legitimierung ist notwendig, um Anwendungen das Herunterfahren des Systems "
+"zu erlauben."
+
+#: ../src/login/org.freedesktop.login1.policy.in.h:3
+msgid "Allow applications to delay system shutdown"
+msgstr "Anwendungen dürfen das Herunterfahren des Systems verzögern"
+
+#: ../src/login/org.freedesktop.login1.policy.in.h:4
+msgid ""
+"Authentication is required to allow an application to delay system shutdown."
+msgstr ""
+"Legitimierung ist notwendig, um Anwendungen das Verzögern des Herunterfahren "
+"des Systems zu erlauben."
+
+#: ../src/login/org.freedesktop.login1.policy.in.h:5
+msgid "Allow applications to inhibit system sleep"
+msgstr "Anwendungen dürfen den Bereitschaftsmodus unterbinden"
+
+#: ../src/login/org.freedesktop.login1.policy.in.h:6
+msgid ""
+"Authentication is required to allow an application to inhibit system sleep."
+msgstr ""
+"Legitimierung ist erforderlich, um Anwendungen das Unterbinden des "
+"Bereitschaftsmodus zu erlauben."
+
+#: ../src/login/org.freedesktop.login1.policy.in.h:7
+msgid "Allow applications to delay system sleep"
+msgstr "Anwendungen dürfen den Bereitschaftsmodus verzögern"
+
+#: ../src/login/org.freedesktop.login1.policy.in.h:8
+msgid ""
+"Authentication is required to allow an application to delay system sleep."
+msgstr ""
+"Legitimierung ist erforderlich, um Anwendungen das Verzögern des "
+"Bereitschaftsmodus zu erlauben."
+
+#: ../src/login/org.freedesktop.login1.policy.in.h:9
+msgid "Allow applications to inhibit automatic system suspend"
+msgstr "Anwendungen dürfen den automatischen Bereitschaftsmodus unterbinden"
+
+#: ../src/login/org.freedesktop.login1.policy.in.h:10
+msgid ""
+"Authentication is required to allow an application to inhibit automatic "
+"system suspend."
+msgstr ""
+"Legitimierung ist notwendig, um Anwendungen das Unterbinden des "
+"automatischen Bereitschaftsmodus zu erlauben."
+
+#: ../src/login/org.freedesktop.login1.policy.in.h:11
+msgid "Allow applications to inhibit system handling of the power key"
+msgstr ""
+"Anwendungen dürfen das Auswerten des Ein-/Ausschaltknopfs des Systems "
+"unterbinden"
+
+#: ../src/login/org.freedesktop.login1.policy.in.h:12
+msgid ""
+"Authentication is required to allow an application to inhibit system "
+"handling of the power key."
+msgstr ""
+"Legitmierung ist erforderlich, um Anwendungen das Unterbinden der Auswertung "
+"der Ein-/Ausschaltknopfs des Systems zu erlauben."
+
+#: ../src/login/org.freedesktop.login1.policy.in.h:13
+msgid "Allow applications to inhibit system handling of the suspend key"
+msgstr ""
+"Anwendungen dürfen das Auswerten des Bereitschaftsknopfs des Systems "
+"unterbinden"
+
+#: ../src/login/org.freedesktop.login1.policy.in.h:14
+msgid ""
+"Authentication is required to allow an application to inhibit system "
+"handling of the suspend key."
+msgstr ""
+"Legitimierung ist erforderlich, um Anwendungen das Unterbinden der "
+"Auswertung des Bereitschaftsknopfes des Systems zu erlauben."
+
+#: ../src/login/org.freedesktop.login1.policy.in.h:15
+msgid "Allow applications to inhibit system handling of the hibernate key"
+msgstr ""
+"Anwendungen dürfen das Auswerten des Knopfs für den Ruhezustand unterbinden"
+
+#: ../src/login/org.freedesktop.login1.policy.in.h:16
+msgid ""
+"Authentication is required to allow an application to inhibit system "
+"handling of the hibernate key."
+msgstr ""
+"Legitimierung ist erforderlich, um Anwendungen das Unterbinden der "
+"Auswertung des Knopfs für den Ruhezustand zu erlauben."
+
+#: ../src/login/org.freedesktop.login1.policy.in.h:17
+msgid "Allow applications to inhibit system handling of the lid switch"
+msgstr ""
+"Anwendungen dürfen das Auswerten des Notebookdeckelschalters unterbinden"
+
+#: ../src/login/org.freedesktop.login1.policy.in.h:18
+msgid ""
+"Authentication is required to allow an application to inhibit system "
+"handling of the lid switch."
+msgstr ""
+"Legitimierung ist erforderlich, um Anwendungen das Unterbinden der "
+"Auswertung des Notebookdeckelschalters des Systems zu erlauben."
+
+#: ../src/login/org.freedesktop.login1.policy.in.h:19
+msgid "Allow non-logged-in users to run programs"
+msgstr "Nicht angemeldete Benutzer dürfen Programme ausführen"
+
+#: ../src/login/org.freedesktop.login1.policy.in.h:20
+msgid ""
+"Authentication is required to allow a non-logged-in user to run programs."
+msgstr ""
+"Legitimierung ist erforderlich, damit nicht angemeldete Benutzer Programme "
+"ausführen dürfen."
+
+# www.freedesktop.org/wiki/Software/systemd/multiseat/
+#: ../src/login/org.freedesktop.login1.policy.in.h:21
+msgid "Allow attaching devices to seats"
+msgstr "Das Anschließen von Geräten an Arbeitsstationen erlauben"
+
+# www.freedesktop.org/wiki/Software/systemd/multiseat/
+#: ../src/login/org.freedesktop.login1.policy.in.h:22
+msgid "Authentication is required for attaching a device to a seat."
+msgstr ""
+"Legitimierung ist zum Anschließen eines Geräts an eine Arbeitsstation "
+"notwendig."
+
+# www.freedesktop.org/wiki/Software/systemd/multiseat/
+#: ../src/login/org.freedesktop.login1.policy.in.h:23
+msgid "Flush device to seat attachments"
+msgstr "Zurücksetzen der an eine Arbeitsstation angeschlossenen Geräte"
+
+# www.freedesktop.org/wiki/Software/systemd/multiseat/
+#: ../src/login/org.freedesktop.login1.policy.in.h:24
+msgid ""
+"Authentication is required for resetting how devices are attached to seats."
+msgstr ""
+"Legitimierung ist zum Zurücksetzen notwendig, wie Geräte an eine "
+"Arbeitsstation angeschlossen werden."
+
+#: ../src/login/org.freedesktop.login1.policy.in.h:25
+msgid "Power off the system"
+msgstr "Das System ausschalten"
+
+#: ../src/login/org.freedesktop.login1.policy.in.h:26
+msgid "Authentication is required for powering off the system."
+msgstr "Legitimierung ist zum Ausschalten des Systems notwendig."
+
+#: ../src/login/org.freedesktop.login1.policy.in.h:27
+msgid "Power off the system while other users are logged in"
+msgstr "Das System herunter fahren, während andere Benutzer angemeldet sind"
+
+#: ../src/login/org.freedesktop.login1.policy.in.h:28
+msgid ""
+"Authentication is required for powering off the system while other users are "
+"logged in."
+msgstr ""
+"Legitimierung ist zum Herunterfahren des Systems notwendig, während andere "
+"Benutzer angemeldet sind."
+
+#: ../src/login/org.freedesktop.login1.policy.in.h:29
+msgid "Power off the system while an application asked to inhibit it"
+msgstr ""
+"Das System ausschalten, während eine Anwendung anfordert es zu unterbinden"
+
+#: ../src/login/org.freedesktop.login1.policy.in.h:30
+msgid ""
+"Authentication is required for powering off the system while an application "
+"asked to inhibit it."
+msgstr ""
+"Legitimierung ist zum Ausschalten des Systems notwendig, während eine "
+"Anwendung anfordert es zu unterbinden."
+
+#: ../src/login/org.freedesktop.login1.policy.in.h:31
+msgid "Reboot the system"
+msgstr "Das System neu starten"
+
+#: ../src/login/org.freedesktop.login1.policy.in.h:32
+msgid "Authentication is required for rebooting the system."
+msgstr "Legitimierung ist zum Neustart des Systems notwendig."
+
+#: ../src/login/org.freedesktop.login1.policy.in.h:33
+msgid "Reboot the system while other users are logged in"
+msgstr "Das Systems neu starten, während andere Benutzer angemeldet sind"
+
+#: ../src/login/org.freedesktop.login1.policy.in.h:34
+msgid ""
+"Authentication is required for rebooting the system while other users are "
+"logged in."
+msgstr ""
+"Legitimierung ist zum Neustart des Systems notwendig, während andere "
+"Benutzer angemeldet sind."
+
+#: ../src/login/org.freedesktop.login1.policy.in.h:35
+msgid "Reboot the system while an application asked to inhibit it"
+msgstr ""
+"Das System neu starten, während eine Anwendung anfordert es zu unterbinden"
+
+#: ../src/login/org.freedesktop.login1.policy.in.h:36
+msgid ""
+"Authentication is required for rebooting the system while an application "
+"asked to inhibit it."
+msgstr ""
+"Legitimierung ist zum Neustart des Systems notwendig, während eine Anwendung "
+"anforderte es zu unterbinden."
+
+#: ../src/login/org.freedesktop.login1.policy.in.h:37
+msgid "Suspend the system"
+msgstr "Das System in Bereitschaft versetzen"
+
+#: ../src/login/org.freedesktop.login1.policy.in.h:38
+msgid "Authentication is required for suspending the system."
+msgstr "Legitimierung ist zum Versetzen des Systems in Bereitschaft notwendig."
+
+#: ../src/login/org.freedesktop.login1.policy.in.h:39
+msgid "Suspend the system while other users are logged in"
+msgstr ""
+"Das System in Bereitschaft versetzen, während andere Benutzer angemeldet "
+"sind."
+
+#: ../src/login/org.freedesktop.login1.policy.in.h:40
+msgid ""
+"Authentication is required for suspending the system while other users are "
+"logged in."
+msgstr ""
+"Legitimierung ist zum Versetzen des Systems in Bereitschaft notwendig, "
+"während andere Benutzer angemeldet sind."
+
+#: ../src/login/org.freedesktop.login1.policy.in.h:41
+msgid "Suspend the system while an application asked to inhibit it"
+msgstr ""
+"Das System in Bereitschaft versetzen, während eine Anwendung anfordert dies "
+"zu unterbinden"
+
+#: ../src/login/org.freedesktop.login1.policy.in.h:42
+msgid ""
+"Authentication is required for suspending the system while an application "
+"asked to inhibit it."
+msgstr ""
+"Legitimierung ist zum Versetzen des Systems in Bereitschaft notwendig, "
+"während eine Anwendung anfordert dies zu unterbinden."
+
+#: ../src/login/org.freedesktop.login1.policy.in.h:43
+msgid "Hibernate the system"
+msgstr "Den Ruhezustand des Systems aktivieren"
+
+#: ../src/login/org.freedesktop.login1.policy.in.h:44
+msgid "Authentication is required for hibernating the system."
+msgstr ""
+"Legitimierung ist zum Aktivieren des Ruhezustands des Systems notwendig."
+
+#: ../src/login/org.freedesktop.login1.policy.in.h:45
+msgid "Hibernate the system while other users are logged in"
+msgstr ""
+"Den Ruhezustand des Systems aktivieren, während andere Benutzer angemeldet "
+"sind"
+
+#: ../src/login/org.freedesktop.login1.policy.in.h:46
+msgid ""
+"Authentication is required for hibernating the system while other users are "
+"logged in."
+msgstr ""
+"Legitimierung ist zum Aktivieren des Ruhezustands des Systems notwendig, "
+"während andere Benutzer angemeldet sind."
+
+#: ../src/login/org.freedesktop.login1.policy.in.h:47
+msgid "Hibernate the system while an application asked to inhibit it"
+msgstr ""
+"Das System in den Ruhezustand versetzen, während eine Anwendung wünscht dies "
+"zu verhindern"
+
+#: ../src/login/org.freedesktop.login1.policy.in.h:48
+msgid ""
+"Authentication is required for hibernating the system while an application "
+"asked to inhibit it."
+msgstr ""
+"Legitimierung ist zum Versetzen des System in den Ruhezustand notwendig, "
+"während eine Anwendung wünscht dies zu verhindern."
+
+#: ../src/timedate/org.freedesktop.timedate1.policy.in.h:1
+msgid "Set system time"
+msgstr "Die Systemzeit festlegen"
+
+#: ../src/timedate/org.freedesktop.timedate1.policy.in.h:2
+msgid "Authentication is required to set the system time."
+msgstr "Legitimierung ist zum Festlegen der Systemzeit notwendig."
+
+#: ../src/timedate/org.freedesktop.timedate1.policy.in.h:3
+msgid "Set system timezone"
+msgstr "Die Systemzeitzone festlegen"
+
+#: ../src/timedate/org.freedesktop.timedate1.policy.in.h:4
+msgid "Authentication is required to set the system timezone."
+msgstr "Legitimierung ist zum Festlegen der Systemzeitzone notwendig."
+
+#: ../src/timedate/org.freedesktop.timedate1.policy.in.h:5
+msgid "Set RTC to local timezone or UTC"
+msgstr "Echtzeituhr auf lokale Zeitzone oder UTC setzen"
+
+#: ../src/timedate/org.freedesktop.timedate1.policy.in.h:6
+msgid ""
+"Authentication is required to control whether the RTC stores the local or "
+"UTC time."
+msgstr ""
+"Legitimierung ist notwendig zum Festlegen, ob die Echtzeituhr auf lokale "
+"Zeitzone oder UTC eingestellt ist."
+
+#: ../src/timedate/org.freedesktop.timedate1.policy.in.h:7
+msgid "Turn network time synchronization on or off"
+msgstr "Netzwerkzeitabgeich ein- oder ausschalten"
+
+#: ../src/timedate/org.freedesktop.timedate1.policy.in.h:8
+msgid ""
+"Authentication is required to control whether network time synchronization "
+"shall be enabled."
+msgstr ""
+"Legitimierung ist zum Festlegen, ob Netzwerkzeitabgeich eingeschaltet sein "
+"soll, erforderlich."
+
+#: ../src/core/org.freedesktop.systemd1.policy.in.in.h:1
+msgid "Send passphrase back to system"
+msgstr "Passphrase zurück an das System senden"
+
+#: ../src/core/org.freedesktop.systemd1.policy.in.in.h:2
+msgid ""
+"Authentication is required to send the entered passphrase back to the system."
+msgstr ""
+"Legitimierung ist zum Senden des eingegebenen Kennworts zurück an das System "
+"notwendig."
+
+#: ../src/core/org.freedesktop.systemd1.policy.in.in.h:3
+msgid "Privileged system and service manager access"
+msgstr "Privilegierter Zugriff auf die System- und Dienstverwaltung"
+
+#: ../src/core/org.freedesktop.systemd1.policy.in.in.h:4
+msgid "Authentication is required to access the system and service manager."
+msgstr ""
+"Legitimierung ist notwendig für den Zugriff auf die System- und "
+"Dienstverwaltung."
index c675b5b0278ef3ba943f8f8f4d4dbfb2012daf64..4c300da8c80d30d173d2eebb49845c99a776d6a9 100644 (file)
@@ -12,10 +12,6 @@ ACTION=="add", SUBSYSTEM=="usb", ATTR{product}=="QEMU USB Mouse", ATTR{serial}!=
 ACTION=="add", SUBSYSTEM=="usb", ATTR{product}=="QEMU USB Tablet", ATTR{serial}!="1", TEST=="power/control", ATTR{power/control}="auto"
 ACTION=="add", SUBSYSTEM=="usb", ATTR{product}=="QEMU USB Keyboard", ATTR{serial}!="1", TEST=="power/control", ATTR{power/control}="auto"
 
-# Catch-all for Avocent HID devices. Keyed off interface in order to only
-# trigger on HID class devices.
-ACTION=="add", SUBSYSTEM=="usb", ATTRS{idVendor}=="0624", ATTR{bInterfaceClass}=="03", TEST=="../power/control", ATTR{../power/control}="auto"
-
 # Dell DRAC 4
 ACTION=="add", SUBSYSTEM=="usb", ATTR{idVendor}=="413c", ATTR{idProduct}=="2500", TEST=="power/control", ATTR{power/control}="auto"
 
index 122d07c9beb9922b3a0f42be8611c46508cd9ea4..2bf9c1ec7ef7fbe7f7f35f5c8a7d10a7e2279aee 100644 (file)
@@ -23,6 +23,7 @@ KERNEL=="tty[A-Z]*[0-9]|pppox[0-9]*|ircomm[0-9]*|noz[0-9]*|rfcomm[0-9]*", GROUP=
 
 SUBSYSTEM=="mem", KERNEL=="mem|kmem|port", GROUP="kmem", MODE="0640"
 
+SUBSYSTEM=="input", GROUP="input"
 SUBSYSTEM=="input", KERNEL=="js[0-9]*", MODE="0664"
 
 SUBSYSTEM=="video4linux", GROUP="video"
@@ -58,6 +59,8 @@ KERNEL=="pktcdvd", GROUP="cdrom"
 SUBSYSTEM=="scsi_generic|scsi_tape", SUBSYSTEMS=="scsi", ATTRS{type}=="1|8", GROUP="tape"
 SUBSYSTEM=="scsi_generic", SUBSYSTEMS=="scsi", ATTRS{type}=="0", GROUP="disk"
 KERNEL=="qft[0-9]*|nqft[0-9]*|zqft[0-9]*|nzqft[0-9]*|rawqft[0-9]*|nrawqft[0-9]*", GROUP="disk"
+KERNEL=="loop-control", GROUP="disk", OPTIONS+="static_node=loop-control"
+KERNEL=="btrfs-control", GROUP="disk"
 KERNEL=="rawctl", GROUP="disk"
 SUBSYSTEM=="raw", KERNEL=="raw[0-9]*", GROUP="disk"
 SUBSYSTEM=="aoe", GROUP="disk", MODE="0220"
diff --git a/shell-completion/bash/coredumpctl b/shell-completion/bash/coredumpctl
new file mode 100644 (file)
index 0000000..e23152d
--- /dev/null
@@ -0,0 +1,85 @@
+# coredumpctl(1) completion                       -*- shell-script -*-
+#
+# This file is part of systemd.
+#
+# Copyright 2010 Ran Benita
+#
+# systemd is free software; you can redistribute it and/or modify it
+# under the terms of the GNU Lesser General Public License as published by
+# the Free Software Foundation; either version 2.1 of the License, or
+# (at your option) any later version.
+#
+# systemd is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public License
+# along with systemd; If not, see <http://www.gnu.org/licenses/>.
+
+__contains_word () {
+        local w word=$1; shift
+        for w in "$@"; do
+                [[ $w = "$word" ]] && return
+        done
+}
+
+__journal_fields=(MESSAGE{,_ID} PRIORITY CODE_{FILE,LINE,FUNC}
+                  ERRNO SYSLOG_{FACILITY,IDENTIFIER,PID} COREDUMP_EXE
+                  _{P,U,G}ID _COMM _EXE _CMDLINE
+                  _AUDIT_{SESSION,LOGINUID}
+                  _SYSTEMD_{CGROUP,SESSION,UNIT,OWNER_UID}
+                  _SELINUX_CONTEXT _SOURCE_REALTIME_TIMESTAMP
+                  _{BOOT,MACHINE}_ID _HOSTNAME _TRANSPORT
+                  _KERNEL_{DEVICE,SUBSYSTEM}
+                  _UDEV_{SYSNAME,DEVNODE,DEVLINK}
+                  __CURSOR __{REALTIME,MONOTONIC}_TIMESTAMP)
+_coredumpctl() {
+        local i verb comps
+        local cur=${COMP_WORDS[COMP_CWORD]} prev=${COMP_WORDS[COMP_CWORD-1]}
+        local OPTS='-h --help --version --no-pager --no-legend -o --output -F --field'
+
+        local -A VERBS=(
+            [LIST]='list'
+            [DUMP]='dump gdb'
+        )
+
+        if __contains_word "$prev" '--output -o'; then
+                comps=$( compgen -A file -- "$cur" )
+                compopt -o filenames
+        elif __contains_word "$prev" '--FIELD -F'; then
+                comps=$( compgen -W '${__journal_fields[*]}' -- "$cur" )
+        elif [[ $cur = -* ]]; then
+                comps=${OPTS}
+        elif __contains_word "$prev" ${VERBS[*]} &&
+           ! __contains_word ${COMP_WORDS[COMP_CWORD-2]} '--output -o -F --field'; then
+                compopt -o nospace
+                COMPREPLY=( $(compgen -W '${__journal_fields[*]}' -S= -- "$cur") )
+               return 0
+        elif [[ $cur = *=* ]]; then
+                mapfile -t field_vals < <(coredumpctl -F "${prev%=}" 2>/dev/null)
+                COMPREPLY=( $(compgen -W '${field_vals[*]}' -- "${cur#=}") )
+                return 0
+        elif [[ $prev = '=' ]]; then
+                mapfile -t field_vals < <(coredumpctl -F "${COMP_WORDS[COMP_CWORD-2]}" 2>/dev/null)
+                comps=${field_vals[*]}
+        else
+                for ((i=0; i <= COMP_CWORD; i++)); do
+                        if __contains_word "${COMP_WORDS[i]}" ${VERBS[*]}; then
+                                verb=${COMP_WORDS[i]}
+                                break
+                        fi
+                done
+
+                if [[ -z $verb ]]; then
+                        comps=${VERBS[*]}
+                elif __contains_word "$verb" ${VERBS[LIST]} ${VERBS[DUMP]}; then
+                        comps=''
+                fi
+        fi
+
+        COMPREPLY=( $(compgen -W '$comps' -- "$cur") )
+        return 0
+}
+
+complete -F _coredumpctl coredumpctl
diff --git a/shell-completion/bash/systemd-coredumpctl b/shell-completion/bash/systemd-coredumpctl
deleted file mode 100644 (file)
index 805e848..0000000
+++ /dev/null
@@ -1,85 +0,0 @@
-# systemd-coredumpctl(1) completion                       -*- shell-script -*-
-#
-# This file is part of systemd.
-#
-# Copyright 2010 Ran Benita
-#
-# systemd is free software; you can redistribute it and/or modify it
-# under the terms of the GNU Lesser General Public License as published by
-# the Free Software Foundation; either version 2.1 of the License, or
-# (at your option) any later version.
-#
-# systemd is distributed in the hope that it will be useful, but
-# WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-# General Public License for more details.
-#
-# You should have received a copy of the GNU Lesser General Public License
-# along with systemd; If not, see <http://www.gnu.org/licenses/>.
-
-__contains_word () {
-        local w word=$1; shift
-        for w in "$@"; do
-                [[ $w = "$word" ]] && return
-        done
-}
-
-__journal_fields=(MESSAGE{,_ID} PRIORITY CODE_{FILE,LINE,FUNC}
-                  ERRNO SYSLOG_{FACILITY,IDENTIFIER,PID} COREDUMP_EXE
-                  _{P,U,G}ID _COMM _EXE _CMDLINE
-                  _AUDIT_{SESSION,LOGINUID}
-                  _SYSTEMD_{CGROUP,SESSION,UNIT,OWNER_UID}
-                  _SELINUX_CONTEXT _SOURCE_REALTIME_TIMESTAMP
-                  _{BOOT,MACHINE}_ID _HOSTNAME _TRANSPORT
-                  _KERNEL_{DEVICE,SUBSYSTEM}
-                  _UDEV_{SYSNAME,DEVNODE,DEVLINK}
-                  __CURSOR __{REALTIME,MONOTONIC}_TIMESTAMP)
-_coredumpctl() {
-        local i verb comps
-        local cur=${COMP_WORDS[COMP_CWORD]} prev=${COMP_WORDS[COMP_CWORD-1]}
-        local OPTS='-h --help --version --no-pager --no-legend -o --output -F --field'
-
-        local -A VERBS=(
-            [LIST]='list'
-            [DUMP]='dump gdb'
-        )
-
-        if __contains_word "$prev" '--output -o'; then
-                comps=$( compgen -A file -- "$cur" )
-                compopt -o filenames
-        elif __contains_word "$prev" '--FIELD -F'; then
-                comps=$( compgen -W '${__journal_fields[*]}' -- "$cur" )
-        elif [[ $cur = -* ]]; then
-                comps=${OPTS}
-        elif __contains_word "$prev" ${VERBS[*]} &&
-           ! __contains_word ${COMP_WORDS[COMP_CWORD-2]} '--output -o -F --field'; then
-                compopt -o nospace
-                COMPREPLY=( $(compgen -W '${__journal_fields[*]}' -S= -- "$cur") )
-               return 0
-        elif [[ $cur = *=* ]]; then
-                mapfile -t field_vals < <(systemd-coredumpctl -F "${prev%=}" 2>/dev/null)
-                COMPREPLY=( $(compgen -W '${field_vals[*]}' -- "${cur#=}") )
-                return 0
-        elif [[ $prev = '=' ]]; then
-                mapfile -t field_vals < <(systemd-coredumpctl -F "${COMP_WORDS[COMP_CWORD-2]}" 2>/dev/null)
-                comps=${field_vals[*]}
-        else
-                for ((i=0; i <= COMP_CWORD; i++)); do
-                        if __contains_word "${COMP_WORDS[i]}" ${VERBS[*]}; then
-                                verb=${COMP_WORDS[i]}
-                                break
-                        fi
-                done
-
-                if [[ -z $verb ]]; then
-                        comps=${VERBS[*]}
-                elif __contains_word "$verb" ${VERBS[LIST]} ${VERBS[DUMP]}; then
-                        comps=''
-                fi
-        fi
-
-        COMPREPLY=( $(compgen -W '$comps' -- "$cur") )
-        return 0
-}
-
-complete -F _coredumpctl systemd-coredumpctl
diff --git a/shell-completion/zsh/_coredumpctl b/shell-completion/zsh/_coredumpctl
new file mode 100644 (file)
index 0000000..d13bc70
--- /dev/null
@@ -0,0 +1,36 @@
+#compdef coredumpctl
+
+_coredumpctl_command(){
+    local -a _coredumpctl_cmds
+    _coredumpctl_cmds=(
+            'list:List available coredumps'
+            'dump:Print coredump to stdout'
+            'gdb:Start gdb on a coredump'
+    )
+    if (( CURRENT == 1 )); then
+        _describe -t commands 'coredumpctl command' _coredumpctl_cmds
+    else
+        local curcontext="$curcontext"
+        local -a _dumps
+        cmd="${${_coredumpctl_cmds[(r)$words[1]:*]%%:*}}"
+        if (( $#cmd  )); then
+            # user can set zstyle ':completion:*:*:coredumpctl:*' sort no for coredumps to be ordered by date, otherwise they get ordered by pid
+            _dumps=( "${(foa)$(coredumpctl list | awk 'BEGIN{OFS=":"} /^\s/ {sub(/[[ \t]+/, ""); print $5,$0}' 2>/dev/null)}" )
+            if [[ -n "$_dumps" ]]; then
+                _describe -t pids 'coredumps' _dumps
+            else
+                _message "no coredumps"
+            fi
+        else
+            _message "no more options"
+        fi
+    fi
+}
+
+_arguments \
+    {-o+,--output=}'[Write output to FILE]:output file:_files' \
+    {-F+,--field=}'[Show field in list output]:field' \
+    '--no-pager[Do not pipe output into a pager]' \
+    {-h,--help}'[Show this help]' \
+    '--version[Show package version]' \
+    '*::coredumpctl commands:_coredumpctl_command'
diff --git a/shell-completion/zsh/_systemd-coredumpctl b/shell-completion/zsh/_systemd-coredumpctl
deleted file mode 100644 (file)
index 94b1e92..0000000
+++ /dev/null
@@ -1,36 +0,0 @@
-#compdef systemd-coredumpctl
-
-_systemd-coredumpctl_command(){
-    local -a _systemd_coredumpctl_cmds
-    _systemd_coredumpctl_cmds=(
-            'list:List available coredumps'
-            'dump:Print coredump to stdout'
-            'gdb:Start gdb on a coredump'
-    )
-    if (( CURRENT == 1 )); then
-        _describe -t commands 'systemd-coredumpctl command' _systemd_coredumpctl_cmds
-    else
-        local curcontext="$curcontext"
-        local -a _dumps
-        cmd="${${_systemd_coredumpctl_cmds[(r)$words[1]:*]%%:*}}"
-        if (( $#cmd  )); then
-            # user can set zstyle ':completion:*:*:systemd-coredumpctl:*' sort no for coredumps to be ordered by date, otherwise they get ordered by pid
-            _dumps=( "${(foa)$(systemd-coredumpctl list | awk 'BEGIN{OFS=":"} /^\s/ {sub(/[[ \t]+/, ""); print $5,$0}' 2>/dev/null)}" )
-            if [[ -n "$_dumps" ]]; then
-                _describe -t pids 'coredumps' _dumps
-            else
-                _message "no coredumps"
-            fi
-        else
-            _message "no more options"
-        fi
-    fi
-}
-
-_arguments \
-    {-o+,--output=}'[Write output to FILE]:output file:_files' \
-    {-F+,--field=}'[Show field in list output]:field' \
-    '--no-pager[Do not pipe output into a pager]' \
-    {-h,--help}'[Show this help]' \
-    '--version[Show package version]' \
-    '*::systemd-coredumpctl commands:_systemd-coredumpctl_command'
index 958a668acaae93010d977e1a01f78b78133ed769..01a5bf18ef7342187535e418db1a485c893dfda7 100644 (file)
@@ -386,10 +386,10 @@ int main(int argc, char *argv[]) {
                 if (sysfd < 0)
                         sysfd = open("/sys", O_RDONLY|O_CLOEXEC);
 
-                if (!build)
-                        parse_env_file("/etc/os-release", NEWLINE,
-                                       "PRETTY_NAME", &build,
-                                       NULL);
+                if (!build) {
+                        if (parse_env_file("/etc/os-release", NEWLINE, "PRETTY_NAME", &build, NULL) == -ENOENT)
+                                parse_env_file("/usr/lib/os-release", NEWLINE, "PRETTY_NAME", &build, NULL);
+                }
 
                 /* wait for /proc to become available, discarding samples */
                 if (graph_start <= 0.0)
index a53f98a941fea55d7fe980e144dde85ceb6d9623..bf6636cab1d8c26b0c2f9d12a2baac7869faf863 100644 (file)
@@ -80,6 +80,8 @@ static void svg_header(void) {
         double h;
         struct list_sample_data *sampledata_last;
 
+        assert(head);
+
         sampledata = head;
         LIST_FIND_TAIL(link, sampledata, head);
         sampledata_last = head;
@@ -123,6 +125,7 @@ static void svg_header(void) {
         svg("<defs>\n  <style type=\"text/css\">\n    <![CDATA[\n");
 
         svg("      rect       { stroke-width: 1; }\n");
+        svg("      rect.bg    { fill: rgb(255,255,255); }\n");
         svg("      rect.cpu   { fill: rgb(64,64,240); stroke-width: 0; fill-opacity: 0.7; }\n");
         svg("      rect.wait  { fill: rgb(240,240,0); stroke-width: 0; fill-opacity: 0.7; }\n");
         svg("      rect.bi    { fill: rgb(240,128,128); stroke-width: 0; fill-opacity: 0.7; }\n");
@@ -1270,6 +1273,7 @@ void svg_do(const char *build) {
 
         /* after this, we can draw the header with proper sizing */
         svg_header();
+        svg("<rect class=\"bg\" width=\"100%%\" height=\"100%%\" />\n\n");
 
         svg("<g transform=\"translate(10,400)\">\n");
         svg_io_bi_bar();
index c23d394cb2c74d86d94cb961613cd5b70c409457..3f1d7557c178a53493ad4f3755612cd433ec97b7 100644 (file)
@@ -155,7 +155,10 @@ static int file_load(Policy *p, const char *path) {
                                 else if (streq(name, "group"))
                                         state = STATE_POLICY_GROUP;
                                 else {
-                                        log_warning("Attribute %s of <policy> tag unknown at %s:%u, ignoring.", name, path, line);
+                                        if (streq(name, "at_console"))
+                                                log_debug("Attribute %s of <policy> tag unsupported at %s:%u, ignoring.", name, path, line);
+                                        else
+                                                log_warning("Attribute %s of <policy> tag unknown at %s:%u, ignoring.", name, path, line);
                                         state = STATE_POLICY_OTHER_ATTRIBUTE;
                                 }
                         } else if (t == XML_TAG_CLOSE_EMPTY ||
@@ -268,7 +271,12 @@ static int file_load(Policy *p, const char *path) {
                                         ic = POLICY_ITEM_USER;
                                 else if (streq(name, "group"))
                                         ic = POLICY_ITEM_GROUP;
-                                else {
+                                else if (streq(name, "eavesdrop")) {
+                                        log_debug("Unsupported attribute %s= at %s:%u, ignoring.", name, path, line);
+                                        i->class = POLICY_ITEM_IGNORE;
+                                        state = STATE_ALLOW_DENY_OTHER_ATTRIBUTE;
+                                        break;
+                                } else {
                                         log_error("Unknown attribute %s= at %s:%u, ignoring.", name, path, line);
                                         state = STATE_ALLOW_DENY_OTHER_ATTRIBUTE;
                                         break;
@@ -303,7 +311,10 @@ static int file_load(Policy *p, const char *path) {
                                                  (streq(u, "sender") && ic == POLICY_ITEM_RECV))
                                                 state = STATE_ALLOW_DENY_NAME;
                                         else {
-                                                log_error("Unknown attribute %s= at %s:%u, ignoring.", name, path, line);
+                                                if (streq(u, "requested_reply"))
+                                                        log_debug("Unsupported attribute %s= at %s:%u, ignoring.", name, path, line);
+                                                else
+                                                        log_error("Unknown attribute %s= at %s:%u, ignoring.", name, path, line);
                                                 state = STATE_ALLOW_DENY_OTHER_ATTRIBUTE;
                                                 break;
                                         }
index bad4256a33a4cace2cb055212efd86b614409f7e..a6ff5c37f60f6f2dd0fd814bbb83c96c0b17ea0a 100644 (file)
@@ -42,6 +42,7 @@ typedef enum PolicyItemClass {
         POLICY_ITEM_OWN_PREFIX,
         POLICY_ITEM_USER,
         POLICY_ITEM_GROUP,
+        POLICY_ITEM_IGNORE,
         _POLICY_ITEM_CLASS_MAX,
         _POLICY_ITEM_CLASS_INVALID = -1,
 } PolicyItemClass;
index 07995ec83255c6147793a6e341045fbc1554e678..79dbdcf363a024b9057fdbe76b644cb7bbaf6976 100644 (file)
@@ -47,7 +47,7 @@
 #include "capability.h"
 #include "bus-policy.h"
 
-static const char *arg_address = KERNEL_SYSTEM_BUS_PATH;
+static char *arg_address = NULL;
 static char *arg_command_line_buffer = NULL;
 static bool arg_drop_privileges = false;
 static char **arg_configuration = NULL;
@@ -60,8 +60,9 @@ static int help(void) {
                "     --version            Show package version\n"
                "     --drop-privileges    Drop privileges\n"
                "     --configuration=PATH Configuration file or directory\n"
+               "     --machine=MACHINE    Connect to specified machine\n"
                "     --address=ADDRESS    Connect to the bus specified by ADDRESS\n"
-               "                         (default: " KERNEL_SYSTEM_BUS_PATH ")\n",
+               "                          (default: " DEFAULT_SYSTEM_BUS_PATH ")\n",
                program_invocation_short_name);
 
         return 0;
@@ -74,6 +75,7 @@ static int parse_argv(int argc, char *argv[]) {
                 ARG_ADDRESS,
                 ARG_DROP_PRIVILEGES,
                 ARG_CONFIGURATION,
+                ARG_MACHINE,
         };
 
         static const struct option options[] = {
@@ -82,7 +84,8 @@ static int parse_argv(int argc, char *argv[]) {
                 { "address",         required_argument, NULL, ARG_ADDRESS         },
                 { "drop-privileges", no_argument,       NULL, ARG_DROP_PRIVILEGES },
                 { "configuration",   required_argument, NULL, ARG_CONFIGURATION   },
-                { NULL,              0,                 NULL, 0                   },
+                { "machine",         required_argument, NULL, ARG_MACHINE         },
+                {},
         };
 
         int c, r;
@@ -103,9 +106,17 @@ static int parse_argv(int argc, char *argv[]) {
                         puts(SYSTEMD_FEATURES);
                         return 0;
 
-                case ARG_ADDRESS:
-                        arg_address = optarg;
+                case ARG_ADDRESS: {
+                        char *a;
+
+                        a = strdup(optarg);
+                        if (!a)
+                                return log_oom();
+
+                        free(arg_address);
+                        arg_address = a;
                         break;
+                }
 
                 case ARG_DROP_PRIVILEGES:
                         arg_drop_privileges = true;
@@ -117,6 +128,28 @@ static int parse_argv(int argc, char *argv[]) {
                                 return log_oom();
                         break;
 
+                case ARG_MACHINE: {
+                        _cleanup_free_ char *e = NULL;
+                        char *a;
+
+                        e = bus_address_escape(optarg);
+                        if (!e)
+                                return log_oom();
+
+#ifdef ENABLE_KDBUS
+                        a = strjoin("x-container-kernel:machine=", e, ";x-container-unix:machine=", e, NULL);
+#else
+                        a = strjoin("x-container-unix:machine=", e, NULL);
+#endif
+                        if (!a)
+                                return log_oom();
+
+                        free(arg_address);
+                        arg_address = a;
+
+                        break;
+                }
+
                 case '?':
                         return -EINVAL;
 
@@ -129,12 +162,17 @@ static int parse_argv(int argc, char *argv[]) {
          * we'll write who we are talking to into it, so that "ps" is
          * explanatory */
         arg_command_line_buffer = argv[optind];
-        if (argc > optind + 1 ||
-            (arg_command_line_buffer && arg_command_line_buffer[strspn(arg_command_line_buffer, "x")] != 0)) {
+        if (argc > optind + 1 || (arg_command_line_buffer && !in_charset(arg_command_line_buffer, "x"))) {
                 log_error("Too many arguments");
                 return -EINVAL;
         }
 
+        if (!arg_address) {
+                arg_address = strdup(DEFAULT_SYSTEM_BUS_PATH);
+                if (!arg_address)
+                        return log_oom();
+        }
+
         return 1;
 }
 
@@ -281,6 +319,9 @@ static int process_policy(sd_bus *a, sd_bus *b, sd_bus_message *m) {
         assert(b);
         assert(m);
 
+        if (!a->is_kernel)
+                return 0;
+
         if (!sd_bus_message_is_method_call(m, "org.freedesktop.DBus.Properties", "GetAll"))
                 return 0;
 
@@ -467,6 +508,9 @@ static int process_driver(sd_bus *a, sd_bus *b, sd_bus_message *m) {
         assert(b);
         assert(m);
 
+        if (!a->is_kernel)
+                return 0;
+
         if (!streq_ptr(sd_bus_message_get_destination(m), "org.freedesktop.DBus"))
                 return 0;
 
@@ -1433,9 +1477,12 @@ int main(int argc, char *argv[]) {
 finish:
         sd_bus_flush(a);
         sd_bus_flush(b);
+        sd_bus_close(a);
+        sd_bus_close(b);
 
         policy_free(&policy);
         strv_free(arg_configuration);
+        free(arg_address);
 
         return r < 0 ? EXIT_FAILURE : EXIT_SUCCESS;
 }
index bec9b59260ffb73d0b34ddebc3ebee99b8036086..052ac8ffca3395943fa18f79f80252478cf08149 100644 (file)
@@ -130,7 +130,7 @@ static int parse_argv(int argc, char *argv[]) {
 int main(int argc, char *argv[]) {
         int r = 0, retval = EXIT_FAILURE;
         int output_flags;
-        char _cleanup_free_ *root = NULL;
+        _cleanup_free_ char *root = NULL;
         _cleanup_bus_unref_ sd_bus *bus = NULL;
 
         log_parse_environment();
index 65e6d6f179219aba14996e61b9f59c226e9e021b..73a8ce17e4a7052e1e29c38cfdcb08696b7ac064 100644 (file)
@@ -144,7 +144,7 @@ static int automount_add_default_dependencies(Automount *a) {
 
 static int automount_verify(Automount *a) {
         bool b;
-        char *e;
+        _cleanup_free_ char *e = NULL;
         assert(a);
 
         if (UNIT(a)->load_state != UNIT_LOADED)
@@ -160,7 +160,6 @@ static int automount_verify(Automount *a) {
                 return -ENOMEM;
 
         b = unit_has_name(UNIT(a), e);
-        free(e);
 
         if (!b) {
                 log_error_unit(UNIT(a)->id, "%s's Where setting doesn't match unit name. Refusing.", UNIT(a)->id);
index 275241507f2107ae77ab61b1585f9718303cbd67..d2c926b471b4061965283e00f4af075c19e98a85 100644 (file)
@@ -501,7 +501,7 @@ static void busname_enter_making(BusName *n) {
                 goto fail;
 
         if (n->policy) {
-                /* If there's a policy we need to resolve user/group
+                /* If there is a policy, we need to resolve user/group
                  * names, which we can't do from PID1, hence let's
                  * fork. */
                 busname_unwatch_control_pid(n);
@@ -514,7 +514,7 @@ static void busname_enter_making(BusName *n) {
 
                 busname_set_state(n, BUSNAME_MAKING);
         } else {
-                /* If there's no policy then we can do everything
+                /* If there is no policy, we can do everything
                  * directly from PID 1, hence do so. */
 
                 r = bus_kernel_make_starter(n->starter_fd, n->name, n->activating, n->accept_fd, NULL, n->policy_world);
index 24684580a8326c420f742ffe48469eaa1360285f..410fb36797808757f39bcf71fca52af994a6629f 100644 (file)
@@ -27,7 +27,7 @@
 #include <sys/statvfs.h>
 #include <fnmatch.h>
 
-#include <systemd/sd-id128.h>
+#include "sd-id128.h"
 #include "util.h"
 #include "condition.h"
 #include "virt.h"
@@ -52,12 +52,13 @@ static bool condition_test_security(Condition *c) {
                 return use_ima() == !c->negate;
         if (streq(c->parameter, "smack"))
                 return use_smack() == !c->negate;
+
         return c->negate;
 }
 
 static bool condition_test_capability(Condition *c) {
+        _cleanup_fclose_ FILE *f = NULL;
         cap_value_t value;
-        FILE *f;
         char line[LINE_MAX];
         unsigned long long capabilities = -1;
 
@@ -86,11 +87,39 @@ static bool condition_test_capability(Condition *c) {
                 }
         }
 
-        fclose(f);
-
         return !!(capabilities & (1ULL << value)) == !c->negate;
 }
 
+static bool condition_test_needs_update(Condition *c) {
+        const char *p;
+        struct stat usr, other;
+
+        assert(c);
+        assert(c->parameter);
+        assert(c->type == CONDITION_NEEDS_UPDATE);
+
+        /* If the file system is read-only we shouldn't suggest an update */
+        if (path_is_read_only_fs(c->parameter) > 0)
+                return c->negate;
+
+        /* Any other failure means we should allow the condition to be true,
+         * so that we rather invoke too many update tools then too
+         * few. */
+
+        if (!path_is_absolute(c->parameter))
+                return !c->negate;
+
+        p = strappenda(c->parameter, "/.updated");
+        if (lstat(p, &other) < 0)
+                return !c->negate;
+
+        if (lstat("/usr/", &usr) < 0)
+                return !c->negate;
+
+        return (usr.st_mtim.tv_sec > other.st_mtim.tv_sec ||
+                (usr.st_mtim.tv_sec == other.st_mtim.tv_sec && usr.st_mtim.tv_nsec > other.st_mtim.tv_nsec)) == !c->negate;
+}
+
 static bool condition_test(Condition *c) {
         assert(c);
 
@@ -170,6 +199,9 @@ static bool condition_test(Condition *c) {
         case CONDITION_ARCHITECTURE:
                 return condition_test_architecture(c);
 
+        case CONDITION_NEEDS_UPDATE:
+                return condition_test_needs_update(c);
+
         case CONDITION_NULL:
                 return !c->negate;
 
index cb9a077d0e45d67cf3c5eae384092ed436335b04..ecbadd765b5bdebb45d38057322881c8502021be 100644 (file)
@@ -848,7 +848,7 @@ int bus_exec_context_set_transient_property(
                         strv_free(c->environment);
                         c->environment = e;
 
-                        joined = strv_join(c->environment, " ");
+                        joined = strv_join_quoted(c->environment);
                         if (!joined)
                                 return -ENOMEM;
 
index 333c1d46e768928dafb813bcf95d05869fe0c7d9..ffef0c7d05813b5c058eba116a3a92953c9df06f 100644 (file)
@@ -1191,7 +1191,7 @@ static int method_switch_root(sd_bus *bus, sd_bus_message *message, void *userda
         /* Safety check */
         if (isempty(init)) {
                 if (! path_is_os_tree(root))
-                        return sd_bus_error_setf(error, SD_BUS_ERROR_INVALID_ARGS, "Specified switch root path %s does not seem to be an OS tree. /etc/os-release is missing.", root);
+                        return sd_bus_error_setf(error, SD_BUS_ERROR_INVALID_ARGS, "Specified switch root path %s does not seem to be an OS tree. os-release file is missing.", root);
         } else {
                 _cleanup_free_ char *p = NULL;
 
@@ -1487,8 +1487,8 @@ fail:
 static int method_enable_unit_files_generic(
                 sd_bus *bus,
                 sd_bus_message *message,
-                Manager *m, const
-                char *verb,
+                Manager *m,
+                const char *verb,
                 int (*call)(UnitFileScope scope, bool runtime, const char *root_dir, char *files[], bool force, UnitFileChange **changes, unsigned *n_changes),
                 bool carries_install_info,
                 sd_bus_error *error) {
@@ -1510,6 +1510,10 @@ static int method_enable_unit_files_generic(
         if (r < 0)
                 return r;
 
+        r = sd_bus_message_read(message, "bb", &runtime, &force);
+        if (r < 0)
+                return r;
+
 #ifdef HAVE_SELINUX
         STRV_FOREACH(i, l) {
                 Unit *u;
@@ -1523,10 +1527,6 @@ static int method_enable_unit_files_generic(
         }
 #endif
 
-        r = sd_bus_message_read(message, "bb", &runtime, &force);
-        if (r < 0)
-                return r;
-
         scope = m->running_as == SYSTEMD_SYSTEM ? UNIT_FILE_SYSTEM : UNIT_FILE_USER;
 
         r = call(scope, runtime, NULL, l, force, &changes, &n_changes);
@@ -1548,14 +1548,74 @@ static int method_link_unit_files(sd_bus *bus, sd_bus_message *message, void *us
         return method_enable_unit_files_generic(bus, message, userdata, "enable", unit_file_link, false, error);
 }
 
+static int unit_file_preset_without_mode(UnitFileScope scope, bool runtime, const char *root_dir, char **files, bool force, UnitFileChange **changes, unsigned *n_changes) {
+        return unit_file_preset(scope, runtime, root_dir, files, UNIT_FILE_PRESET_FULL, force, changes, n_changes);
+}
+
 static int method_preset_unit_files(sd_bus *bus, sd_bus_message *message, void *userdata, sd_bus_error *error) {
-        return method_enable_unit_files_generic(bus, message, userdata, "enable", unit_file_preset, true, error);
+        return method_enable_unit_files_generic(bus, message, userdata, "enable", unit_file_preset_without_mode, true, error);
 }
 
 static int method_mask_unit_files(sd_bus *bus, sd_bus_message *message, void *userdata, sd_bus_error *error) {
         return method_enable_unit_files_generic(bus, message, userdata, "disable", unit_file_mask, false, error);
 }
 
+static int method_preset_unit_files_with_mode(sd_bus *bus, sd_bus_message *message, void *userdata, sd_bus_error *error) {
+
+        _cleanup_strv_free_ char **l = NULL;
+#ifdef HAVE_SELINUX
+        char **i;
+#endif
+        UnitFileChange *changes = NULL;
+        unsigned n_changes = 0;
+        Manager *m = userdata;
+        UnitFilePresetMode mm;
+        UnitFileScope scope;
+        int runtime, force, r;
+        const char *mode;
+
+        assert(bus);
+        assert(message);
+        assert(m);
+
+        r = sd_bus_message_read_strv(message, &l);
+        if (r < 0)
+                return r;
+
+        r = sd_bus_message_read(message, "sbb", &mode, &runtime, &force);
+        if (r < 0)
+                return r;
+
+        if (isempty(mode))
+                mm = UNIT_FILE_PRESET_FULL;
+        else {
+                mm = unit_file_preset_mode_from_string(mode);
+                if (mm < 0)
+                        return -EINVAL;
+        }
+
+#ifdef HAVE_SELINUX
+        STRV_FOREACH(i, l) {
+                Unit *u;
+
+                u = manager_get_unit(m, *i);
+                if (u) {
+                        r = selinux_unit_access_check(u, message, "enable", error);
+                        if (r < 0)
+                                return r;
+                }
+        }
+#endif
+
+        scope = m->running_as == SYSTEMD_SYSTEM ? UNIT_FILE_SYSTEM : UNIT_FILE_USER;
+
+        r = unit_file_preset(scope, runtime, NULL, l, mm, force, &changes, &n_changes);
+        if (r < 0)
+                return r;
+
+        return reply_unit_file_changes_and_free(m, bus, message, r, changes, n_changes);
+}
+
 static int method_disable_unit_files_generic(
                 sd_bus *bus,
                 sd_bus_message *message,
@@ -1632,6 +1692,44 @@ static int method_set_default_target(sd_bus *bus, sd_bus_message *message, void
         return reply_unit_file_changes_and_free(m, bus, message, -1, changes, n_changes);
 }
 
+static int method_preset_all_unit_files(sd_bus *bus, sd_bus_message *message, void *userdata, sd_bus_error *error) {
+        UnitFileChange *changes = NULL;
+        unsigned n_changes = 0;
+        Manager *m = userdata;
+        UnitFilePresetMode mm;
+        UnitFileScope scope;
+        const char *mode;
+        int force, runtime, r;
+
+        assert(bus);
+        assert(message);
+        assert(m);
+
+        r = selinux_access_check(message, "enable", error);
+        if (r < 0)
+                return r;
+
+        r = sd_bus_message_read(message, "sbb", &mode, &runtime, &force);
+        if (r < 0)
+                return r;
+
+        if (isempty(mode))
+                mm = UNIT_FILE_PRESET_FULL;
+        else {
+                mm = unit_file_preset_mode_from_string(mode);
+                if (mm < 0)
+                        return -EINVAL;
+        }
+
+        scope = m->running_as == SYSTEMD_SYSTEM ? UNIT_FILE_SYSTEM : UNIT_FILE_USER;
+
+        r = unit_file_preset_all(scope, runtime, NULL, mm, force, &changes, &n_changes);
+        if (r < 0)
+                return r;
+
+        return reply_unit_file_changes_and_free(m, bus, message, -1, changes, n_changes);
+}
+
 const sd_bus_vtable bus_manager_vtable[] = {
         SD_BUS_VTABLE_START(0),
 
@@ -1716,10 +1814,12 @@ const sd_bus_vtable bus_manager_vtable[] = {
         SD_BUS_METHOD("ReenableUnitFiles", "asbb", "ba(sss)", method_reenable_unit_files, 0),
         SD_BUS_METHOD("LinkUnitFiles", "asbb", "a(sss)", method_link_unit_files, 0),
         SD_BUS_METHOD("PresetUnitFiles", "asbb", "ba(sss)", method_preset_unit_files, 0),
+        SD_BUS_METHOD("PresetUnitFilesWithMode", "assbb", "ba(sss)", method_preset_unit_files_with_mode, 0),
         SD_BUS_METHOD("MaskUnitFiles", "asbb", "a(sss)", method_mask_unit_files, 0),
         SD_BUS_METHOD("UnmaskUnitFiles", "asb", "a(sss)", method_unmask_unit_files, 0),
         SD_BUS_METHOD("SetDefaultTarget", "sb", "a(sss)", method_set_default_target, 0),
         SD_BUS_METHOD("GetDefaultTarget", NULL, "s", method_get_default_target, SD_BUS_VTABLE_UNPRIVILEGED),
+        SD_BUS_METHOD("PresetAllUnitFiles", "sbb", "a(sss)", method_preset_all_unit_files, 0),
 
         SD_BUS_SIGNAL("UnitNew", "so", 0),
         SD_BUS_SIGNAL("UnitRemoved", "so", 0),
index e27019d71a014974f83f3ee0f4c4743bfef94f96..53fe4edc34d998437263a736cbdf8031c49f3037 100644 (file)
@@ -117,6 +117,7 @@ const sd_bus_vtable bus_mount_vtable[] = {
         SD_BUS_PROPERTY("TimeoutUSec", "t", bus_property_get_usec, offsetof(Mount, timeout_usec), SD_BUS_VTABLE_PROPERTY_CONST),
         SD_BUS_PROPERTY("ControlPID", "u", bus_property_get_pid, offsetof(Mount, control_pid), SD_BUS_VTABLE_PROPERTY_EMITS_CHANGE),
         SD_BUS_PROPERTY("DirectoryMode", "u", bus_property_get_mode, offsetof(Mount, directory_mode), SD_BUS_VTABLE_PROPERTY_CONST),
+        SD_BUS_PROPERTY("SloppyOptions", "b", bus_property_get_bool, offsetof(Mount, sloppy_options), SD_BUS_VTABLE_PROPERTY_CONST),
         SD_BUS_PROPERTY("Result", "s", property_get_result, offsetof(Mount, result), SD_BUS_VTABLE_PROPERTY_EMITS_CHANGE),
         BUS_EXEC_COMMAND_VTABLE("ExecMount", offsetof(Mount, exec_command[MOUNT_EXEC_MOUNT]), SD_BUS_VTABLE_PROPERTY_EMITS_INVALIDATION),
         BUS_EXEC_COMMAND_VTABLE("ExecUnmount", offsetof(Mount, exec_command[MOUNT_EXEC_UNMOUNT]), SD_BUS_VTABLE_PROPERTY_EMITS_INVALIDATION),
index 78fb81f7262771d97002512bb3e5ea964bfa0c67..88d094e8cc49e4efef22c3113d0b60298c1eee6f 100644 (file)
@@ -561,7 +561,7 @@ static int restore_confirm_stdio(int *saved_stdin,
 
 static int ask_for_confirmation(char *response, char **argv) {
         int saved_stdout = -1, saved_stdin = -1, r;
-        char *line;
+        _cleanup_free_ char *line = NULL;
 
         r = setup_confirm_stdio(&saved_stdin, &saved_stdout);
         if (r < 0)
@@ -572,7 +572,6 @@ static int ask_for_confirmation(char *response, char **argv) {
                 return -ENOMEM;
 
         r = ask(response, "yns", "Execute %s? [Yes, No, Skip] ", line);
-        free(line);
 
         restore_confirm_stdio(&saved_stdin, &saved_stdout);
 
@@ -2024,7 +2023,7 @@ int exec_context_load_environment(const ExecContext *c, char ***l) {
                         return -EINVAL;
                 }
                 for (n = 0; n < count; n++) {
-                        k = load_env_file(pglob.gl_pathv[n], NULL, &p);
+                        k = load_env_file(NULL, pglob.gl_pathv[n], NULL, &p);
                         if (k < 0) {
                                 if (ignore)
                                         continue;
@@ -2058,8 +2057,8 @@ int exec_context_load_environment(const ExecContext *c, char ***l) {
 }
 
 static bool tty_may_match_dev_console(const char *tty) {
-        char *active = NULL, *console;
-        bool b;
+        _cleanup_free_ char *active = NULL;
+       char *console;
 
         if (startswith(tty, "/dev/"))
                 tty += 5;
@@ -2074,10 +2073,7 @@ static bool tty_may_match_dev_console(const char *tty) {
                 return true;
 
         /* "tty0" means the active VC, so it may be the same sometimes */
-        b = streq(console, tty) || (streq(console, "tty0") && tty_is_vc(tty));
-        free(active);
-
-        return b;
+        return streq(console, tty) || (streq(console, "tty0") && tty_is_vc(tty));
 }
 
 bool exec_context_may_touch_console(ExecContext *ec) {
@@ -2467,10 +2463,10 @@ char *exec_command_line(char **argv) {
 }
 
 void exec_command_dump(ExecCommand *c, FILE *f, const char *prefix) {
-        char *p2;
+        _cleanup_free_ char *p2 = NULL;
         const char *prefix2;
 
-        char *cmd;
+        _cleanup_free_ char *cmd = NULL;
 
         assert(c);
         assert(f);
@@ -2486,11 +2482,7 @@ void exec_command_dump(ExecCommand *c, FILE *f, const char *prefix) {
                 "%sCommand Line: %s\n",
                 prefix, cmd ? cmd : strerror(ENOMEM));
 
-        free(cmd);
-
         exec_status_dump(&c->exec_status, f, prefix2);
-
-        free(p2);
 }
 
 void exec_command_dump_list(ExecCommand *c, FILE *f, const char *prefix) {
index 57ed41c5afe4d2eb62e3adb20562a65f9de10e24..291e1f90eeb192be472f2faf876a04c4e0521093 100644 (file)
@@ -168,7 +168,7 @@ static int killall(int sig, Set *pids, bool send_sighup) {
                         continue;
 
                 if (sig == SIGKILL) {
-                        _cleanup_free_ char *s;
+                        _cleanup_free_ char *s = NULL;
 
                         get_process_comm(pid, &s);
                         log_notice("Sending SIGKILL to PID "PID_FMT" (%s).", pid, strna(s));
@@ -202,7 +202,7 @@ static int killall(int sig, Set *pids, bool send_sighup) {
 
 void broadcast_signal(int sig, bool wait_for_exit, bool send_sighup) {
         sigset_t mask, oldmask;
-        Set *pids = NULL;
+        _cleanup_set_free_ Set *pids = NULL;
 
         if (wait_for_exit)
                 pids = set_new(trivial_hash_func, trivial_compare_func);
@@ -223,6 +223,4 @@ void broadcast_signal(int sig, bool wait_for_exit, bool send_sighup) {
                 wait_for_children(pids, &mask);
 
         assert_se(sigprocmask(SIG_SETMASK, &oldmask, NULL) == 0);
-
-        set_free(pids);
 }
index 0791ae8eadb6e1065b2fb4f85c2fd213299d2845..2f3f60883092d2ebb234a7f373f4318505353b77 100644 (file)
@@ -27,7 +27,7 @@
 
 #include "macro.h"
 #include "execute.h"
-
+#include "capability.h"
 #include "kmod-setup.h"
 
 static void systemd_kmod_log(
@@ -54,6 +54,7 @@ static bool cmdline_check_kdbus(void) {
 }
 
 int kmod_setup(void) {
+
         static const struct {
                 const char *module;
                 const char *path;
@@ -76,6 +77,9 @@ int kmod_setup(void) {
         unsigned int i;
         int r;
 
+        if (have_effective_cap(CAP_SYS_MODULE) == 0)
+                return 0;
+
         for (i = 0; i < ELEMENTSOF(kmod_table); i++) {
                 struct kmod_module *mod;
 
index 2d98bba419b0c01f783069cb011c626d3e4337a5..a7c4469a4623a945639ce9a613feb73c45ae1b60 100644 (file)
@@ -161,6 +161,7 @@ Unit.ConditionPathIsReadWrite,   config_parse_unit_condition_path,   CONDITION_P
 Unit.ConditionDirectoryNotEmpty, config_parse_unit_condition_path,   CONDITION_DIRECTORY_NOT_EMPTY, 0
 Unit.ConditionFileNotEmpty,      config_parse_unit_condition_path,   CONDITION_FILE_NOT_EMPTY,      0
 Unit.ConditionFileIsExecutable,  config_parse_unit_condition_path,   CONDITION_FILE_IS_EXECUTABLE,  0
+Unit.ConditionNeedsUpdate,       config_parse_unit_condition_path,   CONDITION_NEEDS_UPDATE,        0
 Unit.ConditionKernelCommandLine, config_parse_unit_condition_string, CONDITION_KERNEL_COMMAND_LINE, 0
 Unit.ConditionArchitecture,      config_parse_unit_condition_string, CONDITION_ARCHITECTURE,        0
 Unit.ConditionVirtualization,    config_parse_unit_condition_string, CONDITION_VIRTUALIZATION,      0
@@ -193,7 +194,8 @@ Service.PermissionsStartOnly,    config_parse_bool,                  0,
 Service.RootDirectoryStartOnly,  config_parse_bool,                  0,                             offsetof(Service, root_directory_start_only)
 Service.RemainAfterExit,         config_parse_bool,                  0,                             offsetof(Service, remain_after_exit)
 Service.GuessMainPID,            config_parse_bool,                  0,                             offsetof(Service, guess_main_pid)
-Service.RestartPreventExitStatus, config_parse_set_status,           0,                             offsetof(Service, restart_ignore_status)
+Service.RestartPreventExitStatus, config_parse_set_status,           0,                             offsetof(Service, restart_prevent_status)
+Service.RestartForceExitStatus,  config_parse_set_status,            0,                             offsetof(Service, restart_force_status)
 Service.SuccessExitStatus,       config_parse_set_status,            0,                             offsetof(Service, success_status)
 m4_ifdef(`HAVE_SYSV_COMPAT',
 `Service.SysVStartPriority,      config_parse_sysv_priority,         0,                             offsetof(Service, sysv_start_priority)',
@@ -273,6 +275,7 @@ Mount.Options,                   config_parse_string,                0,
 Mount.Type,                      config_parse_string,                0,                             offsetof(Mount, parameters_fragment.fstype)
 Mount.TimeoutSec,                config_parse_sec,                   0,                             offsetof(Mount, timeout_usec)
 Mount.DirectoryMode,             config_parse_mode,                  0,                             offsetof(Mount, directory_mode)
+Mount.SloppyOptions,             config_parse_bool,                  0,                             offsetof(Mount, sloppy_options)
 EXEC_CONTEXT_CONFIG_ITEMS(Mount)m4_dnl
 CGROUP_CONTEXT_CONFIG_ITEMS(Mount)m4_dnl
 KILL_CONTEXT_CONFIG_ITEMS(Mount)m4_dnl
@@ -317,3 +320,4 @@ Install.Alias,                   NULL,                               0,
 Install.WantedBy,                NULL,                               0,                             0
 Install.RequiredBy,              NULL,                               0,                             0
 Install.Also,                    NULL,                               0,                             0
+Install.DefaultInstance,         NULL,                               0,                             0
index 0f5e71b8d3f5b8c1ed66116553938c0f1209f50f..b6894d22ae9f7e60675ad1094ce02c17b3abd609 100644 (file)
@@ -2935,13 +2935,9 @@ int config_parse_set_status(
         assert(rvalue);
         assert(data);
 
+        /* Empty assignment resets the list */
         if (isempty(rvalue)) {
-                /* Empty assignment resets the list */
-
-                set_free(status_set->signal);
-                set_free(status_set->code);
-
-                status_set->signal = status_set->code = NULL;
+                exit_status_set_free(status_set);
                 return 0;
         }
 
@@ -2958,7 +2954,7 @@ int config_parse_set_status(
                         val = signal_from_string_try_harder(temp);
 
                         if (val > 0) {
-                                r = set_ensure_allocated(&status_set->signal, trivial_hash_func, trivial_compare_func);
+                                r = set_ensure_allocated(&status_set->signal, NULL, NULL);
                                 if (r < 0)
                                         return log_oom();
 
@@ -2975,11 +2971,11 @@ int config_parse_set_status(
                         if (val < 0 || val > 255)
                                 log_syntax(unit, LOG_ERR, filename, line, ERANGE, "Value %d is outside range 0-255, ignoring", val);
                         else {
-                                r = set_ensure_allocated(&status_set->code, trivial_hash_func, trivial_compare_func);
+                                r = set_ensure_allocated(&status_set->status, NULL, NULL);
                                 if (r < 0)
                                         return log_oom();
 
-                                r = set_put(status_set->code, INT_TO_PTR(val));
+                                r = set_put(status_set->status, INT_TO_PTR(val));
                                 if (r < 0) {
                                         log_syntax(unit, LOG_ERR, filename, line, -r, "Unable to store: %s", w);
                                         return r;
index 3efcd5fac22b83b0e5d32fc9784e8c0c0ac6092a..f154800484f823fe1628b7a27826b3ab937ffb5c 100644 (file)
@@ -157,18 +157,23 @@ static int generate(char id[34], const char *root) {
 }
 
 int machine_id_setup(const char *root) {
+        const char *etc_machine_id, *run_machine_id;
         _cleanup_close_ int fd = -1;
-        int r;
         bool writable = false;
         struct stat st;
         char id[34]; /* 32 + \n + \0 */
-        char *etc_machine_id, *run_machine_id;
+        int r;
 
-        etc_machine_id = strappenda(root, "/etc/machine-id");
-        path_kill_slashes(etc_machine_id);
+        if (isempty(root))  {
+                etc_machine_id = "/etc/machine-id";
+                run_machine_id = "/run/machine-id";
+        } else {
+                etc_machine_id = strappenda(root, "/etc/machine-id");
+                path_kill_slashes((char*) etc_machine_id);
 
-        run_machine_id = strappenda(root, "/run/machine-id");
-        path_kill_slashes(run_machine_id);
+                run_machine_id = strappenda(root, "/run/machine-id");
+                path_kill_slashes((char*) run_machine_id);
+        }
 
         RUN_WITH_UMASK(0000) {
                 /* We create this 0444, to indicate that this isn't really
@@ -176,6 +181,7 @@ int machine_id_setup(const char *root) {
                  * will be owned by root it doesn't matter much, but maybe
                  * people look. */
 
+                mkdir_parents(etc_machine_id, 0755);
                 fd = open(etc_machine_id, O_RDWR|O_CREAT|O_CLOEXEC|O_NOCTTY, 0444);
                 if (fd >= 0)
                         writable = true;
index 89b48259ad6bbc376c3ba597bee324955555f174..0d5f8949ab52f955adcc265d2d5a7714ce2899fb 100644 (file)
@@ -26,7 +26,9 @@
 %_udevrulesdir @udevrulesdir@
 %_journalcatalogdir @catalogdir@
 %_tmpfilesdir @tmpfilesdir@
+%_sysusersdir @sysusersdir@
 %_sysctldir @sysctldir@
+%_binfmtdir @binfmtdir@
 
 %systemd_requires \
 Requires(post): systemd \
@@ -37,42 +39,54 @@ Requires(postun): systemd \
 %systemd_post() \
 if [ $1 -eq 1 ] ; then \
         # Initial installation \
-        @rootbindir@/systemctl preset %{?*} >/dev/null 2>&1 || : \
+        systemctl preset %{?*} >/dev/null 2>&1 || : \
 fi \
 %{nil}
 
 %systemd_preun() \
 if [ $1 -eq 0 ] ; then \
         # Package removal, not upgrade \
-        @rootbindir@/systemctl --no-reload disable %{?*} > /dev/null 2>&1 || : \
-        @rootbindir@/systemctl stop %{?*} > /dev/null 2>&1 || : \
+        systemctl --no-reload disable %{?*} > /dev/null 2>&1 || : \
+        systemctl stop %{?*} > /dev/null 2>&1 || : \
 fi \
 %{nil}
 
 %systemd_postun() \
-@rootbindir@/systemctl daemon-reload >/dev/null 2>&1 || : \
+systemctl daemon-reload >/dev/null 2>&1 || : \
 %{nil}
 
 %systemd_postun_with_restart() \
-@rootbindir@/systemctl daemon-reload >/dev/null 2>&1 || : \
+systemctl daemon-reload >/dev/null 2>&1 || : \
 if [ $1 -ge 1 ] ; then \
         # Package upgrade, not uninstall \
-        @rootbindir@/systemctl try-restart %{?*} >/dev/null 2>&1 || : \
+        systemctl try-restart %{?*} >/dev/null 2>&1 || : \
 fi \
 %{nil}
 
 %udev_hwdb_update() \
-@rootbindir@/udevadm hwdb --update >/dev/null 2>&1 || : \
+udevadm hwdb --update >/dev/null 2>&1 || : \
 %{nil}
 
 %udev_rules_update() \
-@rootbindir@/udevadm control --reload >/dev/null 2>&1 || : \
+udevadm control --reload >/dev/null 2>&1 || : \
 %{nil}
 
 %journal_catalog_update() \
-@rootbindir@/journalctl --update-catalog >/dev/null 2>&1 || : \
+journalctl --update-catalog >/dev/null 2>&1 || : \
 %{nil}
 
 %tmpfiles_create() \
-@rootbindir@/systemd-tmpfiles --create %{?*} >/dev/null 2>&1 || : \
+systemd-tmpfiles --create %{?*} >/dev/null 2>&1 || : \
+%{nil}
+
+%sysusers_create() \
+systemd-sysusers %{?*} >/dev/null 2>&1 || : \
+%{nil}
+
+%sysctl_apply() \
+@rootlibexecdir@/systemd-sysctl %{?*} >/dev/null 2>&1 || : \
+%{nil}
+
+%binfmt_apply() \
+@rootlibexecdir@/systemd-binfmt %{?*} >/dev/null 2>&1 || : \
 %{nil}
index d5d1ee2b0ceff67aeb66dce923d525d3b41dd34d..38835fc62008a724a4799a396226e51de6d62309 100644 (file)
@@ -286,7 +286,8 @@ static int parse_proc_cmdline_item(const char *key, const char *value) {
 
         } else if (streq(key, "rd.systemd.unit") && value) {
 
-                return set_default_unit(value);
+                if (in_initrd())
+                        return set_default_unit(value);
 
         } else if (streq(key, "systemd.log_target") && value) {
 
@@ -374,49 +375,17 @@ static int parse_proc_cmdline_item(const char *key, const char *value) {
                 } else
                         log_warning("Environment variable name '%s' is not valid. Ignoring.", value);
 
-        } else if (!streq(key, "systemd.restore_state") &&
-                   !streq(key, "systemd.gpt_auto") &&
-                   (startswith(key, "systemd.") || startswith(key, "rd.systemd."))) {
-
-                const char *c;
-
-                /* Ignore systemd.journald.xyz and friends */
-                c = key;
-                if (startswith(c, "rd."))
-                        c += 3;
-                if (startswith(c, "systemd."))
-                        c += 8;
-                if (c[strcspn(c, ".=")] != '.')  {
-
-                        log_warning("Unknown kernel switch %s. Ignoring.", key);
-
-                        log_info("Supported kernel switches:\n"
-                                 "systemd.unit=UNIT                        Default unit to start\n"
-                                 "rd.systemd.unit=UNIT                     Default unit to start when run in initrd\n"
-                                 "systemd.dump_core=0|1                    Dump core on crash\n"
-                                 "systemd.crash_shell=0|1                  Run shell on crash\n"
-                                 "systemd.crash_chvt=N                     Change to VT #N on crash\n"
-                                 "systemd.confirm_spawn=0|1                Confirm every process spawn\n"
-                                 "systemd.show_status=0|1|auto             Show status updates on the console during bootup\n"
-                                 "systemd.log_target=console|kmsg|journal|journal-or-kmsg|syslog|syslog-or-kmsg|null\n"
-                                 "                                         Log target\n"
-                                 "systemd.log_level=LEVEL                  Log level\n"
-                                 "systemd.log_color=0|1                    Highlight important log messages\n"
-                                 "systemd.log_location=0|1                 Include code location in log messages\n"
-                                 "systemd.default_standard_output=null|tty|syslog|syslog+console|kmsg|kmsg+console|journal|journal+console\n"
-                                 "                                         Set default log output for services\n"
-                                 "systemd.default_standard_error=null|tty|syslog|syslog+console|kmsg|kmsg+console|journal|journal+console\n"
-                                 "                                         Set default log error output for services\n"
-                                 "systemd.setenv=ASSIGNMENT                Set an environment variable for all spawned processes\n"
-                                 "systemd.restore_state=0|1                Restore backlight/rfkill state at boot\n");
-                }
-
         } else if (streq(key, "quiet") && !value) {
+
+                log_set_max_level(LOG_NOTICE);
+
                 if (arg_show_status == _SHOW_STATUS_UNSET)
                         arg_show_status = SHOW_STATUS_AUTO;
 
         } else if (streq(key, "debug") && !value) {
+
                 log_set_max_level(LOG_DEBUG);
+
                 if (detect_container(NULL) > 0)
                         log_set_target(LOG_TARGET_CONSOLE);
 
@@ -1151,19 +1120,25 @@ static int bump_rlimit_nofile(struct rlimit *saved_rlimit) {
 }
 
 static void test_mtab(void) {
-        char *p;
 
-        /* Check that /etc/mtab is a symlink */
+        static const char ok[] =
+                "/proc/self/mounts\0"
+                "/proc/mounts\0"
+                "../proc/self/mounts\0"
+                "../proc/mounts\0";
 
-        if (readlink_malloc("/etc/mtab", &p) >= 0) {
-                bool b;
+        _cleanup_free_ char *p = NULL;
+        int r;
 
-                b = streq(p, "/proc/self/mounts") || streq(p, "/proc/mounts");
-                free(p);
+        /* Check that /etc/mtab is a symlink to the right place or
+         * non-existing. But certainly not a file, or a symlink to
+         * some weird place... */
 
-                if (b)
-                        return;
-        }
+        r = readlink_malloc("/etc/mtab", &p);
+        if (r == -ENOENT)
+                return;
+        if (r >= 0 && nulstr_contains(ok, p))
+                return;
 
         log_warning("/etc/mtab is not a symlink or not pointing to /proc/self/mounts. "
                     "This is not supported anymore. "
@@ -1251,9 +1226,15 @@ static int status_welcome(void) {
                            "PRETTY_NAME", &pretty_name,
                            "ANSI_COLOR", &ansi_color,
                            NULL);
+        if (r == -ENOENT) {
+                r = parse_env_file("/usr/lib/os-release", NEWLINE,
+                                   "PRETTY_NAME", &pretty_name,
+                                   "ANSI_COLOR", &ansi_color,
+                                   NULL);
+        }
 
         if (r < 0 && r != -ENOENT)
-                log_warning("Failed to read /etc/os-release: %s", strerror(-r));
+                log_warning("Failed to read os-release file: %s", strerror(-r));
 
         return status_printf(NULL, false, false,
                              "\nWelcome to \x1B[%sm%s\x1B[0m!\n",
@@ -1290,6 +1271,7 @@ int main(int argc, char *argv[]) {
         bool loaded_policy = false;
         bool arm_reboot_watchdog = false;
         bool queue_default_job = false;
+        bool empty_etc = false;
         char *switch_root_dir = NULL, *switch_root_init = NULL;
         static struct rlimit saved_rlimit_nofile = { 0, 0 };
 
@@ -1561,10 +1543,14 @@ int main(int argc, char *argv[]) {
                 if (in_initrd())
                         log_info("Running in initial RAM disk.");
 
+                empty_etc = dir_is_empty("/etc") > 0;
+                if (empty_etc)
+                        log_info("Running with unpopulated /etc.");
         } else {
-                _cleanup_free_ char *t = uid_to_name(getuid());
-                log_debug(PACKAGE_STRING " running in user mode for user "PID_FMT"/%s. (" SYSTEMD_FEATURES ")",
-                          getuid(), t);
+                _cleanup_free_ char *t;
+
+                t = uid_to_name(getuid());
+                log_debug(PACKAGE_STRING " running in user mode for user "UID_FMT"/%s. (" SYSTEMD_FEATURES ")", getuid(), strna(t));
         }
 
         if (arg_running_as == SYSTEMD_SYSTEM && !skip_setup) {
@@ -1572,11 +1558,10 @@ int main(int argc, char *argv[]) {
                         status_welcome();
 
 #ifdef HAVE_KMOD
-                if (detect_container(NULL) <= 0)
-                        kmod_setup();
+                kmod_setup();
 #endif
                 hostname_setup();
-                machine_id_setup("");
+                machine_id_setup(NULL);
                 loopback_setup();
 
                 test_mtab();
@@ -1618,9 +1603,18 @@ int main(int argc, char *argv[]) {
                 }
         }
 
-        if (arg_running_as == SYSTEMD_SYSTEM)
+        if (arg_running_as == SYSTEMD_SYSTEM) {
                 bump_rlimit_nofile(&saved_rlimit_nofile);
 
+                if (empty_etc) {
+                        r = unit_file_preset_all(UNIT_FILE_SYSTEM, false, NULL, UNIT_FILE_PRESET_FULL, false, NULL, 0);
+                        if (r < 0)
+                                log_warning("Failed to populate /etc with preset unit settings, ignoring: %s", strerror(-r));
+                        else
+                                log_info("Populated /etc with preset unit settings.");
+                }
+        }
+
         r = manager_new(arg_running_as, &m);
         if (r < 0) {
                 log_error("Failed to allocate manager object: %s", strerror(-r));
@@ -1831,6 +1825,7 @@ finish:
         if (reexecute) {
                 const char **args;
                 unsigned i, args_size;
+                sigset_t ss;
 
                 /* Close and disarm the watchdog, so that the new
                  * instance can reinitialize it, but doesn't get
@@ -1914,6 +1909,13 @@ finish:
                 args[i++] = NULL;
                 assert(i <= args_size);
 
+                /* reenable any blocked signals, especially important
+                 * if we switch from initial ramdisk to init=... */
+                reset_all_signal_handlers();
+
+                assert_se(sigemptyset(&ss) == 0);
+                assert_se(sigprocmask(SIG_SETMASK, &ss, NULL) == 0);
+
                 if (switch_root_init) {
                         args[0] = switch_root_init;
                         execv(args[0], (char* const*) args);
index ae8447ca4df951d386ea2a1cccec82a3b1adc83a..206f89a30f189b40a0272892a026d443403abe3c 100644 (file)
@@ -67,10 +67,10 @@ typedef struct MountPoint {
 #define N_EARLY_MOUNT 5
 
 static const MountPoint mount_table[] = {
-        { "proc",       "/proc",                     "proc",       NULL, MS_NOSUID|MS_NOEXEC|MS_NODEV,
-          NULL,       MNT_FATAL|MNT_IN_CONTAINER },
         { "sysfs",      "/sys",                      "sysfs",      NULL, MS_NOSUID|MS_NOEXEC|MS_NODEV,
           NULL,       MNT_FATAL|MNT_IN_CONTAINER },
+        { "proc",       "/proc",                     "proc",       NULL, MS_NOSUID|MS_NOEXEC|MS_NODEV,
+          NULL,       MNT_FATAL|MNT_IN_CONTAINER },
         { "devtmpfs",   "/dev",                      "devtmpfs",   "mode=755", MS_NOSUID|MS_STRICTATIME,
           NULL,       MNT_FATAL|MNT_IN_CONTAINER },
         { "securityfs", "/sys/kernel/security",      "securityfs", NULL, MS_NOSUID|MS_NOEXEC|MS_NODEV,
@@ -94,7 +94,7 @@ static const MountPoint mount_table[] = {
         { "tmpfs",      "/sys/fs/cgroup",            "tmpfs",      "mode=755", MS_NOSUID|MS_NOEXEC|MS_NODEV|MS_STRICTATIME,
           NULL,       MNT_FATAL|MNT_IN_CONTAINER },
         { "cgroup",     "/sys/fs/cgroup/systemd",    "cgroup",     "none,name=systemd,xattr", MS_NOSUID|MS_NOEXEC|MS_NODEV,
-          NULL,       MNT_FATAL|MNT_IN_CONTAINER },
+          NULL,       MNT_IN_CONTAINER },
         { "cgroup",     "/sys/fs/cgroup/systemd",    "cgroup",     "none,name=systemd", MS_NOSUID|MS_NOEXEC|MS_NODEV,
           NULL,       MNT_FATAL|MNT_IN_CONTAINER },
         { "pstore",     "/sys/fs/pstore",            "pstore",     NULL, MS_NOSUID|MS_NOEXEC|MS_NODEV,
index 14ac0a060e5bd8ef33bc67b0157ae7629d3a8b45..102bbef91b83c1331c9d46db71f1136e27ef92e2 100644 (file)
@@ -418,57 +418,6 @@ static int mount_add_default_dependencies(Mount *m) {
         return 0;
 }
 
-static int mount_fix_timeouts(Mount *m) {
-        MountParameters *p;
-        const char *timeout = NULL;
-        Unit *other;
-        Iterator i;
-        usec_t u;
-        char *t;
-        int r;
-
-        assert(m);
-
-        p = get_mount_parameters_fragment(m);
-        if (!p)
-                return 0;
-
-        /* Allow configuration how long we wait for a device that
-         * backs a mount point to show up. This is useful to support
-         * endless device timeouts for devices that show up only after
-         * user input, like crypto devices. */
-
-        if ((timeout = mount_test_option(p->options, "comment=systemd.device-timeout")))
-                timeout += 31;
-        else if ((timeout = mount_test_option(p->options, "x-systemd.device-timeout")))
-                timeout += 25;
-        else
-                return 0;
-
-        t = strndup(timeout, strcspn(timeout, ",;" WHITESPACE));
-        if (!t)
-                return -ENOMEM;
-
-        r = parse_sec(t, &u);
-        free(t);
-
-        if (r < 0) {
-                log_warning_unit(UNIT(m)->id,
-                                 "Failed to parse timeout for %s, ignoring: %s",
-                                 m->where, timeout);
-                return r;
-        }
-
-        SET_FOREACH(other, UNIT(m)->dependencies[UNIT_AFTER], i) {
-                if (other->type != UNIT_DEVICE)
-                        continue;
-
-                other->job_timeout = u;
-        }
-
-        return 0;
-}
-
 static int mount_verify(Mount *m) {
         _cleanup_free_ char *e = NULL;
         bool b;
@@ -556,10 +505,6 @@ static int mount_add_extras(Mount *m) {
         if (r < 0)
                 return r;
 
-        r = mount_fix_timeouts(m);
-        if (r < 0)
-                return r;
-
         if (u->default_dependencies) {
                 r = mount_add_default_dependencies(m);
                 if (r < 0)
@@ -892,6 +837,7 @@ static void mount_enter_unmounting(Mount *m) {
         if ((r = exec_command_set(
                              m->control_command,
                              "/bin/umount",
+                             "-n",
                              m->where,
                              NULL)) < 0)
                 goto fail;
@@ -934,6 +880,7 @@ static void mount_enter_mounting(Mount *m) {
                 r = exec_command_set(
                                 m->control_command,
                                 "/bin/mount",
+                                m->sloppy_options ? "-ns" : "-n",
                                 m->parameters_fragment.what,
                                 m->where,
                                 "-t", m->parameters_fragment.fstype ? m->parameters_fragment.fstype : "auto",
@@ -981,6 +928,7 @@ static void mount_enter_remounting(Mount *m) {
                 r = exec_command_set(
                                 m->control_command,
                                 "/bin/mount",
+                                m->sloppy_options ? "-ns" : "-n",
                                 m->parameters_fragment.what,
                                 m->where,
                                 "-t", m->parameters_fragment.fstype ? m->parameters_fragment.fstype : "auto",
index a53423cc27bff97b171424e57dad47edc15798e7..2dcb663cb142fcef439b57a6e1b068eb24ee1391 100644 (file)
@@ -88,6 +88,8 @@ struct Mount {
         bool just_mounted:1;
         bool just_changed:1;
 
+        bool sloppy_options;
+
         MountResult result;
         MountResult reload_result;
 
index 3b5402b7cd8c4851b087101e13859e1f32c48f41..5466b7baec2a8cdd96c40ab5619c49b6f8c98e74 100644 (file)
@@ -42,6 +42,7 @@
 #include "mkdir.h"
 #include "dev-setup.h"
 #include "def.h"
+#include "label.h"
 
 typedef enum MountMode {
         /* This is ordered by priority! */
@@ -68,6 +69,7 @@ static int append_mounts(BindMount **p, char **strv, MountMode mode) {
         STRV_FOREACH(i, strv) {
 
                 (*p)->ignore = false;
+                (*p)->done = false;
 
                 if ((mode == INACCESSIBLE || mode == READONLY || mode == READWRITE) && (*i)[0] == '-') {
                         (*p)->ignore = true;
@@ -223,7 +225,10 @@ static int mount_dev(BindMount *m) {
                         goto fail;
                 }
 
+                label_context_set(d, st.st_mode);
                 r = mknod(dn, st.st_mode, st.st_rdev);
+                label_context_clear();
+
                 if (r < 0) {
                         r = -errno;
                         goto fail;
@@ -329,7 +334,7 @@ static int make_read_only(BindMount *m) {
 
         if (IN_SET(m->mode, INACCESSIBLE, READONLY))
                 r = bind_remount_recursive(m->path, true);
-        else if (m->mode == READWRITE)
+        else if (IN_SET(m->mode, READWRITE, PRIVATE_TMP, PRIVATE_VAR_TMP, PRIVATE_DEV))
                 r = bind_remount_recursive(m->path, false);
         else
                 r = 0;
@@ -371,7 +376,7 @@ int setup_namespace(
                 (protect_system == PROTECT_SYSTEM_FULL ? 1 : 0);
 
         if (n > 0) {
-                m = mounts = (BindMount *) alloca(n * sizeof(BindMount));
+                m = mounts = (BindMount *) alloca0(n * sizeof(BindMount));
                 r = append_mounts(&m, read_write_dirs, READWRITE);
                 if (r < 0)
                         return r;
diff --git a/src/core/org.freedesktop.systemd1.policy b/src/core/org.freedesktop.systemd1.policy
new file mode 100644 (file)
index 0000000..f585c52
--- /dev/null
@@ -0,0 +1,55 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE policyconfig PUBLIC "-//freedesktop//DTD PolicyKit Policy Configuration 1.0//EN"
+        "http://www.freedesktop.org/standards/PolicyKit/1/policyconfig.dtd">
+<policyconfig>
+
+        <vendor>The systemd Project</vendor>
+        <vendor_url>http://www.freedesktop.org/wiki/Software/systemd</vendor_url>
+
+        <action id="org.freedesktop.systemd1.reply-password">
+                <description>Send passphrase back to system</description>
+                <description xml:lang="de">Passphrase zurück an das System senden</description>
+                <description xml:lang="el">Αποστολή του συνθηματικού πίσω στο σύστημα</description>
+                <description xml:lang="fr">Renvoyer la phrase secrète au système</description>
+                <description xml:lang="it">Inviare la frase segreta (passphrase) al sistema</description>
+                <description xml:lang="pl">Wysłanie hasła z powrotem do systemu</description>
+                <description xml:lang="ru">Отправить пароль системе</description>
+                <message>Authentication is required to send the entered passphrase back to the system.</message>
+                <message xml:lang="de">Legitimierung ist zum Senden des eingegebenen Kennworts zurück an das System notwendig.</message>
+                <message xml:lang="el">Απαιτείται πιστοποίηση για αποστολή του εισερχόμενου συνθηματικού πίσω στο σύστημα.</message>
+                <message xml:lang="fr">Authentification requise pour renvoyer la phrase secrète au système.</message>
+                <message xml:lang="it">Autenticazione richiesta per inviare la frase segreta (passphrase) al sistema.</message>
+                <message xml:lang="pl">Wymagane jest uwierzytelnienie, aby wysłać podane hasło z powrotem do systemu.</message>
+                <message xml:lang="ru">Чтобы отправить пароль системе, необходимо пройти аутентификацию.</message>
+                <defaults>
+                        <allow_any>no</allow_any>
+                        <allow_inactive>no</allow_inactive>
+                        <allow_active>auth_admin_keep</allow_active>
+                </defaults>
+                <annotate key="org.freedesktop.policykit.exec.path">/usr/lib/systemd/systemd-reply-password</annotate>
+        </action>
+
+        <action id="org.freedesktop.systemd1.bus-access">
+                <description>Privileged system and service manager access</description>
+                <description xml:lang="de">Privilegierter Zugriff auf die System- und Dienstverwaltung</description>
+                <description xml:lang="el">Προνομιούχος πρόσβαση διαχειριστή συστήματος και υπηρεσίας</description>
+                <description xml:lang="fr">Accès privilégié au gestionnaire du système et des services</description>
+                <description xml:lang="it">Accesso privilegiato per la gestione del sistema e dei servizi</description>
+                <description xml:lang="pl">Uprawniony dostęp do menedżera systemu i usług</description>
+                <description xml:lang="ru">Привилегированный доступ к системному менеджеру</description>
+                <message>Authentication is required to access the system and service manager.</message>
+                <message xml:lang="de">Legitimierung ist notwendig für den Zugriff auf die System- und Dienstverwaltung.</message>
+                <message xml:lang="el">Απαιτείται πιστοποίηση για να προσπελάσετε τον διαχειριστή συστήματος και υπηρεσιών.</message>
+                <message xml:lang="fr">Authentification requise pour accéder au gestionnaire du système et des services.</message>
+                <message xml:lang="it">Autenticazione richiesta per la gestione del sistema e dei servizi.</message>
+                <message xml:lang="pl">Wymagane jest uwierzytelnienie, aby uzyskać dostęp do menedżera systemu i usług.</message>
+                <message xml:lang="ru">Для привилегированного доступа к системному менеджеру необходимо пройти аутентификацию.</message>
+                <defaults>
+                        <allow_any>no</allow_any>
+                        <allow_inactive>no</allow_inactive>
+                        <allow_active>auth_admin_keep</allow_active>
+                </defaults>
+                <annotate key="org.freedesktop.policykit.exec.path">/usr/bin/systemd-stdio-bridge</annotate>
+        </action>
+
+</policyconfig>
\ No newline at end of file
index 10dc79c8a2f1ec8276f5af7efb2b8902613d57c8..0b19767d9e725029327ed5ed1115c0775802aabc 100644 (file)
@@ -266,15 +266,9 @@ static void service_done(Unit *u) {
         s->control_command = NULL;
         s->main_command = NULL;
 
-        set_free(s->restart_ignore_status.code);
-        s->restart_ignore_status.code = NULL;
-        set_free(s->restart_ignore_status.signal);
-        s->restart_ignore_status.signal = NULL;
-
-        set_free(s->success_status.code);
-        s->success_status.code = NULL;
-        set_free(s->success_status.signal);
-        s->success_status.signal = NULL;
+        exit_status_set_free(&s->restart_prevent_status);
+        exit_status_set_free(&s->restart_force_status);
+        exit_status_set_free(&s->success_status);
 
         /* This will leak a process, but at least no memory or any of
          * our resources */
@@ -337,7 +331,12 @@ static int service_verify(Service *s) {
         }
 
         if (s->type == SERVICE_ONESHOT && s->restart != SERVICE_RESTART_NO) {
-                log_error_unit(UNIT(s)->id, "%s has Restart setting other than no, which isn't allowed for Type=oneshot services. Refusing.", UNIT(s)->id);
+                log_error_unit(UNIT(s)->id, "%s has Restart= setting other than no, which isn't allowed for Type=oneshot services. Refusing.", UNIT(s)->id);
+                return -EINVAL;
+        }
+
+        if (s->type == SERVICE_ONESHOT && !exit_status_set_is_empty(&s->restart_force_status)) {
+                log_error_unit(UNIT(s)->id, "%s has RestartForceStatus= set, which isn't allowed for Type=oneshot services. Refusing.", UNIT(s)->id);
                 return -EINVAL;
         }
 
@@ -1071,11 +1070,11 @@ static void service_enter_dead(Service *s, ServiceResult f, bool allow_restart)
              (s->restart == SERVICE_RESTART_ON_FAILURE && s->result != SERVICE_SUCCESS) ||
              (s->restart == SERVICE_RESTART_ON_ABNORMAL && !IN_SET(s->result, SERVICE_SUCCESS, SERVICE_FAILURE_EXIT_CODE)) ||
              (s->restart == SERVICE_RESTART_ON_WATCHDOG && s->result == SERVICE_FAILURE_WATCHDOG) ||
-             (s->restart == SERVICE_RESTART_ON_ABORT && IN_SET(s->result, SERVICE_FAILURE_SIGNAL, SERVICE_FAILURE_CORE_DUMP))) &&
-            (s->result != SERVICE_FAILURE_EXIT_CODE ||
-             !set_contains(s->restart_ignore_status.code, INT_TO_PTR(s->main_exec_status.status))) &&
-            (s->result != SERVICE_FAILURE_SIGNAL ||
-             !set_contains(s->restart_ignore_status.signal, INT_TO_PTR(s->main_exec_status.status)))) {
+             (s->restart == SERVICE_RESTART_ON_ABORT && IN_SET(s->result, SERVICE_FAILURE_SIGNAL, SERVICE_FAILURE_CORE_DUMP)) ||
+             (s->main_exec_status.code == CLD_EXITED && set_contains(s->restart_force_status.status, INT_TO_PTR(s->main_exec_status.status))) ||
+             (IN_SET(s->main_exec_status.code, CLD_KILLED, CLD_DUMPED) && set_contains(s->restart_force_status.signal, INT_TO_PTR(s->main_exec_status.status)))) &&
+            (s->main_exec_status.code != CLD_EXITED || !set_contains(s->restart_prevent_status.status, INT_TO_PTR(s->main_exec_status.status))) &&
+            (!IN_SET(s->main_exec_status.code, CLD_KILLED, CLD_DUMPED) || !set_contains(s->restart_prevent_status.signal, INT_TO_PTR(s->main_exec_status.status)))) {
 
                 r = service_arm_timer(s, s->restart_usec);
                 if (r < 0)
@@ -1421,8 +1420,7 @@ static void service_enter_start_pre(Service *s) {
         return;
 
 fail:
-        log_warning_unit(UNIT(s)->id,
-                         "%s failed to run 'start-pre' task: %s", UNIT(s)->id, strerror(-r));
+        log_warning_unit(UNIT(s)->id, "%s failed to run 'start-pre' task: %s", UNIT(s)->id, strerror(-r));
         service_enter_dead(s, SERVICE_FAILURE_RESOURCES, true);
 }
 
@@ -1434,8 +1432,7 @@ static void service_enter_restart(Service *s) {
 
         if (UNIT(s)->job && UNIT(s)->job->type == JOB_STOP) {
                 /* Don't restart things if we are going down anyway */
-                log_info_unit(UNIT(s)->id,
-                              "Stop job pending for unit, delaying automatic restart.");
+                log_info_unit(UNIT(s)->id, "Stop job pending for unit, delaying automatic restart.");
 
                 r = service_arm_timer(s, s->restart_usec);
                 if (r < 0)
@@ -1456,8 +1453,7 @@ static void service_enter_restart(Service *s) {
          * it will be canceled as part of the service_stop() call that
          * is executed as part of JOB_RESTART. */
 
-        log_debug_unit(UNIT(s)->id,
-                       "%s scheduled restart job.", UNIT(s)->id);
+        log_debug_unit(UNIT(s)->id, "%s scheduled restart job.", UNIT(s)->id);
         return;
 
 fail:
index b8f0e0c42d1d528463b378bda8c2c38602d41d55..7406d90f59e88cf6ea7b4bc2f3a7db1c18c7f0ab 100644 (file)
@@ -118,7 +118,8 @@ struct Service {
 
         ServiceType type;
         ServiceRestart restart;
-        ExitStatusSet restart_ignore_status;
+        ExitStatusSet restart_prevent_status;
+        ExitStatusSet restart_force_status;
         ExitStatusSet success_status;
 
         /* If set we'll read the main daemon PID from this file */
index 7ef671ad0f56f854225d6420b2d5ca39decbe95f..fde3ce9c27b92239dd93fbcacff88a311dd79770 100644 (file)
@@ -220,7 +220,7 @@ static int pivot_to_new_root(void) {
 }
 
 int main(int argc, char *argv[]) {
-        bool need_umount = true, need_swapoff = true, need_loop_detach = true, need_dm_detach = true;
+        bool need_umount, need_swapoff, need_loop_detach, need_dm_detach;
         bool in_container, use_watchdog = false;
         _cleanup_free_ char *cgroup = NULL;
         char *arguments[3];
@@ -246,8 +246,6 @@ int main(int argc, char *argv[]) {
                 goto error;
         }
 
-        in_container = detect_container(NULL) > 0;
-
         if (streq(arg_verb, "reboot"))
                 cmd = RB_AUTOBOOT;
         else if (streq(arg_verb, "poweroff"))
@@ -275,11 +273,12 @@ int main(int argc, char *argv[]) {
         log_info("Sending SIGKILL to remaining processes...");
         broadcast_signal(SIGKILL, true, false);
 
-        if (in_container) {
-                need_swapoff = false;
-                need_dm_detach = false;
-                need_loop_detach = false;
-        }
+        in_container = detect_container(NULL) > 0;
+
+        need_umount = true;
+        need_swapoff = !in_container;
+        need_loop_detach = !in_container;
+        need_dm_detach = !in_container;
 
         /* Unmount all mountpoints, swaps, and loopback devices */
         for (retries = 0; retries < FINALIZE_ATTEMPTS; retries++) {
@@ -347,23 +346,31 @@ int main(int argc, char *argv[]) {
                         if (retries > 0)
                                 log_info("All filesystems, swaps, loop devices, DM devices detached.");
                         /* Yay, done */
-                        break;
+                        goto initrd_jump;
                 }
 
                 /* If in this iteration we didn't manage to
                  * unmount/deactivate anything, we simply give up */
                 if (!changed) {
-                        log_error("Cannot finalize remaining file systems and devices, giving up.");
-                        break;
+                        log_info("Cannot finalize remaining%s%s%s%s continuing.",
+                                 need_umount ? " file systems," : "",
+                                 need_swapoff ? " swap devices," : "",
+                                 need_loop_detach ? " loop devices," : "",
+                                 need_dm_detach ? " DM devices," : "");
+                        goto initrd_jump;
                 }
 
-                log_debug("Couldn't finalize remaining file systems and devices after %u retries, trying again.", retries+1);
+                log_debug("After %u retries, couldn't finalize remaining %s%s%s%s trying again.",
+                          retries + 1,
+                          need_umount ? " file systems," : "",
+                          need_swapoff ? " swap devices," : "",
+                          need_loop_detach ? " loop devices," : "",
+                          need_dm_detach ? " DM devices," : "");
         }
 
-        if (retries >= FINALIZE_ATTEMPTS)
-                log_error("Too many iterations, giving up.");
-        else
-                log_info("Storage is finalized.");
+        log_error("Too many iterations, giving up.");
+
+ initrd_jump:
 
         arguments[0] = NULL;
         arguments[1] = arg_verb;
@@ -384,6 +391,13 @@ int main(int argc, char *argv[]) {
                 }
         }
 
+        if (need_umount || need_swapoff || need_loop_detach || need_dm_detach)
+                log_error("Failed to finalize %s%s%s%s ignoring",
+                          need_umount ? " file systems," : "",
+                          need_swapoff ? " swap devices," : "",
+                          need_loop_detach ? " loop devices," : "",
+                          need_dm_detach ? " DM devices," : "");
+
         /* The kernel will automaticall flush ATA disks and suchlike
          * on reboot(), but the file systems need to be synce'd
          * explicitly in advance. So let's do this here, but not
index d914af20e7c0651f1301fa8be1d7874c249c1119..5eed615a150deee677304f7bc9afa15f1ab941ef 100644 (file)
@@ -51,10 +51,11 @@ static void snapshot_set_state(Snapshot *s, SnapshotState state) {
         s->state = state;
 
         if (state != old_state)
-                log_debug("%s changed %s -> %s",
-                          UNIT(s)->id,
-                          snapshot_state_to_string(old_state),
-                          snapshot_state_to_string(state));
+                log_debug_unit(UNIT(s)->id,
+                               "%s changed %s -> %s",
+                               UNIT(s)->id,
+                               snapshot_state_to_string(old_state),
+                               snapshot_state_to_string(state));
 
         unit_notify(UNIT(s), state_translation_table[old_state], state_translation_table[state], true);
 }
@@ -154,7 +155,7 @@ static int snapshot_deserialize_item(Unit *u, const char *key, const char *value
 
                 state = snapshot_state_from_string(value);
                 if (state < 0)
-                        log_debug("Failed to parse state value %s", value);
+                        log_debug_unit(u->id, "Failed to parse state value %s", value);
                 else
                         s->deserialized_state = state;
 
@@ -162,7 +163,7 @@ static int snapshot_deserialize_item(Unit *u, const char *key, const char *value
 
                 r = parse_boolean(value);
                 if (r < 0)
-                        log_debug("Failed to parse cleanup value %s", value);
+                        log_debug_unit(u->id, "Failed to parse cleanup value %s", value);
                 else
                         s->cleanup = r;
 
@@ -172,7 +173,7 @@ static int snapshot_deserialize_item(Unit *u, const char *key, const char *value
                 if (r < 0)
                         return r;
         } else
-                log_debug("Unknown serialization key '%s'", key);
+                log_debug_unit(u->id, "Unknown serialization key '%s'", key);
 
         return 0;
 }
@@ -257,6 +258,8 @@ int snapshot_create(Manager *m, const char *name, bool cleanup, sd_bus_error *e,
         SNAPSHOT(u)->cleanup = cleanup;
         *_s = SNAPSHOT(u);
 
+        log_info_unit(u->id, "Created snapshot %s.", u->id);
+
         return 0;
 
 fail:
@@ -269,6 +272,8 @@ fail:
 void snapshot_remove(Snapshot *s) {
         assert(s);
 
+        log_info_unit(UNIT(s)->id, "Removing snapshot %s.", UNIT(s)->id);
+
         unit_add_to_cleanup_queue(UNIT(s));
 }
 
index 94eb2e7a5d2bc1e1f6526374c3d8382dc377add7..c58a7f03ee9336260a7b2a884cb5547edf9d0a2e 100644 (file)
@@ -1343,6 +1343,8 @@ static int socket_spawn(Socket *s, ExecCommand *c, pid_t *_pid) {
                        NULL,
                        s->exec_runtime,
                        &pid);
+        if (r < 0)
+                goto fail;
 
         r = unit_watch_pid(UNIT(s), pid);
         if (r < 0)
index 518ec1f0a70a3e7a7da8f545a36610172e7499e0..f82243f8b1a6ab9616ac0d194f58bbc71174f972 100644 (file)
@@ -30,6 +30,8 @@
 #include "util.h"
 #include "path-util.h"
 #include "switch-root.h"
+#include "mkdir.h"
+#include "base-filesystem.h"
 #include "missing.h"
 
 int switch_root(const char *new_root) {
@@ -45,6 +47,7 @@ int switch_root(const char *new_root) {
         struct stat new_root_stat;
         bool old_root_remove;
         const char *i, *temporary_old_root;
+        int r;
 
         if (path_equal(new_root, "/"))
                 return 0;
@@ -56,6 +59,7 @@ int switch_root(const char *new_root) {
          * than not that /mnt exists and is suitable as mount point
          * and is on the same fs as the old root dir */
         temporary_old_root = strappenda(new_root, "/mnt");
+        mkdir_p(temporary_old_root, 0755);
 
         old_root_remove = in_initrd();
 
@@ -80,6 +84,8 @@ int switch_root(const char *new_root) {
                 snprintf(new_mount, sizeof(new_mount), "%s%s", new_root, i);
                 char_array_0(new_mount);
 
+                mkdir_parents(new_mount, 0755);
+
                 if ((stat(new_mount, &sb) < 0) ||
                     sb.st_dev != new_root_stat.st_dev) {
 
@@ -99,6 +105,12 @@ int switch_root(const char *new_root) {
                 }
         }
 
+        r = base_filesystem_create(new_root);
+        if (r < 0) {
+                log_error("Failed to create the base filesystem: %s", strerror(-r));
+                return r;
+        }
+
         if (chdir(new_root) < 0) {
                 log_error("Failed to change directory to %s: %m", new_root);
                 return -errno;
index f8bccb5d6a9ffcfa188d43cac61da553898db78e..d5b86bf65ce374c42662c27182a8724965c0bc87 100644 (file)
@@ -6,7 +6,7 @@
 #  (at your option) any later version.
 
 prefix=@prefix@
-exec_prefix=@exec_prefix@
+libdir=@libdir@
 systemdutildir=@rootlibexecdir@
 systemdsystemunitdir=@systemunitdir@
 systemdsystempresetdir=@systempresetdir@
@@ -18,6 +18,13 @@ systemdsystemunitpath=${systemdsystemconfdir}:/etc/systemd/system:/run/systemd/s
 systemduserunitpath=${systemduserconfdir}:/etc/systemd/user:/run/systemd/user:/usr/local/lib/systemd/user:/usr/local/share/systemd/user:${systemduserunitdir}:/usr/lib/systemd/user:/usr/share/systemd/user
 systemdsystemgeneratordir=@systemgeneratordir@
 systemdusergeneratordir=@usergeneratordir@
+systemdsleepdir=@systemsleepdir@
+systemdshutdowndir=@systemshutdowndir@
+tmpfilesdir=@tmpfilesdir@
+sysusersdir=@sysusersdir@
+sysctldir=@sysctldir@
+binfmtdir=@binfmtdir@
+modulesloaddir=@modulesloaddir@
 catalogdir=@catalogdir@
 systemuidmax=@systemuidmax@
 systemgidmax=@systemgidmax@
index 6f2deda21f60f97fd3ddf9c7e00ffb1d9153ac71..e69dfbd1e4f561d457bce3edc818172e5ad3102e 100644 (file)
@@ -131,7 +131,7 @@ static int timer_setup_persistent(Timer *t) {
 
                 e = getenv("XDG_DATA_HOME");
                 if (e)
-                        t->stamp_path = strjoin(e, "/systemd/timers/", UNIT(t)->id, NULL);
+                        t->stamp_path = strjoin(e, "/systemd/timers/stamp-", UNIT(t)->id, NULL);
                 else {
 
                         _cleanup_free_ char *h = NULL;
index d00f4277e1a65ffb2a6e27d4aeb6751d3dbbbe66..805d40ae6a13c6004695717d641a8967902f87fc 100644 (file)
@@ -264,9 +264,12 @@ static int transaction_merge_jobs(Transaction *tr, sd_bus_error *e) {
                                 return -EAGAIN;
 
                         /* We couldn't merge anything. Failure */
-                        sd_bus_error_setf(
-                                        e, BUS_ERROR_TRANSACTION_JOBS_CONFLICTING, "Transaction contains conflicting jobs '%s' and '%s' for %s. Probably contradicting requirement dependencies configured.",
-                                        job_type_to_string(t), job_type_to_string(k->type), k->unit->id);
+                        sd_bus_error_setf(e, BUS_ERROR_TRANSACTION_JOBS_CONFLICTING,
+                                          "Transaction contains conflicting jobs '%s' and '%s' for %s. "
+                                          "Probably contradicting requirement dependencies configured.",
+                                          job_type_to_string(t),
+                                          job_type_to_string(k->type),
+                                          k->unit->id);
                         return r;
                 }
         }
@@ -378,7 +381,7 @@ static int transaction_verify_order_one(Transaction *tr, Job *j, Job *from, unsi
                                       "Found dependency on %s/%s",
                                       k->unit->id, job_type_to_string(k->type));
 
-                        if (!delete &&
+                        if (!delete && hashmap_get(tr->jobs, k->unit) &&
                             !unit_matters_to_anchor(k->unit, k)) {
                                 /* Ok, we can drop this one, so let's
                                  * do so. */
@@ -512,7 +515,8 @@ static int transaction_is_destructive(Transaction *tr, JobMode mode, sd_bus_erro
                 if (j->unit->job && (mode == JOB_FAIL || j->unit->job->irreversible) &&
                     !job_type_is_superset(j->type, j->unit->job->type)) {
 
-                        sd_bus_error_setf(e, BUS_ERROR_TRANSACTION_IS_DESTRUCTIVE, "Transaction is destructive.");
+                        sd_bus_error_setf(e, BUS_ERROR_TRANSACTION_IS_DESTRUCTIVE,
+                                          "Transaction is destructive.");
                         return -EEXIST;
                 }
         }
@@ -860,35 +864,44 @@ int transaction_add_job_and_dependencies(
             unit->load_state != UNIT_ERROR &&
             unit->load_state != UNIT_NOT_FOUND &&
             unit->load_state != UNIT_MASKED) {
-                sd_bus_error_setf(e, BUS_ERROR_LOAD_FAILED, "Unit %s is not loaded properly.", unit->id);
+                sd_bus_error_setf(e, BUS_ERROR_LOAD_FAILED,
+                                  "Unit %s is not loaded properly.", unit->id);
                 return -EINVAL;
         }
 
         if (type != JOB_STOP && unit->load_state == UNIT_ERROR) {
-                sd_bus_error_setf(e, BUS_ERROR_LOAD_FAILED,
-                               "Unit %s failed to load: %s. "
-                               "See system logs and 'systemctl status %s' for details.",
-                               unit->id,
-                               strerror(-unit->load_error),
-                               unit->id);
+                if (unit->load_error == -ENOENT)
+                        sd_bus_error_setf(e, BUS_ERROR_LOAD_FAILED,
+                                          "Unit %s failed to load: %s.",
+                                          unit->id,
+                                          strerror(-unit->load_error));
+                else
+                        sd_bus_error_setf(e, BUS_ERROR_LOAD_FAILED,
+                                          "Unit %s failed to load: %s. "
+                                          "See system logs and 'systemctl status %s' for details.",
+                                          unit->id,
+                                          strerror(-unit->load_error),
+                                          unit->id);
                 return -EINVAL;
         }
 
         if (type != JOB_STOP && unit->load_state == UNIT_NOT_FOUND) {
                 sd_bus_error_setf(e, BUS_ERROR_LOAD_FAILED,
-                               "Unit %s failed to load: %s.",
-                               unit->id,
-                               strerror(-unit->load_error));
+                                  "Unit %s failed to load: %s.",
+                                  unit->id, strerror(-unit->load_error));
                 return -EINVAL;
         }
 
         if (type != JOB_STOP && unit->load_state == UNIT_MASKED) {
-                sd_bus_error_setf(e, BUS_ERROR_UNIT_MASKED, "Unit %s is masked.", unit->id);
+                sd_bus_error_setf(e, BUS_ERROR_UNIT_MASKED,
+                                  "Unit %s is masked.", unit->id);
                 return -EADDRNOTAVAIL;
         }
 
         if (!unit_job_is_applicable(unit, type)) {
-                sd_bus_error_setf(e, BUS_ERROR_JOB_TYPE_NOT_APPLICABLE, "Job type %s is not applicable for unit %s.", job_type_to_string(type), unit->id);
+                sd_bus_error_setf(e, BUS_ERROR_JOB_TYPE_NOT_APPLICABLE,
+                                  "Job type %s is not applicable for unit %s.",
+                                  job_type_to_string(type), unit->id);
                 return -EBADR;
         }
 
index a30f6740fada15b5b00214ede9e2173b0517ffe4..cffa45327be531784ac64cc9864c82ff622e4fe4 100644 (file)
@@ -126,9 +126,8 @@ static int mount_points_list_get(MountPoint **head) {
 }
 
 static int swap_list_get(MountPoint **head) {
-        FILE *proc_swaps;
+        _cleanup_fclose_ FILE *proc_swaps = NULL;
         unsigned int i;
-        int r;
 
         assert(head);
 
@@ -168,26 +167,19 @@ static int swap_list_get(MountPoint **head) {
                 free(dev);
 
                 if (!d) {
-                        r = -ENOMEM;
-                        goto finish;
+                        return -ENOMEM;
                 }
 
                 if (!(swap = new0(MountPoint, 1))) {
                         free(d);
-                        r = -ENOMEM;
-                        goto finish;
+                        return -ENOMEM;
                 }
 
                 swap->path = d;
                 LIST_PREPEND(mount_point, *head, swap);
         }
 
-        r = 0;
-
-finish:
-        fclose(proc_swaps);
-
-        return r;
+        return 0;
 }
 
 static int loopback_list_get(MountPoint **head) {
index 6e40bc6e9fd973f250f46f7692bba445dfc35bf9..0e4ebfde9bc37bdfd8a7bd6df1ebb30ce25ebcf3 100644 (file)
@@ -51,6 +51,7 @@
 #include "dbus.h"
 #include "execute.h"
 #include "virt.h"
+#include "dropin.h"
 
 const UnitVTable * const unit_vtable[_UNIT_TYPE_MAX] = {
         [UNIT_SERVICE] = &service_vtable,
@@ -2966,68 +2967,55 @@ ExecRuntime *unit_get_exec_runtime(Unit *u) {
         return *(ExecRuntime**) ((uint8_t*) u + offset);
 }
 
-static int drop_in_file(Unit *u, UnitSetPropertiesMode mode, const char *name, char **_p, char **_q) {
-        _cleanup_free_ char *b = NULL;
-        char *p, *q;
-        int r;
-
-        assert(u);
-        assert(name);
-        assert(_p);
-        assert(_q);
-
-        b = xescape(name, "/.");
-        if (!b)
-                return -ENOMEM;
-
-        if (!filename_is_safe(b))
-                return -EINVAL;
-
+static int unit_drop_in_dir(Unit *u, UnitSetPropertiesMode mode, bool transient, char **dir) {
         if (u->manager->running_as == SYSTEMD_USER) {
-                _cleanup_free_ char *c = NULL;
+                int r;
 
-                r = user_config_home(&c);
-                if (r < 0)
-                        return r;
+                r = user_config_home(dir);
                 if (r == 0)
                         return -ENOENT;
+                return r;
+        }
 
-                p = strjoin(c, "/", u->id, ".d", NULL);
-        } else if (mode == UNIT_PERSISTENT && !u->transient)
-                p = strjoin("/etc/systemd/system/", u->id, ".d", NULL);
+        if (mode == UNIT_PERSISTENT && !transient)
+                *dir = strdup("/etc/systemd/system");
         else
-                p = strjoin("/run/systemd/system/", u->id, ".d", NULL);
-        if (!p)
+                *dir = strdup("/run/systemd/system");
+        if (!*dir)
                 return -ENOMEM;
 
-        q = strjoin(p, "/90-", b, ".conf", NULL);
-        if (!q) {
-                free(p);
-                return -ENOMEM;
-        }
-
-        *_p = p;
-        *_q = q;
         return 0;
 }
 
+static int unit_drop_in_file(Unit *u,
+                             UnitSetPropertiesMode mode, const char *name, char **p, char **q) {
+        _cleanup_free_ char *dir = NULL;
+        int r;
+
+        assert(u);
+
+        r = unit_drop_in_dir(u, mode, u->transient, &dir);
+        if (r < 0)
+                return r;
+
+        return drop_in_file(dir, u->id, 50, name, p, q);
+}
+
 int unit_write_drop_in(Unit *u, UnitSetPropertiesMode mode, const char *name, const char *data) {
-        _cleanup_free_ char *p = NULL, *q = NULL;
+
+        _cleanup_free_ char *dir = NULL;
         int r;
 
         assert(u);
-        assert(name);
-        assert(data);
 
         if (!IN_SET(mode, UNIT_PERSISTENT, UNIT_RUNTIME))
                 return 0;
 
-        r = drop_in_file(u, mode, name, &p, &q);
+        r = unit_drop_in_dir(u, mode, u->transient, &dir);
         if (r < 0)
                 return r;
 
-        mkdir_p(p, 0755);
-        return write_string_file_atomic_label(q, data);
+        return write_drop_in(dir, u->id, 50, name, data);
 }
 
 int unit_write_drop_in_format(Unit *u, UnitSetPropertiesMode mode, const char *name, const char *format, ...) {
@@ -3103,7 +3091,7 @@ int unit_remove_drop_in(Unit *u, UnitSetPropertiesMode mode, const char *name) {
         if (!IN_SET(mode, UNIT_PERSISTENT, UNIT_RUNTIME))
                 return 0;
 
-        r = drop_in_file(u, mode, name, &p, &q);
+        r = unit_drop_in_file(u, mode, name, &p, &q);
         if (r < 0)
                 return r;
 
index f4eeb2ad93072ea1a8da96cd514dddfeb74faba8..3233e15f4e943d4788e560f01e425789560f3fcc 100644 (file)
@@ -29,6 +29,9 @@
 #include "mkdir.h"
 #include "strv.h"
 #include "fileio.h"
+#include "path-util.h"
+#include "dropin.h"
+#include "generator.h"
 
 static const char *arg_dest = "/tmp";
 static bool arg_enabled = true;
@@ -72,7 +75,8 @@ static int create_disk(
                 const char *password,
                 const char *options) {
 
-        _cleanup_free_ char *p = NULL, *n = NULL, *d = NULL, *u = NULL, *to = NULL, *e = NULL;
+        _cleanup_free_ char *p = NULL, *n = NULL, *d = NULL, *u = NULL, *to = NULL, *e = NULL,
+                *filtered = NULL;
         _cleanup_fclose_ FILE *f = NULL;
         bool noauto, nofail, tmp, swap;
         char *from;
@@ -127,7 +131,7 @@ static int create_disk(
                 "Conflicts=umount.target\n"
                 "BindsTo=dev-mapper-%i.device\n"
                 "IgnoreOnIsolate=true\n"
-                "After=systemd-readahead-collect.service systemd-readahead-replay.service\n",
+                "After=systemd-readahead-collect.service systemd-readahead-replay.service cryptsetup-pre.target\n",
                 f);
 
         if (!nofail)
@@ -144,16 +148,19 @@ static int create_disk(
                         if (!uu)
                                 return log_oom();
 
-                        if (is_device_path(uu)) {
-                                _cleanup_free_ char *dd;
+                        if (!path_equal(uu, "/dev/null")) {
 
-                                dd = unit_name_from_path(uu, ".device");
-                                if (!dd)
-                                        return log_oom();
+                                if (is_device_path(uu)) {
+                                        _cleanup_free_ char *dd;
 
-                                fprintf(f, "After=%1$s\nRequires=%1$s\n", dd);
-                        } else
-                                fprintf(f, "RequiresMountsFor=%s\n", password);
+                                        dd = unit_name_from_path(uu, ".device");
+                                        if (!dd)
+                                                return log_oom();
+
+                                        fprintf(f, "After=%1$s\nRequires=%1$s\n", dd);
+                                } else
+                                        fprintf(f, "RequiresMountsFor=%s\n", password);
+                        }
                 }
         }
 
@@ -168,6 +175,10 @@ static int create_disk(
                         "RequiresMountsFor=%s\n",
                         u);
 
+        r = generator_write_timeouts(arg_dest, device, name, options, &filtered);
+        if (r < 0)
+                return r;
+
         fprintf(f,
                 "\n[Service]\n"
                 "Type=oneshot\n"
@@ -175,7 +186,7 @@ static int create_disk(
                 "TimeoutSec=0\n" /* the binary handles timeouts anyway */
                 "ExecStart=" SYSTEMD_CRYPTSETUP_PATH " attach '%s' '%s' '%s' '%s'\n"
                 "ExecStop=" SYSTEMD_CRYPTSETUP_PATH " detach '%s'\n",
-                name, u, strempty(password), strempty(options),
+                name, u, strempty(password), strempty(filtered),
                 name);
 
         if (tmp)
@@ -235,17 +246,9 @@ static int create_disk(
         }
 
         if (!noauto && !nofail) {
-
-                free(p);
-                p = strjoin(arg_dest, "/dev-mapper-", e, ".device.d/50-job-timeout-sec-0.conf", NULL);
-                if (!p)
-                        return log_oom();
-
-                mkdir_parents_label(p, 0755);
-                r = write_string_file(p,
-                                "# Automatically generated by systemd-cryptsetup-generator\n\n"
-                                "[Unit]\n"
-                                "JobTimeoutSec=0\n"); /* the binary handles timeouts anyway */
+                r = write_drop_in(arg_dest, name, 90, "device-timeout",
+                                  "# Automatically generated by systemd-cryptsetup-generator \n\n"
+                                  "[Unit]\nJobTimeoutSec=0");
                 if (r < 0) {
                         log_error("Failed to write device drop-in: %s", strerror(-r));
                         return r;
@@ -291,8 +294,7 @@ static int parse_proc_cmdline_item(const char *key, const char *value) {
                 if (!arg_keyfile)
                         return log_oom();
 
-        } else if (startswith(key, "luks.") || startswith(key, "rd.luks."))
-                log_warning("Unknown kernel switch %s. Ignoring.", key);
+        }
 
         return 0;
 }
index 812b32f6cab2e140635e8ca362da817653cd5535..a67d85e623c685a0ac96e7d0df3d7c8b39b2713e 100644 (file)
@@ -344,7 +344,7 @@ static int attach_tcrypt(struct crypt_device *cd,
 
         assert(cd);
         assert(name);
-        assert(key_file || passwords);
+        assert(key_file || (passwords && passwords[0]));
 
         if (arg_tcrypt_hidden)
                 params.flags |= CRYPT_TCRYPT_HIDDEN_HEADER;
diff --git a/src/debug-generator/debug-generator.c b/src/debug-generator/debug-generator.c
new file mode 100644 (file)
index 0000000..fd7c29d
--- /dev/null
@@ -0,0 +1,173 @@
+/*-*- Mode: C; c-basic-offset: 8; indent-tabs-mode: nil -*-*/
+
+/***
+  This file is part of systemd.
+
+  Copyright 2014 Lennart Poettering
+
+  systemd is free software; you can redistribute it and/or modify it
+  under the terms of the GNU Lesser General Public License as published by
+  the Free Software Foundation; either version 2.1 of the License, or
+  (at your option) any later version.
+
+  systemd is distributed in the hope that it will be useful, but
+  WITHOUT ANY WARRANTY; without even the implied warranty of
+  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+  Lesser General Public License for more details.
+
+  You should have received a copy of the GNU Lesser General Public License
+  along with systemd; If not, see <http://www.gnu.org/licenses/>.
+***/
+
+#include "util.h"
+#include "strv.h"
+#include "unit-name.h"
+#include "mkdir.h"
+
+static const char *arg_dest = "/tmp";
+static char **arg_mask = NULL;
+static char **arg_wants = NULL;
+static bool arg_debug_shell = false;
+
+static int parse_proc_cmdline_item(const char *key, const char *value) {
+        int r;
+
+        assert(key);
+
+        if (streq(key, "systemd.mask")) {
+
+                if (!value)
+                        log_error("Missing argument for systemd.mask= kernel command line parameter.");
+                else {
+                        char *n;
+
+                        n = unit_name_mangle(value, MANGLE_NOGLOB);
+                        if (!n)
+                                return log_oom();
+
+                        r = strv_consume(&arg_mask, n);
+                        if (r < 0)
+                                return log_oom();
+                }
+
+        } else if (streq(key, "systemd.wants")) {
+
+                if (!value)
+                        log_error("Missing argument for systemd.want= kernel command line parameter.");
+                else {
+                        char *n;
+
+                        n = unit_name_mangle(value, MANGLE_NOGLOB);
+                        if (!n)
+                                return log_oom();
+
+                        r = strv_consume(&arg_wants, n);
+                        if (r < 0)
+                                return log_oom();
+                }
+
+        } else if (streq(key, "systemd.debug-shell")) {
+
+                if (value) {
+                        r = parse_boolean(value);
+                        if (r < 0)
+                                log_error("Failed to parse systemd.debug-shell= argument '%s', ignoring.", value);
+                        else
+                                arg_debug_shell = r;
+                } else
+                        arg_debug_shell = true;
+        }
+
+        return 0;
+}
+
+static int generate_mask_symlinks(void) {
+        char **u;
+        int r = 0;
+
+        if (strv_isempty(arg_mask))
+                return 0;
+
+        STRV_FOREACH(u, arg_mask) {
+                _cleanup_free_ char *p = NULL;
+
+                p = strjoin(arg_dest, "/", *u, NULL);
+                if (!p)
+                        return log_oom();
+
+                if (symlink("/dev/null", p) < 0) {
+                        log_error("Failed to create mask symlink %s: %m", p);
+                        r = -errno;
+                }
+        }
+
+        return r;
+}
+
+static int generate_wants_symlinks(void) {
+        char **u;
+        int r = 0;
+
+        if (strv_isempty(arg_wants))
+                return 0;
+
+        STRV_FOREACH(u, arg_wants) {
+                _cleanup_free_ char *p = NULL, *f = NULL;
+
+                p = strjoin(arg_dest, "/default.target.wants/", *u, NULL);
+                if (!p)
+                        return log_oom();
+
+                f = strappend(SYSTEM_DATA_UNIT_PATH "/", *u);
+                if (!f)
+                        return log_oom();
+
+                mkdir_parents_label(p, 0755);
+
+                if (symlink(f, p) < 0) {
+                        log_error("Failed to create wants symlink %s: %m", p);
+                        r = -errno;
+                }
+        }
+
+        return r;
+}
+
+int main(int argc, char *argv[]) {
+        int r, q;
+
+        if (argc > 1 && argc != 4) {
+                log_error("This program takes three or no arguments.");
+                return EXIT_FAILURE;
+        }
+
+        if (argc > 1)
+                arg_dest = argv[2];
+
+        log_set_target(LOG_TARGET_SAFE);
+        log_parse_environment();
+        log_open();
+
+        umask(0022);
+
+        if (parse_proc_cmdline(parse_proc_cmdline_item) < 0)
+                return EXIT_FAILURE;
+
+        if (arg_debug_shell) {
+                r = strv_extend(&arg_wants, "debug-shell.service");
+                if (r < 0) {
+                        r = log_oom();
+                        goto finish;
+                }
+        }
+
+        r = generate_mask_symlinks();
+
+        q = generate_wants_symlinks();
+        if (q < 0)
+                r = q;
+
+finish:
+        return r < 0 ? EXIT_FAILURE : EXIT_SUCCESS;
+
+}
index cb2f5734ea069ddf11a0a9ddd17bfd44ce23ddb6..e8596d90f805df3d35218dc9735cf484016c8f4c 100644 (file)
@@ -86,7 +86,8 @@ static int parse_proc_cmdline_item(const char *key, const char *value) {
                 else if (streq(value, "skip"))
                         arg_skip = true;
                 else
-                        log_warning("Invalid fsck.mode= parameter. Ignoring.");
+                        log_warning("Invalid fsck.mode= parameter '%s'. Ignoring.", value);
+
         } else if (streq(key, "fsck.repair") && value) {
 
                 if (streq(value, "preen"))
@@ -96,13 +97,14 @@ static int parse_proc_cmdline_item(const char *key, const char *value) {
                 else if (streq(value, "no"))
                         arg_repair = "-n";
                 else
-                        log_warning("Invalid fsck.repair= parameter. Ignoring.");
-        } else if (startswith(key, "fsck."))
-                log_warning("Invalid fsck parameter. Ignoring.");
+                        log_warning("Invalid fsck.repair= parameter '%s'. Ignoring.", value);
+        }
+
 #ifdef HAVE_SYSV_COMPAT
         else if (streq(key, "fastboot") && !value) {
                 log_warning("Please pass 'fsck.mode=skip' rather than 'fastboot' on the kernel command line.");
                 arg_skip = true;
+
         } else if (streq(key, "forcefsck") && !value) {
                 log_warning("Please pass 'fsck.mode=force' rather than 'forcefsck' on the kernel command line.");
                 arg_force = true;
@@ -113,6 +115,7 @@ static int parse_proc_cmdline_item(const char *key, const char *value) {
 }
 
 static void test_files(void) {
+
 #ifdef HAVE_SYSV_COMPAT
         if (access("/fastboot", F_OK) >= 0) {
                 log_error("Please pass 'fsck.mode=skip' on the kernel command line rather than creating /fastboot on the root file system.");
@@ -299,15 +302,11 @@ int main(int argc, char *argv[]) {
         type = udev_device_get_property_value(udev_device, "ID_FS_TYPE");
         if (type) {
                 r = fsck_exists(type);
-                if (r < 0) {
-                        if (r == -ENOENT) {
-                                log_info("fsck.%s doesn't exist, not checking file system on %s",
-                                         type, device);
-                                return EXIT_SUCCESS;
-                        } else
-                                log_warning("fsck.%s cannot be used for %s: %s",
-                                            type, device, strerror(-r));
-                }
+                if (r == -ENOENT) {
+                        log_info("fsck.%s doesn't exist, not checking file system on %s", type, device);
+                        return EXIT_SUCCESS;
+                } else if (r < 0)
+                        log_warning("fsck.%s cannot be used for %s: %s", type, device, strerror(-r));
         }
 
         if (arg_show_progress)
index a9a5c0203f2cb8276a1486b1d2b809cad0d87efb..1256a1ce53dfeddecf1d30efb33aed89908b2fcd 100644 (file)
@@ -44,6 +44,7 @@ static char *arg_root_fstype = NULL;
 static char *arg_root_options = NULL;
 static int arg_root_rw = -1;
 
+
 static int mount_find_pri(struct mntent *me, int *ret) {
         char *end, *pri;
         unsigned long r;
@@ -128,6 +129,11 @@ static int add_swap(const char *what, struct mntent *me) {
                 return -errno;
         }
 
+        /* use what as where, to have a nicer error message */
+        r = generator_write_timeouts(arg_dest, what, what, me->mnt_opts, NULL);
+        if (r < 0)
+                return r;
+
         if (!noauto) {
                 lnk = strjoin(arg_dest, "/" SPECIAL_SWAP_TARGET ".wants/", name, NULL);
                 if (!lnk)
@@ -173,7 +179,8 @@ static int add_mount(
 
         _cleanup_free_ char
                 *name = NULL, *unit = NULL, *lnk = NULL,
-                *automount_name = NULL, *automount_unit = NULL;
+                *automount_name = NULL, *automount_unit = NULL,
+                *filtered = NULL;
         _cleanup_fclose_ FILE *f = NULL;
         int r;
 
@@ -245,8 +252,12 @@ static int add_mount(
         if (!isempty(fstype) && !streq(fstype, "auto"))
                 fprintf(f, "Type=%s\n", fstype);
 
-        if (!isempty(opts) && !streq(opts, "defaults"))
-                fprintf(f, "Options=%s\n", opts);
+        r = generator_write_timeouts(arg_dest, what, where, opts, &filtered);
+        if (r < 0)
+                return r;
+
+        if (!isempty(filtered) && !streq(filtered, "defaults"))
+                fprintf(f, "Options=%s\n", filtered);
 
         fflush(f);
         if (ferror(f)) {
@@ -402,7 +413,8 @@ static int parse_fstab(bool initrd) {
 }
 
 static int add_root_mount(void) {
-        _cleanup_free_ char *o = NULL, *what = NULL;
+        _cleanup_free_ char *what = NULL;
+        const char *opts;
 
         if (isempty(arg_root_what)) {
                 log_debug("Could not find a root= entry on the kernel commandline.");
@@ -416,23 +428,19 @@ static int add_root_mount(void) {
         }
 
         if (!arg_root_options)
-                o = strdup(arg_root_rw > 0 ? "rw" : "ro");
-        else {
-                if (arg_root_rw >= 0 ||
-                    (!mount_test_option(arg_root_options, "ro") &&
-                     !mount_test_option(arg_root_options, "rw")))
-                        o = strjoin(arg_root_options, ",", arg_root_rw > 0 ? "rw" : "ro", NULL);
-                else
-                        o = strdup(arg_root_options);
-        }
-        if (!o)
-                return log_oom();
+                opts = arg_root_rw > 0 ? "rw" : "ro";
+        else if (arg_root_rw >= 0 ||
+                 (!mount_test_option(arg_root_options, "ro") &&
+                  !mount_test_option(arg_root_options, "rw")))
+                opts = strappenda3(arg_root_options, ",", arg_root_rw > 0 ? "rw" : "ro");
+        else
+                opts = arg_root_options;
 
         log_debug("Found entry what=%s where=/sysroot type=%s", what, strna(arg_root_fstype));
         return add_mount(what,
                          "/sysroot",
                          arg_root_fstype,
-                         o,
+                         opts,
                          1,
                          false,
                          false,
@@ -486,8 +494,6 @@ static int parse_proc_cmdline_item(const char *key, const char *value) {
                 arg_root_rw = true;
         else if (streq(key, "ro") && !value)
                 arg_root_rw = false;
-        else if (startswith(key, "fstab.") || startswith(key, "rd.fstab."))
-                log_warning("Unknown kernel switch %s. Ignoring.", key);
 
         return 0;
 }
@@ -520,6 +526,8 @@ int main(int argc, char *argv[]) {
         if (arg_fstab_enabled) {
                 int k;
 
+                log_debug("Parsing /etc/fstab");
+
                 /* Parse the local /etc/fstab, possibly from the initrd */
                 k = parse_fstab(false);
                 if (k < 0)
@@ -527,6 +535,8 @@ int main(int argc, char *argv[]) {
 
                 /* If running in the initrd also parse the /etc/fstab from the host */
                 if (in_initrd()) {
+                        log_debug("Parsing /sysroot/etc/fstab");
+
                         k = parse_fstab(true);
                         if (k < 0)
                                 r = k;
index 6a4aa2c1d9a133d793b06d5d1c761ffd44d893b2..7d4b546f72751af2508832c445f091387ddedf8b 100644 (file)
 static const char *arg_dest = "/tmp";
 
 static int add_symlink(const char *fservice, const char *tservice) {
-        _cleanup_free_ char *from = NULL, *to = NULL;
+        char *from, *to;
         int r;
 
         assert(fservice);
         assert(tservice);
 
-        from = strappend(SYSTEM_DATA_UNIT_PATH "/", fservice);
-        if (!from)
-                return log_oom();
-
-        to = strjoin(arg_dest,"/getty.target.wants/", tservice, NULL);
-        if (!to)
-                return log_oom();
+        from = strappenda(SYSTEM_DATA_UNIT_PATH "/", fservice);
+        to = strappenda3(arg_dest, "/getty.target.wants/", tservice);
 
         mkdir_parents_label(to, 0755);
 
@@ -72,7 +67,7 @@ static int add_serial_getty(const char *tty) {
 
         log_debug("Automatically adding serial getty for /dev/%s.", tty);
 
-        n = unit_name_replace_instance("serial-getty@.service", tty);
+        n = unit_name_from_path_instance("serial-getty", tty, ".service");
         if (!n)
                 return log_oom();
 
@@ -86,7 +81,7 @@ static int add_container_getty(const char *tty) {
 
         log_debug("Automatically adding container getty for /dev/pts/%s.", tty);
 
-        n = unit_name_replace_instance("container-getty@.service", tty);
+        n = unit_name_from_path_instance("container-getty", tty, ".service");
         if (!n)
                 return log_oom();
 
@@ -221,14 +216,9 @@ int main(int argc, char *argv[]) {
         /* Automatically add in a serial getty on the first
          * virtualizer console */
         NULSTR_FOREACH(j, virtualization_consoles) {
-                _cleanup_free_ char *p = NULL;
-
-                p = strappend("/sys/class/tty/", j);
-                if (!p) {
-                        log_oom();
-                        return EXIT_FAILURE;
-                }
+                char *p;
 
+                p = strappenda("/sys/class/tty/", j);
                 if (access(p, F_OK) < 0)
                         continue;
 
index 78643c9a3ce09eb05eb1c072c03c5bd6bb85913e..7dcbbfe497a52b66f0bf23de38222813b63de115 100644 (file)
@@ -695,8 +695,6 @@ static int parse_proc_cmdline_item(const char *key, const char *value) {
                 arg_root_rw = true;
         else if (streq(key, "ro") && !value)
                 arg_root_rw = false;
-        else if (startswith(key, "systemd.gpt-auto.") || startswith(key, "rd.systemd.gpt-auto."))
-                log_warning("Unknown kernel switch %s. Ignoring.", key);
 
         return 0;
 }
diff --git a/src/gudev/libgudev-1.0.sym b/src/gudev/libgudev-1.0.sym
new file mode 100644 (file)
index 0000000..0600486
--- /dev/null
@@ -0,0 +1,68 @@
+/***
+  This file is part of systemd.
+
+  systemd is free software; you can redistribute it and/or modify it
+  under the terms of the GNU Lesser General Public License as published by
+  the Free Software Foundation; either version 2.1 of the License, or
+  (at your option) any later version.
+***/
+
+{
+global:
+        g_udev_client_get_type;
+        g_udev_client_new;
+        g_udev_client_query_by_device_file;
+        g_udev_client_query_by_device_number;
+        g_udev_client_query_by_subsystem;
+        g_udev_client_query_by_subsystem_and_name;
+        g_udev_client_query_by_sysfs_path;
+        g_udev_device_get_action;
+        g_udev_device_get_device_file;
+        g_udev_device_get_device_file_symlinks;
+        g_udev_device_get_device_number;
+        g_udev_device_get_device_type;
+        g_udev_device_get_devtype;
+        g_udev_device_get_driver;
+        g_udev_device_get_is_initialized;
+        g_udev_device_get_name;
+        g_udev_device_get_number;
+        g_udev_device_get_parent;
+        g_udev_device_get_parent_with_subsystem;
+        g_udev_device_get_property;
+        g_udev_device_get_property_as_boolean;
+        g_udev_device_get_property_as_double;
+        g_udev_device_get_property_as_int;
+        g_udev_device_get_property_as_strv;
+        g_udev_device_get_property_as_uint64;
+        g_udev_device_get_property_keys;
+        g_udev_device_get_seqnum;
+        g_udev_device_get_subsystem;
+        g_udev_device_get_sysfs_attr;
+        g_udev_device_get_sysfs_attr_as_boolean;
+        g_udev_device_get_sysfs_attr_as_double;
+        g_udev_device_get_sysfs_attr_as_int;
+        g_udev_device_get_sysfs_attr_as_strv;
+        g_udev_device_get_sysfs_attr_as_uint64;
+        g_udev_device_get_sysfs_attr_keys;
+        g_udev_device_get_sysfs_path;
+        g_udev_device_get_tags;
+        g_udev_device_get_type;
+        g_udev_device_get_usec_since_initialized;
+        g_udev_device_has_property;
+        g_udev_device_has_sysfs_attr;
+        g_udev_device_type_get_type;
+        g_udev_enumerator_add_match_is_initialized;
+        g_udev_enumerator_add_match_name;
+        g_udev_enumerator_add_match_property;
+        g_udev_enumerator_add_match_subsystem;
+        g_udev_enumerator_add_match_sysfs_attr;
+        g_udev_enumerator_add_match_tag;
+        g_udev_enumerator_add_nomatch_subsystem;
+        g_udev_enumerator_add_nomatch_sysfs_attr;
+        g_udev_enumerator_add_sysfs_path;
+        g_udev_enumerator_execute;
+        g_udev_enumerator_get_type;
+        g_udev_enumerator_new;
+local:
+        *;
+};
index a3504904a0aabdcc438ff5dbbe2165e002d7d24d..14629dd3a9d53a36107fb92f562f97bba422a531 100644 (file)
@@ -108,6 +108,13 @@ static int context_read_data(Context *c) {
                            "PRETTY_NAME", &c->data[PROP_OS_PRETTY_NAME],
                            "CPE_NAME", &c->data[PROP_OS_CPE_NAME],
                            NULL);
+        if (r == -ENOENT) {
+                r = parse_env_file("/usr/lib/os-release", NEWLINE,
+                                   "PRETTY_NAME", &c->data[PROP_OS_PRETTY_NAME],
+                                   "CPE_NAME", &c->data[PROP_OS_CPE_NAME],
+                                   NULL);
+        }
+
         if (r < 0 && r != -ENOENT)
                 return r;
 
@@ -251,7 +258,7 @@ static char* context_fallback_icon_name(Context *c) {
 }
 
 static bool hostname_is_useful(const char *hn) {
-        return !isempty(hn) && !streq(hn, "localhost");
+        return !isempty(hn) && !is_localhost(hn);
 }
 
 static int context_update_kernel_hostname(Context *c) {
@@ -312,7 +319,7 @@ static int context_write_data_machine_info(Context *c) {
 
         assert(c);
 
-        r = load_env_file("/etc/machine-info", NULL, &l);
+        r = load_env_file(NULL, "/etc/machine-info", NULL, &l);
         if (r < 0 && r != -ENOENT)
                 return r;
 
diff --git a/src/hostname/org.freedesktop.hostname1.policy b/src/hostname/org.freedesktop.hostname1.policy
new file mode 100644 (file)
index 0000000..a44b8b6
--- /dev/null
@@ -0,0 +1,76 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE policyconfig PUBLIC "-//freedesktop//DTD PolicyKit Policy Configuration 1.0//EN"
+        "http://www.freedesktop.org/standards/PolicyKit/1/policyconfig.dtd">
+<policyconfig>
+
+        <vendor>The systemd Project</vendor>
+        <vendor_url>http://www.freedesktop.org/wiki/Software/systemd</vendor_url>
+
+        <action id="org.freedesktop.hostname1.set-hostname">
+                <description>Set host name</description>
+                <description xml:lang="de">Rechnername festlegen</description>
+                <description xml:lang="el">Ορισμός ονόματος οικοδεσπότη</description>
+                <description xml:lang="fr">Définir le nom d'hôte</description>
+                <description xml:lang="it">Configura il nome host</description>
+                <description xml:lang="pl">Ustawienie nazwy komputera</description>
+                <description xml:lang="ru">Настроить имя компьютера</description>
+                <message>Authentication is required to set the local host name.</message>
+                <message xml:lang="de">Legitimierung ist zum Festlegen des lokalen Rechnernamens notwendig</message>
+                <message xml:lang="el">Απαιτείται πιστοποίηση για να ορίσετε τοπικά όνομα οικοδεσπότη.</message>
+                <message xml:lang="fr">Authentification requise pour définir le nom d'hôte local.</message>
+                <message xml:lang="it">Autenticazione richiesta per configurare il nome host locale.</message>
+                <message xml:lang="pl">Wymagane jest uwierzytelnienie, aby ustawić nazwę lokalnego komputera.</message>
+                <message xml:lang="ru">Чтобы настроить имя компьютера, необходимо пройти аутентификацию.</message>
+                <defaults>
+                        <allow_any>auth_admin_keep</allow_any>
+                        <allow_inactive>auth_admin_keep</allow_inactive>
+                        <allow_active>auth_admin_keep</allow_active>
+                </defaults>
+        </action>
+
+        <action id="org.freedesktop.hostname1.set-static-hostname">
+                <description>Set static host name</description>
+                <description xml:lang="de">Statischen Rechnernamen festlegen</description>
+                <description xml:lang="el">Ορισμός στατικού ονόματος οικοδεσπότη</description>
+                <description xml:lang="fr">Définir le nom d'hôte statique</description>
+                <description xml:lang="it">Configura il nome host statico</description>
+                <description xml:lang="pl">Ustawienie statycznej nazwy komputera</description>
+                <description xml:lang="ru">Настроить статическое имя компьютера</description>
+                <message>Authentication is required to set the statically configured local host name, as well as the pretty host name.</message>
+                <message xml:lang="de">Authentifizierung ist erforderlich, um den statisch geänderten, lokalen Rechnernamen, sowie den beschönigten Rechnernamen festzulegen.</message>
+                <message xml:lang="el">Απαιτείται πιστοποίηση για να ορίσετε το στατικά ρυθμισμένο όνομα τοπικού οικοδεσπότη, καθώς και το pretty όνομα οικοδεσπότη.</message>
+                <message xml:lang="fr">Authentification requise pour définir le nom d'hôte local de manière statique, tout comme le nom d'hôte familier.</message>
+                <message xml:lang="it">Autenticazione richiesta per configurare staticamente il nome host locale e il nome host descrittivo.</message>
+                <message xml:lang="pl">Wymagane jest uwierzytelnienie, aby ustawić statycznie skonfigurowaną nazwę lokalnego komputera, a także jego ładną nazwę.</message>
+                <message xml:lang="ru">Чтобы настроить статическое имя компьютера, а также его «красивое» имя, необходимо пройти аутентификацию.</message>
+                <defaults>
+                        <allow_any>auth_admin_keep</allow_any>
+                        <allow_inactive>auth_admin_keep</allow_inactive>
+                        <allow_active>auth_admin_keep</allow_active>
+                </defaults>
+                <annotate key="org.freedesktop.policykit.imply">org.freedesktop.hostname1.set-hostname org.freedesktop.hostname1.set-machine-info</annotate>
+        </action>
+
+        <action id="org.freedesktop.hostname1.set-machine-info">
+                <description>Set machine information</description>
+                <description xml:lang="de">Maschinen-Information festlegen</description>
+                <description xml:lang="el">Ορισμός πληροφοριών μηχανής</description>
+                <description xml:lang="fr">Définir les informations sur la machine</description>
+                <description xml:lang="it">Configura le informazioni sulla macchina</description>
+                <description xml:lang="pl">Ustawienie informacji o komputerze</description>
+                <description xml:lang="ru">Настроить информацию о компьютере</description>
+                <message>Authentication is required to set local machine information.</message>
+                <message xml:lang="de">Legitimierung ist zum Festlegen der lokalen Maschinen-Information erforderlich.</message>
+                <message xml:lang="el">Απαιτείται πιστοποίηση για να ορίσετε πληροφορίες τοπικής μηχανής.</message>
+                <message xml:lang="fr">Authentification requise pour définir les informations sur la machine locale.</message>
+                <message xml:lang="it">Autenticazione richiesta per configurare le informazioni sulla macchina locale.</message>
+                <message xml:lang="pl">Wymagane jest uwierzytelnienie, aby ustawić informacje o lokalnym komputerze.</message>
+                <message xml:lang="ru">Чтобы настроить информацию о компьютере, необходимо пройти аутентификацию.</message>
+                <defaults>
+                        <allow_any>auth_admin_keep</allow_any>
+                        <allow_inactive>auth_admin_keep</allow_inactive>
+                        <allow_active>auth_admin_keep</allow_active>
+                </defaults>
+        </action>
+
+</policyconfig>
\ No newline at end of file
index a4427be75a04fd97e8846bea9f9be7ae2640d624..1fc62ead2a9b68ca9c4489d840d66a8dff7c0406 100644 (file)
 #include <assert.h>
 #include <stdlib.h>
 #include <string.h>
+#include <unistd.h>
 #include <lzma.h>
 
-#include "macro.h"
 #include "compress.h"
+#include "macro.h"
+#include "util.h"
 
 bool compress_blob(const void *src, uint64_t src_size, void *dst, uint64_t *dst_size) {
-        lzma_stream s = LZMA_STREAM_INIT;
         lzma_ret ret;
-        bool b = false;
+        size_t out_pos = 0;
 
         assert(src);
         assert(src_size > 0);
@@ -40,30 +41,17 @@ bool compress_blob(const void *src, uint64_t src_size, void *dst, uint64_t *dst_
         /* Returns false if we couldn't compress the data or the
          * compressed result is longer than the original */
 
-        ret = lzma_easy_encoder(&s, LZMA_PRESET_DEFAULT, LZMA_CHECK_NONE);
+        ret = lzma_easy_buffer_encode(LZMA_PRESET_DEFAULT, LZMA_CHECK_NONE, NULL,
+                                      src, src_size, dst, &out_pos, src_size);
         if (ret != LZMA_OK)
                 return false;
 
-        s.next_in = src;
-        s.avail_in = src_size;
-        s.next_out = dst;
-        s.avail_out = src_size;
-
-        /* Does it fit? */
-        if (lzma_code(&s, LZMA_FINISH) != LZMA_STREAM_END)
-                goto fail;
-
         /* Is it actually shorter? */
-        if (s.avail_out == 0)
-                goto fail;
-
-        *dst_size = src_size - s.avail_out;
-        b = true;
-
-fail:
-        lzma_end(&s);
+        if (out_pos == src_size)
+                return false;
 
-        return b;
+        *dst_size = out_pos;
+        return true;
 }
 
 bool uncompress_blob(const void *src, uint64_t src_size,
@@ -214,3 +202,149 @@ fail:
 
         return b;
 }
+
+int compress_stream(int fdf, int fdt, uint32_t preset, off_t max_bytes) {
+        _cleanup_(lzma_end) lzma_stream s = LZMA_STREAM_INIT;
+        lzma_ret ret;
+
+        uint8_t buf[BUFSIZ], out[BUFSIZ];
+        lzma_action action = LZMA_RUN;
+
+        assert(fdf >= 0);
+        assert(fdt >= 0);
+
+        ret = lzma_easy_encoder(&s, preset, LZMA_CHECK_CRC64);
+        if (ret != LZMA_OK) {
+                log_error("Failed to initialize XZ encoder: code %d", ret);
+                return -EINVAL;
+        }
+
+        for (;;) {
+                if (s.avail_in == 0 && action == LZMA_RUN) {
+                        size_t m = sizeof(buf);
+                        ssize_t n;
+
+                        if (max_bytes != -1 && m > (size_t) max_bytes)
+                                m = max_bytes;
+
+                        n = read(fdf, buf, m);
+                        if (n < 0)
+                                return -errno;
+                        if (n == 0)
+                                action = LZMA_FINISH;
+                        else {
+                                s.next_in = buf;
+                                s.avail_in = n;
+
+                                if (max_bytes != -1) {
+                                        assert(max_bytes >= n);
+                                        max_bytes -= n;
+                                }
+                        }
+                }
+
+                if (s.avail_out == 0) {
+                        s.next_out = out;
+                        s.avail_out = sizeof(out);
+                }
+
+                ret = lzma_code(&s, action);
+                if (ret != LZMA_OK && ret != LZMA_STREAM_END) {
+                        log_error("Compression failed: code %d", ret);
+                        return -EBADMSG;
+                }
+
+                if (s.avail_out == 0 || ret == LZMA_STREAM_END) {
+                        ssize_t n, k;
+
+                        n = sizeof(out) - s.avail_out;
+
+                        errno = 0;
+                        k = loop_write(fdt, out, n, false);
+                        if (k < 0)
+                                return k;
+                        if (k != n)
+                                return errno ? -errno : -EIO;
+
+                        if (ret == LZMA_STREAM_END) {
+                                log_debug("Compression finished (%zu -> %zu bytes, %.1f%%)",
+                                          s.total_in, s.total_out,
+                                          (double) s.total_out / s.total_in * 100);
+
+                                return 0;
+                        }
+                }
+        }
+}
+
+int decompress_stream(int fdf, int fdt, off_t max_bytes) {
+        _cleanup_(lzma_end) lzma_stream s = LZMA_STREAM_INIT;
+        lzma_ret ret;
+
+        uint8_t buf[BUFSIZ], out[BUFSIZ];
+        lzma_action action = LZMA_RUN;
+
+        assert(fdf >= 0);
+        assert(fdt >= 0);
+
+        ret = lzma_stream_decoder(&s, UINT64_MAX, 0);
+        if (ret != LZMA_OK) {
+                log_error("Failed to initialize XZ decoder: code %d", ret);
+                return -EINVAL;
+        }
+
+        for (;;) {
+                if (s.avail_in == 0 && action == LZMA_RUN) {
+                        ssize_t n;
+
+                        n = read(fdf, buf, sizeof(buf));
+                        if (n < 0)
+                                return -errno;
+                        if (n == 0)
+                                action = LZMA_FINISH;
+                        else {
+                                s.next_in = buf;
+                                s.avail_in = n;
+                        }
+                }
+
+                if (s.avail_out == 0) {
+                        s.next_out = out;
+                        s.avail_out = sizeof(out);
+                }
+
+                ret = lzma_code(&s, action);
+                if (ret != LZMA_OK && ret != LZMA_STREAM_END) {
+                        log_error("Decompression failed: code %d", ret);
+                        return -EBADMSG;
+                }
+
+                if (s.avail_out == 0 || ret == LZMA_STREAM_END) {
+                        ssize_t n, k;
+
+                        n = sizeof(out) - s.avail_out;
+
+                        if (max_bytes != -1) {
+                                if (max_bytes < n)
+                                        return -E2BIG;
+
+                                max_bytes -= n;
+                        }
+
+                        errno = 0;
+                        k = loop_write(fdt, out, n, false);
+                        if (k < 0)
+                                return k;
+                        if (k != n)
+                                return errno ? -errno : -EIO;
+
+                        if (ret == LZMA_STREAM_END) {
+                                log_debug("Decompression finished (%zu -> %zu bytes, %.1f%%)",
+                                          s.total_in, s.total_out,
+                                          (double) s.total_out / s.total_in * 100);
+
+                                return 0;
+                        }
+                }
+        }
+}
index 2b87e73a267af9898bc9ecc1aaa6453813687e57..f25fe86abd56423c175bdd7832e9ac2583fd03c1 100644 (file)
@@ -23,6 +23,7 @@
 
 #include <inttypes.h>
 #include <stdbool.h>
+#include <unistd.h>
 
 bool compress_blob(const void *src, uint64_t src_size, void *dst, uint64_t *dst_size);
 
@@ -33,3 +34,6 @@ bool uncompress_startswith(const void *src, uint64_t src_size,
                            void **buffer, uint64_t *buffer_size,
                            const void *prefix, uint64_t prefix_len,
                            uint8_t extra);
+
+int compress_stream(int fdf, int fdt, uint32_t preset, off_t max_size);
+int decompress_stream(int fdf, int fdt, off_t max_size);
diff --git a/src/journal/coredump-vacuum.c b/src/journal/coredump-vacuum.c
new file mode 100644 (file)
index 0000000..125bb3a
--- /dev/null
@@ -0,0 +1,272 @@
+/*-*- Mode: C; c-basic-offset: 8; indent-tabs-mode: nil -*-*/
+
+/***
+  This file is part of systemd.
+
+  Copyright 2014 Lennart Poettering
+
+  systemd is free software; you can redistribute it and/or modify it
+  under the terms of the GNU Lesser General Public License as published by
+  the Free Software Foundation; either version 2.1 of the License, or
+  (at your option) any later version.
+
+  systemd is distributed in the hope that it will be useful, but
+  WITHOUT ANY WARRANTY; without even the implied warranty of
+  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+  Lesser General Public License for more details.
+
+  You should have received a copy of the GNU Lesser General Public License
+  along with systemd; If not, see <http://www.gnu.org/licenses/>.
+***/
+
+#include <sys/statvfs.h>
+
+#include "util.h"
+#include "time-util.h"
+#include "hashmap.h"
+#include "macro.h"
+
+#include "coredump-vacuum.h"
+
+#define DEFAULT_MAX_USE_LOWER (off_t) (1ULL*1024ULL*1024ULL)           /* 1 MiB */
+#define DEFAULT_MAX_USE_UPPER (off_t) (4ULL*1024ULL*1024ULL*1024ULL)   /* 4 GiB */
+#define DEFAULT_KEEP_FREE_UPPER (off_t) (4ULL*1024ULL*1024ULL*1024ULL) /* 4 GiB */
+#define DEFAULT_KEEP_FREE (off_t) (1024ULL*1024ULL)                    /* 1 MB */
+
+struct vacuum_candidate {
+        unsigned n_files;
+        char *oldest_file;
+        usec_t oldest_mtime;
+};
+
+static void vacuum_candidate_free(struct vacuum_candidate *c) {
+        if (!c)
+                return;
+
+        free(c->oldest_file);
+        free(c);
+}
+
+DEFINE_TRIVIAL_CLEANUP_FUNC(struct vacuum_candidate*, vacuum_candidate_free);
+
+static void vacuum_candidate_hasmap_free(Hashmap *h) {
+        struct vacuum_candidate *c;
+
+        while ((c = hashmap_steal_first(h)))
+                vacuum_candidate_free(c);
+
+        hashmap_free(h);
+}
+
+DEFINE_TRIVIAL_CLEANUP_FUNC(Hashmap*, vacuum_candidate_hasmap_free);
+
+static int uid_from_file_name(const char *filename, uid_t *uid) {
+        const char *p, *e, *u;
+
+        p = startswith(filename, "core.");
+        if (!p)
+                return -EINVAL;
+
+        /* Skip the comm field */
+        p = strchr(p, '.');
+        if (!p)
+                return -EINVAL;
+        p++;
+
+        /* Find end up UID */
+        e = strchr(p, '.');
+        if (!e)
+                return -EINVAL;
+
+        u = strndupa(p, e-p);
+        return parse_uid(u, uid);
+}
+
+static bool vacuum_necessary(int fd, off_t sum, off_t keep_free, off_t max_use) {
+        off_t fs_size = 0, fs_free = (off_t) -1;
+        struct statvfs sv;
+
+        assert(fd >= 0);
+
+        if (fstatvfs(fd, &sv) >= 0) {
+                fs_size = sv.f_frsize * sv.f_blocks;
+                fs_free = sv.f_frsize * sv.f_bfree;
+        }
+
+        if (max_use == (off_t) -1) {
+
+                if (fs_size > 0) {
+                        max_use = PAGE_ALIGN(fs_size / 10); /* 10% */
+
+                        if (max_use > DEFAULT_MAX_USE_UPPER)
+                                max_use = DEFAULT_MAX_USE_UPPER;
+
+                        if (max_use < DEFAULT_MAX_USE_LOWER)
+                                max_use = DEFAULT_MAX_USE_LOWER;
+                }
+                else
+                        max_use = DEFAULT_MAX_USE_LOWER;
+        } else
+                max_use = PAGE_ALIGN(max_use);
+
+        if (max_use > 0 && sum > max_use)
+                return true;
+
+        if (keep_free == (off_t) -1) {
+
+                if (fs_size > 0) {
+                        keep_free = PAGE_ALIGN((fs_size * 3) / 20); /* 15% */
+
+                        if (keep_free > DEFAULT_KEEP_FREE_UPPER)
+                                keep_free = DEFAULT_KEEP_FREE_UPPER;
+                } else
+                        keep_free = DEFAULT_KEEP_FREE;
+        } else
+                keep_free = PAGE_ALIGN(keep_free);
+
+        if (keep_free > 0 && fs_free < keep_free)
+                return true;
+
+        return false;
+}
+
+int coredump_vacuum(int exclude_fd, off_t keep_free, off_t max_use) {
+        _cleanup_closedir_ DIR *d = NULL;
+        struct stat exclude_st;
+        int r;
+
+        if (keep_free <= 0 && max_use <= 0)
+                return 0;
+
+        if (exclude_fd >= 0) {
+                if (fstat(exclude_fd, &exclude_st) < 0) {
+                        log_error("Failed to fstat(): %m");
+                        return -errno;
+                }
+        }
+
+        /* This algorithm will keep deleting the oldest file of the
+         * user with the most coredumps until we are back in the size
+         * limits. Note that vacuuming for journal files is different,
+         * because we rely on rate-limiting of the messages there,
+         * to avoid being flooded. */
+
+        d = opendir("/var/lib/systemd/coredump");
+        if (!d) {
+                if (errno == ENOENT)
+                        return 0;
+
+                log_error("Can't open coredump directory: %m");
+                return -errno;
+        }
+
+        for (;;) {
+                _cleanup_(vacuum_candidate_hasmap_freep) Hashmap *h = NULL;
+                struct vacuum_candidate *worst = NULL;
+                struct dirent *de;
+                off_t sum = 0;
+
+                rewinddir(d);
+
+                FOREACH_DIRENT(de, d, goto fail) {
+                        struct vacuum_candidate *c;
+                        struct stat st;
+                        uid_t uid;
+                        usec_t t;
+
+                        r = uid_from_file_name(de->d_name, &uid);
+                        if (r < 0)
+                                continue;
+
+                        if (fstatat(dirfd(d), de->d_name, &st, AT_NO_AUTOMOUNT|AT_SYMLINK_NOFOLLOW) < 0) {
+                                if (errno == ENOENT)
+                                        continue;
+
+                                log_warning("Failed to stat /var/lib/systemd/coredump/%s", de->d_name);
+                                continue;
+                        }
+
+                        if (!S_ISREG(st.st_mode))
+                                continue;
+
+                        if (exclude_fd >= 0 &&
+                            exclude_st.st_dev == st.st_dev &&
+                            exclude_st.st_ino == st.st_ino)
+                                continue;
+
+                        r = hashmap_ensure_allocated(&h, NULL, NULL);
+                        if (r < 0)
+                                return log_oom();
+
+                        t = timespec_load(&st.st_mtim);
+
+                        c = hashmap_get(h, UINT32_TO_PTR(uid));
+                        if (c) {
+
+                                if (t < c->oldest_mtime) {
+                                        char *n;
+
+                                        n = strdup(de->d_name);
+                                        if (!n)
+                                                return log_oom();
+
+                                        free(c->oldest_file);
+                                        c->oldest_file = n;
+                                        c->oldest_mtime = t;
+                                }
+
+                        } else {
+                                _cleanup_(vacuum_candidate_freep) struct vacuum_candidate *n = NULL;
+
+                                n = new0(struct vacuum_candidate, 1);
+                                if (!n)
+                                        return log_oom();
+
+                                n->oldest_file = strdup(de->d_name);
+                                if (!n->oldest_file)
+                                        return log_oom();
+
+                                n->oldest_mtime = t;
+
+                                r = hashmap_put(h, UINT32_TO_PTR(uid), n);
+                                if (r < 0)
+                                        return log_oom();
+
+                                c = n;
+                                n = NULL;
+                        }
+
+                        c->n_files++;
+
+                        if (!worst ||
+                            worst->n_files < c->n_files ||
+                            (worst->n_files == c->n_files && c->oldest_mtime < worst->oldest_mtime))
+                                worst = c;
+
+                        sum += st.st_blocks * 512;
+                }
+
+                if (!worst)
+                        break;
+
+                r = vacuum_necessary(dirfd(d), sum, keep_free, max_use);
+                if (r <= 0)
+                        return r;
+
+                if (unlinkat(dirfd(d), worst->oldest_file, 0) < 0) {
+
+                        if (errno == ENOENT)
+                                continue;
+
+                        log_error("Failed to remove file %s: %m", worst->oldest_file);
+                        return -errno;
+                } else
+                        log_info("Removed old coredump %s.", worst->oldest_file);
+        }
+
+        return 0;
+
+fail:
+        log_error("Failed to read directory: %m");
+        return -errno;
+}
diff --git a/src/journal/coredump-vacuum.h b/src/journal/coredump-vacuum.h
new file mode 100644 (file)
index 0000000..7ad4399
--- /dev/null
@@ -0,0 +1,26 @@
+/*-*- Mode: C; c-basic-offset: 8; indent-tabs-mode: nil -*-*/
+
+#pragma once
+
+/***
+  This file is part of systemd.
+
+  Copyright 2014 Lennart Poettering
+
+  systemd is free software; you can redistribute it and/or modify it
+  under the terms of the GNU Lesser General Public License as published by
+  the Free Software Foundation; either version 2.1 of the License, or
+  (at your option) any later version.
+
+  systemd is distributed in the hope that it will be useful, but
+  WITHOUT ANY WARRANTY; without even the implied warranty of
+  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+  Lesser General Public License for more details.
+
+  You should have received a copy of the GNU Lesser General Public License
+  along with systemd; If not, see <http://www.gnu.org/licenses/>.
+***/
+
+#include <sys/types.h>
+
+int coredump_vacuum(int exclude_fd, off_t keep_free, off_t max_use);
index 74b1dbd0138183e461d05e7a1f9b97ab391ee4bf..78e89d33cfe898bda0123f027e4f6533ccb5db60 100644 (file)
 #include <unistd.h>
 #include <stdio.h>
 #include <sys/prctl.h>
+#include <sys/types.h>
+#include <sys/xattr.h>
 
 #include <systemd/sd-journal.h>
-
-#ifdef HAVE_LOGIND
 #include <systemd/sd-login.h>
-#endif
 
 #include "log.h"
 #include "util.h"
+#include "strv.h"
 #include "macro.h"
 #include "mkdir.h"
 #include "special.h"
 #include "cgroup-util.h"
 #include "journald-native.h"
+#include "conf-parser.h"
+#include "copy.h"
+#include "stacktrace.h"
+#include "path-util.h"
+#include "compress.h"
+#include "coredump-vacuum.h"
+
+#ifdef HAVE_ACL
+#  include <sys/acl.h>
+#  include "acl-util.h"
+#endif
+
+#ifdef HAVE_XZ
+#  include <lzma.h>
+#else
+#  define LZMA_PRESET_DEFAULT 0
+#endif
+
+/* The maximum size up to which we process coredumps */
+#define PROCESS_SIZE_MAX ((off_t) (2LLU*1024LLU*1024LLU*1024LLU))
+
+/* The maximum size up to which we leave the coredump around on
+ * disk */
+#define EXTERNAL_SIZE_MAX PROCESS_SIZE_MAX
+
+/* The maximum size up to which we store the coredump in the
+ * journal */
+#define JOURNAL_SIZE_MAX ((size_t) (767LU*1024LU*1024LU))
 
-/* Few programs have less than 3MiB resident */
-#define COREDUMP_MIN_START (3*1024*1024u)
 /* Make sure to not make this larger than the maximum journal entry
  * size. See ENTRY_SIZE_MAX in journald-native.c. */
-#define COREDUMP_MAX (767*1024*1024u)
-assert_cc(COREDUMP_MAX <= ENTRY_SIZE_MAX);
+assert_cc(JOURNAL_SIZE_MAX <= ENTRY_SIZE_MAX);
 
 enum {
-        ARG_PID = 1,
-        ARG_UID,
-        ARG_GID,
-        ARG_SIGNAL,
-        ARG_TIMESTAMP,
-        ARG_COMM,
-        _ARG_MAX
+        INFO_PID,
+        INFO_UID,
+        INFO_GID,
+        INFO_SIGNAL,
+        INFO_TIMESTAMP,
+        INFO_COMM,
+        INFO_EXE,
+        _INFO_LEN
+};
+
+typedef enum CoredumpStorage {
+        COREDUMP_STORAGE_NONE,
+        COREDUMP_STORAGE_EXTERNAL,
+        COREDUMP_STORAGE_JOURNAL,
+        COREDUMP_STORAGE_BOTH,
+        _COREDUMP_STORAGE_MAX,
+        _COREDUMP_STORAGE_INVALID = -1
+} CoredumpStorage;
+
+static const char* const coredump_storage_table[_COREDUMP_STORAGE_MAX] = {
+        [COREDUMP_STORAGE_NONE] = "none",
+        [COREDUMP_STORAGE_EXTERNAL] = "external",
+        [COREDUMP_STORAGE_JOURNAL] = "journal",
+        [COREDUMP_STORAGE_BOTH] = "both",
 };
 
-static int divert_coredump(void) {
-        _cleanup_fclose_ FILE *f = NULL;
+DEFINE_PRIVATE_STRING_TABLE_LOOKUP(coredump_storage, CoredumpStorage);
+static DEFINE_CONFIG_PARSE_ENUM(config_parse_coredump_storage, coredump_storage, CoredumpStorage, "Failed to parse storage setting");
+
+static CoredumpStorage arg_storage = COREDUMP_STORAGE_EXTERNAL;
+static bool arg_compress = true;
+static off_t arg_process_size_max = PROCESS_SIZE_MAX;
+static off_t arg_external_size_max = EXTERNAL_SIZE_MAX;
+static size_t arg_journal_size_max = JOURNAL_SIZE_MAX;
+static off_t arg_keep_free = (off_t) -1;
+static off_t arg_max_use = (off_t) -1;
+
+static int parse_config(void) {
+        static const ConfigTableItem items[] = {
+                { "Coredump", "Storage",          config_parse_coredump_storage,  0, &arg_storage           },
+                { "Coredump", "Compress",         config_parse_bool,              0, &arg_compress          },
+                { "Coredump", "ProcessSizeMax",   config_parse_iec_off,           0, &arg_process_size_max  },
+                { "Coredump", "ExternalSizeMax",  config_parse_iec_off,           0, &arg_external_size_max },
+                { "Coredump", "JournalSizeMax",   config_parse_iec_size,          0, &arg_journal_size_max  },
+                { "Coredump", "KeepFree",         config_parse_iec_off,           0, &arg_keep_free         },
+                { "Coredump", "MaxUse",           config_parse_iec_off,           0, &arg_max_use           },
+                {}
+        };
+
+        return config_parse(
+                        NULL,
+                        "/etc/systemd/coredump.conf",
+                        NULL,
+                        "Coredump\0",
+                        config_item_table_lookup,
+                        (void*) items,
+                        false,
+                        false,
+                        NULL);
+}
+
+static int fix_acl(int fd, uid_t uid) {
+
+#ifdef HAVE_ACL
+        _cleanup_(acl_freep) acl_t acl = NULL;
+        acl_entry_t entry;
+        acl_permset_t permset;
+
+        assert(fd >= 0);
+
+        if (uid <= SYSTEM_UID_MAX)
+                return 0;
+
+        /* Make sure normal users can read (but not write or delete)
+         * their own coredumps */
+
+        acl = acl_get_fd(fd);
+        if (!acl) {
+                log_error("Failed to get ACL: %m");
+                return -errno;
+        }
+
+        if (acl_create_entry(&acl, &entry) < 0 ||
+            acl_set_tag_type(entry, ACL_USER) < 0 ||
+            acl_set_qualifier(entry, &uid) < 0) {
+                log_error("Failed to patch ACL: %m");
+                return -errno;
+        }
+
+        if (acl_get_permset(entry, &permset) < 0 ||
+            acl_add_perm(permset, ACL_READ) < 0 ||
+            calc_acl_mask_if_needed(&acl) < 0) {
+                log_warning("Failed to patch ACL: %m");
+                return -errno;
+        }
+
+        if (acl_set_fd(fd, acl) < 0) {
+                log_error("Failed to apply ACL: %m");
+                return -errno;
+        }
+#endif
+
+        return 0;
+}
+
+static int fix_xattr(int fd, const char *info[_INFO_LEN]) {
+
+        static const char * const xattrs[_INFO_LEN] = {
+                [INFO_PID] = "user.coredump.pid",
+                [INFO_UID] = "user.coredump.uid",
+                [INFO_GID] = "user.coredump.gid",
+                [INFO_SIGNAL] = "user.coredump.signal",
+                [INFO_TIMESTAMP] = "user.coredump.timestamp",
+                [INFO_COMM] = "user.coredump.comm",
+                [INFO_EXE] = "user.coredump.exe",
+        };
+
+        int r = 0;
+        unsigned i;
+
+        assert(fd >= 0);
+
+        /* Attach some metadata to coredumps via extended
+         * attributes. Just because we can. */
+
+        for (i = 0; i < _INFO_LEN; i++) {
+                int k;
+
+                if (isempty(info[i]) || !xattrs[i])
+                        continue;
+
+                k = fsetxattr(fd, xattrs[i], info[i], strlen(info[i]), XATTR_CREATE);
+                if (k < 0 && r == 0)
+                        r = -errno;
+        }
+
+        return r;
+}
+
+#define filename_escape(s) xescape((s), "./ ")
+
+static int fix_permissions(
+                int fd,
+                const char *filename,
+                const char *target,
+                const char *info[_INFO_LEN],
+                uid_t uid) {
+
+        assert(fd >= 0);
+        assert(filename);
+        assert(target);
+        assert(info);
+
+        /* Ignore errors on these */
+        fchmod(fd, 0640);
+        fix_acl(fd, uid);
+        fix_xattr(fd, info);
+
+        if (fsync(fd) < 0) {
+                log_error("Failed to sync coredump %s: %m", filename);
+                return -errno;
+        }
+
+        if (rename(filename, target) < 0) {
+                log_error("Failed to rename coredump %s -> %s: %m", filename, target);
+                return -errno;
+        }
+
+        return 0;
+}
+
+static int maybe_remove_external_coredump(const char *filename, off_t size) {
+
+        /* Returns 1 if might remove, 0 if will not remove, < 0 on error. */
+
+        if (IN_SET(arg_storage, COREDUMP_STORAGE_EXTERNAL, COREDUMP_STORAGE_BOTH) &&
+            size <= arg_external_size_max)
+                return 0;
+
+        if (!filename)
+                return 1;
+
+        if (unlink(filename) < 0 && errno != ENOENT) {
+                log_error("Failed to unlink %s: %m", filename);
+                return -errno;
+        }
+
+        return 1;
+}
+
+static int make_filename(const char *info[_INFO_LEN], char **ret) {
+        _cleanup_free_ char *c = NULL, *u = NULL, *p = NULL, *t = NULL;
+        sd_id128_t boot;
+        int r;
+
+        assert(info);
+
+        c = filename_escape(info[INFO_COMM]);
+        if (!c)
+                return -ENOMEM;
+
+        u = filename_escape(info[INFO_UID]);
+        if (!u)
+                return -ENOMEM;
+
+        r = sd_id128_get_boot(&boot);
+        if (r < 0)
+                return r;
+
+        p = filename_escape(info[INFO_PID]);
+        if (!p)
+                return -ENOMEM;
 
-        log_info("Detected coredump of the journal daemon itself, diverting coredump to /var/lib/systemd/coredump/.");
+        t = filename_escape(info[INFO_TIMESTAMP]);
+        if (!t)
+                return -ENOMEM;
+
+        if (asprintf(ret,
+                     "/var/lib/systemd/coredump/core.%s.%s." SD_ID128_FORMAT_STR ".%s.%s000000",
+                     c,
+                     u,
+                     SD_ID128_FORMAT_VAL(boot),
+                     p,
+                     t) < 0)
+                return -ENOMEM;
+
+        return 0;
+}
+
+static int save_external_coredump(
+                const char *info[_INFO_LEN],
+                uid_t uid,
+                char **ret_filename,
+                int *ret_fd,
+                off_t *ret_size) {
+
+        _cleanup_free_ char *fn = NULL, *tmp = NULL;
+        _cleanup_close_ int fd = -1;
+        struct stat st;
+        int r;
+
+        assert(info);
+        assert(ret_filename);
+        assert(ret_fd);
+        assert(ret_size);
+
+        r = make_filename(info, &fn);
+        if (r < 0) {
+                log_error("Failed to determine coredump file name: %s", strerror(-r));
+                return r;
+        }
+
+        tmp = tempfn_random(fn);
+        if (!tmp)
+                return log_oom();
 
         mkdir_p_label("/var/lib/systemd/coredump", 0755);
 
-        f = fopen("/var/lib/systemd/coredump/core.systemd-journald", "we");
-        if (!f) {
-                log_error("Failed to create coredump file: %m");
+        fd = open(tmp, O_CREAT|O_EXCL|O_RDWR|O_CLOEXEC|O_NOCTTY|O_NOFOLLOW, 0640);
+        if (fd < 0) {
+                log_error("Failed to create coredump file %s: %m", tmp);
                 return -errno;
         }
 
-        for (;;) {
-                uint8_t buffer[4096];
-                size_t l, q;
+        r = copy_bytes(STDIN_FILENO, fd, arg_process_size_max);
+        if (r == -E2BIG) {
+                log_error("Coredump of %s (%s) is larger than configured processing limit, refusing.", info[INFO_PID], info[INFO_COMM]);
+                goto fail;
+        } else if (IN_SET(r, -EDQUOT, -ENOSPC)) {
+                log_error("Not enough disk space for coredump of %s (%s), refusing.", info[INFO_PID], info[INFO_COMM]);
+                goto fail;
+        } else if (r < 0) {
+                log_error("Failed to dump coredump to file: %s", strerror(-r));
+                goto fail;
+        }
+
+        if (fstat(fd, &st) < 0) {
+                log_error("Failed to fstat coredump %s: %m", tmp);
+                goto fail;
+        }
+
+        if (lseek(fd, 0, SEEK_SET) == (off_t) -1) {
+                log_error("Failed to seek on %s: %m", tmp);
+                goto fail;
+        }
+
+#ifdef HAVE_XZ
+        /* If we will remove the coredump anyway, do not compress. */
+        if (maybe_remove_external_coredump(NULL, st.st_size) == 0
+            && arg_compress) {
+
+                _cleanup_free_ char *fn_compressed = NULL, *tmp_compressed = NULL;
+                _cleanup_close_ int fd_compressed = -1;
 
-                l = fread(buffer, 1, sizeof(buffer), stdin);
-                if (l <= 0) {
-                        if (ferror(f)) {
-                                log_error("Failed to read coredump: %m");
-                                return -errno;
-                        }
+                fn_compressed = strappend(fn, ".xz");
+                if (!fn_compressed) {
+                        r = log_oom();
+                        goto uncompressed;
+                }
+
+                tmp_compressed = tempfn_random(fn_compressed);
+                if (!tmp_compressed) {
+                        r = log_oom();
+                        goto uncompressed;
+                }
 
-                        break;
+                fd_compressed = open(tmp_compressed, O_CREAT|O_EXCL|O_RDWR|O_CLOEXEC|O_NOCTTY|O_NOFOLLOW, 0640);
+                if (fd_compressed < 0) {
+                        log_error("Failed to create file %s: %m", tmp_compressed);
+                        goto uncompressed;
                 }
 
-                q = fwrite(buffer, 1, l, f);
-                if (q != l) {
-                        log_error("Failed to write coredump: %m");
-                        return -errno;
+                r = compress_stream(fd, fd_compressed, LZMA_PRESET_DEFAULT, -1);
+                if (r < 0) {
+                        log_error("Failed to compress %s: %s", tmp_compressed, strerror(-r));
+                        goto fail_compressed;
                 }
+
+                r = fix_permissions(fd_compressed, tmp_compressed, fn_compressed, info, uid);
+                if (r < 0)
+                        goto fail_compressed;
+
+                /* OK, this worked, we can get rid of the uncompressed version now */
+                unlink_noerrno(tmp);
+
+                *ret_filename = fn_compressed;    /* compressed */
+                *ret_fd = fd;                     /* uncompressed */
+                *ret_size = st.st_size;           /* uncompressed */
+
+                fn_compressed = NULL;
+                fd = -1;
+
+                return 0;
+
+        fail_compressed:
+                unlink_noerrno(tmp_compressed);
         }
+#endif
+
+uncompressed:
+        r = fix_permissions(fd, tmp, fn, info, uid);
+        if (r < 0)
+                goto fail;
+
+        *ret_filename = fn;
+        *ret_fd = fd;
+        *ret_size = st.st_size;
+
+        fn = NULL;
+        fd = -1;
+
+        return 0;
+
+fail:
+        unlink_noerrno(tmp);
+        return r;
+}
 
-        fflush(f);
+static int allocate_journal_field(int fd, size_t size, char **ret, size_t *ret_size) {
+        _cleanup_free_ char *field = NULL;
+        ssize_t n;
+
+        assert(fd >= 0);
+        assert(ret);
+        assert(ret_size);
 
-        if (ferror(f)) {
-                log_error("Failed to write coredump: %m");
+        if (lseek(fd, 0, SEEK_SET) == (off_t) -1) {
+                log_warning("Failed to seek: %m");
                 return -errno;
         }
 
+        field = malloc(9 + size);
+        if (!field) {
+                log_warning("Failed to allocate memory for coredump, coredump will not be stored.");
+                return -ENOMEM;
+        }
+
+        memcpy(field, "COREDUMP=", 9);
+
+        n = read(fd, field + 9, size);
+        if (n < 0) {
+                log_error("Failed to read core data: %s", strerror(-n));
+                return (int) n;
+        }
+        if ((size_t) n < size) {
+                log_error("Core data too short.");
+                return -EIO;
+        }
+
+        *ret = field;
+        *ret_size = size + 9;
+
+        field = NULL;
+
         return 0;
 }
 
 int main(int argc, char* argv[]) {
-        int r, j = 0;
-        char *t;
-        ssize_t n;
-        pid_t pid;
-        uid_t uid;
-        gid_t gid;
-        struct iovec iovec[14];
-        size_t coredump_bufsize = 0, coredump_size = 0;
+
         _cleanup_free_ char *core_pid = NULL, *core_uid = NULL, *core_gid = NULL, *core_signal = NULL,
                 *core_timestamp = NULL, *core_comm = NULL, *core_exe = NULL, *core_unit = NULL,
-                *core_session = NULL, *core_message = NULL, *core_cmdline = NULL, *coredump_data = NULL;
+                *core_session = NULL, *core_message = NULL, *core_cmdline = NULL, *coredump_data = NULL,
+                *core_slice = NULL, *core_cgroup = NULL, *core_owner_uid = NULL,
+                *exe = NULL, *comm = NULL, *filename = NULL;
+        const char *info[_INFO_LEN];
+
+        _cleanup_close_ int coredump_fd = -1;
+
+        struct iovec iovec[18];
+        off_t coredump_size;
+        int r, j = 0;
+        uid_t uid, owner_uid;
+        gid_t gid;
+        pid_t pid;
+        char *t;
 
+        /* Make sure we never enter a loop */
         prctl(PR_SET_DUMPABLE, 0);
 
-        if (argc != _ARG_MAX) {
-                log_set_target(LOG_TARGET_JOURNAL_OR_KMSG);
-                log_open();
+        /* First, log to a safe place, since we don't know what
+         * crashed and it might be journald which we'd rather not log
+         * to then. */
+        log_set_target(LOG_TARGET_KMSG);
+        log_open();
 
-                log_error("Invalid number of arguments passed from kernel.");
+        if (argc < INFO_COMM + 1) {
+                log_error("Not enough arguments passed from kernel (%d, expected %d).",
+                          argc - 1, INFO_COMM + 1 - 1);
                 r = -EINVAL;
                 goto finish;
         }
 
-        r = parse_pid(argv[ARG_PID], &pid);
+        /* Ignore all parse errors */
+        parse_config();
+
+        log_debug("Selected storage '%s'.", coredump_storage_to_string(arg_storage));
+        log_debug("Selected compression %s.", yes_no(arg_compress));
+
+        r = parse_uid(argv[INFO_UID + 1], &uid);
         if (r < 0) {
-                log_set_target(LOG_TARGET_JOURNAL_OR_KMSG);
-                log_open();
+                log_error("Failed to parse UID.");
+                goto finish;
+        }
 
+        r = parse_pid(argv[INFO_PID + 1], &pid);
+        if (r < 0) {
                 log_error("Failed to parse PID.");
                 goto finish;
         }
 
+        r = parse_gid(argv[INFO_GID + 1], &gid);
+        if (r < 0) {
+                log_error("Failed to parse GID.");
+                goto finish;
+        }
+
+        if (get_process_comm(pid, &comm) < 0) {
+                log_warning("Failed to get COMM, falling back to the commandline.");
+                comm = strv_join(argv + INFO_COMM + 1, " ");
+        }
+
+        if (get_process_exe(pid, &exe) < 0)
+                log_warning("Failed to get EXE.");
+
+        info[INFO_PID] = argv[INFO_PID + 1];
+        info[INFO_UID] = argv[INFO_UID + 1];
+        info[INFO_GID] = argv[INFO_GID + 1];
+        info[INFO_SIGNAL] = argv[INFO_SIGNAL + 1];
+        info[INFO_TIMESTAMP] = argv[INFO_TIMESTAMP + 1];
+        info[INFO_COMM] = comm;
+        info[INFO_EXE] = exe;
+
         if (cg_pid_get_unit(pid, &t) >= 0) {
 
                 if (streq(t, SPECIAL_JOURNALD_SERVICE)) {
-                        /* Make sure we don't make use of the journal,
-                         * if it's the journal which is crashing */
-                        log_set_target(LOG_TARGET_KMSG);
-                        log_open();
 
-                        r = divert_coredump();
+                        /* If we are journald, we cut things short,
+                         * don't write to the journal, but still
+                         * create a coredump. */
+
+                        if (arg_storage != COREDUMP_STORAGE_NONE)
+                                arg_storage = COREDUMP_STORAGE_EXTERNAL;
+
+                        r = save_external_coredump(info, uid, &filename, &coredump_fd, &coredump_size);
+                        if (r < 0)
+                                goto finish;
+
+                        r = maybe_remove_external_coredump(filename, coredump_size);
+                        if (r < 0)
+                                goto finish;
+
+                        log_info("Detected coredump of the journal daemon itself, diverted to %s.", filename);
                         goto finish;
                 }
 
@@ -151,44 +573,27 @@ int main(int argc, char* argv[]) {
         if (core_unit)
                 IOVEC_SET_STRING(iovec[j++], core_unit);
 
-        /* OK, now we know it's not the journal, hence make use of
-         * it */
+        /* OK, now we know it's not the journal, hence we can make use
+         * of it now. */
         log_set_target(LOG_TARGET_JOURNAL_OR_KMSG);
         log_open();
 
-        r = parse_uid(argv[ARG_UID], &uid);
-        if (r < 0) {
-                log_error("Failed to parse UID.");
-                goto finish;
-        }
-
-        r = parse_gid(argv[ARG_GID], &gid);
-        if (r < 0) {
-                log_error("Failed to parse GID.");
-                goto finish;
-        }
-
-        core_pid = strappend("COREDUMP_PID=", argv[ARG_PID]);
+        core_pid = strappend("COREDUMP_PID=", info[INFO_PID]);
         if (core_pid)
                 IOVEC_SET_STRING(iovec[j++], core_pid);
 
-        core_uid = strappend("COREDUMP_UID=", argv[ARG_UID]);
+        core_uid = strappend("COREDUMP_UID=", info[INFO_UID]);
         if (core_uid)
                 IOVEC_SET_STRING(iovec[j++], core_uid);
 
-        core_gid = strappend("COREDUMP_GID=", argv[ARG_GID]);
+        core_gid = strappend("COREDUMP_GID=", info[INFO_GID]);
         if (core_gid)
                 IOVEC_SET_STRING(iovec[j++], core_gid);
 
-        core_signal = strappend("COREDUMP_SIGNAL=", argv[ARG_SIGNAL]);
+        core_signal = strappend("COREDUMP_SIGNAL=", info[INFO_SIGNAL]);
         if (core_signal)
                 IOVEC_SET_STRING(iovec[j++], core_signal);
 
-        core_comm = strappend("COREDUMP_COMM=", argv[ARG_COMM]);
-        if (core_comm)
-                IOVEC_SET_STRING(iovec[j++], core_comm);
-
-#ifdef HAVE_LOGIND
         if (sd_pid_get_session(pid, &t) >= 0) {
                 core_session = strappend("COREDUMP_SESSION=", t);
                 free(t);
@@ -197,12 +602,29 @@ int main(int argc, char* argv[]) {
                         IOVEC_SET_STRING(iovec[j++], core_session);
         }
 
-#endif
+        if (sd_pid_get_owner_uid(pid, &owner_uid) >= 0) {
+                asprintf(&core_owner_uid, "COREDUMP_OWNER_UID=" UID_FMT, owner_uid);
 
-        if (get_process_exe(pid, &t) >= 0) {
-                core_exe = strappend("COREDUMP_EXE=", t);
+                if (core_owner_uid)
+                        IOVEC_SET_STRING(iovec[j++], core_owner_uid);
+        }
+
+        if (sd_pid_get_slice(pid, &t) >= 0) {
+                core_slice = strappend("COREDUMP_SLICE=", t);
                 free(t);
 
+                if (core_slice)
+                        IOVEC_SET_STRING(iovec[j++], core_slice);
+        }
+
+        if (comm) {
+                core_comm = strappend("COREDUMP_COMM=", comm);
+                if (core_comm)
+                        IOVEC_SET_STRING(iovec[j++], core_comm);
+        }
+
+        if (exe) {
+                core_exe = strappend("COREDUMP_EXE=", exe);
                 if (core_exe)
                         IOVEC_SET_STRING(iovec[j++], core_exe);
         }
@@ -215,23 +637,52 @@ int main(int argc, char* argv[]) {
                         IOVEC_SET_STRING(iovec[j++], core_cmdline);
         }
 
-        core_timestamp = strjoin("COREDUMP_TIMESTAMP=", argv[ARG_TIMESTAMP], "000000", NULL);
+        if (cg_pid_get_path_shifted(pid, NULL, &t) >= 0) {
+                core_cgroup = strappend("COREDUMP_CGROUP=", t);
+                free(t);
+
+                if (core_cgroup)
+                        IOVEC_SET_STRING(iovec[j++], core_cgroup);
+        }
+
+        core_timestamp = strjoin("COREDUMP_TIMESTAMP=", info[INFO_TIMESTAMP], "000000", NULL);
         if (core_timestamp)
                 IOVEC_SET_STRING(iovec[j++], core_timestamp);
 
         IOVEC_SET_STRING(iovec[j++], "MESSAGE_ID=fc2e22bc6ee647b6b90729ab34a250b1");
         IOVEC_SET_STRING(iovec[j++], "PRIORITY=2");
 
-        core_message = strjoin("MESSAGE=Process ", argv[ARG_PID], " (", argv[ARG_COMM], ") dumped core.", NULL);
-        if (core_message)
-                IOVEC_SET_STRING(iovec[j++], core_message);
+        /* Vacuum before we write anything again */
+        coredump_vacuum(-1, arg_keep_free, arg_max_use);
+
+        /* Always stream the coredump to disk, if that's possible */
+        r = save_external_coredump(info, uid, &filename, &coredump_fd, &coredump_size);
+        if (r < 0)
+                /* skip whole core dumping part */
+                goto log;
+
+        /* If we don't want to keep the coredump on disk, remove it
+         * now, as later on we will lack the privileges for
+         * it. However, we keep the fd to it, so that we can still
+         * process it and log it. */
+        r = maybe_remove_external_coredump(filename, coredump_size);
+        if (r < 0)
+                goto finish;
+        if (r == 0) {
+                const char *coredump_filename;
+
+                coredump_filename = strappenda("COREDUMP_FILENAME=", filename);
+                IOVEC_SET_STRING(iovec[j++], coredump_filename);
+        }
+
+        /* Vacuum again, but exclude the coredump we just created */
+        coredump_vacuum(coredump_fd, arg_keep_free, arg_max_use);
 
         /* Now, let's drop privileges to become the user who owns the
          * segfaulted process and allocate the coredump memory under
          * his uid. This also ensures that the credentials journald
          * will see are the ones of the coredumping user, thus making
          * sure the user himself gets access to the core dump. */
-
         if (setresgid(gid, gid, gid) < 0 ||
             setresuid(uid, uid, uid) < 0) {
                 log_error("Failed to drop privileges: %m");
@@ -239,40 +690,40 @@ int main(int argc, char* argv[]) {
                 goto finish;
         }
 
-        for (;;) {
-                if (!GREEDY_REALLOC(coredump_data, coredump_bufsize,
-                                    MAX(coredump_size + 1, COREDUMP_MIN_START/2))) {
-                        log_warning("Failed to allocate memory for core, core will not be stored.");
-                        goto finalize;
-                }
+#ifdef HAVE_ELFUTILS
+        /* Try to get a strack trace if we can */
+        if (coredump_size <= arg_process_size_max) {
+                _cleanup_free_ char *stacktrace = NULL;
 
-                if (coredump_size == 0) {
-                        memcpy(coredump_data, "COREDUMP=", 9);
-                        coredump_size = 9;
-                }
+                r = coredump_make_stack_trace(coredump_fd, exe, &stacktrace);
+                if (r >= 0)
+                        core_message = strjoin("MESSAGE=Process ", info[INFO_PID], " (", comm, ") of user ", info[INFO_UID], " dumped core.\n\n", stacktrace, NULL);
+                else
+                        log_warning("Failed to generate stack trace: %s", strerror(-r));
+        }
 
-                n = loop_read(STDIN_FILENO, coredump_data + coredump_size,
-                              coredump_bufsize - coredump_size, false);
-                if (n < 0) {
-                        log_error("Failed to read core data: %s", strerror(-n));
-                        r = (int) n;
-                        goto finish;
-                } else if (n == 0)
-                        break;
+        if (!core_message)
+#endif
+log:
+        core_message = strjoin("MESSAGE=Process ", info[INFO_PID], " (", comm, ") of user ", info[INFO_UID], " dumped core.", NULL);
+        if (core_message)
+                IOVEC_SET_STRING(iovec[j++], core_message);
 
-                coredump_size += n;
+        /* Optionally store the entire coredump in the journal */
+        if (IN_SET(arg_storage, COREDUMP_STORAGE_JOURNAL, COREDUMP_STORAGE_BOTH) &&
+            coredump_size <= (off_t) arg_journal_size_max) {
+                size_t sz;
 
-                if (coredump_size > COREDUMP_MAX) {
-                        log_error("Core too large, core will not be stored.");
-                        goto finalize;
+                /* Store the coredump itself in the journal */
+
+                r = allocate_journal_field(coredump_fd, (size_t) coredump_size, &coredump_data, &sz);
+                if (r >= 0) {
+                        iovec[j].iov_base = coredump_data;
+                        iovec[j].iov_len = sz;
+                        j++;
                 }
         }
 
-        iovec[j].iov_base = coredump_data;
-        iovec[j].iov_len = coredump_size;
-        j++;
-
-finalize:
         r = sd_journal_sendv(iovec, j);
         if (r < 0)
                 log_error("Failed to log coredump: %s", strerror(-r));
diff --git a/src/journal/coredump.conf b/src/journal/coredump.conf
new file mode 100644 (file)
index 0000000..0cc328f
--- /dev/null
@@ -0,0 +1,17 @@
+#  This file is part of systemd.
+#
+#  systemd is free software; you can redistribute it and/or modify it
+#  under the terms of the GNU Lesser General Public License as published by
+#  the Free Software Foundation; either version 2.1 of the License, or
+#  (at your option) any later version.
+#
+# See coredump.conf(5) for details
+
+[Coredump]
+#Storage=external
+#Compress=yes
+#ProcessSizeMax=2G
+#ExternalSizeMax=2G
+#JournalSizeMax=767M
+#MaxUse=
+#KeepFree=
index bf943bc032528ca717630c5c293570f5d736409d..2158d7377194eedb6cd961eda53a88d25538dc91 100644 (file)
 #include "pager.h"
 #include "macro.h"
 #include "journal-internal.h"
+#include "copy.h"
+#include "compress.h"
 
 static enum {
         ACTION_NONE,
+        ACTION_INFO,
         ACTION_LIST,
         ACTION_DUMP,
         ACTION_GDB,
 } arg_action = ACTION_LIST;
-
-static FILE* output = NULL;
-static char* field = NULL;
-
+static const char* arg_field = NULL;
 static int arg_no_pager = false;
 static int arg_no_legend = false;
+static int arg_one = false;
+
+static FILE* output = NULL;
 
 static Set *new_matches(void) {
         Set *set;
@@ -79,21 +82,23 @@ static Set *new_matches(void) {
 }
 
 static int help(void) {
-        printf("%s [OPTIONS...] [MATCHES...]\n\n"
+
+        printf("%s [OPTIONS...]\n\n"
                "List or retrieve coredumps from the journal.\n\n"
                "Flags:\n"
-               "  -o --output=FILE  Write output to FILE\n"
-               "     --no-pager     Do not pipe output into a pager\n"
-               "     --no-legend    Do not print the column headers.\n\n"
+               "  -h --help          Show this help\n"
+               "     --version       Print version string\n"
+               "     --no-pager      Do not pipe output into a pager\n"
+               "     --no-legend     Do not print the column headers.\n"
+               "  -1                 Show information about most recent entry only\n"
+               "  -F --field=FIELD   List all values a certain field takes\n"
+               "  -o --output=FILE   Write output to FILE\n\n"
 
                "Commands:\n"
-               "  -h --help         Show this help\n"
-               "  --version         Print version string\n"
-               "  -F --field=FIELD  List all values a certain field takes\n"
-               "  gdb               Start gdb for the first matching coredump\n"
-               "  list              List available coredumps\n"
-               "  dump PID          Print coredump to stdout\n"
-               "  dump PATH         Print coredump to stdout\n"
+               "  list [MATCHES...]  List available coredumps (default)\n"
+               "  info [MATCHES...]  Show detailed information about one or more coredumps\n"
+               "  dump [MATCHES...]  Print first matching coredump to stdout\n"
+               "  gdb [MATCHES...]   Start gdb for the first matching coredump\n"
                , program_invocation_short_name);
 
         return 0;
@@ -162,7 +167,7 @@ static int parse_argv(int argc, char *argv[], Set *matches) {
         assert(argc >= 0);
         assert(argv);
 
-        while ((c = getopt_long(argc, argv, "ho:F:", options, NULL)) >= 0)
+        while ((c = getopt_long(argc, argv, "ho:F:1", options, NULL)) >= 0)
                 switch(c) {
 
                 case 'h':
@@ -198,12 +203,15 @@ static int parse_argv(int argc, char *argv[], Set *matches) {
                         break;
 
                 case 'F':
-                        if (field) {
+                        if (arg_field) {
                                 log_error("cannot use --field/-F more than once");
                                 return -EINVAL;
                         }
+                        arg_field = optarg;
+                        break;
 
-                        field = optarg;
+                case '1':
+                        arg_one = true;
                         break;
 
                 case '?':
@@ -221,13 +229,15 @@ static int parse_argv(int argc, char *argv[], Set *matches) {
                         arg_action = ACTION_DUMP;
                 else if (streq(cmd, "gdb"))
                         arg_action = ACTION_GDB;
+                else if (streq(cmd, "info"))
+                        arg_action = ACTION_INFO;
                 else {
                         log_error("Unknown action '%s'", cmd);
                         return -EINVAL;
                 }
         }
 
-        if (field && arg_action != ACTION_LIST) {
+        if (arg_field && arg_action != ACTION_LIST) {
                 log_error("Option --field/-F only makes sense with list");
                 return -EINVAL;
         }
@@ -245,9 +255,10 @@ static int parse_argv(int argc, char *argv[], Set *matches) {
 static int retrieve(const void *data,
                     size_t len,
                     const char *name,
-                    const char **var) {
+                    char **var) {
 
         size_t ident;
+        char *v;
 
         ident = strlen(name) + 1; /* name + "=" */
 
@@ -260,50 +271,60 @@ static int retrieve(const void *data,
         if (((const char*) data)[ident - 1] != '=')
                 return 0;
 
-        *var = strndup((const char*)data + ident, len - ident);
-        if (!*var)
+        v = strndup((const char*)data + ident, len - ident);
+        if (!v)
                 return log_oom();
 
+        free(*var);
+        *var = v;
+
         return 0;
 }
 
 static void print_field(FILE* file, sd_journal *j) {
-        _cleanup_free_ const char *value = NULL;
+        _cleanup_free_ char *value = NULL;
         const void *d;
         size_t l;
 
-        assert(field);
+        assert(file);
+        assert(j);
+
+        assert(arg_field);
 
         SD_JOURNAL_FOREACH_DATA(j, d, l)
-                retrieve(d, l, field, &value);
+                retrieve(d, l, arg_field, &value);
+
         if (value)
                 fprintf(file, "%s\n", value);
 }
 
-static int print_entry(FILE* file, sd_journal *j, int had_legend) {
-        _cleanup_free_ const char
+static int print_list(FILE* file, sd_journal *j, int had_legend) {
+        _cleanup_free_ char
                 *pid = NULL, *uid = NULL, *gid = NULL,
-                *sgnl = NULL, *exe = NULL;
+                *sgnl = NULL, *exe = NULL, *comm = NULL, *cmdline = NULL,
+                *filename = NULL;
         const void *d;
         size_t l;
         usec_t t;
         char buf[FORMAT_TIMESTAMP_MAX];
         int r;
+        bool present;
+
+        assert(file);
+        assert(j);
 
         SD_JOURNAL_FOREACH_DATA(j, d, l) {
-                retrieve(d, l, "COREDUMP_PID", &pid);
                 retrieve(d, l, "COREDUMP_PID", &pid);
                 retrieve(d, l, "COREDUMP_UID", &uid);
                 retrieve(d, l, "COREDUMP_GID", &gid);
                 retrieve(d, l, "COREDUMP_SIGNAL", &sgnl);
                 retrieve(d, l, "COREDUMP_EXE", &exe);
-                if (!exe)
-                        retrieve(d, l, "COREDUMP_COMM", &exe);
-                if (!exe)
-                        retrieve(d, l, "COREDUMP_CMDLINE", &exe);
+                retrieve(d, l, "COREDUMP_COMM", &comm);
+                retrieve(d, l, "COREDUMP_CMDLINE", &cmdline);
+                retrieve(d, l, "COREDUMP_FILENAME", &filename);
         }
 
-        if (!pid && !uid && !gid && !sgnl && !exe) {
+        if (!pid && !uid && !gid && !sgnl && !exe && !comm && !cmdline && !filename) {
                 log_warning("Empty coredump log entry");
                 return -EINVAL;
         }
@@ -315,47 +336,184 @@ static int print_entry(FILE* file, sd_journal *j, int had_legend) {
         }
 
         format_timestamp(buf, sizeof(buf), t);
+        present = filename && access(filename, F_OK) == 0;
 
         if (!had_legend && !arg_no_legend)
-                fprintf(file, "%-*s %*s %*s %*s %*s %s\n",
-                        FORMAT_TIMESTAMP_MAX-1, "TIME",
+                fprintf(file, "%-*s %*s %*s %*s %*s %*s %s\n",
+                        FORMAT_TIMESTAMP_WIDTH, "TIME",
                         6, "PID",
                         5, "UID",
                         5, "GID",
                         3, "SIG",
+                        1, "PRESENT",
                            "EXE");
 
-        fprintf(file, "%*s %*s %*s %*s %*s %s\n",
-                FORMAT_TIMESTAMP_MAX-1, buf,
-                6, pid,
-                5, uid,
-                5, gid,
-                3, sgnl,
-                exe);
+        fprintf(file, "%-*s %*s %*s %*s %*s %*s %s\n",
+                FORMAT_TIMESTAMP_WIDTH, buf,
+                6, strna(pid),
+                5, strna(uid),
+                5, strna(gid),
+                3, strna(sgnl),
+                1, present ? "*" : "",
+                strna(exe ?: (comm ?: cmdline)));
 
         return 0;
 }
 
-static int dump_list(sd_journal *j) {
-        int found = 0;
+static int print_info(FILE *file, sd_journal *j, bool need_space) {
+        _cleanup_free_ char
+                *pid = NULL, *uid = NULL, *gid = NULL,
+                *sgnl = NULL, *exe = NULL, *comm = NULL, *cmdline = NULL,
+                *unit = NULL, *user_unit = NULL, *session = NULL,
+                *boot_id = NULL, *machine_id = NULL, *hostname = NULL,
+                *slice = NULL, *cgroup = NULL, *owner_uid = NULL,
+                *message = NULL, *timestamp = NULL, *filename = NULL;
+        const void *d;
+        size_t l;
+        int r;
 
+        assert(file);
         assert(j);
 
-        /* The coredumps are likely to compressed, and for just
-         * listing them we don't need to decompress them, so let's
-         * pick a fairly low data threshold here */
-        sd_journal_set_data_threshold(j, 4096);
+        SD_JOURNAL_FOREACH_DATA(j, d, l) {
+                retrieve(d, l, "COREDUMP_PID", &pid);
+                retrieve(d, l, "COREDUMP_UID", &uid);
+                retrieve(d, l, "COREDUMP_GID", &gid);
+                retrieve(d, l, "COREDUMP_SIGNAL", &sgnl);
+                retrieve(d, l, "COREDUMP_EXE", &exe);
+                retrieve(d, l, "COREDUMP_COMM", &comm);
+                retrieve(d, l, "COREDUMP_CMDLINE", &cmdline);
+                retrieve(d, l, "COREDUMP_UNIT", &unit);
+                retrieve(d, l, "COREDUMP_USER_UNIT", &user_unit);
+                retrieve(d, l, "COREDUMP_SESSION", &session);
+                retrieve(d, l, "COREDUMP_OWNER_UID", &owner_uid);
+                retrieve(d, l, "COREDUMP_SLICE", &slice);
+                retrieve(d, l, "COREDUMP_CGROUP", &cgroup);
+                retrieve(d, l, "COREDUMP_TIMESTAMP", &timestamp);
+                retrieve(d, l, "COREDUMP_FILENAME", &filename);
+                retrieve(d, l, "_BOOT_ID", &boot_id);
+                retrieve(d, l, "_MACHINE_ID", &machine_id);
+                retrieve(d, l, "_HOSTNAME", &hostname);
+                retrieve(d, l, "MESSAGE", &message);
+        }
+
+        if (need_space)
+                fputs("\n", file);
+
+        if (comm)
+                fprintf(file,
+                        "           PID: %s%s%s (%s)\n",
+                        ansi_highlight(), strna(pid), ansi_highlight_off(), comm);
+        else
+                fprintf(file,
+                        "           PID: %s%s%s\n",
+                        ansi_highlight(), strna(pid), ansi_highlight_off());
+
+        if (uid) {
+                uid_t n;
+
+                if (parse_uid(uid, &n) >= 0) {
+                        _cleanup_free_ char *u = NULL;
+
+                        u = uid_to_name(n);
+                        fprintf(file,
+                                "           UID: %s (%s)\n",
+                                uid, u);
+                } else {
+                        fprintf(file,
+                                "           UID: %s\n",
+                                uid);
+                }
+        }
+
+        if (gid) {
+                gid_t n;
 
-        SD_JOURNAL_FOREACH(j) {
-                if (field)
-                        print_field(stdout, j);
+                if (parse_gid(gid, &n) >= 0) {
+                        _cleanup_free_ char *g = NULL;
+
+                        g = gid_to_name(n);
+                        fprintf(file,
+                                "           GID: %s (%s)\n",
+                                gid, g);
+                } else {
+                        fprintf(file,
+                                "           GID: %s\n",
+                                gid);
+                }
+        }
+
+        if (sgnl) {
+                int sig;
+
+                if (safe_atoi(sgnl, &sig) >= 0)
+                        fprintf(file, "        Signal: %s (%s)\n", sgnl, signal_to_string(sig));
                 else
-                        print_entry(stdout, j, found++);
+                        fprintf(file, "        Signal: %s\n", sgnl);
+        }
+
+        if (timestamp) {
+                usec_t u;
+
+                r = safe_atou64(timestamp, &u);
+                if (r >= 0) {
+                        char absolute[FORMAT_TIMESTAMP_MAX], relative[FORMAT_TIMESPAN_MAX];
+
+                        fprintf(file,
+                                "     Timestamp: %s (%s)\n",
+                                format_timestamp(absolute, sizeof(absolute), u),
+                                format_timestamp_relative(relative, sizeof(relative), u));
+
+                } else
+                        fprintf(file, "     Timestamp: %s\n", timestamp);
+        }
+
+        if (cmdline)
+                fprintf(file, "  Command Line: %s\n", cmdline);
+        if (exe)
+                fprintf(file, "    Executable: %s%s%s\n", ansi_highlight(), exe, ansi_highlight_off());
+        if (cgroup)
+                fprintf(file, " Control Group: %s\n", cgroup);
+        if (unit)
+                fprintf(file, "          Unit: %s\n", unit);
+        if (user_unit)
+                fprintf(file, "     User Unit: %s\n", unit);
+        if (slice)
+                fprintf(file, "         Slice: %s\n", slice);
+        if (session)
+                fprintf(file, "       Session: %s\n", session);
+        if (owner_uid) {
+                uid_t n;
+
+                if (parse_uid(owner_uid, &n) >= 0) {
+                        _cleanup_free_ char *u = NULL;
+
+                        u = uid_to_name(n);
+                        fprintf(file,
+                                "     Owner UID: %s (%s)\n",
+                                owner_uid, u);
+                } else {
+                        fprintf(file,
+                                "     Owner UID: %s\n",
+                                owner_uid);
+                }
         }
+        if (boot_id)
+                fprintf(file, "       Boot ID: %s\n", boot_id);
+        if (machine_id)
+                fprintf(file, "    Machine ID: %s\n", machine_id);
+        if (hostname)
+                fprintf(file, "      Hostname: %s\n", hostname);
 
-        if (!field && !found) {
-                log_notice("No coredumps found");
-                return -ESRCH;
+        if (filename && access(filename, F_OK) == 0)
+                fprintf(file, "      Coredump: %s\n", filename);
+
+        if (message) {
+                _cleanup_free_ char *m = NULL;
+
+                m = strreplace(message, "\n", "\n                ");
+
+                fprintf(file, "       Message: %s\n", strstrip(m ?: message));
         }
 
         return 0;
@@ -372,49 +530,188 @@ static int focus(sd_journal *j) {
                 return r;
         }
         if (r == 0) {
-                log_error("No match found");
+                log_error("No match found.");
                 return -ESRCH;
         }
         return r;
 }
 
-static int dump_core(sd_journal* j) {
-        const void *data;
-        size_t len, ret;
+static void print_entry(sd_journal *j, unsigned n_found) {
+        assert(j);
+
+        if (arg_action == ACTION_INFO)
+                print_info(stdout, j, n_found);
+        else if (arg_field)
+                print_field(stdout, j);
+        else
+                print_list(stdout, j, n_found);
+}
+
+static int dump_list(sd_journal *j) {
+        unsigned n_found = 0;
         int r;
 
         assert(j);
 
-        /* We want full data, nothing truncated. */
-        sd_journal_set_data_threshold(j, 0);
+        /* The coredumps are likely to compressed, and for just
+         * listing them we don't need to decompress them, so let's
+         * pick a fairly low data threshold here */
+        sd_journal_set_data_threshold(j, 4096);
+
+        if (arg_one) {
+                r = focus(j);
+                if (r < 0)
+                        return r;
+
+                print_entry(j, 0);
+        } else {
+                SD_JOURNAL_FOREACH(j)
+                        print_entry(j, n_found++);
+
+                if (!arg_field && n_found <= 0) {
+                        log_notice("No coredumps found.");
+                        return -ESRCH;
+                }
+        }
+
+        return 0;
+}
+
+static int save_core(sd_journal *j, int fd, char **path, bool *unlink_temp) {
+        const char *data;
+        _cleanup_free_ char *filename = NULL;
+        size_t len;
+        int r;
+
+        assert((fd >= 0) != !!path);
+        assert(!!path == !!unlink_temp);
+
+        /* Prefer uncompressed file to journal (probably cached) to
+         * compressed file (probably uncached). */
+        r = sd_journal_get_data(j, "COREDUMP_FILENAME", (const void**) &data, &len);
+        if (r < 0 && r != -ENOENT)
+                log_warning("Failed to retrieve COREDUMP_FILENAME: %s", strerror(-r));
+        else if (r == 0)
+                retrieve(data, len, "COREDUMP_FILENAME", &filename);
+
+        if (filename && access(filename, R_OK) < 0) {
+                log_debug("File %s is not readable: %m", filename);
+                free(filename);
+                filename = NULL;
+        }
+
+        if (filename && !endswith(filename, ".xz")) {
+                if (path) {
+                        *path = filename;
+                        filename = NULL;
+                }
+
+                return 0;
+        } else {
+                _cleanup_close_ int fdt = -1;
+                char *temp = NULL;
+
+                if (fd < 0) {
+                        temp = strdup("/var/tmp/coredump-XXXXXX");
+                        if (!temp)
+                                return log_oom();
+
+                        fdt = mkostemp_safe(temp, O_WRONLY|O_CLOEXEC);
+                        if (fdt < 0) {
+                                log_error("Failed to create temporary file: %m");
+                                return -errno;
+                        }
+                        log_debug("Created temporary file %s", temp);
+
+                        fd = fdt;
+                }
+
+                r = sd_journal_get_data(j, "COREDUMP", (const void**) &data, &len);
+                if (r == 0) {
+                        ssize_t sz;
+
+                        assert(len >= 9);
+                        data += 9;
+                        len -= 9;
+
+                        sz = write(fdt, data, len);
+                        if (sz < 0) {
+                                log_error("Failed to write temporary file: %m");
+                                r = -errno;
+                                goto error;
+                        }
+                        if (sz != (ssize_t) len) {
+                                log_error("Short write to temporary file.");
+                                r = -EIO;
+                                goto error;
+                        }
+                } else if (filename) {
+#ifdef HAVE_XZ
+                        _cleanup_close_ int fdf;
+
+                        fdf = open(filename, O_RDONLY | O_CLOEXEC);
+                        if (fdf < 0) {
+                                log_error("Failed to open %s: %m", filename);
+                                r = -errno;
+                                goto error;
+                        }
+
+                        r = decompress_stream(fdf, fd, -1);
+                        if (r < 0) {
+                                log_error("Failed to decompress %s: %s", filename, strerror(-r));
+                                goto error;
+                        }
+#else
+                        log_error("Cannot decompress file. Compiled without XZ support.");
+                        r = -ENOTSUP;
+                        goto error;
+#endif
+                } else {
+                        if (r == -ENOENT)
+                                log_error("Coredump neither in journal file nor stored externally on disk.");
+                        else
+                                log_error("Failed to retrieve COREDUMP field: %s", strerror(-r));
+                        goto error;
+                }
+
+                if (temp) {
+                        *path = temp;
+                        *unlink_temp = true;
+                }
+
+                return 0;
+
+error:
+                if (temp) {
+                        unlink(temp);
+                        log_debug("Removed temporary file %s", temp);
+                }
+                return r;
+        }
+}
+
+static int dump_core(sd_journal* j) {
+        int r;
+
+        assert(j);
 
         r = focus(j);
         if (r < 0)
                 return r;
 
-        print_entry(output ? stdout : stderr, j, false);
+        print_info(output ? stdout : stderr, j, false);
 
         if (on_tty() && !output) {
-                log_error("Refusing to dump core to tty");
+                log_error("Refusing to dump core to tty.");
                 return -ENOTTY;
         }
 
-        r = sd_journal_get_data(j, "COREDUMP", (const void**) &data, &len);
+        r = save_core(j, output ? fileno(output) : STDOUT_FILENO, NULL, NULL);
         if (r < 0) {
-                log_error("Failed to retrieve COREDUMP field: %s", strerror(-r));
+                log_error("Coredump retrieval failed: %s", strerror(-r));
                 return r;
         }
 
-        assert(len >= 9);
-        data = (const uint8_t*) data + 9;
-        len -= 9;
-
-        ret = fwrite(data, len, 1, output ? output : stdout);
-        if (ret != 1) {
-                log_error("dumping coredump: %m (%zu)", ret);
-                return -errno;
-        }
-
         r = sd_journal_previous(j);
         if (r >= 0)
                 log_warning("More than one entry matches, ignoring rest.");
@@ -423,25 +720,22 @@ static int dump_core(sd_journal* j) {
 }
 
 static int run_gdb(sd_journal *j) {
-        char path[] = "/var/tmp/coredump-XXXXXX";
-        const void *data;
+        _cleanup_free_ char *exe = NULL, *path = NULL;
+        bool unlink_path = false;
+        const char *data;
+        siginfo_t st;
         size_t len;
-        ssize_t sz;
         pid_t pid;
-        _cleanup_free_ char *exe = NULL;
         int r;
-        _cleanup_close_ int fd = -1;
-        siginfo_t st;
 
         assert(j);
 
-        sd_journal_set_data_threshold(j, 0);
-
         r = focus(j);
         if (r < 0)
                 return r;
 
-        print_entry(stdout, j, false);
+        print_info(stdout, j, false);
+        fputs("\n", stdout);
 
         r = sd_journal_get_data(j, "COREDUMP_EXE", (const void**) &data, &len);
         if (r < 0) {
@@ -449,9 +743,9 @@ static int run_gdb(sd_journal *j) {
                 return r;
         }
 
-        assert(len >= 13);
-        data = (const uint8_t*) data + 13;
-        len -= 13;
+        assert(len > strlen("COREDUMP_EXE="));
+        data += strlen("COREDUMP_EXE=");
+        len -= strlen("COREDUMP_EXE=");
 
         exe = strndup(data, len);
         if (!exe)
@@ -462,36 +756,17 @@ static int run_gdb(sd_journal *j) {
                 return -ENOENT;
         }
 
-        r = sd_journal_get_data(j, "COREDUMP", (const void**) &data, &len);
-        if (r < 0) {
-                log_error("Failed to retrieve COREDUMP field: %s", strerror(-r));
-                return r;
-        }
-
-        assert(len >= 9);
-        data = (const uint8_t*) data + 9;
-        len -= 9;
-
-        fd = mkostemp_safe(path, O_WRONLY|O_CLOEXEC);
-        if (fd < 0) {
-                log_error("Failed to create temporary file: %m");
-                return -errno;
+        if (!path_is_absolute(exe)) {
+                log_error("Binary is not an absolute path.");
+                return -ENOENT;
         }
 
-        sz = write(fd, data, len);
-        if (sz < 0) {
-                log_error("Failed to write temporary file: %m");
-                r = -errno;
-                goto finish;
-        }
-        if (sz != (ssize_t) len) {
-                log_error("Short write to temporary file.");
-                r = -EIO;
-                goto finish;
+        r = save_core(j, -1, &path, &unlink_path);
+        if (r < 0) {
+                log_error("Failed to retrieve core: %s", strerror(-r));
+                return r;
         }
 
-        fd = safe_close(fd);
-
         pid = fork();
         if (pid < 0) {
                 log_error("Failed to fork(): %m");
@@ -500,6 +775,7 @@ static int run_gdb(sd_journal *j) {
         }
         if (pid == 0) {
                 execlp("gdb", "gdb", exe, path, NULL);
+
                 log_error("Failed to invoke gdb: %m");
                 _exit(1);
         }
@@ -513,7 +789,11 @@ static int run_gdb(sd_journal *j) {
         r = st.si_code == CLD_EXITED ? st.si_status : 255;
 
 finish:
-        unlink(path);
+        if (unlink_path) {
+                log_debug("Removed temporary file %s", path);
+                unlink(path);
+        }
+
         return r;
 }
 
@@ -547,6 +827,9 @@ int main(int argc, char *argv[]) {
                 goto end;
         }
 
+        /* We want full data, nothing truncated. */
+        sd_journal_set_data_threshold(j, 0);
+
         SET_FOREACH(match, matches, it) {
                 r = sd_journal_add_match(j, match, strlen(match));
                 if (r != 0) {
@@ -566,6 +849,7 @@ int main(int argc, char *argv[]) {
         switch(arg_action) {
 
         case ACTION_LIST:
+        case ACTION_INFO:
                 if (!arg_no_pager)
                         pager_open(false);
 
index 9a88676242a927f66e9414d9734c841835acf04f..c682666a22c72a7542fe4a37e9230576c816d62a 100644 (file)
@@ -767,7 +767,8 @@ static int request_handler_machine(
         if (r < 0)
                 return mhd_respondf(connection, MHD_HTTP_INTERNAL_SERVER_ERROR, "Failed to determine disk usage: %s\n", strerror(-r));
 
-        parse_env_file("/etc/os-release", NEWLINE, "PRETTY_NAME", &os_name, NULL);
+        if (parse_env_file("/etc/os-release", NEWLINE, "PRETTY_NAME", &os_name, NULL) == -ENOENT)
+                parse_env_file("/usr/lib/os-release", NEWLINE, "PRETTY_NAME", &os_name, NULL);
 
         get_virtualization(&v);
 
index 239ff381975703c920b0a9ad6d1e2348fe3905c6..dbdf02aa3c6ba5d8b6ad67858dedb8a4fbc0f6a7 100644 (file)
@@ -177,7 +177,7 @@ static int fill_fixed_size(RemoteSource *source, void **data, size_t size) {
 
 static int get_data_size(RemoteSource *source) {
         int r;
-        void _cleanup_free_ *data = NULL;
+        _cleanup_free_ void *data = NULL;
 
         assert(source);
         assert(source->state == STATE_DATA_START);
@@ -215,7 +215,7 @@ static int get_data_data(RemoteSource *source, void **data) {
 
 static int get_data_newline(RemoteSource *source) {
         int r;
-        char _cleanup_free_ *data = NULL;
+        _cleanup_free_ char *data = NULL;
 
         assert(source);
         assert(source->state == STATE_DATA_FINISH);
index 915f234ab2d110394d0646124c54ff0af799578e..a31dc2c9801137ff44457aa1505319323e9bf579 100644 (file)
@@ -139,7 +139,7 @@ static int spawn_curl(char* url) {
 
 static int spawn_getter(char *getter, char *url) {
         int r;
-        char _cleanup_strv_free_ **words = NULL;
+        _cleanup_strv_free_ char **words = NULL;
 
         assert(getter);
         words = strv_split_quoted(getter);
@@ -154,7 +154,7 @@ static int spawn_getter(char *getter, char *url) {
 }
 
 static int open_output(Writer *s, const char* url) {
-        char _cleanup_free_ *name, *output = NULL;
+        _cleanup_free_ char *name, *output = NULL;
         char *c;
         int r;
 
@@ -291,7 +291,7 @@ static int remove_source(RemoteServer *s, int fd) {
 
 static int add_source(RemoteServer *s, int fd, const char* name) {
         RemoteSource *source = NULL;
-        char *realname;
+        _cleanup_free_ char *realname = NULL;
         int r;
 
         assert(s);
@@ -307,11 +307,11 @@ static int add_source(RemoteServer *s, int fd, const char* name) {
                         return log_oom();
         }
 
-        log_debug("Creating source for fd:%d (%s)", fd, name);
+        log_debug("Creating source for fd:%d (%s)", fd, realname);
 
         r = get_source_for_fd(s, fd, &source);
         if (r < 0) {
-                log_error("Failed to create source for fd:%d (%s)", fd, name);
+                log_error("Failed to create source for fd:%d (%s)", fd, realname);
                 return r;
         }
         assert(source);
@@ -745,8 +745,8 @@ static int remoteserver_init(RemoteServer *s) {
         }
 
         if (arg_url) {
-                char _cleanup_free_ *url = NULL;
-                char _cleanup_strv_free_ **urlv = strv_new(arg_url, "/entries", NULL);
+                _cleanup_free_ char *url = NULL;
+                _cleanup_strv_free_ char **urlv = strv_new(arg_url, "/entries", NULL);
                 if (!urlv)
                         return log_oom();
                 url = strv_join(urlv, "");
index d92e84baab5e2ad53e7df3b5744ded6ca557c6ef..bb1ef66dc9e8555c509831f1e61d9914c461b3be 100644 (file)
@@ -198,7 +198,8 @@ finish:
 
 _public_ int sd_journal_sendv(const struct iovec *iov, int n) {
         PROTECT_ERRNO;
-        int fd, buffer_fd;
+        int fd;
+        _cleanup_close_ int buffer_fd = -1;
         struct iovec *w;
         uint64_t *l;
         int i, j = 0;
@@ -315,10 +316,8 @@ _public_ int sd_journal_sendv(const struct iovec *iov, int n) {
                 return buffer_fd;
 
         n = writev(buffer_fd, w, j);
-        if (n < 0) {
-                safe_close(buffer_fd);
+        if (n < 0)
                 return -errno;
-        }
 
         mh.msg_iov = NULL;
         mh.msg_iovlen = 0;
@@ -336,8 +335,6 @@ _public_ int sd_journal_sendv(const struct iovec *iov, int n) {
         mh.msg_controllen = cmsg->cmsg_len;
 
         k = sendmsg(fd, &mh, MSG_NOSIGNAL);
-        safe_close(buffer_fd);
-
         if (k < 0)
                 return -errno;
 
@@ -398,10 +395,10 @@ _public_ int sd_journal_stream_fd(const char *identifier, int priority, int leve
                 .un.sun_family = AF_UNIX,
                 .un.sun_path = "/run/systemd/journal/stdout",
         };
-        int fd;
+        _cleanup_close_ int fd = -1;
         char *header;
         size_t l;
-        ssize_t r;
+        int r;
 
         assert_return(priority >= 0, -EINVAL);
         assert_return(priority <= 7, -EINVAL);
@@ -411,15 +408,11 @@ _public_ int sd_journal_stream_fd(const char *identifier, int priority, int leve
                 return -errno;
 
         r = connect(fd, &sa.sa, offsetof(union sockaddr_union, un.sun_path) + strlen(sa.un.sun_path));
-        if (r < 0) {
-                safe_close(fd);
+        if (r < 0)
                 return -errno;
-        }
 
-        if (shutdown(fd, SHUT_RD) < 0) {
-                safe_close(fd);
+        if (shutdown(fd, SHUT_RD) < 0)
                 return -errno;
-        }
 
         fd_inc_sndbuf(fd, SNDBUF_SIZE);
 
@@ -443,18 +436,16 @@ _public_ int sd_journal_stream_fd(const char *identifier, int priority, int leve
         header[l++] = '0';
         header[l++] = '\n';
 
-        r = loop_write(fd, header, l, false);
-        if (r < 0) {
-                safe_close(fd);
-                return (int) r;
-        }
+        r = (int) loop_write(fd, header, l, false);
+        if (r < 0)
+                return r;
 
-        if ((size_t) r != l) {
-                safe_close(fd);
+        if ((size_t) r != l)
                 return -errno;
-        }
 
-        return fd;
+        r = fd;
+        fd = -1;
+        return r;
 }
 
 _public_ int sd_journal_print_with_location(int priority, const char *file, const char *line, const char *func, const char *format, ...) {
index 086b40f9438b092f7c9892ee7853c2631c04200f..891b6bb848939525c7754481fa7d14afec0b9a35 100644 (file)
@@ -292,13 +292,6 @@ int journal_directory_vacuum(
         qsort_safe(list, n_list, sizeof(struct vacuum_info), vacuum_compare);
 
         for (i = 0; i < n_list; i++) {
-                struct statvfs ss;
-
-                if (fstatvfs(dirfd(d), &ss) < 0) {
-                        r = -errno;
-                        goto finish;
-                }
-
                 if ((max_retention_usec <= 0 || list[i].realtime >= retention_limit) &&
                     (max_use <= 0 || sum <= max_use))
                         break;
index eda5dcf7e956cfd9d53fec319f65b8b06a0ac729..58410a2465cdae9cdcdcc8d4f1b1ff7632d5f831 100644 (file)
@@ -67,6 +67,7 @@
 #define DEFAULT_SYNC_INTERVAL_USEC (5*USEC_PER_MINUTE)
 #define DEFAULT_RATE_LIMIT_INTERVAL (30*USEC_PER_SEC)
 #define DEFAULT_RATE_LIMIT_BURST 1000
+#define DEFAULT_MAX_FILE_USEC USEC_PER_MONTH
 
 #define RECHECK_AVAILABLE_SPACE_USEC (30*USEC_PER_SEC)
 
@@ -205,7 +206,7 @@ void server_fix_perms(Server *s, JournalFile *f, uid_t uid) {
                 log_warning("Failed to fix access mode on %s, ignoring: %s", f->path, strerror(-r));
 
 #ifdef HAVE_ACL
-        if (uid <= 0)
+        if (uid <= SYSTEM_UID_MAX)
                 return;
 
         acl = acl_get_fd(f->fd);
@@ -805,12 +806,11 @@ static void dispatch_message_real(
                 /* Split up strictly by any UID */
                 journal_uid = realuid;
         else if (s->split_mode == SPLIT_LOGIN && realuid > 0 && owner_valid && owner > 0)
-                /* Split up by login UIDs, this avoids creation of
-                 * individual journals for system UIDs.  We do this
-                 * only if the realuid is not root, in order not to
-                 * accidentally leak privileged information to the
-                 * user that is logged by a privileged process that is
-                 * part of an unprivileged session.*/
+                /* Split up by login UIDs.  We do this only if the
+                 * realuid is not root, in order not to accidentally
+                 * leak privileged information to the user that is
+                 * logged by a privileged process that is part of an
+                 * unprivileged session.*/
                 journal_uid = owner;
         else
                 journal_uid = 0;
@@ -1476,6 +1476,8 @@ int server_init(Server *s) {
         s->forward_to_syslog = true;
         s->forward_to_wall = true;
 
+        s->max_file_usec = DEFAULT_MAX_FILE_USEC;
+
         s->max_level_store = LOG_DEBUG;
         s->max_level_syslog = LOG_DEBUG;
         s->max_level_kmsg = LOG_NOTICE;
index e468b82931233ede3847fd31f4d72ef9356e227b..42a2235ba91573d5c43d131cb48ba942609b0858 100644 (file)
@@ -45,8 +45,8 @@ typedef enum Storage {
 } Storage;
 
 typedef enum SplitMode {
-        SPLIT_LOGIN,
         SPLIT_UID,
+        SPLIT_LOGIN,
         SPLIT_NONE,
         _SPLIT_MAX,
         _SPLIT_INVALID = -1
index d106d00b5ecd7586ffbb99d97cdaca7f97cba06f..cded4a9d475e1d72e70b2b0e129568f80a52d02e 100644 (file)
@@ -11,7 +11,7 @@
 #Storage=auto
 #Compress=yes
 #Seal=yes
-#SplitMode=login
+#SplitMode=uid
 #SyncIntervalSec=5m
 #RateLimitInterval=30s
 #RateLimitBurst=1000
index 9a8d5c6a12acc38c845f0834381abd3196ff4798..007cb5dfdc6903510be9201cd13d051bab18ad90 100644 (file)
@@ -217,7 +217,7 @@ int check_permissions(struct MHD_Connection *connection, int *code) {
         const union MHD_ConnectionInfo *ci;
         gnutls_session_t session;
         gnutls_x509_crt_t client_cert;
-        char _cleanup_free_ *buf = NULL;
+        _cleanup_free_ char *buf = NULL;
         int r;
 
         assert(connection);
diff --git a/src/journal/stacktrace.c b/src/journal/stacktrace.c
new file mode 100644 (file)
index 0000000..6b9d272
--- /dev/null
@@ -0,0 +1,200 @@
+/*-*- Mode: C; c-basic-offset: 8; indent-tabs-mode: nil -*-*/
+
+/***
+  This file is part of systemd.
+
+  Copyright 2014 Lennart Poettering
+
+  systemd is free software; you can redistribute it and/or modify it
+  under the terms of the GNU Lesser General Public License as published by
+  the Free Software Foundation; either version 2.1 of the License, or
+  (at your option) any later version.
+
+  systemd is distributed in the hope that it will be useful, but
+  WITHOUT ANY WARRANTY; without even the implied warranty of
+  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+  Lesser General Public License for more details.
+
+  You should have received a copy of the GNU Lesser General Public License
+  along with systemd; If not, see <http://www.gnu.org/licenses/>.
+***/
+
+#include <dwarf.h>
+#include <elfutils/libdwfl.h>
+
+#include "util.h"
+#include "macro.h"
+#include "stacktrace.h"
+
+#define FRAMES_MAX 64
+#define THREADS_MAX 64
+
+struct stack_context {
+        FILE *f;
+        Dwfl *dwfl;
+        Elf *elf;
+        unsigned n_thread;
+        unsigned n_frame;
+};
+
+static int frame_callback(Dwfl_Frame *frame, void *userdata) {
+        struct stack_context *c = userdata;
+        Dwarf_Addr pc, pc_adjusted, bias = 0;
+        _cleanup_free_ Dwarf_Die *scopes = NULL;
+        const char *fname = NULL, *symbol = NULL;
+        Dwfl_Module *module;
+        bool is_activation;
+
+        assert(frame);
+        assert(c);
+
+        if (c->n_frame >= FRAMES_MAX)
+                return DWARF_CB_ABORT;
+
+        if (!dwfl_frame_pc(frame, &pc, &is_activation))
+                return DWARF_CB_ABORT;
+
+        pc_adjusted = pc - (is_activation ? 0 : 1);
+
+        module = dwfl_addrmodule(c->dwfl, pc_adjusted);
+        if (module) {
+                Dwarf_Die *s, *cudie;
+                int n;
+
+                cudie = dwfl_module_addrdie(module, pc_adjusted, &bias);
+                if (cudie) {
+                        n = dwarf_getscopes(cudie, pc_adjusted - bias, &scopes);
+                        for (s = scopes; s < scopes + n; s++) {
+                                if (IN_SET(dwarf_tag(s), DW_TAG_subprogram, DW_TAG_inlined_subroutine, DW_TAG_entry_point)) {
+                                        Dwarf_Attribute *a, space;
+
+                                        a = dwarf_attr_integrate(s, DW_AT_MIPS_linkage_name, &space);
+                                        if (!a)
+                                                a = dwarf_attr_integrate(s, DW_AT_linkage_name, &space);
+                                        if (a)
+                                                symbol = dwarf_formstring(a);
+                                        if (!symbol)
+                                                symbol = dwarf_diename(s);
+
+                                        if (symbol)
+                                                break;
+                                }
+                        }
+                }
+
+                if (!symbol)
+                        symbol = dwfl_module_addrname(module, pc_adjusted);
+
+                fname = dwfl_module_info(module, NULL, NULL, NULL, NULL, NULL, NULL, NULL);
+        }
+
+        fprintf(c->f, "#%-2u 0x%016" PRIx64 " %s (%s)\n", c->n_frame, (uint64_t) pc, strna(symbol), strna(fname));
+        c->n_frame ++;
+
+        return DWARF_CB_OK;
+}
+
+static int thread_callback(Dwfl_Thread *thread, void *userdata) {
+        struct stack_context *c = userdata;
+        pid_t tid;
+
+        assert(thread);
+        assert(c);
+
+        if (c->n_thread >= THREADS_MAX)
+                return DWARF_CB_ABORT;
+
+        if (c->n_thread != 0)
+                fputc('\n', c->f);
+
+        c->n_frame = 0;
+
+        tid = dwfl_thread_tid(thread);
+        fprintf(c->f, "Stack trace of thread " PID_FMT ":\n", tid);
+
+        if (dwfl_thread_getframes(thread, frame_callback, c) < 0)
+                return DWARF_CB_ABORT;
+
+        c->n_thread ++;
+
+        return DWARF_CB_OK;
+}
+
+int coredump_make_stack_trace(int fd, const char *executable, char **ret) {
+
+        static const Dwfl_Callbacks callbacks = {
+                .find_elf = dwfl_build_id_find_elf,
+                .find_debuginfo = dwfl_standard_find_debuginfo,
+        };
+
+        struct stack_context c = {};
+        char *buf = NULL;
+        size_t sz = 0;
+        int r;
+
+        assert(fd >= 0);
+        assert(ret);
+
+        if (lseek(fd, 0, SEEK_SET) == (off_t) -1)
+                return -errno;
+
+        c.f = open_memstream(&buf, &sz);
+        if (!c.f)
+                return -ENOMEM;
+
+        elf_version(EV_CURRENT);
+
+        c.elf = elf_begin(fd, ELF_C_READ_MMAP, NULL);
+        if (!c.elf) {
+                r = -EINVAL;
+                goto finish;
+        }
+
+        c.dwfl = dwfl_begin(&callbacks);
+        if (!c.dwfl) {
+                r = -EINVAL;
+                goto finish;
+        }
+
+        if (dwfl_core_file_report(c.dwfl, c.elf, executable) < 0) {
+                r = -EINVAL;
+                goto finish;
+        }
+
+        if (dwfl_report_end(c.dwfl, NULL, NULL) != 0) {
+                r = -EINVAL;
+                goto finish;
+        }
+
+        if (dwfl_core_file_attach(c.dwfl, c.elf) < 0) {
+                r = -EINVAL;
+                goto finish;
+        }
+
+        if (dwfl_getthreads(c.dwfl, thread_callback, &c) < 0) {
+                r = -EINVAL;
+                goto finish;
+        }
+
+        fclose(c.f);
+        c.f = NULL;
+
+        *ret = buf;
+        buf = NULL;
+
+        r = 0;
+
+finish:
+        if (c.dwfl)
+                dwfl_end(c.dwfl);
+
+        if (c.elf)
+                elf_end(c.elf);
+
+        if (c.f)
+                fclose(c.f);
+
+        free(buf);
+
+        return r;
+}
diff --git a/src/journal/stacktrace.h b/src/journal/stacktrace.h
new file mode 100644 (file)
index 0000000..189e5c4
--- /dev/null
@@ -0,0 +1,24 @@
+/*-*- Mode: C; c-basic-offset: 8; indent-tabs-mode: nil -*-*/
+
+#pragma once
+
+/***
+  This file is part of systemd.
+
+  Copyright 2014 Lennart Poettering
+
+  systemd is free software; you can redistribute it and/or modify it
+  under the terms of the GNU Lesser General Public License as published by
+  the Free Software Foundation; either version 2.1 of the License, or
+  (at your option) any later version.
+
+  systemd is distributed in the hope that it will be useful, but
+  WITHOUT ANY WARRANTY; without even the implied warranty of
+  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+  Lesser General Public License for more details.
+
+  You should have received a copy of the GNU Lesser General Public License
+  along with systemd; If not, see <http://www.gnu.org/licenses/>.
+***/
+
+int coredump_make_stack_trace(int fd, const char *executable, char **ret);
diff --git a/src/journal/test-compress.c b/src/journal/test-compress.c
new file mode 100644 (file)
index 0000000..0806145
--- /dev/null
@@ -0,0 +1,130 @@
+/***
+  This file is part of systemd
+
+  Copyright 2014 Ronny Chevalier
+
+  systemd is free software; you can redistribute it and/or modify it
+  under the terms of the GNU Lesser General Public License as published by
+  the Free Software Foundation; either version 2.1 of the License, or
+  (at your option) any later version.
+
+  systemd is distributed in the hope that it will be useful, but
+  WITHOUT ANY WARRANTY; without even the implied warranty of
+  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+  Lesser General Public License for more details.
+
+  You should have received a copy of the GNU Lesser General Public License
+  along with systemd; If not, see <http://www.gnu.org/licenses/>.
+***/
+
+#include "compress.h"
+#include "util.h"
+#include "macro.h"
+
+static void test_compress_uncompress(void) {
+        char text[] = "foofoofoofoo AAAA aaaaaaaaa ghost busters barbarbar FFF"
+                      "foofoofoofoo AAAA aaaaaaaaa ghost busters barbarbar FFF";
+        char compressed[512];
+        uint64_t csize = 512;
+        uint64_t usize = 0;
+        _cleanup_free_ char *uncompressed = NULL;
+
+        assert_se(compress_blob(text, sizeof(text), compressed, &csize));
+        assert_se(uncompress_blob(compressed,
+                                  csize,
+                                  (void **) &uncompressed,
+                                  &usize, &csize, 0));
+        assert_se(uncompressed);
+        assert_se(streq(uncompressed, text));
+        assert_se(!uncompress_blob("garbage",
+                                   7,
+                                   (void **) &uncompressed,
+                                   &usize, &csize, 0));
+}
+
+static void test_uncompress_startswith(void) {
+        char text[] = "foofoofoofoo AAAA aaaaaaaaa ghost busters barbarbar FFF"
+                      "foofoofoofoo AAAA aaaaaaaaa ghost busters barbarbar FFF";
+        char compressed[512];
+        uint64_t csize = 512;
+        uint64_t usize = 0;
+        _cleanup_free_ char *uncompressed = NULL;
+
+        assert_se(compress_blob(text, sizeof(text), compressed, &csize));
+        assert_se(uncompress_startswith(compressed,
+                                        csize,
+                                        (void **) &uncompressed,
+                                        &usize,
+                                        "foofoofoofoo", 12, ' '));
+        assert_se(!uncompress_startswith(compressed,
+                                         csize,
+                                        (void **) &uncompressed,
+                                        &usize,
+                                        "foofoofoofoo", 12, 'w'));
+        assert_se(!uncompress_startswith(compressed,
+                                         csize,
+                                        (void **) &uncompressed,
+                                        &usize,
+                                        "barbarbar", 9, ' '));
+}
+
+static void test_compress_stream(const char *srcfile) {
+        _cleanup_close_ int src = -1, dst = -1, dst2 = -1;
+        char pattern[] = "/tmp/systemd-test.xz.XXXXXX",
+             pattern2[] = "/tmp/systemd-test.xz.XXXXXX";
+        int r;
+        _cleanup_free_ char *cmd, *cmd2;
+        struct stat st = {};
+
+        log_debug("/* create source from %s */", srcfile);
+
+        assert_se((src = open(srcfile, O_RDONLY|O_CLOEXEC)) >= 0);
+
+        log_debug("/* test compression */");
+
+        assert_se((dst = mkostemp_safe(pattern, O_RDWR|O_CLOEXEC)) >= 0);
+
+        r = compress_stream(src, dst, 1, -1);
+        assert(r == 0);
+
+        assert_se(asprintf(&cmd, "xzcat %s | diff %s -", pattern, srcfile) > 0);
+        assert_se(system(cmd) == 0);
+
+        log_debug("/* test decompression */");
+
+        assert_se((dst2 = mkostemp_safe(pattern2, O_RDWR|O_CLOEXEC)) >= 0);
+
+        assert_se(stat(srcfile, &st) == 0);
+
+        assert_se(lseek(dst, 0, SEEK_SET) == 0);
+        r = decompress_stream(dst, dst2, st.st_size);
+        assert(r == 0);
+
+        assert_se(asprintf(&cmd2, "diff %s %s", srcfile, pattern2) > 0);
+        assert_se(system(cmd2) == 0);
+
+        log_debug("/* test faulty decompression */");
+
+        assert_se(lseek(dst, 1, SEEK_SET) == 1);
+        r = decompress_stream(dst, dst2, st.st_size);
+        assert(r == -EBADMSG);
+
+        assert_se(lseek(dst, 0, SEEK_SET) == 0);
+        assert_se(lseek(dst2, 0, SEEK_SET) == 0);
+        r = decompress_stream(dst, dst2, st.st_size - 1);
+        assert(r == -E2BIG);
+
+        assert_se(unlink(pattern) == 0);
+        assert_se(unlink(pattern2) == 0);
+}
+
+int main(int argc, char *argv[]) {
+
+        log_set_max_level(LOG_DEBUG);
+
+        test_compress_uncompress();
+        test_uncompress_startswith();
+        test_compress_stream(argv[0]);
+
+        return 0;
+}
diff --git a/src/journal/test-coredump-vacuum.c b/src/journal/test-coredump-vacuum.c
new file mode 100644 (file)
index 0000000..a4dd001
--- /dev/null
@@ -0,0 +1,32 @@
+/*-*- Mode: C; c-basic-offset: 8; indent-tabs-mode: nil -*-*/
+
+/***
+  This file is part of systemd.
+
+  Copyright 2012 Zbigniew Jędrzejewski-Szmek
+
+  systemd is free software; you can redistribute it and/or modify it
+  under the terms of the GNU Lesser General Public License as published by
+  the Free Software Foundation; either version 2.1 of the License, or
+  (at your option) any later version.
+
+  systemd is distributed in the hope that it will be useful, but
+  WITHOUT ANY WARRANTY; without even the implied warranty of
+  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+  Lesser General Public License for more details.
+
+  You should have received a copy of the GNU Lesser General Public License
+  along with systemd; If not, see <http://www.gnu.org/licenses/>.
+***/
+
+#include <stdlib.h>
+
+#include "coredump-vacuum.h"
+
+int main(int argc, char *argv[]) {
+
+        if (coredump_vacuum(-1, (off_t) -1, 70 * 1024) < 0)
+                return EXIT_FAILURE;
+
+        return EXIT_SUCCESS;
+}
index a6a8abc2bd56198387717591259f843eff50dbf1..c17b8a98d51bfcab2ad240bd704e6db1d3f19ebe 100644 (file)
@@ -32,6 +32,8 @@ fi
 
 if [[ -f /etc/os-release ]]; then
     . /etc/os-release
+elif [[ -f /usr/lib/os-release ]]; then
+    . /usr/lib/os-release
 fi
 
 if ! [[ $PRETTY_NAME ]]; then
index 76d357a6ed82b4b2205b465bc1f1dfd84ed04f18..6f6f1218d956ed8e574342b321a8cd272f817c67 100644 (file)
@@ -27,6 +27,7 @@
 
 #include "socket-util.h"
 
+#include "sd-dhcp-client.h"
 #include "dhcp-protocol.h"
 
 int dhcp_network_bind_raw_socket(int index, union sockaddr_union *link, uint32_t xid);
@@ -48,7 +49,7 @@ int dhcp_option_parse(DHCPMessage *message, size_t len,
 int dhcp_message_init(DHCPMessage *message, uint8_t op, uint32_t xid, uint8_t type,
                       size_t optlen, size_t *optoffset);
 
-uint16_t dhcp_packet_checksum(void *buf, size_t len);
+uint16_t dhcp_packet_checksum(uint8_t *buf, size_t len);
 
 void dhcp_packet_append_ip_headers(DHCPPacket *packet, be32_t source_addr,
                                    uint16_t source, be32_t destination_addr,
@@ -56,4 +57,13 @@ void dhcp_packet_append_ip_headers(DHCPPacket *packet, be32_t source_addr,
 
 int dhcp_packet_verify_headers(DHCPPacket *packet, size_t len, bool checksum);
 
+DEFINE_TRIVIAL_CLEANUP_FUNC(sd_dhcp_client*, sd_dhcp_client_unref);
+#define _cleanup_dhcp_client_unref_ _cleanup_(sd_dhcp_client_unrefp)
+
+/* If we are invoking callbacks of a dhcp-client, ensure unreffing the
+ * client from the callback doesn't destroy the object we are working
+ * on */
+#define DHCP_CLIENT_DONT_DESTROY(client) \
+        _cleanup_dhcp_client_unref_ _unused_ sd_dhcp_client *_dont_destroy_##client = sd_dhcp_client_ref(client)
+
 #define log_dhcp_client(client, fmt, ...) log_meta(LOG_DEBUG, __FILE__, __LINE__, __func__, "DHCP CLIENT (0x%x): " fmt, client->xid, ##__VA_ARGS__)
index ff09583604ab79fc8e5a8ad7f204adf24465e398..d4675f3e473670d4d022e25bf4a2be8a8f4a2a12 100644 (file)
 
 #include "sd-dhcp-client.h"
 
+struct sd_dhcp_route {
+        struct in_addr dst_addr;
+        struct in_addr gw_addr;
+        uint8_t dst_prefixlen;
+};
+
 struct sd_dhcp_lease {
         RefCount n_ref;
 
@@ -52,8 +58,9 @@ struct sd_dhcp_lease {
         size_t ntp_size;
         struct in_addr *policy_filter;
         size_t policy_filter_size;
-        struct in_addr *static_route;
+        struct sd_dhcp_route *static_route;
         size_t static_route_size;
+        size_t static_route_allocated;
         uint16_t boot_file_size;
         uint16_t mdr;
         uint16_t mtu;
index dd26ef3e002df3ad5531eb084bb00ffdb59fb76a..9d579177a433f709faecfd8dc26435262ff31ad9 100644 (file)
@@ -38,10 +38,13 @@ int dhcp_network_bind_raw_socket(int index, union sockaddr_union *link,
             BPF_STMT(BPF_LD + BPF_W + BPF_LEN, 0),                                 /* A <- packet length */
             BPF_JUMP(BPF_JMP + BPF_JGE + BPF_K, sizeof(DHCPPacket), 1, 0),         /* packet >= DHCPPacket ? */
             BPF_STMT(BPF_RET + BPF_K, 0),                                          /* ignore */
-            /* TODO: match ip.version */
             BPF_STMT(BPF_LD + BPF_B + BPF_ABS, offsetof(DHCPPacket, ip.protocol)), /* A <- IP protocol */
             BPF_JUMP(BPF_JMP + BPF_JEQ + BPF_K, IPPROTO_UDP, 1, 0),                /* IP protocol == UDP ? */
             BPF_STMT(BPF_RET + BPF_K, 0),                                          /* ignore */
+            BPF_STMT(BPF_LD + BPF_H + BPF_ABS, offsetof(DHCPPacket, ip.frag_off)), /* A <- Flags + Fragment offset */
+            BPF_STMT(BPF_ALU + BPF_AND + BPF_K, 0x1fff),                           /* A <- A & 0x1fff */
+            BPF_JUMP(BPF_JMP + BPF_JEQ + BPF_K, 0, 1, 0),                          /* A == 0 ? */
+            BPF_STMT(BPF_RET + BPF_K, 0),                                          /* ignore */
             BPF_STMT(BPF_LD + BPF_H + BPF_ABS, offsetof(DHCPPacket, udp.dest)),    /* A <- UDP destination port */
             BPF_JUMP(BPF_JMP + BPF_JEQ + BPF_K, DHCP_PORT_CLIENT, 1, 0),           /* UDP destination port == DHCP client port ? */
             BPF_STMT(BPF_RET + BPF_K, 0),                                          /* ignore */
@@ -68,7 +71,7 @@ int dhcp_network_bind_raw_socket(int index, union sockaddr_union *link,
             .filter = filter
         };
         _cleanup_close_ int s = -1;
-        int r, one = 1;
+        int r, on = 1;
 
         assert(index > 0);
         assert(link);
@@ -77,7 +80,7 @@ int dhcp_network_bind_raw_socket(int index, union sockaddr_union *link,
         if (s < 0)
                 return -errno;
 
-        r = setsockopt (s, SOL_PACKET, PACKET_AUXDATA, &one, sizeof(one));
+        r = setsockopt (s, SOL_PACKET, PACKET_AUXDATA, &on, sizeof(on));
         if (r < 0)
                 return -errno;
 
@@ -118,6 +121,22 @@ int dhcp_network_bind_udp_socket(be32_t address, uint16_t port) {
         if (r < 0)
                 return -errno;
 
+        if (address == INADDR_ANY) {
+                int on = 1;
+
+                r = setsockopt(s, SOL_SOCKET, SO_REUSEADDR, &on, sizeof(on));
+                if (r < 0)
+                        return -errno;
+
+                r = setsockopt(s, IPPROTO_IP, IP_PKTINFO, &on, sizeof(on));
+                if (r < 0)
+                        return -errno;
+
+                r = setsockopt(s, SOL_SOCKET, SO_BROADCAST, &on, sizeof(on));
+                if (r < 0)
+                        return -errno;
+        }
+
         r = bind(s, &src.sa, sizeof(src.in));
         if (r < 0)
                 return -errno;
index 3e2fb96c27f3054633dc7430381a40f3deb22303..9f850fdebbf79835d9a5e751bfe3b8d4ceb6167f 100644 (file)
@@ -60,47 +60,32 @@ int dhcp_message_init(DHCPMessage *message, uint8_t op, uint32_t xid,
         return 0;
 }
 
-uint16_t dhcp_packet_checksum(void *buf, size_t len) {
-        uint64_t *buf_64 = buf;
-        uint64_t *end_64 = (uint64_t*)buf + (len / sizeof(uint64_t));
-        uint32_t *buf_32;
-        uint16_t *buf_16;
-        uint8_t *buf_8;
+uint16_t dhcp_packet_checksum(uint8_t *buf, size_t len) {
+        uint64_t *buf_64 = (uint64_t*)buf;
+        uint64_t *end_64 = buf_64 + (len / sizeof(uint64_t));
         uint64_t sum = 0;
 
+        /* See RFC1071 */
+
         while (buf_64 < end_64) {
                 sum += *buf_64;
                 if (sum < *buf_64)
+                        /* wrap around in one's complement */
                         sum++;
 
                 buf_64 ++;
         }
 
-        buf_32 = (uint32_t*)buf_64;
-
-        if (len & sizeof(uint32_t)) {
-                sum += *buf_32;
-                if (sum < *buf_32)
-                        sum++;
-
-                buf_32 ++;
-        }
-
-        buf_16 = (uint16_t*)buf_32;
-
-        if (len & sizeof(uint16_t)) {
-                sum += *buf_16;
-                if (sum < *buf_16)
-                        sum ++;
-
-                buf_16 ++;
-        }
+        if (len % sizeof(uint64_t)) {
+                /* If the buffer is not aligned to 64-bit, we need
+                   to zero-pad the last few bytes and add them in */
+                uint64_t buf_tail = 0;
 
-        buf_8 = (uint8_t*)buf_16;
+                memcpy(&buf_tail, buf_64, len % sizeof(uint64_t));
 
-        if (len & sizeof(uint8_t)) {
-                sum += *buf_8;
-                if (sum < *buf_8)
+                sum += buf_tail;
+                if (sum < buf_tail)
+                        /* wrap around */
                         sum++;
         }
 
@@ -129,11 +114,11 @@ void dhcp_packet_append_ip_headers(DHCPPacket *packet, be32_t source_addr,
         packet->udp.len = htobe16(len - DHCP_IP_SIZE);
 
         packet->ip.check = packet->udp.len;
-        packet->udp.check = dhcp_packet_checksum(&packet->ip.ttl, len - 8);
+        packet->udp.check = dhcp_packet_checksum((uint8_t*)&packet->ip.ttl, len - 8);
 
         packet->ip.ttl = IPDEFTTL;
         packet->ip.check = 0;
-        packet->ip.check = dhcp_packet_checksum(&packet->ip, DHCP_IP_SIZE);
+        packet->ip.check = dhcp_packet_checksum((uint8_t*)&packet->ip, DHCP_IP_SIZE);
 }
 
 int dhcp_packet_verify_headers(DHCPPacket *packet, size_t len, bool checksum) {
@@ -193,7 +178,7 @@ int dhcp_packet_verify_headers(DHCPPacket *packet, size_t len, bool checksum) {
            if all the other checks have passed
          */
 
-        if (dhcp_packet_checksum(&packet->ip, hdrlen)) {
+        if (dhcp_packet_checksum((uint8_t*)&packet->ip, hdrlen)) {
                 log_debug("ignoring packet: invalid IP checksum");
                 return -EINVAL;
         }
@@ -202,7 +187,7 @@ int dhcp_packet_verify_headers(DHCPPacket *packet, size_t len, bool checksum) {
                 packet->ip.check = packet->udp.len;
                 packet->ip.ttl = 0;
 
-                if (dhcp_packet_checksum(&packet->ip.ttl,
+                if (dhcp_packet_checksum((uint8_t*)&packet->ip.ttl,
                                   be16toh(packet->udp.len) + 12)) {
                         log_debug("ignoring packet: invalid UDP checksum");
                         return -EINVAL;
index 4d87891ff1d84a69b2471a44333b8e858cae669f..8cbd98e4ecef9c2a2f13ef5edc75a6cbf5aec4f8 100644 (file)
@@ -132,5 +132,6 @@ enum {
         DHCP_OPTION_RENEWAL_T1_TIME             = 58,
         DHCP_OPTION_REBINDING_T2_TIME           = 59,
         DHCP_OPTION_CLIENT_IDENTIFIER           = 61,
+        DHCP_OPTION_CLASSLESS_STATIC_ROUTE      = 121,
         DHCP_OPTION_END                         = 255,
 };
diff --git a/src/libsystemd-network/dhcp-server-internal.h b/src/libsystemd-network/dhcp-server-internal.h
new file mode 100644 (file)
index 0000000..7fe7253
--- /dev/null
@@ -0,0 +1,88 @@
+/*-*- Mode: C; c-basic-offset: 8; indent-tabs-mode: nil -*-*/
+
+/***
+  This file is part of systemd.
+
+  Copyright (C) 2013 Intel Corporation. All rights reserved.
+  Copyright (C) 2014 Tom Gundersen
+
+  systemd is free software; you can redistribute it and/or modify it
+  under the terms of the GNU Lesser General Public License as published by
+  the Free Software Foundation; either version 2.1 of the License, or
+  (at your option) any later version.
+
+  systemd is distributed in the hope that it will be useful, but
+  WITHOUT ANY WARRANTY; without even the implied warranty of
+  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+  Lesser General Public License for more details.
+
+  You should have received a copy of the GNU Lesser General Public License
+  along with systemd; If not, see <http://www.gnu.org/licenses/>.
+***/
+
+#include "sd-event.h"
+#include "sd-dhcp-server.h"
+
+#include "hashmap.h"
+#include "refcnt.h"
+#include "util.h"
+#include "log.h"
+
+#include "dhcp-internal.h"
+
+typedef struct DHCPClientId {
+        size_t length;
+        uint8_t *data;
+} DHCPClientId;
+
+typedef struct DHCPLease {
+        DHCPClientId client_id;
+
+        be32_t address;
+        usec_t expiration;
+} DHCPLease;
+
+struct sd_dhcp_server {
+        RefCount n_ref;
+
+        sd_event *event;
+        int event_priority;
+        sd_event_source *receive_message;
+        int fd;
+        int fd_raw;
+
+        int index;
+        be32_t address;
+        be32_t pool_start;
+        size_t pool_size;
+        size_t next_offer;
+
+        Hashmap *leases_by_client_id;
+        DHCPLease **bound_leases;
+};
+
+typedef struct DHCPRequest {
+        /* received message */
+        DHCPMessage *message;
+
+        /* options */
+        DHCPClientId client_id;
+        size_t max_optlen;
+        be32_t server_id;
+        be32_t requested_ip;
+        int lifetime;
+} DHCPRequest;
+
+DEFINE_TRIVIAL_CLEANUP_FUNC(sd_dhcp_server*, sd_dhcp_server_unref);
+#define _cleanup_dhcp_server_unref_ _cleanup_(sd_dhcp_server_unrefp)
+
+#define log_dhcp_server(client, fmt, ...) log_meta(LOG_DEBUG, __FILE__, __LINE__, __func__, "DHCP SERVER: " fmt, ##__VA_ARGS__)
+
+int dhcp_server_handle_message(sd_dhcp_server *server, DHCPMessage *message,
+                               size_t length);
+int dhcp_server_send_packet(sd_dhcp_server *server,
+                            DHCPRequest *req, DHCPPacket *packet,
+                            int type, size_t optoffset);
+
+unsigned long client_id_hash_func(const void *p, const uint8_t hash_key[HASH_KEY_SIZE]);
+int client_id_compare_func(const void *_a, const void *_b);
diff --git a/src/libsystemd-network/dhcp6-internal.h b/src/libsystemd-network/dhcp6-internal.h
new file mode 100644 (file)
index 0000000..94e3a5d
--- /dev/null
@@ -0,0 +1,79 @@
+/*-*- Mode: C; c-basic-offset: 8; indent-tabs-mode: nil -*-*/
+
+#pragma once
+
+/***
+  This file is part of systemd.
+
+  Copyright (C) 2014 Intel Corporation. All rights reserved.
+
+  systemd is free software; you can redistribute it and/or modify it
+  under the terms of the GNU Lesser General Public License as published by
+  the Free Software Foundation; either version 2.1 of the License, or
+  (at your option) any later version.
+
+  systemd is distributed in the hope that it will be useful, but
+  WITHOUT ANY WARRANTY; without even the implied warranty of
+  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+  Lesser General Public License for more details.
+
+  You should have received a copy of the GNU Lesser General Public License
+  along with systemd; If not, see <http://www.gnu.org/licenses/>.
+***/
+
+#include <net/ethernet.h>
+#include <netinet/in.h>
+
+#include "sparse-endian.h"
+#include "sd-event.h"
+#include "list.h"
+#include "macro.h"
+
+typedef struct DHCP6Address DHCP6Address;
+
+struct DHCP6Address {
+        LIST_FIELDS(DHCP6Address, addresses);
+
+        struct {
+                struct in6_addr address;
+                be32_t lifetime_preferred;
+                be32_t lifetime_valid;
+        } _packed_;
+};
+
+struct DHCP6IA {
+        uint16_t type;
+        struct {
+                be32_t id;
+                be32_t lifetime_t1;
+                be32_t lifetime_t2;
+        } _packed_;
+        sd_event_source *timeout_t1;
+        sd_event_source *timeout_t2;
+
+        LIST_HEAD(DHCP6Address, addresses);
+};
+
+typedef struct DHCP6IA DHCP6IA;
+
+#define log_dhcp6_client(p, fmt, ...) log_meta(LOG_DEBUG, __FILE__, __LINE__, __func__, "DHCPv6 CLIENT: " fmt, ##__VA_ARGS__)
+
+int dhcp_network_icmp6_bind_router_solicitation(int index);
+int dhcp_network_icmp6_send_router_solicitation(int s, const struct ether_addr *ether_addr);
+
+int dhcp6_option_append(uint8_t **buf, size_t *buflen, uint16_t code,
+                        size_t optlen, const void *optval);
+int dhcp6_option_append_ia(uint8_t **buf, size_t *buflen, DHCP6IA *ia);
+int dhcp6_option_parse(uint8_t **buf, size_t *buflen, uint16_t *optcode,
+                       size_t *optlen, uint8_t **optvalue);
+int dhcp6_option_parse_ia(uint8_t **buf, size_t *buflen, uint16_t iatype,
+                          DHCP6IA *ia);
+
+int dhcp6_network_bind_udp_socket(int index, struct in6_addr *address);
+int dhcp6_network_send_udp_socket(int s, struct in6_addr *address,
+                                  const void *packet, size_t len);
+
+const char *dhcp6_message_type_to_string(int s) _const_;
+int dhcp6_message_type_from_string(const char *s) _pure_;
+const char *dhcp6_message_status_to_string(int s) _const_;
+int dhcp6_message_status_from_string(const char *s) _pure_;
diff --git a/src/libsystemd-network/dhcp6-lease-internal.h b/src/libsystemd-network/dhcp6-lease-internal.h
new file mode 100644 (file)
index 0000000..109e0f4
--- /dev/null
@@ -0,0 +1,62 @@
+/*-*- Mode: C; c-basic-offset: 8; indent-tabs-mode: nil -*-*/
+
+#pragma once
+
+/***
+  This file is part of systemd.
+
+  Copyright (C) 2014 Tom Gundersen
+  Copyright (C) 2014 Intel Corporation. All rights reserved.
+
+  systemd is free software; you can redistribute it and/or modify it
+  under the terms of the GNU Lesser General Public License as published by
+  the Free Software Foundation; either version 2.1 of the License, or
+  (at your option) any later version.
+
+  systemd is distributed in the hope that it will be useful, but
+  WITHOUT ANY WARRANTY; without even the implied warranty of
+  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+  Lesser General Public License for more details.
+
+  You should have received a copy of the GNU Lesser General Public License
+  along with systemd; If not, see <http://www.gnu.org/licenses/>.
+***/
+
+#include <stdint.h>
+
+#include "refcnt.h"
+
+#include "sd-dhcp6-lease.h"
+#include "dhcp6-internal.h"
+
+struct sd_dhcp6_lease {
+        RefCount n_ref;
+
+        uint8_t *serverid;
+        size_t serverid_len;
+        uint8_t preference;
+        bool rapid_commit;
+
+        DHCP6IA ia;
+
+        DHCP6Address *addr_iter;
+};
+
+int dhcp6_lease_clear_timers(DHCP6IA *ia);
+int dhcp6_lease_ia_rebind_expire(const DHCP6IA *ia, uint32_t *expire);
+DHCP6IA *dhcp6_lease_free_ia(DHCP6IA *ia);
+
+int dhcp6_lease_set_serverid(sd_dhcp6_lease *lease, const uint8_t *id,
+                             size_t len);
+int dhcp6_lease_get_serverid(sd_dhcp6_lease *lease, uint8_t **id, size_t *len);
+int dhcp6_lease_set_preference(sd_dhcp6_lease *lease, uint8_t preference);
+int dhcp6_lease_get_preference(sd_dhcp6_lease *lease, uint8_t *preference);
+int dhcp6_lease_set_rapid_commit(sd_dhcp6_lease *lease);
+int dhcp6_lease_get_rapid_commit(sd_dhcp6_lease *lease, bool *rapid_commit);
+
+int dhcp6_lease_get_iaid(sd_dhcp6_lease *lease, be32_t *iaid);
+
+int dhcp6_lease_new(sd_dhcp6_lease **ret);
+
+DEFINE_TRIVIAL_CLEANUP_FUNC(sd_dhcp6_lease*, sd_dhcp6_lease_unref);
+#define _cleanup_dhcp6_lease_free_ _cleanup_(sd_dhcp6_lease_unrefp)
diff --git a/src/libsystemd-network/dhcp6-network.c b/src/libsystemd-network/dhcp6-network.c
new file mode 100644 (file)
index 0000000..fe56c10
--- /dev/null
@@ -0,0 +1,194 @@
+/***
+  This file is part of systemd.
+
+  Copyright (C) 2014 Intel Corporation. All rights reserved.
+
+  systemd is free software; you can redistribute it and/or modify it
+  under the terms of the GNU Lesser General Public License as published by
+  the Free Software Foundation; either version 2.1 of the License, or
+  (at your option) any later version.
+
+  systemd is distributed in the hope that it will be useful, but
+  WITHOUT ANY WARRANTY; without even the implied warranty of
+  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+  Lesser General Public License for more details.
+
+  You should have received a copy of the GNU Lesser General Public License
+  along with systemd; If not, see <http://www.gnu.org/licenses/>.
+***/
+
+#include <errno.h>
+#include <sys/types.h>
+#include <sys/socket.h>
+#include <string.h>
+#include <linux/if_packet.h>
+#include <stdio.h>
+#include <unistd.h>
+#include <netinet/ip6.h>
+#include <netinet/icmp6.h>
+#include <netinet/in.h>
+
+#include "socket-util.h"
+
+#include "dhcp6-internal.h"
+#include "dhcp6-protocol.h"
+
+#define IN6ADDR_ALL_ROUTERS_MULTICAST_INIT \
+        { { { 0xff, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, \
+              0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02 } } }
+
+#define IN6ADDR_ALL_NODES_MULTICAST_INIT \
+        { { { 0xff, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, \
+              0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01 } } }
+
+int dhcp_network_icmp6_bind_router_solicitation(int index)
+{
+        struct icmp6_filter filter = { };
+        struct ipv6_mreq mreq = {
+                .ipv6mr_multiaddr = IN6ADDR_ALL_NODES_MULTICAST_INIT,
+                .ipv6mr_interface = index,
+        };
+        _cleanup_close_ int s = -1;
+        int r, zero = 0, hops = 255;
+
+        s = socket(AF_INET6, SOCK_RAW | SOCK_CLOEXEC | SOCK_NONBLOCK,
+                   IPPROTO_ICMPV6);
+        if (s < 0)
+                return -errno;
+
+        ICMP6_FILTER_SETBLOCKALL(&filter);
+        ICMP6_FILTER_SETPASS(ND_ROUTER_ADVERT, &filter);
+        r = setsockopt(s, IPPROTO_ICMPV6, ICMP6_FILTER, &filter,
+                       sizeof(filter));
+        if (r < 0)
+                return -errno;
+
+        /* RFC 3315, section 6.7, bullet point 2 may indicate that an
+           IPV6_PKTINFO socket option also applies for ICMPv6 multicast.
+           Empirical experiments indicates otherwise and therefore an
+           IPV6_MULTICAST_IF socket option is used here instead */
+        r = setsockopt(s, IPPROTO_IPV6, IPV6_MULTICAST_IF, &index,
+                       sizeof(index));
+        if (r < 0)
+                return -errno;
+
+        r = setsockopt(s, IPPROTO_IPV6, IPV6_MULTICAST_LOOP, &zero,
+                       sizeof(zero));
+        if (r < 0)
+                return -errno;
+
+        r = setsockopt(s, IPPROTO_IPV6, IPV6_MULTICAST_HOPS, &hops,
+                       sizeof(hops));
+        if (r < 0)
+                return -errno;
+
+        r = setsockopt(s, IPPROTO_IPV6, IPV6_ADD_MEMBERSHIP, &mreq,
+                       sizeof(mreq));
+        if (r < 0)
+                return -errno;
+
+        r = s;
+        s = -1;
+        return r;
+}
+
+int dhcp_network_icmp6_send_router_solicitation(int s, const struct ether_addr *ether_addr)
+{
+        struct sockaddr_in6 dst = {
+                .sin6_family = AF_INET6,
+                .sin6_addr = IN6ADDR_ALL_ROUTERS_MULTICAST_INIT,
+        };
+        struct {
+                struct nd_router_solicit rs;
+                struct nd_opt_hdr rs_opt;
+                struct ether_addr rs_opt_mac;
+        } _packed_ rs = {
+                .rs.nd_rs_type = ND_ROUTER_SOLICIT,
+        };
+        struct iovec iov[1] = {
+                { &rs, },
+        };
+        struct msghdr msg = {
+                .msg_name = &dst,
+                .msg_namelen = sizeof(dst),
+                .msg_iov = iov,
+                .msg_iovlen = 1,
+        };
+        int r;
+
+        if (ether_addr) {
+                memcpy(&rs.rs_opt_mac, ether_addr, ETH_ALEN);
+                rs.rs_opt.nd_opt_type = ND_OPT_SOURCE_LINKADDR;
+                rs.rs_opt.nd_opt_len = 1;
+                iov[0].iov_len = sizeof(rs);
+        } else
+                iov[0].iov_len = sizeof(rs.rs);
+
+        r = sendmsg(s, &msg, 0);
+        if (r < 0)
+                return -errno;
+
+        return 0;
+}
+
+int dhcp6_network_bind_udp_socket(int index, struct in6_addr *local_address) {
+        struct in6_pktinfo pktinfo = {
+                .ipi6_ifindex = index,
+        };
+        union sockaddr_union src = {
+                .in6.sin6_family = AF_INET6,
+                .in6.sin6_port = htobe16(DHCP6_PORT_CLIENT),
+                .in6.sin6_addr = IN6ADDR_ANY_INIT,
+        };
+        _cleanup_close_ int s = -1;
+        int r, off = 0, on = 1;
+
+        if (local_address)
+                memcpy(&src.in6.sin6_addr, local_address,
+                       sizeof(src.in6.sin6_addr));
+
+        s = socket(AF_INET6, SOCK_DGRAM | SOCK_CLOEXEC | SOCK_NONBLOCK,
+                   IPPROTO_UDP);
+        if (s < 0)
+                return -errno;
+
+        r = setsockopt(s, IPPROTO_IPV6, IPV6_PKTINFO, &pktinfo,
+                       sizeof(pktinfo));
+        if (r < 0)
+                return -errno;
+
+        r = setsockopt(s, IPPROTO_IPV6, IPV6_V6ONLY, &on, sizeof(on));
+        if (r < 0)
+                return -errno;
+
+        r = setsockopt(s, IPPROTO_IPV6, IPV6_MULTICAST_LOOP, &off, sizeof(off));
+        if (r < 0)
+                return -errno;
+
+        r = bind(s, &src.sa, sizeof(src.in6));
+        if (r < 0)
+                return -errno;
+
+        r = s;
+        s = -1;
+        return r;
+}
+
+int dhcp6_network_send_udp_socket(int s, struct in6_addr *server_address,
+                                  const void *packet, size_t len) {
+        union sockaddr_union dest = {
+                .in6.sin6_family = AF_INET6,
+                .in6.sin6_port = htobe16(DHCP6_PORT_SERVER),
+        };
+        int r;
+
+        assert(server_address);
+
+        memcpy(&dest.in6.sin6_addr, server_address, sizeof(dest.in6.sin6_addr));
+
+        r = sendto(s, packet, len, 0, &dest.sa, sizeof(dest.in6));
+        if (r < 0)
+                return -errno;
+
+        return 0;
+}
diff --git a/src/libsystemd-network/dhcp6-option.c b/src/libsystemd-network/dhcp6-option.c
new file mode 100644 (file)
index 0000000..e9b382c
--- /dev/null
@@ -0,0 +1,314 @@
+/*-*- Mode: C; c-basic-offset: 8; indent-tabs-mode: nil -*-*/
+
+/***
+  This file is part of systemd.
+
+  Copyright (C) 2014 Intel Corporation. All rights reserved.
+
+  systemd is free software; you can redistribute it and/or modify it
+  under the terms of the GNU Lesser General Public License as published by
+  the Free Software Foundation; either version 2.1 of the License, or
+  (at your option) any later version.
+
+  systemd is distributed in the hope that it will be useful, but
+  WITHOUT ANY WARRANTY; without even the implied warranty of
+  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+  Lesser General Public License for more details.
+
+  You should have received a copy of the GNU Lesser General Public License
+  along with systemd; If not, see <http://www.gnu.org/licenses/>.
+***/
+
+#include <netinet/in.h>
+#include <errno.h>
+#include <string.h>
+
+#include "sparse-endian.h"
+#include "util.h"
+
+#include "dhcp6-internal.h"
+#include "dhcp6-protocol.h"
+
+#define DHCP6_OPTION_HDR_LEN                    4
+#define DHCP6_OPTION_IA_NA_LEN                  12
+#define DHCP6_OPTION_IA_TA_LEN                  4
+#define DHCP6_OPTION_IAADDR_LEN                 24
+
+static int option_append_hdr(uint8_t **buf, size_t *buflen, uint16_t optcode,
+                             size_t optlen) {
+        assert_return(buf, -EINVAL);
+        assert_return(*buf, -EINVAL);
+        assert_return(buflen, -EINVAL);
+
+        if (optlen > 0xffff || *buflen < optlen + DHCP6_OPTION_HDR_LEN)
+                return -ENOBUFS;
+
+        (*buf)[0] = optcode >> 8;
+        (*buf)[1] = optcode & 0xff;
+        (*buf)[2] = optlen >> 8;
+        (*buf)[3] = optlen & 0xff;
+
+        *buf += DHCP6_OPTION_HDR_LEN;
+        *buflen -= DHCP6_OPTION_HDR_LEN;
+
+        return 0;
+}
+
+int dhcp6_option_append(uint8_t **buf, size_t *buflen, uint16_t code,
+                        size_t optlen, const void *optval) {
+        int r;
+
+        assert_return(optval || optlen == 0, -EINVAL);
+
+        r = option_append_hdr(buf, buflen, code, optlen);
+        if (r < 0)
+                return r;
+
+        if (optval)
+                memcpy(*buf, optval, optlen);
+
+        *buf += optlen;
+        *buflen -= optlen;
+
+        return 0;
+}
+
+int dhcp6_option_append_ia(uint8_t **buf, size_t *buflen, DHCP6IA *ia) {
+        uint16_t len;
+        uint8_t *ia_hdr;
+        size_t ia_buflen, ia_addrlen = 0;
+        DHCP6Address *addr;
+        int r;
+
+        assert_return(buf && *buf && buflen && ia, -EINVAL);
+
+        switch (ia->type) {
+        case DHCP6_OPTION_IA_NA:
+                len = DHCP6_OPTION_IA_NA_LEN;
+                break;
+
+        case DHCP6_OPTION_IA_TA:
+                len = DHCP6_OPTION_IA_TA_LEN;
+                break;
+
+        default:
+                return -EINVAL;
+        }
+
+        if (*buflen < len)
+                return -ENOBUFS;
+
+        ia_hdr = *buf;
+        ia_buflen = *buflen;
+
+        *buf += DHCP6_OPTION_HDR_LEN;
+        *buflen -= DHCP6_OPTION_HDR_LEN;
+
+        memcpy(*buf, &ia->id, len);
+
+        *buf += len;
+        *buflen -= len;
+
+        LIST_FOREACH(addresses, addr, ia->addresses) {
+                r = option_append_hdr(buf, buflen, DHCP6_OPTION_IAADDR,
+                                      DHCP6_OPTION_IAADDR_LEN);
+                if (r < 0)
+                        return r;
+
+                memcpy(*buf, &addr->address, DHCP6_OPTION_IAADDR_LEN);
+
+                *buf += DHCP6_OPTION_IAADDR_LEN;
+                *buflen -= DHCP6_OPTION_IAADDR_LEN;
+
+                ia_addrlen += DHCP6_OPTION_HDR_LEN + DHCP6_OPTION_IAADDR_LEN;
+        }
+
+        r = option_append_hdr(&ia_hdr, &ia_buflen, ia->type, len + ia_addrlen);
+        if (r < 0)
+                return r;
+
+        return 0;
+}
+
+
+static int option_parse_hdr(uint8_t **buf, size_t *buflen, uint16_t *opt,
+                            size_t *optlen) {
+        uint16_t len;
+
+        assert_return(buf, -EINVAL);
+        assert_return(opt, -EINVAL);
+        assert_return(optlen, -EINVAL);
+
+        if (*buflen < 4)
+                return -ENOMSG;
+
+        len = (*buf)[2] << 8 | (*buf)[3];
+
+        if (len > *buflen)
+                return -ENOMSG;
+
+        *opt = (*buf)[0] << 8 | (*buf)[1];
+        *optlen = len;
+
+        *buf += 4;
+        *buflen -= 4;
+
+        return 0;
+}
+
+int dhcp6_option_parse(uint8_t **buf, size_t *buflen, uint16_t *optcode,
+                       size_t *optlen, uint8_t **optvalue) {
+        int r;
+
+        assert_return(buf && buflen && optcode && optlen && optvalue, -EINVAL);
+
+        r = option_parse_hdr(buf, buflen, optcode, optlen);
+        if (r < 0)
+                return r;
+
+        if (*optlen > *buflen)
+                return -ENOBUFS;
+
+        *optvalue = *buf;
+        *buflen -= *optlen;
+        *buf += *optlen;
+
+        return 0;
+}
+
+int dhcp6_option_parse_ia(uint8_t **buf, size_t *buflen, uint16_t iatype,
+                          DHCP6IA *ia) {
+        int r;
+        uint16_t opt, status;
+        size_t optlen;
+        size_t iaaddr_offset;
+        DHCP6Address *addr;
+        uint32_t lt_t1, lt_t2, lt_valid, lt_pref, lt_min = ~0;
+
+        assert_return(ia, -EINVAL);
+        assert_return(!ia->addresses, -EINVAL);
+
+        switch (iatype) {
+        case DHCP6_OPTION_IA_NA:
+
+                if (*buflen < DHCP6_OPTION_IA_NA_LEN + DHCP6_OPTION_HDR_LEN +
+                    DHCP6_OPTION_IAADDR_LEN) {
+                        r = -ENOBUFS;
+                        goto error;
+                }
+
+                iaaddr_offset = DHCP6_OPTION_IA_NA_LEN;
+                memcpy(&ia->id, *buf, iaaddr_offset);
+
+                lt_t1 = be32toh(ia->lifetime_t1);
+                lt_t2 = be32toh(ia->lifetime_t2);
+
+                if (lt_t1 && lt_t2 && lt_t1 > lt_t2) {
+                        log_dhcp6_client(client, "IA T1 %ds > T2 %ds",
+                                         lt_t1, lt_t2);
+                        r = -EINVAL;
+                        goto error;
+                }
+
+                break;
+
+        case DHCP6_OPTION_IA_TA:
+                if (*buflen < DHCP6_OPTION_IA_TA_LEN + DHCP6_OPTION_HDR_LEN +
+                    DHCP6_OPTION_IAADDR_LEN) {
+                        r = -ENOBUFS;
+                        goto error;
+                }
+
+                iaaddr_offset = DHCP6_OPTION_IA_TA_LEN;
+                memcpy(&ia->id, *buf, iaaddr_offset);
+
+                ia->lifetime_t1 = 0;
+                ia->lifetime_t2 = 0;
+
+                break;
+
+        default:
+                r = -ENOMSG;
+                goto error;
+        }
+
+        ia->type = iatype;
+
+        *buflen -= iaaddr_offset;
+        *buf += iaaddr_offset;
+
+        while ((r = option_parse_hdr(buf, buflen, &opt, &optlen)) >= 0) {
+
+                switch (opt) {
+                case DHCP6_OPTION_IAADDR:
+
+                        addr = new0(DHCP6Address, 1);
+                        if (!addr) {
+                                r = -ENOMEM;
+                                goto error;
+                        }
+
+                        LIST_INIT(addresses, addr);
+
+                        memcpy(&addr->address, *buf, DHCP6_OPTION_IAADDR_LEN);
+
+                        lt_valid = be32toh(addr->lifetime_valid);
+                        lt_pref = be32toh(addr->lifetime_valid);
+
+                        if (!lt_valid || lt_pref > lt_valid) {
+                                log_dhcp6_client(client, "IA preferred %ds > valid %ds",
+                                                 lt_pref, lt_valid);
+                                free(addr);
+                        } else {
+                                LIST_PREPEND(addresses, ia->addresses, addr);
+                                if (lt_valid < lt_min)
+                                        lt_min = lt_valid;
+                        }
+
+                        break;
+
+                case DHCP6_OPTION_STATUS_CODE:
+                        if (optlen < sizeof(status))
+                                break;
+
+                        status = (*buf)[0] << 8 | (*buf)[1];
+                        if (status) {
+                                log_dhcp6_client(client, "IA status %d",
+                                                 status);
+                                r = -EINVAL;
+                                goto error;
+                        }
+
+                        break;
+
+                default:
+                        log_dhcp6_client(client, "Unknown IA option %d", opt);
+                        break;
+                }
+
+                *buflen -= optlen;
+                *buf += optlen;
+        }
+
+        if (r == -ENOMSG)
+                r = 0;
+
+        if (!ia->lifetime_t1 && !ia->lifetime_t2) {
+                lt_t1 = lt_min / 2;
+                lt_t2 = lt_min / 10 * 8;
+                ia->lifetime_t1 = htobe32(lt_t1);
+                ia->lifetime_t2 = htobe32(lt_t2);
+
+                log_dhcp6_client(client, "Computed IA T1 %ds and T2 %ds as both were zero",
+                                 lt_t1, lt_t2);
+        }
+
+        if (*buflen)
+                r = -ENOMSG;
+
+error:
+        *buf += *buflen;
+        *buflen = 0;
+
+        return r;
+}
diff --git a/src/libsystemd-network/dhcp6-protocol.h b/src/libsystemd-network/dhcp6-protocol.h
new file mode 100644 (file)
index 0000000..e9ae598
--- /dev/null
@@ -0,0 +1,142 @@
+/*-*- Mode: C; c-basic-offset: 8; indent-tabs-mode: nil -*-*/
+
+#pragma once
+
+/***
+  This file is part of systemd.
+
+  Copyright (C) 2014 Intel Corporation. All rights reserved.
+
+  systemd is free software; you can redistribute it and/or modify it
+  under the terms of the GNU Lesser General Public License as published by
+  the Free Software Foundation; either version 2.1 of the License, or
+  (at your option) any later version.
+
+  systemd is distributed in the hope that it will be useful, but
+  WITHOUT ANY WARRANTY; without even the implied warranty of
+  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+  Lesser General Public License for more details.
+
+  You should have received a copy of the GNU Lesser General Public License
+  along with systemd; If not, see <http://www.gnu.org/licenses/>.
+***/
+
+#include <netinet/ip6.h>
+#include <netinet/udp.h>
+
+#include "macro.h"
+#include "sparse-endian.h"
+
+struct DHCP6Message {
+        union {
+                struct {
+                        uint8_t type;
+                        uint8_t _pad[3];
+                } _packed_;
+                be32_t transaction_id;
+        };
+} _packed_;
+
+typedef struct DHCP6Message DHCP6Message;
+
+#define DHCP6_MIN_OPTIONS_SIZE \
+        1280 - sizeof(struct ip6_hdr) - sizeof(struct udphdr)
+
+#define IN6ADDR_ALL_DHCP6_RELAY_AGENTS_AND_SERVERS_INIT \
+        { { { 0xff, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, \
+              0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x02 } } }
+
+enum {
+        DHCP6_PORT_SERVER                       = 547,
+        DHCP6_PORT_CLIENT                       = 546,
+};
+
+#define DHCP6_SOL_MAX_DELAY                     1 * USEC_PER_SEC
+#define DHCP6_SOL_TIMEOUT                       1 * USEC_PER_SEC
+#define DHCP6_SOL_MAX_RT                        120 * USEC_PER_SEC
+#define DHCP6_REQ_TIMEOUT                       1 * USEC_PER_SEC
+#define DHCP6_REQ_MAX_RT                        120 * USEC_PER_SEC
+#define DHCP6_REQ_MAX_RC                        10
+#define DHCP6_REN_TIMEOUT                       10 * USEC_PER_SEC
+#define DHCP6_REN_MAX_RT                        600 * USEC_PER_SEC
+#define DHCP6_REB_TIMEOUT                       10 * USEC_PER_SEC
+#define DHCP6_REB_MAX_RT                        600 * USEC_PER_SEC
+
+enum {
+        DHCP6_DUID_LLT                          = 1,
+        DHCP6_DUID_EN                           = 2,
+        DHCP6_DUID_LL                           = 3,
+        DHCP6_DUID_UUID                         = 4,
+};
+
+enum DHCP6State {
+        DHCP6_STATE_STOPPED                     = 0,
+        DHCP6_STATE_RS                          = 1,
+        DHCP6_STATE_SOLICITATION                = 2,
+        DHCP6_STATE_REQUEST                     = 3,
+        DHCP6_STATE_BOUND                       = 4,
+        DHCP6_STATE_RENEW                       = 5,
+        DHCP6_STATE_REBIND                      = 6,
+};
+
+enum {
+        DHCP6_SOLICIT                           = 1,
+        DHCP6_ADVERTISE                         = 2,
+        DHCP6_REQUEST                           = 3,
+        DHCP6_CONFIRM                           = 4,
+        DHCP6_RENEW                             = 5,
+        DHCP6_REBIND                            = 6,
+        DHCP6_REPLY                             = 7,
+        DHCP6_RELEASE                           = 8,
+        DHCP6_DECLINE                           = 9,
+        DHCP6_RECONFIGURE                       = 10,
+        DHCP6_INFORMATION_REQUEST               = 11,
+        DHCP6_RELAY_FORW                        = 12,
+        DHCP6_RELAY_REPL                        = 13,
+        _DHCP6_MESSAGE_MAX                      = 14,
+};
+
+enum {
+        DHCP6_OPTION_CLIENTID                   = 1,
+        DHCP6_OPTION_SERVERID                   = 2,
+        DHCP6_OPTION_IA_NA                      = 3,
+        DHCP6_OPTION_IA_TA                      = 4,
+        DHCP6_OPTION_IAADDR                     = 5,
+        DHCP6_OPTION_ORO                        = 6,
+        DHCP6_OPTION_PREFERENCE                 = 7,
+        DHCP6_OPTION_ELAPSED_TIME               = 8,
+        DHCP6_OPTION_RELAY_MSG                  = 9,
+        /* option code 10 is unassigned */
+        DHCP6_OPTION_AUTH                       = 11,
+        DHCP6_OPTION_UNICAST                    = 12,
+        DHCP6_OPTION_STATUS_CODE                = 13,
+        DHCP6_OPTION_RAPID_COMMIT               = 14,
+        DHCP6_OPTION_USER_CLASS                 = 15,
+        DHCP6_OPTION_VENDOR_CLASS               = 16,
+        DHCP6_OPTION_VENDOR_OPTS                = 17,
+        DHCP6_OPTION_INTERFACE_ID               = 18,
+        DHCP6_OPTION_RECONF_MSG                 = 19,
+        DHCP6_OPTION_RECONF_ACCEPT              = 20,
+
+        DHCP6_OPTION_DNS_SERVERS                = 23,  /* RFC 3646 */
+        DHCP6_OPTION_DOMAIN_LIST                = 24,  /* RFC 3646 */
+
+        DHCP6_OPTION_SNTP_SERVERS               = 31,  /* RFC 4075 */
+
+        /* option code 35 is unassigned */
+
+        DHCP6_OPTION_NTP_SERVER                 = 56,  /* RFC 5908 */
+
+        /* option codes 89-142 are unassigned */
+        /* option codes 144-65535 are unassigned */
+};
+
+enum {
+        DHCP6_STATUS_SUCCESS                    = 0,
+        DHCP6_STATUS_UNSPEC_FAIL                = 1,
+        DHCP6_STATUS_NO_ADDRS_AVAIL             = 2,
+        DHCP6_STATUS_NO_BINDING                 = 3,
+        DHCP6_STATUS_NOT_ON_LINK                = 4,
+        DHCP6_STATUS_USE_MULTICAST              = 5,
+        _DHCP6_STATUS_MAX                       = 6,
+};
index e9146d0e54d46b83984d96cb0056569b1075099a..7a7a4eac9d505cb0605b6c9f64e16cbfe8a10a0c 100644 (file)
 #include "siphash24.h"
 #include "libudev-private.h"
 #include "network-internal.h"
+#include "dhcp-lease-internal.h"
 #include "log.h"
 #include "utf8.h"
 #include "util.h"
 #include "conf-parser.h"
 #include "condition.h"
 
-#define HASH_KEY SD_ID128_MAKE(d3,1e,48,fa,90,fe,4b,4c,9d,af,d5,d7,a1,b1,2e,8a)
-
-int net_get_unique_predictable_data(struct udev_device *device, uint8_t result[8]) {
-        size_t l, sz = 0;
+const char *net_get_name(struct udev_device *device) {
         const char *name = NULL, *field = NULL;
-        int r;
-        uint8_t *v;
+
+        assert(device);
 
         /* fetch some persistent data unique (on this machine) to this device */
-        FOREACH_STRING(field, "ID_NET_NAME_ONBOARD", "ID_NET_NAME_SLOT", "ID_NET_NAME_PATH", "ID_NET_NAME_MAC") {
+        FOREACH_STRING(field, "ID_NET_NAME_ONBOARD", "ID_NET_NAME_SLOT",
+                       "ID_NET_NAME_PATH", "ID_NET_NAME_MAC") {
                 name = udev_device_get_property_value(device, field);
                 if (name)
                         break;
         }
 
+        return name;
+}
+
+#define HASH_KEY SD_ID128_MAKE(d3,1e,48,fa,90,fe,4b,4c,9d,af,d5,d7,a1,b1,2e,8a)
+
+int net_get_unique_predictable_data(struct udev_device *device, uint8_t result[8]) {
+        size_t l, sz = 0;
+        const char *name = NULL;
+        int r;
+        uint8_t *v;
+
+        assert(device);
+
+        name = net_get_name(device);
         if (!name)
                 return -ENOENT;
 
@@ -179,7 +192,7 @@ int config_parse_ifname(const char *unit,
                         void *userdata) {
 
         char **s = data;
-        char *n;
+        _cleanup_free_ char *n = NULL;
 
         assert(filename);
         assert(lvalue);
@@ -198,12 +211,11 @@ int config_parse_ifname(const char *unit,
         }
 
         free(*s);
-        if (*n)
+        if (*n) {
                 *s = n;
-        else {
-                free(n);
+                n = NULL;
+        } else
                 *s = NULL;
-        }
 
         return 0;
 }
@@ -421,3 +433,90 @@ int deserialize_in6_addrs(struct in6_addr **ret, size_t *ret_size, const char *s
 
         return 0;
 }
+
+void serialize_dhcp_routes(FILE *f, const char *key, struct sd_dhcp_route *routes, size_t size) {
+        unsigned i;
+
+        assert(f);
+        assert(key);
+        assert(routes);
+        assert(size);
+
+        fprintf(f, "%s=", key);
+
+        for (i = 0; i < size; i++)
+                fprintf(f, "%s/%" PRIu8 ",%s%s", inet_ntoa(routes[i].dst_addr),
+                        routes[i].dst_prefixlen, inet_ntoa(routes[i].gw_addr),
+                        (i < (size - 1)) ? " ": "");
+
+        fputs("\n", f);
+}
+
+int deserialize_dhcp_routes(struct sd_dhcp_route **ret, size_t *ret_size, size_t *ret_allocated, const char *string) {
+        _cleanup_free_ struct sd_dhcp_route *routes = NULL;
+        size_t size = 0, allocated = 0;
+        char *word, *state;
+        size_t len;
+
+        assert(ret);
+        assert(ret_size);
+        assert(ret_allocated);
+        assert(string);
+
+        FOREACH_WORD(word, len, string, state) {
+                /* WORD FORMAT: dst_ip/dst_prefixlen,gw_ip */
+                _cleanup_free_ char* entry = NULL;
+                char *tok, *tok_end;
+                unsigned n;
+                int r;
+
+                if (!GREEDY_REALLOC(routes, allocated, size + 1))
+                        return -ENOMEM;
+
+                entry = strndup(word, len);
+                if(!entry)
+                        return -ENOMEM;
+
+                tok = entry;
+
+                /* get the subnet */
+                tok_end = strchr(tok, '/');
+                if (!tok_end)
+                        continue;
+                *tok_end = '\0';
+
+                r = inet_aton(tok, &routes[size].dst_addr);
+                if (r == 0)
+                        continue;
+
+                tok = tok_end + 1;
+
+                /* get the prefixlen */
+                tok_end = strchr(tok, ',');
+                if (!tok_end)
+                        continue;
+
+                *tok_end = '\0';
+
+                r = safe_atou(tok, &n);
+                if (r < 0 || n > 32)
+                        continue;
+
+                routes[size].dst_prefixlen = (uint8_t) n;
+                tok = tok_end + 1;
+
+                /* get the gateway */
+                r = inet_aton(tok, &routes[size].gw_addr);
+                if (r == 0)
+                        continue;
+
+                size++;
+        }
+
+        *ret_size = size;
+        *ret_allocated = allocated;
+        *ret = routes;
+        routes = NULL;
+
+        return 0;
+}
index 2aeecf0ce2237a65feadf59be71a06cfe8c869e2..4bde14641e368ef88376a62e3eab898b8f9cd277 100644 (file)
@@ -65,7 +65,15 @@ int config_parse_ifalias(const char *unit, const char *filename, unsigned line,
 int net_parse_inaddr(const char *address, unsigned char *family, void *dst);
 
 int net_get_unique_predictable_data(struct udev_device *device, uint8_t result[8]);
+const char *net_get_name(struct udev_device *device);
 
 void serialize_in_addrs(FILE *f, const char *key, struct in_addr *addresses, size_t size);
 int deserialize_in_addrs(struct in_addr **addresses, size_t *size, const char *string);
 int deserialize_in6_addrs(struct in6_addr **addresses, size_t *size, const char *string);
+
+
+/* don't include "dhcp-lease-internal.h" as it causes conflicts between netinet/ip.h and linux/ip.h */
+struct sd_dhcp_route;
+
+void serialize_dhcp_routes(FILE *f, const char *key, struct sd_dhcp_route *routes, size_t size);
+int deserialize_dhcp_routes(struct sd_dhcp_route **ret, size_t *ret_size, size_t *ret_allocated, const char *string);
index 8f549060bf9750c8902544bddd8aa630663978ea..d8a9d20e4c9ed9cda262d8dbaf132c5fd92fddbe 100644 (file)
@@ -56,6 +56,7 @@ struct sd_dhcp_client {
                 uint8_t type;
                 struct ether_addr mac_addr;
         } _packed_ client_id;
+        char *hostname;
         uint32_t xid;
         usec_t start_time;
         uint16_t secs;
@@ -82,7 +83,7 @@ static int client_receive_message_raw(sd_event_source *s, int fd,
                                       uint32_t revents, void *userdata);
 static int client_receive_message_udp(sd_event_source *s, int fd,
                                       uint32_t revents, void *userdata);
-static sd_dhcp_client *client_stop(sd_dhcp_client *client, int error);
+static void client_stop(sd_dhcp_client *client, int error);
 
 int sd_dhcp_client_set_callback(sd_dhcp_client *client, sd_dhcp_client_cb_t cb,
                                 void *userdata) {
@@ -153,6 +154,7 @@ int sd_dhcp_client_set_index(sd_dhcp_client *client, int interface_index) {
 
 int sd_dhcp_client_set_mac(sd_dhcp_client *client,
                            const struct ether_addr *addr) {
+        DHCP_CLIENT_DONT_DESTROY(client);
         bool need_restart = false;
 
         assert_return(client, -EINVAL);
@@ -165,12 +167,9 @@ int sd_dhcp_client_set_mac(sd_dhcp_client *client,
                 log_dhcp_client(client, "Changing MAC address on running DHCP "
                                 "client, restarting");
                 need_restart = true;
-                client = client_stop(client, DHCP_EVENT_STOP);
+                client_stop(client, DHCP_EVENT_STOP);
         }
 
-        if (!client)
-                return 0;
-
         memcpy(&client->client_id.mac_addr, addr, ETH_ALEN);
         client->client_id.type = 0x01;
 
@@ -180,6 +179,27 @@ int sd_dhcp_client_set_mac(sd_dhcp_client *client,
         return 0;
 }
 
+int sd_dhcp_client_set_hostname(sd_dhcp_client *client,
+                                const char *hostname) {
+        char *new_hostname = NULL;
+
+        assert_return(client, -EINVAL);
+
+        if (streq_ptr(client->hostname, hostname))
+                return 0;
+
+        if (hostname) {
+                new_hostname = strdup(hostname);
+                if (!new_hostname)
+                        return -ENOMEM;
+        }
+
+        free(client->hostname);
+        client->hostname = new_hostname;
+
+        return 0;
+}
+
 int sd_dhcp_client_get_lease(sd_dhcp_client *client, sd_dhcp_lease **ret) {
         assert_return(client, -EINVAL);
         assert_return(ret, -EINVAL);
@@ -194,14 +214,9 @@ int sd_dhcp_client_get_lease(sd_dhcp_client *client, sd_dhcp_lease **ret) {
         return 0;
 }
 
-static sd_dhcp_client *client_notify(sd_dhcp_client *client, int event) {
-        if (client->cb) {
-                client = sd_dhcp_client_ref(client);
+static void client_notify(sd_dhcp_client *client, int event) {
+        if (client->cb)
                 client->cb(client, event, client->userdata);
-                client = sd_dhcp_client_unref(client);
-        }
-
-        return client;
 }
 
 static int client_initialize(sd_dhcp_client *client) {
@@ -229,8 +244,8 @@ static int client_initialize(sd_dhcp_client *client) {
         return 0;
 }
 
-static sd_dhcp_client *client_stop(sd_dhcp_client *client, int error) {
-        assert_return(client, NULL);
+static void client_stop(sd_dhcp_client *client, int error) {
+        assert(client);
 
         if (error < 0)
                 log_dhcp_client(client, "STOPPED: %s", strerror(-error));
@@ -248,12 +263,9 @@ static sd_dhcp_client *client_stop(sd_dhcp_client *client, int error) {
                 }
         }
 
-        client = client_notify(client, error);
-
-        if (client)
-                client_initialize(client);
+        client_notify(client, error);
 
-        return client;
+        client_initialize(client);
 }
 
 static int client_message_init(sd_dhcp_client *client, DHCPPacket **ret,
@@ -396,8 +408,21 @@ static int client_send_discover(sd_dhcp_client *client) {
                         return r;
         }
 
+        /* it is unclear from RFC 2131 if client should send hostname in
+           DHCPDISCOVER but dhclient does and so we do as well
+        */
+        if (client->hostname) {
+                r = dhcp_option_append(&discover->dhcp, optlen, &optoffset, 0,
+                                       DHCP_OPTION_HOST_NAME,
+                                       strlen(client->hostname), client->hostname);
+                if (r < 0)
+                        return r;
+        }
+
         r = dhcp_option_append(&discover->dhcp, optlen, &optoffset, 0,
                                DHCP_OPTION_END, 0, NULL);
+        if (r < 0)
+                return r;
 
         /* We currently ignore:
            The client SHOULD wait a random time between one and ten seconds to
@@ -413,7 +438,7 @@ static int client_send_discover(sd_dhcp_client *client) {
 }
 
 static int client_send_request(sd_dhcp_client *client) {
-        _cleanup_free_ DHCPPacket *request;
+        _cleanup_free_ DHCPPacket *request = NULL;
         size_t optoffset, optlen;
         int r;
 
@@ -485,6 +510,14 @@ static int client_send_request(sd_dhcp_client *client) {
                 return -EINVAL;
         }
 
+        if (client->hostname) {
+                r = dhcp_option_append(&request->dhcp, optlen, &optoffset, 0,
+                                       DHCP_OPTION_HOST_NAME,
+                                       strlen(client->hostname), client->hostname);
+                if (r < 0)
+                        return r;
+        }
+
         r = dhcp_option_append(&request->dhcp, optlen, &optoffset, 0,
                                DHCP_OPTION_END, 0, NULL);
         if (r < 0)
@@ -528,6 +561,7 @@ static int client_start(sd_dhcp_client *client);
 static int client_timeout_resend(sd_event_source *s, uint64_t usec,
                                  void *userdata) {
         sd_dhcp_client *client = userdata;
+        DHCP_CLIENT_DONT_DESTROY(client);
         usec_t next_timeout = 0;
         uint64_t time_now;
         uint32_t time_left;
@@ -735,13 +769,14 @@ static int client_start(sd_dhcp_client *client) {
 static int client_timeout_expire(sd_event_source *s, uint64_t usec,
                                  void *userdata) {
         sd_dhcp_client *client = userdata;
+        DHCP_CLIENT_DONT_DESTROY(client);
 
         log_dhcp_client(client, "EXPIRED");
 
-        client = client_notify(client, DHCP_EVENT_EXPIRED);
+        client_notify(client, DHCP_EVENT_EXPIRED);
 
         /* lease was lost, start over if not freed or stopped in callback */
-        if (client && client->state != DHCP_STATE_STOPPED) {
+        if (client->state != DHCP_STATE_STOPPED) {
                 client_initialize(client);
                 client_start(client);
         }
@@ -751,6 +786,7 @@ static int client_timeout_expire(sd_event_source *s, uint64_t usec,
 
 static int client_timeout_t2(sd_event_source *s, uint64_t usec, void *userdata) {
         sd_dhcp_client *client = userdata;
+        DHCP_CLIENT_DONT_DESTROY(client);
         int r;
 
         client->receive_message = sd_event_source_unref(client->receive_message);
@@ -772,6 +808,7 @@ static int client_timeout_t2(sd_event_source *s, uint64_t usec, void *userdata)
 static int client_timeout_t1(sd_event_source *s, uint64_t usec,
                              void *userdata) {
         sd_dhcp_client *client = userdata;
+        DHCP_CLIENT_DONT_DESTROY(client);
         int r;
 
         client->state = DHCP_STATE_RENEWING;
@@ -780,7 +817,7 @@ static int client_timeout_t1(sd_event_source *s, uint64_t usec,
         r = dhcp_network_bind_udp_socket(client->lease->address,
                                          DHCP_PORT_CLIENT);
         if (r < 0) {
-                client_stop(client, r);
+                log_dhcp_client(client, "could not bind UDP socket");
                 return 0;
         }
 
@@ -883,7 +920,8 @@ static int client_handle_ack(sd_dhcp_client *client, DHCPMessage *ack,
                     client->lease->subnet_mask != lease->subnet_mask ||
                     client->lease->router != lease->router) {
                         r = DHCP_EVENT_IP_CHANGE;
-                }
+                } else
+                        r = DHCP_EVENT_RENEW;
 
                 client->lease = sd_dhcp_lease_unref(client->lease);
         }
@@ -1043,6 +1081,7 @@ static int client_set_lease_timeouts(sd_dhcp_client *client) {
 
 static int client_handle_message(sd_dhcp_client *client, DHCPMessage *message,
                                  int len) {
+        DHCP_CLIENT_DONT_DESTROY(client);
         int r = 0, notify_event = 0;
 
         assert(client);
@@ -1152,9 +1191,8 @@ static int client_handle_message(sd_dhcp_client *client, DHCPMessage *message,
                                 goto error;
 
                         if (notify_event) {
-                                client = client_notify(client, notify_event);
-                                if (!client ||
-                                    client->state == DHCP_STATE_STOPPED)
+                                client_notify(client, notify_event);
+                                if (client->state == DHCP_STATE_STOPPED)
                                         return 0;
                         }
 
@@ -1301,10 +1339,12 @@ int sd_dhcp_client_start(sd_dhcp_client *client) {
 }
 
 int sd_dhcp_client_stop(sd_dhcp_client *client) {
+        DHCP_CLIENT_DONT_DESTROY(client);
+
         assert_return(client, -EINVAL);
 
-        if (client_stop(client, DHCP_EVENT_STOP))
-                client->state = DHCP_STATE_STOPPED;
+        client_stop(client, DHCP_EVENT_STOP);
+        client->state = DHCP_STATE_STOPPED;
 
         return 0;
 }
@@ -1353,7 +1393,7 @@ sd_dhcp_client *sd_dhcp_client_ref(sd_dhcp_client *client) {
 
 sd_dhcp_client *sd_dhcp_client_unref(sd_dhcp_client *client) {
         if (client && REFCNT_DEC(client->n_ref) <= 0) {
-                log_dhcp_client(client, "UNREF");
+                log_dhcp_client(client, "FREE");
 
                 client_initialize(client);
 
@@ -1365,19 +1405,15 @@ sd_dhcp_client *sd_dhcp_client_unref(sd_dhcp_client *client) {
                 sd_dhcp_lease_unref(client->lease);
 
                 free(client->req_opts);
+                free(client->hostname);
                 free(client);
-
-                return NULL;
         }
 
-        return client;
+        return NULL;
 }
 
-DEFINE_TRIVIAL_CLEANUP_FUNC(sd_dhcp_client*, sd_dhcp_client_unref);
-#define _cleanup_dhcp_client_free_ _cleanup_(sd_dhcp_client_unrefp)
-
 int sd_dhcp_client_new(sd_dhcp_client **ret) {
-        _cleanup_dhcp_client_free_ sd_dhcp_client *client = NULL;
+        _cleanup_dhcp_client_unref_ sd_dhcp_client *client = NULL;
 
         assert_return(ret, -EINVAL);
 
index 3203b7a592661d451650a859d1804b7583bebb3b..20a95f6de62b443bbe985a61b26c95dd6f34c616 100644 (file)
@@ -47,6 +47,15 @@ int sd_dhcp_lease_get_address(sd_dhcp_lease *lease, struct in_addr *addr) {
         return 0;
 }
 
+int sd_dhcp_lease_get_lifetime(sd_dhcp_lease *lease, uint32_t *lifetime) {
+        assert_return(lease, -EINVAL);
+        assert_return(lease, -EINVAL);
+
+        *lifetime = lease->lifetime;
+
+        return 0;
+}
+
 int sd_dhcp_lease_get_mtu(sd_dhcp_lease *lease, uint16_t *mtu) {
         assert_return(lease, -EINVAL);
         assert_return(mtu, -EINVAL);
@@ -162,6 +171,22 @@ int sd_dhcp_lease_get_next_server(sd_dhcp_lease *lease, struct in_addr *addr) {
         return 0;
 }
 
+int sd_dhcp_lease_get_routes(sd_dhcp_lease *lease, struct sd_dhcp_route **routes,
+        size_t *routes_size) {
+
+        assert_return(lease, -EINVAL);
+        assert_return(routes, -EINVAL);
+        assert_return(routes_size, -EINVAL);
+
+        if (lease->static_route_size) {
+                *routes = lease->static_route;
+                *routes_size = lease->static_route_size;
+        } else
+                return -ENOENT;
+
+        return 0;
+}
+
 sd_dhcp_lease *sd_dhcp_lease_ref(sd_dhcp_lease *lease) {
         if (lease)
                 assert_se(REFCNT_INC(lease->n_ref) >= 2);
@@ -175,6 +200,7 @@ sd_dhcp_lease *sd_dhcp_lease_unref(sd_dhcp_lease *lease) {
                 free(lease->domainname);
                 free(lease->dns);
                 free(lease->ntp);
+                free(lease->static_route);
                 free(lease);
         }
 
@@ -292,6 +318,111 @@ static int lease_parse_in_addrs_pairs(const uint8_t *option, size_t len, struct
         return lease_parse_in_addrs_aux(option, len, ret, ret_size, 2);
 }
 
+static int class_prefixlen(uint8_t msb_octet, uint8_t *ret) {
+        if (msb_octet < 128)
+                /* Class A */
+                *ret = 8;
+        else if (msb_octet < 192)
+                /* Class B */
+                *ret = 16;
+        else if (msb_octet < 224)
+                /* Class C */
+                *ret = 24;
+        else
+                /* Class D or E -- no subnet mask */
+                return -ERANGE;
+
+        return 0;
+}
+
+static int lease_parse_routes(const uint8_t *option, size_t len, struct sd_dhcp_route **routes,
+        size_t *routes_size, size_t *routes_allocated) {
+
+        struct in_addr addr;
+
+        assert(option);
+        assert(routes);
+        assert(routes_size);
+        assert(routes_allocated);
+
+        if (!len)
+                return 0;
+
+        if (len % 8 != 0)
+                return -EINVAL;
+
+        if (!GREEDY_REALLOC(*routes, *routes_allocated, *routes_size + (len / 8)))
+                return -ENOMEM;
+
+        while (len >= 8) {
+                struct sd_dhcp_route *route = *routes + *routes_size;
+
+                if (class_prefixlen(*option, &route->dst_prefixlen) < 0) {
+                        log_error("Failed to determine destination prefix length from class based IP, ignoring");
+                        continue;
+                }
+
+                lease_parse_be32(option, 4, &addr.s_addr);
+                route->dst_addr = inet_makeaddr(inet_netof(addr), 0);
+                option += 4;
+
+                lease_parse_be32(option, 4, &route->gw_addr.s_addr);
+                option += 4;
+
+                len -= 8;
+                (*routes_size)++;
+        }
+
+        return 0;
+}
+
+/* parses RFC3442 Classless Static Route Option */
+static int lease_parse_classless_routes(const uint8_t *option, size_t len, struct sd_dhcp_route **routes,
+        size_t *routes_size, size_t *routes_allocated) {
+
+        assert(option);
+        assert(routes);
+        assert(routes_size);
+        assert(routes_allocated);
+
+        /* option format: (subnet-mask-width significant-subnet-octets gateway-ip)*  */
+
+        while (len > 0) {
+                uint8_t dst_octets;
+                struct sd_dhcp_route *route;
+
+                if (!GREEDY_REALLOC(*routes, *routes_allocated, *routes_size + 1))
+                    return -ENOMEM;
+
+                route = *routes + *routes_size;
+
+                dst_octets = (*option == 0 ? 0 : ((*option - 1) / 8) + 1);
+                route->dst_prefixlen = *option;
+                option++;
+                len--;
+
+                /* can't have more than 4 octets in IPv4 */
+                if (dst_octets > 4 || len < dst_octets)
+                        return -EINVAL;
+
+                route->dst_addr.s_addr = 0;
+                memcpy(&route->dst_addr.s_addr, option, dst_octets);
+                option += dst_octets;
+                len -= dst_octets;
+
+                if (len < 4)
+                        return -EINVAL;
+
+                lease_parse_be32(option, 4, &route->gw_addr.s_addr);
+                option += 4;
+                len -= 4;
+
+                (*routes_size)++;
+        }
+
+        return 0;
+}
+
 int dhcp_lease_parse_options(uint8_t code, uint8_t len, const uint8_t *option,
                               void *user_data) {
         sd_dhcp_lease *lease = user_data;
@@ -358,7 +489,8 @@ int dhcp_lease_parse_options(uint8_t code, uint8_t len, const uint8_t *option,
                 break;
 
         case DHCP_OPTION_STATIC_ROUTE:
-                r = lease_parse_in_addrs_pairs(option, len, &lease->static_route, &lease->static_route_size);
+                r = lease_parse_routes(option, len, &lease->static_route, &lease->static_route_size,
+                        &lease->static_route_allocated);
                 if (r < 0)
                         return r;
 
@@ -424,6 +556,14 @@ int dhcp_lease_parse_options(uint8_t code, uint8_t len, const uint8_t *option,
                 lease_parse_bool(option, len, &lease->ip_forward_non_local);
 
                 break;
+
+        case DHCP_OPTION_CLASSLESS_STATIC_ROUTE:
+                r = lease_parse_classless_routes(option, len, &lease->static_route, &lease->static_route_size,
+                        &lease->static_route_allocated);
+                if (r < 0)
+                        return r;
+
+                break;
         }
 
         return 0;
@@ -451,6 +591,8 @@ int dhcp_lease_save(sd_dhcp_lease *lease, const char *lease_file) {
         size_t addresses_size;
         const char *string;
         uint16_t mtu;
+        struct sd_dhcp_route *routes;
+        size_t routes_size;
         int r;
 
         assert(lease);
@@ -513,6 +655,10 @@ int dhcp_lease_save(sd_dhcp_lease *lease, const char *lease_file) {
         if (r >= 0)
                 fprintf(f, "ROOT_PATH=%s\n", string);
 
+        r = sd_dhcp_lease_get_routes(lease, &routes, &routes_size);
+        if (r >= 0)
+                serialize_dhcp_routes(f, "ROUTES", routes, routes_size);
+
         r = 0;
 
         fflush(f);
@@ -534,7 +680,7 @@ int dhcp_lease_load(const char *lease_file, sd_dhcp_lease **ret) {
         _cleanup_dhcp_lease_unref_ sd_dhcp_lease *lease = NULL;
         _cleanup_free_ char *address = NULL, *router = NULL, *netmask = NULL,
                             *server_address = NULL, *next_server = NULL,
-                            *dns = NULL, *ntp = NULL, *mtu = NULL;
+                            *dns = NULL, *ntp = NULL, *mtu = NULL, *routes = NULL;
         struct in_addr addr;
         int r;
 
@@ -557,6 +703,7 @@ int dhcp_lease_load(const char *lease_file, sd_dhcp_lease **ret) {
                            "DOMAINNAME", &lease->domainname,
                            "HOSTNAME", &lease->hostname,
                            "ROOT_PATH", &lease->root_path,
+                           "ROUTES", &routes,
                            NULL);
         if (r < 0) {
                 if (r == -ENOENT)
@@ -620,6 +767,13 @@ int dhcp_lease_load(const char *lease_file, sd_dhcp_lease **ret) {
                         lease->mtu = u;
         }
 
+        if (routes) {
+                r = deserialize_dhcp_routes(&lease->static_route, &lease->static_route_size,
+                                &lease->static_route_allocated, routes);
+                if (r < 0)
+                    return r;
+        }
+
         *ret = lease;
         lease = NULL;
 
diff --git a/src/libsystemd-network/sd-dhcp-server.c b/src/libsystemd-network/sd-dhcp-server.c
new file mode 100644 (file)
index 0000000..5c32fdf
--- /dev/null
@@ -0,0 +1,881 @@
+/*-*- Mode: C; c-basic-offset: 8; indent-tabs-mode: nil -*-*/
+
+/***
+  This file is part of systemd.
+
+  Copyright (C) 2013 Intel Corporation. All rights reserved.
+  Copyright (C) 2014 Tom Gundersen
+
+  systemd is free software; you can redistribute it and/or modify it
+  under the terms of the GNU Lesser General Public License as published by
+  the Free Software Foundation; either version 2.1 of the License, or
+  (at your option) any later version.
+
+  systemd is distributed in the hope that it will be useful, but
+  WITHOUT ANY WARRANTY; without even the implied warranty of
+  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+  Lesser General Public License for more details.
+
+  You should have received a copy of the GNU Lesser General Public License
+  along with systemd; If not, see <http://www.gnu.org/licenses/>.
+***/
+
+#include <sys/ioctl.h>
+#include <netinet/if_ether.h>
+
+#include "siphash24.h"
+
+#include "sd-dhcp-server.h"
+#include "dhcp-server-internal.h"
+#include "dhcp-internal.h"
+
+#define DHCP_DEFAULT_LEASE_TIME         3600 /* one hour */
+
+int sd_dhcp_server_set_lease_pool(sd_dhcp_server *server, struct in_addr *address,
+                                  size_t size) {
+        assert_return(server, -EINVAL);
+        assert_return(address, -EINVAL);
+        assert_return(address->s_addr, -EINVAL);
+        assert_return(size, -EINVAL);
+        assert_return(server->pool_start == htobe32(INADDR_ANY), -EBUSY);
+        assert_return(!server->pool_size, -EBUSY);
+        assert_return(!server->bound_leases, -EBUSY);
+
+        server->bound_leases = new0(DHCPLease*, size);
+        if (!server->bound_leases)
+                return -ENOMEM;
+
+        server->pool_start = address->s_addr;
+        server->pool_size = size;
+
+        return 0;
+}
+
+int sd_dhcp_server_set_address(sd_dhcp_server *server, struct in_addr *address) {
+        assert_return(server, -EINVAL);
+        assert_return(address, -EINVAL);
+        assert_return(address->s_addr, -EINVAL);
+        assert_return(server->address == htobe32(INADDR_ANY), -EBUSY);
+
+        server->address = address->s_addr;
+
+        return 0;
+}
+
+bool sd_dhcp_server_is_running(sd_dhcp_server *server) {
+        assert_return(server, -EINVAL);
+
+        return !!server->receive_message;
+}
+
+sd_dhcp_server *sd_dhcp_server_ref(sd_dhcp_server *server) {
+        if (server)
+                assert_se(REFCNT_INC(server->n_ref) >= 2);
+
+        return server;
+}
+
+unsigned long client_id_hash_func(const void *p, const uint8_t hash_key[HASH_KEY_SIZE]) {
+        uint64_t u;
+        const DHCPClientId *id = p;
+
+        assert(id);
+        assert(id->length);
+        assert(id->data);
+
+        siphash24((uint8_t*) &u, id->data, id->length, hash_key);
+
+        return (unsigned long) u;
+}
+
+int client_id_compare_func(const void *_a, const void *_b) {
+        const DHCPClientId *a, *b;
+
+        a = _a;
+        b = _b;
+
+        assert(!a->length || a->data);
+        assert(!b->length || b->data);
+
+        if (a->length != b->length)
+                return a->length < b->length ? -1 : 1;
+
+        return memcmp(a->data, b->data, a->length);
+}
+
+static void dhcp_lease_free(DHCPLease *lease) {
+        if (!lease)
+                return;
+
+        free(lease->client_id.data);
+        free(lease);
+}
+
+sd_dhcp_server *sd_dhcp_server_unref(sd_dhcp_server *server) {
+        DHCPLease *lease;
+
+        if (!server)
+                return NULL;
+
+        if (REFCNT_DEC(server->n_ref) > 0)
+                return NULL;
+
+        log_dhcp_server(server, "UNREF");
+
+        sd_dhcp_server_stop(server);
+
+        sd_event_unref(server->event);
+
+        while ((lease = hashmap_steal_first(server->leases_by_client_id)))
+                dhcp_lease_free(lease);
+        hashmap_free(server->leases_by_client_id);
+
+        free(server->bound_leases);
+        free(server);
+
+        return NULL;
+}
+
+int sd_dhcp_server_new(sd_dhcp_server **ret, int ifindex) {
+        _cleanup_dhcp_server_unref_ sd_dhcp_server *server = NULL;
+
+        assert_return(ret, -EINVAL);
+        assert_return(ifindex > 0, -EINVAL);
+
+        server = new0(sd_dhcp_server, 1);
+        if (!server)
+                return -ENOMEM;
+
+        server->n_ref = REFCNT_INIT;
+        server->fd_raw = -1;
+        server->fd = -1;
+        server->address = htobe32(INADDR_ANY);
+        server->index = ifindex;
+        server->leases_by_client_id = hashmap_new(client_id_hash_func, client_id_compare_func);
+
+        *ret = server;
+        server = NULL;
+
+        return 0;
+}
+
+int sd_dhcp_server_attach_event(sd_dhcp_server *server, sd_event *event, int priority) {
+        int r;
+
+        assert_return(server, -EINVAL);
+        assert_return(!server->event, -EBUSY);
+
+        if (event)
+                server->event = sd_event_ref(event);
+        else {
+                r = sd_event_default(&server->event);
+                if (r < 0)
+                        return r;
+        }
+
+        server->event_priority = priority;
+
+        return 0;
+}
+
+int sd_dhcp_server_detach_event(sd_dhcp_server *server) {
+        assert_return(server, -EINVAL);
+
+        server->event = sd_event_unref(server->event);
+
+        return 0;
+}
+
+sd_event *sd_dhcp_server_get_event(sd_dhcp_server *server) {
+        assert_return(server, NULL);
+
+        return server->event;
+}
+
+int sd_dhcp_server_stop(sd_dhcp_server *server) {
+        assert_return(server, -EINVAL);
+
+        server->receive_message =
+                sd_event_source_unref(server->receive_message);
+
+        server->fd_raw = safe_close(server->fd_raw);
+        server->fd = safe_close(server->fd);
+
+        log_dhcp_server(server, "STOPPED");
+
+        return 0;
+}
+
+static int dhcp_server_send_unicast_raw(sd_dhcp_server *server, DHCPPacket *packet,
+                                        size_t len) {
+        union sockaddr_union link = {
+                .ll.sll_family = AF_PACKET,
+                .ll.sll_protocol = htons(ETH_P_IP),
+                .ll.sll_ifindex = server->index,
+                .ll.sll_halen = ETH_ALEN,
+        };
+        int r;
+
+        assert(server);
+        assert(server->index > 0);
+        assert(server->address);
+        assert(packet);
+        assert(len > sizeof(DHCPPacket));
+
+        memcpy(&link.ll.sll_addr, &packet->dhcp.chaddr, ETH_ALEN);
+
+        dhcp_packet_append_ip_headers(packet, server->address, DHCP_PORT_SERVER,
+                                      packet->dhcp.yiaddr, DHCP_PORT_CLIENT, len);
+
+        r = dhcp_network_send_raw_socket(server->fd_raw, &link, packet, len);
+        if (r < 0)
+                return r;
+
+        return 0;
+}
+
+static int dhcp_server_send_udp(sd_dhcp_server *server, be32_t destination,
+                                DHCPMessage *message, size_t len) {
+        union sockaddr_union dest = {
+                .in.sin_family = AF_INET,
+                .in.sin_port = htobe16(DHCP_PORT_CLIENT),
+                .in.sin_addr.s_addr = destination,
+        };
+        struct iovec iov = {
+                .iov_base = message,
+                .iov_len = len,
+        };
+        uint8_t cmsgbuf[CMSG_LEN(sizeof(struct in_pktinfo))] = {};
+        struct msghdr msg = {
+                .msg_name = &dest,
+                .msg_namelen = sizeof(dest.in),
+                .msg_iov = &iov,
+                .msg_iovlen = 1,
+                .msg_control = cmsgbuf,
+                .msg_controllen = sizeof(cmsgbuf),
+        };
+        struct cmsghdr *cmsg;
+        struct in_pktinfo *pktinfo;
+        int r;
+
+        assert(server);
+        assert(server->fd > 0);
+        assert(message);
+        assert(len > sizeof(DHCPMessage));
+
+        cmsg = CMSG_FIRSTHDR(&msg);
+        assert(cmsg);
+
+        cmsg->cmsg_level = IPPROTO_IP;
+        cmsg->cmsg_type = IP_PKTINFO;
+        cmsg->cmsg_len = CMSG_LEN(sizeof(struct in_pktinfo));
+
+        /* we attach source interface and address info to the message
+           rather than binding the socket. This will be mostly useful
+           when we gain support for arbitrary number of server addresses
+         */
+        pktinfo = (struct in_pktinfo*) CMSG_DATA(cmsg);
+        assert(pktinfo);
+
+        pktinfo->ipi_ifindex = server->index;
+        pktinfo->ipi_spec_dst.s_addr = server->address;
+
+        r = sendmsg(server->fd, &msg, 0);
+        if (r < 0)
+                return -errno;
+
+        return 0;
+}
+
+static bool requested_broadcast(DHCPRequest *req) {
+        assert(req);
+
+        return req->message->flags & htobe16(0x8000);
+}
+
+int dhcp_server_send_packet(sd_dhcp_server *server,
+                            DHCPRequest *req, DHCPPacket *packet,
+                            int type, size_t optoffset) {
+        be32_t destination = INADDR_ANY;
+        int r;
+
+        assert(server);
+        assert(req);
+        assert(req->max_optlen);
+        assert(optoffset <= req->max_optlen);
+        assert(packet);
+
+        r = dhcp_option_append(&packet->dhcp, req->max_optlen, &optoffset, 0,
+                               DHCP_OPTION_SERVER_IDENTIFIER,
+                               4, &server->address);
+        if (r < 0)
+                return r;
+
+        r = dhcp_option_append(&packet->dhcp, req->max_optlen, &optoffset, 0,
+                               DHCP_OPTION_END, 0, NULL);
+        if (r < 0)
+                return r;
+
+        /* RFC 2131 Section 4.1
+
+           If the ’giaddr’ field in a DHCP message from a client is non-zero,
+           the server sends any return messages to the ’DHCP server’ port on the
+           BOOTP relay agent whose address appears in ’giaddr’. If the ’giaddr’
+           field is zero and the ’ciaddr’ field is nonzero, then the server
+           unicasts DHCPOFFER and DHCPACK messages to the address in ’ciaddr’.
+           If ’giaddr’ is zero and ’ciaddr’ is zero, and the broadcast bit is
+           set, then the server broadcasts DHCPOFFER and DHCPACK messages to
+           0xffffffff. If the broadcast bit is not set and ’giaddr’ is zero and
+           ’ciaddr’ is zero, then the server unicasts DHCPOFFER and DHCPACK
+           messages to the client’s hardware address and ’yiaddr’ address. In
+           all cases, when ’giaddr’ is zero, the server broadcasts any DHCPNAK
+           messages to 0xffffffff.
+
+           Section 4.3.2
+
+           If ’giaddr’ is set in the DHCPREQUEST message, the client is on a
+           different subnet. The server MUST set the broadcast bit in the
+           DHCPNAK, so that the relay agent will broadcast the DHCPNAK to the
+           client, because the client may not have a correct network address
+           or subnet mask, and the client may not be answering ARP requests.
+         */
+        if (req->message->giaddr) {
+                destination = req->message->giaddr;
+                if (type == DHCP_NAK)
+                        packet->dhcp.flags = htobe16(0x8000);
+        } else if (req->message->ciaddr && type != DHCP_NAK)
+                destination = req->message->ciaddr;
+
+        if (destination != INADDR_ANY)
+                return dhcp_server_send_udp(server, destination, &packet->dhcp,
+                                            sizeof(DHCPMessage) + optoffset);
+        else if (requested_broadcast(req) || type == DHCP_NAK)
+                return dhcp_server_send_udp(server, INADDR_BROADCAST, &packet->dhcp,
+                                            sizeof(DHCPMessage) + optoffset);
+        else
+                /* we cannot send UDP packet to specific MAC address when the address is
+                   not yet configured, so must fall back to raw packets */
+                return dhcp_server_send_unicast_raw(server, packet,
+                                                    sizeof(DHCPPacket) + optoffset);
+}
+
+static int server_message_init(sd_dhcp_server *server, DHCPPacket **ret,
+                               uint8_t type, size_t *_optoffset, DHCPRequest *req) {
+        _cleanup_free_ DHCPPacket *packet = NULL;
+        size_t optoffset;
+        int r;
+
+        assert(server);
+        assert(ret);
+        assert(_optoffset);
+        assert(IN_SET(type, DHCP_OFFER, DHCP_ACK, DHCP_NAK));
+
+        packet = malloc0(sizeof(DHCPPacket) + req->max_optlen);
+        if (!packet)
+                return -ENOMEM;
+
+        r = dhcp_message_init(&packet->dhcp, BOOTREPLY, be32toh(req->message->xid),
+                              type, req->max_optlen, &optoffset);
+        if (r < 0)
+                return r;
+
+        packet->dhcp.flags = req->message->flags;
+        packet->dhcp.giaddr = req->message->giaddr;
+        memcpy(&packet->dhcp.chaddr, &req->message->chaddr, ETH_ALEN);
+
+        *_optoffset = optoffset;
+        *ret = packet;
+        packet = NULL;
+
+        return 0;
+}
+
+static int server_send_offer(sd_dhcp_server *server, DHCPRequest *req, be32_t address) {
+        _cleanup_free_ DHCPPacket *packet = NULL;
+        size_t offset;
+        be32_t lease_time;
+        int r;
+
+        r = server_message_init(server, &packet, DHCP_OFFER, &offset, req);
+        if (r < 0)
+                return r;
+
+        packet->dhcp.yiaddr = address;
+
+        lease_time = htobe32(req->lifetime);
+        r = dhcp_option_append(&packet->dhcp, req->max_optlen, &offset, 0,
+                               DHCP_OPTION_IP_ADDRESS_LEASE_TIME, 4, &lease_time);
+        if (r < 0)
+                return r;
+
+        r = dhcp_server_send_packet(server, req, packet, DHCP_OFFER, offset);
+        if (r < 0)
+                return r;
+
+        return 0;
+}
+
+static int server_send_ack(sd_dhcp_server *server, DHCPRequest *req, be32_t address) {
+        _cleanup_free_ DHCPPacket *packet = NULL;
+        size_t offset;
+        be32_t lease_time;
+        int r;
+
+        r = server_message_init(server, &packet, DHCP_ACK, &offset, req);
+        if (r < 0)
+                return r;
+
+        packet->dhcp.yiaddr = address;
+
+        lease_time = htobe32(req->lifetime);
+        r = dhcp_option_append(&packet->dhcp, req->max_optlen, &offset, 0,
+                               DHCP_OPTION_IP_ADDRESS_LEASE_TIME, 4, &lease_time);
+        if (r < 0)
+                return r;
+
+        r = dhcp_server_send_packet(server, req, packet, DHCP_ACK, offset);
+        if (r < 0)
+                return r;
+
+        return 0;
+}
+
+static int server_send_nak(sd_dhcp_server *server, DHCPRequest *req) {
+        _cleanup_free_ DHCPPacket *packet = NULL;
+        size_t offset;
+        int r;
+
+        r = server_message_init(server, &packet, DHCP_NAK, &offset, req);
+        if (r < 0)
+                return r;
+
+        r = dhcp_server_send_packet(server, req, packet, DHCP_NAK, offset);
+        if (r < 0)
+                return r;
+
+        return 0;
+}
+
+static int parse_request(uint8_t code, uint8_t len, const uint8_t *option,
+                         void *user_data) {
+        DHCPRequest *req = user_data;
+
+        assert(req);
+
+        switch(code) {
+        case DHCP_OPTION_IP_ADDRESS_LEASE_TIME:
+                if (len == 4)
+                        req->lifetime = be32toh(*(be32_t*)option);
+
+                break;
+        case DHCP_OPTION_REQUESTED_IP_ADDRESS:
+                if (len == 4)
+                        req->requested_ip = *(be32_t*)option;
+
+                break;
+        case DHCP_OPTION_SERVER_IDENTIFIER:
+                if (len == 4)
+                        req->server_id = *(be32_t*)option;
+
+                break;
+        case DHCP_OPTION_CLIENT_IDENTIFIER:
+                if (len >= 2) {
+                        uint8_t *data;
+
+                        data = memdup(option, len);
+                        if (!data)
+                                return -ENOMEM;
+
+                        free(req->client_id.data);
+                        req->client_id.data = data;
+                        req->client_id.length = len;
+                }
+
+                break;
+        case DHCP_OPTION_MAXIMUM_MESSAGE_SIZE:
+                if (len == 2)
+                        req->max_optlen = be16toh(*(be16_t*)option) -
+                                          - sizeof(DHCPPacket);
+
+                break;
+        }
+
+        return 0;
+}
+
+static void dhcp_request_free(DHCPRequest *req) {
+        if (!req)
+                return;
+
+        free(req->client_id.data);
+        free(req);
+}
+
+DEFINE_TRIVIAL_CLEANUP_FUNC(DHCPRequest*, dhcp_request_free);
+#define _cleanup_dhcp_request_free_ _cleanup_(dhcp_request_freep)
+
+static int ensure_sane_request(DHCPRequest *req, DHCPMessage *message) {
+        assert(req);
+        assert(message);
+
+        req->message = message;
+
+        /* set client id based on mac address if client did not send an explicit one */
+        if (!req->client_id.data) {
+                uint8_t *data;
+
+                data = new0(uint8_t, ETH_ALEN + 1);
+                if (!data)
+                        return -ENOMEM;
+
+                req->client_id.length = ETH_ALEN + 1;
+                req->client_id.data = data;
+                req->client_id.data[0] = 0x01;
+                memcpy(&req->client_id.data[1], &message->chaddr, ETH_ALEN);
+        }
+
+        if (req->max_optlen < DHCP_MIN_OPTIONS_SIZE)
+                req->max_optlen = DHCP_MIN_OPTIONS_SIZE;
+
+        if (!req->lifetime)
+                req->lifetime = DHCP_DEFAULT_LEASE_TIME;
+
+        return 0;
+}
+
+static int get_pool_offset(sd_dhcp_server *server, be32_t requested_ip) {
+        assert(server);
+
+        if (!server->pool_size)
+                return -EINVAL;
+
+        if (be32toh(requested_ip) < be32toh(server->pool_start) ||
+            be32toh(requested_ip) >= be32toh(server->pool_start) +
+                                             + server->pool_size)
+                return -EINVAL;
+
+        return be32toh(requested_ip) - be32toh(server->pool_start);
+}
+
+int dhcp_server_handle_message(sd_dhcp_server *server, DHCPMessage *message,
+                               size_t length) {
+        _cleanup_dhcp_request_free_ DHCPRequest *req = NULL;
+        DHCPLease *existing_lease;
+        int type, r;
+
+        assert(server);
+        assert(message);
+
+        if (message->op != BOOTREQUEST ||
+            message->htype != ARPHRD_ETHER ||
+            message->hlen != ETHER_ADDR_LEN)
+                return 0;
+
+        req = new0(DHCPRequest, 1);
+        if (!req)
+                return -ENOMEM;
+
+        type = dhcp_option_parse(message, length, parse_request, req);
+        if (type < 0)
+                return 0;
+
+        r = ensure_sane_request(req, message);
+        if (r < 0)
+                /* this only fails on critical errors */
+                return r;
+
+        existing_lease = hashmap_get(server->leases_by_client_id, &req->client_id);
+
+        switch(type) {
+        case DHCP_DISCOVER:
+        {
+                be32_t address = INADDR_ANY;
+                unsigned i;
+
+                log_dhcp_server(server, "DISCOVER (0x%x)",
+                                be32toh(req->message->xid));
+
+                if (!server->pool_size)
+                        /* no pool allocated */
+                        return 0;
+
+                /* for now pick a random free address from the pool */
+                if (existing_lease)
+                        address = existing_lease->address;
+                else {
+                        for (i = 0; i < server->pool_size; i++) {
+                                if (!server->bound_leases[server->next_offer]) {
+                                        address = htobe32(be32toh(server->pool_start) + server->next_offer);
+                                        break;
+                                } else
+                                        server->next_offer = (server->next_offer + 1) % server->pool_size;
+                        }
+                }
+
+                if (address == INADDR_ANY)
+                        /* no free addresses left */
+                        return 0;
+
+                r = server_send_offer(server, req, address);
+                if (r < 0) {
+                        /* this only fails on critical errors */
+                        log_dhcp_server(server, "could not send offer: %s",
+                                        strerror(-r));
+                        return r;
+                } else {
+                        log_dhcp_server(server, "OFFER (0x%x)",
+                                        be32toh(req->message->xid));
+                        return DHCP_OFFER;
+                }
+
+                break;
+        }
+        case DHCP_DECLINE:
+                log_dhcp_server(server, "DECLINE (0x%x)",
+                                be32toh(req->message->xid));
+
+                /* TODO: make sure we don't offer this address again */
+
+                return 1;
+
+                break;
+        case DHCP_REQUEST:
+        {
+                be32_t address;
+                bool init_reboot = false;
+                int pool_offset;
+
+                /* see RFC 2131, section 4.3.2 */
+
+                if (req->server_id) {
+                        log_dhcp_server(server, "REQUEST (selecting) (0x%x)",
+                                        be32toh(req->message->xid));
+
+                        /* SELECTING */
+                        if (req->server_id != server->address)
+                                /* client did not pick us */
+                                return 0;
+
+                        if (req->message->ciaddr)
+                                /* this MUST be zero */
+                                return 0;
+
+                        if (!req->requested_ip)
+                                /* this must be filled in with the yiaddr
+                                   from the chosen OFFER */
+                                return 0;
+
+                        address = req->requested_ip;
+                } else if (req->requested_ip) {
+                        log_dhcp_server(server, "REQUEST (init-reboot) (0x%x)",
+                                        be32toh(req->message->xid));
+
+                        /* INIT-REBOOT */
+                        if (req->message->ciaddr)
+                                /* this MUST be zero */
+                                return 0;
+
+                        /* TODO: check more carefully if IP is correct */
+                        address = req->requested_ip;
+                        init_reboot = true;
+                } else {
+                        log_dhcp_server(server, "REQUEST (rebinding/renewing) (0x%x)",
+                                        be32toh(req->message->xid));
+
+                        /* REBINDING / RENEWING */
+                        if (!req->message->ciaddr)
+                                /* this MUST be filled in with clients IP address */
+                                return 0;
+
+                        address = req->message->ciaddr;
+                }
+
+                pool_offset = get_pool_offset(server, address);
+
+                /* verify that the requested address is from the pool, and either
+                   owned by the current client or free */
+                if (pool_offset >= 0 &&
+                    server->bound_leases[pool_offset] == existing_lease) {
+                        DHCPLease *lease;
+                        usec_t time_now;
+
+                        if (!existing_lease) {
+                                lease = new0(DHCPLease, 1);
+                                lease->address = req->requested_ip;
+                                lease->client_id.data = memdup(req->client_id.data,
+                                                               req->client_id.length);
+                                if (!lease->client_id.data) {
+                                        free(lease);
+                                        return -ENOMEM;
+                                }
+                                lease->client_id.length = req->client_id.length;
+                        } else
+                                lease = existing_lease;
+
+                        r = sd_event_now(server->event, CLOCK_MONOTONIC, &time_now);
+                        if (r < 0)
+                                time_now = now(CLOCK_MONOTONIC);
+                        lease->expiration = req->lifetime * USEC_PER_SEC + time_now;
+
+                        r = server_send_ack(server, req, address);
+                        if (r < 0) {
+                                /* this only fails on critical errors */
+                                log_dhcp_server(server, "could not send ack: %s",
+                                                strerror(-r));
+
+                                if (!existing_lease)
+                                        dhcp_lease_free(lease);
+
+                                return r;
+                        } else {
+                                log_dhcp_server(server, "ACK (0x%x)",
+                                                be32toh(req->message->xid));
+
+                                server->bound_leases[pool_offset] = lease;
+                                hashmap_put(server->leases_by_client_id, &lease->client_id, lease);
+
+                                return DHCP_ACK;
+                        }
+                } else if (init_reboot) {
+                        r = server_send_nak(server, req);
+                        if (r < 0) {
+                                /* this only fails on critical errors */
+                                log_dhcp_server(server, "could not send nak: %s",
+                                                strerror(-r));
+                                return r;
+                        } else {
+                                log_dhcp_server(server, "NAK (0x%x)",
+                                                be32toh(req->message->xid));
+                                return DHCP_NAK;
+                        }
+                }
+
+                break;
+        }
+        case DHCP_RELEASE: {
+                int pool_offset;
+
+                log_dhcp_server(server, "RELEASE (0x%x)",
+                                be32toh(req->message->xid));
+
+                if (!existing_lease)
+                        return 0;
+
+                if (existing_lease->address != req->message->ciaddr)
+                        return 0;
+
+                pool_offset = get_pool_offset(server, req->message->ciaddr);
+                if (pool_offset < 0)
+                        return 0;
+
+                if (server->bound_leases[pool_offset] == existing_lease) {
+                        server->bound_leases[pool_offset] = NULL;
+                        hashmap_remove(server->leases_by_client_id, existing_lease);
+                        dhcp_lease_free(existing_lease);
+
+                        return 1;
+                } else
+                        return 0;
+        }
+        }
+
+        return 0;
+}
+
+static int server_receive_message(sd_event_source *s, int fd,
+                                  uint32_t revents, void *userdata) {
+        _cleanup_free_ DHCPMessage *message = NULL;
+        uint8_t cmsgbuf[CMSG_LEN(sizeof(struct in_pktinfo))];
+        sd_dhcp_server *server = userdata;
+        struct iovec iov = {};
+        struct msghdr msg = {
+                .msg_iov = &iov,
+                .msg_iovlen = 1,
+                .msg_control = cmsgbuf,
+                .msg_controllen = sizeof(cmsgbuf),
+        };
+        struct cmsghdr *cmsg;
+        int buflen = 0, len, r;
+
+        assert(server);
+
+        r = ioctl(fd, FIONREAD, &buflen);
+        if (r < 0)
+                return r;
+        if (buflen < 0)
+                return -EIO;
+
+        message = malloc0(buflen);
+        if (!message)
+                return -ENOMEM;
+
+        iov.iov_base = message;
+        iov.iov_len = buflen;
+
+        len = recvmsg(fd, &msg, 0);
+        if (len < buflen)
+                return 0;
+        else if ((size_t)len < sizeof(DHCPMessage))
+                return 0;
+
+        for (cmsg = CMSG_FIRSTHDR(&msg); cmsg; cmsg = CMSG_NXTHDR(&msg, cmsg)) {
+                if (cmsg->cmsg_level == IPPROTO_IP &&
+                    cmsg->cmsg_type == IP_PKTINFO &&
+                    cmsg->cmsg_len == CMSG_LEN(sizeof(struct in_pktinfo))) {
+                        struct in_pktinfo *info = (struct in_pktinfo*)CMSG_DATA(cmsg);
+
+                        /* TODO figure out if this can be done as a filter on the socket, like for IPv6 */
+                        if (server->index != info->ipi_ifindex)
+                                return 0;
+
+                        break;
+                }
+        }
+
+        return dhcp_server_handle_message(server, message, (size_t)len);
+}
+
+int sd_dhcp_server_start(sd_dhcp_server *server) {
+        int r;
+
+        assert_return(server, -EINVAL);
+        assert_return(server->event, -EINVAL);
+        assert_return(!server->receive_message, -EBUSY);
+        assert_return(server->fd_raw == -1, -EBUSY);
+        assert_return(server->fd == -1, -EBUSY);
+        assert_return(server->address != htobe32(INADDR_ANY), -EUNATCH);
+
+        r = socket(AF_PACKET, SOCK_DGRAM | SOCK_NONBLOCK, 0);
+        if (r < 0) {
+                r = -errno;
+                sd_dhcp_server_stop(server);
+                return r;
+        }
+        server->fd_raw = r;
+
+        r = dhcp_network_bind_udp_socket(INADDR_ANY, DHCP_PORT_SERVER);
+        if (r < 0) {
+                sd_dhcp_server_stop(server);
+                return r;
+        }
+        server->fd = r;
+
+        r = sd_event_add_io(server->event, &server->receive_message,
+                            server->fd, EPOLLIN,
+                            server_receive_message, server);
+        if (r < 0) {
+                sd_dhcp_server_stop(server);
+                return r;
+        }
+
+        r = sd_event_source_set_priority(server->receive_message,
+                                         server->event_priority);
+        if (r < 0) {
+                sd_dhcp_server_stop(server);
+                return r;
+        }
+
+        log_dhcp_server(server, "STARTED");
+
+        return 0;
+}
diff --git a/src/libsystemd-network/sd-dhcp6-client.c b/src/libsystemd-network/sd-dhcp6-client.c
new file mode 100644 (file)
index 0000000..8fdbbfe
--- /dev/null
@@ -0,0 +1,1116 @@
+/*-*- Mode: C; c-basic-offset: 8; indent-tabs-mode: nil -*-*/
+
+/***
+  This file is part of systemd.
+
+  Copyright (C) 2014 Intel Corporation. All rights reserved.
+
+  systemd is free software; you can redistribute it and/or modify it
+  under the terms of the GNU Lesser General Public License as published by
+  the Free Software Foundation; either version 2.1 of the License, or
+  (at your option) any later version.
+
+  systemd is distributed in the hope that it will be useful, but
+  WITHOUT ANY WARRANTY; without even the implied warranty of
+  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+  Lesser General Public License for more details.
+
+  You should have received a copy of the GNU Lesser General Public License
+  along with systemd; If not, see <http://www.gnu.org/licenses/>.
+***/
+
+#include <errno.h>
+#include <string.h>
+#include <sys/ioctl.h>
+
+#include "udev.h"
+#include "udev-util.h"
+#include "virt.h"
+#include "siphash24.h"
+#include "util.h"
+#include "refcnt.h"
+
+#include "network-internal.h"
+#include "sd-dhcp6-client.h"
+#include "dhcp6-protocol.h"
+#include "dhcp6-internal.h"
+#include "dhcp6-lease-internal.h"
+
+#define SYSTEMD_PEN 43793
+#define HASH_KEY SD_ID128_MAKE(80,11,8c,c2,fe,4a,03,ee,3e,d6,0c,6f,36,39,14,09)
+
+struct sd_dhcp6_client {
+        RefCount n_ref;
+
+        enum DHCP6State state;
+        sd_event *event;
+        int event_priority;
+        int index;
+        struct ether_addr mac_addr;
+        DHCP6IA ia_na;
+        be32_t transaction_id;
+        struct sd_dhcp6_lease *lease;
+        int fd;
+        be16_t *req_opts;
+        size_t req_opts_allocated;
+        size_t req_opts_len;
+        sd_event_source *receive_message;
+        usec_t retransmit_time;
+        uint8_t retransmit_count;
+        sd_event_source *timeout_resend;
+        sd_event_source *timeout_resend_expire;
+        sd_dhcp6_client_cb_t cb;
+        void *userdata;
+
+        struct duid_en {
+                uint16_t type; /* DHCP6_DUID_EN */
+                uint32_t pen;
+                uint8_t id[8];
+        } _packed_ duid;
+};
+
+static const uint16_t default_req_opts[] = {
+        DHCP6_OPTION_DNS_SERVERS,
+        DHCP6_OPTION_DOMAIN_LIST,
+        DHCP6_OPTION_NTP_SERVER,
+};
+
+const char * dhcp6_message_type_table[_DHCP6_MESSAGE_MAX] = {
+        [DHCP6_SOLICIT] = "SOLICIT",
+        [DHCP6_ADVERTISE] = "ADVERTISE",
+        [DHCP6_REQUEST] = "REQUEST",
+        [DHCP6_CONFIRM] = "CONFIRM",
+        [DHCP6_RENEW] = "RENEW",
+        [DHCP6_REBIND] = "REBIND",
+        [DHCP6_REPLY] = "REPLY",
+        [DHCP6_RELEASE] = "RELEASE",
+        [DHCP6_DECLINE] = "DECLINE",
+        [DHCP6_RECONFIGURE] = "RECONFIGURE",
+        [DHCP6_INFORMATION_REQUEST] = "INFORMATION-REQUEST",
+        [DHCP6_RELAY_FORW] = "RELAY-FORW",
+        [DHCP6_RELAY_REPL] = "RELAY-REPL",
+};
+
+DEFINE_STRING_TABLE_LOOKUP(dhcp6_message_type, int);
+
+const char * dhcp6_message_status_table[_DHCP6_STATUS_MAX] = {
+        [DHCP6_STATUS_SUCCESS] = "Success",
+        [DHCP6_STATUS_UNSPEC_FAIL] = "Unspecified failure",
+        [DHCP6_STATUS_NO_ADDRS_AVAIL] = "No addresses available",
+        [DHCP6_STATUS_NO_BINDING] = "Binding unavailable",
+        [DHCP6_STATUS_NOT_ON_LINK] = "Not on link",
+        [DHCP6_STATUS_USE_MULTICAST] = "Use multicast",
+};
+
+DEFINE_STRING_TABLE_LOOKUP(dhcp6_message_status, int);
+
+DEFINE_TRIVIAL_CLEANUP_FUNC(sd_dhcp6_client*, sd_dhcp6_client_unref);
+#define _cleanup_dhcp6_client_unref_ _cleanup_(sd_dhcp6_client_unrefp)
+
+#define DHCP6_CLIENT_DONT_DESTROY(client) \
+        _cleanup_dhcp6_client_unref_ _unused_ sd_dhcp6_client *_dont_destroy_##client = sd_dhcp6_client_ref(client)
+
+static int client_start(sd_dhcp6_client *client, enum DHCP6State state);
+
+int sd_dhcp6_client_set_callback(sd_dhcp6_client *client,
+                                 sd_dhcp6_client_cb_t cb, void *userdata)
+{
+        assert_return(client, -EINVAL);
+
+        client->cb = cb;
+        client->userdata = userdata;
+
+        return 0;
+}
+
+int sd_dhcp6_client_set_index(sd_dhcp6_client *client, int interface_index)
+{
+        assert_return(client, -EINVAL);
+        assert_return(interface_index >= -1, -EINVAL);
+
+        client->index = interface_index;
+
+        return 0;
+}
+
+int sd_dhcp6_client_set_mac(sd_dhcp6_client *client,
+                            const struct ether_addr *mac_addr)
+{
+        assert_return(client, -EINVAL);
+
+        if (mac_addr)
+                memcpy(&client->mac_addr, mac_addr, sizeof(client->mac_addr));
+        else
+                memset(&client->mac_addr, 0x00, sizeof(client->mac_addr));
+
+        return 0;
+}
+
+int sd_dhcp6_client_set_request_option(sd_dhcp6_client *client,
+                                       uint16_t option) {
+        size_t t;
+
+        assert_return(client, -EINVAL);
+        assert_return(client->state == DHCP6_STATE_STOPPED, -EBUSY);
+
+        switch(option) {
+        case DHCP6_OPTION_DNS_SERVERS:
+        case DHCP6_OPTION_DOMAIN_LIST:
+        case DHCP6_OPTION_SNTP_SERVERS:
+        case DHCP6_OPTION_NTP_SERVER:
+                break;
+
+        default:
+                return -EINVAL;
+        }
+
+        for (t = 0; t < client->req_opts_len; t++)
+                if (client->req_opts[t] == htobe16(option))
+                        return -EEXIST;
+
+        if (!GREEDY_REALLOC(client->req_opts, client->req_opts_allocated,
+                            client->req_opts_len + 1))
+                return -ENOMEM;
+
+        client->req_opts[client->req_opts_len++] = htobe16(option);
+
+        return 0;
+}
+
+int sd_dhcp6_client_get_lease(sd_dhcp6_client *client, sd_dhcp6_lease **ret) {
+        assert_return(client, -EINVAL);
+        assert_return(ret, -EINVAL);
+
+        if (!client->lease)
+                return -ENOMSG;
+
+        *ret = sd_dhcp6_lease_ref(client->lease);
+
+        return 0;
+}
+
+static void client_notify(sd_dhcp6_client *client, int event) {
+        if (client->cb)
+                client->cb(client, event, client->userdata);
+}
+
+static int client_reset(sd_dhcp6_client *client) {
+        assert_return(client, -EINVAL);
+
+        client->receive_message =
+                sd_event_source_unref(client->receive_message);
+
+        client->fd = safe_close(client->fd);
+
+        client->transaction_id = 0;
+
+        client->ia_na.timeout_t1 =
+                sd_event_source_unref(client->ia_na.timeout_t1);
+        client->ia_na.timeout_t2 =
+                sd_event_source_unref(client->ia_na.timeout_t2);
+
+        client->retransmit_time = 0;
+        client->retransmit_count = 0;
+        client->timeout_resend = sd_event_source_unref(client->timeout_resend);
+        client->timeout_resend_expire =
+                sd_event_source_unref(client->timeout_resend_expire);
+
+        client->state = DHCP6_STATE_STOPPED;
+
+        return 0;
+}
+
+static void client_stop(sd_dhcp6_client *client, int error) {
+        DHCP6_CLIENT_DONT_DESTROY(client);
+
+        assert(client);
+
+        client_notify(client, error);
+
+        client_reset(client);
+}
+
+static int client_send_message(sd_dhcp6_client *client) {
+        _cleanup_free_ DHCP6Message *message = NULL;
+        struct in6_addr all_servers =
+                IN6ADDR_ALL_DHCP6_RELAY_AGENTS_AND_SERVERS_INIT;
+        size_t len, optlen = 512;
+        uint8_t *opt;
+        int r;
+
+        len = sizeof(DHCP6Message) + optlen;
+
+        message = malloc0(len);
+        if (!message)
+                return -ENOMEM;
+
+        opt = (uint8_t *)(message + 1);
+
+        message->transaction_id = client->transaction_id;
+
+        switch(client->state) {
+        case DHCP6_STATE_SOLICITATION:
+                message->type = DHCP6_SOLICIT;
+
+                r = dhcp6_option_append(&opt, &optlen,
+                                        DHCP6_OPTION_RAPID_COMMIT, 0, NULL);
+                if (r < 0)
+                        return r;
+
+                r = dhcp6_option_append_ia(&opt, &optlen, &client->ia_na);
+                if (r < 0)
+                        return r;
+
+                break;
+
+        case DHCP6_STATE_REQUEST:
+        case DHCP6_STATE_RENEW:
+
+                if (client->state == DHCP6_STATE_REQUEST)
+                        message->type = DHCP6_REQUEST;
+                else
+                        message->type = DHCP6_RENEW;
+
+                r = dhcp6_option_append(&opt, &optlen, DHCP6_OPTION_SERVERID,
+                                        client->lease->serverid_len,
+                                        client->lease->serverid);
+                if (r < 0)
+                        return r;
+
+                r = dhcp6_option_append_ia(&opt, &optlen, &client->lease->ia);
+                if (r < 0)
+                        return r;
+
+                break;
+
+        case DHCP6_STATE_REBIND:
+                message->type = DHCP6_REBIND;
+
+                r = dhcp6_option_append_ia(&opt, &optlen, &client->lease->ia);
+                if (r < 0)
+                        return r;
+
+                break;
+
+        case DHCP6_STATE_STOPPED:
+        case DHCP6_STATE_RS:
+        case DHCP6_STATE_BOUND:
+                return -EINVAL;
+        }
+
+        r = dhcp6_option_append(&opt, &optlen, DHCP6_OPTION_ORO,
+                                client->req_opts_len * sizeof(be16_t),
+                                client->req_opts);
+        if (r < 0)
+                return r;
+
+        r = dhcp6_option_append(&opt, &optlen, DHCP6_OPTION_CLIENTID,
+                                sizeof(client->duid), &client->duid);
+        if (r < 0)
+                return r;
+
+        r = dhcp6_network_send_udp_socket(client->fd, &all_servers, message,
+                                          len - optlen);
+        if (r < 0)
+                return r;
+
+        log_dhcp6_client(client, "Sent %s",
+                         dhcp6_message_type_to_string(message->type));
+
+        return 0;
+}
+
+static int client_timeout_t2(sd_event_source *s, uint64_t usec,
+                             void *userdata) {
+        sd_dhcp6_client *client = userdata;
+
+        assert_return(s, -EINVAL);
+        assert_return(client, -EINVAL);
+        assert_return(client->lease, -EINVAL);
+
+        client->lease->ia.timeout_t2 =
+                sd_event_source_unref(client->lease->ia.timeout_t2);
+
+        log_dhcp6_client(client, "Timeout T2");
+
+        client_start(client, DHCP6_STATE_REBIND);
+
+        return 0;
+}
+
+static int client_timeout_t1(sd_event_source *s, uint64_t usec,
+                             void *userdata) {
+        sd_dhcp6_client *client = userdata;
+
+        assert_return(s, -EINVAL);
+        assert_return(client, -EINVAL);
+        assert_return(client->lease, -EINVAL);
+
+        client->lease->ia.timeout_t1 =
+                sd_event_source_unref(client->lease->ia.timeout_t1);
+
+        log_dhcp6_client(client, "Timeout T1");
+
+        client_start(client, DHCP6_STATE_RENEW);
+
+        return 0;
+}
+
+static int client_timeout_resend_expire(sd_event_source *s, uint64_t usec,
+                                        void *userdata) {
+        sd_dhcp6_client *client = userdata;
+        DHCP6_CLIENT_DONT_DESTROY(client);
+        enum DHCP6State state;
+
+        assert(s);
+        assert(client);
+        assert(client->event);
+
+        state = client->state;
+
+        client_stop(client, DHCP6_EVENT_RESEND_EXPIRE);
+
+        /* RFC 3315, section 18.1.4., says that "...the client may choose to
+           use a Solicit message to locate a new DHCP server..." */
+        if (state == DHCP6_STATE_REBIND)
+                client_start(client, DHCP6_STATE_SOLICITATION);
+
+        return 0;
+}
+
+static usec_t client_timeout_compute_random(usec_t val) {
+        return val - val / 10 +
+                (random_u32() % (2 * USEC_PER_SEC)) * val / 10 / USEC_PER_SEC;
+}
+
+static int client_timeout_resend(sd_event_source *s, uint64_t usec,
+                                 void *userdata) {
+        int r = 0;
+        sd_dhcp6_client *client = userdata;
+        usec_t time_now, init_retransmit_time, max_retransmit_time;
+        usec_t max_retransmit_duration = 0;
+        uint8_t max_retransmit_count = 0;
+        char time_string[FORMAT_TIMESPAN_MAX];
+        uint32_t expire = 0;
+
+        assert(s);
+        assert(client);
+        assert(client->event);
+
+        client->timeout_resend = sd_event_source_unref(client->timeout_resend);
+
+        switch (client->state) {
+        case DHCP6_STATE_SOLICITATION:
+
+                if (client->retransmit_count && client->lease) {
+                        client_start(client, DHCP6_STATE_REQUEST);
+                        return 0;
+                }
+
+                init_retransmit_time = DHCP6_SOL_TIMEOUT;
+                max_retransmit_time = DHCP6_SOL_MAX_RT;
+
+                break;
+
+        case DHCP6_STATE_REQUEST:
+                init_retransmit_time = DHCP6_REQ_TIMEOUT;
+                max_retransmit_time = DHCP6_REQ_MAX_RT;
+                max_retransmit_count = DHCP6_REQ_MAX_RC;
+
+                break;
+
+        case DHCP6_STATE_RENEW:
+                init_retransmit_time = DHCP6_REN_TIMEOUT;
+                max_retransmit_time = DHCP6_REN_MAX_RT;
+
+                /* RFC 3315, section 18.1.3. says max retransmit duration will
+                   be the remaining time until T2. Instead of setting MRD,
+                   wait for T2 to trigger with the same end result */
+
+                break;
+
+        case DHCP6_STATE_REBIND:
+                init_retransmit_time = DHCP6_REB_TIMEOUT;
+                max_retransmit_time = DHCP6_REB_MAX_RT;
+
+                if (!client->timeout_resend_expire) {
+                        r = dhcp6_lease_ia_rebind_expire(&client->lease->ia,
+                                                         &expire);
+                        if (r < 0) {
+                                client_stop(client, r);
+                                return 0;
+                        }
+                        max_retransmit_duration = expire * USEC_PER_SEC;
+                }
+
+                break;
+
+        case DHCP6_STATE_STOPPED:
+        case DHCP6_STATE_RS:
+        case DHCP6_STATE_BOUND:
+                return 0;
+        }
+
+        if (max_retransmit_count &&
+            client->retransmit_count >= max_retransmit_count) {
+                client_stop(client, DHCP6_EVENT_RETRANS_MAX);
+                return 0;
+        }
+
+        r = client_send_message(client);
+        if (r >= 0)
+                client->retransmit_count++;
+
+
+        r = sd_event_now(client->event, CLOCK_MONOTONIC, &time_now);
+        if (r < 0)
+                goto error;
+
+        if (!client->retransmit_time) {
+                client->retransmit_time =
+                        client_timeout_compute_random(init_retransmit_time);
+
+                if (client->state == DHCP6_STATE_SOLICITATION)
+                        client->retransmit_time += init_retransmit_time / 10;
+
+        } else {
+                if (max_retransmit_time &&
+                    client->retransmit_time > max_retransmit_time / 2)
+                        client->retransmit_time = client_timeout_compute_random(max_retransmit_time);
+                else
+                        client->retransmit_time += client_timeout_compute_random(client->retransmit_time);
+        }
+
+        log_dhcp6_client(client, "Next retransmission in %s",
+                         format_timespan(time_string, FORMAT_TIMESPAN_MAX,
+                                         client->retransmit_time, 0));
+
+        r = sd_event_add_time(client->event, &client->timeout_resend,
+                              CLOCK_MONOTONIC,
+                              time_now + client->retransmit_time,
+                              10 * USEC_PER_MSEC, client_timeout_resend,
+                              client);
+        if (r < 0)
+                goto error;
+
+        r = sd_event_source_set_priority(client->timeout_resend,
+                                         client->event_priority);
+        if (r < 0)
+                goto error;
+
+        if (max_retransmit_duration && !client->timeout_resend_expire) {
+
+                log_dhcp6_client(client, "Max retransmission duration %"PRIu64" secs",
+                                 max_retransmit_duration / USEC_PER_SEC);
+
+                r = sd_event_add_time(client->event,
+                                      &client->timeout_resend_expire,
+                                      CLOCK_MONOTONIC,
+                                      time_now + max_retransmit_duration,
+                                      USEC_PER_SEC,
+                                      client_timeout_resend_expire, client);
+                if (r < 0)
+                        goto error;
+
+                r = sd_event_source_set_priority(client->timeout_resend_expire,
+                                                 client->event_priority);
+                if (r < 0)
+                        goto error;
+        }
+
+error:
+        if (r < 0)
+                client_stop(client, r);
+
+        return 0;
+}
+
+static int client_ensure_iaid(sd_dhcp6_client *client) {
+        /* name is a pointer to memory in the udev_device struct, so must
+           have the same scope */
+        _cleanup_udev_device_unref_ struct udev_device *device = NULL;
+        const char *name = NULL;
+        uint64_t id;
+
+        assert(client);
+
+        if (client->ia_na.id)
+                return 0;
+
+        if (detect_container(NULL) <= 0) {
+                /* not in a container, udev will be around */
+                _cleanup_udev_unref_ struct udev *udev;
+                char ifindex_str[2 + DECIMAL_STR_MAX(int)];
+
+                udev = udev_new();
+                if (!udev)
+                        return -ENOMEM;
+
+                sprintf(ifindex_str, "n%d", client->index);
+                device = udev_device_new_from_device_id(udev, ifindex_str);
+                if (!device)
+                        return -errno;
+
+                if (udev_device_get_is_initialized(device) <= 0)
+                        /* not yet ready */
+                        return -EBUSY;
+
+                name = net_get_name(device);
+        }
+
+        if (name)
+                siphash24((uint8_t*)&id, name, strlen(name), HASH_KEY.bytes);
+        else
+                /* fall back to mac address if no predictable name available */
+                siphash24((uint8_t*)&id, &client->mac_addr, ETH_ALEN,
+                          HASH_KEY.bytes);
+
+        /* fold into 32 bits */
+        client->ia_na.id = (id & 0xffffffff) ^ (id >> 32);
+
+        return 0;
+}
+
+static int client_parse_message(sd_dhcp6_client *client,
+                                DHCP6Message *message, size_t len,
+                                sd_dhcp6_lease *lease) {
+        int r;
+        uint8_t *optval, *option = (uint8_t *)(message + 1), *id = NULL;
+        uint16_t optcode, status;
+        size_t optlen, id_len;
+        bool clientid = false;
+        be32_t iaid_lease;
+
+        while ((r = dhcp6_option_parse(&option, &len, &optcode, &optlen,
+                                       &optval)) >= 0) {
+                switch (optcode) {
+                case DHCP6_OPTION_CLIENTID:
+                        if (clientid) {
+                                log_dhcp6_client(client, "%s contains multiple clientids",
+                                                 dhcp6_message_type_to_string(message->type));
+                                return -EINVAL;
+                        }
+
+                        if (optlen != sizeof(client->duid) ||
+                            memcmp(&client->duid, optval, optlen) != 0) {
+                                log_dhcp6_client(client, "%s DUID does not match",
+                                                 dhcp6_message_type_to_string(message->type));
+
+                                return -EINVAL;
+                        }
+                        clientid = true;
+
+                        break;
+
+                case DHCP6_OPTION_SERVERID:
+                        r = dhcp6_lease_get_serverid(lease, &id, &id_len);
+                        if (r >= 0 && id) {
+                                log_dhcp6_client(client, "%s contains multiple serverids",
+                                                 dhcp6_message_type_to_string(message->type));
+                                return -EINVAL;
+                        }
+
+                        r = dhcp6_lease_set_serverid(lease, optval, optlen);
+                        if (r < 0)
+                                return r;
+
+                        break;
+
+                case DHCP6_OPTION_PREFERENCE:
+                        if (optlen != 1)
+                                return -EINVAL;
+
+                        r = dhcp6_lease_set_preference(lease, *optval);
+                        if (r < 0)
+                                return r;
+
+                        break;
+
+                case DHCP6_OPTION_STATUS_CODE:
+                        if (optlen < 2)
+                                return -EINVAL;
+
+                        status = optval[0] << 8 | optval[1];
+                        if (status) {
+                                log_dhcp6_client(client, "%s Status %s",
+                                                 dhcp6_message_type_to_string(message->type),
+                                                 dhcp6_message_status_to_string(status));
+                                return -EINVAL;
+                        }
+
+                        break;
+
+                case DHCP6_OPTION_IA_NA:
+                        r = dhcp6_option_parse_ia(&optval, &optlen, optcode,
+                                                  &lease->ia);
+                        if (r < 0 && r != -ENOMSG)
+                                return r;
+
+                        r = dhcp6_lease_get_iaid(lease, &iaid_lease);
+                        if (r < 0)
+                                return r;
+
+                        if (client->ia_na.id != iaid_lease) {
+                                log_dhcp6_client(client, "%s has wrong IAID",
+                                                 dhcp6_message_type_to_string(message->type));
+                                return -EINVAL;
+                        }
+
+                        break;
+
+                case DHCP6_OPTION_RAPID_COMMIT:
+                        r = dhcp6_lease_set_rapid_commit(lease);
+                        if (r < 0)
+                                return r;
+
+                        break;
+                }
+        }
+
+        if ((r < 0 && r != -ENOMSG) || !clientid) {
+                log_dhcp6_client(client, "%s has incomplete options",
+                                 dhcp6_message_type_to_string(message->type));
+                return -EINVAL;
+        }
+
+        r = dhcp6_lease_get_serverid(lease, &id, &id_len);
+        if (r < 0)
+                log_dhcp6_client(client, "%s has no server id",
+                                 dhcp6_message_type_to_string(message->type));
+
+        return r;
+}
+
+static int client_receive_reply(sd_dhcp6_client *client, DHCP6Message *reply,
+                                size_t len)
+{
+        int r;
+        _cleanup_dhcp6_lease_free_ sd_dhcp6_lease *lease = NULL;
+        bool rapid_commit;
+
+        if (reply->type != DHCP6_REPLY)
+                return 0;
+
+        r = dhcp6_lease_new(&lease);
+        if (r < 0)
+                return -ENOMEM;
+
+        r = client_parse_message(client, reply, len, lease);
+        if (r < 0)
+                return r;
+
+        if (client->state == DHCP6_STATE_SOLICITATION) {
+                r = dhcp6_lease_get_rapid_commit(lease, &rapid_commit);
+                if (r < 0)
+                        return r;
+
+                if (!rapid_commit)
+                        return 0;
+        }
+
+        dhcp6_lease_clear_timers(&client->lease->ia);
+
+        client->lease = sd_dhcp6_lease_unref(client->lease);
+        client->lease = lease;
+        lease = NULL;
+
+        return DHCP6_STATE_BOUND;
+}
+
+static int client_receive_advertise(sd_dhcp6_client *client,
+                                    DHCP6Message *advertise, size_t len) {
+        int r;
+        _cleanup_dhcp6_lease_free_ sd_dhcp6_lease *lease = NULL;
+        uint8_t pref_advertise = 0, pref_lease = 0;
+
+        if (advertise->type != DHCP6_ADVERTISE)
+                return 0;
+
+        r = dhcp6_lease_new(&lease);
+        if (r < 0)
+                return r;
+
+        r = client_parse_message(client, advertise, len, lease);
+        if (r < 0)
+                return r;
+
+        r = dhcp6_lease_get_preference(lease, &pref_advertise);
+        if (r < 0)
+                return r;
+
+        r = dhcp6_lease_get_preference(client->lease, &pref_lease);
+        if (!client->lease || r < 0 || pref_advertise > pref_lease) {
+                sd_dhcp6_lease_unref(client->lease);
+                client->lease = lease;
+                lease = NULL;
+                r = 0;
+        }
+
+        if (pref_advertise == 255 || client->retransmit_count > 1)
+                r = DHCP6_STATE_REQUEST;
+
+        return r;
+}
+
+static int client_receive_message(sd_event_source *s, int fd, uint32_t revents,
+                                  void *userdata) {
+        sd_dhcp6_client *client = userdata;
+        DHCP6_CLIENT_DONT_DESTROY(client);
+        _cleanup_free_ DHCP6Message *message;
+        int r, buflen, len;
+
+        assert(s);
+        assert(client);
+        assert(client->event);
+
+        r = ioctl(fd, FIONREAD, &buflen);
+        if (r < 0 || buflen <= 0)
+                buflen = DHCP6_MIN_OPTIONS_SIZE;
+
+        message = malloc0(buflen);
+        if (!message)
+                return -ENOMEM;
+
+        len = read(fd, message, buflen);
+        if ((size_t)len < sizeof(DHCP6Message)) {
+                log_dhcp6_client(client, "could not receive message from UDP socket: %m");
+                return 0;
+        }
+
+        switch(message->type) {
+        case DHCP6_SOLICIT:
+        case DHCP6_REQUEST:
+        case DHCP6_CONFIRM:
+        case DHCP6_RENEW:
+        case DHCP6_REBIND:
+        case DHCP6_RELEASE:
+        case DHCP6_DECLINE:
+        case DHCP6_INFORMATION_REQUEST:
+        case DHCP6_RELAY_FORW:
+        case DHCP6_RELAY_REPL:
+                return 0;
+
+        case DHCP6_ADVERTISE:
+        case DHCP6_REPLY:
+        case DHCP6_RECONFIGURE:
+                break;
+
+        default:
+                log_dhcp6_client(client, "unknown message type %d",
+                                 message->type);
+                return 0;
+        }
+
+        if (client->transaction_id != (message->transaction_id &
+                                       htobe32(0x00ffffff)))
+                return 0;
+
+        switch (client->state) {
+        case DHCP6_STATE_SOLICITATION:
+                r = client_receive_advertise(client, message, len);
+
+                if (r == DHCP6_STATE_REQUEST) {
+                        client_start(client, r);
+
+                        break;
+                }
+
+                /* fall through for Soliciation Rapid Commit option check */
+        case DHCP6_STATE_REQUEST:
+        case DHCP6_STATE_RENEW:
+        case DHCP6_STATE_REBIND:
+
+                r = client_receive_reply(client, message, len);
+                if (r < 0)
+                        return 0;
+
+                if (r == DHCP6_STATE_BOUND) {
+
+                        r = client_start(client, DHCP6_STATE_BOUND);
+                        if (r < 0) {
+                                client_stop(client, r);
+                                return 0;
+                        }
+
+                        client_notify(client, DHCP6_EVENT_IP_ACQUIRE);
+                }
+
+                break;
+
+        case DHCP6_STATE_BOUND:
+
+                break;
+
+        case DHCP6_STATE_STOPPED:
+        case DHCP6_STATE_RS:
+                return 0;
+        }
+
+        if (r >= 0) {
+                log_dhcp6_client(client, "Recv %s",
+                                 dhcp6_message_type_to_string(message->type));
+        }
+
+        return 0;
+}
+
+static int client_start(sd_dhcp6_client *client, enum DHCP6State state)
+{
+        int r;
+        usec_t timeout, time_now;
+        char time_string[FORMAT_TIMESPAN_MAX];
+
+        assert_return(client, -EINVAL);
+        assert_return(client->event, -EINVAL);
+        assert_return(client->index > 0, -EINVAL);
+        assert_return(client->state != state, -EINVAL);
+
+        client->timeout_resend_expire =
+                sd_event_source_unref(client->timeout_resend_expire);
+        client->timeout_resend = sd_event_source_unref(client->timeout_resend);
+        client->retransmit_time = 0;
+        client->retransmit_count = 0;
+
+        switch (state) {
+        case DHCP6_STATE_STOPPED:
+        case DHCP6_STATE_RS:
+        case DHCP6_STATE_SOLICITATION:
+
+                r = client_ensure_iaid(client);
+                if (r < 0)
+                        return r;
+
+                r = dhcp6_network_bind_udp_socket(client->index, NULL);
+                if (r < 0)
+                        return r;
+
+                client->fd = r;
+
+                r = sd_event_add_io(client->event, &client->receive_message,
+                                    client->fd, EPOLLIN, client_receive_message,
+                                    client);
+                if (r < 0)
+                        return r;
+
+                r = sd_event_source_set_priority(client->receive_message,
+                                                 client->event_priority);
+                if (r < 0)
+                        return r;
+
+                client->state = DHCP6_STATE_SOLICITATION;
+
+                break;
+
+        case DHCP6_STATE_REQUEST:
+        case DHCP6_STATE_RENEW:
+        case DHCP6_STATE_REBIND:
+
+                client->state = state;
+
+                break;
+
+        case DHCP6_STATE_BOUND:
+
+                r = sd_event_now(client->event, CLOCK_MONOTONIC, &time_now);
+                if (r < 0)
+                        return r;
+
+                if (client->lease->ia.lifetime_t1 == 0xffffffff ||
+                    client->lease->ia.lifetime_t2 == 0xffffffff) {
+
+                        log_dhcp6_client(client, "infinite T1 0x%08x or T2 0x%08x",
+                                         be32toh(client->lease->ia.lifetime_t1),
+                                         be32toh(client->lease->ia.lifetime_t2));
+
+                        return 0;
+                }
+
+                timeout = client_timeout_compute_random(be32toh(client->lease->ia.lifetime_t1) * USEC_PER_SEC);
+
+                log_dhcp6_client(client, "T1 expires in %s",
+                                 format_timespan(time_string,
+                                                 FORMAT_TIMESPAN_MAX,
+                                                 timeout, 0));
+
+                r = sd_event_add_time(client->event,
+                                      &client->lease->ia.timeout_t1,
+                                      CLOCK_MONOTONIC, time_now + timeout,
+                                      10 * USEC_PER_SEC, client_timeout_t1,
+                                      client);
+                if (r < 0)
+                        return r;
+
+                r = sd_event_source_set_priority(client->lease->ia.timeout_t1,
+                                                 client->event_priority);
+                if (r < 0)
+                        return r;
+
+                timeout = client_timeout_compute_random(be32toh(client->lease->ia.lifetime_t2) * USEC_PER_SEC);
+
+                log_dhcp6_client(client, "T2 expires in %s",
+                                 format_timespan(time_string,
+                                                 FORMAT_TIMESPAN_MAX,
+                                                 timeout, 0));
+
+                r = sd_event_add_time(client->event,
+                                      &client->lease->ia.timeout_t2,
+                                      CLOCK_MONOTONIC, time_now + timeout,
+                                      10 * USEC_PER_SEC, client_timeout_t2,
+                                      client);
+                if (r < 0)
+                        return r;
+
+                r = sd_event_source_set_priority(client->lease->ia.timeout_t2,
+                                                 client->event_priority);
+                if (r < 0)
+                        return r;
+
+                client->state = state;
+
+                return 0;
+        }
+
+        client->transaction_id = random_u32() & htobe32(0x00ffffff);
+
+        r = sd_event_add_time(client->event, &client->timeout_resend,
+                              CLOCK_MONOTONIC, 0, 0, client_timeout_resend,
+                              client);
+        if (r < 0)
+                return r;
+
+        r = sd_event_source_set_priority(client->timeout_resend,
+                                         client->event_priority);
+        if (r < 0)
+                return r;
+
+        return 0;
+}
+
+int sd_dhcp6_client_stop(sd_dhcp6_client *client)
+{
+        client_stop(client, DHCP6_EVENT_STOP);
+
+        return 0;
+}
+
+int sd_dhcp6_client_start(sd_dhcp6_client *client)
+{
+        int r = 0;
+
+        assert_return(client, -EINVAL);
+        assert_return(client->event, -EINVAL);
+        assert_return(client->index > 0, -EINVAL);
+
+        r = client_reset(client);
+        if (r < 0)
+                return r;
+
+        return client_start(client, DHCP6_STATE_SOLICITATION);
+}
+
+int sd_dhcp6_client_attach_event(sd_dhcp6_client *client, sd_event *event,
+                                 int priority)
+{
+        int r;
+
+        assert_return(client, -EINVAL);
+        assert_return(!client->event, -EBUSY);
+
+        if (event)
+                client->event = sd_event_ref(event);
+        else {
+                r = sd_event_default(&client->event);
+                if (r < 0)
+                        return 0;
+        }
+
+        client->event_priority = priority;
+
+        return 0;
+}
+
+int sd_dhcp6_client_detach_event(sd_dhcp6_client *client) {
+        assert_return(client, -EINVAL);
+
+        client->event = sd_event_unref(client->event);
+
+        return 0;
+}
+
+sd_event *sd_dhcp6_client_get_event(sd_dhcp6_client *client) {
+        if (!client)
+                return NULL;
+
+        return client->event;
+}
+
+sd_dhcp6_client *sd_dhcp6_client_ref(sd_dhcp6_client *client) {
+        if (client)
+                assert_se(REFCNT_INC(client->n_ref) >= 2);
+
+        return client;
+}
+
+sd_dhcp6_client *sd_dhcp6_client_unref(sd_dhcp6_client *client) {
+        if (client && REFCNT_DEC(client->n_ref) <= 0) {
+                client_reset(client);
+
+                sd_dhcp6_client_detach_event(client);
+
+                free(client->req_opts);
+                free(client);
+
+                return NULL;
+        }
+
+        return client;
+}
+
+int sd_dhcp6_client_new(sd_dhcp6_client **ret)
+{
+        _cleanup_dhcp6_client_unref_ sd_dhcp6_client *client = NULL;
+        sd_id128_t machine_id;
+        int r;
+        size_t t;
+
+        assert_return(ret, -EINVAL);
+
+        client = new0(sd_dhcp6_client, 1);
+        if (!client)
+                return -ENOMEM;
+
+        client->n_ref = REFCNT_INIT;
+
+        client->ia_na.type = DHCP6_OPTION_IA_NA;
+
+        client->index = -1;
+
+        client->fd = -1;
+
+        /* initialize DUID */
+        client->duid.type = htobe16(DHCP6_DUID_EN);
+        client->duid.pen = htobe32(SYSTEMD_PEN);
+
+        r = sd_id128_get_machine(&machine_id);
+        if (r < 0)
+                return r;
+
+        /* a bit of snake-oil perhaps, but no need to expose the machine-id
+           directly */
+        siphash24(client->duid.id, &machine_id, sizeof(machine_id),
+                  HASH_KEY.bytes);
+
+        client->req_opts_len = ELEMENTSOF(default_req_opts);
+
+        client->req_opts = new0(be16_t, client->req_opts_len);
+        if (!client->req_opts)
+                return -ENOMEM;
+
+        for (t = 0; t < client->req_opts_len; t++)
+                client->req_opts[t] = htobe16(default_req_opts[t]);
+
+        *ret = client;
+        client = NULL;
+
+        return 0;
+}
diff --git a/src/libsystemd-network/sd-dhcp6-lease.c b/src/libsystemd-network/sd-dhcp6-lease.c
new file mode 100644 (file)
index 0000000..b9d0503
--- /dev/null
@@ -0,0 +1,217 @@
+/***
+  This file is part of systemd.
+
+  Copyright (C) 2014 Tom Gundersen
+  Copyright (C) 2014 Intel Corporation. All rights reserved.
+
+  systemd is free software; you can redistribute it and/or modify it
+  under the terms of the GNU Lesser General Public License as published by
+  the Free Software Foundation; either version 2.1 of the License, or
+  (at your option) any later version.
+
+  systemd is distributed in the hope that it will be useful, but
+  WITHOUT ANY WARRANTY; without even the implied warranty of
+  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+  Lesser General Public License for more details.
+
+  You should have received a copy of the GNU Lesser General Public License
+  along with systemd; If not, see <http://www.gnu.org/licenses/>.
+***/
+
+#include <errno.h>
+
+#include "util.h"
+
+#include "dhcp6-lease-internal.h"
+
+int dhcp6_lease_clear_timers(DHCP6IA *ia) {
+        assert_return(ia, -EINVAL);
+
+        ia->timeout_t1 = sd_event_source_unref(ia->timeout_t1);
+        ia->timeout_t2 = sd_event_source_unref(ia->timeout_t2);
+
+        return 0;
+}
+
+int dhcp6_lease_ia_rebind_expire(const DHCP6IA *ia, uint32_t *expire) {
+        DHCP6Address *addr;
+        uint32_t valid = 0, t;
+
+        assert_return(ia, -EINVAL);
+        assert_return(expire, -EINVAL);
+
+        LIST_FOREACH(addresses, addr, ia->addresses) {
+                t = be32toh(addr->lifetime_valid);
+                if (valid < t)
+                        valid = t;
+        }
+
+        t = be32toh(ia->lifetime_t2);
+        if (t > valid)
+                return -EINVAL;
+
+        *expire = valid - t;
+
+        return 0;
+}
+
+DHCP6IA *dhcp6_lease_free_ia(DHCP6IA *ia) {
+        DHCP6Address *address;
+
+        if (!ia)
+                return NULL;
+
+        dhcp6_lease_clear_timers(ia);
+
+        while (ia->addresses) {
+                address = ia->addresses;
+
+                LIST_REMOVE(addresses, ia->addresses, address);
+
+                free(address);
+        }
+
+        return NULL;
+}
+
+int dhcp6_lease_set_serverid(sd_dhcp6_lease *lease, const uint8_t *id,
+                             size_t len) {
+        assert_return(lease, -EINVAL);
+        assert_return(id, -EINVAL);
+
+        free(lease->serverid);
+
+        lease->serverid = memdup(id, len);
+        if (!lease->serverid)
+                return -EINVAL;
+
+        lease->serverid_len = len;
+
+        return 0;
+}
+
+int dhcp6_lease_get_serverid(sd_dhcp6_lease *lease, uint8_t **id, size_t *len) {
+        assert_return(lease, -EINVAL);
+        assert_return(id, -EINVAL);
+        assert_return(len, -EINVAL);
+
+        *id = lease->serverid;
+        *len = lease->serverid_len;
+
+        return 0;
+}
+
+int dhcp6_lease_set_preference(sd_dhcp6_lease *lease, uint8_t preference) {
+        assert_return(lease, -EINVAL);
+
+        lease->preference = preference;
+
+        return 0;
+}
+
+int dhcp6_lease_get_preference(sd_dhcp6_lease *lease, uint8_t *preference) {
+        assert_return(lease, -EINVAL);
+        assert_return(preference, -EINVAL);
+
+        *preference = lease->preference;
+
+        return 0;
+}
+
+int dhcp6_lease_set_rapid_commit(sd_dhcp6_lease *lease) {
+        assert_return(lease, -EINVAL);
+
+        lease->rapid_commit = true;
+
+        return 0;
+}
+
+int dhcp6_lease_get_rapid_commit(sd_dhcp6_lease *lease, bool *rapid_commit) {
+        assert_return(lease, -EINVAL);
+        assert_return(rapid_commit, -EINVAL);
+
+        *rapid_commit = lease->rapid_commit;
+
+        return 0;
+}
+
+int dhcp6_lease_get_iaid(sd_dhcp6_lease *lease, be32_t *iaid) {
+        assert_return(lease, -EINVAL);
+        assert_return(iaid, -EINVAL);
+
+        *iaid = lease->ia.id;
+
+        return 0;
+}
+
+int sd_dhcp6_lease_get_next_address(sd_dhcp6_lease *lease,
+                                    struct in6_addr *addr,
+                                    uint32_t *lifetime_preferred,
+                                    uint32_t *lifetime_valid) {
+        assert_return(lease, -EINVAL);
+        assert_return(addr, -EINVAL);
+        assert_return(lifetime_preferred, -EINVAL);
+        assert_return(lifetime_valid, -EINVAL);
+
+        if (!lease->addr_iter)
+                return -ENOMSG;
+
+        memcpy(addr, &lease->addr_iter->address, sizeof(struct in6_addr));
+        *lifetime_preferred = be32toh(lease->addr_iter->lifetime_preferred);
+        *lifetime_valid = be32toh(lease->addr_iter->lifetime_valid);
+
+        lease->addr_iter = lease->addr_iter->addresses_next;
+
+        return 0;
+}
+
+int sd_dhcp6_lease_get_first_address(sd_dhcp6_lease *lease,
+                                     struct in6_addr *addr,
+                                     uint32_t *lifetime_preferred,
+                                     uint32_t *lifetime_valid) {
+        assert_return(lease, -EINVAL);
+        assert_return(addr, -EINVAL);
+        assert_return(lifetime_preferred, -EINVAL);
+        assert_return(lifetime_valid, -EINVAL);
+
+        if (!lease->ia.addresses)
+                return -ENOMSG;
+
+        lease->addr_iter = lease->ia.addresses;
+
+        return sd_dhcp6_lease_get_next_address(lease, addr, lifetime_preferred,
+                                               lifetime_valid);
+}
+
+sd_dhcp6_lease *sd_dhcp6_lease_ref(sd_dhcp6_lease *lease) {
+        if (lease)
+                assert_se(REFCNT_INC(lease->n_ref) >= 2);
+
+        return lease;
+}
+
+sd_dhcp6_lease *sd_dhcp6_lease_unref(sd_dhcp6_lease *lease) {
+        if (lease && REFCNT_DEC(lease->n_ref) <= 0) {
+                free(lease->serverid);
+                dhcp6_lease_free_ia(&lease->ia);
+
+                free(lease);
+        }
+
+        return NULL;
+}
+
+int dhcp6_lease_new(sd_dhcp6_lease **ret) {
+        sd_dhcp6_lease *lease;
+
+        lease = new0(sd_dhcp6_lease, 1);
+        if (!lease)
+                return -ENOMEM;
+
+        lease->n_ref = REFCNT_INIT;
+
+        LIST_HEAD_INIT(lease->ia.addresses);
+
+        *ret = lease;
+        return 0;
+}
diff --git a/src/libsystemd-network/sd-icmp6-nd.c b/src/libsystemd-network/sd-icmp6-nd.c
new file mode 100644 (file)
index 0000000..80915c3
--- /dev/null
@@ -0,0 +1,339 @@
+/***
+  This file is part of systemd.
+
+  Copyright (C) 2014 Intel Corporation. All rights reserved.
+
+  systemd is free software; you can redistribute it and/or modify it
+  under the terms of the GNU Lesser General Public License as published by
+  the Free Software Foundation; either version 2.1 of the License, or
+  (at your option) any later version.
+
+  systemd is distributed in the hope that it will be useful, but
+  WITHOUT ANY WARRANTY; without even the implied warranty of
+  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+  Lesser General Public License for more details.
+
+  You should have received a copy of the GNU Lesser General Public License
+  along with systemd; If not, see <http://www.gnu.org/licenses/>.
+***/
+
+#include <netinet/icmp6.h>
+#include <string.h>
+#include <stdbool.h>
+#include <netinet/in.h>
+
+#include "socket-util.h"
+#include "refcnt.h"
+#include "async.h"
+
+#include "dhcp6-internal.h"
+#include "sd-icmp6-nd.h"
+
+#define ICMP6_ROUTER_SOLICITATION_INTERVAL      4 * USEC_PER_SEC
+#define ICMP6_MAX_ROUTER_SOLICITATIONS          3
+
+enum icmp6_nd_state {
+        ICMP6_NEIGHBOR_DISCOVERY_IDLE           = 0,
+        ICMP6_ROUTER_SOLICITATION_SENT          = 10,
+        ICMP6_ROUTER_ADVERTISMENT_LISTEN        = 11,
+};
+
+struct sd_icmp6_nd {
+        RefCount n_ref;
+
+        enum icmp6_nd_state state;
+        sd_event *event;
+        int event_priority;
+        int index;
+        struct ether_addr mac_addr;
+        int fd;
+        sd_event_source *recv;
+        sd_event_source *timeout;
+        int nd_sent;
+        sd_icmp6_nd_callback_t callback;
+        void *userdata;
+};
+
+#define log_icmp6_nd(p, fmt, ...) log_meta(LOG_DEBUG, __FILE__, __LINE__, __func__, "ICMPv6 CLIENT: " fmt, ##__VA_ARGS__)
+
+static void icmp6_nd_notify(sd_icmp6_nd *nd, int event)
+{
+        if (nd->callback)
+                nd->callback(nd, event, nd->userdata);
+}
+
+int sd_icmp6_nd_set_callback(sd_icmp6_nd *nd, sd_icmp6_nd_callback_t callback,
+                             void *userdata) {
+        assert(nd);
+
+        nd->callback = callback;
+        nd->userdata = userdata;
+
+        return 0;
+}
+
+int sd_icmp6_nd_set_index(sd_icmp6_nd *nd, int interface_index) {
+        assert(nd);
+        assert(interface_index >= -1);
+
+        nd->index = interface_index;
+
+        return 0;
+}
+
+int sd_icmp6_nd_set_mac(sd_icmp6_nd *nd, const struct ether_addr *mac_addr) {
+        assert(nd);
+
+        if (mac_addr)
+                memcpy(&nd->mac_addr, mac_addr, sizeof(nd->mac_addr));
+        else
+                memset(&nd->mac_addr, 0x00, sizeof(nd->mac_addr));
+
+        return 0;
+
+}
+
+int sd_icmp6_nd_attach_event(sd_icmp6_nd *nd, sd_event *event, int priority) {
+        int r;
+
+        assert_return(nd, -EINVAL);
+        assert_return(!nd->event, -EBUSY);
+
+        if (event)
+                nd->event = sd_event_ref(event);
+        else {
+                r = sd_event_default(&nd->event);
+                if (r < 0)
+                        return 0;
+        }
+
+        nd->event_priority = priority;
+
+        return 0;
+}
+
+int sd_icmp6_nd_detach_event(sd_icmp6_nd *nd) {
+        assert_return(nd, -EINVAL);
+
+        nd->event = sd_event_unref(nd->event);
+
+        return 0;
+}
+
+sd_event *sd_icmp6_nd_get_event(sd_icmp6_nd *nd) {
+        assert(nd);
+
+        return nd->event;
+}
+
+sd_icmp6_nd *sd_icmp6_nd_ref(sd_icmp6_nd *nd) {
+        assert (nd);
+
+        assert_se(REFCNT_INC(nd->n_ref) >= 2);
+
+        return nd;
+}
+
+static int icmp6_nd_init(sd_icmp6_nd *nd) {
+        assert(nd);
+
+        nd->recv = sd_event_source_unref(nd->recv);
+        nd->fd = asynchronous_close(nd->fd);
+        nd->timeout = sd_event_source_unref(nd->timeout);
+
+        return 0;
+}
+
+sd_icmp6_nd *sd_icmp6_nd_unref(sd_icmp6_nd *nd) {
+        if (nd && REFCNT_DEC(nd->n_ref) <= 0) {
+
+                icmp6_nd_init(nd);
+                sd_icmp6_nd_detach_event(nd);
+
+                free(nd);
+        }
+
+        return NULL;
+}
+
+DEFINE_TRIVIAL_CLEANUP_FUNC(sd_icmp6_nd*, sd_icmp6_nd_unref);
+#define _cleanup_sd_icmp6_nd_free_ _cleanup_(sd_icmp6_nd_unrefp)
+
+int sd_icmp6_nd_new(sd_icmp6_nd **ret) {
+        _cleanup_sd_icmp6_nd_free_ sd_icmp6_nd *nd = NULL;
+
+        assert(ret);
+
+        nd = new0(sd_icmp6_nd, 1);
+        if (!nd)
+                return -ENOMEM;
+
+        nd->n_ref = REFCNT_INIT;
+
+        nd->index = -1;
+        nd->fd = -1;
+
+        *ret = nd;
+        nd = NULL;
+
+        return 0;
+}
+
+static int icmp6_router_advertisment_recv(sd_event_source *s, int fd,
+                                          uint32_t revents, void *userdata)
+{
+        sd_icmp6_nd *nd = userdata;
+        ssize_t len;
+        struct nd_router_advert ra;
+        int event = ICMP6_EVENT_ROUTER_ADVERTISMENT_NONE;
+
+        assert(s);
+        assert(nd);
+        assert(nd->event);
+
+        /* only interested in Managed/Other flag */
+        len = read(fd, &ra, sizeof(ra));
+        if ((size_t)len < sizeof(ra))
+                return 0;
+
+        if (ra.nd_ra_type != ND_ROUTER_ADVERT)
+                return 0;
+
+        if (ra.nd_ra_code != 0)
+                return 0;
+
+        nd->timeout = sd_event_source_unref(nd->timeout);
+
+        nd->state = ICMP6_ROUTER_ADVERTISMENT_LISTEN;
+
+        if (ra.nd_ra_flags_reserved & ND_RA_FLAG_OTHER )
+                event = ICMP6_EVENT_ROUTER_ADVERTISMENT_OTHER;
+
+        if (ra.nd_ra_flags_reserved & ND_RA_FLAG_MANAGED)
+                event = ICMP6_EVENT_ROUTER_ADVERTISMENT_MANAGED;
+
+        log_icmp6_nd(nd, "Received Router Advertisment flags %s/%s",
+                     (ra.nd_ra_flags_reserved & ND_RA_FLAG_MANAGED)? "MANAGED":
+                     "none",
+                     (ra.nd_ra_flags_reserved & ND_RA_FLAG_OTHER)? "OTHER":
+                     "none");
+
+        icmp6_nd_notify(nd, event);
+
+        return 0;
+}
+
+static int icmp6_router_solicitation_timeout(sd_event_source *s, uint64_t usec,
+                                             void *userdata)
+{
+        sd_icmp6_nd *nd = userdata;
+        uint64_t time_now, next_timeout;
+        struct ether_addr unset = { };
+        struct ether_addr *addr = NULL;
+        int r;
+
+        assert(s);
+        assert(nd);
+        assert(nd->event);
+
+        nd->timeout = sd_event_source_unref(nd->timeout);
+
+        if (nd->nd_sent >= ICMP6_MAX_ROUTER_SOLICITATIONS) {
+                icmp6_nd_notify(nd, ICMP6_EVENT_ROUTER_ADVERTISMENT_TIMEOUT);
+                nd->state = ICMP6_ROUTER_ADVERTISMENT_LISTEN;
+        } else {
+                if (memcmp(&nd->mac_addr, &unset, sizeof(struct ether_addr)))
+                        addr = &nd->mac_addr;
+
+                r = dhcp_network_icmp6_send_router_solicitation(nd->fd, addr);
+                if (r < 0)
+                        log_icmp6_nd(nd, "Error sending Router Solicitation");
+                else {
+                        nd->state = ICMP6_ROUTER_SOLICITATION_SENT;
+                        log_icmp6_nd(nd, "Sent Router Solicitation");
+                }
+
+                nd->nd_sent++;
+
+                r = sd_event_now(nd->event, CLOCK_MONOTONIC, &time_now);
+                if (r < 0) {
+                        icmp6_nd_notify(nd, r);
+                        return 0;
+                }
+
+                next_timeout = time_now + ICMP6_ROUTER_SOLICITATION_INTERVAL;
+
+                r = sd_event_add_time(nd->event, &nd->timeout, CLOCK_MONOTONIC,
+                                      next_timeout, 0,
+                                      icmp6_router_solicitation_timeout, nd);
+                if (r < 0) {
+                        icmp6_nd_notify(nd, r);
+                        return 0;
+                }
+
+                r = sd_event_source_set_priority(nd->timeout,
+                                                 nd->event_priority);
+                if (r < 0) {
+                        icmp6_nd_notify(nd, r);
+                        return 0;
+                }
+        }
+
+        return 0;
+}
+
+int sd_icmp6_nd_stop(sd_icmp6_nd *nd) {
+        assert_return(nd, -EINVAL);
+        assert_return(nd->event, -EINVAL);
+
+        log_icmp6_nd(client, "Stop ICMPv6");
+
+        icmp6_nd_init(nd);
+
+        nd->state = ICMP6_NEIGHBOR_DISCOVERY_IDLE;
+
+        return 0;
+}
+
+int sd_icmp6_router_solicitation_start(sd_icmp6_nd *nd) {
+        int r;
+
+        assert(nd);
+        assert(nd->event);
+
+        if (nd->state != ICMP6_NEIGHBOR_DISCOVERY_IDLE)
+                return -EINVAL;
+
+        if (nd->index < 1)
+                return -EINVAL;
+
+        r = dhcp_network_icmp6_bind_router_solicitation(nd->index);
+        if (r < 0)
+                return r;
+
+        nd->fd = r;
+
+        r = sd_event_add_io(nd->event, &nd->recv, nd->fd, EPOLLIN,
+                            icmp6_router_advertisment_recv, nd);
+        if (r < 0)
+                goto error;
+
+        r = sd_event_source_set_priority(nd->recv, nd->event_priority);
+        if (r < 0)
+                goto error;
+
+        r = sd_event_add_time(nd->event, &nd->timeout, CLOCK_MONOTONIC,
+                              0, 0, icmp6_router_solicitation_timeout, nd);
+        if (r < 0)
+                goto error;
+
+        r = sd_event_source_set_priority(nd->timeout, nd->event_priority);
+
+error:
+        if (r < 0)
+                icmp6_nd_init(nd);
+        else
+                log_icmp6_nd(client, "Start Router Solicitation");
+
+        return r;
+}
index 599bda1a5ee8f597af49c8687cace93e7ee8e025..450b6d4d3c9bfc199b4297e5d768574009ee7cd6 100644 (file)
@@ -128,7 +128,7 @@ static void test_checksum(void)
         if (verbose)
                 printf("* %s\n", __FUNCTION__);
 
-        assert_se(dhcp_packet_checksum(&buf, 20) == be16toh(0x78ae));
+        assert_se(dhcp_packet_checksum((uint8_t*)&buf, 20) == be16toh(0x78ae));
 }
 
 static int check_options(uint8_t code, uint8_t len, const uint8_t *option,
@@ -175,13 +175,13 @@ int dhcp_network_send_raw_socket(int s, const union sockaddr_union *link,
         discover->ip.ttl = 0;
         discover->ip.check = discover->udp.len;
 
-        udp_check = ~dhcp_packet_checksum(&discover->ip.ttl, len - 8);
+        udp_check = ~dhcp_packet_checksum((uint8_t*)&discover->ip.ttl, len - 8);
         assert_se(udp_check == 0xffff);
 
         discover->ip.ttl = IPDEFTTL;
         discover->ip.check = ip_check;
 
-        ip_check = ~dhcp_packet_checksum(&discover->ip, sizeof(discover->ip));
+        ip_check = ~dhcp_packet_checksum((uint8_t*)&discover->ip, sizeof(discover->ip));
         assert_se(ip_check == 0xffff);
 
         assert_se(discover->dhcp.xid);
diff --git a/src/libsystemd-network/test-dhcp-server.c b/src/libsystemd-network/test-dhcp-server.c
new file mode 100644 (file)
index 0000000..a9bdb9a
--- /dev/null
@@ -0,0 +1,251 @@
+/*-*- Mode: C; c-basic-offset: 8; indent-tabs-mode: nil -*-*/
+
+/***
+  This file is part of systemd.
+
+  Copyright (C) 2013 Intel Corporation. All rights reserved.
+  Copyright (C) 2014 Tom Gundersen
+
+  systemd is free software; you can redistribute it and/or modify it
+  under the terms of the GNU Lesser General Public License as published by
+  the Free Software Foundation; either version 2.1 of the License, or
+  (at your option) any later version.
+
+  systemd is distributed in the hope that it will be useful, but
+  WITHOUT ANY WARRANTY; without even the implied warranty of
+  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+  Lesser General Public License for more details.
+
+  You should have received a copy of the GNU Lesser General Public License
+  along with systemd; If not, see <http://www.gnu.org/licenses/>.
+***/
+
+#include <netinet/if_ether.h>
+#include <assert.h>
+#include <errno.h>
+
+#include "sd-event.h"
+#include "event-util.h"
+
+#include "sd-dhcp-server.h"
+#include "dhcp-server-internal.h"
+
+static int test_basic(sd_event *event) {
+        _cleanup_dhcp_server_unref_ sd_dhcp_server *server = NULL;
+        struct in_addr address_lo = {
+                .s_addr = htonl(INADDR_LOOPBACK),
+        };
+        struct in_addr address_any = {
+                .s_addr = htonl(INADDR_ANY),
+        };
+        int r;
+
+        /* attach to loopback interface */
+        assert_se(sd_dhcp_server_new(&server, 1) >= 0);
+        assert_se(server);
+
+        assert_se(sd_dhcp_server_attach_event(server, event, 0) >= 0);
+        assert_se(sd_dhcp_server_attach_event(server, event, 0) == -EBUSY);
+        assert_se(sd_dhcp_server_get_event(server) == event);
+        assert_se(sd_dhcp_server_detach_event(server) >= 0);
+        assert_se(!sd_dhcp_server_get_event(server));
+        assert_se(sd_dhcp_server_attach_event(server, NULL, 0) >= 0);
+        assert_se(sd_dhcp_server_attach_event(server, NULL, 0) == -EBUSY);
+
+        assert_se(sd_dhcp_server_ref(server) == server);
+        assert_se(!sd_dhcp_server_unref(server));
+
+        assert_se(sd_dhcp_server_start(server) == -EUNATCH);
+        assert_se(sd_dhcp_server_set_address(server, &address_any) == -EINVAL);
+        assert_se(sd_dhcp_server_set_address(server, &address_lo) >= 0);
+        assert_se(sd_dhcp_server_set_address(server, &address_lo) == -EBUSY);
+
+        assert_se(sd_dhcp_server_set_lease_pool(server, &address_any, 1) == -EINVAL);
+        assert_se(sd_dhcp_server_set_lease_pool(server, &address_lo, 0) == -EINVAL);
+        assert_se(sd_dhcp_server_set_lease_pool(server, &address_lo, 1) >= 0);
+        assert_se(sd_dhcp_server_set_lease_pool(server, &address_lo, 1) == -EBUSY);
+
+        r = sd_dhcp_server_start(server);
+
+        if (r == -EPERM)
+                return EXIT_TEST_SKIP;
+        assert_se(r >= 0);
+
+        assert_se(sd_dhcp_server_start(server) == -EBUSY);
+        assert_se(sd_dhcp_server_stop(server) >= 0);
+        assert_se(sd_dhcp_server_stop(server) >= 0);
+        assert_se(sd_dhcp_server_start(server) >= 0);
+
+        return 0;
+}
+
+static void test_message_handler(void) {
+        _cleanup_dhcp_server_unref_ sd_dhcp_server *server = NULL;
+        struct {
+                DHCPMessage message;
+                struct {
+                        uint8_t code;
+                        uint8_t length;
+                        uint8_t type;
+                } _packed_ option_type;
+                struct {
+                        uint8_t code;
+                        uint8_t length;
+                        be32_t address;
+                } _packed_ option_requested_ip;
+                struct {
+                        uint8_t code;
+                        uint8_t length;
+                        be32_t address;
+                } _packed_ option_server_id;
+                struct {
+                        uint8_t code;
+                        uint8_t length;
+                        uint8_t id[7];
+                } _packed_ option_client_id;
+                uint8_t end;
+        } _packed_ test = {
+                .message.op = BOOTREQUEST,
+                .message.htype = ARPHRD_ETHER,
+                .message.hlen = ETHER_ADDR_LEN,
+                .message.xid = htobe32(0x12345678),
+                .message.chaddr = { 'A', 'B', 'C', 'D', 'E', 'F' },
+                .option_type.code = DHCP_OPTION_MESSAGE_TYPE,
+                .option_type.length = 1,
+                .option_type.type = DHCP_DISCOVER,
+                .end = DHCP_OPTION_END,
+        };
+        struct in_addr address_lo = {
+                .s_addr = htonl(INADDR_LOOPBACK),
+        };
+
+        assert_se(sd_dhcp_server_new(&server, 1) >= 0);
+        assert_se(sd_dhcp_server_set_address(server, &address_lo) >= 0);
+        assert_se(sd_dhcp_server_attach_event(server, NULL, 0) >= 0);
+        assert_se(sd_dhcp_server_start(server) >= 0);
+
+        assert_se(dhcp_server_handle_message(server, (DHCPMessage*)&test, sizeof(test)) == 0);
+        assert_se(sd_dhcp_server_set_lease_pool(server, &address_lo, 10) >= 0);
+        assert_se(dhcp_server_handle_message(server, (DHCPMessage*)&test, sizeof(test)) == DHCP_OFFER);
+
+        test.end = 0;
+        /* TODO, shouldn't this fail? */
+        assert_se(dhcp_server_handle_message(server, (DHCPMessage*)&test, sizeof(test)) == DHCP_OFFER);
+        test.end = DHCP_OPTION_END;
+        assert_se(dhcp_server_handle_message(server, (DHCPMessage*)&test, sizeof(test)) == DHCP_OFFER);
+
+        test.option_type.code = 0;
+        test.option_type.length = 0;
+        test.option_type.type = 0;
+        assert_se(dhcp_server_handle_message(server, (DHCPMessage*)&test, sizeof(test)) == 0);
+        test.option_type.code = DHCP_OPTION_MESSAGE_TYPE;
+        test.option_type.length = 1;
+        test.option_type.type = DHCP_DISCOVER;
+        assert_se(dhcp_server_handle_message(server, (DHCPMessage*)&test, sizeof(test)) == DHCP_OFFER);
+
+        test.message.op = 0;
+        assert_se(dhcp_server_handle_message(server, (DHCPMessage*)&test, sizeof(test)) == 0);
+        test.message.op = BOOTREQUEST;
+        assert_se(dhcp_server_handle_message(server, (DHCPMessage*)&test, sizeof(test)) == DHCP_OFFER);
+
+        test.message.htype = 0;
+        assert_se(dhcp_server_handle_message(server, (DHCPMessage*)&test, sizeof(test)) == 0);
+        test.message.htype = ARPHRD_ETHER;
+        assert_se(dhcp_server_handle_message(server, (DHCPMessage*)&test, sizeof(test)) == DHCP_OFFER);
+
+        test.message.hlen = 0;
+        assert_se(dhcp_server_handle_message(server, (DHCPMessage*)&test, sizeof(test)) == 0);
+        test.message.hlen = ETHER_ADDR_LEN;
+        assert_se(dhcp_server_handle_message(server, (DHCPMessage*)&test, sizeof(test)) == DHCP_OFFER);
+
+        test.option_type.type = DHCP_REQUEST;
+        assert_se(dhcp_server_handle_message(server, (DHCPMessage*)&test, sizeof(test)) == 0);
+        test.option_requested_ip.code = DHCP_OPTION_REQUESTED_IP_ADDRESS;
+        test.option_requested_ip.length = 4;
+        test.option_requested_ip.address = htobe32(0x12345678);
+        assert_se(dhcp_server_handle_message(server, (DHCPMessage*)&test, sizeof(test)) == DHCP_NAK);
+        test.option_server_id.code = DHCP_OPTION_SERVER_IDENTIFIER;
+        test.option_server_id.length = 4;
+        test.option_server_id.address = htobe32(INADDR_LOOPBACK);
+        test.option_requested_ip.address = htobe32(INADDR_LOOPBACK + 3);
+        assert_se(dhcp_server_handle_message(server, (DHCPMessage*)&test, sizeof(test)) == DHCP_ACK);
+
+        test.option_server_id.address = htobe32(0x12345678);
+        test.option_requested_ip.address = htobe32(INADDR_LOOPBACK + 3);
+        assert_se(dhcp_server_handle_message(server, (DHCPMessage*)&test, sizeof(test)) == 0);
+        test.option_server_id.address = htobe32(INADDR_LOOPBACK);
+        test.option_requested_ip.address = htobe32(INADDR_LOOPBACK + 4);
+        assert_se(dhcp_server_handle_message(server, (DHCPMessage*)&test, sizeof(test)) == 0);
+        test.option_requested_ip.address = htobe32(INADDR_LOOPBACK + 3);
+        assert_se(dhcp_server_handle_message(server, (DHCPMessage*)&test, sizeof(test)) == DHCP_ACK);
+
+        test.option_client_id.code = DHCP_OPTION_CLIENT_IDENTIFIER;
+        test.option_client_id.length = 7;
+        test.option_client_id.id[0] = 0x01;
+        test.option_client_id.id[1] = 'A';
+        test.option_client_id.id[2] = 'B';
+        test.option_client_id.id[3] = 'C';
+        test.option_client_id.id[4] = 'D';
+        test.option_client_id.id[5] = 'E';
+        test.option_client_id.id[6] = 'F';
+        assert_se(dhcp_server_handle_message(server, (DHCPMessage*)&test, sizeof(test)) == DHCP_ACK);
+
+        test.option_requested_ip.address = htobe32(INADDR_LOOPBACK + 30);
+        assert_se(dhcp_server_handle_message(server, (DHCPMessage*)&test, sizeof(test)) == 0);
+}
+
+static void test_client_id_hash(void) {
+        DHCPClientId a = {
+                .length = 4,
+        }, b = {
+                .length = 4,
+        };
+        uint8_t hash_key[HASH_KEY_SIZE] = {
+                '0', '1', '2', '3', '4', '5', '6', '7',
+                '8', '9', 'A', 'B', 'C', 'D', 'E', 'F',
+        };
+
+        a.data = (uint8_t*)strdup("abcd");
+        b.data = (uint8_t*)strdup("abcd");
+
+        assert_se(client_id_compare_func(&a, &b) == 0);
+        assert_se(client_id_hash_func(&a, hash_key) == client_id_hash_func(&b, hash_key));
+        a.length = 3;
+        assert_se(client_id_compare_func(&a, &b) != 0);
+        a.length = 4;
+        assert_se(client_id_compare_func(&a, &b) == 0);
+        assert_se(client_id_hash_func(&a, hash_key) == client_id_hash_func(&b, hash_key));
+
+        b.length = 3;
+        assert_se(client_id_compare_func(&a, &b) != 0);
+        b.length = 4;
+        assert_se(client_id_compare_func(&a, &b) == 0);
+        assert_se(client_id_hash_func(&a, hash_key) == client_id_hash_func(&b, hash_key));
+
+        free(b.data);
+        b.data = (uint8_t*)strdup("abce");
+        assert_se(client_id_compare_func(&a, &b) != 0);
+
+        free(a.data);
+        free(b.data);
+}
+
+int main(int argc, char *argv[]) {
+        _cleanup_event_unref_ sd_event *e;
+        int r;
+
+        log_set_max_level(LOG_DEBUG);
+        log_parse_environment();
+        log_open();
+
+        assert_se(sd_event_new(&e) >= 0);
+
+        r = test_basic(e);
+        if (r != 0)
+                return r;
+
+        test_message_handler();
+        test_client_id_hash();
+
+        return 0;
+}
diff --git a/src/libsystemd-network/test-dhcp6-client.c b/src/libsystemd-network/test-dhcp6-client.c
new file mode 100644 (file)
index 0000000..5bb410d
--- /dev/null
@@ -0,0 +1,590 @@
+/*-*- Mode: C; c-basic-offset: 8; indent-tabs-mode: nil -*-*/
+
+/***
+  This file is part of systemd.
+
+  Copyright (C) 2014 Intel Corporation. All rights reserved.
+
+  systemd is free software; you can redistribute it and/or modify it
+  under the terms of the GNU Lesser General Public License as published by
+  the Free Software Foundation; either version 2.1 of the License, or
+  (at your option) any later version.
+
+  systemd is distributed in the hope that it will be useful, but
+  WITHOUT ANY WARRANTY; without even the implied warranty of
+  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+  Lesser General Public License for more details.
+
+  You should have received a copy of the GNU Lesser General Public License
+  along with systemd; If not, see <http://www.gnu.org/licenses/>.
+***/
+
+#include <stdbool.h>
+#include <stdio.h>
+#include <sys/types.h>
+#include <sys/socket.h>
+#include <unistd.h>
+#include <net/ethernet.h>
+
+#include "socket-util.h"
+#include "macro.h"
+#include "sd-event.h"
+#include "event-util.h"
+#include "virt.h"
+
+#include "sd-dhcp6-client.h"
+#include "dhcp6-protocol.h"
+#include "dhcp6-internal.h"
+#include "dhcp6-lease-internal.h"
+
+static struct ether_addr mac_addr = {
+        .ether_addr_octet = {'A', 'B', 'C', '1', '2', '3'}
+};
+
+static bool verbose = false;
+
+static sd_event_source *hangcheck;
+static int test_dhcp_fd[2];
+static int test_index = 42;
+static int test_client_message_num;
+static be32_t test_iaid = 0;
+static uint8_t test_duid[14] = { };
+
+static int test_client_basic(sd_event *e) {
+        sd_dhcp6_client *client;
+
+        if (verbose)
+                printf("* %s\n", __FUNCTION__);
+
+        assert_se(sd_dhcp6_client_new(&client) >= 0);
+        assert_se(client);
+
+        assert_se(sd_dhcp6_client_attach_event(client, e, 0) >= 0);
+
+        assert_se(sd_dhcp6_client_set_index(client, 15) == 0);
+        assert_se(sd_dhcp6_client_set_index(client, -42) == -EINVAL);
+        assert_se(sd_dhcp6_client_set_index(client, -1) == 0);
+        assert_se(sd_dhcp6_client_set_index(client, 42) >= 0);
+
+        assert_se(sd_dhcp6_client_set_mac(client, &mac_addr) >= 0);
+
+        assert_se(sd_dhcp6_client_set_request_option(client, DHCP6_OPTION_CLIENTID) == -EINVAL);
+        assert_se(sd_dhcp6_client_set_request_option(client, DHCP6_OPTION_DNS_SERVERS) == -EEXIST);
+        assert_se(sd_dhcp6_client_set_request_option(client, DHCP6_OPTION_NTP_SERVER) == -EEXIST);
+        assert_se(sd_dhcp6_client_set_request_option(client, DHCP6_OPTION_SNTP_SERVERS) == 0);
+        assert_se(sd_dhcp6_client_set_request_option(client, DHCP6_OPTION_DOMAIN_LIST) == -EEXIST);
+        assert_se(sd_dhcp6_client_set_request_option(client, 10) == -EINVAL);
+
+        assert_se(sd_dhcp6_client_set_callback(client, NULL, NULL) >= 0);
+
+        assert_se(sd_dhcp6_client_detach_event(client) >= 0);
+        assert_se(!sd_dhcp6_client_unref(client));
+
+        return 0;
+}
+
+static int test_option(sd_event *e) {
+        uint8_t packet[] = {
+                'F', 'O', 'O',
+                0x00, DHCP6_OPTION_ORO, 0x00, 0x07,
+                'A', 'B', 'C', 'D', 'E', 'F', 'G',
+                0x00, DHCP6_OPTION_VENDOR_CLASS, 0x00, 0x09,
+                '1', '2', '3', '4', '5', '6', '7', '8', '9',
+                'B', 'A', 'R',
+        };
+        uint8_t result[] = {
+                'F', 'O', 'O',
+                0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+                0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+                0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+                'B', 'A', 'R',
+        };
+        uint16_t optcode;
+        size_t optlen;
+        uint8_t *optval, *buf, *out;
+        size_t zero = 0, pos = 3;
+        size_t buflen = sizeof(packet), outlen = sizeof(result);
+
+        if (verbose)
+                printf("* %s\n", __FUNCTION__);
+
+        assert_se(buflen == outlen);
+
+        assert_se(dhcp6_option_parse(&buf, &zero, &optcode, &optlen,
+                                     &optval) == -ENOMSG);
+
+        buflen -= 3;
+        buf = &packet[3];
+        outlen -= 3;
+        out = &result[3];
+
+        assert_se(dhcp6_option_parse(&buf, &buflen, &optcode, &optlen,
+                                     &optval) >= 0);
+        pos += 4 + optlen;
+        assert_se(buf == &packet[pos]);
+        assert_se(optcode == DHCP6_OPTION_ORO);
+        assert_se(optlen == 7);
+        assert_se(buflen + pos == sizeof(packet));
+
+        assert_se(dhcp6_option_append(&out, &outlen, optcode, optlen,
+                                      optval) >= 0);
+        assert_se(out == &result[pos]);
+        assert_se(*out == 0x00);
+
+        assert_se(dhcp6_option_parse(&buf, &buflen, &optcode, &optlen,
+                                     &optval) >= 0);
+        pos += 4 + optlen;
+        assert_se(buf == &packet[pos]);
+        assert_se(optcode == DHCP6_OPTION_VENDOR_CLASS);
+        assert_se(optlen == 9);
+        assert_se(buflen + pos == sizeof(packet));
+
+        assert_se(dhcp6_option_append(&out, &outlen, optcode, optlen,
+                                      optval) >= 0);
+        assert_se(out == &result[pos]);
+        assert_se(*out == 'B');
+
+        assert_se(memcmp(packet, result, sizeof(packet)) == 0);
+
+        return 0;
+}
+
+static uint8_t msg_advertise[198] = {
+        0x02, 0x0f, 0xb4, 0xe5, 0x00, 0x01, 0x00, 0x0e,
+        0x00, 0x01, 0x00, 0x01, 0x1a, 0x6b, 0xf3, 0x30,
+        0x3c, 0x97, 0x0e, 0xcf, 0xa3, 0x7d, 0x00, 0x03,
+        0x00, 0x5e, 0x0e, 0xcf, 0xa3, 0x7d, 0x00, 0x00,
+        0x00, 0x50, 0x00, 0x00, 0x00, 0x78, 0x00, 0x05,
+        0x00, 0x18, 0x20, 0x01, 0x0d, 0xb8, 0xde, 0xad,
+        0xbe, 0xef, 0x78, 0xee, 0x1c, 0xf3, 0x09, 0x3c,
+        0x55, 0xad, 0x00, 0x00, 0x00, 0x96, 0x00, 0x00,
+        0x00, 0xb4, 0x00, 0x0d, 0x00, 0x32, 0x00, 0x00,
+        0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x28,
+        0x65, 0x73, 0x29, 0x20, 0x72, 0x65, 0x6e, 0x65,
+        0x77, 0x65, 0x64, 0x2e, 0x20, 0x47, 0x72, 0x65,
+        0x65, 0x74, 0x69, 0x6e, 0x67, 0x73, 0x20, 0x66,
+        0x72, 0x6f, 0x6d, 0x20, 0x70, 0x6c, 0x61, 0x6e,
+        0x65, 0x74, 0x20, 0x45, 0x61, 0x72, 0x74, 0x68,
+        0x00, 0x17, 0x00, 0x10, 0x20, 0x01, 0x0d, 0xb8,
+        0xde, 0xad, 0xbe, 0xef, 0x00, 0x00, 0x00, 0x00,
+        0x00, 0x00, 0x00, 0x01, 0x00, 0x18, 0x00, 0x0b,
+        0x03, 0x6c, 0x61, 0x62, 0x05, 0x69, 0x6e, 0x74,
+        0x72, 0x61, 0x00, 0x00, 0x1f, 0x00, 0x10, 0x20,
+        0x01, 0x0d, 0xb8, 0xde, 0xad, 0xbe, 0xef, 0x00,
+        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00,
+        0x02, 0x00, 0x0e, 0x00, 0x01, 0x00, 0x01, 0x19,
+        0x40, 0x5c, 0x53, 0x78, 0x2b, 0xcb, 0xb3, 0x6d,
+        0x53, 0x00, 0x07, 0x00, 0x01, 0x00
+};
+
+static uint8_t msg_reply[173] = {
+        0x07, 0xf7, 0x4e, 0x57, 0x00, 0x02, 0x00, 0x0e,
+        0x00, 0x01, 0x00, 0x01, 0x19, 0x40, 0x5c, 0x53,
+        0x78, 0x2b, 0xcb, 0xb3, 0x6d, 0x53, 0x00, 0x01,
+        0x00, 0x0e, 0x00, 0x01, 0x00, 0x01, 0x1a, 0x6b,
+        0xf3, 0x30, 0x3c, 0x97, 0x0e, 0xcf, 0xa3, 0x7d,
+        0x00, 0x03, 0x00, 0x4a, 0x0e, 0xcf, 0xa3, 0x7d,
+        0x00, 0x00, 0x00, 0x50, 0x00, 0x00, 0x00, 0x78,
+        0x00, 0x05, 0x00, 0x18, 0x20, 0x01, 0x0d, 0xb8,
+        0xde, 0xad, 0xbe, 0xef, 0x78, 0xee, 0x1c, 0xf3,
+        0x09, 0x3c, 0x55, 0xad, 0x00, 0x00, 0x00, 0x96,
+        0x00, 0x00, 0x00, 0xb4, 0x00, 0x0d, 0x00, 0x1e,
+        0x00, 0x00, 0x41, 0x6c, 0x6c, 0x20, 0x61, 0x64,
+        0x64, 0x72, 0x65, 0x73, 0x73, 0x65, 0x73, 0x20,
+        0x77, 0x65, 0x72, 0x65, 0x20, 0x61, 0x73, 0x73,
+        0x69, 0x67, 0x6e, 0x65, 0x64, 0x2e, 0x00, 0x17,
+        0x00, 0x10, 0x20, 0x01, 0x0d, 0xb8, 0xde, 0xad,
+        0xbe, 0xef, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+        0x00, 0x01, 0x00, 0x18, 0x00, 0x0b, 0x03, 0x6c,
+        0x61, 0x62, 0x05, 0x69, 0x6e, 0x74, 0x72, 0x61,
+        0x00, 0x00, 0x1f, 0x00, 0x10, 0x20, 0x01, 0x0d,
+        0xb8, 0xde, 0xad, 0xbe, 0xef, 0x00, 0x00, 0x00,
+        0x00, 0x00, 0x00, 0x00, 0x01
+};
+
+static int test_advertise_option(sd_event *e) {
+        _cleanup_dhcp6_lease_free_ sd_dhcp6_lease *lease = NULL;
+        DHCP6Message *advertise = (DHCP6Message *)msg_advertise;
+        uint8_t *optval, *opt = &msg_advertise[sizeof(DHCP6Message)];
+        uint16_t optcode;
+        size_t optlen, len = sizeof(msg_advertise);
+        be32_t val;
+        uint8_t preference = 255;
+        struct in6_addr addr;
+        uint32_t lt_pref, lt_valid;
+        int r;
+        bool opt_clientid = false;
+
+        if (verbose)
+                printf("* %s\n", __FUNCTION__);
+
+        assert_se(dhcp6_lease_new(&lease) >= 0);
+
+        assert_se(advertise->type == DHCP6_ADVERTISE);
+        assert_se((be32toh(advertise->transaction_id) & 0x00ffffff) ==
+                  0x0fb4e5);
+
+        while ((r = dhcp6_option_parse(&opt, &len, &optcode, &optlen,
+                                       &optval)) >= 0) {
+
+                switch(optcode) {
+                case DHCP6_OPTION_CLIENTID:
+                        assert_se(optlen == 14);
+
+                        opt_clientid = true;
+                        break;
+
+                case DHCP6_OPTION_IA_NA:
+                        assert_se(optlen == 94);
+                        assert_se(!memcmp(optval, &msg_advertise[26], optlen));
+
+                        val = htobe32(0x0ecfa37d);
+                        assert_se(!memcmp(optval, &val, sizeof(val)));
+
+                        val = htobe32(80);
+                        assert_se(!memcmp(optval + 4, &val, sizeof(val)));
+
+                        val = htobe32(120);
+                        assert_se(!memcmp(optval + 8, &val, sizeof(val)));
+
+                        assert_se(dhcp6_option_parse_ia(&optval, &optlen,
+                                                        optcode,
+                                                        &lease->ia) >= 0);
+
+                        break;
+
+                case DHCP6_OPTION_SERVERID:
+                        assert_se(optlen == 14);
+                        assert_se(!memcmp(optval, &msg_advertise[179], optlen));
+
+                        assert_se(dhcp6_lease_set_serverid(lease, optval,
+                                                           optlen) >= 0);
+                        break;
+
+                case DHCP6_OPTION_PREFERENCE:
+                        assert_se(optlen == 1);
+                        assert_se(!*optval);
+
+                        assert_se(dhcp6_lease_set_preference(lease,
+                                                             *optval) >= 0);
+                        break;
+
+                default:
+                        break;
+                }
+        }
+
+
+        assert_se(r == -ENOMSG);
+
+        assert_se(opt_clientid);
+
+        assert_se(sd_dhcp6_lease_get_first_address(lease, &addr, &lt_pref,
+                                                   &lt_valid) >= 0);
+        assert_se(!memcmp(&addr, &msg_advertise[42], sizeof(addr)));
+        assert_se(lt_pref == 150);
+        assert_se(lt_valid == 180);
+        assert_se(sd_dhcp6_lease_get_next_address(lease, &addr, &lt_pref,
+                                                  &lt_valid) == -ENOMSG);
+
+        assert_se(sd_dhcp6_lease_get_first_address(lease, &addr, &lt_pref,
+                                                   &lt_valid) >= 0);
+        assert_se(!memcmp(&addr, &msg_advertise[42], sizeof(addr)));
+        assert_se(sd_dhcp6_lease_get_next_address(lease, &addr, &lt_pref,
+                                                  &lt_valid) == -ENOMSG);
+        assert_se(sd_dhcp6_lease_get_next_address(lease, &addr, &lt_pref,
+                                                  &lt_valid) == -ENOMSG);
+        assert_se(sd_dhcp6_lease_get_first_address(lease, &addr, &lt_pref,
+                                                   &lt_valid) >= 0);
+        assert_se(!memcmp(&addr, &msg_advertise[42], sizeof(addr)));
+        assert_se(sd_dhcp6_lease_get_next_address(lease, &addr, &lt_pref,
+                                                  &lt_valid) == -ENOMSG);
+
+        assert_se(dhcp6_lease_get_serverid(lease, &opt, &len) >= 0);
+        assert_se(len == 14);
+        assert_se(!memcmp(opt, &msg_advertise[179], len));
+
+        assert_se(dhcp6_lease_get_preference(lease, &preference) >= 0);
+        assert_se(preference == 0);
+
+        return 0;
+}
+
+static int test_hangcheck(sd_event_source *s, uint64_t usec, void *userdata) {
+        assert_not_reached("Test case should have completed in 2 seconds");
+
+        return 0;
+}
+
+int detect_vm(const char **id) {
+        return 1;
+}
+
+int detect_container(const char **id) {
+        return 1;
+}
+
+int detect_virtualization(const char **id) {
+        return 1;
+}
+
+int dhcp6_network_bind_udp_socket(int index, struct in6_addr *local_address) {
+        assert_se(index == test_index);
+
+        if (socketpair(AF_UNIX, SOCK_STREAM, 0, test_dhcp_fd) < 0)
+                return -errno;
+
+        return test_dhcp_fd[0];
+}
+
+static int test_client_send_reply(DHCP6Message *request) {
+        DHCP6Message reply;
+
+        reply.transaction_id = request->transaction_id;
+        reply.type = DHCP6_REPLY;
+
+        memcpy(msg_reply, &reply.transaction_id, 4);
+
+        memcpy(&msg_reply[26], test_duid, sizeof(test_duid));
+
+        memcpy(&msg_reply[44], &test_iaid, sizeof(test_iaid));
+
+        assert_se(write(test_dhcp_fd[1], msg_reply, sizeof(msg_reply))
+                  == sizeof(msg_reply));
+
+        return 0;
+}
+
+static int test_client_verify_request(DHCP6Message *request, uint8_t *option,
+                                      size_t len) {
+        _cleanup_dhcp6_lease_free_ sd_dhcp6_lease *lease = NULL;
+        uint8_t *optval;
+        uint16_t optcode;
+        size_t optlen;
+        bool found_clientid = false, found_iana = false, found_serverid = false;
+        int r;
+        struct in6_addr addr;
+        be32_t val;
+        uint32_t lt_pref, lt_valid;
+
+        assert_se(request->type == DHCP6_REQUEST);
+
+        assert_se(dhcp6_lease_new(&lease) >= 0);
+
+        while ((r = dhcp6_option_parse(&option, &len,
+                                       &optcode, &optlen, &optval)) >= 0) {
+                switch(optcode) {
+                case DHCP6_OPTION_CLIENTID:
+                        assert_se(!found_clientid);
+                        found_clientid = true;
+
+                        assert_se(!memcmp(optval, &test_duid,
+                                          sizeof(test_duid)));
+
+                        break;
+
+                case DHCP6_OPTION_IA_NA:
+                        assert_se(!found_iana);
+                        found_iana = true;
+
+
+                        assert_se(optlen == 40);
+                        assert_se(!memcmp(optval, &test_iaid, sizeof(test_iaid)));
+
+                        val = htobe32(80);
+                        assert_se(!memcmp(optval + 4, &val, sizeof(val)));
+
+                        val = htobe32(120);
+                        assert_se(!memcmp(optval + 8, &val, sizeof(val)));
+
+                        assert_se(!dhcp6_option_parse_ia(&optval, &optlen,
+                                                         optcode, &lease->ia));
+
+                        break;
+
+                case DHCP6_OPTION_SERVERID:
+                        assert_se(!found_serverid);
+                        found_serverid = true;
+
+                        assert_se(optlen == 14);
+                        assert_se(!memcmp(&msg_advertise[179], optval, optlen));
+
+                        break;
+                }
+        }
+
+        assert_se(r == -ENOMSG);
+        assert_se(found_clientid && found_iana && found_serverid);
+
+        assert_se(sd_dhcp6_lease_get_first_address(lease, &addr, &lt_pref,
+                                                   &lt_valid) >= 0);
+        assert_se(!memcmp(&addr, &msg_advertise[42], sizeof(addr)));
+        assert_se(lt_pref == 150);
+        assert_se(lt_valid == 180);
+
+        assert_se(sd_dhcp6_lease_get_next_address(lease, &addr, &lt_pref,
+                                                  &lt_valid) == -ENOMSG);
+
+        return 0;
+}
+
+static int test_client_send_advertise(DHCP6Message *solicit)
+{
+        DHCP6Message advertise;
+
+        advertise.transaction_id = solicit->transaction_id;
+        advertise.type = DHCP6_ADVERTISE;
+
+        memcpy(msg_advertise, &advertise.transaction_id, 4);
+
+        memcpy(&msg_advertise[8], test_duid, sizeof(test_duid));
+
+        memcpy(&msg_advertise[26], &test_iaid, sizeof(test_iaid));
+
+        assert_se(write(test_dhcp_fd[1], msg_advertise, sizeof(msg_advertise))
+                  == sizeof(msg_advertise));
+
+        return 0;
+}
+
+static int test_client_verify_solicit(DHCP6Message *solicit, uint8_t *option,
+                                      size_t len) {
+        uint8_t *optval;
+        uint16_t optcode;
+        size_t optlen;
+        bool found_clientid = false, found_iana = false;
+        int r;
+
+        assert_se(solicit->type == DHCP6_SOLICIT);
+
+        while ((r = dhcp6_option_parse(&option, &len,
+                                       &optcode, &optlen, &optval)) >= 0) {
+                switch(optcode) {
+                case DHCP6_OPTION_CLIENTID:
+                        assert_se(!found_clientid);
+                        found_clientid = true;
+
+                        assert_se(optlen == sizeof(test_duid));
+                        memcpy(&test_duid, optval, sizeof(test_duid));
+
+                        break;
+
+                case DHCP6_OPTION_IA_NA:
+                        assert_se(!found_iana);
+                        found_iana = true;
+
+                        assert_se(optlen == 12);
+
+                        memcpy(&test_iaid, optval, sizeof(test_iaid));
+
+                        break;
+                }
+        }
+
+        assert_se(r == -ENOMSG);
+        assert_se(found_clientid && found_iana);
+
+        return 0;
+}
+
+int dhcp6_network_send_udp_socket(int s, struct in6_addr *server_address,
+                                  const void *packet, size_t len) {
+        struct in6_addr mcast =
+                IN6ADDR_ALL_DHCP6_RELAY_AGENTS_AND_SERVERS_INIT;
+        DHCP6Message *message;
+        uint8_t *option;
+
+        assert_se(s == test_dhcp_fd[0]);
+        assert_se(server_address);
+        assert_se(packet);
+        assert_se(len > sizeof(DHCP6Message) + 4);
+
+        assert_se(IN6_ARE_ADDR_EQUAL(server_address, &mcast));
+
+        message = (DHCP6Message *)packet;
+        option = (uint8_t *)(message + 1);
+        len -= sizeof(DHCP6Message);
+
+        assert_se(message->transaction_id & 0x00ffffff);
+
+        if (test_client_message_num == 0) {
+                test_client_verify_solicit(message, option, len);
+                test_client_send_advertise(message);
+                test_client_message_num++;
+        } else if (test_client_message_num == 1) {
+                test_client_verify_request(message, option, len);
+                test_client_send_reply(message);
+                test_client_message_num++;
+        }
+
+        return len;
+}
+
+static void test_client_solicit_cb(sd_dhcp6_client *client, int event,
+                                   void *userdata) {
+        sd_event *e = userdata;
+
+        assert_se(e);
+        assert_se(event == DHCP6_EVENT_IP_ACQUIRE);
+
+        assert_se(sd_dhcp6_client_set_request_option(client, DHCP6_OPTION_DNS_SERVERS) == -EBUSY);
+
+        if (verbose)
+                printf("  got DHCPv6 event %d\n", event);
+
+        sd_event_exit(e, 0);
+}
+
+static int test_client_solicit(sd_event *e) {
+        sd_dhcp6_client *client;
+        usec_t time_now = now(CLOCK_MONOTONIC);
+
+        if (verbose)
+                printf("* %s\n", __FUNCTION__);
+
+        assert_se(sd_dhcp6_client_new(&client) >= 0);
+        assert_se(client);
+
+        assert_se(sd_dhcp6_client_attach_event(client, e, 0) >= 0);
+
+        assert_se(sd_dhcp6_client_set_index(client, test_index) == 0);
+        assert_se(sd_dhcp6_client_set_mac(client, &mac_addr) >= 0);
+
+        assert_se(sd_dhcp6_client_set_callback(client,
+                                               test_client_solicit_cb, e) >= 0);
+
+        assert_se(sd_event_add_time(e, &hangcheck, CLOCK_MONOTONIC,
+                                    time_now + 2 * USEC_PER_SEC, 0,
+                                    test_hangcheck, NULL) >= 0);
+
+        assert_se(sd_dhcp6_client_start(client) >= 0);
+
+        sd_event_loop(e);
+
+        hangcheck = sd_event_source_unref(hangcheck);
+
+        assert_se(!sd_dhcp6_client_unref(client));
+
+        test_dhcp_fd[1] = safe_close(test_dhcp_fd[1]);
+
+        return 0;
+}
+
+int main(int argc, char *argv[]) {
+        _cleanup_event_unref_ sd_event *e;
+
+        assert_se(sd_event_new(&e) >= 0);
+
+        log_set_max_level(LOG_DEBUG);
+        log_parse_environment();
+        log_open();
+
+        test_client_basic(e);
+        test_option(e);
+        test_advertise_option(e);
+        test_client_solicit(e);
+
+        assert_se(!sd_event_unref(e));
+
+        return 0;
+}
diff --git a/src/libsystemd-network/test-icmp6-rs.c b/src/libsystemd-network/test-icmp6-rs.c
new file mode 100644 (file)
index 0000000..b81211f
--- /dev/null
@@ -0,0 +1,158 @@
+/*-*- Mode: C; c-basic-offset: 8; indent-tabs-mode: nil -*-*/
+
+/***
+  This file is part of systemd.
+
+  Copyright (C) 2014 Intel Corporation. All rights reserved.
+
+  systemd is free software; you can redistribute it and/or modify it
+  under the terms of the GNU Lesser General Public License as published by
+  the Free Software Foundation; either version 2.1 of the License, or
+  (at your option) any later version.
+
+  systemd is distributed in the hope that it will be useful, but
+  WITHOUT ANY WARRANTY; without even the implied warranty of
+  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+  Lesser General Public License for more details.
+
+  You should have received a copy of the GNU Lesser General Public License
+  along with systemd; If not, see <http://www.gnu.org/licenses/>.
+***/
+
+#include <netinet/icmp6.h>
+
+#include "socket-util.h"
+
+#include "dhcp6-internal.h"
+#include "sd-icmp6-nd.h"
+
+static struct ether_addr mac_addr = {
+        .ether_addr_octet = {'A', 'B', 'C', '1', '2', '3'}
+};
+
+static bool verbose = false;
+static sd_event_source *test_hangcheck;
+static int test_fd[2];
+
+static int test_rs_hangcheck(sd_event_source *s, uint64_t usec,
+                             void *userdata) {
+        assert(false);
+
+        return 0;
+}
+
+int dhcp_network_icmp6_bind_router_solicitation(int index) {
+        assert(index == 42);
+
+        if (socketpair(AF_UNIX, SOCK_DGRAM, 0, test_fd) < 0)
+                return -errno;
+
+        return test_fd[0];
+}
+
+static int send_ra(uint8_t flags) {
+        uint8_t advertisement[] = {
+                0x86, 0x00, 0xde, 0x83, 0x40, 0xc0, 0x00, 0xb4,
+                0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+                0x03, 0x04, 0x40, 0xc0, 0x00, 0x00, 0x01, 0xf4,
+                0x00, 0x00, 0x01, 0xb8, 0x00, 0x00, 0x00, 0x00,
+                0x20, 0x01, 0x0d, 0xb8, 0xde, 0xad, 0xbe, 0xef,
+                0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+                0x19, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c,
+                0x20, 0x01, 0x0d, 0xb8, 0xde, 0xad, 0xbe, 0xef,
+                0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01,
+                0x1f, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c,
+                0x03, 0x6c, 0x61, 0x62, 0x05, 0x69, 0x6e, 0x74,
+                0x72, 0x61, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+                0x01, 0x01, 0x78, 0x2b, 0xcb, 0xb3, 0x6d, 0x53,
+        };
+
+        advertisement[5] = flags;
+
+        assert(write(test_fd[1], advertisement, sizeof(advertisement)) ==
+               sizeof(advertisement));
+
+        if (verbose)
+                printf("  sent RA with flag 0x%02x\n", flags);
+
+        return 0;
+}
+
+int dhcp_network_icmp6_send_router_solicitation(int s, const struct ether_addr *ether_addr) {
+        return send_ra(0);
+}
+
+static void test_rs_done(sd_icmp6_nd *nd, int event, void *userdata) {
+        sd_event *e = userdata;
+        static int idx = 0;
+        struct {
+                uint8_t flag;
+                int event;
+        } flag_event[] = {
+                { 0, ICMP6_EVENT_ROUTER_ADVERTISMENT_NONE },
+                { ND_RA_FLAG_OTHER, ICMP6_EVENT_ROUTER_ADVERTISMENT_OTHER },
+                { ND_RA_FLAG_MANAGED, ICMP6_EVENT_ROUTER_ADVERTISMENT_MANAGED }
+        };
+        assert(nd);
+
+        assert(event == flag_event[idx].event);
+        idx++;
+
+        if (verbose)
+                printf("  got event %d\n", event);
+
+        if (idx < 3)
+                send_ra(flag_event[idx].flag);
+        else
+                sd_event_exit(e, 0);
+}
+
+static void test_rs(sd_event *e) {
+        usec_t time_now = now(CLOCK_MONOTONIC);
+        sd_icmp6_nd *nd;
+
+        if (verbose)
+                printf("* %s\n", __FUNCTION__);
+
+        assert(sd_icmp6_nd_new(&nd) >= 0);
+        assert(nd);
+
+        assert(sd_icmp6_nd_attach_event(nd, e, 0) >= 0);
+
+        assert(sd_icmp6_nd_set_index(nd, 42) >= 0);
+        assert(sd_icmp6_nd_set_mac(nd, &mac_addr) >= 0);
+        assert(sd_icmp6_nd_set_callback(nd, test_rs_done, e) >= 0);
+
+        assert(sd_event_add_time(e, &test_hangcheck, CLOCK_MONOTONIC,
+                                 time_now + 2 *USEC_PER_SEC, 0,
+                                 test_rs_hangcheck, NULL) >= 0);
+
+        assert(sd_icmp6_nd_stop(nd) >= 0);
+        assert(sd_icmp6_router_solicitation_start(nd) >= 0);
+        assert(sd_icmp6_nd_stop(nd) >= 0);
+
+        assert(sd_icmp6_router_solicitation_start(nd) >= 0);
+
+        sd_event_loop(e);
+
+        test_hangcheck = sd_event_source_unref(test_hangcheck);
+
+        nd = sd_icmp6_nd_unref(nd);
+        assert(!nd);
+
+        close(test_fd[1]);
+}
+
+int main(int argc, char *argv[]) {
+        sd_event *e;
+
+        assert(sd_event_new(&e) >= 0);
+
+        log_set_max_level(LOG_DEBUG);
+        log_parse_environment();
+        log_open();
+
+        test_rs(e);
+
+        return 0;
+}
index eaffa2d3a207b1924e758af185b257dcd17f0834..4768a1fa9e1e8c2cef2a40b8f0c5e6ef866b612f 100644 (file)
@@ -801,9 +801,10 @@ _public_ sd_bus_message* sd_bus_message_unref(sd_bus_message *m) {
         assert(m->n_ref > 0);
         m->n_ref--;
 
-        if (m->n_ref <= 0)
-                message_free(m);
+        if (m->n_ref > 0)
+                return NULL;
 
+        message_free(m);
         return NULL;
 }
 
index 1f1a4d3a1425f2830ff82b0c64f5bd0518dbc530..28fc19e2cf2d7b935b35371f2955ca5e256a1d54 100644 (file)
@@ -75,12 +75,6 @@ static void bus_close_fds(sd_bus *b) {
 static void bus_reset_queues(sd_bus *b) {
         assert(b);
 
-        /* NOTE: We _must_ decrement b->Xqueue_size before calling
-         * sd_bus_message_unref() for _each_ message. Otherwise the
-         * self-reference checks in sd_bus_unref() will fire for each message.
-         * We would thus recurse into sd_bus_message_unref() and trigger the
-         * assert(m->n_ref > 0) */
-
         while (b->rqueue_size > 0)
                 sd_bus_message_unref(b->rqueue[--b->rqueue_size]);
 
@@ -1039,8 +1033,10 @@ _public_ int sd_bus_start(sd_bus *bus) {
         else
                 return -EINVAL;
 
-        if (r < 0)
+        if (r < 0) {
+                sd_bus_close(bus);
                 return r;
+        }
 
         return bus_send_hello(bus);
 }
@@ -1215,15 +1211,38 @@ fail:
 
 int bus_set_address_system_remote(sd_bus *b, const char *host) {
         _cleanup_free_ char *e = NULL;
+        char *m = NULL, *c = NULL;
 
         assert(b);
         assert(host);
 
-        e = bus_address_escape(host);
-        if (!e)
-                return -ENOMEM;
+        /* Let's see if we shall enter some container */
+        m = strchr(host, ':');
+        if (m) {
+                m++;
+
+                /* Let's make sure this is not a port of some kind,
+                 * and is a valid machine name. */
+                if (!in_charset(m, "0123456789") && machine_name_is_valid(m)) {
+                        char *t;
 
-        b->address = strjoin("unixexec:path=ssh,argv1=-xT,argv2=", e, ",argv3=systemd-stdio-bridge", NULL);
+                        /* Cut out the host part */
+                        t = strndupa(host, m - host - 1);
+                        e = bus_address_escape(t);
+                        if (!e)
+                                return -ENOMEM;
+
+                        c = strappenda(",argv4=--machine=", m);
+                }
+        }
+
+        if (!e) {
+                e = bus_address_escape(host);
+                if (!e)
+                        return -ENOMEM;
+        }
+
+        b->address = strjoin("unixexec:path=ssh,argv1=-xT,argv2=", e, ",argv3=systemd-stdio-bridge", c, NULL);
         if (!b->address)
                 return -ENOMEM;
 
@@ -1364,53 +1383,6 @@ _public_ sd_bus *sd_bus_unref(sd_bus *bus) {
         if (!bus)
                 return NULL;
 
-        /* TODO/FIXME: It's naive to think REFCNT_GET() is thread-safe in any
-         * way but exclusive REFCNT_DEC(). The current logic _must_ lock around
-         * REFCNT_GET() until REFCNT_DEC() or two threads might end up in
-         * parallel in bus_reset_queues(). But locking would totally break the
-         * recursion we introduce by bus_reset_queues()...
-         * (Imagine one thread in sd_bus_message_unref() setting n_ref to 0 and
-         * thus calling into sd_bus_unref(). If at the same time the real
-         * thread calls sd_bus_unref(), both end up with "q == true" and will
-         * call into bus_reset_queues().
-         * If we require the main bus to be alive until all dispatch threads
-         * are done, there is no need to do ref-counts at all. So in both ways,
-         * the REFCNT thing is humbug.)
-         *
-         * On a second note: messages are *not* required to have ->bus set nor
-         * does it have to be _this_ bus that they're assigned to. This whole
-         * ref-cnt checking breaks apart if a message is not assigned to us.
-         * (which is _very_ easy to trigger with the current API). */
-
-        if (REFCNT_GET(bus->n_ref) == bus->rqueue_size + bus->wqueue_size + 1) {
-                bool q = true;
-
-                for (i = 0; i < bus->rqueue_size; i++)
-                        if (bus->rqueue[i]->n_ref > 1) {
-                                q = false;
-                                break;
-                        }
-
-                if (q) {
-                        for (i = 0; i < bus->wqueue_size; i++)
-                                if (bus->wqueue[i]->n_ref > 1) {
-                                        q = false;
-                                        break;
-                                }
-                }
-
-                /* We are the only holders on the messages, and the
-                 * messages are the only holders on us, so let's drop
-                 * the messages and thus implicitly also kill our own
-                 * last references.
-                 * bus_reset_queues() decrements the queue-size before
-                 * calling into sd_bus_message_unref(). Thus, it
-                 * protects us from recursion. */
-
-                if (q)
-                        bus_reset_queues(bus);
-        }
-
         i = REFCNT_DEC(bus->n_ref);
         if (i > 0)
                 return NULL;
@@ -2993,6 +2965,7 @@ static int quit_callback(sd_event_source *event, void *userdata) {
         assert(event);
 
         sd_bus_flush(bus);
+        sd_bus_close(bus);
 
         return 1;
 }
index 375a5388aa73d37124a47b4b4b1ff2d66e47b058..d1478ddb785a43703dd61dc479d616306a9e3a3b 100644 (file)
@@ -770,7 +770,7 @@ _public_ int sd_machine_get_class(const char *machine, char **class) {
         const char *p;
         int r;
 
-        assert_return(filename_is_safe(machine), -EINVAL);
+        assert_return(machine_name_is_valid(machine), -EINVAL);
         assert_return(class, -EINVAL);
 
         p = strappenda("/run/systemd/machines/", machine);
diff --git a/src/libsystemd/sd-path/sd-path.c b/src/libsystemd/sd-path/sd-path.c
new file mode 100644 (file)
index 0000000..7ade915
--- /dev/null
@@ -0,0 +1,626 @@
+/***
+  This file is part of systemd.
+
+  Copyright 2014 Lennart Poettering
+
+  systemd is free software; you can redistribute it and/or modify it
+  under the terms of the GNU Lesser General Public License as published by
+  the Free Software Foundation; either version 2.1 of the License, or
+  (at your option) any later version.
+
+  systemd is distributed in the hope that it will be useful, but
+  WITHOUT ANY WARRANTY; without even the implied warranty of
+  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+  Lesser General Public License for more details.
+
+  You should have received a copy of the GNU Lesser General Public License
+  along with systemd; If not, see <http://www.gnu.org/licenses/>.
+***/
+
+#include "util.h"
+#include "architecture.h"
+#include "path-util.h"
+#include "strv.h"
+#include "sd-path.h"
+
+static int from_environment(const char *envname, const char *fallback, const char **ret) {
+        assert(ret);
+
+        if (envname) {
+                const char *e;
+
+                e = secure_getenv(envname);
+                if (e && path_is_absolute(e)) {
+                        *ret = e;
+                        return 0;
+                }
+        }
+
+        if (fallback) {
+                *ret = fallback;
+                return 0;
+        }
+
+        return -ENXIO;
+}
+
+static int from_home_dir(const char *envname, const char *suffix, char **buffer, const char **ret) {
+        _cleanup_free_ char *h = NULL;
+        char *cc = NULL;
+        int r;
+
+        assert(suffix);
+        assert(buffer);
+        assert(ret);
+
+        if (envname) {
+                const char *e = NULL;
+
+                e = secure_getenv(envname);
+                if (e && path_is_absolute(e)) {
+                        *ret = e;
+                        return 0;
+                }
+        }
+
+        r = get_home_dir(&h);
+        if (r < 0)
+                return r;
+
+        if (endswith(h, "/"))
+                cc = strappend(h, suffix);
+        else
+                cc = strjoin(h, "/", suffix, NULL);
+        if (!cc)
+                return -ENOMEM;
+
+        *buffer = cc;
+        *ret = cc;
+        return 0;
+}
+
+static int from_user_dir(const char *field, char **buffer, const char **ret) {
+        _cleanup_fclose_ FILE *f = NULL;
+        _cleanup_free_ char *b = NULL;
+        const char *fn = NULL;
+        char line[LINE_MAX];
+        size_t n;
+        int r;
+
+        assert(field);
+        assert(buffer);
+        assert(ret);
+
+        r = from_home_dir(NULL, ".config/user-dirs.dirs", &b, &fn);
+        if (r < 0)
+                return r;
+
+        f = fopen(fn, "re");
+        if (!f) {
+                if (errno == ENOENT)
+                        goto fallback;
+
+                return -errno;
+        }
+
+        /* This is an awful parse, but it follows closely what
+         * xdg-user-dirs does upstream */
+
+        n = strlen(field);
+        FOREACH_LINE(line, f, return -errno) {
+                char *l, *p, *e;
+
+                l = strstrip(line);
+
+                if (!strneq(l, field, n))
+                        continue;
+
+                p = l + n;
+                p += strspn(p, WHITESPACE);
+
+                if (*p != '=')
+                        continue;
+                p++;
+
+                p += strspn(p, WHITESPACE);
+
+                if (*p != '"')
+                        continue;
+                p++;
+
+                e = strrchr(p, '"');
+                if (!e)
+                        continue;
+                *e = 0;
+
+                /* Three syntaxes permitted: relative to $HOME, $HOME itself, and absolute path */
+                if (startswith(p, "$HOME/")) {
+                        _cleanup_free_ char *h = NULL;
+                        char *cc;
+
+                        r = get_home_dir(&h);
+                        if (r < 0)
+                                return r;
+
+                        cc = strappend(h, p+5);
+                        if (!cc)
+                                return -ENOMEM;
+
+                        *buffer = cc;
+                        *ret = cc;
+                        return 0;
+                } else if (streq(p, "$HOME")) {
+
+                        r = get_home_dir(buffer);
+                        if (r < 0)
+                                return r;
+
+                        *ret = *buffer;
+                        return 0;
+                } else if (path_is_absolute(p)) {
+                        char *copy;
+
+                        copy = strdup(p);
+                        if (!copy)
+                                return -ENOMEM;
+
+                        *buffer = copy;
+                        *ret = copy;
+                        return 0;
+                }
+        }
+
+fallback:
+        /* The desktop directory defaults to $HOME/Desktop, the others to $HOME */
+        if (streq(field, "XDG_DESKTOP_DIR")) {
+                _cleanup_free_ char *h = NULL;
+                char *cc;
+
+                r = get_home_dir(&h);
+                if (r < 0)
+                        return r;
+
+                cc = strappend(h, "/Desktop");
+                if (!cc)
+                        return -ENOMEM;
+
+                *buffer = cc;
+                *ret = cc;
+        } else {
+
+                r = get_home_dir(buffer);
+                if (r < 0)
+                        return r;
+
+                *ret = *buffer;
+        }
+
+        return 0;
+}
+
+static int get_path(uint64_t type, char **buffer, const char **ret) {
+        int r;
+
+        assert(buffer);
+        assert(ret);
+
+        switch (type) {
+
+        case SD_PATH_TEMPORARY:
+                return from_environment("TMPDIR", "/tmp", ret);
+
+        case SD_PATH_TEMPORARY_LARGE:
+                return from_environment("TMPDIR", "/var/tmp", ret);
+
+        case SD_PATH_SYSTEM_BINARIES:
+                *ret = "/usr/bin";
+                return 0;
+
+        case SD_PATH_SYSTEM_INCLUDE:
+                *ret = "/usr/include";
+                return 0;
+
+        case SD_PATH_SYSTEM_LIBRARY_PRIVATE:
+                *ret = "/usr/lib";
+                return 0;
+
+        case SD_PATH_SYSTEM_LIBRARY_ARCH:
+                *ret = LIBDIR;
+                return 0;
+
+        case SD_PATH_SYSTEM_SHARED:
+                *ret = "/usr/share";
+                return 0;
+
+        case SD_PATH_SYSTEM_CONFIGURATION_FACTORY:
+                *ret = "/usr/share/factory/etc";
+                return 0;
+
+        case SD_PATH_SYSTEM_STATE_FACTORY:
+                *ret = "/usr/share/factory/var";
+                return 0;
+
+        case SD_PATH_SYSTEM_CONFIGURATION:
+                *ret = "/etc";
+                return 0;
+
+        case SD_PATH_SYSTEM_RUNTIME:
+                *ret = "/run";
+                return 0;
+
+        case SD_PATH_SYSTEM_RUNTIME_LOGS:
+                *ret = "/run/log";
+                return 0;
+
+        case SD_PATH_SYSTEM_STATE_PRIVATE:
+                *ret = "/var/lib";
+                return 0;
+
+        case SD_PATH_SYSTEM_STATE_LOGS:
+                *ret = "/var/log";
+                return 0;
+
+        case SD_PATH_SYSTEM_STATE_CACHE:
+                *ret = "/var/cache";
+                return 0;
+
+        case SD_PATH_SYSTEM_STATE_SPOOL:
+                *ret = "/var/spool";
+                return 0;
+
+        case SD_PATH_USER_BINARIES:
+                return from_home_dir(NULL, ".local/bin", buffer, ret);
+
+        case SD_PATH_USER_LIBRARY_PRIVATE:
+                return from_home_dir(NULL, ".local/lib", buffer, ret);
+
+        case SD_PATH_USER_LIBRARY_ARCH:
+                return from_home_dir(NULL, ".local/lib/" LIB_ARCH_TUPLE, buffer, ret);
+
+        case SD_PATH_USER_SHARED:
+                return from_home_dir("XDG_DATA_HOME", ".local/share", buffer, ret);
+
+        case SD_PATH_USER_CONFIGURATION:
+                return from_home_dir("XDG_CONFIG_HOME", ".config", buffer, ret);
+
+        case SD_PATH_USER_RUNTIME:
+                return from_environment("XDG_RUNTIME_DIR", NULL, ret);
+
+        case SD_PATH_USER_STATE_CACHE:
+                return from_home_dir("XDG_CACHE_HOME", ".cache", buffer, ret);
+
+        case SD_PATH_USER:
+                r = get_home_dir(buffer);
+                if (r < 0)
+                        return r;
+
+                *ret = *buffer;
+                return 0;
+
+        case SD_PATH_USER_DOCUMENTS:
+                return from_user_dir("XDG_DOCUMENTS_DIR", buffer, ret);
+
+        case SD_PATH_USER_MUSIC:
+                return from_user_dir("XDG_MUSIC_DIR", buffer, ret);
+
+        case SD_PATH_USER_PICTURES:
+                return from_user_dir("XDG_PICTURES_DIR", buffer, ret);
+
+        case SD_PATH_USER_VIDEOS:
+                return from_user_dir("XDG_VIDEOS_DIR", buffer, ret);
+
+        case SD_PATH_USER_DOWNLOAD:
+                return from_user_dir("XDG_DOWNLOAD_DIR", buffer, ret);
+
+        case SD_PATH_USER_PUBLIC:
+                return from_user_dir("XDG_PUBLICSHARE_DIR", buffer, ret);
+
+        case SD_PATH_USER_TEMPLATES:
+                return from_user_dir("XDG_TEMPLATES_DIR", buffer, ret);
+
+        case SD_PATH_USER_DESKTOP:
+                return from_user_dir("XDG_DESKTOP_DIR", buffer, ret);
+        }
+
+        return -ENOTSUP;
+}
+
+int sd_path_home(uint64_t type, const char *suffix, char **path) {
+        char *buffer = NULL, *cc;
+        const char *ret;
+        int r;
+
+        assert_return(path, -EINVAL);
+
+        if (IN_SET(type,
+                   SD_PATH_SEARCH_BINARIES,
+                   SD_PATH_SEARCH_LIBRARY_PRIVATE,
+                   SD_PATH_SEARCH_LIBRARY_ARCH,
+                   SD_PATH_SEARCH_SHARED,
+                   SD_PATH_SEARCH_CONFIGURATION_FACTORY,
+                   SD_PATH_SEARCH_STATE_FACTORY,
+                   SD_PATH_SEARCH_CONFIGURATION)) {
+
+                _cleanup_strv_free_ char **l = NULL;
+
+                r = sd_path_search(type, suffix, &l);
+                if (r < 0)
+                        return r;
+
+                buffer = strv_join(l, ":");
+                if (!buffer)
+                        return -ENOMEM;
+
+                *path = buffer;
+                return 0;
+        }
+
+        r = get_path(type, &buffer, &ret);
+        if (r < 0)
+                return r;
+
+        if (!suffix) {
+                if (!buffer) {
+                        buffer = strdup(ret);
+                        if (!buffer)
+                                return -ENOMEM;
+                }
+
+                *path = buffer;
+                return 0;
+        }
+
+        suffix += strspn(suffix, "/");
+
+        if (endswith(ret, "/"))
+                cc = strappend(ret, suffix);
+        else
+                cc = strjoin(ret, "/", suffix, NULL);
+
+        free(buffer);
+
+        if (!cc)
+                return -ENOMEM;
+
+        *path = cc;
+        return 0;
+}
+
+static int search_from_environment(
+                char ***list,
+                const char *env_home,
+                const char *home_suffix,
+                const char *env_search,
+                bool env_search_sufficient,
+                const char *first, ...) {
+
+        const char *e;
+        char *h = NULL;
+        char **l = NULL;
+        int r;
+
+        assert(list);
+
+        if (env_search) {
+                e = secure_getenv(env_search);
+                if (e) {
+                        l = strv_split(e, ":");
+                        if (!l)
+                                return -ENOMEM;
+
+                        if (env_search_sufficient) {
+                                *list = l;
+                                return 0;
+                        }
+                }
+        }
+
+        if (!l && first) {
+                va_list ap;
+
+                va_start(ap, first);
+                l = strv_new_ap(first, ap);
+                va_end(ap);
+
+                if (!l)
+                        return -ENOMEM;
+        }
+
+        if (env_home) {
+                e = secure_getenv(env_home);
+                if (e && path_is_absolute(e)) {
+                        h = strdup(e);
+                        if (!h) {
+                                strv_free(l);
+                                return -ENOMEM;
+                        }
+                }
+        }
+
+        if (!h && home_suffix) {
+                e = secure_getenv("HOME");
+                if (e && path_is_absolute(e)) {
+                        if (endswith(e, "/"))
+                                h = strappend(e, home_suffix);
+                        else
+                                h = strjoin(e, "/", home_suffix, NULL);
+
+                        if (!h) {
+                                strv_free(l);
+                                return -ENOMEM;
+                        }
+                }
+        }
+
+        if (h) {
+                r = strv_consume_prepend(&l, h);
+                if (r < 0) {
+                        strv_free(l);
+                        return -ENOMEM;
+                }
+        }
+
+        *list = l;
+        return 0;
+}
+
+static int get_search(uint64_t type, char ***list) {
+
+        assert(list);
+
+        switch(type) {
+
+        case SD_PATH_SEARCH_BINARIES:
+                return search_from_environment(list,
+                                               NULL,
+                                               ".local/bin",
+                                               "PATH",
+                                               true,
+                                               "/usr/local/sbin",
+                                               "/usr/local/bin",
+                                               "/usr/sbin",
+                                               "/usr/bin",
+#ifdef HAVE_SPLIT_USR
+                                               "/sbin",
+                                               "/bin",
+#endif
+                                               NULL);
+
+        case SD_PATH_SEARCH_LIBRARY_PRIVATE:
+                return search_from_environment(list,
+                                               NULL,
+                                               ".local/lib",
+                                               NULL,
+                                               false,
+                                               "/usr/local/lib",
+                                               "/usr/lib",
+#ifdef HAVE_SPLIT_USR
+                                               "/lib",
+#endif
+                                               NULL);
+
+        case SD_PATH_SEARCH_LIBRARY_ARCH:
+                return search_from_environment(list,
+                                               NULL,
+                                               ".local/lib/" LIB_ARCH_TUPLE,
+                                               "LD_LIBRARY_PATH",
+                                               true,
+                                               LIBDIR,
+#ifdef HAVE_SPLIT_USR
+                                               ROOTLIBDIR,
+#endif
+                                               NULL);
+
+        case SD_PATH_SEARCH_SHARED:
+                return search_from_environment(list,
+                                               "XDG_DATA_HOME",
+                                               ".local/share",
+                                               "XDG_DATA_DIRS",
+                                               false,
+                                               "/usr/local/share",
+                                               "/usr/share",
+                                               NULL);
+
+        case SD_PATH_SEARCH_CONFIGURATION_FACTORY:
+                return search_from_environment(list,
+                                               NULL,
+                                               NULL,
+                                               NULL,
+                                               false,
+                                               "/usr/local/share/factory/etc",
+                                               "/usr/share/factory/etc",
+                                               NULL);
+
+        case SD_PATH_SEARCH_STATE_FACTORY:
+                return search_from_environment(list,
+                                               NULL,
+                                               NULL,
+                                               NULL,
+                                               false,
+                                               "/usr/local/share/factory/var",
+                                               "/usr/share/factory/var",
+                                               NULL);
+
+        case SD_PATH_SEARCH_CONFIGURATION:
+                return search_from_environment(list,
+                                               "XDG_CONFIG_HOME",
+                                               ".config",
+                                               "XDG_CONFIG_DIRS",
+                                               false,
+                                               "/etc",
+                                               NULL);
+        }
+
+        return -ENOTSUP;
+}
+
+int sd_path_search(uint64_t type, const char *suffix, char ***paths) {
+        char **l, **i, **j, **n;
+        int r;
+
+        assert_return(paths, -EINVAL);
+
+        if (!IN_SET(type,
+                    SD_PATH_SEARCH_BINARIES,
+                    SD_PATH_SEARCH_LIBRARY_PRIVATE,
+                    SD_PATH_SEARCH_LIBRARY_ARCH,
+                    SD_PATH_SEARCH_SHARED,
+                    SD_PATH_SEARCH_CONFIGURATION_FACTORY,
+                    SD_PATH_SEARCH_STATE_FACTORY,
+                    SD_PATH_SEARCH_CONFIGURATION)) {
+
+                char *p;
+
+                r = sd_path_home(type, suffix, &p);
+                if (r < 0)
+                        return r;
+
+                l = new(char*, 2);
+                if (!l) {
+                        free(p);
+                        return -ENOMEM;
+                }
+
+                l[0] = p;
+                l[1] = NULL;
+
+                *paths = l;
+                return 0;
+        }
+
+        r = get_search(type, &l);
+        if (r < 0)
+                return r;
+
+        if (!suffix) {
+                *paths = l;
+                return 0;
+        }
+
+        n = new(char*, strv_length(l)+1);
+        if (!n) {
+                strv_free(l);
+                return -ENOMEM;
+        }
+
+        j = n;
+        STRV_FOREACH(i, l) {
+
+                if (endswith(*i, "/"))
+                        *j = strappend(*i, suffix);
+                else
+                        *j = strjoin(*i, "/", suffix, NULL);
+
+                if (!*j) {
+                        strv_free(l);
+                        strv_free(n);
+                        return -ENOMEM;
+                }
+
+                j++;
+        }
+
+        *j = NULL;
+        *paths = n;
+        return 0;
+}
index 2218afdbb9245257754727b7b6b847ea3405126f..9c3430d1bf88a9c039bbefcc24543dcbcc4fef36 100644 (file)
@@ -70,6 +70,23 @@ static const NLType rtnl_link_info_data_vlan_types[IFLA_VLAN_MAX + 1] = {
         [IFLA_VLAN_PROTOCOL]    = { .type = NLA_U16 },
 };
 
+static const NLType rtnl_link_info_data_vxlan_types[IFLA_VXLAN_MAX+1] = {
+        [IFLA_VXLAN_ID] = { .type = NLA_U32 },
+        [IFLA_VXLAN_GROUP] = {.type = NLA_IN_ADDR },
+        [IFLA_VXLAN_LINK] = { .type = NLA_U32 },
+        [IFLA_VXLAN_LOCAL] = { .type = NLA_U32},
+        [IFLA_VXLAN_TTL] = { .type = NLA_U8 },
+        [IFLA_VXLAN_TOS] = { .type = NLA_U8 },
+        [IFLA_VXLAN_LEARNING] = { .type = NLA_U8 },
+        [IFLA_VXLAN_AGEING] = { .type = NLA_U32 },
+        [IFLA_VXLAN_LIMIT] = { .type = NLA_U32 },
+        [IFLA_VXLAN_PORT_RANGE] = { .type = NLA_U32},
+        [IFLA_VXLAN_PROXY] = { .type = NLA_U8 },
+        [IFLA_VXLAN_RSC] = { .type = NLA_U8 },
+        [IFLA_VXLAN_L2MISS] = { .type = NLA_U8 },
+        [IFLA_VXLAN_L3MISS] = { .type = NLA_U8 },
+};
+
 static const NLType rtnl_link_info_data_bond_types[IFLA_BOND_MAX + 1] = {
         [IFLA_BOND_MODE]                = { .type = NLA_U8 },
         [IFLA_BOND_ACTIVE_SLAVE]        = { .type = NLA_U32 },
@@ -143,7 +160,9 @@ typedef enum NLUnionLinkInfoData {
         NL_UNION_LINK_INFO_DATA_BRIDGE,
         NL_UNION_LINK_INFO_DATA_VLAN,
         NL_UNION_LINK_INFO_DATA_VETH,
+        NL_UNION_LINK_INFO_DATA_DUMMY,
         NL_UNION_LINK_INFO_DATA_MACVLAN,
+        NL_UNION_LINK_INFO_DATA_VXLAN,
         NL_UNION_LINK_INFO_DATA_IPIP_TUNNEL,
         NL_UNION_LINK_INFO_DATA_IPGRE_TUNNEL,
         NL_UNION_LINK_INFO_DATA_SIT_TUNNEL,
@@ -161,7 +180,9 @@ static const char* const nl_union_link_info_data_table[_NL_UNION_LINK_INFO_DATA_
         [NL_UNION_LINK_INFO_DATA_BRIDGE] = "bridge",
         [NL_UNION_LINK_INFO_DATA_VLAN] = "vlan",
         [NL_UNION_LINK_INFO_DATA_VETH] = "veth",
+        [NL_UNION_LINK_INFO_DATA_DUMMY] = "dummy",
         [NL_UNION_LINK_INFO_DATA_MACVLAN] = "macvlan",
+        [NL_UNION_LINK_INFO_DATA_VXLAN] = "vxlan",
         [NL_UNION_LINK_INFO_DATA_IPIP_TUNNEL] = "ipip",
         [NL_UNION_LINK_INFO_DATA_IPGRE_TUNNEL] = "gre",
         [NL_UNION_LINK_INFO_DATA_SIT_TUNNEL] = "sit",
@@ -181,6 +202,8 @@ static const NLTypeSystem rtnl_link_info_data_type_systems[_NL_UNION_LINK_INFO_D
                                                   .types = rtnl_link_info_data_veth_types },
         [NL_UNION_LINK_INFO_DATA_MACVLAN] =     { .max = ELEMENTSOF(rtnl_link_info_data_macvlan_types) - 1,
                                                   .types = rtnl_link_info_data_macvlan_types },
+        [NL_UNION_LINK_INFO_DATA_VXLAN] =       { .max = ELEMENTSOF(rtnl_link_info_data_vxlan_types) - 1,
+                                                  .types = rtnl_link_info_data_vxlan_types },
         [NL_UNION_LINK_INFO_DATA_IPIP_TUNNEL] = { .max = ELEMENTSOF(rtnl_link_info_data_iptun_types) - 1,
                                                   .types = rtnl_link_info_data_iptun_types },
         [NL_UNION_LINK_INFO_DATA_IPGRE_TUNNEL] =  { .max = ELEMENTSOF(rtnl_link_info_data_ipgre_types) - 1,
index 78f5cca665dc848a106fdee52734236aaea3b30c..e6ba08e076b122c692d98f357f80ea0595848ddb 100644 (file)
@@ -20,6 +20,7 @@
 ***/
 
 #include <netinet/ether.h>
+#include <net/if.h>
 
 #include "util.h"
 #include "macro.h"
index eb0e096f843f44cc0f57ef012bfe83aa35fbab95..8ef1f3d4b05e0bac3515f8609dacd2f1807fa421 100644 (file)
@@ -26,6 +26,7 @@
 #include <string.h>
 #include <limits.h>
 #include <sys/stat.h>
+#include <sys/inotify.h>
 
 #include "libudev.h"
 #include "libudev-private.h"
@@ -45,6 +46,7 @@
 struct udev_queue {
         struct udev *udev;
         int refcount;
+        int fd;
 };
 
 /**
@@ -69,6 +71,7 @@ _public_ struct udev_queue *udev_queue_new(struct udev *udev)
 
         udev_queue->refcount = 1;
         udev_queue->udev = udev;
+        udev_queue->fd = -1;
         return udev_queue;
 }
 
@@ -107,6 +110,8 @@ _public_ struct udev_queue *udev_queue_unref(struct udev_queue *udev_queue)
         if (udev_queue->refcount > 0)
                 return NULL;
 
+        safe_close(udev_queue->fd);
+
         free(udev_queue);
         return NULL;
 }
@@ -175,7 +180,7 @@ _public_ int udev_queue_get_udev_is_active(struct udev_queue *udev_queue)
  **/
 _public_ int udev_queue_get_queue_is_empty(struct udev_queue *udev_queue)
 {
-        return access("/run/udev/queue", F_OK) >= 0;
+        return access("/run/udev/queue", F_OK) < 0;
 }
 
 /**
@@ -222,3 +227,44 @@ _public_ struct udev_list_entry *udev_queue_get_queued_list_entry(struct udev_qu
 {
         return NULL;
 }
+
+/**
+ * udev_queue_get_fd:
+ * @udev_queue: udev queue context
+ *
+ * Returns: a file descriptor to watch for a queue to become empty.
+ */
+_public_ int udev_queue_get_fd(struct udev_queue *udev_queue) {
+        int fd;
+        int r;
+
+        if (udev_queue->fd >= 0)
+                return udev_queue->fd;
+
+        fd = inotify_init1(IN_CLOEXEC);
+        if (fd < 0)
+                return -errno;
+
+        r = inotify_add_watch(fd, "/run/udev" , IN_DELETE);
+        if (r < 0) {
+                r = -errno;
+                close(fd);
+                return r;
+        }
+
+        udev_queue->fd = fd;
+        return fd;
+}
+
+/**
+ * udev_queue_flush:
+ * @udev_queue: udev queue context
+ *
+ * Returns: the result of clearing the watch for queue changes.
+ */
+_public_ int udev_queue_flush(struct udev_queue *udev_queue) {
+        if (udev_queue->fd < 0)
+                return -EINVAL;
+
+        return flush_fd(udev_queue->fd);
+}
index ceb89bd593c66236320cb4a69b8e670caa1dc0f3..4f2f11502ce761998879c5961e49098268073f61 100644 (file)
@@ -177,6 +177,8 @@ int udev_queue_get_queue_is_empty(struct udev_queue *udev_queue);
 int udev_queue_get_seqnum_is_finished(struct udev_queue *udev_queue, unsigned long long int seqnum) __attribute__ ((deprecated));
 int udev_queue_get_seqnum_sequence_is_finished(struct udev_queue *udev_queue,
                                                unsigned long long int start, unsigned long long int end) __attribute__ ((deprecated));
+int udev_queue_get_fd(struct udev_queue *udev_queue);
+int udev_queue_flush(struct udev_queue *udev_queue);
 struct udev_list_entry *udev_queue_get_queued_list_entry(struct udev_queue *udev_queue) __attribute__ ((deprecated));
 
 /*
index 1e6f885141e4b3f9fe2183ecca1f780e098aca11..95cd1c7b9ef1c51588434f7f7f181fcd5dbfb32a 100644 (file)
@@ -82,6 +82,8 @@ global:
         udev_queue_get_udev;
         udev_queue_get_udev_is_active;
         udev_queue_get_udev_seqnum;
+        udev_queue_get_fd;
+        udev_queue_flush;
         udev_queue_new;
         udev_queue_ref;
         udev_queue_unref;
index e3061c8d5ea46ea6187c790f519f4ce6d2bd619b..23da149b0e18e137a9c2ac9b2268a074ab05c326 100644 (file)
@@ -288,7 +288,7 @@ static int locale_write_data(Context *c) {
         int r, p;
         char **l = NULL;
 
-        r = load_env_file("/etc/locale.conf", NULL, &l);
+        r = load_env_file(NULL, "/etc/locale.conf", NULL, &l);
         if (r < 0 && r != -ENOENT)
                 return r;
 
@@ -393,7 +393,7 @@ static int vconsole_write_data(Context *c) {
         int r;
         _cleanup_strv_free_ char **l = NULL;
 
-        r = load_env_file("/etc/vconsole.conf", NULL, &l);
+        r = load_env_file(NULL, "/etc/vconsole.conf", NULL, &l);
         if (r < 0 && r != -ENOENT)
                 return r;
 
@@ -712,15 +712,16 @@ static int find_legacy_keymap(Context *c, char **new_keymap) {
                         }
                 }
 
-                if (matching > 0 &&
-                    streq_ptr(c->x11_model, a[2])) {
-                        matching++;
-
-                        if (streq_ptr(c->x11_variant, a[3])) {
+                if (matching > 0) {
+                        if (isempty(c->x11_model) || streq_ptr(c->x11_model, a[2])) {
                                 matching++;
 
-                                if (streq_ptr(c->x11_options, a[4]))
+                                if (streq_ptr(c->x11_variant, a[3])) {
                                         matching++;
+
+                                        if (streq_ptr(c->x11_options, a[4]))
+                                                matching++;
+                                }
                         }
                 }
 
diff --git a/src/locale/org.freedesktop.locale1.policy b/src/locale/org.freedesktop.locale1.policy
new file mode 100644 (file)
index 0000000..4c7db93
--- /dev/null
@@ -0,0 +1,54 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE policyconfig PUBLIC "-//freedesktop//DTD PolicyKit Policy Configuration 1.0//EN"
+        "http://www.freedesktop.org/standards/PolicyKit/1/policyconfig.dtd">
+<policyconfig>
+
+        <vendor>The systemd Project</vendor>
+        <vendor_url>http://www.freedesktop.org/wiki/Software/systemd</vendor_url>
+
+        <action id="org.freedesktop.locale1.set-locale">
+                <description>Set system locale</description>
+                <description xml:lang="de">Die lokale Sprachumgebung festlegen</description>
+                <description xml:lang="el">Ορισμός τοπικών ρυθμίσεων συστήματος</description>
+                <description xml:lang="fr">Définir la langue du système</description>
+                <description xml:lang="it">Configura le impostazioni regionali di sistema</description>
+                <description xml:lang="pl">Ustawienie lokalizacji systemu</description>
+                <description xml:lang="ru">Настроить системную локаль</description>
+                <message>Authentication is required to set the system locale.</message>
+                <message xml:lang="de">Legitimierung ist zum Festlegen der systemweiten Spracheinstellungen erforderlich.</message>
+                <message xml:lang="el">Απαιτείται πιστοποίηση για να ορίσετε τις τοπικές ρυθμίσεις του συστήματος.</message>
+                <message xml:lang="fr">Authentification requise pour définir la langue du système.</message>
+                <message xml:lang="it">Autenticazione richiesta per configurare le impostazioni regionali di sistema.</message>
+                <message xml:lang="pl">Wymagane jest uwierzytelnienie, aby ustawić lokalizację systemu.</message>
+                <message xml:lang="ru">Чтобы настроить системную локаль, необходимо пройти аутентификацию.</message>
+                <defaults>
+                        <allow_any>auth_admin_keep</allow_any>
+                        <allow_inactive>auth_admin_keep</allow_inactive>
+                        <allow_active>auth_admin_keep</allow_active>
+                </defaults>
+                <annotate key="org.freedesktop.policykit.imply">org.freedesktop.locale1.set-keyboard</annotate>
+        </action>
+
+        <action id="org.freedesktop.locale1.set-keyboard">
+                <description>Set system keyboard settings</description>
+                <description xml:lang="de">Tastatureinstellungen des Systems festlegen</description>
+                <description xml:lang="el">Ορισμός ρυθμίσεων πληκτρολογίου συστήματος</description>
+                <description xml:lang="fr">Définir les paramètres de clavier du système</description>
+                <description xml:lang="it">Configura la tastiera di sistema</description>
+                <description xml:lang="pl">Ustawienie klawiatury systemu</description>
+                <description xml:lang="ru">Настроить параметры клавиатуры</description>
+                <message>Authentication is required to set the system keyboard settings.</message>
+                <message xml:lang="de">Legitimierung ist zum Festlegen der Tastatureinstellungen des Systems erforderlich.</message>
+                <message xml:lang="el">Απαιτείται πιστοποίηση για να ορίσετε τις ρυθμίσεις πληκτρολογίου του συστήματος.</message>
+                <message xml:lang="fr">Authentification requise pour définir les paramètres de clavier du système.</message>
+                <message xml:lang="it">Autenticazione richiesta per configurare la tastiera di sistema.</message>
+                <message xml:lang="pl">Wymagane jest uwierzytelnienie, aby ustawić klawiaturę systemu.</message>
+                <message xml:lang="ru">Чтобы настроить параметры клавиатуры, необходимо пройти аутентификацию.</message>
+                <defaults>
+                        <allow_any>auth_admin_keep</allow_any>
+                        <allow_inactive>auth_admin_keep</allow_inactive>
+                        <allow_active>auth_admin_keep</allow_active>
+                </defaults>
+        </action>
+
+</policyconfig>
\ No newline at end of file
diff --git a/src/login/org.freedesktop.login1.policy b/src/login/org.freedesktop.login1.policy
new file mode 100644 (file)
index 0000000..e64d052
--- /dev/null
@@ -0,0 +1,551 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE policyconfig PUBLIC "-//freedesktop//DTD PolicyKit Policy Configuration 1.0//EN"
+        "http://www.freedesktop.org/standards/PolicyKit/1/policyconfig.dtd">
+<policyconfig>
+
+        <vendor>The systemd Project</vendor>
+        <vendor_url>http://www.freedesktop.org/wiki/Software/systemd</vendor_url>
+
+        <action id="org.freedesktop.login1.inhibit-block-shutdown">
+                <description>Allow applications to inhibit system shutdown</description>
+                <description xml:lang="de">Anwendungen dürfen das Herunterfahren des Systems unterbinden</description>
+                <description xml:lang="el">Να επιτρέπεται στις εφαρμογές να αποτρέπουν τον τερματισμό του συστήματος</description>
+                <description xml:lang="fr">Permet aux applications d'empêcher l'arrêt du système</description>
+                <description xml:lang="it">Consenti alle applicazioni di inibire lo spegnimento del sistema</description>
+                <description xml:lang="pl">Zezwolenie programom na wstrzymywanie wyłączenia systemu</description>
+                <description xml:lang="ru">Разрешить приложениям устанавливать блокировку на выключение системы</description>
+                <message>Authentication is required to allow an application to inhibit system shutdown.</message>
+                <message xml:lang="de">Legitimierung ist notwendig, um Anwendungen das Herunterfahren des Systems zu erlauben.</message>
+                <message xml:lang="el">Απαιτείται πιστοποίηση για να επιτρέπεται σε μια εφαρμογή να αποτρέψει τον τερματισμό του συστήματος.</message>
+                <message xml:lang="fr">Authentification requise pour permettre à une application d'empêcher l'arrêt du système.</message>
+                <message xml:lang="it">Autenticazione richiesta per consentire alle applicazione di inibire lo spegnimento del sistema</message>
+                <message xml:lang="pl">Wymagane jest uwierzytelnienie, aby zezwolić programowi na wstrzymanie wyłączenia systemu.</message>
+                <message xml:lang="ru">Чтобы разрешить приложениям устанавливать блокировку на выключение системы, необходимо пройти аутентификацию.</message>
+                <defaults>
+                        <allow_any>no</allow_any>
+                        <allow_inactive>yes</allow_inactive>
+                        <allow_active>yes</allow_active>
+                </defaults>
+                <annotate key="org.freedesktop.policykit.imply">org.freedesktop.login1.inhibit-delay-shutdown org.freedesktop.login1.inhibit-block-sleep org.freedesktop.login1.inhibit-delay-sleep org.freedesktop.login1.inhibit-block-idle</annotate>
+        </action>
+
+        <action id="org.freedesktop.login1.inhibit-delay-shutdown">
+                <description>Allow applications to delay system shutdown</description>
+                <description xml:lang="de">Anwendungen dürfen das Herunterfahren des Systems verzögern</description>
+                <description xml:lang="el">Να επιτρέπεται στις εφαρμογές να καθυστερούν τον τερματισμό του συστήματος</description>
+                <description xml:lang="fr">Permet aux applications de retarder l'arrêt du système</description>
+                <description xml:lang="it">Consenti alle applicazioni di ritardare lo spegnimento del sistema</description>
+                <description xml:lang="pl">Zezwolenie programom na opóźnienie wyłączenia systemu</description>
+                <description xml:lang="ru">Разрешить приложениям устанавливать задержку на выключение системы</description>
+                <message>Authentication is required to allow an application to delay system shutdown.</message>
+                <message xml:lang="de">Legitimierung ist notwendig, um Anwendungen das Verzögern des Herunterfahren des Systems zu erlauben.</message>
+                <message xml:lang="el">Απαιτείται πιστοποίηση για να επιτρέπεται σε μια εφαρμογή να καθυστερήσει τον τερματισμό του συστήματος.</message>
+                <message xml:lang="fr">Authentification requise pour permettre à une application de retarder l'arrêt du système.</message>
+                <message xml:lang="it">Autenticazione richiesta per consentire alle applicazione di ritardare lo spegnimento del sistema.</message>
+                <message xml:lang="pl">Wymagane jest uwierzytelnienie, aby zezwolić programowi na opóźnienie wyłączenia systemu.</message>
+                <message xml:lang="ru">Чтобы разрешить приложениям устанавливать задержку на выключение системы, необходимо пройти аутентификацию.</message>
+                <defaults>
+                        <allow_any>yes</allow_any>
+                        <allow_inactive>yes</allow_inactive>
+                        <allow_active>yes</allow_active>
+                </defaults>
+                <annotate key="org.freedesktop.policykit.imply">org.freedesktop.login1.inhibit-delay-sleep</annotate>
+        </action>
+
+        <action id="org.freedesktop.login1.inhibit-block-sleep">
+                <description>Allow applications to inhibit system sleep</description>
+                <description xml:lang="de">Anwendungen dürfen den Bereitschaftsmodus unterbinden</description>
+                <description xml:lang="el">Να επιτρέπεται στις εφαρμογές να αποτρέπουν την ύπνωση του συστήματος</description>
+                <description xml:lang="fr">Permet aux applications d'empêcher la mise en veille du système</description>
+                <description xml:lang="it">Consenti alle applicazioni di inibire il sistema in pausa</description>
+                <description xml:lang="pl">Zezwolenie programom na wstrzymanie uśpienia systemu</description>
+                <description xml:lang="ru">Разрешить приложениям устанавливать блокировку на засыпание системы</description>
+                <message>Authentication is required to allow an application to inhibit system sleep.</message>
+                <message xml:lang="de">Legitimierung ist erforderlich, um Anwendungen das Unterbinden des Bereitschaftsmodus zu erlauben.</message>
+                <message xml:lang="el">Απαιτείται πιστοποίηση για να επιτρέπεται σε μια εφαρμογή να αποτρέψει την ύπνωση του συστήματος.</message>
+                <message xml:lang="fr">Authentification requise pour permettre à une application d'empêcher la mise en veille du système.</message>
+                <message xml:lang="it">Autenticazione richiesta per consentire alle applicazioni di inibire il sistema in pausa.</message>
+                <message xml:lang="pl">Wymagane jest uwierzytelnienie, aby zezwolić programowi na wstrzymanie uśpienia systemu.</message>
+                <message xml:lang="ru">Чтобы разрешить приложениям устанавливать блокировку на засыпание системы, необходимо пройти аутентификацию.</message>
+                <defaults>
+                        <allow_any>no</allow_any>
+                        <allow_inactive>yes</allow_inactive>
+                        <allow_active>yes</allow_active>
+                </defaults>
+                <annotate key="org.freedesktop.policykit.imply">org.freedesktop.login1.inhibit-delay-sleep org.freedesktop.login1.inhibit-block-idle</annotate>
+        </action>
+
+        <action id="org.freedesktop.login1.inhibit-delay-sleep">
+                <description>Allow applications to delay system sleep</description>
+                <description xml:lang="de">Anwendungen dürfen den Bereitschaftsmodus verzögern</description>
+                <description xml:lang="el">Να επιτρέπεται στις εφαρμογές να καθυστερούν την ύπνωση του συστήματος</description>
+                <description xml:lang="fr">Permet aux applications de retarder la mise en veille du système</description>
+                <description xml:lang="it">Consenti alle applicazioni di ritardare il sistema in pausa</description>
+                <description xml:lang="pl">Zezwolenie programom na opóźnienie uśpienia systemu</description>
+                <description xml:lang="ru">Разрешить приложениям устанавливать задержку на засыпание системы</description>
+                <message>Authentication is required to allow an application to delay system sleep.</message>
+                <message xml:lang="de">Legitimierung ist erforderlich, um Anwendungen das Verzögern des Bereitschaftsmodus zu erlauben.</message>
+                <message xml:lang="el">Απαιτείται πιστοποίηση για να επιτρέπεται σε μια εφαρμογή να καθυστερήσει την ύπνωση του συστήματος.</message>
+                <message xml:lang="fr">Authentification requise pour permettre à une application de retarder la mise en veille du système.</message>
+                <message xml:lang="it">Autenticazione richiesta per consentire alle applicazioni di ritardare il sistema in pausa.</message>
+                <message xml:lang="pl">Wymagane jest uwierzytelnienie, aby zezwolić programowi na opóźnienie uśpienia systemu.</message>
+                <message xml:lang="ru">Чтобы разрешить приложениям устанавливать задержку на засыпание системы, необходимо пройти аутентификацию.</message>
+                <defaults>
+                        <allow_any>yes</allow_any>
+                        <allow_inactive>yes</allow_inactive>
+                        <allow_active>yes</allow_active>
+                </defaults>
+        </action>
+
+        <action id="org.freedesktop.login1.inhibit-block-idle">
+                <description>Allow applications to inhibit automatic system suspend</description>
+                <description xml:lang="de">Anwendungen dürfen den automatischen Bereitschaftsmodus unterbinden</description>
+                <description xml:lang="el">Να επιτρέπεται στις εφαρμογές να αποτρέπουν την αυτόματη αναστολή του συστήματος</description>
+                <description xml:lang="fr">Permet aux applications d'empêcher l'hibernation automatique du système</description>
+                <description xml:lang="it">Consenti alle applicazioni di inibire la sospesione automatica del sistema</description>
+                <description xml:lang="pl">Zezwolenie programom na wstrzymanie automatycznego uśpienia systemu</description>
+                <description xml:lang="ru">Разрешить приложениям устанавливать блокировку на автоматический переход системы в ждущий режим</description>
+                <message>Authentication is required to allow an application to inhibit automatic system suspend.</message>
+                <message xml:lang="de">Legitimierung ist notwendig, um Anwendungen das Unterbinden des automatischen Bereitschaftsmodus zu erlauben.</message>
+                <message xml:lang="el">Απαιτείται πιστοποίηση για να επιτρέπεται σε μια εφαρμογή να αποτρέψει την αυτόματη αναστολή του συστήματος.</message>
+                <message xml:lang="fr">Authentification requise pour permettre à une application d'empêcher l'hibernation automatique du système.</message>
+                <message xml:lang="it">Autenticazione richiesta per consentire alle applicazioni di inibire la sospensione automatica del sistema.</message>
+                <message xml:lang="pl">Wymagane jest uwierzytelnienie, aby zezwolić programowi na wstrzymanie automatycznego uśpienia systemu.</message>
+                <message xml:lang="ru">Чтобы разрешить приложениям устанавливать блокировку на автоматический переход системы в ждущий режим, необходимо пройти аутентификацию.</message>
+                <defaults>
+                        <allow_any>yes</allow_any>
+                        <allow_inactive>yes</allow_inactive>
+                        <allow_active>yes</allow_active>
+                </defaults>
+        </action>
+
+        <action id="org.freedesktop.login1.inhibit-handle-power-key">
+                <description>Allow applications to inhibit system handling of the power key</description>
+                <description xml:lang="de">Anwendungen dürfen das Auswerten des Ein-/Ausschaltknopfs des Systems unterbinden</description>
+                <description xml:lang="el">Να επιτρέπεται στις εφαρμογές να αποτρέπουν τη διαχείριση του πλήκτρου ενεργοποίησης του συστήματος</description>
+                <description xml:lang="fr">Permet aux applications d'empêcher la gestion du bouton d'alimentation  du système</description>
+                <description xml:lang="it">Consenti alle applicazioni di inibire al sistema la gestione del tasto di accensione</description>
+                <description xml:lang="pl">Zezwolenie programom na wstrzymanie obsługi klawisza zasilania przez system</description>
+                <description xml:lang="ru">Разрешить приложениям устанавливать блокировку обработки нажатий на кнопку выключения</description>
+                <message>Authentication is required to allow an application to inhibit system handling of the power key.</message>
+                <message xml:lang="de">Legitmierung ist erforderlich, um Anwendungen das Unterbinden der Auswertung der Ein-/Ausschaltknopfs des Systems zu erlauben.</message>
+                <message xml:lang="el">Απαιτείται πιστοποίηση για να επιτρέπεται σε μια εφαρμογή να αποτρέψει την διαχείριση του πλήκτρου ενεργοποίησης του συστήματος.</message>
+                <message xml:lang="fr">Authentification requise pour permettre à une application d'empêcher la gestion du bouton d'alimentation du système.</message>
+                <message xml:lang="it">Autenticazione richiesta per consentire alle applicazioni di inibire al sistema la gestione del tasto di accensione.</message>
+                <message xml:lang="pl">Wymagane jest uwierzytelnienie, aby zezwolić programowi na wstrzymanie obsługi klawisza zasilania przez system.</message>
+                <message xml:lang="ru">Чтобы разрешить приложениям устанавливать блокировку обработки нажатий на кнопку выключения, необходимо пройти аутентификацию.</message>
+                <defaults>
+                        <allow_any>no</allow_any>
+                        <allow_inactive>yes</allow_inactive>
+                        <allow_active>yes</allow_active>
+                </defaults>
+                <annotate key="org.freedesktop.policykit.imply">org.freedesktop.login1.inhibit-handle-suspend-key org.freedesktop.login1.inhibit-handle-hibernate-key org.freedesktop.login1.inhibit-handle-lid-switch</annotate>
+        </action>
+
+        <action id="org.freedesktop.login1.inhibit-handle-suspend-key">
+                <description>Allow applications to inhibit system handling of the suspend key</description>
+                <description xml:lang="de">Anwendungen dürfen das Auswerten des Bereitschaftsknopfs des Systems unterbinden</description>
+                <description xml:lang="el">Να επιτρέπεται στις εφαρμογές να αποτρέπουν τη διαχείριση του πλήκτρου αναστολής του συστήματος.</description>
+                <description xml:lang="fr">Permet aux applications d'empêcher la gestion du bouton de mise en veille du système</description>
+                <description xml:lang="it">Consenti alle applicazioni di inibire al sistema la gestione del tasto di sospensione</description>
+                <description xml:lang="pl">Zezwolenie programom na wstrzymanie obsługi klawisza uśpienia przez system</description>
+                <description xml:lang="ru">Разрешить приложениям устанавливать блокировку обработки нажатий на кнопку перехода в ждущий режим</description>
+                <message>Authentication is required to allow an application to inhibit system handling of the suspend key.</message>
+                <message xml:lang="de">Legitimierung ist erforderlich, um Anwendungen das Unterbinden der Auswertung des Bereitschaftsknopfes des Systems zu erlauben.</message>
+                <message xml:lang="el">Απαιτείται πιστοποίηση για να επιτρέπεται σε μια εφαρμογή να αποτρέψει την διαχείριση του πλήκτρου αναστολής του συστήματος.</message>
+                <message xml:lang="fr">Authentification requise pour permettre à une application d'empêcher la gestion du bouton de mise en veille du système.</message>
+                <message xml:lang="it">Autenticazione richiesta per consentire ad un'applicazione di inibire al sistema la gestione del tasto di sospensione.</message>
+                <message xml:lang="pl">Wymagane jest uwierzytelnienie, aby zezwolić programowi na wstrzymanie obsługi klawisza uśpienia przez system.</message>
+                <message xml:lang="ru">Чтобы разрешить приложениям устанавливать блокировку обработки нажатий на кнопку перехода в ждущий режим, необходимо пройти аутентификацию.</message>
+                <defaults>
+                        <allow_any>no</allow_any>
+                        <allow_inactive>yes</allow_inactive>
+                        <allow_active>yes</allow_active>
+                </defaults>
+                <annotate key="org.freedesktop.policykit.imply">org.freedesktop.login1.inhibit-handle-hibernate-key org.freedesktop.login1.inhibit-handle-lid-switch</annotate>
+        </action>
+
+        <action id="org.freedesktop.login1.inhibit-handle-hibernate-key">
+                <description>Allow applications to inhibit system handling of the hibernate key</description>
+                <description xml:lang="de">Anwendungen dürfen das Auswerten des Knopfs für den Ruhezustand unterbinden</description>
+                <description xml:lang="el">Να επιτρέπεται στις εφαρμογές να αποτρέπουν τη διαχείριση του πλήκτρου αδρανοποίησης του συστήματος</description>
+                <description xml:lang="fr">Permet aux applications d'empêcher la gestion du bouton d'hibernation du système</description>
+                <description xml:lang="it">Consenti alle applicazioni di inibire al sistema la gestione del tasto di ibernazione</description>
+                <description xml:lang="pl">Zezwolenie programom na wstrzymanie obsługi klawisza hibernacji przez system</description>
+                <description xml:lang="ru">Разрешить приложениям устанавливать блокировку обработки нажатий на кнопку перехода в спящий режим</description>
+                <message>Authentication is required to allow an application to inhibit system handling of the hibernate key.</message>
+                <message xml:lang="de">Legitimierung ist erforderlich, um Anwendungen das Unterbinden der Auswertung des Knopfs für den Ruhezustand zu erlauben.</message>
+                <message xml:lang="el">Απαιτείται πιστοποίηση για να επιτρέπεται σε μια εφαρμογή να αποτρέψει την διαχείριση του πλήκτρου αδρανοποίησης του συστήματος.</message>
+                <message xml:lang="fr">Authentification requise pour permettre à une application d'empêcher la gestion du bouton d'hibernation du système.</message>
+                <message xml:lang="it">Autenticazione richiesta per consentire ad un'applicazione di inibire al sistema la gestione del tasto di ibernazione.</message>
+                <message xml:lang="pl">Wymagane jest uwierzytelnienie, aby zezwolić programowi na wstrzymanie obsługi klawisza hibernacji przez system.</message>
+                <message xml:lang="ru">Чтобы разрешить приложениям устанавливать блокировку обработки нажатий на кнопку перехода в спящий режим, необходимо пройти аутентификацию.</message>
+                <defaults>
+                        <allow_any>no</allow_any>
+                        <allow_inactive>yes</allow_inactive>
+                        <allow_active>yes</allow_active>
+                </defaults>
+        </action>
+
+        <action id="org.freedesktop.login1.inhibit-handle-lid-switch">
+                <description>Allow applications to inhibit system handling of the lid switch</description>
+                <description xml:lang="de">Anwendungen dürfen das Auswerten des Notebookdeckelschalters unterbinden</description>
+                <description xml:lang="el">Να επιτρέπεται στις εφαρμογές να αποτρέπουν τη διαχείριση του διακόπτη καλύμματος του συστήματος</description>
+                <description xml:lang="fr">Permet aux applications d'empêcher la gestion par le système du rabat de l'écran</description>
+                <description xml:lang="it">Consenti alle applicazioni di inibire al sistema la gestione degli eventi relativi alla chiusura del portatile</description>
+                <description xml:lang="pl">Zezwolenie programom na wstrzymanie obsługi przełącznika pokrywy przez system</description>
+                <description xml:lang="ru">Разрешить приложениям устанавливать блокировку на обработку закрытия крышки ноутбука</description>
+                <message>Authentication is required to allow an application to inhibit system handling of the lid switch.</message>
+                <message xml:lang="de">Legitimierung ist erforderlich, um Anwendungen das Unterbinden der Auswertung des Notebookdeckelschalters des Systems zu erlauben.</message>
+                <message xml:lang="el">Απαιτείται πιστοποίηση για να επιτρέπεται σε μια εφαρμογή να αποτρέψει την διαχείριση του διακόπτη καλύμματος του συστήματος.</message>
+                <message xml:lang="fr">Authentification requise pour permettre à une application d'empêcher la gestion par le système du rabat de l'écran.</message>
+                <message xml:lang="it">Autenticazione richiesta per consentire alle applicazioni di inibire al sistema la gestione degli eventi relativi alla chiusura del portatile.</message>
+                <message xml:lang="pl">Wymagane jest uwierzytelnienie, aby zezwolić programowi na wstrzymanie obsługi przełącznika pokrywy przez system.</message>
+                <message xml:lang="ru">Чтобы разрешить приложениям устанавливать блокировку на обработку закрытия крышки ноутбука, необходимо пройти аутентификацию.</message>
+                <defaults>
+                        <allow_any>no</allow_any>
+                        <allow_inactive>yes</allow_inactive>
+                        <allow_active>yes</allow_active>
+                </defaults>
+        </action>
+
+        <action id="org.freedesktop.login1.set-user-linger">
+                <description>Allow non-logged-in users to run programs</description>
+                <description xml:lang="de">Nicht angemeldete Benutzer dürfen Programme ausführen</description>
+                <description xml:lang="el">Να επιτρέπεται σε μη συνδεμένους χρήστες να εκτελούν προγράμματα</description>
+                <description xml:lang="fr">Permet aux utilisateurs non connectés d'exécuter des programmes</description>
+                <description xml:lang="it">Consenti agli utenti non connessi di eseguire programmi</description>
+                <description xml:lang="pl">Zezwolenie niezalogowanym użytkownikom na uruchamianie programów</description>
+                <description xml:lang="ru">Разрешить пользователям оставлять программы в фоновом режиме после завершения сеанса</description>
+                <message>Authentication is required to allow a non-logged-in user to run programs.</message>
+                <message xml:lang="de">Legitimierung ist erforderlich, damit nicht angemeldete Benutzer Programme ausführen dürfen.</message>
+                <message xml:lang="el">Απαιτείται πιστοποίηση για να επιτρέπεται σε μη συνδεμένους χρήστες να εκτελούν προγράμματα.</message>
+                <message xml:lang="fr">Authentification requise pour permettre aux utilisateurs non connectés d'exécuter des programmes.</message>
+                <message xml:lang="it">Autenticazione richiesta per consentire agli utenti non connessi di eseguire programmi.</message>
+                <message xml:lang="pl">Wymagane jest uwierzytelnienie, aby zezwolić niezalogowanemu użytkownikowi na uruchamianie programów.</message>
+                <message xml:lang="ru">Чтобы разрешить пользователям оставлять программы в фоновом режиме после завершения сеанса, необходимо пройти аутентификацию.</message>
+                <defaults>
+                        <allow_any>auth_admin_keep</allow_any>
+                        <allow_inactive>auth_admin_keep</allow_inactive>
+                        <allow_active>auth_admin_keep</allow_active>
+                </defaults>
+        </action>
+
+        <action id="org.freedesktop.login1.attach-device">
+                <description>Allow attaching devices to seats</description>
+                <description xml:lang="de">Das Anschließen von Geräten an Arbeitsstationen erlauben</description>
+                <description xml:lang="el">Να επιτρέπεται η προσάρτηση συσκευών στους σταθμούς εργασίας</description>
+                <description xml:lang="fr">Permet d'associer des périphériques à des postes (seats)</description>
+                <description xml:lang="it">Consenti di collegare dispositivi alle postazioni</description>
+                <description xml:lang="pl">Zezwolenie na podłączanie urządzeń do stanowisk</description>
+                <description xml:lang="ru">Разрешить подключение устройств к рабочим местам</description>
+                <message>Authentication is required for attaching a device to a seat.</message>
+                <message xml:lang="de">Legitimierung ist zum Anschließen eines Geräts an eine Arbeitsstation notwendig.</message>
+                <message xml:lang="el">Απαιτείται πιστοποίηση για προσάρτηση μιας συσκευής σε έναν σταθμό εργασίας.</message>
+                <message xml:lang="fr">Authentification requise pour associer un périphérique à un poste (seat).</message>
+                <message xml:lang="it">Autenticazione richiesta per collegare un dispositivo alla postazione.</message>
+                <message xml:lang="pl">Wymagane jest uwierzytelnienie, aby podłączyć urządzenie do stanowiska.</message>
+                <message xml:lang="ru">Чтобы разрешить подключение устройств к рабочим местам, необходимо пройти аутентификацию.</message>
+                <defaults>
+                        <allow_any>auth_admin_keep</allow_any>
+                        <allow_inactive>auth_admin_keep</allow_inactive>
+                        <allow_active>auth_admin_keep</allow_active>
+                </defaults>
+                <annotate key="org.freedesktop.policykit.imply">org.freedesktop.login1.flush-devices</annotate>
+        </action>
+
+        <action id="org.freedesktop.login1.flush-devices">
+                <description>Flush device to seat attachments</description>
+                <description xml:lang="de">Zurücksetzen der an eine Arbeitsstation angeschlossenen Geräte</description>
+                <description xml:lang="el">Αφαίρεση συσκευής από προσαρτήσεις σταθμού εργασίας</description>
+                <description xml:lang="fr">Révoquer les associations de périphériques aux postes (seats)</description>
+                <description xml:lang="it">Scollega i dispositivi dalla postazione</description>
+                <description xml:lang="pl">Usunięcie podłączenia urządzeń do stanowisk</description>
+                <description xml:lang="ru">Сбросить привязки устройств к рабочим местам</description>
+                <message>Authentication is required for resetting how devices are attached to seats.</message>
+                <message xml:lang="de">Legitimierung ist zum Zurücksetzen notwendig, wie Geräte an eine Arbeitsstation angeschlossen werden.</message>
+                <message xml:lang="el">Απαιτείται πιστοποίηση για επαναφορά του τρόπου που οι συσκευές προσαρτώνται στους σταθμούς εργασίας.</message>
+                <message xml:lang="fr">Authentification requise pour révoquer les associations de périphériques aux postes (seats).</message>
+                <message xml:lang="it">Autenticazione richiesta per scollegare i dispositivi dalla postazione.</message>
+                <message xml:lang="pl">Wymagane jest uwierzytelnienie, aby ponownie ustawić sposób podłączenia urządzeń do stanowisk.</message>
+                <message xml:lang="ru">Чтобы сбросить привязки устройств к рабочим местам, необходимо пройти аутентификацию.</message>
+                <defaults>
+                        <allow_any>auth_admin_keep</allow_any>
+                        <allow_inactive>auth_admin_keep</allow_inactive>
+                        <allow_active>auth_admin_keep</allow_active>
+                </defaults>
+        </action>
+
+        <action id="org.freedesktop.login1.power-off">
+                <description>Power off the system</description>
+                <description xml:lang="de">Das System ausschalten</description>
+                <description xml:lang="el">Σβήσιμο του συστήματος</description>
+                <description xml:lang="fr">Éteindre le système</description>
+                <description xml:lang="it">Spegnere il sistema</description>
+                <description xml:lang="pl">Wyłączenie systemu</description>
+                <description xml:lang="ru">Выключить систему</description>
+                <message>Authentication is required for powering off the system.</message>
+                <message xml:lang="de">Legitimierung ist zum Ausschalten des Systems notwendig.</message>
+                <message xml:lang="el">Απαιτείται πιστοποίηση για την σβήσιμο του συστήματος.</message>
+                <message xml:lang="fr">Authentification requise pour éteindre le système.</message>
+                <message xml:lang="it">Autenticazione richiesta per spegnere il sistema.</message>
+                <message xml:lang="pl">Wymagane jest uwierzytelnienie, aby wyłączyć system.</message>
+                <message xml:lang="ru">Чтобы выключить систему, необходимо пройти аутентификацию.</message>
+                <defaults>
+                        <allow_any>auth_admin_keep</allow_any>
+                        <allow_inactive>auth_admin_keep</allow_inactive>
+                        <allow_active>yes</allow_active>
+                </defaults>
+        </action>
+
+        <action id="org.freedesktop.login1.power-off-multiple-sessions">
+                <description>Power off the system while other users are logged in</description>
+                <description xml:lang="de">Das System herunter fahren, während andere Benutzer angemeldet sind</description>
+                <description xml:lang="el">Σβήσιμο του συστήματος ενώ άλλοι χρήστες είναι συνδεμένοι</description>
+                <description xml:lang="fr">Éteindre le système alors que d'autres utilisateurs sont connectés</description>
+                <description xml:lang="it">Spegnere il sistema mentre altri utenti sono connessi</description>
+                <description xml:lang="pl">Wyłączenie systemu, kiedy są zalogowani inni użytkownicy</description>
+                <description xml:lang="ru">Выключить систему, несмотря на то, что в ней работают другие пользователи</description>
+                <message>Authentication is required for powering off the system while other users are logged in.</message>
+                <message xml:lang="de">Legitimierung ist zum Herunterfahren des Systems notwendig, während andere Benutzer angemeldet sind.</message>
+                <message xml:lang="el">Απαιτείται πιστοποίηση για σβήσιμο του συστήματος ενώ άλλοι χρήστες είναι συνδεμένοι.</message>
+                <message xml:lang="fr">Authentification requise pour éteindre le système alors que d'autres utilisateurs sont connectés.</message>
+                <message xml:lang="it">Autenticazione richiesta per spegnere il sistema mentre altri utenti sono connessi.</message>
+                <message xml:lang="pl">Wymagane jest uwierzytelnienie, aby wyłączyć system, kiedy są zalogowani inni użytkownicy.</message>
+                <message xml:lang="ru">Чтобы выключить систему, несмотря на то, что в ней работают другие пользователи, необходимо пройти аутентификацию.</message>
+                <defaults>
+                        <allow_any>auth_admin_keep</allow_any>
+                        <allow_inactive>auth_admin_keep</allow_inactive>
+                        <allow_active>yes</allow_active>
+                </defaults>
+                <annotate key="org.freedesktop.policykit.imply">org.freedesktop.login1.power-off</annotate>
+        </action>
+
+        <action id="org.freedesktop.login1.power-off-ignore-inhibit">
+                <description>Power off the system while an application asked to inhibit it</description>
+                <description xml:lang="de">Das System ausschalten, während eine Anwendung anfordert es zu unterbinden</description>
+                <description xml:lang="el">Απενεργοποίηση του συστήματος ενώ μια εφαρμογή ζήτησε να αποτραπεί.</description>
+                <description xml:lang="fr">Éteindre le système alors qu'une application a demandé de l'empêcher</description>
+                <description xml:lang="it">Spegnere il sistema nonostante l'inibizione di una applicazione</description>
+                <description xml:lang="pl">Wyłączenie systemu, kiedy program zażądał jego wstrzymania</description>
+                <description xml:lang="ru">Выключить систему, несмотря на то, что приложение запросило блокировку выключения</description>
+                <message>Authentication is required for powering off the system while an application asked to inhibit it.</message>
+                <message xml:lang="de">Legitimierung ist zum Ausschalten des Systems notwendig, während eine Anwendung anfordert es zu unterbinden.</message>
+                <message xml:lang="el">Απαιτείται πιστοποίηση για απενεργοποίηση του συστήματος ενώ μια εφαρμογή ζήτησε να αποτραπεί.</message>
+                <message xml:lang="fr">Authentification requise pour éteindre le système alors qu'une application a demandé de l'empêcher.</message>
+                <message xml:lang="it">Autenticazione richiesta per spegnere il sistema nonostante l'inibizione di una applicazione.</message>
+                <message xml:lang="pl">Wymagane jest uwierzytelnienie, aby wyłączyć system, kiedy program zażądał jego wstrzymania.</message>
+                <message xml:lang="ru">Чтобы выключить систему, несмотря на то, что приложение запросило блокировку выключения, необходимо пройти аутентификацию.</message>
+                <defaults>
+                        <allow_any>auth_admin_keep</allow_any>
+                        <allow_inactive>auth_admin_keep</allow_inactive>
+                        <allow_active>auth_admin_keep</allow_active>
+                </defaults>
+                <annotate key="org.freedesktop.policykit.imply">org.freedesktop.login1.power-off</annotate>
+        </action>
+
+        <action id="org.freedesktop.login1.reboot">
+                <description>Reboot the system</description>
+                <description xml:lang="de">Das System neu starten</description>
+                <description xml:lang="el">Επανεκκίνηση του συστήματος</description>
+                <description xml:lang="fr">Redémarrer le système</description>
+                <description xml:lang="it">Riavviare il sistema</description>
+                <description xml:lang="pl">Ponowne uruchomienie systemu</description>
+                <description xml:lang="ru">Перезагрузить систему</description>
+                <message>Authentication is required for rebooting the system.</message>
+                <message xml:lang="de">Legitimierung ist zum Neustart des Systems notwendig.</message>
+                <message xml:lang="el">Απαιτείται πιστοποίηση για επανεκκίνηση του συστήματος.</message>
+                <message xml:lang="fr">Authentification requise pour redémarrer le système.</message>
+                <message xml:lang="it">Autenticazione richiesta per riavviare il sistema.</message>
+                <message xml:lang="pl">Wymagane jest uwierzytelnienie, aby ponownie uruchomić system.</message>
+                <message xml:lang="ru">Чтобы перезагрузить систему, необходимо пройти аутентификацию.</message>
+                <defaults>
+                        <allow_any>auth_admin_keep</allow_any>
+                        <allow_inactive>auth_admin_keep</allow_inactive>
+                        <allow_active>yes</allow_active>
+                </defaults>
+        </action>
+
+        <action id="org.freedesktop.login1.reboot-multiple-sessions">
+                <description>Reboot the system while other users are logged in</description>
+                <description xml:lang="de">Das Systems neu starten, während andere Benutzer angemeldet sind</description>
+                <description xml:lang="el">Επανεκκίνηση του συστήματος ενώ άλλοι χρήστες είναι συνδεμένοι</description>
+                <description xml:lang="fr">Redémarrer le système alors que d'autres utilisateurs sont connectés</description>
+                <description xml:lang="it">Riavviare il sistema mentre altri utenti sono connessi</description>
+                <description xml:lang="pl">Ponowne uruchomienie systemu, kiedy są zalogowani inni użytkownicy</description>
+                <description xml:lang="ru">Перезагрузить систему, несмотря на то, что в ней работают другие пользователи</description>
+                <message>Authentication is required for rebooting the system while other users are logged in.</message>
+                <message xml:lang="de">Legitimierung ist zum Neustart des Systems notwendig, während andere Benutzer angemeldet sind.</message>
+                <message xml:lang="el">Απαιτείται πιστοποίηση για επανεκκίνηση του συστήματος ενώ άλλοι χρήστες είναι συνδεμένοι.</message>
+                <message xml:lang="fr">Authentification requise pour redémarrer le système alors que d'autres utilisateurs sont connectés.</message>
+                <message xml:lang="it">Autenticazione richiesta per riavviare il sistema mentre altri utenti sono connessi.</message>
+                <message xml:lang="pl">Wymagane jest uwierzytelnienie, aby ponownie uruchomić system, kiedy są zalogowani inni użytkownicy.</message>
+                <message xml:lang="ru">Чтобы перезагрузить систему, несмотря на то, что в ней работают другие пользователи, необходимо пройти аутентификацию.</message>
+                <defaults>
+                        <allow_any>auth_admin_keep</allow_any>
+                        <allow_inactive>auth_admin_keep</allow_inactive>
+                        <allow_active>yes</allow_active>
+                </defaults>
+                <annotate key="org.freedesktop.policykit.imply">org.freedesktop.login1.reboot</annotate>
+        </action>
+
+        <action id="org.freedesktop.login1.reboot-ignore-inhibit">
+                <description>Reboot the system while an application asked to inhibit it</description>
+                <description xml:lang="de">Das System neu starten, während eine Anwendung anfordert es zu unterbinden</description>
+                <description xml:lang="el">Επανεκκίνηση του συστήματος ενώ μια εφαρμογή ζήτησε να αποτραπεί</description>
+                <description xml:lang="fr">Redémarrer le système alors qu'une application a demandé de l'empêcher</description>
+                <description xml:lang="it">Riavviare il sistema nonostante l'inibizione di una applicazione</description>
+                <description xml:lang="pl">Ponowne uruchomienie systemu, kiedy program poprosił o jego wstrzymanie</description>
+                <description xml:lang="ru">Перезагрузить систему, несмотря на то, что приложение запросило блокировку выключения</description>
+                <message>Authentication is required for rebooting the system while an application asked to inhibit it.</message>
+                <message xml:lang="de">Legitimierung ist zum Neustart des Systems notwendig, während eine Anwendung anforderte es zu unterbinden.</message>
+                <message xml:lang="el">Απαιτείται πιστοποίηση για επανεκκίνηση του συστήματος ενώ μια εφαρμογή ζήτησε να αποτραπεί.</message>
+                <message xml:lang="fr">Authentification requise pour redémarrer le système alors qu'une application  a demandé de l'empêcher.</message>
+                <message xml:lang="it">Autenticazione richiesta per riavviare il sistema nonostante l'inibizione di una applicazione.</message>
+                <message xml:lang="pl">Wymagane jest uwierzytelnienie, aby ponownie uruchomić system, kiedy program zażądał jego wstrzymania.</message>
+                <message xml:lang="ru">Чтобы перезагрузить систему, несмотря на то, что приложение запросило блокировку выключения, необходимо пройти аутентификацию.</message>
+                <defaults>
+                        <allow_any>auth_admin_keep</allow_any>
+                        <allow_inactive>auth_admin_keep</allow_inactive>
+                        <allow_active>auth_admin_keep</allow_active>
+                </defaults>
+                <annotate key="org.freedesktop.policykit.imply">org.freedesktop.login1.reboot</annotate>
+        </action>
+
+        <action id="org.freedesktop.login1.suspend">
+                <description>Suspend the system</description>
+                <description xml:lang="de">Das System in Bereitschaft versetzen</description>
+                <description xml:lang="el">Αναστολή του συστήματος</description>
+                <description xml:lang="fr">Mettre le système en veille</description>
+                <description xml:lang="it">Sospendere il sistema</description>
+                <description xml:lang="pl">Uśpienie systemu</description>
+                <description xml:lang="ru">Перевести систему в ждущий режим</description>
+                <message>Authentication is required for suspending the system.</message>
+                <message xml:lang="de">Legitimierung ist zum Versetzen des Systems in Bereitschaft notwendig.</message>
+                <message xml:lang="el">Απαιτείται πιστοποίηση για την αναστολή του συστήματος.</message>
+                <message xml:lang="fr">Authentification requise pour mettre le système en veille.</message>
+                <message xml:lang="it">Autenticazione richiesta per sospendere il sistema.</message>
+                <message xml:lang="pl">Wymagane jest uwierzytelnienie, aby uśpić system.</message>
+                <message xml:lang="ru">Чтобы перевести систему в ждущий режим, необходимо пройти аутентификацию.</message>
+                <defaults>
+                        <allow_any>auth_admin_keep</allow_any>
+                        <allow_inactive>auth_admin_keep</allow_inactive>
+                        <allow_active>yes</allow_active>
+                </defaults>
+        </action>
+
+        <action id="org.freedesktop.login1.suspend-multiple-sessions">
+                <description>Suspend the system while other users are logged in</description>
+                <description xml:lang="de">Das System in Bereitschaft versetzen, während andere Benutzer angemeldet sind.</description>
+                <description xml:lang="el">Αναστολή του συστήματος ενώ άλλοι χρήστες είναι συνδεμένοι</description>
+                <description xml:lang="fr">Mettre le système en veille alors que d'autres utilisateurs sont connectés</description>
+                <description xml:lang="it">Sospendere il sistema mentre altri utenti sono connessi</description>
+                <description xml:lang="pl">Uśpienie systemu, kiedy są zalogowani inni użytkownicy</description>
+                <description xml:lang="ru">Перевести систему в ждущий режим, несмотря на то, что в ней работают другие пользователи</description>
+                <message>Authentication is required for suspending the system while other users are logged in.</message>
+                <message xml:lang="de">Legitimierung ist zum Versetzen des Systems in Bereitschaft notwendig, während andere Benutzer angemeldet sind.</message>
+                <message xml:lang="el">Απαιτείται πιστοποίηση για αναστολή του συστήματος ενώ άλλοι χρήστες είναι συνδεμένοι.</message>
+                <message xml:lang="fr">Authentification requise pour mettre le système en veille alors que d'autres utilisateurs sont connectés.</message>
+                <message xml:lang="it">Autenticazione richiesta per sospendere il sistema mentre altri utenti sono connessi.</message>
+                <message xml:lang="pl">Wymagane jest uwierzytelnienie, aby uśpić system, kiedy są zalogowani inni użytkownicy.</message>
+                <message xml:lang="ru">Чтобы перевести систему в ждущий режим, несмотря на то, что в ней работают другие пользователи, необходимо пройти аутентификацию.</message>
+                <defaults>
+                        <allow_any>auth_admin_keep</allow_any>
+                        <allow_inactive>auth_admin_keep</allow_inactive>
+                        <allow_active>yes</allow_active>
+                </defaults>
+                <annotate key="org.freedesktop.policykit.imply">org.freedesktop.login1.suspend</annotate>
+        </action>
+
+        <action id="org.freedesktop.login1.suspend-ignore-inhibit">
+                <description>Suspend the system while an application asked to inhibit it</description>
+                <description xml:lang="de">Das System in Bereitschaft versetzen, während eine Anwendung anfordert dies zu unterbinden</description>
+                <description xml:lang="el">Αναστολή του συστήματος ενώ μια εφαρμογή ζήτησε να αποτραπεί</description>
+                <description xml:lang="fr">Mettre le système en veille alors qu'une application a demandé de l'empêcher</description>
+                <description xml:lang="it">Sospendere il sistema nonostante l'inibizione di una applicazione</description>
+                <description xml:lang="pl">Uśpienie systemu, kiedy program poprosił o jego wstrzymanie</description>
+                <description xml:lang="ru">Перевести систему в ждущий режим, несмотря на то, что приложение запросило блокировку</description>
+                <message>Authentication is required for suspending the system while an application asked to inhibit it.</message>
+                <message xml:lang="de">Legitimierung ist zum Versetzen des Systems in Bereitschaft notwendig, während eine Anwendung anfordert dies zu unterbinden.</message>
+                <message xml:lang="el">Απαιτείται πιστοποίηση για αναστολή του συστήματος ενώ μια εφαρμογή ζήτησε να αποτραπεί.</message>
+                <message xml:lang="fr">Authentification requise pour mettre le système en veille alors qu'une application a demandé de l'empêcher.</message>
+                <message xml:lang="it">Autenticazione richiesta per sospendere il sistema nonostante l'inibizione di una applicazione.</message>
+                <message xml:lang="pl">Wymagane jest uwierzytelnienie, aby uśpić system, kiedy program zażądał jego wstrzymania.</message>
+                <message xml:lang="ru">Чтобы перевести систему в ждущий режим, несмотря на то, что приложение запросило блокировку, необходимо пройти аутентификацию.</message>
+                <defaults>
+                        <allow_any>auth_admin_keep</allow_any>
+                        <allow_inactive>auth_admin_keep</allow_inactive>
+                        <allow_active>auth_admin_keep</allow_active>
+                </defaults>
+                <annotate key="org.freedesktop.policykit.imply">org.freedesktop.login1.suspend</annotate>
+        </action>
+
+        <action id="org.freedesktop.login1.hibernate">
+                <description>Hibernate the system</description>
+                <description xml:lang="de">Den Ruhezustand des Systems aktivieren</description>
+                <description xml:lang="el">Αδρανοποίηση του συτήματος</description>
+                <description xml:lang="fr">Mettre le système en hibernation</description>
+                <description xml:lang="it">Ibernare il sistema</description>
+                <description xml:lang="pl">Hibernacja systemu</description>
+                <description xml:lang="ru">Перевести систему в спящий режим</description>
+                <message>Authentication is required for hibernating the system.</message>
+                <message xml:lang="de">Legitimierung ist zum Aktivieren des Ruhezustands des Systems notwendig.</message>
+                <message xml:lang="el">Απαιτείται πιστοποίηση για αδρανοποίηση του συστήματος.</message>
+                <message xml:lang="fr">Authentification requise pour mettre le système en hibernation.</message>
+                <message xml:lang="it">Autenticazione richiesta per ibernare il sistema.</message>
+                <message xml:lang="pl">Wymagane jest uwierzytelnienie, aby zahibernować system.</message>
+                <message xml:lang="ru">Чтобы перевести систему в спящий режим, необходимо пройти аутентификацию.</message>
+                <defaults>
+                        <allow_any>auth_admin_keep</allow_any>
+                        <allow_inactive>auth_admin_keep</allow_inactive>
+                        <allow_active>yes</allow_active>
+                </defaults>
+        </action>
+
+        <action id="org.freedesktop.login1.hibernate-multiple-sessions">
+                <description>Hibernate the system while other users are logged in</description>
+                <description xml:lang="de">Den Ruhezustand des Systems aktivieren, während andere Benutzer angemeldet sind</description>
+                <description xml:lang="el">Αδρανοποίηση του συστήματος ενώ άλλοι χρήστες είναι συνδεμένοι</description>
+                <description xml:lang="fr">Mettre le système en hibernation alors que d'autres utilisateurs sont connectés</description>
+                <description xml:lang="it">Ibernare il sistema mentre altri utenti sono connessi</description>
+                <description xml:lang="pl">Hibernacja systemu, kiedy są zalogowani inni użytkownicy</description>
+                <description xml:lang="ru">Перевести систему в спящий режим, несмотря на то, что в ней работают другие пользователи</description>
+                <message>Authentication is required for hibernating the system while other users are logged in.</message>
+                <message xml:lang="de">Legitimierung ist zum Aktivieren des Ruhezustands des Systems notwendig, während andere Benutzer angemeldet sind.</message>
+                <message xml:lang="el">Απαιτείται πιστοποίηση για αδρανοποίηση του συστήματος ενώ άλλοι χρήστες είναι συνδεμένοι.</message>
+                <message xml:lang="fr">Authentification requise pour mettre le système en hibernation alors que d'autres utilisateurs sont connectés.</message>
+                <message xml:lang="it">Autenticazione richiesta per ibernare il sistema mentre altri utenti sono connessi.</message>
+                <message xml:lang="pl">Wymagane jest uwierzytelnienie, aby zahibernować system, kiedy są zalogowani inni użytkownicy.</message>
+                <message xml:lang="ru">Чтобы перевести систему в спящий режим, несмотря на то, что в ней работают другие пользователи, необходимо пройти аутентификацию.</message>
+                <defaults>
+                        <allow_any>auth_admin_keep</allow_any>
+                        <allow_inactive>auth_admin_keep</allow_inactive>
+                        <allow_active>yes</allow_active>
+                </defaults>
+                <annotate key="org.freedesktop.policykit.imply">org.freedesktop.login1.hibernate</annotate>
+        </action>
+
+        <action id="org.freedesktop.login1.hibernate-ignore-inhibit">
+                <description>Hibernate the system while an application asked to inhibit it</description>
+                <description xml:lang="de">Das System in den Ruhezustand versetzen, während eine Anwendung wünscht dies zu verhindern</description>
+                <description xml:lang="el">Αδρανοποίηση του συστήματος ενώ μια εφαρμογή ζήτησε να αποτραπεί</description>
+                <description xml:lang="fr">Mettre le système en hibernation alors qu'une application a demandé de l'empêcher</description>
+                <description xml:lang="it">Ibernare il sistema nonostante l'inibizione di una applicazione</description>
+                <description xml:lang="pl">Hibernacja systemu, kiedy program zażądał jej wstrzymania</description>
+                <description xml:lang="ru">Перевести систему в спящий режим, несмотря на то, что приложение запросило блокировку</description>
+                <message>Authentication is required for hibernating the system while an application asked to inhibit it.</message>
+                <message xml:lang="de">Legitimierung ist zum Versetzen des System in den Ruhezustand notwendig, während eine Anwendung wünscht dies zu verhindern.</message>
+                <message xml:lang="el">Απαιτείται πιστοποίηση για αδρανοποίηση του συστήματος ενώ μια εφαρμογή ζήτησε να αποτραπεί.</message>
+                <message xml:lang="fr">Authentification requise pour mettre le système en hibernation alors qu'une application a demandé de l'empêcher.</message>
+                <message xml:lang="it">Autenticazione richiesta per ibernare il sistema nonostante l'inibizione di una applicazione.</message>
+                <message xml:lang="pl">Wymagane jest uwierzytelnienie, aby zahibernować system, kiedy program zażądał jej wstrzymania.</message>
+                <message xml:lang="ru">Чтобы перевести систему в спящий режим, несмотря на то, что приложение запросило блокировку, необходимо пройти аутентификацию.</message>
+                <defaults>
+                        <allow_any>auth_admin_keep</allow_any>
+                        <allow_inactive>auth_admin_keep</allow_inactive>
+                        <allow_active>auth_admin_keep</allow_active>
+                </defaults>
+                <annotate key="org.freedesktop.policykit.imply">org.freedesktop.login1.hibernate</annotate>
+        </action>
+
+</policyconfig>
\ No newline at end of file
diff --git a/src/login/pam-module.c b/src/login/pam-module.c
deleted file mode 100644 (file)
index 262621d..0000000
+++ /dev/null
@@ -1,548 +0,0 @@
-/*-*- Mode: C; c-basic-offset: 8; indent-tabs-mode: nil -*-*/
-
-/***
-  This file is part of systemd.
-
-  Copyright 2010 Lennart Poettering
-
-  systemd is free software; you can redistribute it and/or modify it
-  under the terms of the GNU Lesser General Public License as published by
-  the Free Software Foundation; either version 2.1 of the License, or
-  (at your option) any later version.
-
-  systemd is distributed in the hope that it will be useful, but
-  WITHOUT ANY WARRANTY; without even the implied warranty of
-  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-  Lesser General Public License for more details.
-
-  You should have received a copy of the GNU Lesser General Public License
-  along with systemd; If not, see <http://www.gnu.org/licenses/>.
-***/
-
-#include <errno.h>
-#include <fcntl.h>
-#include <sys/file.h>
-#include <pwd.h>
-#include <endian.h>
-#include <sys/capability.h>
-
-#include <security/pam_modules.h>
-#include <security/_pam_macros.h>
-#include <security/pam_modutil.h>
-#include <security/pam_ext.h>
-#include <security/pam_misc.h>
-
-#include "util.h"
-#include "audit.h"
-#include "macro.h"
-#include "strv.h"
-#include "bus-util.h"
-#include "def.h"
-#include "socket-util.h"
-#include "fileio.h"
-#include "bus-error.h"
-
-static int parse_argv(
-                pam_handle_t *handle,
-                int argc, const char **argv,
-                const char **class,
-                const char **type,
-                bool *debug) {
-
-        unsigned i;
-
-        assert(argc >= 0);
-        assert(argc == 0 || argv);
-
-        for (i = 0; i < (unsigned) argc; i++) {
-                if (startswith(argv[i], "class=")) {
-                        if (class)
-                                *class = argv[i] + 6;
-
-                } else if (startswith(argv[i], "type=")) {
-                        if (type)
-                                *type = argv[i] + 5;
-
-                } else if (streq(argv[i], "debug")) {
-                        if (debug)
-                                *debug = true;
-
-                } else if (startswith(argv[i], "debug=")) {
-                        int k;
-
-                        k = parse_boolean(argv[i] + 6);
-                        if (k < 0)
-                                pam_syslog(handle, LOG_WARNING, "Failed to parse debug= argument, ignoring.");
-                        else if (debug)
-                                *debug = k;
-
-                } else
-                        pam_syslog(handle, LOG_WARNING, "Unknown parameter '%s', ignoring", argv[i]);
-        }
-
-        return 0;
-}
-
-static int get_user_data(
-                pam_handle_t *handle,
-                const char **ret_username,
-                struct passwd **ret_pw) {
-
-        const char *username = NULL;
-        struct passwd *pw = NULL;
-        int r;
-
-        assert(handle);
-        assert(ret_username);
-        assert(ret_pw);
-
-        r = pam_get_user(handle, &username, NULL);
-        if (r != PAM_SUCCESS) {
-                pam_syslog(handle, LOG_ERR, "Failed to get user name.");
-                return r;
-        }
-
-        if (isempty(username)) {
-                pam_syslog(handle, LOG_ERR, "User name not valid.");
-                return PAM_AUTH_ERR;
-        }
-
-        pw = pam_modutil_getpwnam(handle, username);
-        if (!pw) {
-                pam_syslog(handle, LOG_ERR, "Failed to get user data.");
-                return PAM_USER_UNKNOWN;
-        }
-
-        *ret_pw = pw;
-        *ret_username = username ? username : pw->pw_name;
-
-        return PAM_SUCCESS;
-}
-
-static int get_seat_from_display(const char *display, const char **seat, uint32_t *vtnr) {
-        union sockaddr_union sa = {
-                .un.sun_family = AF_UNIX,
-        };
-        _cleanup_free_ char *p = NULL, *tty = NULL;
-        _cleanup_close_ int fd = -1;
-        struct ucred ucred;
-        int v, r;
-
-        assert(display);
-        assert(vtnr);
-
-        /* We deduce the X11 socket from the display name, then use
-         * SO_PEERCRED to determine the X11 server process, ask for
-         * the controlling tty of that and if it's a VC then we know
-         * the seat and the virtual terminal. Sounds ugly, is only
-         * semi-ugly. */
-
-        r = socket_from_display(display, &p);
-        if (r < 0)
-                return r;
-        strncpy(sa.un.sun_path, p, sizeof(sa.un.sun_path)-1);
-
-        fd = socket(AF_UNIX, SOCK_STREAM|SOCK_CLOEXEC, 0);
-        if (fd < 0)
-                return -errno;
-
-        if (connect(fd, &sa.sa, offsetof(struct sockaddr_un, sun_path) + strlen(sa.un.sun_path)) < 0)
-                return -errno;
-
-        r = getpeercred(fd, &ucred);
-        if (r < 0)
-                return r;
-
-        r = get_ctty(ucred.pid, NULL, &tty);
-        if (r < 0)
-                return r;
-
-        v = vtnr_from_tty(tty);
-        if (v < 0)
-                return v;
-        else if (v == 0)
-                return -ENOENT;
-
-        if (seat)
-                *seat = "seat0";
-        *vtnr = (uint32_t) v;
-
-        return 0;
-}
-
-static int export_legacy_dbus_address(
-                pam_handle_t *handle,
-                uid_t uid,
-                const char *runtime) {
-
-#ifdef ENABLE_KDBUS
-        _cleanup_free_ char *s = NULL;
-        int r;
-
-        /* skip export if kdbus is not active */
-        if (access("/dev/kdbus", F_OK) < 0)
-                return PAM_SUCCESS;
-
-        if (asprintf(&s, KERNEL_USER_BUS_FMT ";" UNIX_USER_BUS_FMT,
-                     uid, runtime) < 0) {
-                pam_syslog(handle, LOG_ERR, "Failed to set bus variable.");
-                return PAM_BUF_ERR;
-        }
-
-        r = pam_misc_setenv(handle, "DBUS_SESSION_BUS_ADDRESS", s, 0);
-        if (r != PAM_SUCCESS) {
-                pam_syslog(handle, LOG_ERR, "Failed to set bus variable.");
-                return r;
-        }
-#endif
-        return PAM_SUCCESS;
-}
-
-_public_ PAM_EXTERN int pam_sm_open_session(
-                pam_handle_t *handle,
-                int flags,
-                int argc, const char **argv) {
-
-        _cleanup_bus_error_free_ sd_bus_error error = SD_BUS_ERROR_NULL;
-        _cleanup_bus_message_unref_ sd_bus_message *reply = NULL;
-        const char
-                *username, *id, *object_path, *runtime_path,
-                *service = NULL,
-                *tty = NULL, *display = NULL,
-                *remote_user = NULL, *remote_host = NULL,
-                *seat = NULL,
-                *type = NULL, *class = NULL,
-                *class_pam = NULL, *type_pam = NULL, *cvtnr = NULL, *desktop = NULL;
-        _cleanup_bus_unref_ sd_bus *bus = NULL;
-        int session_fd = -1, existing, r;
-        bool debug = false, remote;
-        struct passwd *pw;
-        uint32_t vtnr = 0;
-        uid_t original_uid;
-
-        assert(handle);
-
-        /* Make this a NOP on non-logind systems */
-        if (!logind_running())
-                return PAM_SUCCESS;
-
-        if (parse_argv(handle,
-                       argc, argv,
-                       &class_pam,
-                       &type_pam,
-                       &debug) < 0)
-                return PAM_SESSION_ERR;
-
-        if (debug)
-                pam_syslog(handle, LOG_DEBUG, "pam-systemd initializing");
-
-        r = get_user_data(handle, &username, &pw);
-        if (r != PAM_SUCCESS) {
-                pam_syslog(handle, LOG_ERR, "Failed to get user data.");
-                return r;
-        }
-
-        /* Make sure we don't enter a loop by talking to
-         * systemd-logind when it is actually waiting for the
-         * background to finish start-up. If the service is
-         * "systemd-user" we simply set XDG_RUNTIME_DIR and
-         * leave. */
-
-        pam_get_item(handle, PAM_SERVICE, (const void**) &service);
-        if (streq_ptr(service, "systemd-user")) {
-                _cleanup_free_ char *p = NULL, *rt = NULL;
-
-                if (asprintf(&p, "/run/systemd/users/"UID_FMT, pw->pw_uid) < 0)
-                        return PAM_BUF_ERR;
-
-                r = parse_env_file(p, NEWLINE,
-                                   "RUNTIME", &rt,
-                                   NULL);
-                if (r < 0 && r != -ENOENT)
-                        return PAM_SESSION_ERR;
-
-                if (rt)  {
-                        r = pam_misc_setenv(handle, "XDG_RUNTIME_DIR", rt, 0);
-                        if (r != PAM_SUCCESS) {
-                                pam_syslog(handle, LOG_ERR, "Failed to set runtime dir.");
-                                return r;
-                        }
-
-                        r = export_legacy_dbus_address(handle, pw->pw_uid, rt);
-                        if (r != PAM_SUCCESS)
-                                return r;
-                }
-
-                return PAM_SUCCESS;
-        }
-
-        /* Otherwise, we ask logind to create a session for us */
-
-        pam_get_item(handle, PAM_XDISPLAY, (const void**) &display);
-        pam_get_item(handle, PAM_TTY, (const void**) &tty);
-        pam_get_item(handle, PAM_RUSER, (const void**) &remote_user);
-        pam_get_item(handle, PAM_RHOST, (const void**) &remote_host);
-
-        seat = pam_getenv(handle, "XDG_SEAT");
-        if (isempty(seat))
-                seat = getenv("XDG_SEAT");
-
-        cvtnr = pam_getenv(handle, "XDG_VTNR");
-        if (isempty(cvtnr))
-                cvtnr = getenv("XDG_VTNR");
-
-        type = pam_getenv(handle, "XDG_SESSION_TYPE");
-        if (isempty(type))
-                type = getenv("XDG_SESSION_TYPE");
-        if (isempty(type))
-                type = type_pam;
-
-        class = pam_getenv(handle, "XDG_SESSION_CLASS");
-        if (isempty(class))
-                class = getenv("XDG_SESSION_CLASS");
-        if (isempty(class))
-                class = class_pam;
-
-        desktop = pam_getenv(handle, "XDG_SESSION_DESKTOP");
-        if (isempty(desktop))
-                desktop = getenv("XDG_SESSION_DESKTOP");
-
-        tty = strempty(tty);
-
-        if (strchr(tty, ':')) {
-                /* A tty with a colon is usually an X11 display,
-                 * placed there to show up in utmp. We rearrange
-                 * things and don't pretend that an X display was a
-                 * tty. */
-
-                if (isempty(display))
-                        display = tty;
-                tty = NULL;
-        } else if (streq(tty, "cron")) {
-                /* cron has been setting PAM_TTY to "cron" for a very
-                 * long time and it probably shouldn't stop doing that
-                 * for compatibility reasons. */
-                type = "unspecified";
-                class = "background";
-                tty = NULL;
-        } else if (streq(tty, "ssh")) {
-                /* ssh has been setting PAM_TTY to "ssh" for a very
-                 * long time and probably shouldn't stop doing that
-                 * for compatibility reasons. */
-                type ="tty";
-                class = "user";
-                tty = NULL;
-        }
-
-        /* If this fails vtnr will be 0, that's intended */
-        if (!isempty(cvtnr))
-                safe_atou32(cvtnr, &vtnr);
-
-        if (!isempty(display) && !vtnr) {
-                if (isempty(seat))
-                        get_seat_from_display(display, &seat, &vtnr);
-                else if (streq(seat, "seat0"))
-                        get_seat_from_display(display, NULL, &vtnr);
-        }
-
-        if (seat && !streq(seat, "seat0") && vtnr != 0) {
-                pam_syslog(handle, LOG_DEBUG, "Ignoring vtnr %d for %s which is not seat0", vtnr, seat);
-                vtnr = 0;
-        }
-
-        if (isempty(type))
-                type = !isempty(display) ? "x11" :
-                           !isempty(tty) ? "tty" : "unspecified";
-
-        if (isempty(class))
-                class = streq(type, "unspecified") ? "background" : "user";
-
-        remote = !isempty(remote_host) &&
-                !streq_ptr(remote_host, "localhost") &&
-                !streq_ptr(remote_host, "localhost.localdomain");
-
-        /* Talk to logind over the message bus */
-
-        r = sd_bus_open_system(&bus);
-        if (r < 0) {
-                pam_syslog(handle, LOG_ERR, "Failed to connect to system bus: %s", strerror(-r));
-                return PAM_SESSION_ERR;
-        }
-
-        if (debug)
-                pam_syslog(handle, LOG_DEBUG, "Asking logind to create session: "
-                           "uid=%u pid=%u service=%s type=%s class=%s desktop=%s seat=%s vtnr=%u tty=%s display=%s remote=%s remote_user=%s remote_host=%s",
-                           pw->pw_uid, getpid(),
-                           strempty(service),
-                           type, class, strempty(desktop),
-                           strempty(seat), vtnr, strempty(tty), strempty(display),
-                           yes_no(remote), strempty(remote_user), strempty(remote_host));
-
-        r = sd_bus_call_method(bus,
-                               "org.freedesktop.login1",
-                               "/org/freedesktop/login1",
-                               "org.freedesktop.login1.Manager",
-                               "CreateSession",
-                               &error,
-                               &reply,
-                               "uusssssussbssa(sv)",
-                               (uint32_t) pw->pw_uid,
-                               (uint32_t) getpid(),
-                               service,
-                               type,
-                               class,
-                               desktop,
-                               seat,
-                               vtnr,
-                               tty,
-                               display,
-                               remote,
-                               remote_user,
-                               remote_host,
-                               0);
-        if (r < 0) {
-                pam_syslog(handle, LOG_ERR, "Failed to create session: %s", bus_error_message(&error, r));
-                return PAM_SYSTEM_ERR;
-        }
-
-        r = sd_bus_message_read(reply,
-                                "soshusub",
-                                &id,
-                                &object_path,
-                                &runtime_path,
-                                &session_fd,
-                                &original_uid,
-                                &seat,
-                                &vtnr,
-                                &existing);
-        if (r < 0) {
-                pam_syslog(handle, LOG_ERR, "Failed to parse message: %s", strerror(-r));
-                return PAM_SESSION_ERR;
-        }
-
-        if (debug)
-                pam_syslog(handle, LOG_DEBUG, "Reply from logind: "
-                           "id=%s object_path=%s runtime_path=%s session_fd=%d seat=%s vtnr=%u original_uid=%u",
-                           id, object_path, runtime_path, session_fd, seat, vtnr, original_uid);
-
-        r = pam_misc_setenv(handle, "XDG_SESSION_ID", id, 0);
-        if (r != PAM_SUCCESS) {
-                pam_syslog(handle, LOG_ERR, "Failed to set session id.");
-                return r;
-        }
-
-        if (original_uid == pw->pw_uid) {
-                /* Don't set $XDG_RUNTIME_DIR if the user we now
-                 * authenticated for does not match the original user
-                 * of the session. We do this in order not to result
-                 * in privileged apps clobbering the runtime directory
-                 * unnecessarily. */
-
-                r = pam_misc_setenv(handle, "XDG_RUNTIME_DIR", runtime_path, 0);
-                if (r != PAM_SUCCESS) {
-                        pam_syslog(handle, LOG_ERR, "Failed to set runtime dir.");
-                        return r;
-                }
-
-                r = export_legacy_dbus_address(handle, pw->pw_uid, runtime_path);
-                if (r != PAM_SUCCESS)
-                        return r;
-        }
-
-        if (!isempty(seat)) {
-                r = pam_misc_setenv(handle, "XDG_SEAT", seat, 0);
-                if (r != PAM_SUCCESS) {
-                        pam_syslog(handle, LOG_ERR, "Failed to set seat.");
-                        return r;
-                }
-        }
-
-        if (vtnr > 0) {
-                char buf[DECIMAL_STR_MAX(vtnr)];
-                sprintf(buf, "%u", vtnr);
-
-                r = pam_misc_setenv(handle, "XDG_VTNR", buf, 0);
-                if (r != PAM_SUCCESS) {
-                        pam_syslog(handle, LOG_ERR, "Failed to set virtual terminal number.");
-                        return r;
-                }
-        }
-
-        r = pam_set_data(handle, "systemd.existing", INT_TO_PTR(!!existing), NULL);
-        if (r != PAM_SUCCESS) {
-                pam_syslog(handle, LOG_ERR, "Failed to install existing flag.");
-                return r;
-        }
-
-        if (session_fd >= 0) {
-                session_fd = fcntl(session_fd, F_DUPFD_CLOEXEC, 3);
-                if (session_fd < 0) {
-                        pam_syslog(handle, LOG_ERR, "Failed to dup session fd: %m");
-                        return PAM_SESSION_ERR;
-                }
-
-                r = pam_set_data(handle, "systemd.session-fd", INT_TO_PTR(session_fd+1), NULL);
-                if (r != PAM_SUCCESS) {
-                        pam_syslog(handle, LOG_ERR, "Failed to install session fd.");
-                        safe_close(session_fd);
-                        return r;
-                }
-        }
-
-        return PAM_SUCCESS;
-}
-
-_public_ PAM_EXTERN int pam_sm_close_session(
-                pam_handle_t *handle,
-                int flags,
-                int argc, const char **argv) {
-
-        _cleanup_bus_error_free_ sd_bus_error error = SD_BUS_ERROR_NULL;
-        _cleanup_bus_unref_ sd_bus *bus = NULL;
-        const void *existing = NULL;
-        const char *id;
-        int r;
-
-        assert(handle);
-
-        /* Only release session if it wasn't pre-existing when we
-         * tried to create it */
-        pam_get_data(handle, "systemd.existing", &existing);
-
-        id = pam_getenv(handle, "XDG_SESSION_ID");
-        if (id && !existing) {
-
-                /* Before we go and close the FIFO we need to tell
-                 * logind that this is a clean session shutdown, so
-                 * that it doesn't just go and slaughter us
-                 * immediately after closing the fd */
-
-                r = sd_bus_open_system(&bus);
-                if (r < 0) {
-                        pam_syslog(handle, LOG_ERR, "Failed to connect to system bus: %s", strerror(-r));
-                        return PAM_SESSION_ERR;
-                }
-
-                r = sd_bus_call_method(bus,
-                                       "org.freedesktop.login1",
-                                       "/org/freedesktop/login1",
-                                       "org.freedesktop.login1.Manager",
-                                       "ReleaseSession",
-                                       &error,
-                                       NULL,
-                                       "s",
-                                       id);
-                if (r < 0) {
-                        pam_syslog(handle, LOG_ERR, "Failed to release session: %s", bus_error_message(&error, r));
-                        return PAM_SESSION_ERR;
-                }
-        }
-
-        /* Note that we are knowingly leaking the FIFO fd here. This
-         * way, logind can watch us die. If we closed it here it would
-         * not have any clue when that is completed. Given that one
-         * cannot really have multiple PAM sessions open from the same
-         * process this means we will leak one FD at max. */
-
-        return PAM_SUCCESS;
-}
diff --git a/src/login/pam_systemd.c b/src/login/pam_systemd.c
new file mode 100644 (file)
index 0000000..f522d6e
--- /dev/null
@@ -0,0 +1,546 @@
+/*-*- Mode: C; c-basic-offset: 8; indent-tabs-mode: nil -*-*/
+
+/***
+  This file is part of systemd.
+
+  Copyright 2010 Lennart Poettering
+
+  systemd is free software; you can redistribute it and/or modify it
+  under the terms of the GNU Lesser General Public License as published by
+  the Free Software Foundation; either version 2.1 of the License, or
+  (at your option) any later version.
+
+  systemd is distributed in the hope that it will be useful, but
+  WITHOUT ANY WARRANTY; without even the implied warranty of
+  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+  Lesser General Public License for more details.
+
+  You should have received a copy of the GNU Lesser General Public License
+  along with systemd; If not, see <http://www.gnu.org/licenses/>.
+***/
+
+#include <errno.h>
+#include <fcntl.h>
+#include <sys/file.h>
+#include <pwd.h>
+#include <endian.h>
+#include <sys/capability.h>
+
+#include <security/pam_modules.h>
+#include <security/_pam_macros.h>
+#include <security/pam_modutil.h>
+#include <security/pam_ext.h>
+#include <security/pam_misc.h>
+
+#include "util.h"
+#include "audit.h"
+#include "macro.h"
+#include "strv.h"
+#include "bus-util.h"
+#include "def.h"
+#include "socket-util.h"
+#include "fileio.h"
+#include "bus-error.h"
+
+static int parse_argv(
+                pam_handle_t *handle,
+                int argc, const char **argv,
+                const char **class,
+                const char **type,
+                bool *debug) {
+
+        unsigned i;
+
+        assert(argc >= 0);
+        assert(argc == 0 || argv);
+
+        for (i = 0; i < (unsigned) argc; i++) {
+                if (startswith(argv[i], "class=")) {
+                        if (class)
+                                *class = argv[i] + 6;
+
+                } else if (startswith(argv[i], "type=")) {
+                        if (type)
+                                *type = argv[i] + 5;
+
+                } else if (streq(argv[i], "debug")) {
+                        if (debug)
+                                *debug = true;
+
+                } else if (startswith(argv[i], "debug=")) {
+                        int k;
+
+                        k = parse_boolean(argv[i] + 6);
+                        if (k < 0)
+                                pam_syslog(handle, LOG_WARNING, "Failed to parse debug= argument, ignoring.");
+                        else if (debug)
+                                *debug = k;
+
+                } else
+                        pam_syslog(handle, LOG_WARNING, "Unknown parameter '%s', ignoring", argv[i]);
+        }
+
+        return 0;
+}
+
+static int get_user_data(
+                pam_handle_t *handle,
+                const char **ret_username,
+                struct passwd **ret_pw) {
+
+        const char *username = NULL;
+        struct passwd *pw = NULL;
+        int r;
+
+        assert(handle);
+        assert(ret_username);
+        assert(ret_pw);
+
+        r = pam_get_user(handle, &username, NULL);
+        if (r != PAM_SUCCESS) {
+                pam_syslog(handle, LOG_ERR, "Failed to get user name.");
+                return r;
+        }
+
+        if (isempty(username)) {
+                pam_syslog(handle, LOG_ERR, "User name not valid.");
+                return PAM_AUTH_ERR;
+        }
+
+        pw = pam_modutil_getpwnam(handle, username);
+        if (!pw) {
+                pam_syslog(handle, LOG_ERR, "Failed to get user data.");
+                return PAM_USER_UNKNOWN;
+        }
+
+        *ret_pw = pw;
+        *ret_username = username ? username : pw->pw_name;
+
+        return PAM_SUCCESS;
+}
+
+static int get_seat_from_display(const char *display, const char **seat, uint32_t *vtnr) {
+        union sockaddr_union sa = {
+                .un.sun_family = AF_UNIX,
+        };
+        _cleanup_free_ char *p = NULL, *tty = NULL;
+        _cleanup_close_ int fd = -1;
+        struct ucred ucred;
+        int v, r;
+
+        assert(display);
+        assert(vtnr);
+
+        /* We deduce the X11 socket from the display name, then use
+         * SO_PEERCRED to determine the X11 server process, ask for
+         * the controlling tty of that and if it's a VC then we know
+         * the seat and the virtual terminal. Sounds ugly, is only
+         * semi-ugly. */
+
+        r = socket_from_display(display, &p);
+        if (r < 0)
+                return r;
+        strncpy(sa.un.sun_path, p, sizeof(sa.un.sun_path)-1);
+
+        fd = socket(AF_UNIX, SOCK_STREAM|SOCK_CLOEXEC, 0);
+        if (fd < 0)
+                return -errno;
+
+        if (connect(fd, &sa.sa, offsetof(struct sockaddr_un, sun_path) + strlen(sa.un.sun_path)) < 0)
+                return -errno;
+
+        r = getpeercred(fd, &ucred);
+        if (r < 0)
+                return r;
+
+        r = get_ctty(ucred.pid, NULL, &tty);
+        if (r < 0)
+                return r;
+
+        v = vtnr_from_tty(tty);
+        if (v < 0)
+                return v;
+        else if (v == 0)
+                return -ENOENT;
+
+        if (seat)
+                *seat = "seat0";
+        *vtnr = (uint32_t) v;
+
+        return 0;
+}
+
+static int export_legacy_dbus_address(
+                pam_handle_t *handle,
+                uid_t uid,
+                const char *runtime) {
+
+#ifdef ENABLE_KDBUS
+        _cleanup_free_ char *s = NULL;
+        int r;
+
+        /* skip export if kdbus is not active */
+        if (access("/dev/kdbus", F_OK) < 0)
+                return PAM_SUCCESS;
+
+        if (asprintf(&s, KERNEL_USER_BUS_FMT ";" UNIX_USER_BUS_FMT,
+                     uid, runtime) < 0) {
+                pam_syslog(handle, LOG_ERR, "Failed to set bus variable.");
+                return PAM_BUF_ERR;
+        }
+
+        r = pam_misc_setenv(handle, "DBUS_SESSION_BUS_ADDRESS", s, 0);
+        if (r != PAM_SUCCESS) {
+                pam_syslog(handle, LOG_ERR, "Failed to set bus variable.");
+                return r;
+        }
+#endif
+        return PAM_SUCCESS;
+}
+
+_public_ PAM_EXTERN int pam_sm_open_session(
+                pam_handle_t *handle,
+                int flags,
+                int argc, const char **argv) {
+
+        _cleanup_bus_error_free_ sd_bus_error error = SD_BUS_ERROR_NULL;
+        _cleanup_bus_message_unref_ sd_bus_message *reply = NULL;
+        const char
+                *username, *id, *object_path, *runtime_path,
+                *service = NULL,
+                *tty = NULL, *display = NULL,
+                *remote_user = NULL, *remote_host = NULL,
+                *seat = NULL,
+                *type = NULL, *class = NULL,
+                *class_pam = NULL, *type_pam = NULL, *cvtnr = NULL, *desktop = NULL;
+        _cleanup_bus_unref_ sd_bus *bus = NULL;
+        int session_fd = -1, existing, r;
+        bool debug = false, remote;
+        struct passwd *pw;
+        uint32_t vtnr = 0;
+        uid_t original_uid;
+
+        assert(handle);
+
+        /* Make this a NOP on non-logind systems */
+        if (!logind_running())
+                return PAM_SUCCESS;
+
+        if (parse_argv(handle,
+                       argc, argv,
+                       &class_pam,
+                       &type_pam,
+                       &debug) < 0)
+                return PAM_SESSION_ERR;
+
+        if (debug)
+                pam_syslog(handle, LOG_DEBUG, "pam-systemd initializing");
+
+        r = get_user_data(handle, &username, &pw);
+        if (r != PAM_SUCCESS) {
+                pam_syslog(handle, LOG_ERR, "Failed to get user data.");
+                return r;
+        }
+
+        /* Make sure we don't enter a loop by talking to
+         * systemd-logind when it is actually waiting for the
+         * background to finish start-up. If the service is
+         * "systemd-user" we simply set XDG_RUNTIME_DIR and
+         * leave. */
+
+        pam_get_item(handle, PAM_SERVICE, (const void**) &service);
+        if (streq_ptr(service, "systemd-user")) {
+                _cleanup_free_ char *p = NULL, *rt = NULL;
+
+                if (asprintf(&p, "/run/systemd/users/"UID_FMT, pw->pw_uid) < 0)
+                        return PAM_BUF_ERR;
+
+                r = parse_env_file(p, NEWLINE,
+                                   "RUNTIME", &rt,
+                                   NULL);
+                if (r < 0 && r != -ENOENT)
+                        return PAM_SESSION_ERR;
+
+                if (rt)  {
+                        r = pam_misc_setenv(handle, "XDG_RUNTIME_DIR", rt, 0);
+                        if (r != PAM_SUCCESS) {
+                                pam_syslog(handle, LOG_ERR, "Failed to set runtime dir.");
+                                return r;
+                        }
+
+                        r = export_legacy_dbus_address(handle, pw->pw_uid, rt);
+                        if (r != PAM_SUCCESS)
+                                return r;
+                }
+
+                return PAM_SUCCESS;
+        }
+
+        /* Otherwise, we ask logind to create a session for us */
+
+        pam_get_item(handle, PAM_XDISPLAY, (const void**) &display);
+        pam_get_item(handle, PAM_TTY, (const void**) &tty);
+        pam_get_item(handle, PAM_RUSER, (const void**) &remote_user);
+        pam_get_item(handle, PAM_RHOST, (const void**) &remote_host);
+
+        seat = pam_getenv(handle, "XDG_SEAT");
+        if (isempty(seat))
+                seat = getenv("XDG_SEAT");
+
+        cvtnr = pam_getenv(handle, "XDG_VTNR");
+        if (isempty(cvtnr))
+                cvtnr = getenv("XDG_VTNR");
+
+        type = pam_getenv(handle, "XDG_SESSION_TYPE");
+        if (isempty(type))
+                type = getenv("XDG_SESSION_TYPE");
+        if (isempty(type))
+                type = type_pam;
+
+        class = pam_getenv(handle, "XDG_SESSION_CLASS");
+        if (isempty(class))
+                class = getenv("XDG_SESSION_CLASS");
+        if (isempty(class))
+                class = class_pam;
+
+        desktop = pam_getenv(handle, "XDG_SESSION_DESKTOP");
+        if (isempty(desktop))
+                desktop = getenv("XDG_SESSION_DESKTOP");
+
+        tty = strempty(tty);
+
+        if (strchr(tty, ':')) {
+                /* A tty with a colon is usually an X11 display,
+                 * placed there to show up in utmp. We rearrange
+                 * things and don't pretend that an X display was a
+                 * tty. */
+
+                if (isempty(display))
+                        display = tty;
+                tty = NULL;
+        } else if (streq(tty, "cron")) {
+                /* cron has been setting PAM_TTY to "cron" for a very
+                 * long time and it probably shouldn't stop doing that
+                 * for compatibility reasons. */
+                type = "unspecified";
+                class = "background";
+                tty = NULL;
+        } else if (streq(tty, "ssh")) {
+                /* ssh has been setting PAM_TTY to "ssh" for a very
+                 * long time and probably shouldn't stop doing that
+                 * for compatibility reasons. */
+                type ="tty";
+                class = "user";
+                tty = NULL;
+        }
+
+        /* If this fails vtnr will be 0, that's intended */
+        if (!isempty(cvtnr))
+                safe_atou32(cvtnr, &vtnr);
+
+        if (!isempty(display) && !vtnr) {
+                if (isempty(seat))
+                        get_seat_from_display(display, &seat, &vtnr);
+                else if (streq(seat, "seat0"))
+                        get_seat_from_display(display, NULL, &vtnr);
+        }
+
+        if (seat && !streq(seat, "seat0") && vtnr != 0) {
+                pam_syslog(handle, LOG_DEBUG, "Ignoring vtnr %d for %s which is not seat0", vtnr, seat);
+                vtnr = 0;
+        }
+
+        if (isempty(type))
+                type = !isempty(display) ? "x11" :
+                           !isempty(tty) ? "tty" : "unspecified";
+
+        if (isempty(class))
+                class = streq(type, "unspecified") ? "background" : "user";
+
+        remote = !isempty(remote_host) && !is_localhost(remote_host);
+
+        /* Talk to logind over the message bus */
+
+        r = sd_bus_open_system(&bus);
+        if (r < 0) {
+                pam_syslog(handle, LOG_ERR, "Failed to connect to system bus: %s", strerror(-r));
+                return PAM_SESSION_ERR;
+        }
+
+        if (debug)
+                pam_syslog(handle, LOG_DEBUG, "Asking logind to create session: "
+                           "uid=%u pid=%u service=%s type=%s class=%s desktop=%s seat=%s vtnr=%u tty=%s display=%s remote=%s remote_user=%s remote_host=%s",
+                           pw->pw_uid, getpid(),
+                           strempty(service),
+                           type, class, strempty(desktop),
+                           strempty(seat), vtnr, strempty(tty), strempty(display),
+                           yes_no(remote), strempty(remote_user), strempty(remote_host));
+
+        r = sd_bus_call_method(bus,
+                               "org.freedesktop.login1",
+                               "/org/freedesktop/login1",
+                               "org.freedesktop.login1.Manager",
+                               "CreateSession",
+                               &error,
+                               &reply,
+                               "uusssssussbssa(sv)",
+                               (uint32_t) pw->pw_uid,
+                               (uint32_t) getpid(),
+                               service,
+                               type,
+                               class,
+                               desktop,
+                               seat,
+                               vtnr,
+                               tty,
+                               display,
+                               remote,
+                               remote_user,
+                               remote_host,
+                               0);
+        if (r < 0) {
+                pam_syslog(handle, LOG_ERR, "Failed to create session: %s", bus_error_message(&error, r));
+                return PAM_SYSTEM_ERR;
+        }
+
+        r = sd_bus_message_read(reply,
+                                "soshusub",
+                                &id,
+                                &object_path,
+                                &runtime_path,
+                                &session_fd,
+                                &original_uid,
+                                &seat,
+                                &vtnr,
+                                &existing);
+        if (r < 0) {
+                pam_syslog(handle, LOG_ERR, "Failed to parse message: %s", strerror(-r));
+                return PAM_SESSION_ERR;
+        }
+
+        if (debug)
+                pam_syslog(handle, LOG_DEBUG, "Reply from logind: "
+                           "id=%s object_path=%s runtime_path=%s session_fd=%d seat=%s vtnr=%u original_uid=%u",
+                           id, object_path, runtime_path, session_fd, seat, vtnr, original_uid);
+
+        r = pam_misc_setenv(handle, "XDG_SESSION_ID", id, 0);
+        if (r != PAM_SUCCESS) {
+                pam_syslog(handle, LOG_ERR, "Failed to set session id.");
+                return r;
+        }
+
+        if (original_uid == pw->pw_uid) {
+                /* Don't set $XDG_RUNTIME_DIR if the user we now
+                 * authenticated for does not match the original user
+                 * of the session. We do this in order not to result
+                 * in privileged apps clobbering the runtime directory
+                 * unnecessarily. */
+
+                r = pam_misc_setenv(handle, "XDG_RUNTIME_DIR", runtime_path, 0);
+                if (r != PAM_SUCCESS) {
+                        pam_syslog(handle, LOG_ERR, "Failed to set runtime dir.");
+                        return r;
+                }
+
+                r = export_legacy_dbus_address(handle, pw->pw_uid, runtime_path);
+                if (r != PAM_SUCCESS)
+                        return r;
+        }
+
+        if (!isempty(seat)) {
+                r = pam_misc_setenv(handle, "XDG_SEAT", seat, 0);
+                if (r != PAM_SUCCESS) {
+                        pam_syslog(handle, LOG_ERR, "Failed to set seat.");
+                        return r;
+                }
+        }
+
+        if (vtnr > 0) {
+                char buf[DECIMAL_STR_MAX(vtnr)];
+                sprintf(buf, "%u", vtnr);
+
+                r = pam_misc_setenv(handle, "XDG_VTNR", buf, 0);
+                if (r != PAM_SUCCESS) {
+                        pam_syslog(handle, LOG_ERR, "Failed to set virtual terminal number.");
+                        return r;
+                }
+        }
+
+        r = pam_set_data(handle, "systemd.existing", INT_TO_PTR(!!existing), NULL);
+        if (r != PAM_SUCCESS) {
+                pam_syslog(handle, LOG_ERR, "Failed to install existing flag.");
+                return r;
+        }
+
+        if (session_fd >= 0) {
+                session_fd = fcntl(session_fd, F_DUPFD_CLOEXEC, 3);
+                if (session_fd < 0) {
+                        pam_syslog(handle, LOG_ERR, "Failed to dup session fd: %m");
+                        return PAM_SESSION_ERR;
+                }
+
+                r = pam_set_data(handle, "systemd.session-fd", INT_TO_PTR(session_fd+1), NULL);
+                if (r != PAM_SUCCESS) {
+                        pam_syslog(handle, LOG_ERR, "Failed to install session fd.");
+                        safe_close(session_fd);
+                        return r;
+                }
+        }
+
+        return PAM_SUCCESS;
+}
+
+_public_ PAM_EXTERN int pam_sm_close_session(
+                pam_handle_t *handle,
+                int flags,
+                int argc, const char **argv) {
+
+        _cleanup_bus_error_free_ sd_bus_error error = SD_BUS_ERROR_NULL;
+        _cleanup_bus_unref_ sd_bus *bus = NULL;
+        const void *existing = NULL;
+        const char *id;
+        int r;
+
+        assert(handle);
+
+        /* Only release session if it wasn't pre-existing when we
+         * tried to create it */
+        pam_get_data(handle, "systemd.existing", &existing);
+
+        id = pam_getenv(handle, "XDG_SESSION_ID");
+        if (id && !existing) {
+
+                /* Before we go and close the FIFO we need to tell
+                 * logind that this is a clean session shutdown, so
+                 * that it doesn't just go and slaughter us
+                 * immediately after closing the fd */
+
+                r = sd_bus_open_system(&bus);
+                if (r < 0) {
+                        pam_syslog(handle, LOG_ERR, "Failed to connect to system bus: %s", strerror(-r));
+                        return PAM_SESSION_ERR;
+                }
+
+                r = sd_bus_call_method(bus,
+                                       "org.freedesktop.login1",
+                                       "/org/freedesktop/login1",
+                                       "org.freedesktop.login1.Manager",
+                                       "ReleaseSession",
+                                       &error,
+                                       NULL,
+                                       "s",
+                                       id);
+                if (r < 0) {
+                        pam_syslog(handle, LOG_ERR, "Failed to release session: %s", bus_error_message(&error, r));
+                        return PAM_SESSION_ERR;
+                }
+        }
+
+        /* Note that we are knowingly leaking the FIFO fd here. This
+         * way, logind can watch us die. If we closed it here it would
+         * not have any clue when that is completed. Given that one
+         * cannot really have multiple PAM sessions open from the same
+         * process this means we will leak one FD at max. */
+
+        return PAM_SUCCESS;
+}
diff --git a/src/login/pam_systemd.sym b/src/login/pam_systemd.sym
new file mode 100644 (file)
index 0000000..23ff75f
--- /dev/null
@@ -0,0 +1,15 @@
+/***
+  This file is part of systemd.
+
+  systemd is free software; you can redistribute it and/or modify it
+  under the terms of the GNU Lesser General Public License as published by
+  the Free Software Foundation; either version 2.1 of the License, or
+  (at your option) any later version.
+***/
+
+{
+global:
+        pam_sm_close_session;
+        pam_sm_open_session;
+local: *;
+};
index c9c3de0d04c172e7374401d6d3cdea92e5549f5f..14dae0a03345605d6d7bfcbf07407970d018d8a9 100644 (file)
 #include "bus-util.h"
 #include "bus-label.h"
 #include "strv.h"
-#include "machine.h"
 #include "rtnl-util.h"
 #include "bus-errors.h"
+#include "copy.h"
+#include "fileio.h"
+#include "machine.h"
 
 static int property_get_id(
                 sd_bus *bus,
@@ -333,6 +335,95 @@ int bus_machine_method_get_addresses(sd_bus *bus, sd_bus_message *message, void
         return sd_bus_send(bus, reply, NULL);
 }
 
+int bus_machine_method_get_os_release(sd_bus *bus, sd_bus_message *message, void *userdata, sd_bus_error *error) {
+        _cleanup_bus_message_unref_ sd_bus_message *reply = NULL;
+        _cleanup_close_ int mntns_fd = -1, root_fd = -1;
+        _cleanup_close_pair_ int pair[2] = { -1, -1 };
+        _cleanup_strv_free_ char **l = NULL;
+        _cleanup_fclose_ FILE *f = NULL;
+        Machine *m = userdata;
+        char **k, **v;
+        siginfo_t si;
+        pid_t child;
+        int r;
+
+        assert(bus);
+        assert(message);
+        assert(m);
+
+        r = namespace_open(m->leader, NULL, &mntns_fd, NULL, &root_fd);
+        if (r < 0)
+                return sd_bus_error_set_errno(error, r);
+
+        if (socketpair(AF_UNIX, SOCK_SEQPACKET, 0, pair) < 0)
+                return sd_bus_error_set_errno(error, -errno);
+
+        child = fork();
+        if (child < 0)
+                return sd_bus_error_set_errno(error, -errno);
+
+        if (child == 0) {
+                _cleanup_close_ int fd = -1;
+
+                pair[0] = safe_close(pair[0]);
+
+                r = namespace_enter(-1, mntns_fd, -1, root_fd);
+                if (r < 0)
+                        _exit(EXIT_FAILURE);
+
+                fd = open("/etc/os-release", O_RDONLY|O_CLOEXEC);
+                if (fd < 0) {
+                        fd = open("/usr/lib/os-release", O_RDONLY|O_CLOEXEC);
+                        if (fd < 0)
+                                _exit(EXIT_FAILURE);
+                }
+
+                r = copy_bytes(fd, pair[1], (off_t) -1);
+                if (r < 0)
+                        _exit(EXIT_FAILURE);
+
+                _exit(EXIT_SUCCESS);
+        }
+
+        pair[1] = safe_close(pair[1]);
+
+        f = fdopen(pair[0], "re");
+        if (!f)
+                return sd_bus_error_set_errno(error, -errno);
+
+        pair[0] = -1;
+
+        r = load_env_file_pairs(f, "/etc/os-release", NULL, &l);
+        if (r < 0)
+                return sd_bus_error_set_errno(error, r);
+
+        r = wait_for_terminate(child, &si);
+        if (r < 0)
+                return sd_bus_error_set_errno(error, r);
+        if (si.si_code != CLD_EXITED || si.si_status != EXIT_SUCCESS)
+                return sd_bus_error_set_errno(error, EIO);
+
+        r = sd_bus_message_new_method_return(message, &reply);
+        if (r < 0)
+                return sd_bus_error_set_errno(error, r);
+
+        r = sd_bus_message_open_container(reply, 'a', "{ss}");
+        if (r < 0)
+                return sd_bus_error_set_errno(error, r);
+
+        STRV_FOREACH_PAIR(k, v, l) {
+                r = sd_bus_message_append(reply, "{ss}", *k, *v);
+                if (r < 0)
+                        return sd_bus_error_set_errno(error, r);
+        }
+
+        r = sd_bus_message_close_container(reply);
+        if (r < 0)
+                return sd_bus_error_set_errno(error, r);
+
+        return sd_bus_send(bus, reply, NULL);
+}
+
 const sd_bus_vtable machine_vtable[] = {
         SD_BUS_VTABLE_START(0),
         SD_BUS_PROPERTY("Name", "s", NULL, offsetof(Machine, name), SD_BUS_VTABLE_PROPERTY_CONST),
@@ -348,7 +439,8 @@ const sd_bus_vtable machine_vtable[] = {
         SD_BUS_METHOD("Terminate", NULL, NULL, bus_machine_method_terminate, SD_BUS_VTABLE_CAPABILITY(CAP_KILL)),
         SD_BUS_METHOD("Kill", "si", NULL, bus_machine_method_kill, SD_BUS_VTABLE_CAPABILITY(CAP_KILL)),
         SD_BUS_METHOD("GetAddresses", NULL, "a(yay)", bus_machine_method_get_addresses, SD_BUS_VTABLE_UNPRIVILEGED),
-         SD_BUS_VTABLE_END
+        SD_BUS_METHOD("GetOSRelease", NULL, "a{ss}", bus_machine_method_get_os_release, SD_BUS_VTABLE_UNPRIVILEGED),
+        SD_BUS_VTABLE_END
 };
 
 int machine_object_find(sd_bus *bus, const char *path, const char *interface, void *userdata, void **found, sd_bus_error *error) {
index a49cf81906039799b949ed61e76c7a4c455eac42..c0fa1b24b6c068e06923d05d0f2f39834ed4731e 100644 (file)
@@ -176,12 +176,13 @@ int machine_save(Machine *m) {
                         m->timestamp.realtime,
                         m->timestamp.monotonic);
 
-        fflush(f);
+        r = fflush_and_check(f);
+        if (r < 0)
+                goto finish;
 
-        if (ferror(f) || rename(temp_path, m->state_file) < 0) {
+        if (rename(temp_path, m->state_file) < 0) {
                 r = -errno;
-                unlink(m->state_file);
-                unlink(temp_path);
+                goto finish;
         }
 
         if (m->unit) {
@@ -195,8 +196,12 @@ int machine_save(Machine *m) {
         }
 
 finish:
-        if (r < 0)
+        if (r < 0) {
+                if (temp_path)
+                        unlink(temp_path);
+
                 log_error("Failed to save machine data %s: %s", m->state_file, strerror(-r));
+        }
 
         return r;
 }
@@ -355,10 +360,12 @@ static int machine_stop_scope(Machine *m) {
         if (!m->unit)
                 return 0;
 
-        r = manager_stop_unit(m->manager, m->unit, &error, &job);
-        if (r < 0) {
-                log_error("Failed to stop machine scope: %s", bus_error_message(&error, r));
-                return r;
+        if (!m->registered) {
+                r = manager_stop_unit(m->manager, m->unit, &error, &job);
+                if (r < 0) {
+                        log_error("Failed to stop machine scope: %s", bus_error_message(&error, r));
+                        return r;
+                }
         }
 
         free(m->scope_job);
index a894a463a9597693e0c453b4ede57b82be8dfeb5..fa9262d52c62a736862a417fe5f7bcd242965108 100644 (file)
@@ -72,6 +72,7 @@ struct Machine {
 
         bool in_gc_queue:1;
         bool started:1;
+        bool registered:1;
 
         sd_bus_message *create_message;
 
@@ -99,6 +100,7 @@ int machine_node_enumerator(sd_bus *bus, const char *path, void *userdata, char
 int bus_machine_method_terminate(sd_bus *bus, sd_bus_message *message, void *userdata, sd_bus_error *error);
 int bus_machine_method_kill(sd_bus *bus, sd_bus_message *message, void *userdata, sd_bus_error *error);
 int bus_machine_method_get_addresses(sd_bus *bus, sd_bus_message *message, void *userdata, sd_bus_error *error);
+int bus_machine_method_get_os_release(sd_bus *bus, sd_bus_message *message, void *userdata, sd_bus_error *error);
 
 int machine_send_signal(Machine *m, bool new_machine);
 int machine_send_create_reply(Machine *m, sd_bus_error *error);
index c2bf7e519797ef574b02246e1df1f9bedf37385c..022a4ebe5014e11ddd2e536b4b98f1dd8e90dbd0 100644 (file)
@@ -224,6 +224,48 @@ static int print_addresses(sd_bus *bus, const char *name, const char *prefix, co
         return 0;
 }
 
+static int print_os_release(sd_bus *bus, const char *name, const char *prefix) {
+        _cleanup_bus_message_unref_ sd_bus_message *reply = NULL;
+        const char *k, *v, *pretty = NULL;
+        int r;
+
+        assert(bus);
+        assert(name);
+        assert(prefix);
+
+        r = sd_bus_call_method(bus,
+                               "org.freedesktop.machine1",
+                               "/org/freedesktop/machine1",
+                               "org.freedesktop.machine1.Manager",
+                               "GetMachineOSRelease",
+                               NULL,
+                               &reply,
+                               "s", name);
+        if (r < 0)
+                return r;
+
+        r = sd_bus_message_enter_container(reply, 'a', "{ss}");
+        if (r < 0)
+                return bus_log_parse_error(r);
+
+        while ((r = sd_bus_message_read(reply, "{ss}", &k, &v)) > 0) {
+                if (streq(k, "PRETTY_NAME"))
+                        pretty = v;
+
+        }
+        if (r < 0)
+                return bus_log_parse_error(r);
+
+        r = sd_bus_message_exit_container(reply);
+        if (r < 0)
+                return bus_log_parse_error(r);
+
+        if (pretty)
+                printf("%s%s\n", prefix, pretty);
+
+        return 0;
+}
+
 typedef struct MachineStatusInfo {
         char *name;
         sd_id128_t id;
@@ -284,6 +326,8 @@ static void print_machine_status_info(sd_bus *bus, MachineStatusInfo *i) {
                        "\t Address: ",
                        "\t          ");
 
+        print_os_release(bus, i->name, "\t      OS: ");
+
         if (i->unit) {
                 printf("\t    Unit: %s\n", i->unit);
                 show_unit_cgroup(bus, i->unit, i->leader);
index 0078a277d9a996c213037f7166fe28761838a4fe..a041444b735a5c558b690eb0165485d511f612a7 100644 (file)
 #include "cgroup-util.h"
 #include "machined.h"
 
-static bool valid_machine_name(const char *p) {
-        size_t l;
-
-        if (!filename_is_safe(p))
-                return false;
-
-        if (!ascii_is_valid(p))
-                return false;
-
-        l = strlen(p);
-
-        if (l < 1 || l> 64)
-                return false;
-
-        return true;
-}
-
 static int method_get_machine(sd_bus *bus, sd_bus_message *message, void *userdata, sd_bus_error *error) {
         _cleanup_free_ char *p = NULL;
         Manager *m = userdata;
@@ -185,7 +168,7 @@ static int method_create_or_register_machine(Manager *manager, sd_bus_message *m
         r = sd_bus_message_read(message, "s", &name);
         if (r < 0)
                 return r;
-        if (!valid_machine_name(name))
+        if (!machine_name_is_valid(name))
                 return sd_bus_error_setf(error, SD_BUS_ERROR_INVALID_ARGS, "Invalid machine name");
 
         r = sd_bus_message_read_array(message, 'y', &v, &n);
@@ -307,6 +290,8 @@ static int method_register_machine(sd_bus *bus, sd_bus_message *message, void *u
                 goto fail;
         }
 
+        m->registered = true;
+
         r = machine_start(m, NULL, error);
         if (r < 0)
                 goto fail;
@@ -387,6 +372,27 @@ static int method_get_machine_addresses(sd_bus *bus, sd_bus_message *message, vo
         return bus_machine_method_get_addresses(bus, message, machine, error);
 }
 
+static int method_get_machine_os_release(sd_bus *bus, sd_bus_message *message, void *userdata, sd_bus_error *error) {
+        Manager *m = userdata;
+        Machine *machine;
+        const char *name;
+        int r;
+
+        assert(bus);
+        assert(message);
+        assert(m);
+
+        r = sd_bus_message_read(message, "s", &name);
+        if (r < 0)
+                return sd_bus_error_set_errno(error, r);
+
+        machine = hashmap_get(m->machines, name);
+        if (!machine)
+                return sd_bus_error_setf(error, BUS_ERROR_NO_SUCH_MACHINE, "No machine '%s' known", name);
+
+        return bus_machine_method_get_os_release(bus, message, machine, error);
+}
+
 const sd_bus_vtable manager_vtable[] = {
         SD_BUS_VTABLE_START(0),
         SD_BUS_METHOD("GetMachine", "s", "o", method_get_machine, SD_BUS_VTABLE_UNPRIVILEGED),
@@ -397,6 +403,7 @@ const sd_bus_vtable manager_vtable[] = {
         SD_BUS_METHOD("KillMachine", "ssi", NULL, method_kill_machine, SD_BUS_VTABLE_CAPABILITY(CAP_KILL)),
         SD_BUS_METHOD("TerminateMachine", "s", NULL, method_terminate_machine, SD_BUS_VTABLE_CAPABILITY(CAP_KILL)),
         SD_BUS_METHOD("GetMachineAddresses", "s", "a(yay)", method_get_machine_addresses, SD_BUS_VTABLE_UNPRIVILEGED),
+        SD_BUS_METHOD("GetMachineOSRelease", "s", "a{ss}", method_get_machine_os_release, SD_BUS_VTABLE_UNPRIVILEGED),
         SD_BUS_SIGNAL("MachineNew", "so", 0),
         SD_BUS_SIGNAL("MachineRemoved", "so", 0),
         SD_BUS_VTABLE_END
index ab349a536d6dd8deaaa9cc5e94646bbb46a167c0..3a77c70bf1171c9959c6345aecfaadd640c923fb 100644 (file)
                        send_interface="org.freedesktop.machine1.Machine"
                        send_member="GetAddresses"/>
 
+                <allow send_destination="org.freedesktop.machine1"
+                       send_interface="org.freedesktop.machine1.Machine"
+                       send_member="GetMachineOSRelease"/>
+
                 <allow receive_sender="org.freedesktop.machine1"/>
         </policy>
 
diff --git a/src/network/networkd-address-pool.c b/src/network/networkd-address-pool.c
new file mode 100644 (file)
index 0000000..a5079ad
--- /dev/null
@@ -0,0 +1,166 @@
+/*-*- Mode: C; c-basic-offset: 8; indent-tabs-mode: nil -*-*/
+
+/***
+  This file is part of systemd.
+
+  Copyright 2014 Lennart Poettering
+
+  systemd is free software; you can redistribute it and/or modify it
+  under the terms of the GNU Lesser General Public License as published by
+  the Free Software Foundation; either version 2.1 of the License, or
+  (at your option) any later version.
+
+  systemd is distributed in the hope that it will be useful, but
+  WITHOUT ANY WARRANTY; without even the implied warranty of
+  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+  Lesser General Public License for more details.
+
+  You should have received a copy of the GNU Lesser General Public License
+  along with systemd; If not, see <http://www.gnu.org/licenses/>.
+***/
+
+#include <arpa/inet.h>
+
+#include "networkd.h"
+
+int address_pool_new(
+                Manager *m,
+                AddressPool **ret,
+                unsigned family,
+                const union in_addr_union *u,
+                unsigned prefixlen) {
+
+        AddressPool *p;
+
+        assert(m);
+        assert(ret);
+        assert(u);
+
+        p = new0(AddressPool, 1);
+        if (!p)
+                return -ENOMEM;
+
+        p->manager = m;
+        p->family = family;
+        p->prefixlen = prefixlen;
+        p->in_addr = *u;
+
+        LIST_PREPEND(address_pools, m->address_pools, p);
+
+        *ret = p;
+        return 0;
+}
+
+int address_pool_new_from_string(
+                Manager *m,
+                AddressPool **ret,
+                unsigned family,
+                const char *p,
+                unsigned prefixlen) {
+
+        union in_addr_union u;
+        int r;
+
+        assert(m);
+        assert(ret);
+        assert(p);
+
+        r = in_addr_from_string(family, p, &u);
+        if (r < 0)
+                return r;
+
+        return address_pool_new(m, ret, family, &u, prefixlen);
+}
+
+void address_pool_free(AddressPool *p) {
+
+        if (!p)
+                return;
+
+        if (p->manager)
+                LIST_REMOVE(address_pools, p->manager->address_pools, p);
+
+        free(p);
+}
+
+static bool address_pool_prefix_is_taken(
+                AddressPool *p,
+                const union in_addr_union *u,
+                unsigned prefixlen) {
+
+        Iterator i;
+        Link *l;
+        Network *n;
+
+        assert(p);
+        assert(u);
+
+        HASHMAP_FOREACH(l, p->manager->links, i) {
+                Address *a;
+
+                /* Don't clash with assigned addresses */
+                LIST_FOREACH(addresses, a, l->addresses) {
+                        if (a->family != p->family)
+                                continue;
+
+                        if (in_addr_prefix_intersect(p->family, u, prefixlen, &a->in_addr, a->prefixlen))
+                                return true;
+                }
+
+                /* Don't clash with addresses already pulled from the pool, but not assigned yet */
+                LIST_FOREACH(addresses, a, l->pool_addresses) {
+                        if (a->family != p->family)
+                                continue;
+
+                        if (in_addr_prefix_intersect(p->family, u, prefixlen, &a->in_addr, a->prefixlen))
+                                return true;
+                }
+        }
+
+        /* And don't clash with configured but un-assigned addresses either */
+        LIST_FOREACH(networks, n, p->manager->networks) {
+                Address *a;
+
+                LIST_FOREACH(addresses, a, n->static_addresses) {
+                        if (a->family != p->family)
+                                continue;
+
+                        if (in_addr_prefix_intersect(p->family, u, prefixlen, &a->in_addr, a->prefixlen))
+                                return true;
+                }
+        }
+
+        return false;
+}
+
+int address_pool_acquire(AddressPool *p, unsigned prefixlen, union in_addr_union *found) {
+        union in_addr_union u;
+
+        assert(p);
+        assert(prefixlen > 0);
+        assert(found);
+
+        if (p->prefixlen > prefixlen)
+                return 0;
+
+        u = p->in_addr;
+        for (;;) {
+                if (!address_pool_prefix_is_taken(p, &u, prefixlen)) {
+                        _cleanup_free_ char *s = NULL;
+
+                        in_addr_to_string(p->family, &u, &s);
+                        log_debug("Found range %s/%u", strna(s), prefixlen);
+
+                        *found = u;
+                        return 1;
+                }
+
+                if (!in_addr_prefix_next(p->family, &u, prefixlen))
+                        return 0;
+
+                if (!in_addr_prefix_intersect(p->family, &p->in_addr, p->prefixlen, &u, prefixlen))
+                        return 0;
+        }
+
+        return 0;
+}
index afd36a0dfcce8b4368d3c62a22affb487ce087c5..1ba210831661aa946c7f33141291cbb9e61b04a1 100644 (file)
@@ -144,6 +144,8 @@ int address_drop(Address *address, Link *link,
                 return r;
         }
 
+        link_ref(link);
+
         return 0;
 }
 
@@ -225,6 +227,69 @@ int address_update(Address *address, Link *link,
                 return r;
         }
 
+        link_ref(link);
+
+        return 0;
+}
+
+static int address_acquire(Link *link, Address *original, Address **ret) {
+        union in_addr_union in_addr = {};
+        struct in_addr broadcast = {};
+        _cleanup_address_free_ Address *na = NULL;
+        int r;
+
+        assert(link);
+        assert(original);
+        assert(ret);
+
+        /* Something useful was configured? just use it */
+        if (in_addr_null(original->family, &original->in_addr) <= 0)
+                return 0;
+
+        /* The address is configured to be 0.0.0.0 or [::] by the user?
+         * Then let's acquire something more useful from the pool. */
+        r = manager_address_pool_acquire(link->manager, original->family, original->prefixlen, &in_addr);
+        if (r < 0) {
+                log_error_link(link, "Failed to acquire address from pool: %s", strerror(-r));
+                return r;
+        }
+        if (r == 0) {
+                log_error_link(link, "Couldn't find free address for interface, all taken.");
+                return -EBUSY;
+        }
+
+        if (original->family == AF_INET) {
+                /* Pick first address in range for ourselves ...*/
+                in_addr.in.s_addr = in_addr.in.s_addr | htobe32(1);
+
+                /* .. and use last as broadcast address */
+                broadcast.s_addr = in_addr.in.s_addr | htobe32(0xFFFFFFFFUL >> original->prefixlen);
+        } else if (original->family == AF_INET6)
+                in_addr.in6.s6_addr[15] |= 1;
+
+        r = address_new_dynamic(&na);
+        if (r < 0)
+                return r;
+
+        na->family = original->family;
+        na->prefixlen = original->prefixlen;
+        na->scope = original->scope;
+        na->cinfo = original->cinfo;
+
+        if (original->label) {
+                na->label = strdup(original->label);
+                if (!na->label)
+                        return -ENOMEM;
+        }
+
+        na->broadcast = broadcast;
+        na->in_addr = in_addr;
+
+        LIST_PREPEND(addresses, link->pool_addresses, na);
+
+        *ret = na;
+        na = NULL;
+
         return 0;
 }
 
@@ -240,6 +305,10 @@ int address_configure(Address *address, Link *link,
         assert(link->manager);
         assert(link->manager->rtnl);
 
+        r = address_acquire(link, address, &address);
+        if (r < 0)
+                return r;
+
         r = sd_rtnl_message_new_addr(link->manager->rtnl, &req, RTM_NEWADDR,
                                      link->ifindex, address->family);
         if (r < 0) {
@@ -294,12 +363,22 @@ int address_configure(Address *address, Link *link,
                 }
         }
 
+        r = sd_rtnl_message_append_cache_info(req, IFA_CACHEINFO,
+                                              &address->cinfo);
+        if (r < 0) {
+                log_error("Could not append IFA_CACHEINFO attribute: %s",
+                          strerror(-r));
+                return r;
+        }
+
         r = sd_rtnl_call_async(link->manager->rtnl, req, callback, link, 0, NULL);
         if (r < 0) {
                 log_error("Could not send rtnetlink message: %s", strerror(-r));
                 return r;
         }
 
+        link_ref(link);
+
         return 0;
 }
 
diff --git a/src/network/networkd-dummy.c b/src/network/networkd-dummy.c
new file mode 100644 (file)
index 0000000..80fe41b
--- /dev/null
@@ -0,0 +1,122 @@
+/*-*- Mode: C; c-basic-offset: 8; indent-tabs-mode: nil -*-*/
+
+/***
+    This file is part of systemd.
+
+    Copyright 2014 Susant Sahani <susant@redhat.com>
+    Copyright 2014 Tom Gundersen
+
+    systemd is free software; you can redistribute it and/or modify it
+    under the terms of the GNU Lesser General Public License as published by
+    the Free Software Foundation; either version 2.1 of the License, or
+    (at your option) any later version.
+
+    systemd is distributed in the hope that it will be useful, but
+    WITHOUT ANY WARRANTY; without even the implied warranty of
+    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+    Lesser General Public License for more details.
+
+    You should have received a copy of the GNU Lesser General Public License
+    along with systemd; If not, see <http://www.gnu.org/licenses/>.
+***/
+
+#include <netinet/ether.h>
+#include <arpa/inet.h>
+#include <net/if.h>
+#include <linux/veth.h>
+
+#include "sd-rtnl.h"
+#include "networkd.h"
+
+
+static int netdev_fill_dummy_rtnl_message(NetDev *netdev, sd_rtnl_message *m) {
+        int r;
+
+        assert(netdev);
+        assert(m);
+
+        r = sd_rtnl_message_append_string(m, IFLA_IFNAME, netdev->ifname);
+        if (r < 0) {
+                log_error_netdev(netdev,
+                                 "Could not append IFLA_IFNAME, attribute: %s",
+                                 strerror(-r));
+                return r;
+        }
+
+        if (netdev->mac) {
+                r = sd_rtnl_message_append_ether_addr(m, IFLA_ADDRESS, netdev->mac);
+                if (r < 0) {
+                        log_error_netdev(netdev,
+                                         "Colud not append IFLA_ADDRESS attribute: %s",
+                                         strerror(-r));
+                    return r;
+                }
+        }
+
+        r = sd_rtnl_message_open_container(m, IFLA_LINKINFO);
+        if (r < 0) {
+                log_error_netdev(netdev,
+                                 "Could not append IFLA_LINKINFO attribute: %s",
+                                 strerror(-r));
+                return r;
+        }
+
+        r = sd_rtnl_message_open_container_union(m, IFLA_INFO_DATA,
+                                                 netdev_kind_to_string(netdev->kind));
+        if (r < 0) {
+                log_error_netdev(netdev,
+                                 "Could not append IFLA_INFO_DATA attribute: %s",
+                                 strerror(-r));
+                return r;
+        }
+
+        r = sd_rtnl_message_close_container(m);
+        if (r < 0) {
+                log_error_netdev(netdev,
+                                 "Could not append IFLA_LINKINFO attribute: %s",
+                                 strerror(-r));
+                return r;
+        }
+
+        return r;
+}
+
+int netdev_create_dummy(NetDev *netdev, sd_rtnl_message_handler_t callback) {
+        _cleanup_rtnl_message_unref_ sd_rtnl_message *m = NULL;
+        int r;
+
+        assert(netdev);
+        assert(netdev->ifname);
+        assert(netdev->manager);
+        assert(netdev->manager->rtnl);
+
+        r = sd_rtnl_message_new_link(netdev->manager->rtnl, &m, RTM_NEWLINK, 0);
+        if (r < 0) {
+                log_error_netdev(netdev,
+                                 "Could not allocate RTM_NEWLINK message: %s",
+                                 strerror(-r));
+                return r;
+        }
+
+        if(netdev->kind != NETDEV_KIND_DUMMY)
+                return -ENOTSUP;
+
+        r = netdev_fill_dummy_rtnl_message(netdev, m);
+        if(r < 0)
+                return r;
+
+        r = sd_rtnl_call_async(netdev->manager->rtnl, m, callback, netdev, 0, NULL);
+        if (r < 0) {
+                log_error_netdev(netdev,
+                                 "Could not send rtnetlink message: %s", strerror(-r));
+                return r;
+        }
+
+        netdev_ref(netdev);
+
+        log_debug_netdev(netdev, "Creating dummy netdev.");
+
+        netdev->state = NETDEV_STATE_CREATING;
+
+        return 0;
+}
index 36534268916c0b0370ce34cbfd5501e83e2bf2d0..14c0417d83a1a1e3bf3bc6c58a04af173e1b3ccf 100644 (file)
@@ -21,6 +21,7 @@
 
 #include <netinet/ether.h>
 #include <linux/if.h>
+#include <unistd.h>
 
 #include "networkd.h"
 #include "libudev-private.h"
@@ -29,6 +30,7 @@
 #include "virt.h"
 #include "bus-util.h"
 #include "network-internal.h"
+#include "conf-parser.h"
 
 #include "network-util.h"
 #include "dhcp-lease-internal.h"
@@ -77,7 +79,7 @@ static int link_new(Manager *manager, sd_rtnl_message *message, Link **ret) {
 
         r = sd_rtnl_message_read_ether_addr(message, IFLA_ADDRESS, &link->mac);
         if (r < 0)
-                return r;
+                log_debug_link(link, "MAC address not found for new device, continuing without");
 
         r = asprintf(&link->state_file, "/run/systemd/netif/links/%"PRIu64,
                      link->ifindex);
@@ -105,13 +107,16 @@ static void link_free(Link *link) {
         if (!link)
                 return;
 
-        assert(link->manager);
-
         while ((address = link->addresses)) {
                 LIST_REMOVE(addresses, link->addresses, address);
                 address_free(address);
         }
 
+        while ((address = link->pool_addresses)) {
+                LIST_REMOVE(addresses, link->pool_addresses, address);
+                address_free(address);
+        }
+
         sd_dhcp_client_unref(link->dhcp_client);
         sd_dhcp_lease_unref(link->dhcp_lease);
 
@@ -119,8 +124,11 @@ static void link_free(Link *link) {
         free(link->lease_file);
 
         sd_ipv4ll_unref(link->ipv4ll);
+        sd_dhcp6_client_unref(link->dhcp6_client);
+        sd_icmp6_nd_unref(link->icmp6_router_discovery);
 
-        hashmap_remove(link->manager->links, &link->ifindex);
+        if (link->manager)
+                hashmap_remove(link->manager->links, &link->ifindex);
 
         free(link->ifname);
 
@@ -178,19 +186,6 @@ void link_drop(Link *link) {
         return;
 }
 
-static int link_enter_configured(Link *link) {
-        assert(link);
-        assert(link->state == LINK_STATE_SETTING_ROUTES);
-
-        log_info_link(link, "link configured");
-
-        link->state = LINK_STATE_CONFIGURED;
-
-        link_save(link);
-
-        return 0;
-}
-
 static void link_enter_unmanaged(Link *link) {
         assert(link);
 
@@ -211,7 +206,7 @@ static int link_stop_clients(Link *link) {
         if (!link->network)
                 return 0;
 
-        if (link->network->dhcp) {
+        if (IN_SET(link->network->dhcp, DHCP_SUPPORT_BOTH, DHCP_SUPPORT_V6)) {
                 assert(link->dhcp_client);
 
                 k = sd_dhcp_client_stop(link->dhcp_client);
@@ -231,6 +226,34 @@ static int link_stop_clients(Link *link) {
                 }
         }
 
+        if (link->network->dhcp_server) {
+                assert(link->dhcp_server);
+
+                k = sd_dhcp_server_stop(link->dhcp_server);
+                if (k < 0) {
+                        log_warning_link(link, "Could not stop DHCPv4 server: %s", strerror(-r));
+                        r = k;
+                }
+        }
+
+        if (IN_SET(link->network->dhcp, DHCP_SUPPORT_BOTH, DHCP_SUPPORT_V6)) {
+                assert(link->icmp6_router_discovery);
+
+                if (link->dhcp6_client) {
+                        k = sd_dhcp6_client_stop(link->dhcp6_client);
+                        if (k < 0) {
+                                log_warning_link(link, "Could not stop DHCPv6 client: %s", strerror(-r));
+                                r = k;
+                        }
+                }
+
+                k = sd_icmp6_nd_stop(link->icmp6_router_discovery);
+                if (k < 0) {
+                        log_warning_link(link, "Could not stop ICMPv6 router discovery: %s", strerror(-r));
+                        r = k;
+                }
+        }
+
         return r;
 }
 
@@ -249,8 +272,101 @@ static void link_enter_failed(Link *link) {
         link_save(link);
 }
 
+static Address* link_find_dhcp_server_address(Link *link) {
+        Address *address;
+
+        assert(link);
+        assert(link->network);
+
+        /* The the first statically configured address if there is any */
+        LIST_FOREACH(addresses, address, link->network->static_addresses) {
+
+                if (address->family != AF_INET)
+                        continue;
+
+                if (in_addr_null(address->family, &address->in_addr))
+                        continue;
+
+                return address;
+        }
+
+        /* If that didn't work, find a suitable address we got from the pool */
+        LIST_FOREACH(addresses, address, link->pool_addresses) {
+                if (address->family != AF_INET)
+                        continue;
+
+                return address;
+        }
+
+        return NULL;
+}
+
+static int link_enter_configured(Link *link) {
+        int r;
+
+        assert(link);
+        assert(link->network);
+        assert(link->state == LINK_STATE_SETTING_ROUTES);
+
+        if (link->network->dhcp_server &&
+            !sd_dhcp_server_is_running(link->dhcp_server)) {
+                struct in_addr pool_start;
+                Address *address;
+
+                address = link_find_dhcp_server_address(link);
+                if (!address) {
+                        log_warning_link(link, "Failed to find suitable address for DHCPv4 server instance.");
+                        link_enter_failed(link);
+                        return 0;
+                }
+
+                log_debug_link(link, "offering DHCPv4 leases");
+
+                r = sd_dhcp_server_set_address(link->dhcp_server, &address->in_addr.in);
+                if (r < 0)
+                        return r;
+
+                /* offer 32 addresses starting from the address following the server address */
+                pool_start.s_addr = htobe32(be32toh(address->in_addr.in.s_addr) + 1);
+                r = sd_dhcp_server_set_lease_pool(link->dhcp_server,
+                                                  &pool_start, 32);
+                if (r < 0)
+                        return r;
+
+                /* TODO:
+                r = sd_dhcp_server_set_router(link->dhcp_server,
+                                              &main_address->in_addr.in);
+                if (r < 0)
+                        return r;
+
+                r = sd_dhcp_server_set_prefixlen(link->dhcp_server,
+                                                 main_address->prefixlen);
+                if (r < 0)
+                        return r;
+                */
+
+                r = sd_dhcp_server_start(link->dhcp_server);
+                if (r < 0) {
+                        log_warning_link(link, "could not start DHCPv4 server "
+                                         "instance: %s", strerror(-r));
+
+                        link_enter_failed(link);
+
+                        return 0;
+                }
+        }
+
+        log_info_link(link, "link configured");
+
+        link->state = LINK_STATE_CONFIGURED;
+
+        link_save(link);
+
+        return 0;
+}
+
 static int route_handler(sd_rtnl *rtnl, sd_rtnl_message *m, void *userdata) {
-        Link *link = userdata;
+        _cleanup_link_unref_ Link *link = userdata;
         int r;
 
         assert(link->route_messages > 0);
@@ -260,15 +376,13 @@ static int route_handler(sd_rtnl *rtnl, sd_rtnl_message *m, void *userdata) {
 
         link->route_messages --;
 
-        if (IN_SET(LINK_STATE_FAILED, LINK_STATE_LINGER)) {
-                link_unref(link);
+        if (IN_SET(LINK_STATE_FAILED, LINK_STATE_LINGER))
                 return 1;
-        }
 
         r = sd_rtnl_message_get_errno(m);
         if (r < 0 && r != -EEXIST)
                 log_struct_link(LOG_WARNING, link,
-                                "MESSAGE=%*s: could not set route: %s",
+                                "MESSAGE=%-*s: could not set route: %s",
                                 IFNAMSIZ,
                                 link->ifname, strerror(-r),
                                 "ERRNO=%d", -r,
@@ -281,11 +395,53 @@ static int route_handler(sd_rtnl *rtnl, sd_rtnl_message *m, void *userdata) {
                 link_enter_configured(link);
         }
 
-        link_unref(link);
-
         return 1;
 }
 
+static int link_set_dhcp_routes(Link *link) {
+        struct sd_dhcp_route *static_routes;
+        size_t static_routes_size;
+        int r;
+        unsigned i;
+
+        assert(link);
+
+        r = sd_dhcp_lease_get_routes(link->dhcp_lease, &static_routes, &static_routes_size);
+        if (r < 0) {
+                if (r != -ENOENT)
+                        log_warning_link(link, "DHCP error: could not get routes: %s", strerror(-r));
+                return r;
+        }
+
+        for (i = 0; i < static_routes_size; i++) {
+                _cleanup_route_free_ Route *route = NULL;
+
+                r = route_new_dynamic(&route);
+                if (r < 0) {
+                        log_error_link(link, "Could not allocate route: %s",
+                                       strerror(-r));
+                        return r;
+                }
+
+                route->family = AF_INET;
+                route->in_addr.in = static_routes[i].gw_addr;
+                route->dst_addr.in = static_routes[i].dst_addr;
+                route->dst_prefixlen = static_routes[i].dst_prefixlen;
+                route->metrics = DHCP_STATIC_ROUTE_METRIC;
+
+                r = route_configure(route, link, &route_handler);
+                if (r < 0) {
+                        log_warning_link(link,
+                                         "could not set host route: %s", strerror(-r));
+                        return r;
+                }
+
+                link->route_messages ++;
+        }
+
+        return 0;
+}
+
 static int link_enter_set_routes(Link *link) {
         Route *rt;
         int r;
@@ -311,7 +467,6 @@ static int link_enter_set_routes(Link *link) {
                         return r;
                 }
 
-                link_ref(link);
                 link->route_messages ++;
         }
 
@@ -346,7 +501,6 @@ static int link_enter_set_routes(Link *link) {
                                 return r;
                         }
 
-                        link_ref(link);
                         link->route_messages ++;
                 }
         }
@@ -358,7 +512,8 @@ static int link_enter_set_routes(Link *link) {
 
                 r = sd_dhcp_lease_get_router(link->dhcp_lease, &gateway);
                 if (r < 0 && r != -ENOENT) {
-                        log_warning_link(link, "DHCP error: %s", strerror(-r));
+                        log_warning_link(link, "DHCP error: could not get gateway: %s",
+                                         strerror(-r));
                         return r;
                 }
 
@@ -384,6 +539,7 @@ static int link_enter_set_routes(Link *link) {
                         route_gw->dst_addr.in = gateway;
                         route_gw->dst_prefixlen = 32;
                         route_gw->scope = RT_SCOPE_LINK;
+                        route_gw->metrics = DHCP_STATIC_ROUTE_METRIC;
 
                         r = route_configure(route_gw, link, &route_handler);
                         if (r < 0) {
@@ -392,11 +548,11 @@ static int link_enter_set_routes(Link *link) {
                                 return r;
                         }
 
-                        link_ref(link);
                         link->route_messages ++;
 
                         route->family = AF_INET;
                         route->in_addr.in = gateway;
+                        route->metrics = DHCP_STATIC_ROUTE_METRIC;
 
                         r = route_configure(route, link, &route_handler);
                         if (r < 0) {
@@ -406,9 +562,11 @@ static int link_enter_set_routes(Link *link) {
                                 return r;
                         }
 
-                        link_ref(link);
                         link->route_messages ++;
                 }
+
+                if (link->network->dhcp_routes)
+                        link_set_dhcp_routes(link);
         }
 
         if (link->route_messages == 0) {
@@ -419,34 +577,30 @@ static int link_enter_set_routes(Link *link) {
 }
 
 static int route_drop_handler(sd_rtnl *rtnl, sd_rtnl_message *m, void *userdata) {
-        Link *link = userdata;
+        _cleanup_link_unref_ Link *link = userdata;
         int r;
 
         assert(m);
         assert(link);
         assert(link->ifname);
 
-        if (IN_SET(link->state, LINK_STATE_FAILED, LINK_STATE_LINGER)) {
-                link_unref(link);
+        if (IN_SET(link->state, LINK_STATE_FAILED, LINK_STATE_LINGER))
                 return 1;
-        }
 
         r = sd_rtnl_message_get_errno(m);
         if (r < 0 && r != -ESRCH)
                 log_struct_link(LOG_WARNING, link,
-                                "MESSAGE=%*s: could not drop route: %s",
+                                "MESSAGE=%-*s: could not drop route: %s",
                                 IFNAMSIZ,
                                 link->ifname, strerror(-r),
                                 "ERRNO=%d", -r,
                                 NULL);
 
-        link_unref(link);
-
         return 0;
 }
 
 static int address_handler(sd_rtnl *rtnl, sd_rtnl_message *m, void *userdata) {
-        Link *link = userdata;
+        _cleanup_link_unref_ Link *link = userdata;
         int r;
 
         assert(m);
@@ -458,15 +612,13 @@ static int address_handler(sd_rtnl *rtnl, sd_rtnl_message *m, void *userdata) {
 
         link->addr_messages --;
 
-        if (IN_SET(link->state, LINK_STATE_FAILED, LINK_STATE_LINGER)) {
-                link_unref(link);
+        if (IN_SET(link->state, LINK_STATE_FAILED, LINK_STATE_LINGER))
                 return 1;
-        }
 
         r = sd_rtnl_message_get_errno(m);
         if (r < 0 && r != -EEXIST)
                 log_struct_link(LOG_WARNING, link,
-                                "MESSAGE=%*s: could not set address: %s",
+                                "MESSAGE=%-*s: could not set address: %s",
                                 IFNAMSIZ,
                                 link->ifname, strerror(-r),
                                 "ERRNO=%d", -r,
@@ -477,14 +629,13 @@ static int address_handler(sd_rtnl *rtnl, sd_rtnl_message *m, void *userdata) {
                 link_enter_set_routes(link);
         }
 
-        link_unref(link);
-
         return 1;
 }
 
 static int link_enter_set_addresses(Link *link) {
         Address *ad;
         int r;
+        uint32_t lifetime = CACHE_INFO_INFINITY_LIFE_TIME;
 
         assert(link);
         assert(link->network);
@@ -507,7 +658,6 @@ static int link_enter_set_addresses(Link *link) {
                         return r;
                 }
 
-                link_ref(link);
                 link->addr_messages ++;
         }
 
@@ -543,7 +693,6 @@ static int link_enter_set_addresses(Link *link) {
                                 return r;
                         }
 
-                        link_ref(link);
                         link->addr_messages ++;
                 }
         }
@@ -561,6 +710,16 @@ static int link_enter_set_addresses(Link *link) {
                         return r;
                 }
 
+                if (!link->network->dhcp_critical) {
+                        r = sd_dhcp_lease_get_lifetime(link->dhcp_lease,
+                                                       &lifetime);
+                        if (r < 0) {
+                                log_warning_link(link, "DHCP error: no lifetime: %s",
+                                                 strerror(-r));
+                                return r;
+                        }
+                }
+
                 r = sd_dhcp_lease_get_netmask(link->dhcp_lease, &netmask);
                 if (r < 0) {
                         log_warning_link(link, "DHCP error: no netmask: %s",
@@ -579,10 +738,14 @@ static int link_enter_set_addresses(Link *link) {
 
                 address->family = AF_INET;
                 address->in_addr.in = addr;
+                address->cinfo.ifa_prefered = lifetime;
+                address->cinfo.ifa_valid = lifetime;
                 address->prefixlen = prefixlen;
                 address->broadcast.s_addr = addr.s_addr | ~netmask.s_addr;
 
-                r = address_configure(address, link, &address_handler);
+                /* use update rather than configure so that we will update the lifetime
+                   of an existing address if it has already been configured */
+                r = address_update(address, link, &address_handler);
                 if (r < 0) {
                         log_warning_link(link,
                                          "could not set addresses: %s", strerror(-r));
@@ -590,7 +753,6 @@ static int link_enter_set_addresses(Link *link) {
                         return r;
                 }
 
-                link_ref(link);
                 link->addr_messages ++;
         }
 
@@ -598,76 +760,64 @@ static int link_enter_set_addresses(Link *link) {
 }
 
 static int address_update_handler(sd_rtnl *rtnl, sd_rtnl_message *m, void *userdata) {
-        Link *link = userdata;
+        _cleanup_link_unref_ Link *link = userdata;
         int r;
 
         assert(m);
         assert(link);
         assert(link->ifname);
 
-        if (IN_SET(link->state, LINK_STATE_FAILED, LINK_STATE_LINGER)) {
-                link_unref(link);
+        if (IN_SET(link->state, LINK_STATE_FAILED, LINK_STATE_LINGER))
                 return 1;
-        }
 
         r = sd_rtnl_message_get_errno(m);
         if (r < 0 && r != -ENOENT)
                 log_struct_link(LOG_WARNING, link,
-                                "MESSAGE=%*s: could not update address: %s",
+                                "MESSAGE=%-*s: could not update address: %s",
                                 IFNAMSIZ,
                                 link->ifname, strerror(-r),
                                 "ERRNO=%d", -r,
                                 NULL);
 
-        link_unref(link);
-
         return 0;
 }
 
 static int address_drop_handler(sd_rtnl *rtnl, sd_rtnl_message *m, void *userdata) {
-        Link *link = userdata;
+        _cleanup_link_unref_ Link *link = userdata;
         int r;
 
         assert(m);
         assert(link);
         assert(link->ifname);
 
-        if (IN_SET(link->state, LINK_STATE_FAILED, LINK_STATE_LINGER)) {
-                link_unref(link);
+        if (IN_SET(link->state, LINK_STATE_FAILED, LINK_STATE_LINGER))
                 return 1;
-        }
 
         r = sd_rtnl_message_get_errno(m);
         if (r < 0 && r != -EADDRNOTAVAIL)
                 log_struct_link(LOG_WARNING, link,
-                                "MESSAGE=%*s: could not drop address: %s",
+                                "MESSAGE=%-*s: could not drop address: %s",
                                 IFNAMSIZ,
                                 link->ifname, strerror(-r),
                                 "ERRNO=%d", -r,
                                 NULL);
 
-        link_unref(link);
-
         return 0;
 }
 
 static int set_hostname_handler(sd_bus *bus, sd_bus_message *m, void *userdata, sd_bus_error *ret_error) {
-        Link *link = userdata;
+        _cleanup_link_unref_ Link *link = userdata;
         int r;
 
         assert(link);
 
-        if (IN_SET(link->state, LINK_STATE_FAILED, LINK_STATE_LINGER)) {
-                link_unref(link);
+        if (IN_SET(link->state, LINK_STATE_FAILED, LINK_STATE_LINGER))
                 return 1;
-        }
 
         r = sd_bus_message_get_errno(m);
         if (r < 0)
                 log_warning_link(link, "Could not set hostname: %s", strerror(-r));
 
-        link_unref(link);
-
         return 1;
 }
 
@@ -701,37 +851,35 @@ static int link_set_hostname(Link *link, const char *hostname) {
                 return r;
 
         r = sd_bus_call_async(link->manager->bus, NULL, m, set_hostname_handler, link, 0);
-        if (r < 0)
+        if (r < 0) {
                 log_error_link(link, "Could not set transient hostname: %s", strerror(-r));
+                return r;
+        }
 
         link_ref(link);
 
-        return r;
+        return 0;
 }
 
 static int set_mtu_handler(sd_rtnl *rtnl, sd_rtnl_message *m, void *userdata) {
-        Link *link = userdata;
+        _cleanup_link_unref_ Link *link = userdata;
         int r;
 
         assert(m);
         assert(link);
         assert(link->ifname);
 
-        if (IN_SET(link->state, LINK_STATE_FAILED, LINK_STATE_LINGER)) {
-                link_unref(link);
+        if (IN_SET(link->state, LINK_STATE_FAILED, LINK_STATE_LINGER))
                 return 1;
-        }
 
         r = sd_rtnl_message_get_errno(m);
         if (r < 0)
                 log_struct_link(LOG_WARNING, link,
-                                "MESSAGE=%s: could not set MTU: %s",
-                                link->ifname, strerror(-r),
+                                "MESSAGE=%-*s: could not set MTU: %s",
+                                IFNAMSIZ, link->ifname, strerror(-r),
                                 "ERRNO=%d", -r,
                                 NULL);
 
-        link_unref(link);
-
         return 1;
 }
 
@@ -765,19 +913,18 @@ static int link_set_mtu(Link *link, uint32_t mtu) {
                 return r;
         }
 
-        link_unref(link);
+        link_ref(link);
 
         return 0;
 }
 
 static int dhcp_lease_lost(Link *link) {
         _cleanup_address_free_ Address *address = NULL;
-        _cleanup_route_free_ Route *route_gw = NULL;
-        _cleanup_route_free_ Route *route = NULL;
         struct in_addr addr;
         struct in_addr netmask;
         struct in_addr gateway;
         unsigned prefixlen;
+        unsigned i;
         int r;
 
         assert(link);
@@ -785,10 +932,35 @@ static int dhcp_lease_lost(Link *link) {
 
         log_warning_link(link, "DHCP lease lost");
 
+        if (link->network->dhcp_routes) {
+                struct sd_dhcp_route *routes;
+                size_t routes_size;
+
+                r = sd_dhcp_lease_get_routes(link->dhcp_lease, &routes, &routes_size);
+                if (r >= 0) {
+                        for (i = 0; i < routes_size; i++) {
+                                _cleanup_route_free_ Route *route = NULL;
+
+                                r = route_new_dynamic(&route);
+                                if (r >= 0) {
+                                        route->family = AF_INET;
+                                        route->in_addr.in = routes[i].gw_addr;
+                                        route->dst_addr.in = routes[i].dst_addr;
+                                        route->dst_prefixlen = routes[i].dst_prefixlen;
+
+                                        route_drop(route, link, &route_drop_handler);
+                                }
+                        }
+                }
+        }
+
         r = address_new_dynamic(&address);
         if (r >= 0) {
                 r = sd_dhcp_lease_get_router(link->dhcp_lease, &gateway);
                 if (r >= 0) {
+                        _cleanup_route_free_ Route *route_gw = NULL;
+                        _cleanup_route_free_ Route *route = NULL;
+
                         r = route_new_dynamic(&route_gw);
                         if (r >= 0) {
                                 route_gw->family = AF_INET;
@@ -797,7 +969,6 @@ static int dhcp_lease_lost(Link *link) {
                                 route_gw->scope = RT_SCOPE_LINK;
 
                                 route_drop(route_gw, link, &route_drop_handler);
-                                link_ref(link);
                         }
 
                         r = route_new_dynamic(&route);
@@ -806,7 +977,6 @@ static int dhcp_lease_lost(Link *link) {
                                 route->in_addr.in = gateway;
 
                                 route_drop(route, link, &route_drop_handler);
-                                link_ref(link);
                         }
                 }
 
@@ -819,7 +989,6 @@ static int dhcp_lease_lost(Link *link) {
                 address->prefixlen = prefixlen;
 
                 address_drop(address, link, &address_drop_handler);
-                link_ref(link);
         }
 
         if (link->network->dhcp_mtu) {
@@ -852,6 +1021,25 @@ static int dhcp_lease_lost(Link *link) {
         return 0;
 }
 
+static int dhcp_lease_renew(sd_dhcp_client *client, Link *link) {
+        sd_dhcp_lease *lease;
+        int r;
+
+        r = sd_dhcp_client_get_lease(client, &lease);
+        if (r < 0) {
+                log_warning_link(link, "DHCP error: no lease %s",
+                                 strerror(-r));
+                return r;
+        }
+
+        sd_dhcp_lease_unref(link->dhcp_lease);
+        link->dhcp_lease = lease;
+
+        link_enter_set_addresses(link);
+
+        return 0;
+}
+
 static int dhcp_lease_acquired(sd_dhcp_client *client, Link *link) {
         sd_dhcp_lease *lease;
         struct in_addr address;
@@ -888,13 +1076,14 @@ static int dhcp_lease_acquired(sd_dhcp_client *client, Link *link) {
 
         r = sd_dhcp_lease_get_router(lease, &gateway);
         if (r < 0 && r != -ENOENT) {
-                log_warning_link(link, "DHCP error: %s", strerror(-r));
+                log_warning_link(link, "DHCP error: could not get gateway: %s",
+                                 strerror(-r));
                 return r;
         }
 
         if (r >= 0)
                 log_struct_link(LOG_INFO, link,
-                                "MESSAGE=%*s: DHCPv4 address %u.%u.%u.%u/%u via %u.%u.%u.%u",
+                                "MESSAGE=%-*s: DHCPv4 address %u.%u.%u.%u/%u via %u.%u.%u.%u",
                                  IFNAMSIZ,
                                  link->ifname,
                                  ADDRESS_FMT_VAL(address),
@@ -909,7 +1098,7 @@ static int dhcp_lease_acquired(sd_dhcp_client *client, Link *link) {
                                  NULL);
         else
                 log_struct_link(LOG_INFO, link,
-                                "MESSAGE=%*s: DHCPv4 address %u.%u.%u.%u/%u",
+                                "MESSAGE=%-*s: DHCPv4 address %u.%u.%u.%u/%u",
                                  IFNAMSIZ,
                                  link->ifname,
                                  ADDRESS_FMT_VAL(address),
@@ -1002,6 +1191,13 @@ static void dhcp_handler(sd_dhcp_client *client, int event, void *userdata) {
                                 }
                         }
 
+                        break;
+                case DHCP_EVENT_RENEW:
+                        r = dhcp_lease_renew(client, link);
+                        if (r < 0) {
+                                link_enter_failed(link);
+                                return;
+                        }
                         break;
                 case DHCP_EVENT_IP_ACQUIRE:
                         r = dhcp_lease_acquired(client, link);
@@ -1022,7 +1218,7 @@ static void dhcp_handler(sd_dhcp_client *client, int event, void *userdata) {
                         break;
                 default:
                         if (event < 0)
-                                log_warning_link(link, "DHCP error: %s", strerror(-event));
+                                log_warning_link(link, "DHCP error: client failed: %s", strerror(-event));
                         else
                                 log_warning_link(link, "DHCP unknown event: %d", event);
                         break;
@@ -1059,7 +1255,6 @@ static int ipv4ll_address_update(Link *link, bool deprecate) {
                 address->broadcast.s_addr = address->in_addr.in.s_addr | htonl(0xfffffffflu >> address->prefixlen);
 
                 address_update(address, link, &address_update_handler);
-                link_ref(link);
         }
 
         return 0;
@@ -1092,7 +1287,6 @@ static int ipv4ll_address_lost(Link *link) {
                 address->scope = RT_SCOPE_LINK;
 
                 address_drop(address, link, &address_drop_handler);
-                link_ref(link);
 
                 r = route_new_dynamic(&route);
                 if (r < 0) {
@@ -1106,7 +1300,6 @@ static int ipv4ll_address_lost(Link *link) {
                 route->metrics = 99;
 
                 route_drop(route, link, &route_drop_handler);
-                link_ref(link);
         }
 
         return 0;
@@ -1136,7 +1329,7 @@ static int ipv4ll_address_claimed(sd_ipv4ll *ll, Link *link) {
                 return r;
 
         log_struct_link(LOG_INFO, link,
-                        "MESSAGE=%*s: IPv4 link-local address %u.%u.%u.%u",
+                        "MESSAGE=%-*s: IPv4 link-local address %u.%u.%u.%u",
                         IFNAMSIZ,
                         link->ifname,
                         ADDRESS_FMT_VAL(address),
@@ -1183,6 +1376,104 @@ static void ipv4ll_handler(sd_ipv4ll *ll, int event, void *userdata){
         }
 }
 
+static void dhcp6_handler(sd_dhcp6_client *client, int event, void *userdata) {
+        Link *link = userdata;
+
+        assert(link);
+        assert(link->network);
+        assert(link->manager);
+
+        if (IN_SET(link->state, LINK_STATE_FAILED, LINK_STATE_LINGER))
+                return;
+
+        switch(event) {
+        case DHCP6_EVENT_STOP:
+        case DHCP6_EVENT_RESEND_EXPIRE:
+        case DHCP6_EVENT_RETRANS_MAX:
+        case DHCP6_EVENT_IP_ACQUIRE:
+                log_debug_link(link, "DHCPv6 event %d", event);
+
+                break;
+
+        default:
+                if (event < 0)
+                        log_warning_link(link, "DHCPv6 error: %s",
+                                         strerror(-event));
+                else
+                        log_warning_link(link, "DHCPv6 unknown event: %d",
+                                         event);
+                return;
+        }
+}
+
+static void icmp6_router_handler(sd_icmp6_nd *nd, int event, void *userdata) {
+        Link *link = userdata;
+        int r;
+
+        assert(link);
+        assert(link->network);
+        assert(link->manager);
+
+        if (IN_SET(link->state, LINK_STATE_FAILED, LINK_STATE_LINGER))
+                return;
+
+        switch(event) {
+        case ICMP6_EVENT_ROUTER_ADVERTISMENT_NONE:
+        case ICMP6_EVENT_ROUTER_ADVERTISMENT_OTHER:
+                return;
+
+        case ICMP6_EVENT_ROUTER_ADVERTISMENT_TIMEOUT:
+        case ICMP6_EVENT_ROUTER_ADVERTISMENT_MANAGED:
+                break;
+
+        default:
+                if (event < 0)
+                        log_warning_link(link, "ICMPv6 error: %s",
+                                         strerror(-event));
+                else
+                        log_warning_link(link, "ICMPv6 unknown event: %d",
+                                         event);
+
+                return;
+        }
+
+        if (link->dhcp6_client)
+                return;
+
+        r = sd_dhcp6_client_new(&link->dhcp6_client);
+        if (r < 0)
+                return;
+
+        r = sd_dhcp6_client_attach_event(link->dhcp6_client, NULL, 0);
+        if (r < 0) {
+                link->dhcp6_client = sd_dhcp6_client_unref(link->dhcp6_client);
+                return;
+        }
+
+        r = sd_dhcp6_client_set_mac(link->dhcp6_client, &link->mac);
+        if (r < 0) {
+                link->dhcp6_client = sd_dhcp6_client_unref(link->dhcp6_client);
+                return;
+        }
+
+        r = sd_dhcp6_client_set_index(link->dhcp6_client, link->ifindex);
+        if (r < 0) {
+                link->dhcp6_client = sd_dhcp6_client_unref(link->dhcp6_client);
+                return;
+        }
+
+        r = sd_dhcp6_client_set_callback(link->dhcp6_client, dhcp6_handler,
+                                         link);
+        if (r < 0) {
+                link->dhcp6_client = sd_dhcp6_client_unref(link->dhcp6_client);
+                return;
+        }
+
+        r = sd_dhcp6_client_start(link->dhcp6_client);
+        if (r < 0)
+                link->dhcp6_client = sd_dhcp6_client_unref(link->dhcp6_client);
+}
+
 static int link_acquire_conf(Link *link) {
         int r;
 
@@ -1204,7 +1495,7 @@ static int link_acquire_conf(Link *link) {
                 }
         }
 
-        if (link->network->dhcp) {
+        if (IN_SET(link->network->dhcp, DHCP_SUPPORT_BOTH, DHCP_SUPPORT_V4)) {
                 assert(link->dhcp_client);
 
                 log_debug_link(link, "acquiring DHCPv4 lease");
@@ -1217,6 +1508,18 @@ static int link_acquire_conf(Link *link) {
                 }
         }
 
+        if (IN_SET(link->network->dhcp, DHCP_SUPPORT_BOTH, DHCP_SUPPORT_V6)) {
+                assert(link->icmp6_router_discovery);
+
+                log_debug_link(link, "discovering IPv6 routers");
+
+                r = sd_icmp6_router_solicitation_start(link->icmp6_router_discovery);
+                if (r < 0) {
+                        log_warning_link(link, "could not start IPv6 router discovery");
+                        return r;
+                }
+        }
+
         return 0;
 }
 
@@ -1341,30 +1644,26 @@ static int link_update_flags(Link *link, sd_rtnl_message *m) {
 }
 
 static int link_up_handler(sd_rtnl *rtnl, sd_rtnl_message *m, void *userdata) {
-        Link *link = userdata;
+        _cleanup_link_unref_ Link *link = userdata;
         int r;
 
         assert(link);
 
-        if (IN_SET(link->state, LINK_STATE_FAILED, LINK_STATE_LINGER)) {
-                link_unref(link);
+        if (IN_SET(link->state, LINK_STATE_FAILED, LINK_STATE_LINGER))
                 return 1;
-        }
 
         r = sd_rtnl_message_get_errno(m);
         if (r < 0) {
                 /* we warn but don't fail the link, as it may
                    be brought up later */
                 log_struct_link(LOG_WARNING, link,
-                                "MESSAGE=%*s: could not bring up interface: %s",
+                                "MESSAGE=%-*s: could not bring up interface: %s",
                                 IFNAMSIZ,
                                 link->ifname, strerror(-r),
                                 "ERRNO=%d", -r,
                                 NULL);
         }
 
-        link_unref(link);
-
         return 1;
 }
 
@@ -1410,6 +1709,8 @@ static int link_enslaved(Link *link) {
         assert(link->state == LINK_STATE_ENSLAVING);
         assert(link->network);
 
+        log_debug_link(link, "enslaved");
+
         if (!(link->flags & IFF_UP)) {
                 r = link_up(link);
                 if (r < 0) {
@@ -1418,14 +1719,11 @@ static int link_enslaved(Link *link) {
                 }
         }
 
-        if (!link->network->dhcp && !link->network->ipv4ll)
-                return link_enter_set_addresses(link);
-
-        return 0;
+        return link_enter_set_addresses(link);
 }
 
 static int enslave_handler(sd_rtnl *rtnl, sd_rtnl_message *m, void *userdata) {
-        Link *link = userdata;
+        _cleanup_link_unref_ Link *link = userdata;
         int r;
 
         assert(link);
@@ -1435,36 +1733,29 @@ static int enslave_handler(sd_rtnl *rtnl, sd_rtnl_message *m, void *userdata) {
 
         link->enslaving --;
 
-        if (IN_SET(link->state, LINK_STATE_FAILED, LINK_STATE_LINGER)) {
-                link_unref(link);
+        if (IN_SET(link->state, LINK_STATE_FAILED, LINK_STATE_LINGER))
                 return 1;
-        }
 
         r = sd_rtnl_message_get_errno(m);
-        if (r < 0) {
+        if (r < 0 && r != -EEXIST) {
                 log_struct_link(LOG_ERR, link,
-                                "MESSAGE=%*s: could not enslave: %s",
+                                "MESSAGE=%-*s: could not enslave: %s",
                                 IFNAMSIZ,
                                 link->ifname, strerror(-r),
                                 "ERRNO=%d", -r,
                                 NULL);
                 link_enter_failed(link);
-                link_unref(link);
                 return 1;
         }
 
-        log_debug_link(link, "enslaved");
-
-        if (link->enslaving == 0)
+        if (link->enslaving <= 0)
                 link_enslaved(link);
 
-        link_unref(link);
-
         return 1;
 }
 
 static int link_enter_enslave(Link *link) {
-        NetDev *vlan, *macvlan;
+        NetDev *vlan, *macvlan, *vxlan;
         Iterator i;
         int r;
 
@@ -1480,12 +1771,13 @@ static int link_enter_enslave(Link *link) {
             !link->network->bond &&
             !link->network->tunnel &&
             hashmap_isempty(link->network->vlans) &&
-            hashmap_isempty(link->network->macvlans))
+            hashmap_isempty(link->network->macvlans) &&
+            hashmap_isempty(link->network->vxlans))
                 return link_enslaved(link);
 
         if (link->network->bond) {
                 log_struct_link(LOG_DEBUG, link,
-                                "MESSAGE=%*s: enslaving by '%s'",
+                                "MESSAGE=%-*s: enslaving by '%s'",
                                 IFNAMSIZ,
                                 link->ifname, link->network->bond->ifname,
                                 NETDEV(link->network->bond),
@@ -1494,7 +1786,7 @@ static int link_enter_enslave(Link *link) {
                 r = netdev_enslave(link->network->bond, link, &enslave_handler);
                 if (r < 0) {
                         log_struct_link(LOG_WARNING, link,
-                                        "MESSAGE=%*s: could not enslave by '%s': %s",
+                                        "MESSAGE=%-*s: could not enslave by '%s': %s",
                                         IFNAMSIZ,
                                         link->ifname, link->network->bond->ifname, strerror(-r),
                                         NETDEV(link->network->bond),
@@ -1503,13 +1795,12 @@ static int link_enter_enslave(Link *link) {
                         return r;
                 }
 
-                link_ref(link);
                 link->enslaving ++;
         }
 
         if (link->network->bridge) {
                 log_struct_link(LOG_DEBUG, link,
-                                "MESSAGE=%*s: enslaving by '%s'",
+                                "MESSAGE=%-*s: enslaving by '%s'",
                                 IFNAMSIZ,
                                 link->ifname, link->network->bridge->ifname,
                                 NETDEV(link->network->bridge),
@@ -1518,7 +1809,7 @@ static int link_enter_enslave(Link *link) {
                 r = netdev_enslave(link->network->bridge, link, &enslave_handler);
                 if (r < 0) {
                         log_struct_link(LOG_WARNING, link,
-                                        "MESSAGE=%*s: could not enslave by '%s': %s",
+                                        "MESSAGE=%-*s: could not enslave by '%s': %s",
                                         IFNAMSIZ,
                                         link->ifname, link->network->bridge->ifname, strerror(-r),
                                         NETDEV(link->network->bridge),
@@ -1527,13 +1818,12 @@ static int link_enter_enslave(Link *link) {
                         return r;
                 }
 
-                link_ref(link);
                 link->enslaving ++;
         }
 
         if (link->network->tunnel) {
                 log_struct_link(LOG_DEBUG, link,
-                                "MESSAGE=%*s: enslaving by '%s'",
+                                "MESSAGE=%-*s: enslaving by '%s'",
                                 IFNAMSIZ,
                                 link->ifname, link->network->tunnel->ifname,
                                 NETDEV(link->network->tunnel),
@@ -1542,7 +1832,7 @@ static int link_enter_enslave(Link *link) {
                 r = netdev_enslave(link->network->tunnel, link, &enslave_handler);
                 if (r < 0) {
                         log_struct_link(LOG_WARNING, link,
-                                        "MESSAGE=%*s: could not enslave by '%s': %s",
+                                        "MESSAGE=%-*s: could not enslave by '%s': %s",
                                         IFNAMSIZ,
                                         link->ifname, link->network->tunnel->ifname, strerror(-r),
                                         NETDEV(link->network->tunnel),
@@ -1551,20 +1841,19 @@ static int link_enter_enslave(Link *link) {
                         return r;
                 }
 
-                link_ref(link);
                 link->enslaving ++;
         }
 
         HASHMAP_FOREACH(vlan, link->network->vlans, i) {
                 log_struct_link(LOG_DEBUG, link,
-                                "MESSAGE=%*s: enslaving by '%s'",
+                                "MESSAGE=%-*s: enslaving by '%s'",
                                 IFNAMSIZ,
                                 link->ifname, vlan->ifname, NETDEV(vlan), NULL);
 
                 r = netdev_enslave(vlan, link, &enslave_handler);
                 if (r < 0) {
                         log_struct_link(LOG_WARNING, link,
-                                        "MESSAGE=%*s: could not enslave by '%s': %s",
+                                        "MESSAGE=%-*s: could not enslave by '%s': %s",
                                         IFNAMSIZ,
                                         link->ifname, vlan->ifname, strerror(-r),
                                         NETDEV(vlan), NULL);
@@ -1572,20 +1861,19 @@ static int link_enter_enslave(Link *link) {
                         return r;
                 }
 
-                link_ref(link);
                 link->enslaving ++;
         }
 
         HASHMAP_FOREACH(macvlan, link->network->macvlans, i) {
                 log_struct_link(LOG_DEBUG, link,
-                                "MESSAGE=%*s: enslaving by '%s'",
+                                "MESSAGE=%-*s: enslaving by '%s'",
                                 IFNAMSIZ,
                                 link->ifname, macvlan->ifname, NETDEV(macvlan), NULL);
 
                 r = netdev_enslave(macvlan, link, &enslave_handler);
                 if (r < 0) {
                         log_struct_link(LOG_WARNING, link,
-                                        "MESSAGE=%*s: could not enslave by '%s': %s",
+                                        "MESSAGE=%-*s: could not enslave by '%s': %s",
                                         IFNAMSIZ,
                                         link->ifname, macvlan->ifname, strerror(-r),
                                         NETDEV(macvlan), NULL);
@@ -1593,7 +1881,26 @@ static int link_enter_enslave(Link *link) {
                         return r;
                 }
 
-                link_ref(link);
+                link->enslaving ++;
+        }
+
+        HASHMAP_FOREACH(vxlan, link->network->vxlans, i) {
+                log_struct_link(LOG_DEBUG, link,
+                                "MESSAGE=%*s: enslaving by '%s'",
+                                IFNAMSIZ,
+                                link->ifname, vxlan->ifname, NETDEV(vxlan), NULL);
+
+                r = netdev_enslave(vxlan, link, &enslave_handler);
+                if (r < 0) {
+                        log_struct_link(LOG_WARNING, link,
+                                        "MESSAGE=%*s: could not enslave by '%s': %s",
+                                        IFNAMSIZ,
+                                        link->ifname, vxlan->ifname, strerror(-r),
+                                        NETDEV(vxlan), NULL);
+                        link_enter_failed(link);
+                        return r;
+                }
+
                 link->enslaving ++;
         }
 
@@ -1639,7 +1946,7 @@ static int link_configure(Link *link) {
                         return r;
         }
 
-        if (link->network->dhcp) {
+        if (IN_SET(link->network->dhcp, DHCP_SUPPORT_BOTH, DHCP_SUPPORT_V4)) {
                 r = sd_dhcp_client_new(&link->dhcp_client);
                 if (r < 0)
                         return r;
@@ -1665,6 +1972,63 @@ static int link_configure(Link *link) {
                         if (r < 0)
                                 return r;
                 }
+
+                if (link->network->dhcp_routes) {
+                        r = sd_dhcp_client_set_request_option(link->dhcp_client, DHCP_OPTION_STATIC_ROUTE);
+                        if (r < 0)
+                                return r;
+                        r = sd_dhcp_client_set_request_option(link->dhcp_client, DHCP_OPTION_CLASSLESS_STATIC_ROUTE);
+                        if (r < 0)
+                                return r;
+                }
+
+                if (link->network->dhcp_sendhost) {
+                        _cleanup_free_ char *hostname = gethostname_malloc();
+                        if (!hostname)
+                                return -ENOMEM;
+
+                        if (!is_localhost(hostname)) {
+                                r = sd_dhcp_client_set_hostname(link->dhcp_client, hostname);
+                                if (r < 0)
+                                        return r;
+                        }
+                }
+        }
+
+        if (link->network->dhcp_server) {
+                r = sd_dhcp_server_new(&link->dhcp_server, link->ifindex);
+                if (r < 0)
+                        return r;
+
+                r = sd_dhcp_server_attach_event(link->dhcp_server, NULL, 0);
+                if (r < 0)
+                        return r;
+        }
+
+        if (IN_SET(link->network->dhcp, DHCP_SUPPORT_BOTH, DHCP_SUPPORT_V6)) {
+                r = sd_icmp6_nd_new(&link->icmp6_router_discovery);
+                if (r < 0)
+                        return r;
+
+                r = sd_icmp6_nd_attach_event(link->icmp6_router_discovery,
+                                             NULL, 0);
+                if (r < 0)
+                        return r;
+
+                r = sd_icmp6_nd_set_mac(link->icmp6_router_discovery,
+                                        &link->mac);
+                if (r < 0)
+                        return r;
+
+                r = sd_icmp6_nd_set_index(link->icmp6_router_discovery,
+                                          link->ifindex);
+                if (r < 0)
+                        return r;
+
+                r = sd_icmp6_nd_set_callback(link->icmp6_router_discovery,
+                                             icmp6_router_handler, link);
+                if (r < 0)
+                        return r;
         }
 
         if (link_has_carrier(link->flags, link->kernel_operstate)) {
@@ -1676,7 +2040,8 @@ static int link_configure(Link *link) {
         return link_enter_enslave(link);
 }
 
-int link_initialized(Link *link, struct udev_device *device) {
+static int link_initialized_and_synced(sd_rtnl *rtnl, sd_rtnl_message *m, void *userdata) {
+        _cleanup_link_unref_ Link *link = userdata;
         Network *network;
         int r;
 
@@ -1685,17 +2050,14 @@ int link_initialized(Link *link, struct udev_device *device) {
         assert(link->manager);
 
         if (link->state != LINK_STATE_INITIALIZING)
-                return 0;
-
-        if (device)
-                link->udev_device = udev_device_ref(device);
+                return 1;
 
-        log_debug_link(link, "udev initialized link");
+        log_debug_link(link, "link state is up-to-date");
 
-        r = network_get(link->manager, device, link->ifname, &link->mac, &network);
+        r = network_get(link->manager, link->udev_device, link->ifname, &link->mac, &network);
         if (r == -ENOENT) {
                 link_enter_unmanaged(link);
-                return 0;
+                return 1;
         } else if (r < 0)
                 return r;
 
@@ -1707,6 +2069,40 @@ int link_initialized(Link *link, struct udev_device *device) {
         if (r < 0)
                 return r;
 
+        return 1;
+}
+
+int link_initialized(Link *link, struct udev_device *device) {
+        _cleanup_rtnl_message_unref_ sd_rtnl_message *req = NULL;
+        int r;
+
+        assert(link);
+        assert(link->manager);
+        assert(link->manager->rtnl);
+        assert(device);
+
+        if (link->state != LINK_STATE_INITIALIZING)
+                return 0;
+
+        log_debug_link(link, "udev initialized link");
+
+        link->udev_device = udev_device_ref(device);
+
+        /* udev has initialized the link, but we don't know if we have yet processed
+           the NEWLINK messages with the latest state. Do a GETLINK, when it returns
+           we know that the pending NEWLINKs have already been processed and that we
+           are up-to-date */
+
+        r = sd_rtnl_message_new_link(link->manager->rtnl, &req, RTM_GETLINK, link->ifindex);
+        if (r < 0)
+                return r;
+
+        r = sd_rtnl_call_async(link->manager->rtnl, req, link_initialized_and_synced, link, 0, NULL);
+        if (r < 0)
+                return r;
+
+        link_ref(link);
+
         return 0;
 }
 
@@ -1833,12 +2229,13 @@ int link_rtnl_process_address(sd_rtnl *rtnl, sd_rtnl_message *message, void *use
 }
 
 static int link_get_address_handler(sd_rtnl *rtnl, sd_rtnl_message *m, void *userdata) {
-        Link *link = userdata;
+        _cleanup_link_unref_ Link *link = userdata;
         int r;
 
         assert(rtnl);
         assert(m);
         assert(link);
+        assert(link->manager);
 
         for (; m; m = sd_rtnl_message_next(m)) {
                 r = sd_rtnl_message_get_errno(m);
@@ -1883,6 +2280,8 @@ int link_add(Manager *m, sd_rtnl_message *message, Link **ret) {
         if (r < 0)
                 return r;
 
+        link_ref(link);
+
         if (detect_container(NULL) <= 0) {
                 /* not in a container, udev will be around */
                 sprintf(ifindex_str, "n%"PRIu64, link->ifindex);
@@ -1897,11 +2296,18 @@ int link_add(Manager *m, sd_rtnl_message *message, Link **ret) {
                         log_debug_link(link, "udev initializing link...");
                         return 0;
                 }
-        }
 
-        r = link_initialized(link, device);
-        if (r < 0)
-                return r;
+                r = link_initialized(link, device);
+                if (r < 0)
+                        return r;
+        } else {
+                /* we are calling a callback directly, so must take a ref */
+                link_ref(link);
+
+                r = link_initialized_and_synced(m->rtnl, NULL, link);
+                if (r < 0)
+                        return r;
+        }
 
         return 0;
 }
@@ -1974,6 +2380,16 @@ int link_update(Link *link, sd_rtnl_message *m) {
                                         return r;
                                 }
                         }
+
+                        if (link->dhcp6_client) {
+                                r = sd_dhcp6_client_set_mac(link->dhcp6_client,
+                                                            &link->mac);
+                                if (r < 0) {
+                                        log_warning_link(link, "Could not update MAC address in DHCPv6 client: %s",
+                                                         strerror(-r));
+                                        return r;
+                                }
+                        }
                 }
         }
 
@@ -2077,6 +2493,8 @@ int link_save(Link *link) {
         }
 
         if (link->dhcp_lease) {
+                assert(link->network);
+
                 r = dhcp_lease_save(link->dhcp_lease, link->lease_file);
                 if (r < 0)
                         goto finish;
@@ -2128,3 +2546,55 @@ static const char* const link_operstate_table[_LINK_OPERSTATE_MAX] = {
 };
 
 DEFINE_STRING_TABLE_LOOKUP(link_operstate, LinkOperationalState);
+
+static const char* const dhcp_support_table[_DHCP_SUPPORT_MAX] = {
+        [DHCP_SUPPORT_NONE] = "none",
+        [DHCP_SUPPORT_BOTH] = "both",
+        [DHCP_SUPPORT_V4] = "v4",
+        [DHCP_SUPPORT_V6] = "v6",
+};
+
+DEFINE_STRING_TABLE_LOOKUP(dhcp_support, DHCPSupport);
+
+int config_parse_dhcp(
+                const char* unit,
+                const char *filename,
+                unsigned line,
+                const char *section,
+                unsigned section_line,
+                const char *lvalue,
+                int ltype,
+                const char *rvalue,
+                void *data,
+                void *userdata) {
+
+        DHCPSupport *dhcp = data;
+        int k;
+
+        assert(filename);
+        assert(lvalue);
+        assert(rvalue);
+        assert(data);
+
+        /* Our enum shall be a superset of booleans, hence first try
+         * to parse as boolean, and then as enum */
+
+        k = parse_boolean(rvalue);
+        if (k > 0)
+                *dhcp = DHCP_SUPPORT_BOTH;
+        else if (k == 0)
+                *dhcp = DHCP_SUPPORT_NONE;
+        else {
+                DHCPSupport s;
+
+                s = dhcp_support_from_string(rvalue);
+                if (s < 0){
+                        log_syntax(unit, LOG_ERR, filename, line, -s, "Failed to parse DHCP option, ignoring: %s", rvalue);
+                        return 0;
+                }
+
+                *dhcp = s;
+        }
+
+        return 0;
+}
diff --git a/src/network/networkd-macvlan.c b/src/network/networkd-macvlan.c
new file mode 100644 (file)
index 0000000..9227144
--- /dev/null
@@ -0,0 +1,158 @@
+/*-*- Mode: C; c-basic-offset: 8; indent-tabs-mode: nil -*-*/
+
+/***
+  This file is part of systemd.
+
+  Copyright 2013 Tom Gundersen <teg@jklm.no>
+
+  systemd is free software; you can redistribute it and/or modify it
+  under the terms of the GNU Lesser General Public License as published by
+  the Free Software Foundation; either version 2.1 of the License, or
+  (at your option) any later version.
+
+  systemd is distributed in the hope that it will be useful, but
+  WITHOUT ANY WARRANTY; without even the implied warranty of
+  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+  Lesser General Public License for more details.
+
+  You should have received a copy of the GNU Lesser General Public License
+  along with systemd; If not, see <http://www.gnu.org/licenses/>.
+***/
+
+#include <net/if.h>
+
+#include "networkd.h"
+#include "network-internal.h"
+#include "conf-parser.h"
+#include "list.h"
+
+static const char* const macvlan_mode_table[_NETDEV_MACVLAN_MODE_MAX] = {
+        [NETDEV_MACVLAN_MODE_PRIVATE] = "private",
+        [NETDEV_MACVLAN_MODE_VEPA] = "vepa",
+        [NETDEV_MACVLAN_MODE_BRIDGE] = "bridge",
+        [NETDEV_MACVLAN_MODE_PASSTHRU] = "passthru",
+};
+
+DEFINE_STRING_TABLE_LOOKUP(macvlan_mode, MacVlanMode);
+DEFINE_CONFIG_PARSE_ENUM(config_parse_macvlan_mode, macvlan_mode, MacVlanMode, "Failed to parse macvlan mode");
+
+int netdev_create_macvlan(NetDev *netdev, Link *link, sd_rtnl_message_handler_t callback) {
+        _cleanup_rtnl_message_unref_ sd_rtnl_message *req = NULL;
+        const char *kind;
+        int r;
+
+        assert(netdev);
+        assert(netdev->kind == NETDEV_KIND_MACVLAN);
+        assert(link);
+        assert(callback);
+        assert(netdev->ifname);
+        assert(netdev->manager);
+        assert(netdev->manager->rtnl);
+
+        r = sd_rtnl_message_new_link(netdev->manager->rtnl, &req, RTM_NEWLINK, 0);
+        if (r < 0) {
+                log_error_netdev(netdev,
+                                 "Could not allocate RTM_NEWLINK message: %s",
+                                 strerror(-r));
+                return r;
+        }
+
+        if (link) {
+                r = sd_rtnl_message_append_u32(req, IFLA_LINK, link->ifindex);
+                if (r < 0) {
+                        log_error_netdev(netdev,
+                                         "Could not append IFLA_LINK attribute: %s",
+                                         strerror(-r));
+                        return r;
+                }
+        }
+
+        r = sd_rtnl_message_append_string(req, IFLA_IFNAME, netdev->ifname);
+        if (r < 0) {
+                log_error_netdev(netdev,
+                                 "Could not append IFLA_IFNAME attribute: %s",
+                                 strerror(-r));
+                return r;
+        }
+
+        if (netdev->mtu) {
+                r = sd_rtnl_message_append_u32(req, IFLA_MTU, netdev->mtu);
+                if (r < 0) {
+                        log_error_netdev(netdev,
+                                         "Could not append IFLA_MTU attribute: %s",
+                                         strerror(-r));
+                        return r;
+                }
+        }
+
+        if (netdev->mac) {
+                r = sd_rtnl_message_append_ether_addr(req, IFLA_ADDRESS, netdev->mac);
+                if (r < 0) {
+                        log_error_netdev(netdev,
+                                         "Colud not append IFLA_ADDRESS attribute: %s",
+                                         strerror(-r));
+                    return r;
+                }
+        }
+
+        r = sd_rtnl_message_open_container(req, IFLA_LINKINFO);
+        if (r < 0) {
+                log_error_netdev(netdev,
+                                 "Could not open IFLA_LINKINFO container: %s",
+                                 strerror(-r));
+                return r;
+        }
+
+        kind = netdev_kind_to_string(netdev->kind);
+        if (!kind) {
+                log_error_netdev(netdev, "Invalid kind");
+                return -EINVAL;
+        }
+
+        r = sd_rtnl_message_open_container_union(req, IFLA_INFO_DATA, kind);
+        if (r < 0) {
+                log_error_netdev(netdev,
+                                 "Could not open IFLA_INFO_DATA container: %s",
+                                  strerror(-r));
+                return r;
+        }
+
+        if (netdev->macvlan_mode != _NETDEV_MACVLAN_MODE_INVALID) {
+        r = sd_rtnl_message_append_u32(req, IFLA_MACVLAN_MODE, netdev->macvlan_mode);
+        if (r < 0) {
+                log_error_netdev(netdev,
+                                 "Could not append IFLA_MACVLAN_MODE attribute: %s",
+                                 strerror(-r));
+                        return r;
+                }
+        }
+
+        r = sd_rtnl_message_close_container(req);
+        if (r < 0) {
+                log_error_netdev(netdev,
+                                 "Could not close IFLA_INFO_DATA container %s",
+                                 strerror(-r));
+                return r;
+        }
+
+        r = sd_rtnl_message_close_container(req);
+        if (r < 0) {
+                log_error_netdev(netdev,
+                                 "Could not close IFLA_LINKINFO container %s",
+                                 strerror(-r));
+                return r;
+        }
+
+        r = sd_rtnl_call_async(netdev->manager->rtnl, req, callback, link, 0, NULL);
+        if (r < 0) {
+                log_error_netdev(netdev,
+                                 "Could not send rtnetlink message: %s", strerror(-r));
+                return r;
+        }
+
+        log_debug_netdev(netdev, "creating netdev");
+
+        netdev->state = NETDEV_STATE_CREATING;
+
+        return 0;
+}
index 2a0d5342daeb4672f84bc9aa3fda69e71d0cc2ea..c1d50128a5d978cb13dd269d6251ee331730215b 100644 (file)
@@ -75,6 +75,33 @@ static int setup_signals(Manager *m) {
         return 0;
 }
 
+static int setup_default_address_pool(Manager *m) {
+        AddressPool *p;
+        int r;
+
+        assert(m);
+
+        /* Add in the well-known private address ranges. */
+
+        r = address_pool_new_from_string(m, &p, AF_INET6, "fc00::", 7);
+        if (r < 0)
+                return r;
+
+        r = address_pool_new_from_string(m, &p, AF_INET, "192.168.0.0", 16);
+        if (r < 0)
+                return r;
+
+        r = address_pool_new_from_string(m, &p, AF_INET, "172.16.0.0", 12);
+        if (r < 0)
+                return r;
+
+        r = address_pool_new_from_string(m, &p, AF_INET, "10.0.0.0", 8);
+        if (r < 0)
+                return r;
+
+        return 0;
+}
+
 int manager_new(Manager **ret) {
         _cleanup_manager_free_ Manager *m = NULL;
         int r;
@@ -129,6 +156,10 @@ int manager_new(Manager **ret) {
 
         LIST_HEAD_INIT(m->networks);
 
+        r = setup_default_address_pool(m);
+        if (r < 0)
+                return r;
+
         *ret = m;
         m = NULL;
 
@@ -139,6 +170,7 @@ void manager_free(Manager *m) {
         Network *network;
         NetDev *netdev;
         Link *link;
+        AddressPool *pool;
 
         if (!m)
                 return;
@@ -164,6 +196,9 @@ void manager_free(Manager *m) {
                 netdev_unref(netdev);
         hashmap_free(m->netdevs);
 
+        while ((pool = m->address_pools))
+                address_pool_free(pool);
+
         sd_rtnl_unref(m->rtnl);
 
         free(m);
@@ -257,7 +292,8 @@ static int manager_rtnl_process_link(sd_rtnl *rtnl, sd_rtnl_message *message, vo
                         /* link is new, so add it */
                         r = link_add(m, message, &link);
                         if (r < 0) {
-                                log_debug("could not add new link");
+                                log_debug("could not add new link: %s",
+                                           strerror(-r));
                                 return 0;
                         }
                 }
@@ -375,6 +411,8 @@ int manager_udev_listen(Manager *m) {
 int manager_rtnl_listen(Manager *m) {
         int r;
 
+        assert(m);
+
         r = sd_rtnl_attach_event(m->rtnl, m->event, 0);
         if (r < 0)
                 return r;
@@ -460,3 +498,23 @@ finish:
 
         return r;
 }
+
+int manager_address_pool_acquire(Manager *m, unsigned family, unsigned prefixlen, union in_addr_union *found) {
+        AddressPool *p;
+        int r;
+
+        assert(m);
+        assert(prefixlen > 0);
+        assert(found);
+
+        LIST_FOREACH(address_pools, p, m->address_pools) {
+                if (p->family != family)
+                        continue;
+
+                r = address_pool_acquire(p, prefixlen, found);
+                if (r != 0)
+                        return r;
+        }
+
+        return 0;
+}
index dff0ae6a16aba6d06a205ecf5ce9e1deef81bfeb..5955f5195e26074ea677428f50b6a8e3da86ba94 100644 (file)
@@ -23,11 +23,28 @@ NetDev.Description,      config_parse_string,                0,
 NetDev.Name,             config_parse_ifname,                0,                             offsetof(NetDev, ifname)
 NetDev.Kind,             config_parse_netdev_kind,           0,                             offsetof(NetDev, kind)
 NetDev.MTUBytes,         config_parse_iec_size,              0,                             offsetof(NetDev, mtu)
+NetDev.MACAddress,       config_parse_hwaddr,                0,                             offsetof(NetDev, mac)
 VLAN.Id,                 config_parse_uint64,                0,                             offsetof(NetDev, vlanid)
 MACVLAN.Mode,            config_parse_macvlan_mode,          0,                             offsetof(NetDev, macvlan_mode)
-Tunnel.Local,            config_parse_tunnel_address,        0,                             offsetof(NetDev, tunnel_local)
-Tunnel.Remote,           config_parse_tunnel_address,        0,                             offsetof(NetDev, tunnel_remote)
-Tunnel.TOS,              config_parse_unsigned,              0,                             offsetof(NetDev, tunnel_tos)
-Tunnel.TTL,              config_parse_unsigned,              0,                             offsetof(NetDev, tunnel_ttl)
+Tunnel.Local,            config_parse_tunnel_address,        0,                             offsetof(NetDev, local)
+Tunnel.Remote,           config_parse_tunnel_address,        0,                             offsetof(NetDev, remote)
+Tunnel.TOS,              config_parse_unsigned,              0,                             offsetof(NetDev, tos)
+Tunnel.TTL,              config_parse_unsigned,              0,                             offsetof(NetDev, ttl)
 Tunnel.DiscoverPathMTU,  config_parse_bool,                  0,                             offsetof(NetDev, tunnel_pmtudisc)
 Peer.Name,               config_parse_ifname,                0,                             offsetof(NetDev, ifname_peer)
+Peer.MACAddress,         config_parse_hwaddr,                0,                             offsetof(NetDev, mac_peer)
+VXLAN.Id,                config_parse_uint64,                0,                             offsetof(NetDev, vxlanid)
+VXLAN.Group,             config_parse_tunnel_address,        0,                             offsetof(NetDev, group)
+VXLAN.TOS,               config_parse_unsigned,              0,                             offsetof(NetDev, tos)
+VXLAN.TTL,               config_parse_unsigned,              0,                             offsetof(NetDev, ttl)
+VXLAN.MacLearning,       config_parse_bool,                  0,                             offsetof(NetDev, learning)
+Tun.OneQueue,            config_parse_bool,                  0,                             offsetof(NetDev, one_queue)
+Tun.MultiQueue,          config_parse_bool,                  0,                             offsetof(NetDev, multi_queue)
+Tun.PacketInfo,          config_parse_bool,                  0,                             offsetof(NetDev, packet_info)
+Tun.User,                config_parse_string,                0,                             offsetof(NetDev, user_name)
+Tun.Group,               config_parse_string,                0,                             offsetof(NetDev, group_name)
+Tap.OneQueue,            config_parse_bool,                  0,                             offsetof(NetDev, one_queue)
+Tap.MultiQueue,          config_parse_bool,                  0,                             offsetof(NetDev, multi_queue)
+Tap.PacketInfo,          config_parse_bool,                  0,                             offsetof(NetDev, packet_info)
+Tap.User,                config_parse_string,                0,                             offsetof(NetDev, user_name)
+Tap.Group,               config_parse_string,                0,                             offsetof(NetDev, group_name)
index 1519419c1f26f5444afff3369e9d675dd441f3a1..a8c1ea3b44a7e3b24f4409c66a2069298611fc46 100644 (file)
 #include "conf-files.h"
 #include "conf-parser.h"
 #include "list.h"
-
-#define VLANID_MAX 4094
+#include "siphash24.h"
 
 static const char* const netdev_kind_table[_NETDEV_KIND_MAX] = {
         [NETDEV_KIND_BRIDGE] = "bridge",
         [NETDEV_KIND_BOND] = "bond",
         [NETDEV_KIND_VLAN] = "vlan",
         [NETDEV_KIND_MACVLAN] = "macvlan",
+        [NETDEV_KIND_VXLAN] = "vxlan",
         [NETDEV_KIND_IPIP] = "ipip",
         [NETDEV_KIND_GRE] = "gre",
         [NETDEV_KIND_SIT] = "sit",
         [NETDEV_KIND_VETH] = "veth",
-        [NETDEV_KIND_VTI] = "vti"
+        [NETDEV_KIND_VTI] = "vti",
+        [NETDEV_KIND_DUMMY] = "dummy",
+        [NETDEV_KIND_TUN] = "tun",
+        [NETDEV_KIND_TAP] = "tap",
 };
 
 DEFINE_STRING_TABLE_LOOKUP(netdev_kind, NetDevKind);
 DEFINE_CONFIG_PARSE_ENUM(config_parse_netdev_kind, netdev_kind, NetDevKind, "Failed to parse netdev kind");
 
-static const char* const macvlan_mode_table[_NETDEV_MACVLAN_MODE_MAX] = {
-        [NETDEV_MACVLAN_MODE_PRIVATE] = "private",
-        [NETDEV_MACVLAN_MODE_VEPA] = "vepa",
-        [NETDEV_MACVLAN_MODE_BRIDGE] = "bridge",
-        [NETDEV_MACVLAN_MODE_PASSTHRU] = "passthru",
-};
-
-DEFINE_STRING_TABLE_LOOKUP(macvlan_mode, MacVlanMode);
-DEFINE_CONFIG_PARSE_ENUM(config_parse_macvlan_mode, macvlan_mode, MacVlanMode, "Failed to parse macvlan mode");
-
 static void netdev_cancel_callbacks(NetDev *netdev) {
         _cleanup_rtnl_message_unref_ sd_rtnl_message *m = NULL;
         netdev_enslave_callback *callback;
@@ -92,6 +85,11 @@ static void netdev_free(NetDev *netdev) {
 
         free(netdev->description);
         free(netdev->ifname);
+        free(netdev->ifname_peer);
+        free(netdev->mac);
+        free(netdev->mac_peer);
+        free(netdev->user_name);
+        free(netdev->group_name);
 
         condition_free_list(netdev->match_host);
         condition_free_list(netdev->match_virt);
@@ -190,13 +188,16 @@ static int netdev_enslave_ready(NetDev *netdev, Link* link, sd_rtnl_message_hand
                 return r;
         }
 
+        link_ref(link);
+
         log_debug_netdev(netdev, "enslaving link '%s'", link->ifname);
 
         return 0;
 }
 
 static int netdev_enter_ready(NetDev *netdev) {
-        netdev_enslave_callback *callback;
+        netdev_enslave_callback *callback, *callback_next;
+        int r;
 
         assert(netdev);
         assert(netdev->ifname);
@@ -208,16 +209,24 @@ static int netdev_enter_ready(NetDev *netdev) {
 
         log_info_netdev(netdev, "netdev ready");
 
-        LIST_FOREACH(callbacks, callback, netdev->callbacks) {
+        LIST_FOREACH_SAFE(callbacks, callback, callback_next, netdev->callbacks) {
                 /* enslave the links that were attempted to be enslaved before the
                  * link was ready */
-                netdev_enslave_ready(netdev, callback->link, callback->callback);
+                r = netdev_enslave_ready(netdev, callback->link, callback->callback);
+                if (r < 0)
+                        return r;
+
+                LIST_REMOVE(callbacks, netdev->callbacks, callback);
+                link_unref(callback->link);
+                free(callback);
         }
 
         return 0;
 }
+
+/* callback for netdev's created without a backing Link */
 static int netdev_create_handler(sd_rtnl *rtnl, sd_rtnl_message *m, void *userdata) {
-        NetDev *netdev = userdata;
+        _cleanup_netdev_unref_ NetDev *netdev = userdata;
         int r;
 
         assert(netdev->state != _NETDEV_STATE_INVALID);
@@ -235,42 +244,12 @@ static int netdev_create_handler(sd_rtnl *rtnl, sd_rtnl_message *m, void *userda
         return 1;
 }
 
-int config_parse_tunnel_address(const char *unit,
-                                const char *filename,
-                                unsigned line,
-                                const char *section,
-                                unsigned section_line,
-                                const char *lvalue,
-                                int ltype,
-                                const char *rvalue,
-                                void *data,
-                                void *userdata) {
-        NetDev *n = data;
-        unsigned char family = AF_INET;
-        int r;
-
-        assert(filename);
-        assert(lvalue);
-        assert(rvalue);
-        assert(data);
-
-        r = net_parse_inaddr(rvalue, &family, n);
-        if (r < 0) {
-                log_syntax(unit, LOG_ERR, filename, line, EINVAL,
-                           "Tunnel address is invalid, ignoring assignment: %s", rvalue);
-                return 0;
-        }
-       return 0;
-}
-
-static int netdev_create(NetDev *netdev, Link *link, sd_rtnl_message_handler_t callback) {
+static int netdev_create(NetDev *netdev) {
         _cleanup_rtnl_message_unref_ sd_rtnl_message *req = NULL;
         const char *kind;
         int r;
 
         assert(netdev);
-        assert(!(netdev->kind == NETDEV_KIND_VLAN || netdev->kind == NETDEV_KIND_MACVLAN) ||
-               (link && callback));
         assert(netdev->ifname);
         assert(netdev->manager);
         assert(netdev->manager->rtnl);
@@ -283,16 +262,6 @@ static int netdev_create(NetDev *netdev, Link *link, sd_rtnl_message_handler_t c
                 return r;
         }
 
-        if (link) {
-                r = sd_rtnl_message_append_u32(req, IFLA_LINK, link->ifindex);
-                if (r < 0) {
-                        log_error_netdev(netdev,
-                                         "Could not append IFLA_LINK attribute: %s",
-                                         strerror(-r));
-                        return r;
-                }
-        }
-
         r = sd_rtnl_message_append_string(req, IFLA_IFNAME, netdev->ifname);
         if (r < 0) {
                 log_error_netdev(netdev,
@@ -301,7 +270,7 @@ static int netdev_create(NetDev *netdev, Link *link, sd_rtnl_message_handler_t c
                 return r;
         }
 
-        if(netdev->mtu) {
+        if (netdev->mtu) {
                 r = sd_rtnl_message_append_u32(req, IFLA_MTU, netdev->mtu);
                 if (r < 0) {
                         log_error_netdev(netdev,
@@ -311,6 +280,16 @@ static int netdev_create(NetDev *netdev, Link *link, sd_rtnl_message_handler_t c
                 }
         }
 
+        if (netdev->mac) {
+                r = sd_rtnl_message_append_ether_addr(req, IFLA_ADDRESS, netdev->mac);
+                if (r < 0) {
+                        log_error_netdev(netdev,
+                                         "Colud not append IFLA_ADDRESS attribute: %s",
+                                         strerror(-r));
+                    return r;
+                }
+        }
+
         r = sd_rtnl_message_open_container(req, IFLA_LINKINFO);
         if (r < 0) {
                 log_error_netdev(netdev,
@@ -333,26 +312,6 @@ static int netdev_create(NetDev *netdev, Link *link, sd_rtnl_message_handler_t c
                 return r;
         }
 
-        if (netdev->vlanid <= VLANID_MAX) {
-                r = sd_rtnl_message_append_u16(req, IFLA_VLAN_ID, netdev->vlanid);
-                if (r < 0) {
-                        log_error_netdev(netdev,
-                                         "Could not append IFLA_VLAN_ID attribute: %s",
-                                         strerror(-r));
-                        return r;
-                }
-        }
-
-        if (netdev->macvlan_mode != _NETDEV_MACVLAN_MODE_INVALID) {
-        r = sd_rtnl_message_append_u32(req, IFLA_MACVLAN_MODE, netdev->macvlan_mode);
-        if (r < 0) {
-                log_error_netdev(netdev,
-                                 "Could not append IFLA_MACVLAN_MODE attribute: %s",
-                                 strerror(-r));
-                        return r;
-                }
-        }
-
         r = sd_rtnl_message_close_container(req);
         if (r < 0) {
                 log_error_netdev(netdev,
@@ -369,16 +328,15 @@ static int netdev_create(NetDev *netdev, Link *link, sd_rtnl_message_handler_t c
                 return r;
         }
 
-        if (link)
-                r = sd_rtnl_call_async(netdev->manager->rtnl, req, callback, link, 0, NULL);
-        else
-                r = sd_rtnl_call_async(netdev->manager->rtnl, req, &netdev_create_handler, netdev, 0, NULL);
+        r = sd_rtnl_call_async(netdev->manager->rtnl, req, &netdev_create_handler, netdev, 0, NULL);
         if (r < 0) {
                 log_error_netdev(netdev,
                                  "Could not send rtnetlink message: %s", strerror(-r));
                 return r;
         }
 
+        netdev_ref(netdev);
+
         log_debug_netdev(netdev, "creating netdev");
 
         netdev->state = NETDEV_STATE_CREATING;
@@ -386,17 +344,25 @@ static int netdev_create(NetDev *netdev, Link *link, sd_rtnl_message_handler_t c
         return 0;
 }
 
+/* the callback must be called, possibly after a timeout, as otherwise the Link will hang */
 int netdev_enslave(NetDev *netdev, Link *link, sd_rtnl_message_handler_t callback) {
         int r;
 
-        if (netdev->kind == NETDEV_KIND_VLAN || netdev->kind == NETDEV_KIND_MACVLAN)
-                return netdev_create(netdev, link, callback);
-
-        if(netdev->kind == NETDEV_KIND_IPIP ||
-           netdev->kind == NETDEV_KIND_GRE ||
-           netdev->kind ==  NETDEV_KIND_SIT ||
-           netdev->kind ==  NETDEV_KIND_VTI)
-                return netdev_create_tunnel(link, netdev_create_handler);
+        switch(netdev->kind) {
+        case NETDEV_KIND_VLAN:
+                return netdev_create_vlan(netdev, link, callback);
+        case NETDEV_KIND_MACVLAN:
+                return netdev_create_macvlan(netdev, link, callback);
+        case NETDEV_KIND_VXLAN:
+                return netdev_create_vxlan(netdev, link, callback);
+        case NETDEV_KIND_IPIP:
+        case NETDEV_KIND_GRE:
+        case NETDEV_KIND_SIT:
+        case NETDEV_KIND_VTI:
+                return netdev_create_tunnel(netdev, link, callback);
+        default:
+                break;
+        }
 
         if (netdev->state == NETDEV_STATE_READY) {
                 r = netdev_enslave_ready(netdev, link, callback);
@@ -412,6 +378,7 @@ int netdev_enslave(NetDev *netdev, Link *link, sd_rtnl_message_handler_t callbac
 
                 cb->callback = callback;
                 cb->link = link;
+                link_ref(link);
 
                 LIST_PREPEND(callbacks, netdev->callbacks, cb);
         }
@@ -493,15 +460,21 @@ int netdev_set_ifindex(NetDev *netdev, sd_rtnl_message *message) {
                 return r;
         }
 
-        kind = netdev_kind_to_string(netdev->kind);
-        if (!kind) {
-                log_error_netdev(netdev, "Could not get kind");
-                netdev_enter_failed(netdev);
-                return -EINVAL;
+        if (netdev->kind == NETDEV_KIND_TAP)
+                /* the kernel does not distinguish between tun and tap */
+                kind = "tun";
+        else {
+                kind = netdev_kind_to_string(netdev->kind);
+                if (!kind) {
+                        log_error_netdev(netdev, "Could not get kind");
+                        netdev_enter_failed(netdev);
+                        return -EINVAL;
+                }
         }
 
         if (!streq(kind, received_kind)) {
-                log_error_netdev(netdev, "Received newlink with wrong KIND %s, "
+                log_error_netdev(netdev,
+                                 "Received newlink with wrong KIND %s, "
                                  "expected %s", received_kind, kind);
                 netdev_enter_failed(netdev);
                 return r;
@@ -516,6 +489,52 @@ int netdev_set_ifindex(NetDev *netdev, sd_rtnl_message *message) {
         return 0;
 }
 
+#define HASH_KEY SD_ID128_MAKE(52,e1,45,bd,00,6f,29,96,21,c6,30,6d,83,71,04,48)
+
+static int netdev_get_mac(const char *ifname, struct ether_addr **ret) {
+        _cleanup_free_ struct ether_addr *mac = NULL;
+        uint8_t result[8];
+        size_t l, sz;
+        uint8_t *v;
+        int r;
+
+        assert(ifname);
+        assert(ret);
+
+        mac = new0(struct ether_addr, 1);
+        if (!mac)
+                return -ENOMEM;
+
+        l = strlen(ifname);
+        sz = sizeof(sd_id128_t) + l;
+        v = alloca(sz);
+
+        /* fetch some persistent data unique to the machine */
+        r = sd_id128_get_machine((sd_id128_t*) v);
+        if (r < 0)
+                return r;
+
+        /* combine with some data unique (on this machine) to this
+         * netdev */
+        memcpy(v + sizeof(sd_id128_t), ifname, l);
+
+        /* Let's hash the host machine ID plus the container name. We
+         * use a fixed, but originally randomly created hash key here. */
+        siphash24(result, v, sz, HASH_KEY.bytes);
+
+        assert_cc(ETH_ALEN <= sizeof(result));
+        memcpy(mac->ether_addr_octet, result, ETH_ALEN);
+
+        /* see eth_random_addr in the kernel */
+        mac->ether_addr_octet[0] &= 0xfe;        /* clear multicast bit */
+        mac->ether_addr_octet[0] |= 0x02;        /* set local assignment bit (IEEE802) */
+
+        *ret = mac;
+        mac = NULL;
+
+        return 0;
+}
+
 static int netdev_load_one(Manager *manager, const char *filename) {
         _cleanup_netdev_unref_ NetDev *netdev = NULL;
         _cleanup_fclose_ FILE *file = NULL;
@@ -547,9 +566,12 @@ static int netdev_load_one(Manager *manager, const char *filename) {
         netdev->kind = _NETDEV_KIND_INVALID;
         netdev->macvlan_mode = _NETDEV_MACVLAN_MODE_INVALID;
         netdev->vlanid = VLANID_MAX + 1;
+        netdev->vxlanid = VXLAN_VID_MAX + 1;
         netdev->tunnel_pmtudisc = true;
+        netdev->learning = true;
 
-        r = config_parse(NULL, filename, file, "Match\0NetDev\0VLAN\0MACVLAN\0Tunnel\0Peer\0",
+        r = config_parse(NULL, filename, file,
+                         "Match\0NetDev\0VLAN\0MACVLAN\0VXLAN\0Tunnel\0Peer\0Tun\0Tap\0",
                          config_item_perf_lookup, (void*) network_netdev_gperf_lookup,
                          false, false, netdev);
         if (r < 0) {
@@ -557,9 +579,41 @@ static int netdev_load_one(Manager *manager, const char *filename) {
                 return r;
         }
 
-        if (netdev->kind == _NETDEV_KIND_INVALID) {
+        switch (netdev->kind) {
+        case _NETDEV_KIND_INVALID:
                 log_warning("NetDev without Kind configured in %s. Ignoring", filename);
                 return 0;
+        case NETDEV_KIND_VLAN:
+                if (netdev->vlanid > VLANID_MAX) {
+                        log_warning("VLAN without valid Id configured in %s. Ignoring", filename);
+                        return 0;
+                }
+                break;
+        case NETDEV_KIND_VXLAN:
+                if (netdev->vxlanid > VXLAN_VID_MAX) {
+                        log_warning("VXLAN without valid Id configured in %s. Ignoring", filename);
+                        return 0;
+                }
+                break;
+        case NETDEV_KIND_IPIP:
+        case NETDEV_KIND_GRE:
+        case NETDEV_KIND_SIT:
+        case NETDEV_KIND_VTI:
+                if (netdev->local.in.s_addr == INADDR_ANY) {
+                        log_warning("Tunnel without local address configured in %s. Ignoring", filename);
+                        return 0;
+                }
+                if (netdev->remote.in.s_addr == INADDR_ANY) {
+                        log_warning("Tunnel without remote address configured in %s. Ignoring", filename);
+                        return 0;
+                }
+                if (netdev->family != AF_INET) {
+                        log_warning("Tunnel with invalid address family configured in %s. Ignoring", filename);
+                        return 0;
+                }
+                break;
+        default:
+                break;
         }
 
         if (!netdev->ifname) {
@@ -567,13 +621,14 @@ static int netdev_load_one(Manager *manager, const char *filename) {
                 return 0;
         }
 
-        if (netdev->kind == NETDEV_KIND_VLAN && netdev->vlanid > VLANID_MAX) {
-                log_warning("VLAN without valid Id configured in %s. Ignoring", filename);
+        if (netdev->kind != NETDEV_KIND_VLAN && netdev->vlanid <= VLANID_MAX) {
+                log_warning("VLAN Id configured for a %s in %s. Ignoring",
+                            netdev_kind_to_string(netdev->kind), filename);
                 return 0;
         }
 
-        if (netdev->kind != NETDEV_KIND_VLAN && netdev->vlanid <= VLANID_MAX) {
-                log_warning("VLAN Id configured for a %s in %s. Ignoring",
+        if (netdev->kind != NETDEV_KIND_VXLAN && netdev->vxlanid <= VXLAN_VID_MAX) {
+                log_warning("VXLAN Id configured for a %s in %s. Ignoring",
                             netdev_kind_to_string(netdev->kind), filename);
                 return 0;
         }
@@ -595,24 +650,65 @@ static int netdev_load_one(Manager *manager, const char *filename) {
                              NULL, NULL, NULL, NULL, NULL, NULL) <= 0)
                 return 0;
 
+        if (!netdev->mac) {
+                r = netdev_get_mac(netdev->ifname, &netdev->mac);
+                if (r < 0) {
+                        log_error("Failed to generate predictable MAC address for %s",
+                                  netdev->ifname);
+                        return r;
+                }
+        }
+
         r = hashmap_put(netdev->manager->netdevs, netdev->ifname, netdev);
         if (r < 0)
                 return r;
 
         LIST_HEAD_INIT(netdev->callbacks);
 
-        if(netdev->kind == NETDEV_KIND_VETH)
-                return netdev_create_veth(netdev, netdev_create_handler);
+        switch (netdev->kind) {
+        case NETDEV_KIND_VETH:
+                if (!netdev->ifname_peer) {
+                        log_warning("Veth NetDev without peer name configured "
+                                    "in %s. Ignoring", filename);
+                        return 0;
+                }
+
+                if (!netdev->mac) {
+                        r = netdev_get_mac(netdev->ifname_peer, &netdev->mac_peer);
+                        if (r < 0) {
+                                log_error("Failed to generate predictable MAC address for %s",
+                                          netdev->ifname_peer);
+                                return r;
+                        }
+                }
 
-        if (netdev->kind != NETDEV_KIND_VLAN &&
-            netdev->kind != NETDEV_KIND_MACVLAN &&
-            netdev->kind != NETDEV_KIND_IPIP &&
-            netdev->kind != NETDEV_KIND_GRE &&
-            netdev->kind != NETDEV_KIND_SIT &&
-            netdev->kind != NETDEV_KIND_VTI) {
-                r = netdev_create(netdev, NULL, NULL);
+                r = netdev_create_veth(netdev, netdev_create_handler);
                 if (r < 0)
                         return r;
+
+                break;
+        case NETDEV_KIND_DUMMY:
+                r = netdev_create_dummy(netdev, netdev_create_handler);
+                if (r < 0)
+                        return r;
+
+                break;
+        case NETDEV_KIND_BRIDGE:
+        case NETDEV_KIND_BOND:
+                r = netdev_create(netdev);
+                if (r < 0)
+                        return r;
+                break;
+
+        case NETDEV_KIND_TUN:
+        case NETDEV_KIND_TAP:
+                r = netdev_create_tuntap(netdev);
+                if (r < 0)
+                        return r;
+                break;
+
+        default:
+                break;
         }
 
         log_debug_netdev(netdev, "loaded %s", netdev_kind_to_string(netdev->kind));
index 5038cb5455d616e98f644f2f2c2a1fea2a5046f7..ce9047cd06c4ce6a807d737bb87bfd3b3aa50c40 100644 (file)
@@ -29,7 +29,9 @@ Network.Bridge,              config_parse_netdev,                0,
 Network.Bond,                config_parse_netdev,                0,                             offsetof(Network, bond)
 Network.VLAN,                config_parse_netdev,                0,                             offsetof(Network, vlans)
 Network.MACVLAN,             config_parse_netdev,                0,                             offsetof(Network, macvlans)
-Network.DHCP,                config_parse_bool,                  0,                             offsetof(Network, dhcp)
+Network.VXLAN,               config_parse_netdev,                0,                             offsetof(Network, vxlans)
+Network.DHCP,                config_parse_dhcp,                  0,                             offsetof(Network, dhcp)
+Network.DHCPServer,          config_parse_bool,                  0,                             offsetof(Network, dhcp_server)
 Network.IPv4LL,              config_parse_bool,                  0,                             offsetof(Network, ipv4ll)
 Network.Address,             config_parse_address,               0,                             0
 Network.Gateway,             config_parse_gateway,               0,                             0
@@ -41,6 +43,14 @@ Address.Broadcast,           config_parse_broadcast,             0,
 Address.Label,               config_parse_label,                 0,                             0
 Route.Gateway,               config_parse_gateway,               0,                             0
 Route.Destination,           config_parse_destination,           0,                             0
+DHCP.UseDNS,                 config_parse_bool,                  0,                             offsetof(Network, dhcp_dns)
+DHCP.UseMTU,                 config_parse_bool,                  0,                             offsetof(Network, dhcp_mtu)
+DHCP.UseHostname,            config_parse_bool,                  0,                             offsetof(Network, dhcp_hostname)
+DHCP.UseDomainName,          config_parse_bool,                  0,                             offsetof(Network, dhcp_domainname)
+DHCP.UseRoutes,              config_parse_bool,                  0,                             offsetof(Network, dhcp_routes)
+DHCP.SendHostname,           config_parse_bool,                  0,                             offsetof(Network, dhcp_sendhost)
+DHCP.CriticalConnection,     config_parse_bool,                  0,                             offsetof(Network, dhcp_critical)
+/* backwards compatibility: do not add new entries to this section */
 DHCPv4.UseDNS,               config_parse_bool,                  0,                             offsetof(Network, dhcp_dns)
 DHCPv4.UseMTU,               config_parse_bool,                  0,                             offsetof(Network, dhcp_mtu)
 DHCPv4.UseHostname,          config_parse_bool,                  0,                             offsetof(Network, dhcp_hostname)
index f42fc171bd0b133c58668c34a4d4f3990c510b1e..9ab4f2306887ff4d0d0aa4f685e353662361c5d4 100644 (file)
@@ -69,6 +69,10 @@ static int network_load_one(Manager *manager, const char *filename) {
         if (!network->macvlans)
                 return log_oom();
 
+        network->vxlans = hashmap_new(uint64_hash_func, uint64_compare_func);
+        if (!network->vxlans)
+                return log_oom();
+
         network->addresses_by_section = hashmap_new(uint64_hash_func, uint64_compare_func);
         if (!network->addresses_by_section)
                 return log_oom();
@@ -85,6 +89,8 @@ static int network_load_one(Manager *manager, const char *filename) {
         network->dhcp_dns = true;
         network->dhcp_hostname = true;
         network->dhcp_domainname = true;
+        network->dhcp_routes = true;
+        network->dhcp_sendhost = true;
 
         r = config_parse(NULL, filename, file, "Match\0Network\0Address\0Route\0DHCPv4\0", config_item_perf_lookup,
                         (void*) network_network_gperf_lookup, false, false, network);
@@ -175,6 +181,8 @@ void network_free(Network *network) {
 
         netdev_unref(network->bond);
 
+        netdev_unref(network->tunnel);
+
         HASHMAP_FOREACH(netdev, network->vlans, i)
                 netdev_unref(netdev);
         hashmap_free(network->vlans);
@@ -183,6 +191,10 @@ void network_free(Network *network) {
                 netdev_unref(netdev);
         hashmap_free(network->macvlans);
 
+        HASHMAP_FOREACH(netdev, network->vxlans, i)
+                netdev_unref(netdev);
+        hashmap_free(network->vxlans);
+
         while ((route = network->static_routes))
                 route_free(route);
 
@@ -223,7 +235,7 @@ int network_get(Manager *manager, struct udev_device *device,
                                      udev_device_get_property_value(device, "ID_NET_DRIVER"),
                                      udev_device_get_devtype(device),
                                      ifname)) {
-                        log_debug("%*s: found matching network '%s'", IFNAMSIZ, ifname,
+                        log_debug("%-*s: found matching network '%s'", IFNAMSIZ, ifname,
                                   network->filename);
                         *ret = network;
                         return 0;
@@ -325,6 +337,15 @@ int config_parse_netdev(const char *unit,
                         return 0;
                 }
 
+                break;
+        case NETDEV_KIND_VXLAN:
+                r = hashmap_put(network->vxlans, netdev->ifname, netdev);
+                if (r < 0) {
+                        log_syntax(unit, LOG_ERR, filename, line, EINVAL,
+                                   "Can not add VXLAN to network: %s", rvalue);
+                        return 0;
+                }
+
                 break;
         default:
                 assert_not_reached("Can not parse NetDev");
index d0a04ecfeebcd3388469cda35e22e083101c7b5d..acfe3f023f1dfd2a15f1df406acb535158a28232 100644 (file)
@@ -164,6 +164,8 @@ int route_drop(Route *route, Link *link,
                 return r;
         }
 
+        link_ref(link);
+
         return 0;
 }
 
@@ -235,6 +237,8 @@ int route_configure(Route *route, Link *link,
                 return r;
         }
 
+        link_ref(link);
+
         return 0;
 }
 
index 60b16ba8496aff623d038adc15a6b62ca6dd2a02..734148779544a5b841532b7e70070033a53c6dad 100644 (file)
@@ -29,6 +29,8 @@
 #include "networkd.h"
 #include "network-internal.h"
 #include "util.h"
+#include "missing.h"
+#include "conf-parser.h"
 
 
 static int netdev_fill_ipip_rtnl_message(Link *link, sd_rtnl_message *m) {
@@ -42,6 +44,8 @@ static int netdev_fill_ipip_rtnl_message(Link *link, sd_rtnl_message *m) {
 
         netdev = link->network->tunnel;
 
+        assert(netdev->family == AF_INET);
+
         r = sd_rtnl_message_append_string(m, IFLA_IFNAME, netdev->ifname);
         if (r < 0) {
                 log_error_netdev(netdev,
@@ -60,6 +64,16 @@ static int netdev_fill_ipip_rtnl_message(Link *link, sd_rtnl_message *m) {
                 }
         }
 
+        if (netdev->mac) {
+                r = sd_rtnl_message_append_ether_addr(m, IFLA_ADDRESS, netdev->mac);
+                if (r < 0) {
+                        log_error_netdev(netdev,
+                                         "Colud not append IFLA_ADDRESS attribute: %s",
+                                         strerror(-r));
+                    return r;
+                }
+        }
+
         r = sd_rtnl_message_open_container(m, IFLA_LINKINFO);
         if (r < 0) {
                 log_error_netdev(netdev,
@@ -85,7 +99,7 @@ static int netdev_fill_ipip_rtnl_message(Link *link, sd_rtnl_message *m) {
                 return r;
         }
 
-        r = sd_rtnl_message_append_in_addr(m, IFLA_IPTUN_LOCAL, &netdev->tunnel_local);
+        r = sd_rtnl_message_append_in_addr(m, IFLA_IPTUN_LOCAL, &netdev->local.in);
         if (r < 0) {
                 log_error_netdev(netdev,
                                  "Could not append IFLA_IPTUN_LOCAL attribute: %s",
@@ -93,7 +107,7 @@ static int netdev_fill_ipip_rtnl_message(Link *link, sd_rtnl_message *m) {
                 return r;
         }
 
-        r = sd_rtnl_message_append_in_addr(m, IFLA_IPTUN_REMOTE, &netdev->tunnel_remote);
+        r = sd_rtnl_message_append_in_addr(m, IFLA_IPTUN_REMOTE, &netdev->remote.in);
         if (r < 0) {
                 log_error_netdev(netdev,
                                  "Could not append IFLA_IPTUN_REMOTE attribute: %s",
@@ -101,7 +115,7 @@ static int netdev_fill_ipip_rtnl_message(Link *link, sd_rtnl_message *m) {
                 return r;
         }
 
-        r = sd_rtnl_message_append_u8(m, IFLA_IPTUN_TTL, netdev->tunnel_ttl);
+        r = sd_rtnl_message_append_u8(m, IFLA_IPTUN_TTL, netdev->ttl);
         if (r < 0) {
                 log_error_netdev(netdev,
                                  "Could not append IFLA_IPTUN_TTL  attribute: %s",
@@ -139,6 +153,8 @@ static int netdev_fill_sit_rtnl_message(Link *link, sd_rtnl_message *m) {
 
         netdev = link->network->tunnel;
 
+        assert(netdev->family == AF_INET);
+
         r = sd_rtnl_message_append_string(m, IFLA_IFNAME, netdev->ifname);
         if (r < 0) {
                 log_error_netdev(netdev,
@@ -157,6 +173,16 @@ static int netdev_fill_sit_rtnl_message(Link *link, sd_rtnl_message *m) {
                 }
         }
 
+        if (netdev->mac) {
+                r = sd_rtnl_message_append_ether_addr(m, IFLA_ADDRESS, netdev->mac);
+                if (r < 0) {
+                        log_error_netdev(netdev,
+                                         "Colud not append IFLA_ADDRESS attribute: %s",
+                                         strerror(-r));
+                    return r;
+                }
+        }
+
         r = sd_rtnl_message_open_container(m, IFLA_LINKINFO);
         if (r < 0) {
                 log_error_netdev(netdev,
@@ -182,7 +208,7 @@ static int netdev_fill_sit_rtnl_message(Link *link, sd_rtnl_message *m) {
                 return r;
         }
 
-        r = sd_rtnl_message_append_in_addr(m, IFLA_IPTUN_LOCAL, &netdev->tunnel_local);
+        r = sd_rtnl_message_append_in_addr(m, IFLA_IPTUN_LOCAL, &netdev->local.in);
         if (r < 0) {
                 log_error_netdev(netdev,
                                  "Could not append IFLA_IPTUN_LOCAL attribute: %s",
@@ -190,7 +216,7 @@ static int netdev_fill_sit_rtnl_message(Link *link, sd_rtnl_message *m) {
                 return r;
         }
 
-        r = sd_rtnl_message_append_in_addr(m, IFLA_IPTUN_REMOTE, &netdev->tunnel_remote);
+        r = sd_rtnl_message_append_in_addr(m, IFLA_IPTUN_REMOTE, &netdev->remote.in);
         if (r < 0) {
                 log_error_netdev(netdev,
                                  "Could not append IFLA_IPTUN_REMOTE attribute: %s",
@@ -198,7 +224,7 @@ static int netdev_fill_sit_rtnl_message(Link *link, sd_rtnl_message *m) {
                 return r;
         }
 
-        r = sd_rtnl_message_append_u8(m, IFLA_IPTUN_TOS, netdev->tunnel_tos);
+        r = sd_rtnl_message_append_u8(m, IFLA_IPTUN_TOS, netdev->tos);
         if (r < 0) {
                 log_error_netdev(netdev,
                                  "Could not append IFLA_IPTUN_TOS attribute: %s",
@@ -244,6 +270,8 @@ static int netdev_fill_ipgre_rtnl_message(Link *link, sd_rtnl_message *m) {
 
         netdev = link->network->tunnel;
 
+        assert(netdev->family == AF_INET);
+
         r = sd_rtnl_message_append_string(m, IFLA_IFNAME, netdev->ifname);
         if (r < 0) {
                 log_error_netdev(netdev,
@@ -262,6 +290,16 @@ static int netdev_fill_ipgre_rtnl_message(Link *link, sd_rtnl_message *m) {
                 }
         }
 
+        if (netdev->mac) {
+                r = sd_rtnl_message_append_ether_addr(m, IFLA_ADDRESS, netdev->mac);
+                if (r < 0) {
+                        log_error_netdev(netdev,
+                                         "Colud not append IFLA_ADDRESS attribute: %s",
+                                         strerror(-r));
+                    return r;
+                }
+        }
+
         r = sd_rtnl_message_open_container(m, IFLA_LINKINFO);
         if (r < 0) {
                 log_error_netdev(netdev,
@@ -287,7 +325,7 @@ static int netdev_fill_ipgre_rtnl_message(Link *link, sd_rtnl_message *m) {
                 return r;
         }
 
-        r = sd_rtnl_message_append_in_addr(m, IFLA_GRE_LOCAL, &netdev->tunnel_local);
+        r = sd_rtnl_message_append_in_addr(m, IFLA_GRE_LOCAL, &netdev->local.in);
         if (r < 0) {
                 log_error_netdev(netdev,
                                  "Could not append IFLA_GRE_LOCAL attribute: %s",
@@ -295,7 +333,7 @@ static int netdev_fill_ipgre_rtnl_message(Link *link, sd_rtnl_message *m) {
                 return r;
         }
 
-        r = sd_rtnl_message_append_in_addr(m, IFLA_GRE_REMOTE, &netdev->tunnel_remote);
+        r = sd_rtnl_message_append_in_addr(m, IFLA_GRE_REMOTE, &netdev->remote.in);
         if (r < 0) {
                 log_error_netdev(netdev,
                                  "Could not append IFLA_GRE_REMOTE attribute: %s",
@@ -303,7 +341,7 @@ static int netdev_fill_ipgre_rtnl_message(Link *link, sd_rtnl_message *m) {
                 return r;
         }
 
-        r = sd_rtnl_message_append_u8(m, IFLA_GRE_TTL, netdev->tunnel_ttl);
+        r = sd_rtnl_message_append_u8(m, IFLA_GRE_TTL, netdev->ttl);
         if (r < 0) {
                 log_error_netdev(netdev,
                                  "Could not append IFLA_GRE_TTL attribute: %s",
@@ -311,7 +349,7 @@ static int netdev_fill_ipgre_rtnl_message(Link *link, sd_rtnl_message *m) {
                 return r;
         }
 
-        r = sd_rtnl_message_append_u8(m, IFLA_GRE_TOS, netdev->tunnel_tos);
+        r = sd_rtnl_message_append_u8(m, IFLA_GRE_TOS, netdev->tos);
         if (r < 0) {
                 log_error_netdev(netdev,
                                  "Could not append IFLA_GRE_TOS attribute: %s",
@@ -349,6 +387,8 @@ static int netdev_fill_vti_rtnl_message(Link *link, sd_rtnl_message *m) {
 
         netdev = link->network->tunnel;
 
+        assert(netdev->family == AF_INET);
+
         r = sd_rtnl_message_append_string(m, IFLA_IFNAME, netdev->ifname);
         if (r < 0) {
                 log_error_netdev(netdev,
@@ -367,6 +407,16 @@ static int netdev_fill_vti_rtnl_message(Link *link, sd_rtnl_message *m) {
                 }
         }
 
+        if (netdev->mac) {
+                r = sd_rtnl_message_append_ether_addr(m, IFLA_ADDRESS, netdev->mac);
+                if (r < 0) {
+                        log_error_netdev(netdev,
+                                         "Colud not append IFLA_ADDRESS attribute: %s",
+                                         strerror(-r));
+                    return r;
+                }
+        }
+
         r = sd_rtnl_message_open_container(m, IFLA_LINKINFO);
         if (r < 0) {
                 log_error_netdev(netdev,
@@ -392,7 +442,7 @@ static int netdev_fill_vti_rtnl_message(Link *link, sd_rtnl_message *m) {
                 return r;
         }
 
-        r = sd_rtnl_message_append_in_addr(m, IFLA_VTI_LOCAL, &netdev->tunnel_local);
+        r = sd_rtnl_message_append_in_addr(m, IFLA_VTI_LOCAL, &netdev->local.in);
         if (r < 0) {
                 log_error_netdev(netdev,
                                  "Could not append IFLA_IPTUN_LOCAL attribute: %s",
@@ -400,7 +450,7 @@ static int netdev_fill_vti_rtnl_message(Link *link, sd_rtnl_message *m) {
                 return r;
         }
 
-        r = sd_rtnl_message_append_in_addr(m, IFLA_VTI_REMOTE, &netdev->tunnel_remote);
+        r = sd_rtnl_message_append_in_addr(m, IFLA_VTI_REMOTE, &netdev->remote.in);
         if (r < 0) {
                 log_error_netdev(netdev,
                                  "Could not append IFLA_IPTUN_REMOTE attribute: %s",
@@ -427,21 +477,17 @@ static int netdev_fill_vti_rtnl_message(Link *link, sd_rtnl_message *m) {
         return r;
 }
 
-int netdev_create_tunnel(Link *link, sd_rtnl_message_handler_t callback) {
+int netdev_create_tunnel(NetDev *netdev, Link *link, sd_rtnl_message_handler_t callback) {
         _cleanup_rtnl_message_unref_ sd_rtnl_message *m = NULL;
-        NetDev *netdev;
         int r;
 
-        assert(link);
-        assert(link->network);
-        assert(link->network->tunnel);
-
-        netdev = link->network->tunnel;
-
         assert(netdev);
         assert(netdev->ifname);
         assert(netdev->manager);
         assert(netdev->manager->rtnl);
+        assert(link);
+        assert(link->network);
+        assert(link->network->tunnel == netdev);
 
         r = sd_rtnl_message_new_link(netdev->manager->rtnl, &m, RTM_NEWLINK, 0);
         if (r < 0) {
@@ -476,7 +522,7 @@ int netdev_create_tunnel(Link *link, sd_rtnl_message_handler_t callback) {
                 return -ENOTSUP;
         }
 
-        r = sd_rtnl_call_async(netdev->manager->rtnl, m, callback, netdev, 0, NULL);
+        r = sd_rtnl_call_async(netdev->manager->rtnl, m, callback, link, 0, NULL);
         if (r < 0) {
                 log_error_netdev(netdev,
                                  "Could not send rtnetlink message: %s", strerror(-r));
@@ -490,3 +536,32 @@ int netdev_create_tunnel(Link *link, sd_rtnl_message_handler_t callback) {
 
         return 0;
 }
+
+int config_parse_tunnel_address(const char *unit,
+                                const char *filename,
+                                unsigned line,
+                                const char *section,
+                                unsigned section_line,
+                                const char *lvalue,
+                                int ltype,
+                                const char *rvalue,
+                                void *data,
+                                void *userdata) {
+        NetDev *n = userdata;
+        union in_addr_union *addr = data;
+        int r;
+
+        assert(filename);
+        assert(lvalue);
+        assert(rvalue);
+        assert(data);
+
+        r = net_parse_inaddr(rvalue, &n->family, addr);
+        if (r < 0) {
+                log_syntax(unit, LOG_ERR, filename, line, EINVAL,
+                           "Tunnel address is invalid, ignoring assignment: %s", rvalue);
+                return 0;
+        }
+
+        return 0;
+}
diff --git a/src/network/networkd-tuntap.c b/src/network/networkd-tuntap.c
new file mode 100644 (file)
index 0000000..ae2d5c1
--- /dev/null
@@ -0,0 +1,155 @@
+/*-*- Mode: C; c-basic-offset: 8; indent-tabs-mode: nil -*-*/
+
+/***
+    This file is part of systemd.
+
+    Copyright 2014 Susant Sahani <susant@redhat.com>
+
+    systemd is free software; you can redistribute it and/or modify it
+    under the terms of the GNU Lesser General Public License as published by
+    the Free Software Foundation; either version 2.1 of the License, or
+    (at your option) any later version.
+
+    systemd is distributed in the hope that it will be useful, but
+    WITHOUT ANY WARRANTY; without even the implied warranty of
+    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+    Lesser General Public License for more details.
+
+    You should have received a copy of the GNU Lesser General Public License
+    along with systemd; If not, see <http://www.gnu.org/licenses/>.
+***/
+
+#include <sys/ioctl.h>
+#include <net/if.h>
+#include <linux/if_tun.h>
+
+#include "networkd.h"
+
+#define TUN_DEV "/dev/net/tun"
+
+
+static int netdev_fill_tuntap_message(NetDev *netdev, struct ifreq *ifr) {
+
+        assert(netdev);
+        assert(ifr);
+
+        memset(ifr, 0, sizeof(*ifr));
+
+        if (netdev->kind == NETDEV_KIND_TAP)
+                ifr->ifr_flags |= IFF_TAP;
+        else
+                ifr->ifr_flags |= IFF_TUN;
+
+        if (!netdev->packet_info)
+                ifr->ifr_flags |= IFF_NO_PI;
+
+        if (netdev->one_queue)
+                ifr->ifr_flags |= IFF_ONE_QUEUE;
+
+        if (netdev->multi_queue)
+                ifr->ifr_flags |= IFF_MULTI_QUEUE;
+
+        strncpy(ifr->ifr_name, netdev->ifname, IFNAMSIZ-1);
+
+        return 0;
+}
+
+static int netdev_tuntap_add(NetDev *netdev, struct ifreq *ifr) {
+        _cleanup_close_ int fd;
+        const char *user;
+        const char *group;
+        uid_t uid;
+        gid_t gid;
+        int r = 0;
+
+        fd = open(TUN_DEV, O_RDWR);
+        if (fd < 0) {
+                log_error_netdev(netdev,
+                                 "Failed to open tun dev: %s",
+                                 strerror(-r));
+                return r;
+        }
+
+        r = ioctl(fd, TUNSETIFF, ifr);
+        if (r < 0) {
+                log_error_netdev(netdev,
+                                 "TUNSETIFF failed on tun dev: %s",
+                                 strerror(-r));
+                return r;
+        }
+
+        if(netdev->user_name) {
+
+                user = netdev->user_name;
+
+                r = get_user_creds(&user, &uid, NULL, NULL, NULL);
+                if (r < 0) {
+                        log_error("Cannot resolve user name %s: %s",
+                                  netdev->user_name, strerror(-r));
+                        return 0;
+                }
+
+                r = ioctl(fd, TUNSETOWNER, uid);
+                if ( r < 0) {
+                        log_error_netdev(netdev,
+                                         "TUNSETOWNER failed on tun dev: %s",
+                                         strerror(-r));
+                }
+        }
+
+        if(netdev->group_name) {
+
+                group = netdev->group_name;
+
+                r = get_group_creds(&group, &gid);
+                if (r < 0) {
+                        log_error("Cannot resolve group name %s: %s",
+                                  netdev->group_name, strerror(-r));
+                        return 0;
+                }
+
+                r = ioctl(fd, TUNSETGROUP, gid);
+                if( r < 0) {
+                        log_error_netdev(netdev,
+                                         "TUNSETGROUP failed on tun dev: %s",
+                                         strerror(-r));
+                        return r;
+                }
+
+        }
+
+        r = ioctl(fd, TUNSETPERSIST, 1);
+        if (r < 0) {
+                log_error_netdev(netdev,
+                                 "TUNSETPERSIST failed on tun dev: %s",
+                                 strerror(-r));
+                return r;
+        }
+
+        return r;
+}
+
+int netdev_create_tuntap(NetDev *netdev) {
+        struct ifreq ifr;
+        int r;
+
+        assert(netdev);
+        assert(netdev->ifname);
+
+        switch(netdev->kind) {
+        case NETDEV_KIND_TUN:
+        case NETDEV_KIND_TAP:
+                break;
+        default:
+                return -ENOTSUP;
+        }
+
+        r = netdev_fill_tuntap_message(netdev, &ifr);
+        if(r < 0)
+                return r;
+
+        log_debug_netdev(netdev, "Creating tuntap netdev: %s",
+                         netdev_kind_to_string(netdev->kind));
+
+        return netdev_tuntap_add(netdev, &ifr);
+}
index 1a5d880ac256a85374d37d190f09144ee659424e..3eac90ba90ecea36eaf7167b4cfc00f556e4964e 100644 (file)
@@ -42,6 +42,16 @@ static int netdev_fill_veth_rtnl_message(NetDev *netdev, sd_rtnl_message *m) {
                 return r;
         }
 
+        if (netdev->mac) {
+                r = sd_rtnl_message_append_ether_addr(m, IFLA_ADDRESS, netdev->mac);
+                if (r < 0) {
+                        log_error_netdev(netdev,
+                                         "Colud not append IFLA_ADDRESS attribute: %s",
+                                         strerror(-r));
+                    return r;
+                }
+        }
+
         r = sd_rtnl_message_open_container(m, IFLA_LINKINFO);
         if (r < 0) {
                 log_error_netdev(netdev,
@@ -67,7 +77,7 @@ static int netdev_fill_veth_rtnl_message(NetDev *netdev, sd_rtnl_message *m) {
                 return r;
         }
 
-        if(netdev->ifname_peer) {
+        if (netdev->ifname_peer) {
                 r = sd_rtnl_message_append_string(m, IFLA_IFNAME, netdev->ifname_peer);
                 if (r < 0) {
                         log_error("Failed to add netlink interface name: %s", strerror(-r));
@@ -75,6 +85,16 @@ static int netdev_fill_veth_rtnl_message(NetDev *netdev, sd_rtnl_message *m) {
                 }
         }
 
+        if (netdev->mac_peer) {
+                r = sd_rtnl_message_append_ether_addr(m, IFLA_ADDRESS, netdev->mac_peer);
+                if (r < 0) {
+                        log_error_netdev(netdev,
+                                         "Colud not append IFLA_ADDRESS attribute: %s",
+                                         strerror(-r));
+                    return r;
+                }
+        }
+
         r = sd_rtnl_message_close_container(m);
         if (r < 0) {
                 log_error_netdev(netdev,
@@ -125,6 +145,8 @@ int netdev_create_veth(NetDev *netdev, sd_rtnl_message_handler_t callback) {
                 return r;
         }
 
+        netdev_ref(netdev);
+
         log_debug_netdev(netdev, "Creating veth netdev: %s",
                          netdev_kind_to_string(netdev->kind));
 
diff --git a/src/network/networkd-vlan.c b/src/network/networkd-vlan.c
new file mode 100644 (file)
index 0000000..1d812fd
--- /dev/null
@@ -0,0 +1,147 @@
+/*-*- Mode: C; c-basic-offset: 8; indent-tabs-mode: nil -*-*/
+
+/***
+  This file is part of systemd.
+
+  Copyright 2013 Tom Gundersen <teg@jklm.no>
+
+  systemd is free software; you can redistribute it and/or modify it
+  under the terms of the GNU Lesser General Public License as published by
+  the Free Software Foundation; either version 2.1 of the License, or
+  (at your option) any later version.
+
+  systemd is distributed in the hope that it will be useful, but
+  WITHOUT ANY WARRANTY; without even the implied warranty of
+  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+  Lesser General Public License for more details.
+
+  You should have received a copy of the GNU Lesser General Public License
+  along with systemd; If not, see <http://www.gnu.org/licenses/>.
+***/
+
+#include <net/if.h>
+
+#include "networkd.h"
+#include "network-internal.h"
+#include "list.h"
+
+int netdev_create_vlan(NetDev *netdev, Link *link, sd_rtnl_message_handler_t callback) {
+        _cleanup_rtnl_message_unref_ sd_rtnl_message *req = NULL;
+        const char *kind;
+        int r;
+
+        assert(netdev);
+        assert(netdev->kind == NETDEV_KIND_VLAN);
+        assert(link);
+        assert(callback);
+        assert(netdev->ifname);
+        assert(netdev->manager);
+        assert(netdev->manager->rtnl);
+
+        r = sd_rtnl_message_new_link(netdev->manager->rtnl, &req, RTM_NEWLINK, 0);
+        if (r < 0) {
+                log_error_netdev(netdev,
+                                 "Could not allocate RTM_NEWLINK message: %s",
+                                 strerror(-r));
+                return r;
+        }
+
+        if (link) {
+                r = sd_rtnl_message_append_u32(req, IFLA_LINK, link->ifindex);
+                if (r < 0) {
+                        log_error_netdev(netdev,
+                                         "Could not append IFLA_LINK attribute: %s",
+                                         strerror(-r));
+                        return r;
+                }
+        }
+
+        r = sd_rtnl_message_append_string(req, IFLA_IFNAME, netdev->ifname);
+        if (r < 0) {
+                log_error_netdev(netdev,
+                                 "Could not append IFLA_IFNAME attribute: %s",
+                                 strerror(-r));
+                return r;
+        }
+
+        if (netdev->mtu) {
+                r = sd_rtnl_message_append_u32(req, IFLA_MTU, netdev->mtu);
+                if (r < 0) {
+                        log_error_netdev(netdev,
+                                         "Could not append IFLA_MTU attribute: %s",
+                                         strerror(-r));
+                        return r;
+                }
+        }
+
+        if (netdev->mac) {
+                r = sd_rtnl_message_append_ether_addr(req, IFLA_ADDRESS, netdev->mac);
+                if (r < 0) {
+                        log_error_netdev(netdev,
+                                         "Colud not append IFLA_ADDRESS attribute: %s",
+                                         strerror(-r));
+                    return r;
+                }
+        }
+
+        r = sd_rtnl_message_open_container(req, IFLA_LINKINFO);
+        if (r < 0) {
+                log_error_netdev(netdev,
+                                 "Could not open IFLA_LINKINFO container: %s",
+                                 strerror(-r));
+                return r;
+        }
+
+        kind = netdev_kind_to_string(netdev->kind);
+        if (!kind) {
+                log_error_netdev(netdev, "Invalid kind");
+                return -EINVAL;
+        }
+
+        r = sd_rtnl_message_open_container_union(req, IFLA_INFO_DATA, kind);
+        if (r < 0) {
+                log_error_netdev(netdev,
+                                 "Could not open IFLA_INFO_DATA container: %s",
+                                  strerror(-r));
+                return r;
+        }
+
+        if (netdev->vlanid <= VLANID_MAX) {
+                r = sd_rtnl_message_append_u16(req, IFLA_VLAN_ID, netdev->vlanid);
+                if (r < 0) {
+                        log_error_netdev(netdev,
+                                         "Could not append IFLA_VLAN_ID attribute: %s",
+                                         strerror(-r));
+                        return r;
+                }
+        }
+
+        r = sd_rtnl_message_close_container(req);
+        if (r < 0) {
+                log_error_netdev(netdev,
+                                 "Could not close IFLA_INFO_DATA container %s",
+                                 strerror(-r));
+                return r;
+        }
+
+        r = sd_rtnl_message_close_container(req);
+        if (r < 0) {
+                log_error_netdev(netdev,
+                                 "Could not close IFLA_LINKINFO container %s",
+                                 strerror(-r));
+                return r;
+        }
+
+        r = sd_rtnl_call_async(netdev->manager->rtnl, req, callback, link, 0, NULL);
+        if (r < 0) {
+                log_error_netdev(netdev,
+                                 "Could not send rtnetlink message: %s", strerror(-r));
+                return r;
+        }
+
+        log_debug_netdev(netdev, "creating netdev");
+
+        netdev->state = NETDEV_STATE_CREATING;
+
+        return 0;
+}
diff --git a/src/network/networkd-vxlan.c b/src/network/networkd-vxlan.c
new file mode 100644 (file)
index 0000000..8832024
--- /dev/null
@@ -0,0 +1,163 @@
+/*-*- Mode: C; c-basic-offset: 8; indent-tabs-mode: nil -*-*/
+
+/***
+    This file is part of systemd.
+
+    Copyright 2014 Susant Sahani <susant@redhat.com>
+
+    systemd is free software; you can redistribute it and/or modify it
+    under the terms of the GNU Lesser General Public License as published by
+    the Free Software Foundation; either version 2.1 of the License, or
+    (at your option) any later version.
+
+    systemd is distributed in the hope that it will be useful, but
+    WITHOUT ANY WARRANTY; without even the implied warranty of
+    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+    Lesser General Public License for more details.
+
+    You should have received a copy of the GNU Lesser General Public License
+    along with systemd; If not, see <http://www.gnu.org/licenses/>.
+***/
+
+#include <netinet/ether.h>
+#include <arpa/inet.h>
+#include <net/if.h>
+
+#include "sd-rtnl.h"
+#include "networkd.h"
+#include "missing.h"
+
+
+static int netdev_fill_vxlan_rtnl_message(NetDev *netdev, Link *link, sd_rtnl_message *m) {
+        int r;
+
+        assert(link);
+        assert(link->network);
+        assert(m);
+
+        r = sd_rtnl_message_append_string(m, IFLA_IFNAME, netdev->ifname);
+        if (r < 0) {
+                log_error_netdev(netdev,
+                                 "Could not append IFLA_IFNAME, attribute: %s",
+                                 strerror(-r));
+                return r;
+        }
+
+        r = sd_rtnl_message_open_container(m, IFLA_LINKINFO);
+        if (r < 0) {
+                log_error_netdev(netdev,
+                                 "Could not append IFLA_LINKINFO attribute: %s",
+                                 strerror(-r));
+                return r;
+        }
+
+        r = sd_rtnl_message_open_container_union(m, IFLA_INFO_DATA,
+                                                 netdev_kind_to_string(netdev->kind));
+        if (r < 0) {
+                log_error_netdev(netdev,
+                                 "Could not append IFLA_INFO_DATA attribute: %s",
+                                 strerror(-r));
+                return r;
+        }
+
+        if (netdev->vlanid <= VXLAN_VID_MAX) {
+                r = sd_rtnl_message_append_u32(m, IFLA_VXLAN_ID, netdev->vxlanid);
+                if (r < 0) {
+                        log_error_netdev(netdev,
+                                         "Could not append IFLA_VXLAN_ID attribute: %s",
+                                         strerror(-r));
+                        return r;
+                }
+        }
+
+        r = sd_rtnl_message_append_in_addr(m, IFLA_VXLAN_GROUP, &netdev->group.in);
+        if (r < 0) {
+                log_error_netdev(netdev,
+                                 "Could not append IFLA_VXLAN_GROUP attribute: %s",
+                                 strerror(-r));
+                return r;
+        }
+
+        r = sd_rtnl_message_append_u32(m, IFLA_VXLAN_LINK, link->ifindex);
+        if (r < 0) {
+                log_error_netdev(netdev,
+                                 "Could not append IFLA_VXLAN_LINK attribute: %s",
+                                 strerror(-r));
+                return r;
+        }
+
+        if(netdev->ttl) {
+                r = sd_rtnl_message_append_u8(m, IFLA_VXLAN_TTL, netdev->ttl);
+                if (r < 0) {
+                        log_error_netdev(netdev,
+                                         "Could not append IFLA_VXLAN_TTL attribute: %s",
+                                         strerror(-r));
+                        return r;
+                }
+        }
+
+        if(netdev->tos) {
+                r = sd_rtnl_message_append_u8(m, IFLA_VXLAN_TOS, netdev->tos);
+                if (r < 0) {
+                        log_error_netdev(netdev,
+                                         "Could not append IFLA_VXLAN_TOS attribute: %s",
+                                         strerror(-r));
+                        return r;
+                }
+        }
+
+        r = sd_rtnl_message_append_u8(m, IFLA_VXLAN_LEARNING, netdev->learning);
+        if (r < 0) {
+                log_error_netdev(netdev,
+                                 "Could not append IFLA_VXLAN_LEARNING attribute: %s",
+                                 strerror(-r));
+                return r;
+        }
+
+        r = sd_rtnl_message_close_container(m);
+        if (r < 0) {
+                log_error_netdev(netdev,
+                                 "Could not append IFLA_LINKINFO attribute: %s",
+                                 strerror(-r));
+                return r;
+        }
+
+        return r;
+}
+
+int netdev_create_vxlan(NetDev *netdev, Link *link, sd_rtnl_message_handler_t callback) {
+        _cleanup_rtnl_message_unref_ sd_rtnl_message *m = NULL;
+        int r;
+
+        assert(netdev);
+        assert(!(netdev->kind == NETDEV_KIND_VXLAN) || (link && callback));
+        assert(netdev->ifname);
+        assert(netdev->manager);
+        assert(netdev->manager->rtnl);
+
+        r = sd_rtnl_message_new_link(netdev->manager->rtnl, &m, RTM_NEWLINK, 0);
+        if (r < 0) {
+                log_error_netdev(netdev,
+                                 "Could not allocate RTM_NEWLINK message: %s",
+                                 strerror(-r));
+                return r;
+        }
+
+        r = netdev_fill_vxlan_rtnl_message(netdev, link, m);
+        if(r < 0)
+                return r;
+
+        r = sd_rtnl_call_async(netdev->manager->rtnl, m, callback, link, 0, NULL);
+        if (r < 0) {
+                log_error_netdev(netdev,
+                                 "Could not send rtnetlink message: %s", strerror(-r));
+                return r;
+        }
+
+        log_debug_netdev(netdev, "Creating vxlan netdev: %s",
+                         netdev_kind_to_string(netdev->kind));
+
+        netdev->state = NETDEV_STATE_CREATING;
+
+        return 0;
+}
index 6f77c7785f0dbeffbfaa47abf282b3f93aa26e2f..6a001751570d2a57e4d473e24b56564c91dcd7cf 100644 (file)
 #include "sd-rtnl.h"
 #include "sd-bus.h"
 #include "sd-dhcp-client.h"
+#include "sd-dhcp-server.h"
 #include "sd-ipv4ll.h"
+#include "sd-icmp6-nd.h"
+#include "sd-dhcp6-client.h"
 #include "udev.h"
 
 #include "rtnl-util.h"
 #include "list.h"
 #include "set.h"
 #include "condition-util.h"
+#include "socket-util.h"
 
 #define CACHE_INFO_INFINITY_LIFE_TIME 0xFFFFFFFFU
+#define VXLAN_VID_MAX (1u << 24) - 1
+#define DHCP_STATIC_ROUTE_METRIC 1024
 
 typedef struct NetDev NetDev;
 typedef struct Network Network;
@@ -44,6 +50,7 @@ typedef struct Link Link;
 typedef struct Address Address;
 typedef struct Route Route;
 typedef struct Manager Manager;
+typedef struct AddressPool AddressPool;
 
 typedef struct netdev_enslave_callback netdev_enslave_callback;
 
@@ -68,11 +75,15 @@ typedef enum NetDevKind {
         NETDEV_KIND_BOND,
         NETDEV_KIND_VLAN,
         NETDEV_KIND_MACVLAN,
+        NETDEV_KIND_VXLAN,
         NETDEV_KIND_IPIP,
         NETDEV_KIND_GRE,
         NETDEV_KIND_SIT,
         NETDEV_KIND_VETH,
         NETDEV_KIND_VTI,
+        NETDEV_KIND_DUMMY,
+        NETDEV_KIND_TUN,
+        NETDEV_KIND_TAP,
         _NETDEV_KIND_MAX,
         _NETDEV_KIND_INVALID = -1
 } NetDevKind;
@@ -101,24 +112,45 @@ struct NetDev {
         char *description;
         char *ifname;
         char *ifname_peer;
+        char *user_name;
+        char *group_name;
         size_t mtu;
+        struct ether_addr *mac;
+        struct ether_addr *mac_peer;
         NetDevKind kind;
 
         uint64_t vlanid;
+        uint64_t vxlanid;
         int32_t macvlan_mode;
 
         int ifindex;
         NetDevState state;
 
         bool tunnel_pmtudisc;
-        unsigned tunnel_ttl;
-        unsigned tunnel_tos;
-        struct in_addr tunnel_local;
-        struct in_addr tunnel_remote;
+        bool learning;
+        bool one_queue;
+        bool multi_queue;
+        bool packet_info;
+
+        unsigned ttl;
+        unsigned tos;
+        unsigned char family;
+        union in_addr_union local;
+        union in_addr_union remote;
+        union in_addr_union group;
 
         LIST_HEAD(netdev_enslave_callback, callbacks);
 };
 
+typedef enum DHCPSupport {
+        DHCP_SUPPORT_NONE,
+        DHCP_SUPPORT_BOTH,
+        DHCP_SUPPORT_V4,
+        DHCP_SUPPORT_V6,
+        _DHCP_SUPPORT_MAX,
+        _DHCP_SUPPORT_INVALID = -1,
+} DHCPSupport;
+
 struct Network {
         Manager *manager;
 
@@ -140,15 +172,20 @@ struct Network {
         NetDev *tunnel;
         Hashmap *vlans;
         Hashmap *macvlans;
-        bool dhcp;
+        Hashmap *vxlans;
+        DHCPSupport dhcp;
         bool dhcp_dns;
         bool dhcp_ntp;
         bool dhcp_mtu;
         bool dhcp_hostname;
         bool dhcp_domainname;
+        bool dhcp_sendhost;
         bool dhcp_critical;
+        bool dhcp_routes;
         bool ipv4ll;
 
+        bool dhcp_server;
+
         LIST_HEAD(Address, static_addresses);
         LIST_HEAD(Route, static_routes);
 
@@ -173,10 +210,7 @@ struct Address {
         struct in_addr broadcast;
         struct ifa_cacheinfo cinfo;
 
-        union {
-                struct in_addr in;
-                struct in6_addr in6;
-        } in_addr;
+        union in_addr_union in_addr;
 
         LIST_FIELDS(Address, addresses);
 };
@@ -190,15 +224,8 @@ struct Route {
         unsigned char scope;
         uint32_t metrics;
 
-        union {
-                struct in_addr in;
-                struct in6_addr in6;
-        } in_addr;
-
-        union {
-                struct in_addr in;
-                struct in6_addr in6;
-        } dst_addr;
+        union in_addr_union in_addr;
+        union in_addr_union dst_addr;
 
         LIST_FIELDS(Route, routes);
 };
@@ -256,6 +283,24 @@ struct Link {
         char *lease_file;
         uint16_t original_mtu;
         sd_ipv4ll *ipv4ll;
+
+        LIST_HEAD(Address, pool_addresses);
+
+        sd_dhcp_server *dhcp_server;
+
+        sd_icmp6_nd *icmp6_router_discovery;
+        sd_dhcp6_client *dhcp6_client;
+};
+
+struct AddressPool {
+        Manager *manager;
+
+        unsigned family;
+        unsigned prefixlen;
+
+        union in_addr_union in_addr;
+
+        LIST_FIELDS(AddressPool, address_pools);
 };
 
 struct Manager {
@@ -273,6 +318,7 @@ struct Manager {
         Hashmap *links;
         Hashmap *netdevs;
         LIST_HEAD(Network, networks);
+        LIST_HEAD(AddressPool, address_pools);
 
         usec_t network_dirs_ts_usec;
 };
@@ -295,11 +341,15 @@ int manager_bus_listen(Manager *m);
 
 int manager_save(Manager *m);
 
+int manager_address_pool_acquire(Manager *m, unsigned family, unsigned prefixlen, union in_addr_union *found);
+
 DEFINE_TRIVIAL_CLEANUP_FUNC(Manager*, manager_free);
 #define _cleanup_manager_free_ _cleanup_(manager_freep)
 
 /* NetDev */
 
+#define VLANID_MAX 4094
+
 int netdev_load(Manager *manager);
 void netdev_drop(NetDev *netdev);
 
@@ -312,8 +362,13 @@ DEFINE_TRIVIAL_CLEANUP_FUNC(NetDev*, netdev_unref);
 int netdev_get(Manager *manager, const char *name, NetDev **ret);
 int netdev_set_ifindex(NetDev *netdev, sd_rtnl_message *newlink);
 int netdev_enslave(NetDev *netdev, Link *link, sd_rtnl_message_handler_t cb);
-int netdev_create_tunnel(Link *link, sd_rtnl_message_handler_t callback);
+int netdev_create_tunnel(NetDev *netdev, Link *link, sd_rtnl_message_handler_t callback);
 int netdev_create_veth(NetDev *netdev, sd_rtnl_message_handler_t callback);
+int netdev_create_vxlan(NetDev *netdev, Link *link, sd_rtnl_message_handler_t callback);
+int netdev_create_vlan(NetDev *netdev, Link *link, sd_rtnl_message_handler_t callback);
+int netdev_create_macvlan(NetDev *netdev, Link *link, sd_rtnl_message_handler_t callback);
+int netdev_create_dummy(NetDev *netdev, sd_rtnl_message_handler_t callback);
+int netdev_create_tuntap(NetDev *netdev);
 
 const char *netdev_kind_to_string(NetDevKind d) _const_;
 NetDevKind netdev_kind_from_string(const char *d) _pure_;
@@ -444,9 +499,26 @@ LinkOperationalState link_operstate_from_string(const char *s) _pure_;
 DEFINE_TRIVIAL_CLEANUP_FUNC(Link*, link_unref);
 #define _cleanup_link_unref_ _cleanup_(link_unrefp)
 
+/* DHCP support */
+
+const char* dhcp_support_to_string(DHCPSupport i) _const_;
+DHCPSupport dhcp_support_from_string(const char *s) _pure_;
+
+int config_parse_dhcp(const char *unit, const char *filename, unsigned line,
+                      const char *section, unsigned section_line, const char *lvalue,
+                      int ltype, const char *rvalue, void *data, void *userdata);
+
+/* Address Pool */
+
+int address_pool_new(Manager *m, AddressPool **ret, unsigned family, const union in_addr_union *u, unsigned prefixlen);
+int address_pool_new_from_string(Manager *m, AddressPool **ret, unsigned family, const char *p, unsigned prefixlen);
+void address_pool_free(AddressPool *p);
+
+int address_pool_acquire(AddressPool *p, unsigned prefixlen, union in_addr_union *found);
+
 /* Macros which append INTERFACE= to the message */
 
-#define log_full_link(level, link, fmt, ...) log_meta_object(level, __FILE__, __LINE__, __func__, "INTERFACE=", link->ifname, "%*s: " fmt, IFNAMSIZ, link->ifname, ##__VA_ARGS__)
+#define log_full_link(level, link, fmt, ...) log_meta_object(level, __FILE__, __LINE__, __func__, "INTERFACE=", link->ifname, "%-*s: " fmt, IFNAMSIZ, link->ifname, ##__VA_ARGS__)
 #define log_debug_link(link, ...)       log_full_link(LOG_DEBUG, link, ##__VA_ARGS__)
 #define log_info_link(link, ...)        log_full_link(LOG_INFO, link, ##__VA_ARGS__)
 #define log_notice_link(link, ...)      log_full_link(LOG_NOTICE, link, ##__VA_ARGS__)
@@ -457,7 +529,7 @@ DEFINE_TRIVIAL_CLEANUP_FUNC(Link*, link_unref);
 
 /* More macros which append INTERFACE= to the message */
 
-#define log_full_netdev(level, netdev, fmt, ...) log_meta_object(level, __FILE__, __LINE__, __func__, "INTERFACE=", netdev->ifname, "%*s: " fmt, IFNAMSIZ, netdev->ifname, ##__VA_ARGS__)
+#define log_full_netdev(level, netdev, fmt, ...) log_meta_object(level, __FILE__, __LINE__, __func__, "INTERFACE=", netdev->ifname, "%-*s: " fmt, IFNAMSIZ, netdev->ifname, ##__VA_ARGS__)
 #define log_debug_netdev(netdev, ...)       log_full_netdev(LOG_DEBUG, netdev, ##__VA_ARGS__)
 #define log_info_netdev(netdev, ...)        log_full_netdev(LOG_INFO, netdev, ##__VA_ARGS__)
 #define log_notice_netdev(netdev, ...)      log_full_netdev(LOG_NOTICE, netdev, ##__VA_ARGS__)
index eb6ebe70b3b1df8807565f3bc331a29182f6ff92..75e70fae1400cbef9ecd2fc588906656d559ead7 100644 (file)
@@ -21,6 +21,7 @@
 
 #include "networkd.h"
 #include "network-internal.h"
+#include "dhcp-lease-internal.h"
 
 static void test_deserialize_in_addr(void) {
         _cleanup_free_ struct in_addr *addresses = NULL;
@@ -53,6 +54,63 @@ static void test_deserialize_in_addr(void) {
         assert_se(!memcmp(&f, &addresses6[2], sizeof(struct in6_addr)));
 }
 
+static void test_deserialize_dhcp_routes(void) {
+        size_t size, allocated;
+
+        {
+                _cleanup_free_ struct sd_dhcp_route *routes = NULL;
+                assert_se(deserialize_dhcp_routes(&routes, &size, &allocated, "") >= 0);
+                assert_se(size == 0);
+        }
+
+        {
+                /* no errors */
+                _cleanup_free_ struct sd_dhcp_route *routes = NULL;
+                const char *routes_string = "192.168.0.0/16,192.168.0.1 10.1.2.0/24,10.1.2.1 0.0.0.0/0,10.0.1.1";
+
+                assert_se(deserialize_dhcp_routes(&routes, &size, &allocated, routes_string) >= 0);
+
+                assert_se(size == 3);
+                assert_se(routes[0].dst_addr.s_addr == inet_addr("192.168.0.0"));
+                assert_se(routes[0].gw_addr.s_addr == inet_addr("192.168.0.1"));
+                assert_se(routes[0].dst_prefixlen == 16);
+
+                assert_se(routes[1].dst_addr.s_addr == inet_addr("10.1.2.0"));
+                assert_se(routes[1].gw_addr.s_addr == inet_addr("10.1.2.1"));
+                assert_se(routes[1].dst_prefixlen == 24);
+
+                assert_se(routes[2].dst_addr.s_addr == inet_addr("0.0.0.0"));
+                assert_se(routes[2].gw_addr.s_addr == inet_addr("10.0.1.1"));
+                assert_se(routes[2].dst_prefixlen == 0);
+        }
+
+        {
+                /* error in second word */
+                _cleanup_free_ struct sd_dhcp_route *routes = NULL;
+                const char *routes_string = "192.168.0.0/16,192.168.0.1 10.1.2.0#24,10.1.2.1 0.0.0.0/0,10.0.1.1";
+
+                assert_se(deserialize_dhcp_routes(&routes, &size, &allocated, routes_string) >= 0);
+
+                assert_se(size == 2);
+                assert_se(routes[0].dst_addr.s_addr == inet_addr("192.168.0.0"));
+                assert_se(routes[0].gw_addr.s_addr == inet_addr("192.168.0.1"));
+                assert_se(routes[0].dst_prefixlen == 16);
+
+                assert_se(routes[2].dst_addr.s_addr == inet_addr("0.0.0.0"));
+                assert_se(routes[2].gw_addr.s_addr == inet_addr("10.0.1.1"));
+                assert_se(routes[2].dst_prefixlen == 0);
+        }
+
+        {
+                /* error in every word */
+                _cleanup_free_ struct sd_dhcp_route *routes = NULL;
+                const char *routes_string = "192.168.0.0/55,192.168.0.1 10.1.2.0#24,10.1.2.1 0.0.0.0/0,10.0.1.X";
+
+                assert_se(deserialize_dhcp_routes(&routes, &size, &allocated, routes_string) >= 0);
+                assert_se(size == 0);
+        }
+}
+
 static void test_load_config(Manager *manager) {
 /*  TODO: should_reload, is false if the config dirs do not exist, so
  *        so we can't do this test here, move it to a test for paths_check_timestamps
@@ -125,6 +183,7 @@ int main(void) {
         struct udev_device *loopback;
 
         test_deserialize_in_addr();
+        test_deserialize_dhcp_routes();
         test_address_equality();
 
         assert_se(manager_new(&manager) >= 0);
index 29ddfbb1ffc36340782d8689459d9788fcd7fcce..0d538c25434edd0a51904c4180187d30412080e5 100644 (file)
@@ -89,6 +89,7 @@
 #include "gpt.h"
 #include "siphash24.h"
 #include "copy.h"
+#include "base-filesystem.h"
 
 #ifdef HAVE_SECCOMP
 #include "seccomp-util.h"
@@ -824,7 +825,7 @@ static int setup_timezone(const char *dest) {
 }
 
 static int setup_resolv_conf(const char *dest) {
-        char _cleanup_free_ *where = NULL;
+        _cleanup_free_ char *where = NULL;
 
         assert(dest);
 
@@ -1863,22 +1864,25 @@ static int setup_macvlan(pid_t pid) {
         return 0;
 }
 
-static int audit_still_doesnt_work_in_containers(void) {
+static int setup_seccomp(void) {
 
 #ifdef HAVE_SECCOMP
+        static const int blacklist[] = {
+                SCMP_SYS(kexec_load),
+                SCMP_SYS(open_by_handle_at),
+                SCMP_SYS(init_module),
+                SCMP_SYS(finit_module),
+                SCMP_SYS(delete_module),
+                SCMP_SYS(iopl),
+                SCMP_SYS(ioperm),
+                SCMP_SYS(swapon),
+                SCMP_SYS(swapoff),
+        };
+
         scmp_filter_ctx seccomp;
+        unsigned i;
         int r;
 
-        /*
-           Audit is broken in containers, much of the userspace audit
-           hookup will fail if running inside a container. We don't
-           care and just turn off creation of audit sockets.
-
-           This will make socket(AF_NETLINK, *, NETLINK_AUDIT) fail
-           with EAFNOSUPPORT which audit userspace uses as indication
-           that audit is disabled in the kernel.
-         */
-
         seccomp = seccomp_init(SCMP_ACT_ALLOW);
         if (!seccomp)
                 return log_oom();
@@ -1889,6 +1893,26 @@ static int audit_still_doesnt_work_in_containers(void) {
                 goto finish;
         }
 
+        for (i = 0; i < ELEMENTSOF(blacklist); i++) {
+                r = seccomp_rule_add(seccomp, SCMP_ACT_ERRNO(EPERM), blacklist[i], 0);
+                if (r == -EFAULT)
+                        continue; /* unknown syscall */
+                if (r < 0) {
+                        log_error("Failed to block syscall: %s", strerror(-r));
+                        goto finish;
+                }
+        }
+
+        /*
+           Audit is broken in containers, much of the userspace audit
+           hookup will fail if running inside a container. We don't
+           care and just turn off creation of audit sockets.
+
+           This will make socket(AF_NETLINK, *, NETLINK_AUDIT) fail
+           with EAFNOSUPPORT which audit userspace uses as indication
+           that audit is disabled in the kernel.
+         */
+
         r = seccomp_rule_add(
                         seccomp,
                         SCMP_ACT_ERRNO(EAFNOSUPPORT),
@@ -2644,20 +2668,31 @@ static int change_uid_gid(char **_home) {
 }
 
 /*
- * Return 0 in case the container is being rebooted, has been shut
- * down or exited successfully. On failures a negative value is
- * returned.
+ * Return values:
+ * < 0 : wait_for_terminate() failed to get the state of the
+ *       container, the container was terminated by a signal, or
+ *       failed for an unknown reason.  No change is made to the
+ *       container argument.
+ * > 0 : The program executed in the container terminated with an
+ *       error.  The exit code of the program executed in the
+ *       container is returned.  No change is made to the container
+ *       argument.
+ *   0 : The container is being rebooted, has been shut down or exited
+ *       successfully.  The container argument has been set to either
+ *       CONTAINER_TERMINATED or CONTAINER_REBOOTED.
  *
- * The status of the container "CONTAINER_TERMINATED" or
- * "CONTAINER_REBOOTED" will be saved in the container argument
+ * That is, success is indicated by a return value of zero, and an
+ * error is indicated by a non-zero value.
  */
 static int wait_for_container(pid_t pid, ContainerStatus *container) {
         int r;
         siginfo_t status;
 
         r = wait_for_terminate(pid, &status);
-        if (r < 0)
+        if (r < 0) {
+                log_warning("Failed to wait for container: %s", strerror(-r));
                 return r;
+        }
 
         switch (status.si_code) {
         case CLD_EXITED:
@@ -2671,7 +2706,6 @@ static int wait_for_container(pid_t pid, ContainerStatus *container) {
                 } else {
                         log_error("Container %s failed with error code %i.",
                                   arg_machine, status.si_status);
-                        r = -1;
                 }
                 break;
 
@@ -2799,7 +2833,7 @@ int main(int argc, char *argv[]) {
 
                 if (arg_boot) {
                         if (path_is_os_tree(arg_directory) <= 0) {
-                                log_error("Directory %s doesn't look like an OS root directory (/etc/os-release is missing). Refusing.", arg_directory);
+                                log_error("Directory %s doesn't look like an OS root directory (os-release file is missing). Refusing.", arg_directory);
                                 goto finish;
                         }
                 } else {
@@ -3008,6 +3042,12 @@ int main(int argc, char *argv[]) {
                                           srv_device, srv_device_rw) < 0)
                                 goto child_fail;
 
+                        r = base_filesystem_create(arg_directory);
+                        if (r < 0) {
+                                log_error("Failed to create the base filesystem: %s", strerror(-r));
+                                goto child_fail;
+                        }
+
                         /* Turn directory into bind mount */
                         if (mount(arg_directory, arg_directory, "bind", MS_BIND|MS_REC, NULL) < 0) {
                                 log_error("Failed to make bind mount: %m");
@@ -3033,7 +3073,7 @@ int main(int argc, char *argv[]) {
 
                         dev_setup(arg_directory);
 
-                        if (audit_still_doesnt_work_in_containers() < 0)
+                        if (setup_seccomp() < 0)
                                 goto child_fail;
 
                         if (setup_dev_console(arg_directory, console) < 0)
@@ -3230,75 +3270,93 @@ int main(int argc, char *argv[]) {
                  * join its cgroup which might limit what it can do */
                 r = eventfd_child_succeeded(eventfds[1]);
                 eventfds[1] = safe_close(eventfds[1]);
-                if (r < 0)
-                        goto check_container_status;
 
-                r = register_machine(pid);
-                if (r < 0)
-                        goto finish;
+                if (r >= 0) {
+                        r = register_machine(pid);
+                        if (r < 0)
+                                goto finish;
 
-                r = move_network_interfaces(pid);
-                if (r < 0)
-                        goto finish;
+                        r = move_network_interfaces(pid);
+                        if (r < 0)
+                                goto finish;
 
-                r = setup_veth(pid, veth_name);
-                if (r < 0)
-                        goto finish;
+                        r = setup_veth(pid, veth_name);
+                        if (r < 0)
+                                goto finish;
 
-                r = setup_bridge(veth_name);
-                if (r < 0)
-                        goto finish;
+                        r = setup_bridge(veth_name);
+                        if (r < 0)
+                                goto finish;
 
-                r = setup_macvlan(pid);
-                if (r < 0)
-                        goto finish;
+                        r = setup_macvlan(pid);
+                        if (r < 0)
+                                goto finish;
 
-                /* Block SIGCHLD here, before notifying child.
-                 * process_pty() will handle it with the other signals. */
-                r = sigprocmask(SIG_BLOCK, &mask_chld, NULL);
-                if (r < 0)
-                        goto finish;
+                        /* Block SIGCHLD here, before notifying child.
+                         * process_pty() will handle it with the other signals. */
+                        r = sigprocmask(SIG_BLOCK, &mask_chld, NULL);
+                        if (r < 0)
+                                goto finish;
 
-                /* Reset signal to default */
-                r = default_signals(SIGCHLD, -1);
-                if (r < 0)
-                        goto finish;
+                        /* Reset signal to default */
+                        r = default_signals(SIGCHLD, -1);
+                        if (r < 0)
+                                goto finish;
 
-                /* Notify the child that the parent is ready with all
-                 * its setup, and that the child can now hand over
-                 * control to the code to run inside the container. */
-                r = eventfd_send_state(eventfds[0],
-                                       EVENTFD_PARENT_SUCCEEDED);
-                eventfds[0] = safe_close(eventfds[0]);
-                if (r < 0)
-                        goto finish;
+                        /* Notify the child that the parent is ready with all
+                         * its setup, and that the child can now hand over
+                         * control to the code to run inside the container. */
+                        r = eventfd_send_state(eventfds[0], EVENTFD_PARENT_SUCCEEDED);
+                        eventfds[0] = safe_close(eventfds[0]);
+                        if (r < 0)
+                                goto finish;
 
-                k = process_pty(master, &mask, arg_boot ? pid : 0, SIGRTMIN+3);
-                if (k < 0) {
-                        r = EXIT_FAILURE;
-                        break;
-                }
+                        k = process_pty(master, &mask, arg_boot ? pid : 0, SIGRTMIN+3);
+                        if (k < 0) {
+                                r = EXIT_FAILURE;
+                                break;
+                        }
 
-                if (!arg_quiet)
-                        putc('\n', stdout);
+                        if (!arg_quiet)
+                                putc('\n', stdout);
 
-                /* Kill if it is not dead yet anyway */
-                terminate_machine(pid);
+                        /* Kill if it is not dead yet anyway */
+                        terminate_machine(pid);
+                }
 
-check_container_status:
-                /* Redundant, but better safe than sorry */
+                /* Normally redundant, but better safe than sorry */
                 kill(pid, SIGKILL);
 
                 r = wait_for_container(pid, &container_status);
                 pid = 0;
 
                 if (r < 0) {
+                        /* We failed to wait for the container, or the
+                         * container exited abnormally */
                         r = EXIT_FAILURE;
                         break;
-                } else if (container_status == CONTAINER_TERMINATED)
+                } else if (r > 0 || container_status == CONTAINER_TERMINATED)
+                        /* The container exited with a non-zero
+                         * status, or with zero status and no reboot
+                         * was requested. */
                         break;
 
                 /* CONTAINER_REBOOTED, loop again */
+
+                if (arg_keep_unit) {
+                        /* Special handling if we are running as a
+                         * service: instead of simply restarting the
+                         * machine we want to restart the entire
+                         * service, so let's inform systemd about this
+                         * with the special exit code 133. The service
+                         * file uses RestartForceExitStatus=133 so
+                         * that this results in a full nspawn
+                         * restart. This is necessary since we might
+                         * have cgroup parameters set we want to have
+                         * flushed out. */
+                        r = 133;
+                        break;
+                }
         }
 
 finish:
diff --git a/src/path/path.c b/src/path/path.c
new file mode 100644 (file)
index 0000000..c2936e0
--- /dev/null
@@ -0,0 +1,208 @@
+/*-*- Mode: C; c-basic-offset: 8; indent-tabs-mode: nil -*-*/
+
+/***
+  This file is part of systemd.
+
+  Copyright 2014 Lennart Poettering
+
+  systemd is free software; you can redistribute it and/or modify it
+  under the terms of the GNU Lesser General Public License as published by
+  the Free Software Foundation; either version 2.1 of the License, or
+  (at your option) any later version.
+
+  systemd is distributed in the hope that it will be useful, but
+  WITHOUT ANY WARRANTY; without even the implied warranty of
+  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+  Lesser General Public License for more details.
+
+  You should have received a copy of the GNU Lesser General Public License
+  along with systemd; If not, see <http://www.gnu.org/licenses/>.
+***/
+
+#include <stdio.h>
+#include <getopt.h>
+#include <error.h>
+#include <errno.h>
+#include <unistd.h>
+#include <stdlib.h>
+#include <string.h>
+
+#include "sd-path.h"
+#include "build.h"
+#include "macro.h"
+#include "util.h"
+#include "log.h"
+
+static const char *arg_suffix = NULL;
+
+static const char* const path_table[_SD_PATH_MAX] = {
+        [SD_PATH_TEMPORARY] = "temporary",
+        [SD_PATH_TEMPORARY_LARGE] = "temporary-large",
+        [SD_PATH_SYSTEM_BINARIES] = "system-binaries",
+        [SD_PATH_SYSTEM_INCLUDE] = "system-include",
+        [SD_PATH_SYSTEM_LIBRARY_PRIVATE] = "system-library-private",
+        [SD_PATH_SYSTEM_LIBRARY_ARCH] = "system-library-arch",
+        [SD_PATH_SYSTEM_SHARED] = "system-shared",
+        [SD_PATH_SYSTEM_CONFIGURATION_FACTORY] = "system-configuration-factory",
+        [SD_PATH_SYSTEM_STATE_FACTORY] = "system-state-factory",
+        [SD_PATH_SYSTEM_CONFIGURATION] = "system-configuration",
+        [SD_PATH_SYSTEM_RUNTIME] = "system-runtime",
+        [SD_PATH_SYSTEM_RUNTIME_LOGS] = "system-runtime-logs",
+        [SD_PATH_SYSTEM_STATE_PRIVATE] = "system-state-private",
+        [SD_PATH_SYSTEM_STATE_LOGS] = "system-state-logs",
+        [SD_PATH_SYSTEM_STATE_CACHE] = "system-state-cache",
+        [SD_PATH_SYSTEM_STATE_SPOOL] = "system-state-spool",
+        [SD_PATH_USER_BINARIES] = "user-binaries",
+        [SD_PATH_USER_LIBRARY_PRIVATE] = "user-library-private",
+        [SD_PATH_USER_LIBRARY_ARCH] = "user-library-arch",
+        [SD_PATH_USER_SHARED] = "user-shared",
+        [SD_PATH_USER_CONFIGURATION] = "user-configuration",
+        [SD_PATH_USER_RUNTIME] = "user-runtime",
+        [SD_PATH_USER_STATE_CACHE] = "user-state-cache",
+        [SD_PATH_USER] = "user",
+        [SD_PATH_USER_DOCUMENTS] = "user-documents",
+        [SD_PATH_USER_MUSIC] = "user-music",
+        [SD_PATH_USER_PICTURES] = "user-pictures",
+        [SD_PATH_USER_VIDEOS] = "user-videos",
+        [SD_PATH_USER_DOWNLOAD] = "user-download",
+        [SD_PATH_USER_PUBLIC] = "user-public",
+        [SD_PATH_USER_TEMPLATES] = "user-templates",
+        [SD_PATH_USER_DESKTOP] = "user-desktop",
+        [SD_PATH_SEARCH_BINARIES] = "search-binaries",
+        [SD_PATH_SEARCH_LIBRARY_PRIVATE] = "search-library-private",
+        [SD_PATH_SEARCH_LIBRARY_ARCH] = "search-library-arch",
+        [SD_PATH_SEARCH_SHARED] = "search-shared",
+        [SD_PATH_SEARCH_CONFIGURATION_FACTORY] = "search-configuration-factory",
+        [SD_PATH_SEARCH_STATE_FACTORY] = "search-state-factory",
+        [SD_PATH_SEARCH_CONFIGURATION] = "search-configuration",
+};
+
+static int help(void) {
+
+        printf("%s [OPTIONS...] [NAME...]\n\n"
+               "Show system and user paths.\n\n"
+               "  -h --help             Show this help\n"
+               "     --version          Show package version\n"
+               "     --suffix=SUFFIX    Suffix to append to paths\n",
+               program_invocation_short_name);
+
+        return 0;
+}
+
+static int list_homes(void) {
+        uint64_t i = 0;
+        int r = 0;
+
+        for (i = 0; i < ELEMENTSOF(path_table); i++) {
+                _cleanup_free_ char *p = NULL;
+                int q;
+
+                q = sd_path_home(i, arg_suffix, &p);
+                if (q == -ENXIO)
+                        continue;
+                if (q < 0) {
+                        log_error("Failed to query %s: %s", path_table[i], strerror(-r));
+                        r = q;
+                        continue;
+                }
+
+                printf("%s: %s\n", path_table[i], p);
+        }
+
+        return r;
+}
+
+static int print_home(const char *n) {
+        uint64_t i = 0;
+        int r;
+
+        for (i = 0; i < ELEMENTSOF(path_table); i++) {
+                if (streq(path_table[i], n)) {
+                        _cleanup_free_ char *p = NULL;
+
+                        r = sd_path_home(i, arg_suffix, &p);
+                        if (r < 0) {
+                                log_error("Failed to query %s: %s", n, strerror(-r));
+                                return r;
+                        }
+
+                        printf("%s\n", p);
+                        return 0;
+                }
+        }
+
+        log_error("Path %s not known.", n);
+        return -ENOTSUP;
+}
+
+static int parse_argv(int argc, char *argv[]) {
+
+        enum {
+                ARG_VERSION = 0x100,
+                ARG_SUFFIX,
+        };
+
+        static const struct option options[] = {
+                { "help",      no_argument,       NULL, 'h'           },
+                { "version",   no_argument,       NULL, ARG_VERSION   },
+                { "suffix",    required_argument, NULL, ARG_SUFFIX    },
+                {}
+        };
+
+        int c;
+
+        assert(argc >= 0);
+        assert(argv);
+
+        while ((c = getopt_long(argc, argv, "h", options, NULL)) >= 0) {
+
+                switch (c) {
+
+                case 'h':
+                        return help();
+
+                case ARG_VERSION:
+                        puts(PACKAGE_STRING);
+                        puts(SYSTEMD_FEATURES);
+                        return 0;
+
+                case ARG_SUFFIX:
+                        arg_suffix = optarg;
+                        break;
+
+                case '?':
+                        return -EINVAL;
+
+                default:
+                        assert_not_reached("Unhandled option");
+                }
+        }
+
+        return 1;
+}
+
+int main(int argc, char* argv[]) {
+        int r;
+
+        log_parse_environment();
+        log_open();
+
+        r = parse_argv(argc, argv);
+        if (r <= 0)
+                goto finish;
+
+        if (argc > optind) {
+                int i, q;
+
+                for (i = optind; i < argc; i++) {
+                        q = print_home(argv[i]);
+                        if (q < 0)
+                                r = q;
+                }
+        } else
+                r = list_homes();
+
+
+finish:
+        return r < 0 ? EXIT_FAILURE : EXIT_SUCCESS;
+}
diff --git a/src/python-systemd/id128-constants.h b/src/python-systemd/id128-constants.h
deleted file mode 100644 (file)
index fe0e817..0000000
+++ /dev/null
@@ -1,37 +0,0 @@
-add_id(m, "SD_MESSAGE_JOURNAL_START", SD_MESSAGE_JOURNAL_START) JOINER
-add_id(m, "SD_MESSAGE_JOURNAL_STOP", SD_MESSAGE_JOURNAL_STOP) JOINER
-add_id(m, "SD_MESSAGE_JOURNAL_DROPPED", SD_MESSAGE_JOURNAL_DROPPED) JOINER
-add_id(m, "SD_MESSAGE_JOURNAL_MISSED", SD_MESSAGE_JOURNAL_MISSED) JOINER
-add_id(m, "SD_MESSAGE_JOURNAL_USAGE", SD_MESSAGE_JOURNAL_USAGE) JOINER
-add_id(m, "SD_MESSAGE_COREDUMP", SD_MESSAGE_COREDUMP) JOINER
-add_id(m, "SD_MESSAGE_SESSION_START", SD_MESSAGE_SESSION_START) JOINER
-add_id(m, "SD_MESSAGE_SESSION_STOP", SD_MESSAGE_SESSION_STOP) JOINER
-add_id(m, "SD_MESSAGE_SEAT_START", SD_MESSAGE_SEAT_START) JOINER
-add_id(m, "SD_MESSAGE_SEAT_STOP", SD_MESSAGE_SEAT_STOP) JOINER
-add_id(m, "SD_MESSAGE_MACHINE_START", SD_MESSAGE_MACHINE_START) JOINER
-add_id(m, "SD_MESSAGE_MACHINE_STOP", SD_MESSAGE_MACHINE_STOP) JOINER
-add_id(m, "SD_MESSAGE_TIME_CHANGE", SD_MESSAGE_TIME_CHANGE) JOINER
-add_id(m, "SD_MESSAGE_TIMEZONE_CHANGE", SD_MESSAGE_TIMEZONE_CHANGE) JOINER
-add_id(m, "SD_MESSAGE_STARTUP_FINISHED", SD_MESSAGE_STARTUP_FINISHED) JOINER
-add_id(m, "SD_MESSAGE_SLEEP_START", SD_MESSAGE_SLEEP_START) JOINER
-add_id(m, "SD_MESSAGE_SLEEP_STOP", SD_MESSAGE_SLEEP_STOP) JOINER
-add_id(m, "SD_MESSAGE_SHUTDOWN", SD_MESSAGE_SHUTDOWN) JOINER
-add_id(m, "SD_MESSAGE_UNIT_STARTING", SD_MESSAGE_UNIT_STARTING) JOINER
-add_id(m, "SD_MESSAGE_UNIT_STARTED", SD_MESSAGE_UNIT_STARTED) JOINER
-add_id(m, "SD_MESSAGE_UNIT_STOPPING", SD_MESSAGE_UNIT_STOPPING) JOINER
-add_id(m, "SD_MESSAGE_UNIT_STOPPED", SD_MESSAGE_UNIT_STOPPED) JOINER
-add_id(m, "SD_MESSAGE_UNIT_FAILED", SD_MESSAGE_UNIT_FAILED) JOINER
-add_id(m, "SD_MESSAGE_UNIT_RELOADING", SD_MESSAGE_UNIT_RELOADING) JOINER
-add_id(m, "SD_MESSAGE_UNIT_RELOADED", SD_MESSAGE_UNIT_RELOADED) JOINER
-add_id(m, "SD_MESSAGE_SPAWN_FAILED", SD_MESSAGE_SPAWN_FAILED) JOINER
-add_id(m, "SD_MESSAGE_FORWARD_SYSLOG_MISSED", SD_MESSAGE_FORWARD_SYSLOG_MISSED) JOINER
-add_id(m, "SD_MESSAGE_OVERMOUNTING", SD_MESSAGE_OVERMOUNTING) JOINER
-add_id(m, "SD_MESSAGE_LID_OPENED", SD_MESSAGE_LID_OPENED) JOINER
-add_id(m, "SD_MESSAGE_LID_CLOSED", SD_MESSAGE_LID_CLOSED) JOINER
-add_id(m, "SD_MESSAGE_SYSTEM_DOCKED", SD_MESSAGE_SYSTEM_DOCKED) JOINER
-add_id(m, "SD_MESSAGE_SYSTEM_UNDOCKED", SD_MESSAGE_SYSTEM_UNDOCKED) JOINER
-add_id(m, "SD_MESSAGE_POWER_KEY", SD_MESSAGE_POWER_KEY) JOINER
-add_id(m, "SD_MESSAGE_SUSPEND_KEY", SD_MESSAGE_SUSPEND_KEY) JOINER
-add_id(m, "SD_MESSAGE_HIBERNATE_KEY", SD_MESSAGE_HIBERNATE_KEY) JOINER
-add_id(m, "SD_MESSAGE_CONFIG_ERROR", SD_MESSAGE_CONFIG_ERROR) JOINER
-add_id(m, "SD_MESSAGE_BOOTCHART", SD_MESSAGE_BOOTCHART) JOINER
index efd6e18308ae5d201d8d850d06679e668285b2d7..ed95b48c63e6881cb1cccee32edc882a655b48e4 100644 (file)
@@ -42,10 +42,9 @@ static int parse_proc_cmdline_item(const char *key, const char *value) {
                 else if (streq(value, "skip"))
                         arg_skip = true;
                 else
-                        log_warning("Invalid quotacheck.mode= parameter. Ignoring.");
+                        log_warning("Invalid quotacheck.mode= parameter '%s'. Ignoring.", value);
+        }
 
-        } else if (startswith(key, "quotacheck."))
-                log_warning("Invalid quotacheck parameter. Ignoring.");
 #ifdef HAVE_SYSV_COMPAT
         else if (streq(key, "forcequotacheck") && !value) {
                 log_warning("Please use 'quotacheck.mode=force' rather than 'forcequotacheck' on the kernel command line.");
@@ -57,6 +56,7 @@ static int parse_proc_cmdline_item(const char *key, const char *value) {
 }
 
 static void test_files(void) {
+
 #ifdef HAVE_SYSV_COMPAT
         if (access("/forcequotacheck", F_OK) >= 0) {
                 log_error("Please pass 'quotacheck.mode=force' on the kernel command line rather than creating /forcequotacheck on the root file system.");
index 890886eca1a063413e6034066b7f1f3b9d872625..3ca48a7257b652f0391cdfa0150c27bdc1d1b7bc 100644 (file)
@@ -52,7 +52,9 @@ int file_verify(int fd, const char *fn, off_t file_size_max, struct stat *st) {
         }
 
         if (st->st_size <= 0 || st->st_size > file_size_max) {
-                log_debug("Not preloading file %s with size out of bounds %zu", fn, st->st_size);
+                assert_cc(sizeof(st->st_size) == 8);
+                log_debug("Not preloading file %s with size out of bounds %"PRIu64,
+                          fn, st->st_size);
                 return 0;
         }
 
@@ -226,7 +228,7 @@ int open_inotify(void) {
 }
 
 ReadaheadShared *shared_get(void) {
-        int _cleanup_close_ fd = -1;
+        _cleanup_close_ int fd = -1;
         ReadaheadShared *m = NULL;
 
         mkdirs();
index 36ef490d7eb92fe567d2fcb44f1ef10c434ea1b7..a753ad14fdc24ad939c6f2b47493d1025abbaad5 100644 (file)
 int acl_find_uid(acl_t acl, uid_t uid, acl_entry_t *entry);
 int calc_acl_mask_if_needed(acl_t *acl_p);
 int search_acl_groups(char*** dst, const char* path, bool* belong);
+
+static inline void acl_freep(acl_t *acl) {
+
+        if (!*acl)
+                return;
+
+        acl_free(*acl);
+}
index 9e0c3efd11248925260857ab55cb693a811828d8..7dd049a36a513e435a35ab70deceda6ab813f5b1 100644 (file)
@@ -116,6 +116,7 @@ Architecture uname_architecture(void) {
                 { "tilegx",     ARCHITECTURE_TILEGX   },
 #elif defined(__cris__)
                 { "cris",       ARCHITECTURE_CRIS     },
+                { "crisv32",    ARCHITECTURE_CRIS     },
 #else
 #error "Please register your architecture here!"
 #endif
index 20e848bd8f6245858a1c5e57c2755bb12fe2d1f1..4821d5d289f9dda0d6f961c39093bded046be09a 100644 (file)
 
 #include "util.h"
 
+/* A cleaned up architecture definition. We don't want to get lost in
+ * processor features, models, generations or even ABIs. Hence we
+ * focus on general family, and distuignish word width and
+ * endianess. */
+
 typedef enum Architecture {
         ARCHITECTURE_X86 = 0,
         ARCHITECTURE_X86_64,
@@ -38,7 +43,9 @@ typedef enum Architecture {
         ARCHITECTURE_SPARC,
         ARCHITECTURE_SPARC64,
         ARCHITECTURE_MIPS,
+        ARCHITECTURE_MIPS_LE,
         ARCHITECTURE_MIPS64,
+        ARCHITECTURE_MIPS64_LE,
         ARCHITECTURE_ALPHA,
         ARCHITECTURE_ARM,
         ARCHITECTURE_ARM_BE,
@@ -55,64 +62,126 @@ typedef enum Architecture {
 
 Architecture uname_architecture(void);
 
+/*
+ * LIB_ARCH_TUPLE should resolve to the local library path
+ * architecture tuple systemd is built for, according to the Debian
+ * tuple list:
+ *
+ * https://wiki.debian.org/Multiarch/Tuples
+ *
+ * This is used in library search paths that should understand
+ * Debian's paths on all distributions.
+ */
+
 #if defined(__x86_64__)
 #  define native_architecture() ARCHITECTURE_X86_64
+#  define LIB_ARCH_TUPLE "x86_64-linux-gnu"
 #elif defined(__i386__)
 #  define native_architecture() ARCHITECTURE_X86
+#  define LIB_ARCH_TUPLE "i386-linux-gnu"
 #elif defined(__powerpc64__)
 #  if defined(WORDS_BIGENDIAN)
 #    define native_architecture() ARCHITECTURE_PPC64
+#    define LIB_ARCH_TUPLE "ppc64-linux-gnu"
 #  else
 #    define native_architecture() ARCHITECTURE_PPC64_LE
+#    error "Missing LIB_ARCH_TUPLE for PPC64LE"
 #  endif
 #elif defined(__powerpc__)
 #  if defined(WORDS_BIGENDIAN)
 #    define native_architecture() ARCHITECTURE_PPC
+#    define LIB_ARCH_TUPLE "powerpc-linux-gnu"
 #  else
 #    define native_architecture() ARCHITECTURE_PPC_LE
+#    error "Missing LIB_ARCH_TUPLE for PPCLE"
 #  endif
 #elif defined(__ia64__)
 #  define native_architecture() ARCHITECTURE_IA64
+#  define LIB_ARCH_TUPLE "ia64-linux-gnu"
 #elif defined(__hppa64__)
 #  define native_architecture() ARCHITECTURE_PARISC64
+#  error "Missing LIB_ARCH_TUPLE for HPPA64"
 #elif defined(__hppa__)
 #  define native_architecture() ARCHITECTURE_PARISC
+#  define LIB_ARCH_TUPLE "hppa‑linux‑gnu"
 #elif defined(__s390x__)
 #  define native_architecture() ARCHITECTURE_S390X
+#  define LIB_ARCH_TUPLE "s390x-linux-gnu"
 #elif defined(__s390__)
 #  define native_architecture() ARCHITECTURE_S390
+#  define LIB_ARCH_TUPLE "s390-linux-gnu"
 #elif defined(__sparc64__)
 #  define native_architecture() ARCHITECTURE_SPARC64
+#  define LIB_ARCH_TUPLE "sparc64-linux-gnu"
 #elif defined(__sparc__)
 #  define native_architecture() ARCHITECTURE_SPARC
+#  define LIB_ARCH_TUPLE "sparc-linux-gnu"
 #elif defined(__mips64__)
-#  define native_architecture() ARCHITECTURE_MIPS64
+#  if defined(WORDS_BIGENDIAN)
+#    define native_architecture() ARCHITECTURE_MIPS64
+#    error "Missing LIB_ARCH_TUPLE for MIPS64"
+#  else
+#    define native_architecture() ARCHITECTURE_MIPS64_LE
+#    error "Missing LIB_ARCH_TUPLE for MIPS64_LE"
+#  endif
 #elif defined(__mips__)
-#  define native_architecture() ARCHITECTURE_MIPS
+#  if defined(WORDS_BIGENDIAN)
+#    define native_architecture() ARCHITECTURE_MIPS
+#    define LIB_ARCH_TUPLE "mips-linux-gnu"
+#  else
+#    define native_architecture() ARCHITECTURE_MIPS_LE
+#    define LIB_ARCH_TUPLE "mipsel-linux-gnu"
+#endif
 #elif defined(__alpha__)
 #  define native_architecture() ARCHITECTURE_ALPHA
+#  define LIB_ARCH_TUPLE "alpha-linux-gnu"
 #elif defined(__aarch64__)
 #  if defined(WORDS_BIGENDIAN)
 #    define native_architecture() ARCHITECTURE_ARM64_BE
+#    define LIB_ARCH_TUPLE "aarch64_be-linux-gnu"
 #  else
 #    define native_architecture() ARCHITECTURE_ARM64
+#    define LIB_ARCH_TUPLE "aarch64-linux-gnu"
 #  endif
 #elif defined(__arm__)
 #  if defined(WORDS_BIGENDIAN)
 #    define native_architecture() ARCHITECTURE_ARM_BE
+#    if defined(__ARM_EABI__)
+#      if defined(__ARM_PCS_VFP)
+#        define LIB_ARCH_TUPLE "armeb-linux-gnueabihf"
+#      else
+#        define LIB_ARCH_TUPLE "armeb-linux-gnueabi"
+#      endif
+#    else
+#      define LIB_ARCH_TUPLE "armeb-linux-gnu"
+#    endif
 #  else
 #    define native_architecture() ARCHITECTURE_ARM
+#    if defined(__ARM_EABI__)
+#      if defined(__ARM_PCS_VFP)
+#        define LIB_ARCH_TUPLE "arm-linux-gnueabihf"
+#      else
+#        define LIB_ARCH_TUPLE "arm-linux-gnueabi"
+#      endif
+#    else
+#      define LIB_ARCH_TUPLE "arm-linux-gnu"
+#    endif
 #  endif
 #elif defined(__sh64__)
 #  define native_architecture() ARCHITECTURE_SH64
+#  error "Missing LIB_ARCH_TUPLE for SH64"
 #elif defined(__sh__)
 #  define native_architecture() ARCHITECTURE_SH
+#  define LIB_ARCH_TUPLE "sh4-linux-gnu"
 #elif defined(__m68k__)
 #  define native_architecture() ARCHITECTURE_M68K
+#  define LIB_ARCH_TUPLE "m68k-linux-gnu"
 #elif defined(__tilegx__)
 #  define native_architecture() ARCHITECTURE_TILEGX
+#  error "Missing LIB_ARCH_TUPLE for TILEGX"
 #elif defined(__cris__)
 #  define native_architecture() ARCHITECTURE_CRIS
+#  error "Missing LIB_ARCH_TUPLE for CRIS"
 #else
 #error "Please register your architecture here!"
 #endif
index 546644773720934a18412394fb7d3687567eed3e..f101050825384ff43e5b8e1f711dfc6c93f21e09 100644 (file)
@@ -77,9 +77,6 @@ int audit_loginuid_from_pid(pid_t pid, uid_t *uid) {
         if (r < 0)
                 return r;
 
-        if (u == (uid_t) -1)
-                return -ENXIO;
-
         *uid = (uid_t) u;
         return 0;
 }
diff --git a/src/shared/base-filesystem.c b/src/shared/base-filesystem.c
new file mode 100644 (file)
index 0000000..daaeaca
--- /dev/null
@@ -0,0 +1,112 @@
+/*-*- Mode: C; c-basic-offset: 8; indent-tabs-mode: nil -*-*/
+
+/***
+  This file is part of systemd.
+
+  Copyright 2014 Kay Sievers
+
+  systemd is free software; you can redistribute it and/or modify it
+  under the terms of the GNU Lesser General Public License as published by
+  the Free Software Foundation; either version 2.1 of the License, or
+  (at your option) any later version.
+
+  systemd is distributed in the hope that it will be useful, but
+  WITHOUT ANY WARRANTY; without even the implied warranty of
+  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+  Lesser General Public License for more details.
+
+  You should have received a copy of the GNU Lesser General Public License
+  along with systemd; If not, see <http://www.gnu.org/licenses/>.
+***/
+
+#include <errno.h>
+#include <sys/stat.h>
+#include <stdlib.h>
+#include <string.h>
+#include <assert.h>
+#include <unistd.h>
+
+#include "base-filesystem.h"
+#include "log.h"
+#include "macro.h"
+#include "strv.h"
+#include "util.h"
+#include "label.h"
+#include "mkdir.h"
+
+typedef struct BaseFilesystem {
+        const char *dir;
+        mode_t mode;
+        const char *target;
+        const char *exists;
+} BaseFilesystem;
+
+static const BaseFilesystem table[] = {
+        { "bin",      0, "usr/bin",                             NULL },
+        { "lib",      0, "usr/lib",                             NULL },
+        { "root",  0755, NULL,                                  NULL },
+        { "sbin",     0, "usr/sbin",                            NULL },
+#if defined(__i386__) || defined(__x86_64__)
+        { "lib64",    0, "usr/lib/x86_64-linux-gnu\0usr/lib64", "ld-linux-x86-64.so.2" },
+#endif
+};
+
+int base_filesystem_create(const char *root) {
+        _cleanup_close_ int fd = -1;
+        unsigned i;
+        int r;
+
+        fd = open(root, O_RDONLY|O_NONBLOCK|O_DIRECTORY|O_CLOEXEC|O_NOFOLLOW);
+        if (fd < 0)
+                return -errno;
+
+        for (i = 0; i < ELEMENTSOF(table); i ++) {
+                if (table[i].target) {
+                        const char *target = NULL;
+                        const char *s;
+
+                        if (faccessat(fd, table[i].dir, F_OK, AT_SYMLINK_NOFOLLOW) >= 0)
+                                continue;
+
+                        /* check if one of the targets exists */
+                        NULSTR_FOREACH(s, table[i].target) {
+                                if (faccessat(fd, s, F_OK, AT_SYMLINK_NOFOLLOW) < 0)
+                                        continue;
+
+                                /* check if a specific file exists at the target path */
+                                if (table[i].exists) {
+                                        _cleanup_free_ char *p = NULL;
+
+                                        p = strjoin(s, "/", table[i].exists, NULL);
+                                        if (!p)
+                                                return log_oom();
+
+                                        if (faccessat(fd, p, F_OK, AT_SYMLINK_NOFOLLOW) < 0)
+                                                continue;
+                                }
+
+                                target = s;
+                                break;
+                        }
+
+                        if (!target)
+                                continue;
+
+                        r = symlinkat(target, fd, table[i].dir);
+                        if (r < 0 && errno != EEXIST) {
+                                log_error("Failed to create symlink at %s/%s: %m", root, table[i].dir);
+                                return -errno;
+                        }
+                        continue;
+                }
+
+                RUN_WITH_UMASK(0000)
+                        r = mkdirat(fd, table[i].dir, table[i].mode);
+                if (r < 0 && errno != EEXIST) {
+                        log_error("Failed to create directory at %s/%s: %m", root, table[i].dir);
+                        return -errno;
+                }
+        }
+
+        return 0;
+}
diff --git a/src/shared/base-filesystem.h b/src/shared/base-filesystem.h
new file mode 100644 (file)
index 0000000..03201f7
--- /dev/null
@@ -0,0 +1,24 @@
+/*-*- Mode: C; c-basic-offset: 8; indent-tabs-mode: nil -*-*/
+
+#pragma once
+
+/***
+  This file is part of systemd.
+
+  Copyright 2014 Kay Sievers
+
+  systemd is free software; you can redistribute it and/or modify it
+  under the terms of the GNU Lesser General Public License as published by
+  the Free Software Foundation; either version 2.1 of the License, or
+  (at your option) any later version.
+
+  systemd is distributed in the hope that it will be useful, but
+  WITHOUT ANY WARRANTY; without even the implied warranty of
+  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+  Lesser General Public License for more details.
+
+  You should have received a copy of the GNU Lesser General Public License
+  along with systemd; If not, see <http://www.gnu.org/licenses/>.
+***/
+
+int base_filesystem_create(const char *root);
index 9961cb47f05a89ecb73866868ec1f6e79b329c9e..7b89b0fbafe1e3eebd1832ca01f79e5f4c9f99b0 100644 (file)
@@ -177,10 +177,9 @@ bool condition_test_architecture(Condition *c) {
 }
 
 bool condition_test_host(Condition *c) {
+        _cleanup_free_ char *h = NULL;
         sd_id128_t x, y;
-        char *h;
         int r;
-        bool b;
 
         assert(c);
         assert(c->parameter);
@@ -199,10 +198,7 @@ bool condition_test_host(Condition *c) {
         if (!h)
                 return c->negate;
 
-        b = fnmatch(c->parameter, h, FNM_CASEFOLD) == 0;
-        free(h);
-
-        return b == !c->negate;
+        return (fnmatch(c->parameter, h, FNM_CASEFOLD) == 0) == !c->negate;
 }
 
 bool condition_test_ac_power(Condition *c) {
@@ -260,6 +256,7 @@ static const char* const condition_type_table[_CONDITION_TYPE_MAX] = {
         [CONDITION_HOST] = "ConditionHost",
         [CONDITION_AC_POWER] = "ConditionACPower",
         [CONDITION_ARCHITECTURE] = "ConditionArchitecture",
+        [CONDITION_NEEDS_UPDATE] = "ConditionNeedsUpdate",
         [CONDITION_NULL] = "ConditionNull"
 };
 
index 63d945efacb26d23cc38da9708f02217c1e41786..0b09f83f90969dc2fc731f5e38be7cf76b67359d 100644 (file)
@@ -44,6 +44,7 @@ typedef enum ConditionType {
         CONDITION_HOST,
         CONDITION_AC_POWER,
         CONDITION_ARCHITECTURE,
+        CONDITION_NEEDS_UPDATE,
         CONDITION_NULL,
         _CONDITION_TYPE_MAX,
         _CONDITION_TYPE_INVALID = -1
index 52017821834f4663b540371e34561056e51af81d..c72a099b5a1bb5b6805e2f11f651bab3ab1786e5 100644 (file)
 #include "hashmap.h"
 #include "conf-files.h"
 
-static int files_add(Hashmap *h, const char *dirpath, const char *suffix) {
+static int files_add(Hashmap *h, const char *root, const char *path, const char *suffix) {
         _cleanup_closedir_ DIR *dir = NULL;
+        char *dirpath;
+
+        assert(path);
+        assert(suffix);
+
+        dirpath = strappenda(root ? root : "", path);
 
         dir = opendir(dirpath);
         if (!dir) {
@@ -92,7 +98,7 @@ static int base_cmp(const void *a, const void *b) {
 }
 
 static int conf_files_list_strv_internal(char ***strv, const char *suffix, const char *root, char **dirs) {
-        Hashmap *fh;
+        _cleanup_hashmap_free_ Hashmap *fh = NULL;
         char **files, **p;
         int r;
 
@@ -100,7 +106,7 @@ static int conf_files_list_strv_internal(char ***strv, const char *suffix, const
         assert(suffix);
 
         /* This alters the dirs string array */
-        if (!path_strv_canonicalize_absolute_uniq(dirs, root))
+        if (!path_strv_resolve_uniq(dirs, root))
                 return -ENOMEM;
 
         fh = hashmap_new(string_hash_func, string_compare_func);
@@ -108,9 +114,8 @@ static int conf_files_list_strv_internal(char ***strv, const char *suffix, const
                 return -ENOMEM;
 
         STRV_FOREACH(p, dirs) {
-                r = files_add(fh, *p, suffix);
+                r = files_add(fh, root, *p, suffix);
                 if (r == -ENOMEM) {
-                        hashmap_free_free(fh);
                         return r;
                 } else if (r < 0)
                         log_debug("Failed to search for files in %s: %s",
@@ -119,14 +124,12 @@ static int conf_files_list_strv_internal(char ***strv, const char *suffix, const
 
         files = hashmap_get_strv(fh);
         if (files == NULL) {
-                hashmap_free_free(fh);
                 return -ENOMEM;
         }
 
         qsort_safe(files, hashmap_size(fh), sizeof(char *), base_cmp);
         *strv = files;
 
-        hashmap_free(fh);
         return 0;
 }
 
index 4dfc2f3fca11438d92997ad257927d3f151730b6..3744797b9502788b8d16335085ec3ca89a7492f5 100644 (file)
 #include "util.h"
 #include "copy.h"
 
-static int stream_bytes(int fdf, int fdt) {
+int copy_bytes(int fdf, int fdt, off_t max_bytes) {
         assert(fdf >= 0);
         assert(fdt >= 0);
 
         for (;;) {
                 char buf[PIPE_BUF];
                 ssize_t n, k;
+                size_t m = sizeof(buf);
 
-                n = read(fdf, buf, sizeof(buf));
+                if (max_bytes != (off_t) -1) {
+
+                        if (max_bytes <= 0)
+                                return -E2BIG;
+
+                        if ((off_t) m > max_bytes)
+                                m = (size_t) max_bytes;
+                }
+
+                n = read(fdf, buf, m);
                 if (n < 0)
                         return -errno;
                 if (n == 0)
@@ -42,6 +52,11 @@ static int stream_bytes(int fdf, int fdt) {
                         return k;
                 if (k != n)
                         return errno ? -errno : -EIO;
+
+                if (max_bytes != (off_t) -1) {
+                        assert(max_bytes >= n);
+                        max_bytes -= n;
+                }
         }
 
         return 0;
@@ -59,12 +74,8 @@ static int fd_copy_symlink(int df, const char *from, const struct stat *st, int
         if (r < 0)
                 return r;
 
-        if (symlinkat(target, dt, to) < 0) {
-                if (errno == EEXIST)
-                        return 0;
-
+        if (symlinkat(target, dt, to) < 0)
                 return -errno;
-        }
 
         if (fchownat(dt, to, st->st_uid, st->st_gid, AT_SYMLINK_NOFOLLOW) < 0)
                 return -errno;
@@ -85,14 +96,10 @@ static int fd_copy_regular(int df, const char *from, const struct stat *st, int
                 return -errno;
 
         fdt = openat(dt, to, O_WRONLY|O_CREAT|O_EXCL|O_CLOEXEC|O_NOCTTY|O_NOFOLLOW, st->st_mode & 07777);
-        if (fdt < 0) {
-                if (errno == EEXIST)
-                        return 0;
-
+        if (fdt < 0)
                 return -errno;
-        }
 
-        r = stream_bytes(fdf, fdt);
+        r = copy_bytes(fdf, fdt, (off_t) -1);
         if (r < 0) {
                 unlinkat(dt, to, 0);
                 return r;
@@ -123,12 +130,8 @@ static int fd_copy_fifo(int df, const char *from, const struct stat *st, int dt,
         assert(to);
 
         r = mkfifoat(dt, to, st->st_mode & 07777);
-        if (r < 0) {
-                if (errno == EEXIST)
-                        return 0;
-
+        if (r < 0)
                 return -errno;
-        }
 
         if (fchownat(dt, to, st->st_uid, st->st_gid, AT_SYMLINK_NOFOLLOW) < 0)
                 r = -errno;
@@ -147,12 +150,8 @@ static int fd_copy_node(int df, const char *from, const struct stat *st, int dt,
         assert(to);
 
         r = mknodat(dt, to, st->st_mode, st->st_rdev);
-        if (r < 0) {
-                if (errno == EEXIST)
-                        return 0;
-
+        if (r < 0)
                 return -errno;
-        }
 
         if (fchownat(dt, to, st->st_uid, st->st_gid, AT_SYMLINK_NOFOLLOW) < 0)
                 r = -errno;
@@ -163,7 +162,7 @@ static int fd_copy_node(int df, const char *from, const struct stat *st, int dt,
         return r;
 }
 
-static int fd_copy_directory(int df, const char *from, const struct stat *st, int dt, const char *to, dev_t original_device) {
+static int fd_copy_directory(int df, const char *from, const struct stat *st, int dt, const char *to, dev_t original_device, bool merge) {
         _cleanup_close_ int fdf = -1, fdt = -1;
         _cleanup_closedir_ DIR *d = NULL;
         struct dirent *de;
@@ -186,7 +185,7 @@ static int fd_copy_directory(int df, const char *from, const struct stat *st, in
         r = mkdirat(dt, to, st->st_mode & 07777);
         if (r >= 0)
                 created = true;
-        else if (errno == EEXIST)
+        else if (errno == EEXIST && merge)
                 created = false;
         else
                 return -errno;
@@ -195,6 +194,8 @@ static int fd_copy_directory(int df, const char *from, const struct stat *st, in
         if (fdt < 0)
                 return -errno;
 
+        r = 0;
+
         if (created) {
                 if (fchown(fdt, st->st_uid, st->st_gid) < 0)
                         r = -errno;
@@ -218,7 +219,7 @@ static int fd_copy_directory(int df, const char *from, const struct stat *st, in
                 if (S_ISREG(buf.st_mode))
                         q = fd_copy_regular(dirfd(d), de->d_name, &buf, fdt, de->d_name);
                 else if (S_ISDIR(buf.st_mode))
-                        q = fd_copy_directory(dirfd(d), de->d_name, &buf, fdt, de->d_name, original_device);
+                        q = fd_copy_directory(dirfd(d), de->d_name, &buf, fdt, de->d_name, original_device, merge);
                 else if (S_ISLNK(buf.st_mode))
                         q = fd_copy_symlink(dirfd(d), de->d_name, &buf, fdt, de->d_name);
                 else if (S_ISFIFO(buf.st_mode))
@@ -228,6 +229,9 @@ static int fd_copy_directory(int df, const char *from, const struct stat *st, in
                 else
                         q = -ENOTSUP;
 
+                if (q == -EEXIST && merge)
+                        q = 0;
+
                 if (q < 0)
                         r = q;
         }
@@ -235,7 +239,7 @@ static int fd_copy_directory(int df, const char *from, const struct stat *st, in
         return r;
 }
 
-int copy_tree(const char *from, const char *to) {
+int copy_tree(const char *from, const char *to, bool merge) {
         struct stat st;
 
         assert(from);
@@ -247,7 +251,7 @@ int copy_tree(const char *from, const char *to) {
         if (S_ISREG(st.st_mode))
                 return fd_copy_regular(AT_FDCWD, from, &st, AT_FDCWD, to);
         else if (S_ISDIR(st.st_mode))
-                return fd_copy_directory(AT_FDCWD, from, &st, AT_FDCWD, to, st.st_dev);
+                return fd_copy_directory(AT_FDCWD, from, &st, AT_FDCWD, to, st.st_dev, merge);
         else if (S_ISLNK(st.st_mode))
                 return fd_copy_symlink(AT_FDCWD, from, &st, AT_FDCWD, to);
         else if (S_ISFIFO(st.st_mode))
@@ -273,7 +277,7 @@ int copy_file(const char *from, const char *to, int flags, mode_t mode) {
         if (fdt < 0)
                 return -errno;
 
-        r = stream_bytes(fdf, fdt);
+        r = copy_bytes(fdf, fdt, (off_t) -1);
         if (r < 0) {
                 unlink(to);
                 return r;
index 5b569543eeb67aaedf9a98311ac26e5e68567d46..0bf2598f60df4be0bc1f321a8069dce5c91076f1 100644 (file)
@@ -22,4 +22,5 @@
 ***/
 
 int copy_file(const char *from, const char *to, int flags, mode_t mode);
-int copy_tree(const char *from, const char *to);
+int copy_tree(const char *from, const char *to, bool merge);
+int copy_bytes(int fdf, int fdt, off_t max_bytes);
diff --git a/src/shared/dropin.c b/src/shared/dropin.c
new file mode 100644 (file)
index 0000000..ac09be9
--- /dev/null
@@ -0,0 +1,102 @@
+/*-*- Mode: C; c-basic-offset: 8; indent-tabs-mode: nil -*-*/
+
+/***
+  This file is part of systemd.
+
+  Copyright 2014 Zbigniew Jędrzejewski-Szmek
+
+  systemd is free software; you can redistribute it and/or modify it
+  under the terms of the GNU Lesser General Public License as published by
+  the Free Software Foundation; either version 2.1 of the License, or
+  (at your option) any later version.
+
+  systemd is distributed in the hope that it will be useful, but
+  WITHOUT ANY WARRANTY; without even the implied warranty of
+  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+  Lesser General Public License for more details.
+
+  You should have received a copy of the GNU Lesser General Public License
+  along with systemd; If not, see <http://www.gnu.org/licenses/>.
+***/
+
+#include "dropin.h"
+#include "util.h"
+#include "mkdir.h"
+#include "fileio-label.h"
+
+int drop_in_file(const char *dir, const char *unit, unsigned level,
+                 const char *name, char **_p, char **_q) {
+
+        _cleanup_free_ char *b = NULL;
+        char *p, *q;
+
+        char prefix[DECIMAL_STR_MAX(unsigned)];
+
+        assert(unit);
+        assert(name);
+        assert(_p);
+        assert(_q);
+
+        sprintf(prefix, "%u", level);
+
+        b = xescape(name, "/.");
+        if (!b)
+                return -ENOMEM;
+
+        if (!filename_is_safe(b))
+                return -EINVAL;
+
+        p = strjoin(dir, "/", unit, ".d", NULL);
+        if (!p)
+                return -ENOMEM;
+
+        q = strjoin(p, "/", prefix, "-", b, ".conf", NULL);
+        if (!q) {
+                free(p);
+                return -ENOMEM;
+        }
+
+        *_p = p;
+        *_q = q;
+        return 0;
+}
+
+int write_drop_in(const char *dir, const char *unit, unsigned level,
+                  const char *name, const char *data) {
+
+        _cleanup_free_ char *p = NULL, *q = NULL;
+        int r;
+
+        assert(dir);
+        assert(unit);
+        assert(name);
+        assert(data);
+
+        r = drop_in_file(dir, unit, level, name, &p, &q);
+        if (r < 0)
+                return r;
+
+        mkdir_p(p, 0755);
+        return write_string_file_atomic_label(q, data);
+}
+
+int write_drop_in_format(const char *dir, const char *unit, unsigned level,
+                         const char *name, const char *format, ...) {
+        _cleanup_free_ char *p = NULL;
+        va_list ap;
+        int r;
+
+        assert(dir);
+        assert(unit);
+        assert(name);
+        assert(format);
+
+        va_start(ap, format);
+        r = vasprintf(&p, format, ap);
+        va_end(ap);
+
+        if (r < 0)
+                return -ENOMEM;
+
+        return write_drop_in(dir, unit, level, name, p);
+}
diff --git a/src/shared/dropin.h b/src/shared/dropin.h
new file mode 100644 (file)
index 0000000..27a2b29
--- /dev/null
@@ -0,0 +1,31 @@
+/*-*- Mode: C; c-basic-offset: 8; indent-tabs-mode: nil -*-*/
+
+#pragma once
+
+/***
+  This file is part of systemd.
+
+  Copyright 2014 Zbigniew Jędrzejewski-Szmek
+
+  systemd is free software; you can redistribute it and/or modify it
+  under the terms of the GNU Lesser General Public License as published by
+  the Free Software Foundation; either version 2.1 of the License, or
+  (at your option) any later version.
+
+  systemd is distributed in the hope that it will be useful, but
+  WITHOUT ANY WARRANTY; without even the implied warranty of
+  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+  Lesser General Public License for more details.
+
+  You should have received a copy of the GNU Lesser General Public License
+  along with systemd; If not, see <http://www.gnu.org/licenses/>.
+***/
+
+int drop_in_file(const char *dir, const char *unit, unsigned level,
+                 const char *name, char **_p, char **_q);
+
+int write_drop_in(const char *dir, const char *unit, unsigned level,
+                  const char *name, const char *data);
+
+int write_drop_in_format(const char *dir, const char *unit, unsigned level,
+                         const char *name, const char *format, ...);
index ce1f1bde655798947412a65adf8d81d3a1433a99..f3434f7ccc3b5264952eed25b9e43f6a7118a4d7 100644 (file)
@@ -183,7 +183,7 @@ bool is_clean_exit(int code, int status, ExitStatusSet *success_status) {
         if (code == CLD_EXITED)
                 return status == 0 ||
                        (success_status &&
-                       set_contains(success_status->code, INT_TO_PTR(status)));
+                       set_contains(success_status->status, INT_TO_PTR(status)));
 
         /* If a daemon does not implement handlers for some of the
          * signals that's not considered an unclean shutdown */
@@ -208,3 +208,18 @@ bool is_clean_exit_lsb(int code, int status, ExitStatusSet *success_status) {
                 code == CLD_EXITED &&
                 (status == EXIT_NOTINSTALLED || status == EXIT_NOTCONFIGURED);
 }
+
+void exit_status_set_free(ExitStatusSet *x) {
+        assert(x);
+
+        set_free(x->status);
+        set_free(x->signal);
+        x->status = x->signal = NULL;
+}
+
+bool exit_status_set_is_empty(ExitStatusSet *x) {
+        if (!x)
+                return true;
+
+        return set_isempty(x->status) && set_isempty(x->signal);
+}
index 57d066f155d178ed7865d8b15037c67189758e86..7438508e4d8561c1f38705c2745f4df8385f1213 100644 (file)
@@ -87,7 +87,7 @@ typedef enum ExitStatusLevel {
 } ExitStatusLevel;
 
 typedef struct ExitStatusSet {
-        Set *code;
+        Set *status;
         Set *signal;
 } ExitStatusSet;
 
@@ -95,3 +95,6 @@ const char* exit_status_to_string(ExitStatus status, ExitStatusLevel level) _con
 
 bool is_clean_exit(int code, int status, ExitStatusSet *success_status);
 bool is_clean_exit_lsb(int code, int status, ExitStatusSet *success_status);
+
+void exit_status_set_free(ExitStatusSet *x);
+bool exit_status_set_is_empty(ExitStatusSet *x);
index a2c861de3f4b0486f7fbb742e717237555b16c09..d2ea665016b54b49f48d8496af7fa96911560723 100644 (file)
@@ -104,7 +104,7 @@ int fdset_remove(FDSet *s, int fd) {
 }
 
 int fdset_new_fill(FDSet **_s) {
-        DIR *d;
+        _cleanup_closedir_ DIR *d = NULL;
         struct dirent *de;
         int r = 0;
         FDSet *s;
@@ -150,8 +150,6 @@ int fdset_new_fill(FDSet **_s) {
         s = NULL;
 
 finish:
-        closedir(d);
-
         /* We won't close the fds here! */
         if (s)
                 set_free(MAKE_SET(s));
index c7b2cd85b94b8cc0eacc452fb70c5e4ed4f3e0df..fb1c1bcf9f8c05ba245bddb30e28d4c83922f5fc 100644 (file)
 #include "utf8.h"
 #include "ctype.h"
 
-int write_string_to_file(FILE *f, const char *line) {
+int write_string_stream(FILE *f, const char *line) {
+        assert(f);
+        assert(line);
+
         errno = 0;
+
         fputs(line, f);
         if (!endswith(line, "\n"))
                 fputc('\n', f);
@@ -51,7 +55,7 @@ int write_string_file(const char *fn, const char *line) {
         if (!f)
                 return -errno;
 
-        return write_string_to_file(f, line);
+        return write_string_stream(f, line);
 }
 
 int write_string_file_atomic(const char *fn, const char *line) {
@@ -189,29 +193,33 @@ ssize_t sendfile_full(int out_fd, const char *fn) {
         return (ssize_t) l;
 }
 
-int read_full_file(const char *fn, char **contents, size_t *size) {
-        _cleanup_fclose_ FILE *f = NULL;
+int read_full_stream(FILE *f, char **contents, size_t *size) {
         size_t n, l;
         _cleanup_free_ char *buf = NULL;
         struct stat st;
 
-        assert(fn);
+        assert(f);
         assert(contents);
 
-        f = fopen(fn, "re");
-        if (!f)
-                return -errno;
-
         if (fstat(fileno(f), &st) < 0)
                 return -errno;
 
-        /* Safety check */
-        if (st.st_size > 4*1024*1024)
-                return -E2BIG;
+        n = LINE_MAX;
 
-        n = st.st_size > 0 ? st.st_size : LINE_MAX;
-        l = 0;
+        if (S_ISREG(st.st_mode)) {
+
+                /* Safety check */
+                if (st.st_size > 4*1024*1024)
+                        return -E2BIG;
+
+                /* Start with the right file size, but be prepared for
+                 * files from /proc which generally report a file size
+                 * of 0 */
+                if (st.st_size > 0)
+                        n = st.st_size;
+        }
 
+        l = 0;
         for (;;) {
                 char *t;
                 size_t k;
@@ -248,7 +256,21 @@ int read_full_file(const char *fn, char **contents, size_t *size) {
         return 0;
 }
 
+int read_full_file(const char *fn, char **contents, size_t *size) {
+        _cleanup_fclose_ FILE *f = NULL;
+
+        assert(fn);
+        assert(contents);
+
+        f = fopen(fn, "re");
+        if (!f)
+                return -errno;
+
+        return read_full_stream(f, contents, size);
+}
+
 static int parse_env_file_internal(
+                FILE *f,
                 const char *fname,
                 const char *newline,
                 int (*push) (const char *filename, unsigned line,
@@ -275,10 +297,12 @@ static int parse_env_file_internal(
                 COMMENT_ESCAPE
         } state = PRE_KEY;
 
-        assert(fname);
         assert(newline);
 
-        r = read_full_file(fname, &contents, NULL);
+        if (f)
+                r = read_full_stream(f, &contents, NULL);
+        else
+                r = read_full_file(fname, &contents, NULL);
         if (r < 0)
                 return r;
 
@@ -532,25 +556,27 @@ fail:
         return r;
 }
 
-static int parse_env_file_push(const char *filename, unsigned line,
-                               const char *key, char *value, void *userdata) {
+static int parse_env_file_push(
+                const char *filename, unsigned line,
+                const char *key, char *value,
+                void *userdata) {
 
         const char *k;
         va_list aq, *ap = userdata;
 
         if (!utf8_is_valid(key)) {
-                _cleanup_free_ char *p = utf8_escape_invalid(key);
+                _cleanup_free_ char *p;
 
-                log_error("%s:%u: invalid UTF-8 in key '%s', ignoring.",
-                          filename, line, p);
+                p = utf8_escape_invalid(key);
+                log_error("%s:%u: invalid UTF-8 in key '%s', ignoring.", strna(filename), line, p);
                 return -EINVAL;
         }
 
         if (value && !utf8_is_valid(value)) {
-                _cleanup_free_ char *p = utf8_escape_invalid(value);
+                _cleanup_free_ char *p;
 
-                log_error("%s:%u: invalid UTF-8 value for key %s: '%s', ignoring.",
-                          filename, line, key, p);
+                p = utf8_escape_invalid(value);
+                log_error("%s:%u: invalid UTF-8 value for key %s: '%s', ignoring.", strna(filename), line, key, p);
                 return -EINVAL;
         }
 
@@ -571,6 +597,7 @@ static int parse_env_file_push(const char *filename, unsigned line,
 
         va_end(aq);
         free(value);
+
         return 0;
 }
 
@@ -585,14 +612,16 @@ int parse_env_file(
                 newline = NEWLINE;
 
         va_start(ap, newline);
-        r = parse_env_file_internal(fname, newline, parse_env_file_push, &ap);
+        r = parse_env_file_internal(NULL, fname, newline, parse_env_file_push, &ap);
         va_end(ap);
 
         return r;
 }
 
-static int load_env_file_push(const char *filename, unsigned line,
-                              const char *key, char *value, void *userdata) {
+static int load_env_file_push(
+                const char *filename, unsigned line,
+                const char *key, char *value,
+                void *userdata) {
         char ***m = userdata;
         char *p;
         int r;
@@ -600,16 +629,14 @@ static int load_env_file_push(const char *filename, unsigned line,
         if (!utf8_is_valid(key)) {
                 _cleanup_free_ char *t = utf8_escape_invalid(key);
 
-                log_error("%s:%u: invalid UTF-8 for key '%s', ignoring.",
-                          filename, line, t);
+                log_error("%s:%u: invalid UTF-8 for key '%s', ignoring.", strna(filename), line, t);
                 return -EINVAL;
         }
 
         if (value && !utf8_is_valid(value)) {
                 _cleanup_free_ char *t = utf8_escape_invalid(value);
 
-                log_error("%s:%u: invalid UTF-8 value for key %s: '%s', ignoring.",
-                          filename, line, key, t);
+                log_error("%s:%u: invalid UTF-8 value for key %s: '%s', ignoring.", strna(filename), line, key, t);
                 return -EINVAL;
         }
 
@@ -625,14 +652,69 @@ static int load_env_file_push(const char *filename, unsigned line,
         return 0;
 }
 
-int load_env_file(const char *fname, const char *newline, char ***rl) {
+int load_env_file(FILE *f, const char *fname, const char *newline, char ***rl) {
+        char **m = NULL;
+        int r;
+
+        if (!newline)
+                newline = NEWLINE;
+
+        r = parse_env_file_internal(f, fname, newline, load_env_file_push, &m);
+        if (r < 0) {
+                strv_free(m);
+                return r;
+        }
+
+        *rl = m;
+        return 0;
+}
+
+static int load_env_file_push_pairs(
+                const char *filename, unsigned line,
+                const char *key, char *value,
+                void *userdata) {
+        char ***m = userdata;
+        int r;
+
+        if (!utf8_is_valid(key)) {
+                _cleanup_free_ char *t = utf8_escape_invalid(key);
+
+                log_error("%s:%u: invalid UTF-8 for key '%s', ignoring.", strna(filename), line, t);
+                return -EINVAL;
+        }
+
+        if (value && !utf8_is_valid(value)) {
+                _cleanup_free_ char *t = utf8_escape_invalid(value);
+
+                log_error("%s:%u: invalid UTF-8 value for key %s: '%s', ignoring.", strna(filename), line, key, t);
+                return -EINVAL;
+        }
+
+        r = strv_extend(m, key);
+        if (r < 0)
+                return -ENOMEM;
+
+        if (!value) {
+                r = strv_extend(m, "");
+                if (r < 0)
+                        return -ENOMEM;
+        } else {
+                r = strv_push(m, value);
+                if (r < 0)
+                        return r;
+        }
+
+        return 0;
+}
+
+int load_env_file_pairs(FILE *f, const char *fname, const char *newline, char ***rl) {
         char **m = NULL;
         int r;
 
         if (!newline)
                 newline = NEWLINE;
 
-        r = parse_env_file_internal(fname, newline, load_env_file_push, &m);
+        r = parse_env_file_internal(f, fname, newline, load_env_file_push_pairs, &m);
         if (r < 0) {
                 strv_free(m);
                 return r;
@@ -708,7 +790,7 @@ int write_env_file(const char *fname, char **l) {
 
 int executable_is_script(const char *path, char **interpreter) {
         int r;
-        char _cleanup_free_ *line = NULL;
+        _cleanup_free_ char *line = NULL;
         int len;
         char *ans;
 
index 06c28871575ce5707addb916d12f573258dd9b60..5122a9a4de9387084e8e37bde0d61078400a468c 100644 (file)
 
 #include "macro.h"
 
-int write_string_to_file(FILE *f, const char *line);
+int write_string_stream(FILE *f, const char *line);
 int write_string_file(const char *fn, const char *line);
 int write_string_file_atomic(const char *fn, const char *line);
 
 int read_one_line_file(const char *fn, char **line);
 int read_full_file(const char *fn, char **contents, size_t *size);
+int read_full_stream(FILE *f, char **contents, size_t *size);
 ssize_t sendfile_full(int out_fd, const char *fn);
 
 int parse_env_file(const char *fname, const char *separator, ...) _sentinel_;
-int load_env_file(const char *fname, const char *separator, char ***l);
+int load_env_file(FILE *f, const char *fname, const char *separator, char ***l);
+int load_env_file_pairs(FILE *f, const char *fname, const char *separator, char ***l);
+
 int write_env_file(const char *fname, char **l);
 
 int executable_is_script(const char *path, char **interpreter);
index 5ac7b5f02f379fae03a7ff5392b77f6d6ee6a8e1..5d5b6a0a61cc3b5d30caecd07fc6685fa9e97637 100644 (file)
@@ -28,6 +28,7 @@
 #include "unit-name.h"
 #include "generator.h"
 #include "path-util.h"
+#include "dropin.h"
 
 int generator_write_fsck_deps(
                 FILE *f,
@@ -49,10 +50,13 @@ int generator_write_fsck_deps(
         if (!isempty(fstype) && !streq(fstype, "auto")) {
                 int r;
                 r = fsck_exists(fstype);
-                if (r < 0) {
-                        log_warning("Checking was requested for %s, but fsck.%s cannot be used: %s", what, fstype, strerror(-r));
+                if (r == -ENOENT) {
                         /* treat missing check as essentially OK */
-                        return r == -ENOENT ? 0 : r;
+                        log_debug("Checking was requested for %s, but fsck.%s does not exist: %s", what, fstype, strerror(-r));
+                        return 0;
+                } else if (r < 0) {
+                        log_warning("Checking was requested for %s, but fsck.%s cannot be used: %s", what, fstype, strerror(-r));
+                        return r;
                 }
         }
 
@@ -83,3 +87,68 @@ int generator_write_fsck_deps(
 
         return 0;
 }
+
+int generator_write_timeouts(const char *dir, const char *what, const char *where,
+                             const char *opts, char **filtered) {
+
+        /* Allow configuration how long we wait for a device that
+         * backs a mount point to show up. This is useful to support
+         * endless device timeouts for devices that show up only after
+         * user input, like crypto devices. */
+
+        _cleanup_free_ char *node = NULL, *unit = NULL, *t = NULL;
+        char *start, *timeout;
+        usec_t u;
+        int r;
+        size_t len;
+
+        if ((start = mount_test_option(opts, "comment=systemd.device-timeout")))
+                timeout = start + 31;
+        else if ((start = mount_test_option(opts, "x-systemd.device-timeout")))
+                timeout = start + 25;
+        else {
+                if (filtered) {
+                        *filtered = strdup(opts ?: "");
+                        if (!*filtered)
+                                return log_oom();
+                }
+
+                return 0;
+        }
+
+        len = strcspn(timeout, ",;" WHITESPACE);
+        t = strndup(timeout, len);
+        if (!t)
+                return -ENOMEM;
+
+        if (filtered) {
+                char *prefix, *postfix;
+
+                prefix = strndupa(opts, start - opts - (start != opts));
+                postfix = timeout + len + (timeout[len] != '\0');
+                *filtered = strjoin(prefix, *postfix ? postfix : NULL, NULL);
+                if (!*filtered)
+                        return log_oom();
+        }
+
+        r = parse_sec(t, &u);
+        if (r < 0) {
+                log_warning("Failed to parse timeout for %s, ignoring: %s",
+                            where, timeout);
+                return 0;
+        }
+
+        node = fstab_node_to_udev_node(what);
+        if (!node)
+                return log_oom();
+
+        unit = unit_name_from_path(node, ".device");
+        if (!unit)
+                return -ENOMEM;
+
+        return write_drop_in_format(dir, unit, 50, "device-timeout",
+                                    "# Automatically generated by %s\n\n"
+                                    "[Unit]\nJobTimeoutSec=%u",
+                                    program_invocation_short_name,
+                                    u / USEC_PER_SEC);
+}
index 0140aa943f65be100b69767dc6eb884e0f6fd004..64bd28f596f32127ac5d9e3d7d15de1846f304e9 100644 (file)
@@ -24,3 +24,6 @@
 #include <stdio.h>
 
 int generator_write_fsck_deps(FILE *f, const char *dest, const char *what, const char *where, const char *type);
+
+int generator_write_timeouts(const char *dir, const char *what, const char *where,
+                             const char *opts, char **filtered);
index 487d0f660d40b6f13d3be1435e9d4a65a6dd187c..190c554347ac200f3d9462e82d94552e002fb5e5 100644 (file)
@@ -47,6 +47,19 @@ typedef struct {
 
 #define _cleanup_install_context_done_ _cleanup_(install_context_done)
 
+static int in_search_path(const char *path, char **search) {
+        _cleanup_free_ char *parent = NULL;
+        int r;
+
+        assert(path);
+
+        r = path_get_parent(path, &parent);
+        if (r < 0)
+                return r;
+
+        return strv_contains(search, parent);
+}
+
 static int lookup_paths_init_from_scope(LookupPaths *paths,
                                         UnitFileScope scope,
                                         const char *root_dir) {
@@ -147,12 +160,16 @@ static int add_file_change(
         if (!c[i].path)
                 return -ENOMEM;
 
+        path_kill_slashes(c[i].path);
+
         if (source) {
                 c[i].source = strdup(source);
                 if (!c[i].source) {
                         free(c[i].path);
                         return -ENOMEM;
                 }
+
+                path_kill_slashes(c[i].path);
         } else
                 c[i].source = NULL;
 
@@ -194,10 +211,10 @@ static int remove_marked_symlinks_fd(
                 bool *deleted,
                 UnitFileChange **changes,
                 unsigned *n_changes,
-                char** files) {
+                char** instance_whitelist) {
 
-        int r = 0;
         _cleanup_closedir_ DIR *d = NULL;
+        int r = 0;
 
         assert(remove_symlinks_to);
         assert(fd >= 0);
@@ -252,9 +269,8 @@ static int remove_marked_symlinks_fd(
                         }
 
                         /* This will close nfd, regardless whether it succeeds or not */
-                        q = remove_marked_symlinks_fd(remove_symlinks_to, nfd, p, config_path, deleted, changes, n_changes, files);
-
-                        if (r == 0)
+                        q = remove_marked_symlinks_fd(remove_symlinks_to, nfd, p, config_path, deleted, changes, n_changes, instance_whitelist);
+                        if (q < 0 && r == 0)
                                 r = q;
 
                 } else if (de->d_type == DT_LNK) {
@@ -262,6 +278,28 @@ static int remove_marked_symlinks_fd(
                         int q;
                         bool found;
 
+                        if (!unit_name_is_valid(de->d_name, TEMPLATE_VALID))
+                                continue;
+
+                        if (unit_name_is_instance(de->d_name) &&
+                            instance_whitelist &&
+                            !strv_contains(instance_whitelist, de->d_name)) {
+
+                                _cleanup_free_ char *w;
+
+                                /* OK, the file is not listed directly
+                                 * in the whitelist, so let's check if
+                                 * the template of it might be
+                                 * listed. */
+
+                                w = unit_name_template(de->d_name);
+                                if (!w)
+                                        return -ENOMEM;
+
+                                if (!strv_contains(instance_whitelist, w))
+                                        continue;
+                        }
+
                         p = path_make_absolute(de->d_name, path);
                         if (!p)
                                 return -ENOMEM;
@@ -280,31 +318,27 @@ static int remove_marked_symlinks_fd(
                                 set_get(remove_symlinks_to, dest) ||
                                 set_get(remove_symlinks_to, basename(dest));
 
-                        if (unit_name_is_instance(p))
-                                found = found && strv_contains(files, basename(p));
+                        if (!found)
+                                continue;
+
+                        if (unlink(p) < 0 && errno != ENOENT) {
+                                if (r == 0)
+                                        r = -errno;
+                                continue;
+                        }
 
-                        if (found) {
+                        path_kill_slashes(p);
+                        rmdir_parents(p, config_path);
+                        add_file_change(changes, n_changes, UNIT_FILE_UNLINK, p, NULL);
 
-                                if (unlink(p) < 0 && errno != ENOENT) {
+                        if (!set_get(remove_symlinks_to, p)) {
 
+                                q = mark_symlink_for_removal(&remove_symlinks_to, p);
+                                if (q < 0) {
                                         if (r == 0)
-                                                r = -errno;
-                                } else {
-                                        rmdir_parents(p, config_path);
-                                        path_kill_slashes(p);
-
-                                        add_file_change(changes, n_changes, UNIT_FILE_UNLINK, p, NULL);
-
-                                        if (!set_get(remove_symlinks_to, p)) {
-
-                                                q = mark_symlink_for_removal(&remove_symlinks_to, p);
-                                                if (q < 0) {
-                                                        if (r == 0)
-                                                                r = q;
-                                                } else
-                                                        *deleted = true;
-                                        }
-                                }
+                                                r = q;
+                                } else
+                                        *deleted = true;
                         }
                 }
         }
@@ -317,9 +351,10 @@ static int remove_marked_symlinks(
                 const char *config_path,
                 UnitFileChange **changes,
                 unsigned *n_changes,
-                char** files) {
+                char** instance_whitelist) {
 
-        int fd, r = 0;
+        _cleanup_close_ int fd = -1;
+        int r = 0;
         bool deleted;
 
         assert(config_path);
@@ -342,13 +377,11 @@ static int remove_marked_symlinks(
                 }
 
                 /* This takes possession of cfd and closes it */
-                q = remove_marked_symlinks_fd(remove_symlinks_to, cfd, config_path, config_path, &deleted, changes, n_changes, files);
+                q = remove_marked_symlinks_fd(remove_symlinks_to, cfd, config_path, config_path, &deleted, changes, n_changes, instance_whitelist);
                 if (r == 0)
                         r = q;
         } while (deleted);
 
-        safe_close(fd);
-
         return r;
 }
 
@@ -412,10 +445,8 @@ static int find_symlinks_fd(
 
                         /* This will close nfd, regardless whether it succeeds or not */
                         q = find_symlinks_fd(name, nfd, p, config_path, same_name_link);
-
                         if (q > 0)
                                 return 1;
-
                         if (r == 0)
                                 r = q;
 
@@ -563,7 +594,7 @@ int unit_file_mask(
                 unsigned *n_changes) {
 
         char **i;
-        _cleanup_free_ char *prefix;
+        _cleanup_free_ char *prefix = NULL;
         int r;
 
         assert(scope >= 0);
@@ -590,7 +621,6 @@ int unit_file_mask(
 
                 if (symlink("/dev/null", path) >= 0) {
                         add_file_change(changes, n_changes, UNIT_FILE_SYMLINK, path, "/dev/null");
-
                         continue;
                 }
 
@@ -600,13 +630,9 @@ int unit_file_mask(
                                 continue;
 
                         if (force) {
-                                unlink(path);
-
-                                if (symlink("/dev/null", path) >= 0) {
-
+                                if (symlink_atomic("/dev/null", path) >= 0) {
                                         add_file_change(changes, n_changes, UNIT_FILE_UNLINK, path, NULL);
                                         add_file_change(changes, n_changes, UNIT_FILE_SYMLINK, path, "/dev/null");
-
                                         continue;
                                 }
                         }
@@ -757,7 +783,6 @@ int unit_file_link(
                         _cleanup_free_ char *dest = NULL;
 
                         q = readlink_and_make_absolute(path, &dest);
-
                         if (q < 0 && errno != ENOENT) {
                                 if (r == 0)
                                         r = q;
@@ -768,13 +793,9 @@ int unit_file_link(
                                 continue;
 
                         if (force) {
-                                unlink(path);
-
-                                if (symlink(*i, path) >= 0) {
-
+                                if (symlink_atomic(*i, path) >= 0) {
                                         add_file_change(changes, n_changes, UNIT_FILE_UNLINK, path, NULL);
                                         add_file_change(changes, n_changes, UNIT_FILE_SYMLINK, path, *i);
-
                                         continue;
                                 }
                         }
@@ -825,6 +846,7 @@ static void install_info_free(InstallInfo *i) {
         strv_free(i->aliases);
         strv_free(i->wanted_by);
         strv_free(i->required_by);
+        free(i->default_instance);
         free(i);
 }
 
@@ -917,16 +939,17 @@ static int install_info_add_auto(
                 return install_info_add(c, name_or_path, NULL);
 }
 
-static int config_parse_also(const char *unit,
-                             const char *filename,
-                             unsigned line,
-                             const char *section,
-                             unsigned section_line,
-                             const char *lvalue,
-                             int ltype,
-                             const char *rvalue,
-                             void *data,
-                             void *userdata) {
+static int config_parse_also(
+                const char *unit,
+                const char *filename,
+                unsigned line,
+                const char *section,
+                unsigned section_line,
+                const char *lvalue,
+                int ltype,
+                const char *rvalue,
+                void *data,
+                void *userdata) {
 
         char *w;
         size_t l;
@@ -953,19 +976,20 @@ static int config_parse_also(const char *unit,
         return 0;
 }
 
-static int config_parse_user(const char *unit,
-                             const char *filename,
-                             unsigned line,
-                             const char *section,
-                             unsigned section_line,
-                             const char *lvalue,
-                             int ltype,
-                             const char *rvalue,
-                             void *data,
-                             void *userdata) {
+static int config_parse_user(
+                const char *unit,
+                const char *filename,
+                unsigned line,
+                const char *section,
+                unsigned section_line,
+                const char *lvalue,
+                int ltype,
+                const char *rvalue,
+                void *data,
+                void *userdata) {
 
         InstallInfo *i = data;
-        charprinted;
+        char *printed;
         int r;
 
         assert(filename);
@@ -982,29 +1006,66 @@ static int config_parse_user(const char *unit,
         return 0;
 }
 
+static int config_parse_default_instance(
+                const char *unit,
+                const char *filename,
+                unsigned line,
+                const char *section,
+                unsigned section_line,
+                const char *lvalue,
+                int ltype,
+                const char *rvalue,
+                void *data,
+                void *userdata) {
+
+        InstallInfo *i = data;
+        char *printed;
+        int r;
+
+        assert(filename);
+        assert(lvalue);
+        assert(rvalue);
+
+        r = install_full_printf(i, rvalue, &printed);
+        if (r < 0)
+                return r;
+
+        if (!unit_instance_is_valid(printed))
+                return -EINVAL;
+
+        free(i->default_instance);
+        i->default_instance = printed;
+
+        return 0;
+}
+
 static int unit_file_load(
                 InstallContext *c,
                 InstallInfo *info,
                 const char *path,
+                const char *root_dir,
                 bool allow_symlink) {
 
         const ConfigTableItem items[] = {
-                { "Install", "Alias",      config_parse_strv, 0, &info->aliases     },
-                { "Install", "WantedBy",   config_parse_strv, 0, &info->wanted_by   },
-                { "Install", "RequiredBy", config_parse_strv, 0, &info->required_by },
-                { "Install", "Also",       config_parse_also, 0, c                  },
-                { "Exec",    "User",       config_parse_user, 0, info               },
-                { NULL, NULL, NULL, 0, NULL }
+                { "Install", "Alias",           config_parse_strv,             0, &info->aliases           },
+                { "Install", "WantedBy",        config_parse_strv,             0, &info->wanted_by         },
+                { "Install", "RequiredBy",      config_parse_strv,             0, &info->required_by       },
+                { "Install", "DefaultInstance", config_parse_default_instance, 0, info                     },
+                { "Install", "Also",            config_parse_also,             0, c                        },
+                { "Exec",    "User",            config_parse_user,             0, info                     },
+                {}
         };
 
-        int fd;
         _cleanup_fclose_ FILE *f = NULL;
-        int r;
+        int fd, r;
 
         assert(c);
         assert(info);
         assert(path);
 
+        if (!isempty(root_dir))
+                path = strappenda3(root_dir, "/", path);
+
         fd = open(path, O_RDONLY|O_CLOEXEC|O_NOCTTY|(allow_symlink ? 0 : O_NOFOLLOW));
         if (fd < 0)
                 return -errno;
@@ -1015,8 +1076,7 @@ static int unit_file_load(
                 return -ENOMEM;
         }
 
-        r = config_parse(NULL, path, f, NULL,
-                         config_item_table_lookup, (void*) items, true, true, info);
+        r = config_parse(NULL, path, f, NULL, config_item_table_lookup, (void*) items, true, true, info);
         if (r < 0)
                 return r;
 
@@ -1040,68 +1100,56 @@ static int unit_file_search(
         assert(info);
         assert(paths);
 
-        if (info->path) {
-                char *full_path = NULL;
-
-                if (!isempty(root_dir))
-                        full_path = strappenda(root_dir, info->path);
-
-                return unit_file_load(c, info, full_path ?: info->path, allow_symlink);
-        }
+        if (info->path)
+                return unit_file_load(c, info, info->path, root_dir, allow_symlink);
 
         assert(info->name);
 
         STRV_FOREACH(p, paths->unit_path) {
-                _cleanup_free_ char *path = NULL, *full_path = NULL;
+                _cleanup_free_ char *path = NULL;
 
                 path = strjoin(*p, "/", info->name, NULL);
                 if (!path)
                         return -ENOMEM;
 
-                if (!isempty(root_dir)) {
-                        full_path = strappend(root_dir, path);
-                        if (!full_path)
-                                return -ENOMEM;
-                }
-
-                r = unit_file_load(c, info, full_path ?: path, allow_symlink);
+                r = unit_file_load(c, info, path, root_dir, allow_symlink);
                 if (r >= 0) {
                         info->path = path;
                         path = NULL;
-                } else if (r == -ENOENT && unit_name_is_instance(info->name)) {
-                        /* Unit file doesn't exist, however instance enablement was requested.
-                         * We will check if it is possible to load template unit file. */
-                        _cleanup_free_ char *template = NULL, *template_dir = NULL;
+                        return r;
+                }
+                if (r != -ENOENT && r != -ELOOP)
+                        return r;
+        }
 
-                        template = unit_name_template(info->name);
-                        if (!template)
-                                return -ENOMEM;
+        if (unit_name_is_instance(info->name)) {
 
-                        /* We will reuse path variable since we don't need it anymore. */
-                        template_dir = path;
-                        *(strrchr(template_dir, '/') + 1) = '\0';
+                /* Unit file doesn't exist, however instance
+                 * enablement was requested.  We will check if it is
+                 * possible to load template unit file. */
 
-                        path = strappend(template_dir, template);
+                _cleanup_free_ char *template = NULL;
+
+                template = unit_name_template(info->name);
+                if (!template)
+                        return -ENOMEM;
+
+                STRV_FOREACH(p, paths->unit_path) {
+                        _cleanup_free_ char *path = NULL;
+
+                        path = strjoin(*p, "/", template, NULL);
                         if (!path)
                                 return -ENOMEM;
 
-                        if (!isempty(root_dir)) {
-                                free(full_path);
-                                full_path = strappend(root_dir, path);
-                                if (!full_path)
-                                        return -ENOMEM;
-                        }
-
-                        /* Let's try to load template unit. */
-                        r = unit_file_load(c, info, full_path ?: path, allow_symlink);
+                        r = unit_file_load(c, info, path, root_dir, allow_symlink);
                         if (r >= 0) {
                                 info->path = path;
                                 path = NULL;
+                                return r;
                         }
+                        if (r != -ENOENT && r != -ELOOP)
+                                return r;
                 }
-
-                if (r != -ENOENT && r != -ELOOP)
-                        return r;
         }
 
         return -ENOENT;
@@ -1170,17 +1218,14 @@ static int create_symlink(
         if (!force)
                 return -EEXIST;
 
-        r = unlink(new_path);
-        if (r < 0 && errno != ENOENT)
-                return -errno;
+        r = symlink_atomic(old_path, new_path);
+        if (r < 0)
+                return r;
 
-        if (symlink(old_path, new_path) >= 0) {
-                add_file_change(changes, n_changes, UNIT_FILE_UNLINK, new_path, NULL);
-                add_file_change(changes, n_changes, UNIT_FILE_SYMLINK, new_path, old_path);
-                return 0;
-        }
+        add_file_change(changes, n_changes, UNIT_FILE_UNLINK, new_path, NULL);
+        add_file_change(changes, n_changes, UNIT_FILE_SYMLINK, new_path, old_path);
 
-        return -errno;
+        return 0;
 }
 
 static int install_info_symlink_alias(
@@ -1218,54 +1263,37 @@ static int install_info_symlink_alias(
 static int install_info_symlink_wants(
                 InstallInfo *i,
                 const char *config_path,
+                char **list,
+                const char *suffix,
                 bool force,
                 UnitFileChange **changes,
                 unsigned *n_changes) {
 
+        _cleanup_free_ char *buf = NULL;
+        const char *n;
         char **s;
         int r = 0, q;
 
         assert(i);
         assert(config_path);
 
-        STRV_FOREACH(s, i->wanted_by) {
-                _cleanup_free_ char *path = NULL, *dst = NULL;
+        if (unit_name_is_template(i->name)) {
 
-                q = install_full_printf(i, *s, &dst);
-                if (q < 0)
-                        return q;
+                /* Don't install any symlink if there's no default
+                 * instance configured */
 
-                if (!unit_name_is_valid(dst, TEMPLATE_VALID)) {
-                        r = -EINVAL;
-                        continue;
-                }
+                if (!i->default_instance)
+                        return 0;
 
-                if (asprintf(&path, "%s/%s.wants/%s", config_path, dst, i->name) < 0)
+                buf = unit_name_replace_instance(i->name, i->default_instance);
+                if (!buf)
                         return -ENOMEM;
 
-                q = create_symlink(i->path, path, force, changes, n_changes);
-
-                if (r == 0)
-                        r = q;
-        }
-
-        return r;
-}
-
-static int install_info_symlink_requires(
-                InstallInfo *i,
-                const char *config_path,
-                bool force,
-                UnitFileChange **changes,
-                unsigned *n_changes) {
-
-        char **s;
-        int r = 0, q;
-
-        assert(i);
-        assert(config_path);
+                n = buf;
+        } else
+                n = i->name;
 
-        STRV_FOREACH(s, i->required_by) {
+        STRV_FOREACH(s, list) {
                 _cleanup_free_ char *path = NULL, *dst = NULL;
 
                 q = install_full_printf(i, *s, &dst);
@@ -1277,11 +1305,11 @@ static int install_info_symlink_requires(
                         continue;
                 }
 
-                if (asprintf(&path, "%s/%s.requires/%s", config_path, dst, i->name) < 0)
+                path = strjoin(config_path, "/", dst, suffix, n, NULL);
+                if (!path)
                         return -ENOMEM;
 
                 q = create_symlink(i->path, path, force, changes, n_changes);
-
                 if (r == 0)
                         r = q;
         }
@@ -1293,12 +1321,13 @@ static int install_info_symlink_link(
                 InstallInfo *i,
                 LookupPaths *paths,
                 const char *config_path,
+                const char *root_dir,
                 bool force,
                 UnitFileChange **changes,
                 unsigned *n_changes) {
 
-        int r;
         _cleanup_free_ char *path = NULL;
+        int r;
 
         assert(i);
         assert(paths);
@@ -1309,17 +1338,18 @@ static int install_info_symlink_link(
         if (r != 0)
                 return r;
 
-        if (asprintf(&path, "%s/%s", config_path, i->name) < 0)
+        path = strjoin(config_path, "/", i->name, NULL);
+        if (!path)
                 return -ENOMEM;
 
-        r = create_symlink(i->path, path, force, changes, n_changes);
-        return r;
+        return create_symlink(i->path, path, force, changes, n_changes);
 }
 
 static int install_info_apply(
                 InstallInfo *i,
                 LookupPaths *paths,
                 const char *config_path,
+                const char *root_dir,
                 bool force,
                 UnitFileChange **changes,
                 unsigned *n_changes) {
@@ -1332,15 +1362,15 @@ static int install_info_apply(
 
         r = install_info_symlink_alias(i, config_path, force, changes, n_changes);
 
-        q = install_info_symlink_wants(i, config_path, force, changes, n_changes);
+        q = install_info_symlink_wants(i, config_path, i->wanted_by, ".wants/", force, changes, n_changes);
         if (r == 0)
                 r = q;
 
-        q = install_info_symlink_requires(i, config_path, force, changes, n_changes);
+        q = install_info_symlink_wants(i, config_path, i->required_by, ".requires/", force, changes, n_changes);
         if (r == 0)
                 r = q;
 
-        q = install_info_symlink_link(i, paths, config_path, force, changes, n_changes);
+        q = install_info_symlink_link(i, paths, config_path, root_dir, force, changes, n_changes);
         if (r == 0)
                 r = q;
 
@@ -1380,7 +1410,7 @@ static int install_context_apply(
                 } else if (r >= 0)
                         r += q;
 
-                q = install_info_apply(i, paths, config_path, force, changes, n_changes);
+                q = install_info_apply(i, paths, config_path, root_dir, force, changes, n_changes);
                 if (r >= 0 && q < 0)
                         r = q;
         }
@@ -1744,9 +1774,9 @@ UnitFileState unit_file_get_state(
         return r < 0 ? r : state;
 }
 
-int unit_file_query_preset(UnitFileScope scope, const char *name) {
+int unit_file_query_preset(UnitFileScope scope, const char *root_dir, const char *name) {
         _cleanup_strv_free_ char **files = NULL;
-        char **i;
+        char **p;
         int r;
 
         assert(scope >= 0);
@@ -1754,7 +1784,7 @@ int unit_file_query_preset(UnitFileScope scope, const char *name) {
         assert(name);
 
         if (scope == UNIT_FILE_SYSTEM)
-                r = conf_files_list(&files, ".preset", NULL,
+                r = conf_files_list(&files, ".preset", root_dir,
                                     "/etc/systemd/system-preset",
                                     "/usr/local/lib/systemd/system-preset",
                                     "/usr/lib/systemd/system-preset",
@@ -1763,7 +1793,7 @@ int unit_file_query_preset(UnitFileScope scope, const char *name) {
 #endif
                                     NULL);
         else if (scope == UNIT_FILE_GLOBAL)
-                r = conf_files_list(&files, ".preset", NULL,
+                r = conf_files_list(&files, ".preset", root_dir,
                                     "/etc/systemd/user-preset",
                                     "/usr/local/lib/systemd/user-preset",
                                     "/usr/lib/systemd/user-preset",
@@ -1774,10 +1804,10 @@ int unit_file_query_preset(UnitFileScope scope, const char *name) {
         if (r < 0)
                 return r;
 
-        STRV_FOREACH(i, files) {
+        STRV_FOREACH(p, files) {
                 _cleanup_fclose_ FILE *f;
 
-                f = fopen(*i, "re");
+                f = fopen(*p, "re");
                 if (!f) {
                         if (errno == ENOENT)
                                 continue;
@@ -1802,15 +1832,19 @@ int unit_file_query_preset(UnitFileScope scope, const char *name) {
                                 l += 6;
                                 l += strspn(l, WHITESPACE);
 
-                                if (fnmatch(l, name, FNM_NOESCAPE) == 0)
+                                if (fnmatch(l, name, FNM_NOESCAPE) == 0) {
+                                        log_debug("Preset file says enable %s.", name);
                                         return 1;
+                                }
 
                         } else if (first_word(l, "disable")) {
                                 l += 7;
                                 l += strspn(l, WHITESPACE);
 
-                                if (fnmatch(l, name, FNM_NOESCAPE) == 0)
+                                if (fnmatch(l, name, FNM_NOESCAPE) == 0) {
+                                        log_debug("Preset file says disable %s.", name);
                                         return 0;
+                                }
 
                         } else
                                 log_debug("Couldn't parse line '%s'", l);
@@ -1818,6 +1852,7 @@ int unit_file_query_preset(UnitFileScope scope, const char *name) {
         }
 
         /* Default is "enable" */
+        log_debug("Preset file doesn't say anything about %s, enabling.", name);
         return 1;
 }
 
@@ -1826,19 +1861,20 @@ int unit_file_preset(
                 bool runtime,
                 const char *root_dir,
                 char **files,
+                UnitFilePresetMode mode,
                 bool force,
                 UnitFileChange **changes,
                 unsigned *n_changes) {
 
-        _cleanup_lookup_paths_free_ LookupPaths paths = {};
         _cleanup_install_context_done_ InstallContext plus = {}, minus = {};
-        char **i;
+        _cleanup_lookup_paths_free_ LookupPaths paths = {};
         _cleanup_free_ char *config_path = NULL;
-        _cleanup_set_free_free_ Set *remove_symlinks_to = NULL;
+        char **i;
         int r, q;
 
         assert(scope >= 0);
         assert(scope < _UNIT_FILE_SCOPE_MAX);
+        assert(mode < _UNIT_FILE_PRESET_MODE_MAX);
 
         r = lookup_paths_init_from_scope(&paths, scope, root_dir);
         if (r < 0)
@@ -1853,32 +1889,145 @@ int unit_file_preset(
                 if (!unit_name_is_valid(*i, TEMPLATE_VALID))
                         return -EINVAL;
 
-                r = unit_file_query_preset(scope, *i);
+                r = unit_file_query_preset(scope, root_dir, *i);
                 if (r < 0)
                         return r;
 
-                if (r)
+                if (r && mode != UNIT_FILE_PRESET_DISABLE_ONLY)
                         r = install_info_add_auto(&plus, *i);
-                else
+                else if (!r && mode != UNIT_FILE_PRESET_ENABLE_ONLY)
                         r = install_info_add_auto(&minus, *i);
-
+                else
+                        r = 0;
                 if (r < 0)
                         return r;
         }
 
-        r = install_context_mark_for_removal(&minus, &paths, &remove_symlinks_to,
-                                             config_path, root_dir);
+        r = 0;
 
-        q = remove_marked_symlinks(remove_symlinks_to, config_path,
-                                   changes, n_changes, files);
-        if (r == 0)
-                r = q;
+        if (mode != UNIT_FILE_PRESET_ENABLE_ONLY) {
+                _cleanup_set_free_free_ Set *remove_symlinks_to = NULL;
 
-        /* Returns number of symlinks that where supposed to be installed. */
-        q = install_context_apply(&plus, &paths, config_path, root_dir, force,
-                                  changes, n_changes);
-        if (r == 0)
-                r = q;
+                r = install_context_mark_for_removal(&minus, &paths, &remove_symlinks_to, config_path, root_dir);
+
+                q = remove_marked_symlinks(remove_symlinks_to, config_path, changes, n_changes, files);
+                if (r == 0)
+                        r = q;
+        }
+
+        if (mode != UNIT_FILE_PRESET_DISABLE_ONLY) {
+                /* Returns number of symlinks that where supposed to be installed. */
+                q = install_context_apply(&plus, &paths, config_path, root_dir, force, changes, n_changes);
+                if (r == 0)
+                        r = q;
+        }
+
+        return r;
+}
+
+int unit_file_preset_all(
+                UnitFileScope scope,
+                bool runtime,
+                const char *root_dir,
+                UnitFilePresetMode mode,
+                bool force,
+                UnitFileChange **changes,
+                unsigned *n_changes) {
+
+        _cleanup_install_context_done_ InstallContext plus = {}, minus = {};
+        _cleanup_lookup_paths_free_ LookupPaths paths = {};
+        _cleanup_free_ char *config_path = NULL;
+        char **i;
+        int r, q;
+
+        assert(scope >= 0);
+        assert(scope < _UNIT_FILE_SCOPE_MAX);
+        assert(mode < _UNIT_FILE_PRESET_MODE_MAX);
+
+        r = lookup_paths_init_from_scope(&paths, scope, root_dir);
+        if (r < 0)
+                return r;
+
+        r = get_config_path(scope, runtime, root_dir, &config_path);
+        if (r < 0)
+                return r;
+
+        STRV_FOREACH(i, paths.unit_path) {
+                _cleanup_closedir_ DIR *d = NULL;
+                _cleanup_free_ char *buf = NULL;
+                const char *units_dir;
+
+                if (!isempty(root_dir)) {
+                        buf = strjoin(root_dir, "/", *i, NULL);
+                        if (!buf)
+                                return -ENOMEM;
+
+                        units_dir = buf;
+                } else
+                        units_dir = *i;
+
+                d = opendir(units_dir);
+                if (!d) {
+                        if (errno == ENOENT)
+                                continue;
+
+                        return -errno;
+                }
+
+                for (;;) {
+                        struct dirent *de;
+
+                        errno = 0;
+                        de = readdir(d);
+                        if (!de && errno != 0)
+                                return -errno;
+
+                        if (!de)
+                                break;
+
+                        if (ignore_file(de->d_name))
+                                continue;
+
+                        if (!unit_name_is_valid(de->d_name, TEMPLATE_VALID))
+                                continue;
+
+                        dirent_ensure_type(d, de);
+
+                        if (de->d_type != DT_REG)
+                                continue;
+
+                        r = unit_file_query_preset(scope, root_dir, de->d_name);
+                        if (r < 0)
+                                return r;
+
+                        if (r && mode != UNIT_FILE_PRESET_DISABLE_ONLY)
+                                r = install_info_add_auto(&plus, de->d_name);
+                        else if (!r && mode != UNIT_FILE_PRESET_ENABLE_ONLY)
+                                r = install_info_add_auto(&minus, de->d_name);
+                        else
+                                r = 0;
+                        if (r < 0)
+                                return r;
+                }
+        }
+
+        r = 0;
+
+        if (mode != UNIT_FILE_PRESET_ENABLE_ONLY) {
+                _cleanup_set_free_free_ Set *remove_symlinks_to = NULL;
+
+                r = install_context_mark_for_removal(&minus, &paths, &remove_symlinks_to, config_path, root_dir);
+
+                q = remove_marked_symlinks(remove_symlinks_to, config_path, changes, n_changes, NULL);
+                if (r == 0)
+                        r = q;
+        }
+
+        if (mode != UNIT_FILE_PRESET_DISABLE_ONLY) {
+                q = install_context_apply(&plus, &paths, config_path, root_dir, force, changes, n_changes);
+                if (r == 0)
+                        r = q;
+        }
 
         return r;
 }
@@ -1899,8 +2048,6 @@ int unit_file_get_list(
 
         _cleanup_lookup_paths_free_ LookupPaths paths = {};
         char **i;
-        _cleanup_free_ char *buf = NULL;
-        _cleanup_closedir_ DIR *d = NULL;
         int r;
 
         assert(scope >= 0);
@@ -1915,22 +2062,19 @@ int unit_file_get_list(
                 return r;
 
         STRV_FOREACH(i, paths.unit_path) {
+                _cleanup_closedir_ DIR *d = NULL;
+                _cleanup_free_ char *buf = NULL;
                 const char *units_dir;
 
-                free(buf);
-                buf = NULL;
-
-                if (root_dir) {
-                        if (asprintf(&buf, "%s/%s", root_dir, *i) < 0)
+                if (!isempty(root_dir)) {
+                        buf = strjoin(root_dir, "/", *i, NULL);
+                        if (!buf)
                                 return -ENOMEM;
 
                         units_dir = buf;
                 } else
                         units_dir = *i;
 
-                if (d)
-                        closedir(d);
-
                 d = opendir(units_dir);
                 if (!d) {
                         if (errno == ENOENT)
@@ -1940,8 +2084,8 @@ int unit_file_get_list(
                 }
 
                 for (;;) {
-                        struct dirent *de;
                         _cleanup_unitfilelist_free_ UnitFileList *f = NULL;
+                        struct dirent *de;
 
                         errno = 0;
                         de = readdir(d);
@@ -1960,15 +2104,9 @@ int unit_file_get_list(
                         if (hashmap_get(h, de->d_name))
                                 continue;
 
-                        r = dirent_ensure_type(d, de);
-                        if (r < 0) {
-                                if (r == -ENOENT)
-                                        continue;
-
-                                return r;
-                        }
+                        dirent_ensure_type(d, de);
 
-                        if (de->d_type != DT_LNK && de->d_type != DT_REG)
+                        if (!IN_SET(de->d_type, DT_LNK, DT_REG))
                                 continue;
 
                         f = new0(UnitFileList, 1);
@@ -2040,3 +2178,11 @@ static const char* const unit_file_change_type_table[_UNIT_FILE_CHANGE_TYPE_MAX]
 };
 
 DEFINE_STRING_TABLE_LOOKUP(unit_file_change_type, UnitFileChangeType);
+
+static const char* const unit_file_preset_mode_table[_UNIT_FILE_PRESET_MODE_MAX] = {
+        [UNIT_FILE_PRESET_FULL] = "full",
+        [UNIT_FILE_PRESET_ENABLE_ONLY] = "enable-only",
+        [UNIT_FILE_PRESET_DISABLE_ONLY] = "disable-only",
+};
+
+DEFINE_STRING_TABLE_LOOKUP(unit_file_preset_mode, UnitFilePresetMode);
index 5d57b1b0256cc738655ae89e30bb5a53cfd23c66..91ce192a4f04692e4bc6852ee6a85cfff47fdf9e 100644 (file)
@@ -45,6 +45,14 @@ typedef enum UnitFileState {
         _UNIT_FILE_STATE_INVALID = -1
 } UnitFileState;
 
+typedef enum UnitFilePresetMode {
+        UNIT_FILE_PRESET_FULL,
+        UNIT_FILE_PRESET_ENABLE_ONLY,
+        UNIT_FILE_PRESET_DISABLE_ONLY,
+        _UNIT_FILE_PRESET_MODE_MAX,
+        _UNIT_FILE_PRESET_INVALID = -1
+} UnitFilePresetMode;
+
 typedef enum UnitFileChangeType {
         UNIT_FILE_SYMLINK,
         UNIT_FILE_UNLINK,
@@ -71,13 +79,16 @@ typedef struct {
         char **aliases;
         char **wanted_by;
         char **required_by;
+
+        char *default_instance;
 } InstallInfo;
 
 int unit_file_enable(UnitFileScope scope, bool runtime, const char *root_dir, char **files, bool force, UnitFileChange **changes, unsigned *n_changes);
 int unit_file_disable(UnitFileScope scope, bool runtime, const char *root_dir, char **files, UnitFileChange **changes, unsigned *n_changes);
 int unit_file_reenable(UnitFileScope scope, bool runtime, const char *root_dir, char **files, bool force, UnitFileChange **changes, unsigned *n_changes);
 int unit_file_link(UnitFileScope scope, bool runtime, const char *root_dir, char **files, bool force, UnitFileChange **changes, unsigned *n_changes);
-int unit_file_preset(UnitFileScope scope, bool runtime, const char *root_dir, char **files, bool force, UnitFileChange **changes, unsigned *n_changes);
+int unit_file_preset(UnitFileScope scope, bool runtime, const char *root_dir, char **files, UnitFilePresetMode mode, bool force, UnitFileChange **changes, unsigned *n_changes);
+int unit_file_preset_all(UnitFileScope scope, bool runtime, const char *root_dir, UnitFilePresetMode mode, bool force, UnitFileChange **changes, unsigned *n_changes);
 int unit_file_mask(UnitFileScope scope, bool runtime, const char *root_dir, char **files, bool force, UnitFileChange **changes, unsigned *n_changes);
 int unit_file_unmask(UnitFileScope scope, bool runtime, const char *root_dir, char **files, UnitFileChange **changes, unsigned *n_changes);
 int unit_file_set_default(UnitFileScope scope, const char *root_dir, const char *file, bool force, UnitFileChange **changes, unsigned *n_changes);
@@ -90,10 +101,13 @@ int unit_file_get_list(UnitFileScope scope, const char *root_dir, Hashmap *h);
 void unit_file_list_free(Hashmap *h);
 void unit_file_changes_free(UnitFileChange *changes, unsigned n_changes);
 
-int unit_file_query_preset(UnitFileScope scope, const char *name);
+int unit_file_query_preset(UnitFileScope scope, const char *root_dir, const char *name);
 
 const char *unit_file_state_to_string(UnitFileState s) _const_;
 UnitFileState unit_file_state_from_string(const char *s) _pure_;
 
 const char *unit_file_change_type_to_string(UnitFileChangeType s) _const_;
 UnitFileChangeType unit_file_change_type_from_string(const char *s) _pure_;
+
+const char *unit_file_preset_mode_to_string(UnitFilePresetMode m) _const_;
+UnitFilePresetMode unit_file_preset_mode_from_string(const char *s) _pure_;
index 6f17705abfad8869717f9522f570d7e892486102..9039db34964dc5230aaaa2c357b644026b491292 100644 (file)
@@ -878,9 +878,6 @@ void log_parse_environment(void) {
                         if (l == 5 && startswith(w, "debug")) {
                                 log_set_max_level(LOG_DEBUG);
                                 break;
-                        } else if (l == 5 && startswith(w, "quiet")) {
-                                log_set_max_level(LOG_WARNING);
-                                break;
                         }
                 }
         }
index 53bd578d7e03d49ebae396b183fdf10140b3434d..32cf714857809b5ec591cd484c9e1c0671654529 100644 (file)
         _Pragma("GCC diagnostic push");                                 \
         _Pragma("GCC diagnostic ignored \"-Wnonnull\"")
 
+#define DISABLE_WARNING_SHADOW                                          \
+        _Pragma("GCC diagnostic push");                                 \
+        _Pragma("GCC diagnostic ignored \"-Wshadow\"")
+
 #define REENABLE_WARNING                                                \
         _Pragma("GCC diagnostic pop")
 
index 716d3b8f187a06cfe5da393362ab6cddfbb85fc8..f129f0b2d3b78b302571e3569ab5a2ef8aae03ae 100644 (file)
 #define IP_TRANSPARENT 19
 #endif
 
-#ifndef IFLA_CARRIER
-  #define IFLA_CARRIER 33
-  #ifndef IFLA_NUM_RX_QUEUES
-    #define IFLA_NUM_RX_QUEUES 32
-    #ifndef IFLA_NUM_TX_QUEUES
-      #define IFLA_NUM_TX_QUEUES 31
-      #ifndef IFLA_PROMISCUITY
-        #define IFLA_PROMISCUITY 30
-      #endif
-    #endif
-  #endif
-#endif
-
 #ifndef SOL_NETLINK
 #define SOL_NETLINK 270
 #endif
@@ -384,34 +371,110 @@ static inline int setns(int fd, int nstype) {
 #define LOOP_CTL_GET_FREE 0x4C82
 #endif
 
-#ifndef IFLA_BOND_MAX
-enum {
-        IFLA_BOND_UNSPEC,
-        IFLA_BOND_MODE,
-        IFLA_BOND_ACTIVE_SLAVE,
-        IFLA_BOND_MIIMON,
-        IFLA_BOND_UPDELAY,
-        IFLA_BOND_DOWNDELAY,
-        IFLA_BOND_USE_CARRIER,
-        IFLA_BOND_ARP_INTERVAL,
-        IFLA_BOND_ARP_IP_TARGET,
-        IFLA_BOND_ARP_VALIDATE,
-        IFLA_BOND_ARP_ALL_TARGETS,
-        IFLA_BOND_PRIMARY,
-        IFLA_BOND_PRIMARY_RESELECT,
-        IFLA_BOND_FAIL_OVER_MAC,
-        IFLA_BOND_XMIT_HASH_POLICY,
-        IFLA_BOND_RESEND_IGMP,
-        IFLA_BOND_NUM_PEER_NOTIF,
-        IFLA_BOND_ALL_SLAVES_ACTIVE,
-        IFLA_BOND_MIN_LINKS,
-        IFLA_BOND_LP_INTERVAL,
-        IFLA_BOND_PACKETS_PER_SLAVE,
-        IFLA_BOND_AD_LACP_RATE,
-        IFLA_BOND_AD_SELECT,
-        IFLA_BOND_AD_INFO,
-        __IFLA_BOND_MAX,
-};
+#if !HAVE_DECL_IFLA_PHYS_PORT_ID
+#undef IFLA_PROMISCUITY
+#define IFLA_PROMISCUITY 30
+#define IFLA_NUM_TX_QUEUES 31
+#define IFLA_NUM_RX_QUEUES 32
+#define IFLA_CARRIER 33
+#define IFLA_PHYS_PORT_ID 34
+#define __IFLA_MAX 35
+
+#define IFLA_MAX (__IFLA_MAX - 1)
+#endif
+
+#if !HAVE_DECL_IFLA_BOND_AD_INFO
+#define IFLA_BOND_UNSPEC 0
+#define IFLA_BOND_MODE 1
+#define IFLA_BOND_ACTIVE_SLAVE 2
+#define IFLA_BOND_MIIMON 3
+#define IFLA_BOND_UPDELAY 4
+#define IFLA_BOND_DOWNDELAY 5
+#define IFLA_BOND_USE_CARRIER 6
+#define IFLA_BOND_ARP_INTERVAL 7
+#define IFLA_BOND_ARP_IP_TARGET 8
+#define IFLA_BOND_ARP_VALIDATE 9
+#define IFLA_BOND_ARP_ALL_TARGETS 10
+#define IFLA_BOND_PRIMARY 11
+#define IFLA_BOND_PRIMARY_RESELECT 12
+#define IFLA_BOND_FAIL_OVER_MAC 13
+#define IFLA_BOND_XMIT_HASH_POLICY 14
+#define IFLA_BOND_RESEND_IGMP 15
+#define IFLA_BOND_NUM_PEER_NOTIF 16
+#define IFLA_BOND_ALL_SLAVES_ACTIVE 17
+#define IFLA_BOND_MIN_LINKS 18
+#define IFLA_BOND_LP_INTERVAL 19
+#define IFLA_BOND_PACKETS_PER_SLAVE 20
+#define IFLA_BOND_AD_LACP_RATE 21
+#define IFLA_BOND_AD_SELECT 22
+#define IFLA_BOND_AD_INFO 23
+#define __IFLA_BOND_MAX 24
 
 #define IFLA_BOND_MAX  (__IFLA_BOND_MAX - 1)
 #endif
+
+#if !HAVE_DECL_IFLA_VLAN_PROTOCOL
+#define IFLA_VLAN_UNSPEC 0
+#define IFLA_VLAN_ID 1
+#define IFLA_VLAN_FLAGS 2
+#define IFLA_VLAN_EGRESS_QOS 3
+#define IFLA_VLAN_INGRESS_QOS 4
+#define IFLA_VLAN_PROTOCOL 5
+#define __IFLA_VLAN_MAX 6
+
+#define IFLA_VLAN_MAX   (__IFLA_VLAN_MAX - 1)
+#endif
+
+#if !HAVE_DECL_IFLA_VXLAN_LOCAL6
+#define IFLA_VXLAN_UNSPEC 0
+#define IFLA_VXLAN_ID 1
+#define IFLA_VXLAN_GROUP 2
+#define IFLA_VXLAN_LINK 3
+#define IFLA_VXLAN_LOCAL 4
+#define IFLA_VXLAN_TTL 5
+#define IFLA_VXLAN_TOS 6
+#define IFLA_VXLAN_LEARNING 7
+#define IFLA_VXLAN_AGEING 8
+#define IFLA_VXLAN_LIMIT 9
+#define IFLA_VXLAN_PORT_RANGE 10
+#define IFLA_VXLAN_PROXY 11
+#define IFLA_VXLAN_RSC 12
+#define IFLA_VXLAN_L2MISS 13
+#define IFLA_VXLAN_L3MISS 14
+#define IFLA_VXLAN_PORT 15
+#define IFLA_VXLAN_GROUP6 16
+#define IFLA_VXLAN_LOCAL6 17
+#define __IFLA_VXLAN_MAX 18
+
+#define IFLA_VXLAN_MAX  (__IFLA_VXLAN_MAX - 1)
+#endif
+
+#if !HAVE_DECL_IFLA_IPTUN_6RD_RELAY_PREFIXLEN
+#define IFLA_IPTUN_UNSPEC 0
+#define IFLA_IPTUN_LINK 1
+#define IFLA_IPTUN_LOCAL 2
+#define IFLA_IPTUN_REMOTE 3
+#define IFLA_IPTUN_TTL 4
+#define IFLA_IPTUN_TOS 5
+#define IFLA_IPTUN_ENCAP_LIMIT 6
+#define IFLA_IPTUN_FLOWINFO 7
+#define IFLA_IPTUN_FLAGS 8
+#define IFLA_IPTUN_PROTO 9
+#define IFLA_IPTUN_PMTUDISC 10
+#define IFLA_IPTUN_6RD_PREFIX 11
+#define IFLA_IPTUN_6RD_RELAY_PREFIX 12
+#define IFLA_IPTUN_6RD_PREFIXLEN 13
+#define IFLA_IPTUN_6RD_RELAY_PREFIXLEN 14
+#define __IFLA_IPTUN_MAX 15
+
+#define IFLA_IPTUN_MAX  (__IFLA_IPTUN_MAX - 1)
+#endif
+
+#if !HAVE_DECL_IFLA_BRIDGE_VLAN_INFO
+#define IFLA_BRIDGE_FLAGS 0
+#define IFLA_BRIDGE_MODE 1
+#define IFLA_BRIDGE_VLAN_INFO 2
+#define __IFLA_BRIDGE_MAX 3
+
+#define IFLA_BRIDGE_MAX (__IFLA_BRIDGE_MAX - 1)
+#endif
index e072fd60928dfa1e2a493e87e15eaf7e0db6cbd0..e0aaf4431fbd8f53789760085e5643c4f568d5db 100644 (file)
@@ -284,7 +284,7 @@ int lookup_paths_init(
                 }
         }
 
-        if (!path_strv_canonicalize_absolute_uniq(p->unit_path, root_dir))
+        if (!path_strv_resolve_uniq(p->unit_path, root_dir))
                 return -ENOMEM;
 
         if (!strv_isempty(p->unit_path)) {
@@ -338,10 +338,10 @@ int lookup_paths_init(
                                 return -ENOMEM;
                 }
 
-                if (!path_strv_canonicalize_absolute_uniq(p->sysvinit_path, root_dir))
+                if (!path_strv_resolve_uniq(p->sysvinit_path, root_dir))
                         return -ENOMEM;
 
-                if (!path_strv_canonicalize_absolute_uniq(p->sysvrcnd_path, root_dir))
+                if (!path_strv_resolve_uniq(p->sysvrcnd_path, root_dir))
                         return -ENOMEM;
 
                 if (!strv_isempty(p->sysvinit_path)) {
index 847a52f20a28662235e292e4e9ff1d6211f037bb..4c77bee39382d614ddfb77ddb220604f32c65c01 100644 (file)
@@ -21,6 +21,8 @@
   along with systemd; If not, see <http://www.gnu.org/licenses/>.
 ***/
 
+#include "macro.h"
+
 typedef struct LookupPaths {
         char **unit_path;
 #ifdef HAVE_SYSV_COMPAT
index 5863429c311d483f81a88a8076bbb295ae25e8e9..e68d3677a7a1b46fa4f7bfb66791f97f0f3dd028 100644 (file)
@@ -238,7 +238,7 @@ char **path_strv_make_absolute_cwd(char **l) {
         return l;
 }
 
-char **path_strv_canonicalize_absolute(char **l, const char *prefix) {
+char **path_strv_resolve(char **l, const char *prefix) {
         char **s;
         unsigned k = 0;
         bool enomem = false;
@@ -323,12 +323,12 @@ char **path_strv_canonicalize_absolute(char **l, const char *prefix) {
         return l;
 }
 
-char **path_strv_canonicalize_absolute_uniq(char **l, const char *prefix) {
+char **path_strv_resolve_uniq(char **l, const char *prefix) {
 
         if (strv_isempty(l))
                 return l;
 
-        if (!path_strv_canonicalize_absolute(l, prefix))
+        if (!path_strv_resolve(l, prefix))
                 return NULL;
 
         return strv_uniq(l);
@@ -442,7 +442,7 @@ int path_is_mount_point(const char *t, bool allow_symlink) {
         };
 
         int mount_id, mount_id_parent;
-        char *parent;
+        _cleanup_free_ char *parent = NULL;
         struct stat a, b;
         int r;
 
@@ -473,7 +473,6 @@ int path_is_mount_point(const char *t, bool allow_symlink) {
 
         h.handle.handle_bytes = MAX_HANDLE_SZ;
         r = name_to_handle_at(AT_FDCWD, parent, &h.handle, &mount_id_parent, 0);
-        free(parent);
         if (r < 0) {
                 /* The parent can't do name_to_handle_at() but the
                  * directory we are interested in can? If so, it must
@@ -504,7 +503,6 @@ fallback:
                 return r;
 
         r = lstat(parent, &b);
-        free(parent);
         if (r < 0)
                 return -errno;
 
@@ -526,18 +524,24 @@ int path_is_os_tree(const char *path) {
         char *p;
         int r;
 
-        /* We use /etc/os-release as flag file if something is an OS */
+        /* We use /usr/lib/os-release as flag file if something is an OS */
+        p = strappenda(path, "/usr/lib/os-release");
+        r = access(p, F_OK);
+
+        if (r >= 0)
+                return 1;
 
+        /* Also check for the old location in /etc, just in case. */
         p = strappenda(path, "/etc/os-release");
         r = access(p, F_OK);
 
-        return r < 0 ? 0 : 1;
+        return r >= 0;
 }
 
 int find_binary(const char *name, char **filename) {
         assert(name);
 
-        if (strchr(name, '/')) {
+        if (is_path(name)) {
                 if (access(name, X_OK) < 0)
                         return -errno;
 
@@ -622,8 +626,25 @@ bool paths_check_timestamp(const char* const* paths, usec_t *timestamp, bool upd
 }
 
 int fsck_exists(const char *fstype) {
+        _cleanup_free_ char *p = NULL, *d = NULL;
         const char *checker;
+        int r;
 
         checker = strappenda("fsck.", fstype);
-        return find_binary(checker, NULL);
+
+        r = find_binary(checker, &p);
+        if (r < 0)
+                return r;
+
+        /* An fsck that is linked to /bin/true is a non-existant
+         * fsck */
+
+        r = readlink_malloc(p, &d);
+        if (r >= 0 &&
+            (path_equal(d, "/bin/true") ||
+             path_equal(d, "/usr/bin/true") ||
+             path_equal(d, "/dev/null")))
+                return -ENOENT;
+
+        return 0;
 }
index 6882d7866b77554231f7921967bd07ae1a83d200..976d2b26d09575190d7d0f4a8d880709dd375d94 100644 (file)
@@ -47,8 +47,8 @@ char* path_startswith(const char *path, const char *prefix) _pure_;
 bool path_equal(const char *a, const char *b) _pure_;
 
 char** path_strv_make_absolute_cwd(char **l);
-char** path_strv_canonicalize_absolute(char **l, const char *prefix);
-char** path_strv_canonicalize_absolute_uniq(char **l, const char *prefix);
+char** path_strv_resolve(char **l, const char *prefix);
+char** path_strv_resolve_uniq(char **l, const char *prefix);
 
 int path_is_mount_point(const char *path, bool allow_symlink);
 int path_is_read_only_fs(const char *path);
index cf1cd400e8fb281d0cb3149f8dc17f3154649333..867e4edaa2e79978b963594e30feee6deff594e5 100644 (file)
@@ -31,6 +31,7 @@
 #define USE(x, y) do{ (x) = (y); (y) = NULL; } while(0)
 
 int parse_sleep_config(const char *verb, char ***_modes, char ***_states) {
+
         _cleanup_strv_free_ char
                 **suspend_mode = NULL, **suspend_state = NULL,
                 **hibernate_mode = NULL, **hibernate_state = NULL,
@@ -44,10 +45,11 @@ int parse_sleep_config(const char *verb, char ***_modes, char ***_states) {
                 { "Sleep",   "HibernateState",   config_parse_strv,  0, &hibernate_state },
                 { "Sleep",   "HybridSleepMode",  config_parse_strv,  0, &hybrid_mode  },
                 { "Sleep",   "HybridSleepState", config_parse_strv,  0, &hybrid_state },
-                {}};
+                {}
+        };
 
         int r;
-        FILE _cleanup_fclose_ *f;
+        _cleanup_fclose_ FILE *f;
 
         f = fopen(PKGSYSCONFDIR "/sleep.conf", "re");
         if (!f)
index 1e78dd2569cf2002f649962666f0d3f062cd12d7..eb09779b334aafe29f866a6a92236e44a803ac62 100644 (file)
@@ -157,7 +157,7 @@ int make_socket_fd(int log_level, const char* address, int flags) {
         fd = socket_address_listen(&a, flags, SOMAXCONN, SOCKET_ADDRESS_DEFAULT,
                                    NULL, false, false, 0755, 0644, NULL);
         if (fd < 0 || log_get_max_level() >= log_level) {
-                char _cleanup_free_ *p = NULL;
+                _cleanup_free_ char *p = NULL;
 
                 r = socket_address_print(&a, &p);
                 if (r < 0) {
index 92564e31933f8b107a3ffb575c2a8acc648dfcfb..6f4979853eae0967852097d9f0a28f5fe9f4bb2d 100644 (file)
@@ -640,6 +640,193 @@ int socket_address_unlink(SocketAddress *a) {
         return 1;
 }
 
+int in_addr_null(unsigned family, union in_addr_union *u) {
+        assert(u);
+
+        if (family == AF_INET)
+                return u->in.s_addr == 0;
+
+        if (family == AF_INET6)
+                return
+                        u->in6.s6_addr32[0] == 0 &&
+                        u->in6.s6_addr32[1] == 0 &&
+                        u->in6.s6_addr32[2] == 0 &&
+                        u->in6.s6_addr32[3] == 0;
+
+        return -EAFNOSUPPORT;
+}
+
+
+int in_addr_equal(unsigned family, union in_addr_union *a, union in_addr_union *b) {
+        assert(a);
+        assert(b);
+
+        if (family == AF_INET)
+                return a->in.s_addr == b->in.s_addr;
+
+        if (family == AF_INET6)
+                return
+                        a->in6.s6_addr32[0] == b->in6.s6_addr32[0] &&
+                        a->in6.s6_addr32[1] == b->in6.s6_addr32[1] &&
+                        a->in6.s6_addr32[2] == b->in6.s6_addr32[2] &&
+                        a->in6.s6_addr32[3] == b->in6.s6_addr32[3];
+
+        return -EAFNOSUPPORT;
+}
+
+int in_addr_prefix_intersect(
+                unsigned family,
+                const union in_addr_union *a,
+                unsigned aprefixlen,
+                const union in_addr_union *b,
+                unsigned bprefixlen) {
+
+        unsigned m;
+
+        assert(a);
+        assert(b);
+
+        /* Checks whether there are any addresses that are in both
+         * networks */
+
+        m = MIN(aprefixlen, bprefixlen);
+
+        if (family == AF_INET) {
+                uint32_t x, nm;
+
+                x = be32toh(a->in.s_addr ^ b->in.s_addr);
+                nm = (m == 0) ? 0 : 0xFFFFFFFFUL << (32 - m);
+
+                return (x & nm) == 0;
+        }
+
+        if (family == AF_INET6) {
+                unsigned i;
+
+                if (m > 128)
+                        m = 128;
+
+                for (i = 0; i < 16; i++) {
+                        uint8_t x, nm;
+
+                        x = a->in6.s6_addr[i] ^ b->in6.s6_addr[i];
+
+                        if (m < 8)
+                                nm = 0xFF << (8 - m);
+                        else
+                                nm = 0xFF;
+
+                        if ((x & nm) != 0)
+                                return 0;
+
+                        if (m > 8)
+                                m -= 8;
+                        else
+                                m = 0;
+                }
+
+                return 1;
+        }
+
+        return -EAFNOSUPPORT;
+}
+
+int in_addr_prefix_next(unsigned family, union in_addr_union *u, unsigned prefixlen) {
+        assert(u);
+
+        /* Increases the network part of an address by one. Returns
+         * positive it that succeeds, or 0 if this overflows. */
+
+        if (prefixlen <= 0)
+                return 0;
+
+        if (family == AF_INET) {
+                uint32_t c, n;
+
+                if (prefixlen > 32)
+                        prefixlen = 32;
+
+                c = be32toh(u->in.s_addr);
+                n = c + (1UL << (32 - prefixlen));
+                if (n < c)
+                        return 0;
+                n &= 0xFFFFFFFFUL << (32 - prefixlen);
+
+                u->in.s_addr = htobe32(n);
+                return 1;
+        }
+
+        if (family == AF_INET6) {
+                struct in6_addr add = {}, result;
+                uint8_t overflow = 0;
+                unsigned i;
+
+                if (prefixlen > 128)
+                        prefixlen = 128;
+
+                /* First calculate what we have to add */
+                add.s6_addr[(prefixlen-1) / 8] = 1 << (7 - (prefixlen-1) % 8);
+
+                for (i = 16; i > 0; i--) {
+                        unsigned j = i - 1;
+
+                        result.s6_addr[j] = u->in6.s6_addr[j] + add.s6_addr[j] + overflow;
+                        overflow = (result.s6_addr[j] < u->in6.s6_addr[j]);
+                }
+
+                if (overflow)
+                        return 0;
+
+                u->in6 = result;
+                return 1;
+        }
+
+        return -EAFNOSUPPORT;
+}
+
+int in_addr_to_string(unsigned family, const union in_addr_union *u, char **ret) {
+        char *x;
+        size_t l;
+
+        assert(u);
+        assert(ret);
+
+        if (family == AF_INET)
+                l = INET_ADDRSTRLEN;
+        else if (family == AF_INET6)
+                l = INET6_ADDRSTRLEN;
+        else
+                return -EAFNOSUPPORT;
+
+        x = new(char, l);
+        if (!x)
+                return -ENOMEM;
+
+        errno = 0;
+        if (!inet_ntop(family, u, x, l)) {
+                free(x);
+                return errno ? -errno : -EINVAL;
+        }
+
+        *ret = x;
+        return 0;
+}
+
+int in_addr_from_string(unsigned family, const char *s, union in_addr_union *ret) {
+
+        assert(s);
+        assert(ret);
+
+        if (!IN_SET(family, AF_INET, AF_INET6))
+                return -EAFNOSUPPORT;
+
+        errno = 0;
+        if (inet_pton(family, s, ret) <= 0)
+                return errno ? -errno : -EINVAL;
+
+        return 0;
+}
+
 static const char* const netlink_family_table[] = {
         [NETLINK_ROUTE] = "route",
         [NETLINK_FIREWALL] = "firewall",
index f938f86200c55da82003c5809d08021530d8e2c9..25c4a7e4f96a05e996c921e6af167fd7ec08610a 100644 (file)
@@ -24,7 +24,6 @@
 #include <sys/socket.h>
 #include <netinet/in.h>
 #include <sys/un.h>
-#include <net/if.h>
 #include <asm/types.h>
 #include <linux/netlink.h>
 #include <linux/if_packet.h>
@@ -42,6 +41,11 @@ union sockaddr_union {
         struct sockaddr_ll ll;
 };
 
+union in_addr_union {
+        struct in_addr in;
+        struct in6_addr in6;
+};
+
 typedef struct SocketAddress {
         union sockaddr_union sockaddr;
 
@@ -107,3 +111,10 @@ SocketAddressBindIPv6Only socket_address_bind_ipv6_only_from_string(const char *
 
 int netlink_family_to_string_alloc(int b, char **s);
 int netlink_family_from_string(const char *s) _pure_;
+
+int in_addr_null(unsigned family, union in_addr_union *u);
+int in_addr_equal(unsigned family, union in_addr_union *a, union in_addr_union *b);
+int in_addr_prefix_intersect(unsigned family, const union in_addr_union *a, unsigned aprefixlen, const union in_addr_union *b, unsigned bprefixlen);
+int in_addr_prefix_next(unsigned family, union in_addr_union *u, unsigned prefixlen);
+int in_addr_to_string(unsigned family, const union in_addr_union *u, char **ret);
+int in_addr_from_string(unsigned family, const char *s, union in_addr_union *ret);
index 1ef0b26a25b0d6eb091507e7c0281e53be484398..b4c476eff27df9858698ad4f52e66210b6696bb7 100644 (file)
@@ -378,6 +378,30 @@ int strv_push(char ***l, char *value) {
         return 0;
 }
 
+int strv_push_prepend(char ***l, char *value) {
+        char **c;
+        unsigned n, i;
+
+        if (!value)
+                return 0;
+
+        n = strv_length(*l);
+        c = new(char*, n + 2);
+        if (!c)
+                return -ENOMEM;
+
+        for (i = 0; i < n; i++)
+                c[i+1] = (*l)[i];
+
+        c[0] = value;
+        c[n+1] = NULL;
+
+        free(*l);
+        *l = c;
+
+        return 0;
+}
+
 int strv_consume(char ***l, char *value) {
         int r;
 
@@ -388,6 +412,16 @@ int strv_consume(char ***l, char *value) {
         return r;
 }
 
+int strv_consume_prepend(char ***l, char *value) {
+        int r;
+
+        r = strv_push_prepend(l, value);
+        if (r < 0)
+                free(value);
+
+        return r;
+}
+
 int strv_extend(char ***l, const char *value) {
         char *v;
 
index e26ab828d2598922a1a2b2148d5d8624ea142988..3034073d3288e5a28871769b4561b4d53d70837c 100644 (file)
@@ -41,7 +41,9 @@ int strv_extend_strv_concat(char ***a, char **b, const char *suffix);
 int strv_extend(char ***l, const char *value);
 int strv_extendf(char ***l, const char *format, ...) _printf_(2,0);
 int strv_push(char ***l, char *value);
+int strv_push_prepend(char ***l, char *value);
 int strv_consume(char ***l, char *value);
+int strv_consume_prepend(char ***l, char *value);
 
 char **strv_remove(char **l, const char *s);
 char **strv_uniq(char **l);
index f68c09560562b6664f906a50409a102777202a5f..34ba6c11be3d284eda7576ad35dcb49f7de6207a 100644 (file)
@@ -58,6 +58,7 @@ typedef struct dual_timestamp {
 #define NSEC_PER_YEAR ((usec_t) (31557600ULL*NSEC_PER_SEC))
 
 #define FORMAT_TIMESTAMP_MAX ((4*4+1)+11+9+4+1) /* weekdays can be unicode */
+#define FORMAT_TIMESTAMP_WIDTH 28 /* when outputting, assume this width */
 #define FORMAT_TIMESTAMP_RELATIVE_MAX 256
 #define FORMAT_TIMESPAN_MAX 64
 
index 6c167b4331d995a9d9bc8b054611d8d905632859..a2d62d31513285e16aa88802238698211fff1dd3 100644 (file)
@@ -28,6 +28,7 @@
 #include "util.h"
 #include "unit-name.h"
 #include "def.h"
+#include "strv.h"
 
 #define VALID_CHARS                             \
         DIGITS LETTERS                          \
@@ -71,9 +72,11 @@ bool unit_name_is_valid(const char *n, enum template_valid template_ok) {
          *         string.suffix
          */
 
-        assert(n);
         assert(IN_SET(template_ok, TEMPLATE_VALID, TEMPLATE_INVALID));
 
+        if (isempty(n))
+                return false;
+
         if (strlen(n) >= UNIT_NAME_MAX)
                 return false;
 
@@ -105,36 +108,27 @@ bool unit_name_is_valid(const char *n, enum template_valid template_ok) {
 }
 
 bool unit_instance_is_valid(const char *i) {
-        assert(i);
 
         /* The max length depends on the length of the string, so we
          * don't really check this here. */
 
-        if (i[0] == 0)
+        if (isempty(i))
                 return false;
 
         /* We allow additional @ in the instance string, we do not
          * allow them in the prefix! */
 
-        for (; *i; i++)
-                if (!strchr("@" VALID_CHARS, *i))
-                        return false;
-
-        return true;
+        return in_charset(i, "@" VALID_CHARS);
 }
 
 bool unit_prefix_is_valid(const char *p) {
 
         /* We don't allow additional @ in the instance string */
 
-        if (p[0] == 0)
+        if (isempty(p))
                 return false;
 
-        for (; *p; p++)
-                if (!strchr(VALID_CHARS, *p))
-                        return false;
-
-        return true;
+        return in_charset(p, VALID_CHARS);
 }
 
 int unit_name_to_instance(const char *n, char **instance) {
@@ -151,15 +145,18 @@ int unit_name_to_instance(const char *n, char **instance) {
                 return 0;
         }
 
-        assert_se(d = strrchr(n, '.'));
-        assert(p < d);
+        d = strrchr(n, '.');
+        if (!d)
+                return -EINVAL;
+        if (d < p)
+                return -EINVAL;
 
         i = strndup(p+1, d-p-1);
         if (!i)
                 return -ENOMEM;
 
         *instance = i;
-        return 0;
+        return 1;
 }
 
 char *unit_name_to_prefix_and_instance(const char *n) {
@@ -168,13 +165,14 @@ char *unit_name_to_prefix_and_instance(const char *n) {
         assert(n);
 
         assert_se(d = strrchr(n, '.'));
-
         return strndup(n, d - n);
 }
 
 char *unit_name_to_prefix(const char *n) {
         const char *p;
 
+        assert(n);
+
         p = strchr(n, '@');
         if (p)
                 return strndup(n, p - n);
@@ -187,7 +185,6 @@ char *unit_name_change_suffix(const char *n, const char *suffix) {
         size_t a, b;
 
         assert(n);
-        assert(unit_name_is_valid(n, TEMPLATE_VALID));
         assert(suffix);
         assert(suffix[0] == '.');
 
@@ -199,16 +196,12 @@ char *unit_name_change_suffix(const char *n, const char *suffix) {
         if (!r)
                 return NULL;
 
-        memcpy(r, n, a);
-        memcpy(r+a, suffix, b+1);
-
+        strcpy(mempcpy(r, n, a), suffix);
         return r;
 }
 
 char *unit_name_build(const char *prefix, const char *instance, const char *suffix) {
         assert(prefix);
-        assert(unit_prefix_is_valid(prefix));
-        assert(!instance || unit_instance_is_valid(instance));
         assert(suffix);
 
         if (!instance)
@@ -218,10 +211,13 @@ char *unit_name_build(const char *prefix, const char *instance, const char *suff
 }
 
 static char *do_escape_char(char c, char *t) {
+        assert(t);
+
         *(t++) = '\\';
         *(t++) = 'x';
         *(t++) = hexchar(c >> 4);
         *(t++) = hexchar(c);
+
         return t;
 }
 
@@ -250,6 +246,8 @@ static char *do_escape(const char *f, char *t) {
 char *unit_name_escape(const char *f) {
         char *r, *t;
 
+        assert(f);
+
         r = new(char, strlen(f)*4+1);
         if (!r)
                 return NULL;
@@ -294,7 +292,7 @@ char *unit_name_unescape(const char *f) {
 }
 
 char *unit_name_path_escape(const char *f) {
-        _cleanup_free_ char *p;
+        _cleanup_free_ char *p = NULL;
 
         assert(f);
 
@@ -304,14 +302,14 @@ char *unit_name_path_escape(const char *f) {
 
         path_kill_slashes(p);
 
-        if (streq(p, "/") || streq(p, ""))
+        if (STR_IN_SET(p, "/", ""))
                 return strdup("-");
 
         return unit_name_escape(p[0] == '/' ? p + 1 : p);
 }
 
 char *unit_name_path_unescape(const char *f) {
-        char *e;
+        char *e, *w;
 
         assert(f);
 
@@ -320,11 +318,8 @@ char *unit_name_path_unescape(const char *f) {
                 return NULL;
 
         if (e[0] != '/') {
-                char *w;
-
                 w = strappend("/", e);
                 free(e);
-
                 return w;
         }
 
@@ -332,7 +327,7 @@ char *unit_name_path_unescape(const char *f) {
 }
 
 bool unit_name_is_template(const char *n) {
-        const char *p;
+        const char *p, *e;
 
         assert(n);
 
@@ -340,11 +335,15 @@ bool unit_name_is_template(const char *n) {
         if (!p)
                 return false;
 
-        return p[1] == '.';
+        e = strrchr(p+1, '.');
+        if (!e)
+                return false;
+
+        return e == p + 1;
 }
 
 bool unit_name_is_instance(const char *n) {
-        const char *p;
+        const char *p, *e;
 
         assert(n);
 
@@ -352,15 +351,20 @@ bool unit_name_is_instance(const char *n) {
         if (!p)
                 return false;
 
-        return p[1] != '.';
+        e = strrchr(p+1, '.');
+        if (!e)
+                return false;
+
+        return e > p + 1;
 }
 
 char *unit_name_replace_instance(const char *f, const char *i) {
         const char *p, *e;
-        char *r, *k;
+        char *r;
         size_t a, b;
 
         assert(f);
+        assert(i);
 
         p = strchr(f, '@');
         if (!p)
@@ -368,7 +372,7 @@ char *unit_name_replace_instance(const char *f, const char *i) {
 
         e = strrchr(f, '.');
         if (!e)
-                assert_se(e = strchr(f, 0));
+                e = strchr(f, 0);
 
         a = p - f;
         b = strlen(i);
@@ -377,10 +381,7 @@ char *unit_name_replace_instance(const char *f, const char *i) {
         if (!r)
                 return NULL;
 
-        k = mempcpy(r, f, a + 1);
-        k = mempcpy(k, i, b);
-        strcpy(k, e);
-
+        strcpy(mempcpy(mempcpy(r, f, a + 1), i, b), e);
         return r;
 }
 
@@ -389,18 +390,23 @@ char *unit_name_template(const char *f) {
         char *r;
         size_t a;
 
+        assert(f);
+
         p = strchr(f, '@');
         if (!p)
                 return strdup(f);
 
-        assert_se(e = strrchr(f, '.'));
-        a = p - f + 1;
+        e = strrchr(f, '.');
+        if (!e)
+                e = strchr(f, 0);
+
+        a = p - f;
 
-        r = new(char, a + strlen(e) + 1);
+        r = new(char, a + 1 + strlen(e) + 1);
         if (!r)
                 return NULL;
 
-        strcpy(mempcpy(r, f, a), e);
+        strcpy(mempcpy(r, f, a + 1), e);
         return r;
 }
 
@@ -471,15 +477,13 @@ int unit_name_from_dbus_path(const char *path, char **name) {
         return 0;
 }
 
-
 /**
  *  Try to turn a string that might not be a unit name into a
  *  sensible unit name.
  */
 char *unit_name_mangle(const char *name, enum unit_name_mangle allow_globs) {
+        const char *valid_chars, *f;
         char *r, *t;
-        const char *f;
-        const char* valid_chars = allow_globs == MANGLE_GLOB ? "@" VALID_CHARS "[]!-*?" : "@" VALID_CHARS;
 
         assert(name);
         assert(IN_SET(allow_globs, MANGLE_GLOB, MANGLE_NOGLOB));
@@ -493,6 +497,8 @@ char *unit_name_mangle(const char *name, enum unit_name_mangle allow_globs) {
         /* We'll only escape the obvious characters here, to play
          * safe. */
 
+        valid_chars = allow_globs == MANGLE_GLOB ? "@" VALID_CHARS "[]!-*?" : "@" VALID_CHARS;
+
         r = new(char, strlen(name) * 4 + strlen(".service") + 1);
         if (!r)
                 return NULL;
@@ -514,7 +520,6 @@ char *unit_name_mangle(const char *name, enum unit_name_mangle allow_globs) {
         return r;
 }
 
-
 /**
  *  Similar to unit_name_mangle(), but is called when we know
  *  that this is about a specific unit type.
@@ -524,6 +529,7 @@ char *unit_name_mangle_with_suffix(const char *name, enum unit_name_mangle allow
         const char *f;
 
         assert(name);
+        assert(IN_SET(allow_globs, MANGLE_GLOB, MANGLE_NOGLOB));
         assert(suffix);
         assert(suffix[0] == '.');
 
index 91cbf2045444cffdc78f7c188382ffefc2ee2bae..3d875c72b360d7d1f0e04376c6957c45ed7abd71 100644 (file)
@@ -280,6 +280,14 @@ int parse_uid(const char *s, uid_t* ret_uid) {
         if ((unsigned long) uid != ul)
                 return -ERANGE;
 
+        /* Some libc APIs use (uid_t) -1 as special placeholder */
+        if (uid == (uid_t) 0xFFFFFFFF)
+                return -ENXIO;
+
+        /* A long time ago UIDs where 16bit, hence explicitly avoid the 16bit -1 too */
+        if (uid == (uid_t) 0xFFFF)
+                return -ENXIO;
+
         *ret_uid = uid;
         return 0;
 }
@@ -1248,7 +1256,7 @@ char *cunescape_length_with_prefix(const char *s, size_t length, const char *pre
                         a = unhexchar(f[1]);
                         b = unhexchar(f[2]);
 
-                        if (a < 0 || b < 0) {
+                        if (a < 0 || b < 0 || (a == 0 && b == 0)) {
                                 /* Invalid escape code, let's take it literal then */
                                 *(t++) = '\\';
                                 *(t++) = 'x';
@@ -1275,7 +1283,7 @@ char *cunescape_length_with_prefix(const char *s, size_t length, const char *pre
                         b = unoctchar(f[1]);
                         c = unoctchar(f[2]);
 
-                        if (a < 0 || b < 0 || c < 0) {
+                        if (a < 0 || b < 0 || c < 0 || (a == 0 && b == 0 && c == 0)) {
                                 /* Invalid escape code, let's take it literal then */
                                 *(t++) = '\\';
                                 *(t++) = f[0];
@@ -1440,7 +1448,7 @@ _pure_ static bool fd_in_set(int fd, const int fdset[], unsigned n_fdset) {
 }
 
 int close_all_fds(const int except[], unsigned n_except) {
-        DIR *d;
+        _cleanup_closedir_ DIR *d = NULL;
         struct dirent *de;
         int r = 0;
 
@@ -1495,7 +1503,6 @@ int close_all_fds(const int except[], unsigned n_except) {
                 }
         }
 
-        closedir(d);
         return r;
 }
 
@@ -1514,6 +1521,7 @@ bool fstype_is_network(const char *fstype) {
         static const char table[] =
                 "cifs\0"
                 "smbfs\0"
+                "sshfs\0"
                 "ncpfs\0"
                 "ncp\0"
                 "nfs\0"
@@ -1558,8 +1566,7 @@ int chvt(int vt) {
 
 int read_one_char(FILE *f, char *ret, usec_t t, bool *need_nl) {
         struct termios old_termios, new_termios;
-        char c;
-        char line[LINE_MAX];
+        char c, line[LINE_MAX];
 
         assert(f);
         assert(ret);
@@ -1596,9 +1603,10 @@ int read_one_char(FILE *f, char *ret, usec_t t, bool *need_nl) {
                 }
         }
 
-        if (t != (usec_t) -1)
+        if (t != (usec_t) -1) {
                 if (fd_wait_for_event(fileno(f), POLLIN, t) <= 0)
                         return -ETIMEDOUT;
+        }
 
         if (!fgets(line, sizeof(line), f))
                 return -EIO;
@@ -1616,6 +1624,7 @@ int read_one_char(FILE *f, char *ret, usec_t t, bool *need_nl) {
 }
 
 int ask(char *ret, const char *replies, const char *text, ...) {
+        int r;
 
         assert(ret);
         assert(replies);
@@ -1624,7 +1633,6 @@ int ask(char *ret, const char *replies, const char *text, ...) {
         for (;;) {
                 va_list ap;
                 char c;
-                int r;
                 bool need_nl = true;
 
                 if (on_tty())
@@ -2671,7 +2679,7 @@ finish:
 }
 
 int rm_rf_children_dangerous(int fd, bool only_dirs, bool honour_sticky, struct stat *root_dev) {
-        DIR *d;
+        _cleanup_closedir_ DIR *d = NULL;
         int ret = 0;
 
         assert(fd >= 0);
@@ -2694,15 +2702,12 @@ int rm_rf_children_dangerous(int fd, bool only_dirs, bool honour_sticky, struct
 
                 errno = 0;
                 de = readdir(d);
-                if (!de && errno != 0) {
-                        if (ret == 0)
+                if (!de) {
+                        if (errno != 0 && ret == 0)
                                 ret = -errno;
-                        break;
+                        return ret;
                 }
 
-                if (!de)
-                        break;
-
                 if (streq(de->d_name, ".") || streq(de->d_name, ".."))
                         continue;
 
@@ -2758,10 +2763,6 @@ int rm_rf_children_dangerous(int fd, bool only_dirs, bool honour_sticky, struct
                         }
                 }
         }
-
-        closedir(d);
-
-        return ret;
 }
 
 _pure_ static int is_temporary_fs(struct statfs *s) {
@@ -3481,6 +3482,17 @@ int wait_for_terminate(pid_t pid, siginfo_t *status) {
         }
 }
 
+/*
+ * Return values:
+ * < 0 : wait_for_terminate() failed to get the state of the
+ *       process, the process was terminated by a signal, or
+ *       failed for an unknown reason.
+ * >=0 : The process terminated normally, and its exit code is
+ *       returned.
+ *
+ * That is, success is indicated by a return value of zero, and an
+ * error is indicated by a non-zero value.
+ */
 int wait_for_terminate_and_warn(const char *name, pid_t pid) {
         int r;
         siginfo_t status;
@@ -3619,9 +3631,6 @@ char *fstab_node_to_udev_node(const char *p) {
 bool tty_is_vc(const char *tty) {
         assert(tty);
 
-        if (startswith(tty, "/dev/"))
-                tty += 5;
-
         return vtnr_from_tty(tty) >= 0;
 }
 
@@ -3966,6 +3975,21 @@ char* hostname_cleanup(char *s, bool lowercase) {
         return s;
 }
 
+bool machine_name_is_valid(const char *s) {
+
+        if (!hostname_is_valid(s))
+                return false;
+
+        /* Machine names should be useful hostnames, but also be
+         * useful in unit names, hence we enforce a stricter length
+         * limitation. */
+
+        if (strlen(s) > 64)
+                return false;
+
+        return true;
+}
+
 int pipe_eof(int fd) {
         struct pollfd pollfd = {
                 .fd = fd,
@@ -4007,24 +4031,16 @@ int fd_wait_for_event(int fd, int event, usec_t t) {
 int fopen_temporary(const char *path, FILE **_f, char **_temp_path) {
         FILE *f;
         char *t;
-        const char *fn;
-        size_t k;
         int fd;
 
         assert(path);
         assert(_f);
         assert(_temp_path);
 
-        t = new(char, strlen(path) + 1 + 6 + 1);
+        t = tempfn_xxxxxx(path);
         if (!t)
                 return -ENOMEM;
 
-        fn = basename(path);
-        k = fn - path;
-        memcpy(t, path, k);
-        t[k] = '.';
-        stpcpy(stpcpy(t+k+1, fn), "XXXXXX");
-
         fd = mkostemp_safe(t, O_WRONLY|O_CLOEXEC);
         if (fd < 0) {
                 free(t);
@@ -4133,42 +4149,61 @@ int vt_disallocate(const char *name) {
 }
 
 int symlink_atomic(const char *from, const char *to) {
-        char *x;
-        _cleanup_free_ char *t;
-        const char *fn;
-        size_t k;
-        uint64_t u;
-        unsigned i;
-        int r;
+        _cleanup_free_ char *t = NULL;
 
         assert(from);
         assert(to);
 
-        t = new(char, strlen(to) + 1 + 16 + 1);
+        t = tempfn_random(to);
         if (!t)
                 return -ENOMEM;
 
-        fn = basename(to);
-        k = fn-to;
-        memcpy(t, to, k);
-        t[k] = '.';
-        x = stpcpy(t+k+1, fn);
+        if (symlink(from, t) < 0)
+                return -errno;
 
-        u = random_u64();
-        for (i = 0; i < 16; i++) {
-                *(x++) = hexchar(u & 0xF);
-                u >>= 4;
+        if (rename(t, to) < 0) {
+                unlink_noerrno(t);
+                return -errno;
         }
 
-        *x = 0;
+        return 0;
+}
 
-        if (symlink(from, t) < 0)
+int mknod_atomic(const char *path, mode_t mode, dev_t dev) {
+        _cleanup_free_ char *t = NULL;
+
+        assert(path);
+
+        t = tempfn_random(path);
+        if (!t)
+                return -ENOMEM;
+
+        if (mknod(t, mode, dev) < 0)
                 return -errno;
 
-        if (rename(t, to) < 0) {
-                r = -errno;
-                unlink(t);
-                return r;
+        if (rename(t, path) < 0) {
+                unlink_noerrno(t);
+                return -errno;
+        }
+
+        return 0;
+}
+
+int mkfifo_atomic(const char *path, mode_t mode) {
+        _cleanup_free_ char *t = NULL;
+
+        assert(path);
+
+        t = tempfn_random(path);
+        if (!t)
+                return -ENOMEM;
+
+        if (mkfifo(t, mode) < 0)
+                return -errno;
+
+        if (rename(t, path) < 0) {
+                unlink_noerrno(t);
+                return -errno;
         }
 
         return 0;
@@ -4452,22 +4487,6 @@ int dirent_ensure_type(DIR *d, struct dirent *de) {
         return 0;
 }
 
-int in_search_path(const char *path, char **search) {
-        char **i;
-        _cleanup_free_ char *parent = NULL;
-        int r;
-
-        r = path_get_parent(path, &parent);
-        if (r < 0)
-                return r;
-
-        STRV_FOREACH(i, search)
-                if (path_equal(parent, *i))
-                        return 1;
-
-        return 0;
-}
-
 int get_files_in_directory(const char *path, char ***list) {
         _cleanup_closedir_ DIR *d = NULL;
         size_t bufsize = 0, n = 0;
@@ -5222,8 +5241,8 @@ int get_home_dir(char **_h) {
         assert(_h);
 
         /* Take the user specified one */
-        e = getenv("HOME");
-        if (e) {
+        e = secure_getenv("HOME");
+        if (e && path_is_absolute(e)) {
                 h = strdup(e);
                 if (!h)
                         return -ENOMEM;
@@ -5691,14 +5710,17 @@ static int search_and_fopen_internal(const char *path, const char *mode, const c
         assert(mode);
         assert(_f);
 
-        if (!path_strv_canonicalize_absolute_uniq(search, root))
+        if (!path_strv_resolve_uniq(search, root))
                 return -ENOMEM;
 
         STRV_FOREACH(i, search) {
                 _cleanup_free_ char *p = NULL;
                 FILE *f;
 
-                p = strjoin(*i, "/", path, NULL);
+                if (root)
+                        p = strjoin(root, *i, "/", path, NULL);
+                else
+                        p = strjoin(*i, "/", path, NULL);
                 if (!p)
                         return -ENOMEM;
 
@@ -6665,3 +6687,78 @@ int bind_remount_recursive(const char *prefix, bool ro) {
                 }
         }
 }
+
+int fflush_and_check(FILE *f) {
+        assert(f);
+
+        errno = 0;
+        fflush(f);
+
+        if (ferror(f))
+                return errno ? -errno : -EIO;
+
+        return 0;
+}
+
+char *tempfn_xxxxxx(const char *p) {
+        const char *fn;
+        char *t;
+        size_t k;
+
+        assert(p);
+
+        t = new(char, strlen(p) + 1 + 6 + 1);
+        if (!t)
+                return NULL;
+
+        fn = basename(p);
+        k = fn - p;
+
+        strcpy(stpcpy(stpcpy(mempcpy(t, p, k), "."), fn), "XXXXXX");
+
+        return t;
+}
+
+char *tempfn_random(const char *p) {
+        const char *fn;
+        char *t, *x;
+        uint64_t u;
+        size_t k;
+        unsigned i;
+
+        assert(p);
+
+        t = new(char, strlen(p) + 1 + 16 + 1);
+        if (!t)
+                return NULL;
+
+        fn = basename(p);
+        k = fn - p;
+
+        x = stpcpy(stpcpy(mempcpy(t, p, k), "."), fn);
+
+        u = random_u64();
+        for (i = 0; i < 16; i++) {
+                *(x++) = hexchar(u & 0xF);
+                u >>= 4;
+        }
+
+        *x = 0;
+
+        return t;
+}
+
+/* make sure the hostname is not "localhost" */
+bool is_localhost(const char *hostname) {
+        assert(hostname);
+
+        /* This tries to identify local hostnames described in RFC6761
+         * plus the redhatism of .localdomain */
+
+        return streq(hostname, "localhost") ||
+               streq(hostname, "localhost.") ||
+               endswith(hostname, ".localhost") ||
+               endswith(hostname, ".localhost.") ||
+               endswith(hostname, ".localdomain") ||
+               endswith(hostname, ".localdomain.");
+}
index 0f8c39335334f8cf458b00def6207bef59fdb5e9..e23069c016837ea1cde76d01dbd60cf3d0c8e382 100644 (file)
@@ -515,6 +515,8 @@ bool plymouth_running(void);
 bool hostname_is_valid(const char *s) _pure_;
 char* hostname_cleanup(char *s, bool lowercase);
 
+bool machine_name_is_valid(const char *s) _pure_;
+
 char* strshorten(char *s, size_t l);
 
 int terminal_vhangup_fd(int fd);
@@ -523,6 +525,8 @@ int terminal_vhangup(const char *name);
 int vt_disallocate(const char *name);
 
 int symlink_atomic(const char *from, const char *to);
+int mknod_atomic(const char *path, mode_t mode, dev_t dev);
+int mkfifo_atomic(const char *path, mode_t mode);
 
 int fchmod_umask(int fd, mode_t mode);
 
@@ -543,7 +547,6 @@ int glob_extend(char ***strv, const char *path);
 
 int dirent_ensure_type(DIR *d, struct dirent *de);
 
-int in_search_path(const char *path, char **search);
 int get_files_in_directory(const char *path, char ***list);
 
 char *strjoin(const char *x, ...) _sentinel_;
@@ -666,14 +669,21 @@ DEFINE_TRIVIAL_CLEANUP_FUNC(FILE*, endmntent);
 #define _cleanup_close_pair_ _cleanup_(close_pairp)
 
 _malloc_  _alloc_(1, 2) static inline void *malloc_multiply(size_t a, size_t b) {
-        if (_unlikely_(b == 0 || a > ((size_t) -1) / b))
+        if (_unlikely_(b != 0 && a > ((size_t) -1) / b))
                 return NULL;
 
         return malloc(a * b);
 }
 
+_alloc_(2, 3) static inline void *realloc_multiply(void *p, size_t a, size_t b) {
+        if (_unlikely_(b != 0 && a > ((size_t) -1) / b))
+                return NULL;
+
+        return realloc(p, a * b);
+}
+
 _alloc_(2, 3) static inline void *memdup_multiply(const void *p, size_t a, size_t b) {
-        if (_unlikely_(b == 0 || a > ((size_t) -1) / b))
+        if (_unlikely_(b != 0 && a > ((size_t) -1) / b))
                 return NULL;
 
         return memdup(p, a * b);
@@ -946,3 +956,10 @@ int update_reboot_param_file(const char *param);
 int umount_recursive(const char *target, int flags);
 
 int bind_remount_recursive(const char *prefix, bool ro);
+
+int fflush_and_check(FILE *f);
+
+char *tempfn_xxxxxx(const char *p);
+char *tempfn_random(const char *p);
+
+bool is_localhost(const char *hostname);
index 94bcb2944a73ccdd93d4678f27899c6374605e20..5adbea5956ba75963374ece1b93fe5139c86563d 100644 (file)
@@ -68,7 +68,7 @@ static int write_state(FILE **f, char **states) {
         STRV_FOREACH(state, states) {
                 int k;
 
-                k = write_string_to_file(*f, *state);
+                k = write_string_stream(*f, *state);
                 if (k == 0)
                         return 0;
                 log_debug("Failed to write '%s' to /sys/power/state: %s",
@@ -135,6 +135,7 @@ static int execute(char **modes, char **states) {
 }
 
 static int help(void) {
+
         printf("%s COMMAND\n\n"
                "Suspend the system, hibernate the system, or both.\n\n"
                "Commands:\n"
index 13b8a0c426393819e2031d110a8a5587559503fe..4f22c9c3590bcda6021e0460166c9792b61616a3 100644 (file)
 static const char *arg_dest = "/tmp";
 
 static int generate_symlink(void) {
-        struct stat st;
-        char _cleanup_free_ *p = NULL;
+        const char *p = NULL;
 
-        if (lstat("/system-update", &st) < 0) {
+        if (access("/system-update", F_OK) < 0) {
                 if (errno == ENOENT)
                         return 0;
 
@@ -46,10 +45,7 @@ static int generate_symlink(void) {
                 return -EINVAL;
         }
 
-        p = strappend(arg_dest, "/default.target");
-        if (!p)
-                return log_oom();
-
+        p = strappenda(arg_dest, "/default.target");
         if (symlink(SYSTEM_DATA_UNIT_PATH "/system-update.target", p) < 0) {
                 log_error("Failed to create symlink %s: %m", p);
                 return -errno;
index b11fee515cc67c4d8fcb3675d16369b563eea5a9..03720f411d7b41fc4cdebc09b5ed8bb8308c1e25 100644 (file)
@@ -101,6 +101,7 @@ static bool arg_recursive = false;
 static int arg_force = 0;
 static bool arg_ask_password = true;
 static bool arg_runtime = false;
+static UnitFilePresetMode arg_preset_mode = UNIT_FILE_PRESET_FULL;
 static char **arg_wall = NULL;
 static const char *arg_kill_who = NULL;
 static int arg_signal = SIGTERM;
@@ -1927,9 +1928,9 @@ static void dump_unit_file_changes(const UnitFileChange *changes, unsigned n_cha
 
         for (i = 0; i < n_changes; i++) {
                 if (changes[i].type == UNIT_FILE_SYMLINK)
-                        log_info("ln -s '%s' '%s'", changes[i].source, changes[i].path);
+                        log_info("Created symlink from %s to %s.", changes[i].path, changes[i].source);
                 else
-                        log_info("rm '%s'", changes[i].path);
+                        log_info("Removed symlink %s.", changes[i].path);
         }
 }
 
@@ -1944,9 +1945,9 @@ static int deserialize_and_dump_unit_file_changes(sd_bus_message *m) {
         while ((r = sd_bus_message_read(m, "(sss)", &type, &path, &source)) > 0) {
                 if (!arg_quiet) {
                         if (streq(type, "symlink"))
-                                log_info("ln -s '%s' '%s'", source, path);
+                                log_info("Created symlink from %s to %s.", path, source);
                         else
-                                log_info("rm '%s'", path);
+                                log_info("Removed symlink %s.", path);
                 }
         }
         if (r < 0)
@@ -5209,7 +5210,7 @@ static int enable_unit(sd_bus *bus, char **args) {
                 } else if (streq(verb, "link"))
                         r = unit_file_link(arg_scope, arg_runtime, arg_root, names, arg_force, &changes, &n_changes);
                 else if (streq(verb, "preset")) {
-                        r = unit_file_preset(arg_scope, arg_runtime, arg_root, names, arg_force, &changes, &n_changes);
+                        r = unit_file_preset(arg_scope, arg_runtime, arg_root, names, arg_preset_mode, arg_force, &changes, &n_changes);
                         carries_install_info = r;
                 } else if (streq(verb, "mask"))
                         r = unit_file_mask(arg_scope, arg_runtime, arg_root, names, arg_force, &changes, &n_changes);
@@ -5231,7 +5232,7 @@ static int enable_unit(sd_bus *bus, char **args) {
                 _cleanup_bus_message_unref_ sd_bus_message *reply = NULL, *m = NULL;
                 _cleanup_bus_error_free_ sd_bus_error error = SD_BUS_ERROR_NULL;
                 int expect_carries_install_info = false;
-                bool send_force = true;
+                bool send_force = true, send_preset_mode = false;
                 const char *method;
 
                 if (streq(verb, "enable")) {
@@ -5246,7 +5247,13 @@ static int enable_unit(sd_bus *bus, char **args) {
                 } else if (streq(verb, "link"))
                         method = "LinkUnitFiles";
                 else if (streq(verb, "preset")) {
-                        method = "PresetUnitFiles";
+
+                        if (arg_preset_mode != UNIT_FILE_PRESET_FULL) {
+                                method = "PresetUnitFilesWithMode";
+                                send_preset_mode = true;
+                        } else
+                                method = "PresetUnitFiles";
+
                         expect_carries_install_info = true;
                 } else if (streq(verb, "mask"))
                         method = "MaskUnitFiles";
@@ -5270,6 +5277,12 @@ static int enable_unit(sd_bus *bus, char **args) {
                 if (r < 0)
                         return bus_log_create_error(r);
 
+                if (send_preset_mode) {
+                        r = sd_bus_message_append(m, "s", unit_file_preset_mode_to_string(arg_preset_mode));
+                        if (r < 0)
+                                return bus_log_create_error(r);
+                }
+
                 r = sd_bus_message_append(m, "b", arg_runtime);
                 if (r < 0)
                         return bus_log_create_error(r);
@@ -5320,6 +5333,61 @@ finish:
         return r;
 }
 
+static int preset_all(sd_bus *bus, char **args) {
+        UnitFileChange *changes = NULL;
+        unsigned n_changes = 0;
+        int r;
+
+        if (!bus || avoid_bus()) {
+
+                r = unit_file_preset_all(arg_scope, arg_runtime, arg_root, arg_preset_mode, arg_force, &changes, &n_changes);
+                if (r < 0) {
+                        log_error("Operation failed: %s", strerror(-r));
+                        goto finish;
+                }
+
+                if (!arg_quiet)
+                        dump_unit_file_changes(changes, n_changes);
+
+                r = 0;
+
+        } else {
+                _cleanup_bus_message_unref_ sd_bus_message *reply = NULL;
+                _cleanup_bus_error_free_ sd_bus_error error = SD_BUS_ERROR_NULL;
+
+                r = sd_bus_call_method(
+                                bus,
+                                "org.freedesktop.systemd1",
+                                "/org/freedesktop/systemd1",
+                                "org.freedesktop.systemd1.Manager",
+                                "PresetAllUnitFiles",
+                                &error,
+                                &reply,
+                                "sbb",
+                                unit_file_preset_mode_to_string(arg_preset_mode),
+                                arg_runtime,
+                                arg_force);
+                if (r < 0) {
+                        log_error("Failed to execute operation: %s", bus_error_message(&error, r));
+                        return r;
+                }
+
+                r = deserialize_and_dump_unit_file_changes(reply);
+                if (r < 0)
+                        return r;
+
+                if (!arg_no_reload)
+                        r = daemon_reload(bus, args);
+                else
+                        r = 0;
+        }
+
+finish:
+        unit_file_changes_free(changes, n_changes);
+
+        return r;
+}
+
 static int unit_is_enabled(sd_bus *bus, char **args) {
 
         _cleanup_bus_error_free_ sd_bus_error error = SD_BUS_ERROR_NULL;
@@ -5394,6 +5462,30 @@ static int unit_is_enabled(sd_bus *bus, char **args) {
         return !enabled;
 }
 
+static int is_system_running(sd_bus *bus, char **args) {
+        _cleanup_free_ char *state = NULL;
+        int r;
+
+        r = sd_bus_get_property_string(
+                        bus,
+                        "org.freedesktop.systemd1",
+                        "/org/freedesktop/systemd1",
+                        "org.freedesktop.systemd1.Manager",
+                        "SystemState",
+                        NULL,
+                        &state);
+        if (r < 0) {
+                if (!arg_quiet)
+                        puts("unknown");
+                return 0;
+        }
+
+        if (!arg_quiet)
+                puts(state);
+
+        return streq(state, "running") ? EXIT_SUCCESS : EXIT_FAILURE;
+}
+
 static int systemctl_help(void) {
 
         pager_open_if_enabled();
@@ -5437,6 +5529,8 @@ static int systemctl_help(void) {
                "     --runtime        Enable unit files only temporarily until next reboot\n"
                "  -f --force          When enabling unit files, override existing symlinks\n"
                "                      When shutting down, execute action immediately\n"
+               "     --preset-mode=   Specifies whether fully apply presets, or only enable,\n"
+               "                      or only disable\n"
                "     --root=PATH      Enable unit files in the specified root directory\n"
                "  -n --lines=INTEGER  Number of journal entries to show\n"
                "  -o --output=STRING  Change journal output mode (short, short-monotonic,\n"
@@ -5477,6 +5571,8 @@ static int systemctl_help(void) {
                "  reenable NAME...                Reenable one or more unit files\n"
                "  preset NAME...                  Enable/disable one or more unit files\n"
                "                                  based on preset configuration\n"
+               "  preset-all                      Enable/disable all unit files based on\n"
+               "                                  preset configuration\n"
                "  is-enabled NAME...              Check whether unit files are enabled\n\n"
                "  mask NAME...                    Mask one or more units\n"
                "  unmask NAME...                  Unmask one or more units\n"
@@ -5501,6 +5597,7 @@ static int systemctl_help(void) {
                "  daemon-reload                   Reload systemd manager configuration\n"
                "  daemon-reexec                   Reexecute systemd manager\n\n"
                "System Commands:\n"
+               "  is-system-running               Check whether system is fully running\n"
                "  default                         Enter system default mode\n"
                "  rescue                          Enter system rescue mode\n"
                "  emergency                       Enter system emergency mode\n"
@@ -5625,7 +5722,8 @@ static int systemctl_parse_argv(int argc, char *argv[]) {
                 ARG_FORCE,
                 ARG_PLAIN,
                 ARG_STATE,
-                ARG_JOB_MODE
+                ARG_JOB_MODE,
+                ARG_PRESET_MODE,
         };
 
         static const struct option options[] = {
@@ -5667,6 +5765,7 @@ static int systemctl_parse_argv(int argc, char *argv[]) {
                 { "plain",               no_argument,       NULL, ARG_PLAIN               },
                 { "state",               required_argument, NULL, ARG_STATE               },
                 { "recursive",           no_argument,       NULL, 'r'                     },
+                { "preset-mode",         required_argument, NULL, ARG_PRESET_MODE         },
                 {}
         };
 
@@ -5932,6 +6031,16 @@ static int systemctl_parse_argv(int argc, char *argv[]) {
                         arg_recursive = true;
                         break;
 
+                case ARG_PRESET_MODE:
+
+                        arg_preset_mode = unit_file_preset_mode_from_string(optarg);
+                        if (arg_preset_mode < 0) {
+                                log_error("Failed to parse preset mode: %s.", optarg);
+                                return -EINVAL;
+                        }
+
+                        break;
+
                 case '?':
                         return -EINVAL;
 
@@ -6483,6 +6592,7 @@ static int systemctl_main(sd_bus *bus, int argc, char *argv[], int bus_error) {
                 { "is-enabled",            MORE,  2, unit_is_enabled,  NOBUS },
                 { "reenable",              MORE,  2, enable_unit,      NOBUS },
                 { "preset",                MORE,  2, enable_unit,      NOBUS },
+                { "preset-all",            EQUAL, 1, preset_all,       NOBUS },
                 { "mask",                  MORE,  2, enable_unit,      NOBUS },
                 { "unmask",                MORE,  2, enable_unit,      NOBUS },
                 { "link",                  MORE,  2, enable_unit,      NOBUS },
@@ -6491,6 +6601,7 @@ static int systemctl_main(sd_bus *bus, int argc, char *argv[], int bus_error) {
                 { "set-default",           EQUAL, 2, set_default,      NOBUS },
                 { "get-default",           EQUAL, 1, get_default,      NOBUS },
                 { "set-property",          MORE,  3, set_property      },
+                { "is-system-running",     EQUAL, 1, is_system_running },
                 {}
         }, *verb = verbs;
 
index 5818ec4d97b895ab606a9fdf984a3b594f488165..c3ea0592f69844e5668b6a501cbe5815620ea2d0 100644 (file)
@@ -34,6 +34,7 @@ enum {
         DHCP_EVENT_IP_ACQUIRE                   = 2,
         DHCP_EVENT_IP_CHANGE                    = 3,
         DHCP_EVENT_EXPIRED                      = 4,
+        DHCP_EVENT_RENEW                        = 5,
 };
 
 typedef struct sd_dhcp_client sd_dhcp_client;
@@ -50,6 +51,7 @@ int sd_dhcp_client_set_request_address(sd_dhcp_client *client,
 int sd_dhcp_client_set_index(sd_dhcp_client *client, int interface_index);
 int sd_dhcp_client_set_mac(sd_dhcp_client *client,
                            const struct ether_addr *addr);
+int sd_dhcp_client_set_hostname(sd_dhcp_client *client, const char *hostname);
 int sd_dhcp_client_get_lease(sd_dhcp_client *client, sd_dhcp_lease **ret);
 
 int sd_dhcp_client_stop(sd_dhcp_client *client);
index 252c09399dd3491470183026ddb23b3c0bbb28fb..c15744d6c1d401addf5bb303917d09ede94c190a 100644 (file)
 #include <net/ethernet.h>
 
 typedef struct sd_dhcp_lease sd_dhcp_lease;
+struct sd_dhcp_route;
 
 sd_dhcp_lease *sd_dhcp_lease_ref(sd_dhcp_lease *lease);
 sd_dhcp_lease *sd_dhcp_lease_unref(sd_dhcp_lease *lease);
 int sd_dhcp_lease_get_address(sd_dhcp_lease *lease, struct in_addr *addr);
+int sd_dhcp_lease_get_lifetime(sd_dhcp_lease *lease, uint32_t *lifetime);
 int sd_dhcp_lease_get_netmask(sd_dhcp_lease *lease, struct in_addr *addr);
 int sd_dhcp_lease_get_router(sd_dhcp_lease *lease, struct in_addr *addr);
 int sd_dhcp_lease_get_next_server(sd_dhcp_lease *lease, struct in_addr *addr);
@@ -41,5 +43,5 @@ int sd_dhcp_lease_get_mtu(sd_dhcp_lease *lease, uint16_t *mtu);
 int sd_dhcp_lease_get_domainname(sd_dhcp_lease *lease, const char **domainname);
 int sd_dhcp_lease_get_hostname(sd_dhcp_lease *lease, const char **hostname);
 int sd_dhcp_lease_get_root_path(sd_dhcp_lease *lease, const char **root_path);
-
+int sd_dhcp_lease_get_routes(sd_dhcp_lease *lease, struct sd_dhcp_route **routes, size_t *routes_size);
 #endif
diff --git a/src/systemd/sd-dhcp-server.h b/src/systemd/sd-dhcp-server.h
new file mode 100644 (file)
index 0000000..01595d3
--- /dev/null
@@ -0,0 +1,49 @@
+/*-*- Mode: C; c-basic-offset: 8; indent-tabs-mode: nil -*-*/
+
+#ifndef foosddhcpserverhfoo
+#define foosddhcpserverhfoo
+
+/***
+  This file is part of systemd.
+
+  Copyright (C) 2013 Intel Corporation. All rights reserved.
+  Copyright (C) 2014 Tom Gundersen
+
+  systemd is free software; you can redistribute it and/or modify it
+  under the terms of the GNU Lesser General Public License as published by
+  the Free Software Foundation; either version 2.1 of the License, or
+  (at your option) any later version.
+
+  systemd is distributed in the hope that it will be useful, but
+  WITHOUT ANY WARRANTY; without even the implied warranty of
+  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+  Lesser General Public License for more details.
+
+  You should have received a copy of the GNU Lesser General Public License
+  along with systemd; If not, see <http://www.gnu.org/licenses/>.
+***/
+
+#include <stdbool.h>
+#include <netinet/in.h>
+
+#include "sd-event.h"
+
+typedef struct sd_dhcp_server sd_dhcp_server;
+
+sd_dhcp_server *sd_dhcp_server_ref(sd_dhcp_server *server);
+sd_dhcp_server *sd_dhcp_server_unref(sd_dhcp_server *server);
+
+int sd_dhcp_server_new(sd_dhcp_server **ret, int ifindex);
+
+int sd_dhcp_server_attach_event(sd_dhcp_server *client, sd_event *event, int priority);
+int sd_dhcp_server_detach_event(sd_dhcp_server *client);
+sd_event *sd_dhcp_server_get_event(sd_dhcp_server *client);
+
+bool sd_dhcp_server_is_running(sd_dhcp_server *server);
+
+int sd_dhcp_server_start(sd_dhcp_server *server);
+int sd_dhcp_server_stop(sd_dhcp_server *server);
+
+int sd_dhcp_server_set_address(sd_dhcp_server *server, struct in_addr *address);
+int sd_dhcp_server_set_lease_pool(sd_dhcp_server *server, struct in_addr *start, size_t size);
+#endif
diff --git a/src/systemd/sd-dhcp6-client.h b/src/systemd/sd-dhcp6-client.h
new file mode 100644 (file)
index 0000000..93edcc4
--- /dev/null
@@ -0,0 +1,63 @@
+/*-*- Mode: C; c-basic-offset: 8; indent-tabs-mode: nil -*-*/
+
+#ifndef foosddhcp6clienthfoo
+#define foosddhcp6clienthfoo
+
+/***
+  This file is part of systemd.
+
+  Copyright (C) 2014 Intel Corporation. All rights reserved.
+
+  systemd is free software; you can redistribute it and/or modify it
+  under the terms of the GNU Lesser General Public License as published by
+  the Free Software Foundation; either version 2.1 of the License, or
+  (at your option) any later version.
+
+  systemd is distributed in the hope that it will be useful, but
+  WITHOUT ANY WARRANTY; without even the implied warranty of
+  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+  Lesser General Public License for more details.
+
+  You should have received a copy of the GNU Lesser General Public License
+  along with systemd; If not, see <http://www.gnu.org/licenses/>.
+***/
+
+#include <net/ethernet.h>
+
+#include "sd-event.h"
+
+#include "sd-dhcp6-lease.h"
+
+enum {
+        DHCP6_EVENT_STOP                        = 0,
+        DHCP6_EVENT_RESEND_EXPIRE               = 10,
+        DHCP6_EVENT_RETRANS_MAX                 = 11,
+        DHCP6_EVENT_IP_ACQUIRE                  = 12,
+};
+
+typedef struct sd_dhcp6_client sd_dhcp6_client;
+
+typedef void (*sd_dhcp6_client_cb_t)(sd_dhcp6_client *client, int event,
+                                     void *userdata);
+int sd_dhcp6_client_set_callback(sd_dhcp6_client *client,
+                                 sd_dhcp6_client_cb_t cb, void *userdata);
+
+int sd_dhcp6_client_set_index(sd_dhcp6_client *client, int interface_index);
+int sd_dhcp6_client_set_mac(sd_dhcp6_client *client,
+                            const struct ether_addr *mac_addr);
+int sd_dhcp6_client_set_request_option(sd_dhcp6_client *client,
+                                       uint16_t option);
+
+int sd_dhcp6_client_get_lease(sd_dhcp6_client *client, sd_dhcp6_lease **ret);
+
+int sd_dhcp6_client_stop(sd_dhcp6_client *client);
+int sd_dhcp6_client_start(sd_dhcp6_client *client);
+int sd_dhcp6_client_attach_event(sd_dhcp6_client *client, sd_event *event,
+                                 int priority);
+int sd_dhcp6_client_detach_event(sd_dhcp6_client *client);
+sd_event *sd_dhcp6_client_get_event(sd_dhcp6_client *client);
+sd_dhcp6_client *sd_dhcp6_client_ref(sd_dhcp6_client *client);
+sd_dhcp6_client *sd_dhcp6_client_unref(sd_dhcp6_client *client);
+int sd_dhcp6_client_new(sd_dhcp6_client **ret);
+
+#endif
diff --git a/src/systemd/sd-dhcp6-lease.h b/src/systemd/sd-dhcp6-lease.h
new file mode 100644 (file)
index 0000000..1126f1a
--- /dev/null
@@ -0,0 +1,42 @@
+/*-*- Mode: C; c-basic-offset: 8; indent-tabs-mode: nil -*-*/
+
+#ifndef foosddhcp6leasehfoo
+#define foosddhcp6leasehfoo
+
+/***
+  This file is part of systemd.
+
+  Copyright (C) 2014 Tom Gundersen
+  Copyright (C) 2014 Intel Corporation. All rights reserved.
+
+  systemd is free software; you can redistribute it and/or modify it
+  under the terms of the GNU Lesser General Public License as published by
+  the Free Software Foundation; either version 2.1 of the License, or
+  (at your option) any later version.
+
+  systemd is distributed in the hope that it will be useful, but
+  WITHOUT ANY WARRANTY; without even the implied warranty of
+  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+  Lesser General Public License for more details.
+
+  You should have received a copy of the GNU Lesser General Public License
+  along with systemd; If not, see <http://www.gnu.org/licenses/>.
+***/
+
+#include <netinet/in.h>
+
+typedef struct sd_dhcp6_lease sd_dhcp6_lease;
+
+int sd_dhcp6_lease_get_first_address(sd_dhcp6_lease *lease,
+                                     struct in6_addr *addr,
+                                     uint32_t *lifetime_preferred,
+                                     uint32_t *lifetime_valid);
+int sd_dhcp6_lease_get_next_address(sd_dhcp6_lease *lease,
+                                    struct in6_addr *addr,
+                                    uint32_t *lifetime_preferred,
+                                    uint32_t *lifetime_valid);
+
+sd_dhcp6_lease *sd_dhcp6_lease_ref(sd_dhcp6_lease *lease);
+sd_dhcp6_lease *sd_dhcp6_lease_unref(sd_dhcp6_lease *lease);
+
+#endif
diff --git a/src/systemd/sd-icmp6-nd.h b/src/systemd/sd-icmp6-nd.h
new file mode 100644 (file)
index 0000000..73f91aa
--- /dev/null
@@ -0,0 +1,57 @@
+/*-*- Mode: C; c-basic-offset: 8; indent-tabs-mode: nil -*-*/
+
+#ifndef foosdicmp6ndfoo
+#define foosdicmp6ndfoo
+
+/***
+  This file is part of systemd.
+
+  Copyright (C) 2014 Intel Corporation. All rights reserved.
+
+  systemd is free software; you can redistribute it and/or modify it
+  under the terms of the GNU Lesser General Public License as published by
+  the Free Software Foundation; either version 2.1 of the License, or
+  (at your option) any later version.
+
+  systemd is distributed in the hope that it will be useful, but
+  WITHOUT ANY WARRANTY; without even the implied warranty of
+  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+  Lesser General Public License for more details.
+
+  You should have received a copy of the GNU Lesser General Public License
+  along with systemd; If not, see <http://www.gnu.org/licenses/>.
+***/
+
+#include <net/ethernet.h>
+
+#include "sd-event.h"
+
+enum {
+        ICMP6_EVENT_ROUTER_ADVERTISMENT_NONE    = 0,
+        ICMP6_EVENT_ROUTER_ADVERTISMENT_TIMEOUT = 1,
+        ICMP6_EVENT_ROUTER_ADVERTISMENT_OTHER   = 2,
+        ICMP6_EVENT_ROUTER_ADVERTISMENT_MANAGED = 3,
+};
+
+typedef struct sd_icmp6_nd sd_icmp6_nd;
+
+typedef void(*sd_icmp6_nd_callback_t)(sd_icmp6_nd *nd, int event,
+                                      void *userdata);
+
+int sd_icmp6_nd_set_callback(sd_icmp6_nd *nd, sd_icmp6_nd_callback_t cb,
+                             void *userdata);
+int sd_icmp6_nd_set_index(sd_icmp6_nd *nd, int interface_index);
+int sd_icmp6_nd_set_mac(sd_icmp6_nd *nd, const struct ether_addr *mac_addr);
+
+int sd_icmp6_nd_attach_event(sd_icmp6_nd *nd, sd_event *event, int priority);
+int sd_icmp6_nd_detach_event(sd_icmp6_nd *nd);
+sd_event *sd_icmp6_nd_get_event(sd_icmp6_nd *nd);
+
+sd_icmp6_nd *sd_icmp6_nd_ref(sd_icmp6_nd *nd);
+sd_icmp6_nd *sd_icmp6_nd_unref(sd_icmp6_nd *nd);
+int sd_icmp6_nd_new(sd_icmp6_nd **ret);
+
+int sd_icmp6_nd_stop(sd_icmp6_nd *nd);
+int sd_icmp6_router_solicitation_start(sd_icmp6_nd *nd);
+
+#endif
diff --git a/src/systemd/sd-path.h b/src/systemd/sd-path.h
new file mode 100644 (file)
index 0000000..e238c0c
--- /dev/null
@@ -0,0 +1,87 @@
+/*-*- Mode: C; c-basic-offset: 8; indent-tabs-mode: nil -*-*/
+
+#ifndef foosdpathhfoo
+#define foosdpathhfoo
+
+/***
+  This file is part of systemd.
+
+  Copyright 2014 Lennart Poettering
+
+  systemd is free software; you can redistribute it and/or modify it
+  under the terms of the GNU Lesser General Public License as published by
+  the Free Software Foundation; either version 2.1 of the License, or
+  (at your option) any later version.
+
+  systemd is distributed in the hope that it will be useful, but
+  WITHOUT ANY WARRANTY; without even the implied warranty of
+  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+  Lesser General Public License for more details.
+
+  You should have received a copy of the GNU Lesser General Public License
+  along with systemd; If not, see <http://www.gnu.org/licenses/>.
+***/
+
+#include <inttypes.h>
+
+enum {
+        /* Temporary files */
+        SD_PATH_TEMPORARY = 0x0ULL,
+        SD_PATH_TEMPORARY_LARGE,
+
+        /* Vendor supplied data */
+        SD_PATH_SYSTEM_BINARIES,
+        SD_PATH_SYSTEM_INCLUDE,
+        SD_PATH_SYSTEM_LIBRARY_PRIVATE,
+        SD_PATH_SYSTEM_LIBRARY_ARCH,
+        SD_PATH_SYSTEM_SHARED,
+        SD_PATH_SYSTEM_CONFIGURATION_FACTORY,
+        SD_PATH_SYSTEM_STATE_FACTORY,
+
+        /* System configuration, runtime, state, ... */
+        SD_PATH_SYSTEM_CONFIGURATION,
+        SD_PATH_SYSTEM_RUNTIME,
+        SD_PATH_SYSTEM_RUNTIME_LOGS,
+        SD_PATH_SYSTEM_STATE_PRIVATE,
+        SD_PATH_SYSTEM_STATE_LOGS,
+        SD_PATH_SYSTEM_STATE_CACHE,
+        SD_PATH_SYSTEM_STATE_SPOOL,
+
+        /* Vendor supplied data */
+        SD_PATH_USER_BINARIES,
+        SD_PATH_USER_LIBRARY_PRIVATE,
+        SD_PATH_USER_LIBRARY_ARCH,
+        SD_PATH_USER_SHARED,
+
+        /* User configuration, state, runtime ... */
+        SD_PATH_USER_CONFIGURATION, /* takes both actual configuration (like /etc) and state (like /var/lib) */
+        SD_PATH_USER_RUNTIME,
+        SD_PATH_USER_STATE_CACHE,
+
+        /* User resources */
+        SD_PATH_USER, /* $HOME itself */
+        SD_PATH_USER_DOCUMENTS,
+        SD_PATH_USER_MUSIC,
+        SD_PATH_USER_PICTURES,
+        SD_PATH_USER_VIDEOS,
+        SD_PATH_USER_DOWNLOAD,
+        SD_PATH_USER_PUBLIC,
+        SD_PATH_USER_TEMPLATES,
+        SD_PATH_USER_DESKTOP,
+
+        /* Search paths */
+        SD_PATH_SEARCH_BINARIES,
+        SD_PATH_SEARCH_LIBRARY_PRIVATE,
+        SD_PATH_SEARCH_LIBRARY_ARCH,
+        SD_PATH_SEARCH_SHARED,
+        SD_PATH_SEARCH_CONFIGURATION_FACTORY,
+        SD_PATH_SEARCH_STATE_FACTORY,
+        SD_PATH_SEARCH_CONFIGURATION,
+
+        _SD_PATH_MAX,
+};
+
+int sd_path_home(uint64_t type, const char *suffix, char **path);
+int sd_path_search(uint64_t type, const char *suffix, char ***paths);
+
+#endif
diff --git a/src/sysusers/sysusers.c b/src/sysusers/sysusers.c
new file mode 100644 (file)
index 0000000..1209a5a
--- /dev/null
@@ -0,0 +1,1601 @@
+/*-*- Mode: C; c-basic-offset: 8; indent-tabs-mode: nil -*-*/
+
+/***
+  This file is part of systemd.
+
+  Copyright 2014 Lennart Poettering
+
+  systemd is free software; you can redistribute it and/or modify it
+  under the terms of the GNU Lesser General Public License as published by
+  the Free Software Foundation; either version 2.1 of the License, or
+  (at your option) any later version.
+
+  systemd is distributed in the hope that it will be useful, but
+  WITHOUT ANY WARRANTY; without even the implied warranty of
+  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+  Lesser General Public License for more details.
+
+  You should have received a copy of the GNU Lesser General Public License
+  along with systemd; If not, see <http://www.gnu.org/licenses/>.
+***/
+
+#include <sys/types.h>
+#include <pwd.h>
+#include <grp.h>
+#include <shadow.h>
+#include <getopt.h>
+
+#include "util.h"
+#include "hashmap.h"
+#include "specifier.h"
+#include "path-util.h"
+#include "build.h"
+#include "strv.h"
+#include "conf-files.h"
+#include "copy.h"
+#include "utf8.h"
+
+typedef enum ItemType {
+        ADD_USER = 'u',
+        ADD_GROUP = 'g',
+        ADD_MEMBER = 'm',
+} ItemType;
+typedef struct Item {
+        ItemType type;
+
+        char *name;
+        char *uid_path;
+        char *gid_path;
+        char *description;
+
+        gid_t gid;
+        uid_t uid;
+
+        bool gid_set:1;
+        bool uid_set:1;
+
+        bool todo_user:1;
+        bool todo_group:1;
+} Item;
+
+static char *arg_root = NULL;
+
+static const char conf_file_dirs[] =
+        "/usr/local/lib/sysusers.d\0"
+        "/usr/lib/sysusers.d\0"
+#ifdef HAVE_SPLIT_USR
+        "/lib/sysusers.d\0"
+#endif
+        ;
+
+static Hashmap *users = NULL, *groups = NULL;
+static Hashmap *todo_uids = NULL, *todo_gids = NULL;
+static Hashmap *members = NULL;
+
+static Hashmap *database_uid = NULL, *database_user = NULL;
+static Hashmap *database_gid = NULL, *database_group = NULL;
+
+static uid_t search_uid = SYSTEM_UID_MAX;
+static gid_t search_gid = SYSTEM_GID_MAX;
+
+#define UID_TO_PTR(u) (ULONG_TO_PTR(u+1))
+#define PTR_TO_UID(u) ((uid_t) (PTR_TO_ULONG(u)-1))
+
+#define GID_TO_PTR(g) (ULONG_TO_PTR(g+1))
+#define PTR_TO_GID(g) ((gid_t) (PTR_TO_ULONG(g)-1))
+
+#define fix_root(x) (arg_root ? strappenda(arg_root, x) : x)
+
+static int load_user_database(void) {
+        _cleanup_fclose_ FILE *f = NULL;
+        const char *passwd_path;
+        struct passwd *pw;
+        int r;
+
+        passwd_path = fix_root("/etc/passwd");
+        f = fopen(passwd_path, "re");
+        if (!f)
+                return errno == ENOENT ? 0 : -errno;
+
+        r = hashmap_ensure_allocated(&database_user, string_hash_func, string_compare_func);
+        if (r < 0)
+                return r;
+
+        r = hashmap_ensure_allocated(&database_uid, trivial_hash_func, trivial_compare_func);
+        if (r < 0)
+                return r;
+
+        errno = 0;
+        while ((pw = fgetpwent(f))) {
+                char *n;
+                int k, q;
+
+                n = strdup(pw->pw_name);
+                if (!n)
+                        return -ENOMEM;
+
+                k = hashmap_put(database_user, n, UID_TO_PTR(pw->pw_uid));
+                if (k < 0 && k != -EEXIST) {
+                        free(n);
+                        return k;
+                }
+
+                q = hashmap_put(database_uid, UID_TO_PTR(pw->pw_uid), n);
+                if (q < 0 && q != -EEXIST) {
+                        if (k < 0)
+                                free(n);
+                        return q;
+                }
+
+                if (q < 0 && k < 0)
+                        free(n);
+
+                errno = 0;
+        }
+        if (!IN_SET(errno, 0, ENOENT))
+                return -errno;
+
+        return 0;
+}
+
+static int load_group_database(void) {
+        _cleanup_fclose_ FILE *f = NULL;
+        const char *group_path;
+        struct group *gr;
+        int r;
+
+        group_path = fix_root("/etc/group");
+        f = fopen(group_path, "re");
+        if (!f)
+                return errno == ENOENT ? 0 : -errno;
+
+        r = hashmap_ensure_allocated(&database_group, string_hash_func, string_compare_func);
+        if (r < 0)
+                return r;
+
+        r = hashmap_ensure_allocated(&database_gid, trivial_hash_func, trivial_compare_func);
+        if (r < 0)
+                return r;
+
+        errno = 0;
+        while ((gr = fgetgrent(f))) {
+                char *n;
+                int k, q;
+
+                n = strdup(gr->gr_name);
+                if (!n)
+                        return -ENOMEM;
+
+                k = hashmap_put(database_group, n, GID_TO_PTR(gr->gr_gid));
+                if (k < 0 && k != -EEXIST) {
+                        free(n);
+                        return k;
+                }
+
+                q = hashmap_put(database_gid, GID_TO_PTR(gr->gr_gid), n);
+                if (q < 0 && q != -EEXIST) {
+                        if (k < 0)
+                                free(n);
+                        return q;
+                }
+
+                if (q < 0 && k < 0)
+                        free(n);
+
+                errno = 0;
+        }
+        if (!IN_SET(errno, 0, ENOENT))
+                return -errno;
+
+        return 0;
+}
+
+static int make_backup(const char *x) {
+        _cleanup_close_ int src = -1, dst = -1;
+        char *backup, *temp;
+        struct timespec ts[2];
+        struct stat st;
+        int r;
+
+        src = open(x, O_RDONLY|O_CLOEXEC|O_NOCTTY);
+        if (src < 0) {
+                if (errno == ENOENT) /* No backup necessary... */
+                        return 0;
+
+                return -errno;
+        }
+
+        if (fstat(src, &st) < 0)
+                return -errno;
+
+        temp = strappenda(x, ".XXXXXX");
+        dst = mkostemp_safe(temp, O_WRONLY|O_CLOEXEC|O_NOCTTY);
+        if (dst < 0)
+                return dst;
+
+        r = copy_bytes(src, dst, (off_t) -1);
+        if (r < 0)
+                goto fail;
+
+        /* Copy over the access mask */
+        if (fchmod(dst, st.st_mode & 07777) < 0) {
+                r = -errno;
+                goto fail;
+        }
+
+        /* Don't fail on chmod(). If it stays owned by us, then it
+         * isn't too bad... */
+        fchown(dst, st.st_uid, st.st_gid);
+
+        ts[0] = st.st_atim;
+        ts[1] = st.st_mtim;
+        futimens(dst, ts);
+
+        backup = strappenda(x, "-");
+        if (rename(temp, backup) < 0)
+                goto fail;
+
+        return 0;
+
+fail:
+        unlink(temp);
+        return r;
+}
+
+static int putgrent_with_members(const struct group *gr, FILE *group) {
+        char **a;
+
+        assert(gr);
+        assert(group);
+
+        a = hashmap_get(members, gr->gr_name);
+        if (a) {
+                _cleanup_strv_free_ char **l = NULL;
+                bool added = false;
+                char **i;
+
+                l = strv_copy(gr->gr_mem);
+                if (!l)
+                        return -ENOMEM;
+
+                STRV_FOREACH(i, a) {
+                        if (strv_find(l, *i))
+                                continue;
+
+                        if (strv_extend(&l, *i) < 0)
+                                return -ENOMEM;
+
+                        added = true;
+                }
+
+                if (added) {
+                        struct group t;
+
+                        strv_uniq(l);
+                        strv_sort(l);
+
+                        t = *gr;
+                        t.gr_mem = l;
+
+                        errno = 0;
+                        if (putgrent(&t, group) != 0)
+                                return errno ? -errno : -EIO;
+
+                        return 1;
+                }
+        }
+
+        errno = 0;
+        if (putgrent(gr, group) != 0)
+                return errno ? -errno : -EIO;
+
+        return 0;
+}
+
+static int write_files(void) {
+
+        _cleanup_fclose_ FILE *passwd = NULL, *group = NULL;
+        _cleanup_free_ char *passwd_tmp = NULL, *group_tmp = NULL;
+        const char *passwd_path = NULL, *group_path = NULL;
+        bool group_changed = false;
+        Iterator iterator;
+        Item *i;
+        int r;
+
+        /* We don't patch /etc/shadow or /etc/gshadow here, since we
+         * only create user accounts without passwords anyway. */
+
+        if (hashmap_size(todo_gids) > 0 || hashmap_size(members) > 0) {
+                _cleanup_fclose_ FILE *original = NULL;
+
+                group_path = fix_root("/etc/group");
+                r = fopen_temporary(group_path, &group, &group_tmp);
+                if (r < 0)
+                        goto finish;
+
+                if (fchmod(fileno(group), 0644) < 0) {
+                        r = -errno;
+                        goto finish;
+                }
+
+                original = fopen(group_path, "re");
+                if (original) {
+                        struct group *gr;
+
+                        errno = 0;
+                        while ((gr = fgetgrent(original))) {
+                                /* Safety checks against name and GID
+                                 * collisions. Normally, this should
+                                 * be unnecessary, but given that we
+                                 * look at the entries anyway here,
+                                 * let's make an extra verification
+                                 * step that we don't generate
+                                 * duplicate entries. */
+
+                                i = hashmap_get(groups, gr->gr_name);
+                                if (i && i->todo_group) {
+                                        r = -EEXIST;
+                                        goto finish;
+                                }
+
+                                if (hashmap_contains(todo_gids, GID_TO_PTR(gr->gr_gid))) {
+                                        r = -EEXIST;
+                                        goto finish;
+                                }
+
+                                r = putgrent_with_members(gr, group);
+                                if (r < 0)
+                                        goto finish;
+
+                                if (r > 0)
+                                        group_changed = true;
+
+                                errno = 0;
+                        }
+                        if (!IN_SET(errno, 0, ENOENT)) {
+                                r = -errno;
+                                goto finish;
+                        }
+
+                } else if (errno != ENOENT) {
+                        r = -errno;
+                        goto finish;
+                }
+
+                HASHMAP_FOREACH(i, todo_gids, iterator) {
+                        struct group n = {
+                                .gr_name = i->name,
+                                .gr_gid = i->gid,
+                                .gr_passwd = (char*) "x",
+                        };
+
+                        r = putgrent_with_members(&n, group);
+                        if (r < 0)
+                                goto finish;
+
+                        group_changed = true;
+                }
+
+                r = fflush_and_check(group);
+                if (r < 0)
+                        goto finish;
+        }
+
+        if (hashmap_size(todo_uids) > 0) {
+                _cleanup_fclose_ FILE *original = NULL;
+
+                passwd_path = fix_root("/etc/passwd");
+                r = fopen_temporary(passwd_path, &passwd, &passwd_tmp);
+                if (r < 0)
+                        goto finish;
+
+                if (fchmod(fileno(passwd), 0644) < 0) {
+                        r = -errno;
+                        goto finish;
+                }
+
+                original = fopen(passwd_path, "re");
+                if (original) {
+                        struct passwd *pw;
+
+                        errno = 0;
+                        while ((pw = fgetpwent(original))) {
+
+                                i = hashmap_get(users, pw->pw_name);
+                                if (i && i->todo_user) {
+                                        r = -EEXIST;
+                                        goto finish;
+                                }
+
+                                if (hashmap_contains(todo_uids, UID_TO_PTR(pw->pw_uid))) {
+                                        r = -EEXIST;
+                                        goto finish;
+                                }
+
+                                errno = 0;
+                                if (putpwent(pw, passwd) < 0) {
+                                        r = errno ? -errno : -EIO;
+                                        goto finish;
+                                }
+
+                                errno = 0;
+                        }
+                        if (!IN_SET(errno, 0, ENOENT)) {
+                                r = -errno;
+                                goto finish;
+                        }
+
+                } else if (errno != ENOENT) {
+                        r = -errno;
+                        goto finish;
+                }
+
+                HASHMAP_FOREACH(i, todo_uids, iterator) {
+                        struct passwd n = {
+                                .pw_name = i->name,
+                                .pw_uid = i->uid,
+                                .pw_gid = i->gid,
+                                .pw_gecos = i->description,
+                                .pw_passwd = (char*) "x",
+                        };
+
+                        /* Initialize the home directory and the shell
+                         * to nologin, with one exception: for root we
+                         * patch in something special */
+                        if (i->uid == 0) {
+                                n.pw_shell = (char*) "/bin/sh";
+                                n.pw_dir = (char*) "/root";
+                        } else {
+                                n.pw_shell = (char*) "/sbin/nologin";
+                                n.pw_dir = (char*) "/";
+                        }
+
+                        errno = 0;
+                        if (putpwent(&n, passwd) != 0) {
+                                r = errno ? -errno : -EIO;
+                                goto finish;
+                        }
+                }
+
+                r = fflush_and_check(passwd);
+                if (r < 0)
+                        goto finish;
+        }
+
+        /* Make a backup of the old files */
+        if (group && group_changed) {
+                r = make_backup(group_path);
+                if (r < 0)
+                        goto finish;
+        }
+
+        if (passwd) {
+                r = make_backup(passwd_path);
+                if (r < 0)
+                        goto finish;
+        }
+
+        /* And make the new files count */
+        if (group && group_changed) {
+                if (rename(group_tmp, group_path) < 0) {
+                        r = -errno;
+                        goto finish;
+                }
+
+                free(group_tmp);
+                group_tmp = NULL;
+        }
+
+        if (passwd) {
+                if (rename(passwd_tmp, passwd_path) < 0) {
+                        r = -errno;
+                        goto finish;
+                }
+
+                free(passwd_tmp);
+                passwd_tmp = NULL;
+        }
+
+        r = 0;
+
+finish:
+        if (passwd_tmp)
+                unlink(passwd_tmp);
+        if (group_tmp)
+                unlink(group_tmp);
+
+        return r;
+}
+
+static int uid_is_ok(uid_t uid, const char *name) {
+        struct passwd *p;
+        struct group *g;
+        const char *n;
+        Item *i;
+
+        /* Let's see if we already have assigned the UID a second time */
+        if (hashmap_get(todo_uids, UID_TO_PTR(uid)))
+                return 0;
+
+        /* Try to avoid using uids that are already used by a group
+         * that doesn't have the same name as our new user. */
+        i = hashmap_get(todo_gids, GID_TO_PTR(uid));
+        if (i && !streq(i->name, name))
+                return 0;
+
+        /* Let's check the files directly */
+        if (hashmap_contains(database_uid, UID_TO_PTR(uid)))
+                return 0;
+
+        n = hashmap_get(database_gid, GID_TO_PTR(uid));
+        if (n && !streq(n, name))
+                return 0;
+
+        /* Let's also check via NSS, to avoid UID clashes over LDAP and such, just in case */
+        if (!arg_root) {
+                errno = 0;
+                p = getpwuid(uid);
+                if (p)
+                        return 0;
+                if (!IN_SET(errno, 0, ENOENT))
+                        return -errno;
+
+                errno = 0;
+                g = getgrgid((gid_t) uid);
+                if (g) {
+                        if (!streq(g->gr_name, name))
+                                return 0;
+                } else if (!IN_SET(errno, 0, ENOENT))
+                        return -errno;
+        }
+
+        return 1;
+}
+
+static int root_stat(const char *p, struct stat *st) {
+        const char *fix;
+
+        fix = fix_root(p);
+        if (stat(fix, st) < 0)
+                return -errno;
+
+        return 0;
+}
+
+static int read_id_from_file(Item *i, uid_t *_uid, gid_t *_gid) {
+        struct stat st;
+        bool found_uid = false, found_gid = false;
+        uid_t uid;
+        gid_t gid;
+
+        assert(i);
+
+        /* First, try to get the gid directly */
+        if (_gid && i->gid_path && root_stat(i->gid_path, &st) >= 0) {
+                gid = st.st_gid;
+                found_gid = true;
+        }
+
+        /* Then, try to get the uid directly */
+        if ((_uid || (_gid && !found_gid))
+            && i->uid_path
+            && root_stat(i->uid_path, &st) >= 0) {
+
+                uid = st.st_uid;
+                found_uid = true;
+
+                /* If we need the gid, but had no success yet, also derive it from the uid path */
+                if (_gid && !found_gid) {
+                        gid = st.st_gid;
+                        found_gid = true;
+                }
+        }
+
+        /* If that didn't work yet, then let's reuse the gid as uid */
+        if (_uid && !found_uid && i->gid_path) {
+
+                if (found_gid) {
+                        uid = (uid_t) gid;
+                        found_uid = true;
+                } else if (root_stat(i->gid_path, &st) >= 0) {
+                        uid = (uid_t) st.st_gid;
+                        found_uid = true;
+                }
+        }
+
+        if (_uid) {
+                if (!found_uid)
+                        return 0;
+
+                *_uid = uid;
+        }
+
+        if (_gid) {
+                if (!found_gid)
+                        return 0;
+
+                *_gid = gid;
+        }
+
+        return 1;
+}
+
+static int add_user(Item *i) {
+        void *z;
+        int r;
+
+        assert(i);
+
+        /* Check the database directly */
+        z = hashmap_get(database_user, i->name);
+        if (z) {
+                log_debug("User %s already exists.", i->name);
+                i->uid = PTR_TO_UID(z);
+                i->uid_set = true;
+                return 0;
+        }
+
+        if (!arg_root) {
+                struct passwd *p;
+                struct spwd *sp;
+
+                /* Also check NSS */
+                errno = 0;
+                p = getpwnam(i->name);
+                if (p) {
+                        log_debug("User %s already exists.", i->name);
+                        i->uid = p->pw_uid;
+                        i->uid_set = true;
+
+                        free(i->description);
+                        i->description = strdup(p->pw_gecos);
+                        return 0;
+                }
+                if (!IN_SET(errno, 0, ENOENT)) {
+                        log_error("Failed to check if user %s already exists: %m", i->name);
+                        return -errno;
+                }
+
+                /* And shadow too, just to be sure */
+                errno = 0;
+                sp = getspnam(i->name);
+                if (sp) {
+                        log_error("User %s already exists in shadow database, but not in user database.", i->name);
+                        return -EBADMSG;
+                }
+                if (!IN_SET(errno, 0, ENOENT)) {
+                        log_error("Failed to check if user %s already exists in shadow database: %m", i->name);
+                        return -errno;
+                }
+        }
+
+        /* Try to use the suggested numeric uid */
+        if (i->uid_set) {
+                r = uid_is_ok(i->uid, i->name);
+                if (r < 0) {
+                        log_error("Failed to verify uid " UID_FMT ": %s", i->uid, strerror(-r));
+                        return r;
+                }
+                if (r == 0) {
+                        log_debug("Suggested user ID " UID_FMT " for %s already used.", i->uid, i->name);
+                        i->uid_set = false;
+                }
+        }
+
+        /* If that didn't work, try to read it from the specified path */
+        if (!i->uid_set) {
+                uid_t c;
+
+                if (read_id_from_file(i, &c, NULL) > 0) {
+
+                        if (c <= 0 || c > SYSTEM_UID_MAX)
+                                log_debug("User ID " UID_FMT " of file not suitable for %s.", c, i->name);
+                        else {
+                                r = uid_is_ok(c, i->name);
+                                if (r < 0) {
+                                        log_error("Failed to verify uid " UID_FMT ": %s", i->uid, strerror(-r));
+                                        return r;
+                                } else if (r > 0) {
+                                        i->uid = c;
+                                        i->uid_set = true;
+                                } else
+                                        log_debug("User ID " UID_FMT " of file for %s is already used.", c, i->name);
+                        }
+                }
+        }
+
+        /* Otherwise try to reuse the group ID */
+        if (!i->uid_set && i->gid_set) {
+                r = uid_is_ok((uid_t) i->gid, i->name);
+                if (r < 0) {
+                        log_error("Failed to verify uid " UID_FMT ": %s", i->uid, strerror(-r));
+                        return r;
+                }
+                if (r > 0) {
+                        i->uid = (uid_t) i->gid;
+                        i->uid_set = true;
+                }
+        }
+
+        /* And if that didn't work either, let's try to find a free one */
+        if (!i->uid_set) {
+                for (; search_uid > 0; search_uid--) {
+
+                        r = uid_is_ok(search_uid, i->name);
+                        if (r < 0) {
+                                log_error("Failed to verify uid " UID_FMT ": %s", i->uid, strerror(-r));
+                                return r;
+                        } else if (r > 0)
+                                break;
+                }
+
+                if (search_uid <= 0) {
+                        log_error("No free user ID available for %s.", i->name);
+                        return -E2BIG;
+                }
+
+                i->uid_set = true;
+                i->uid = search_uid;
+
+                search_uid--;
+        }
+
+        r = hashmap_ensure_allocated(&todo_uids, trivial_hash_func, trivial_compare_func);
+        if (r < 0)
+                return log_oom();
+
+        r = hashmap_put(todo_uids, UID_TO_PTR(i->uid), i);
+        if (r < 0)
+                return log_oom();
+
+        i->todo_user = true;
+        log_info("Creating user %s (%s) with uid " UID_FMT " and gid " GID_FMT ".", i->name, strna(i->description), i->uid, i->gid);
+
+        return 0;
+}
+
+static int gid_is_ok(gid_t gid) {
+        struct group *g;
+        struct passwd *p;
+
+        if (hashmap_get(todo_gids, GID_TO_PTR(gid)))
+                return 0;
+
+        /* Avoid reusing gids that are already used by a different user */
+        if (hashmap_get(todo_uids, UID_TO_PTR(gid)))
+                return 0;
+
+        if (hashmap_contains(database_gid, GID_TO_PTR(gid)))
+                return 0;
+
+        if (hashmap_contains(database_uid, UID_TO_PTR(gid)))
+                return 0;
+
+        if (!arg_root) {
+                errno = 0;
+                g = getgrgid(gid);
+                if (g)
+                        return 0;
+                if (!IN_SET(errno, 0, ENOENT))
+                        return -errno;
+
+                errno = 0;
+                p = getpwuid((uid_t) gid);
+                if (p)
+                        return 0;
+                if (!IN_SET(errno, 0, ENOENT))
+                        return -errno;
+        }
+
+        return 1;
+}
+
+static int add_group(Item *i) {
+        void *z;
+        int r;
+
+        assert(i);
+
+        /* Check the database directly */
+        z = hashmap_get(database_group, i->name);
+        if (z) {
+                log_debug("Group %s already exists.", i->name);
+                i->gid = PTR_TO_GID(z);
+                i->gid_set = true;
+                return 0;
+        }
+
+        /* Also check NSS */
+        if (!arg_root) {
+                struct group *g;
+
+                errno = 0;
+                g = getgrnam(i->name);
+                if (g) {
+                        log_debug("Group %s already exists.", i->name);
+                        i->gid = g->gr_gid;
+                        i->gid_set = true;
+                        return 0;
+                }
+                if (!IN_SET(errno, 0, ENOENT)) {
+                        log_error("Failed to check if group %s already exists: %m", i->name);
+                        return -errno;
+                }
+        }
+
+        /* Try to use the suggested numeric gid */
+        if (i->gid_set) {
+                r = gid_is_ok(i->gid);
+                if (r < 0) {
+                        log_error("Failed to verify gid " GID_FMT ": %s", i->gid, strerror(-r));
+                        return r;
+                }
+                if (r == 0) {
+                        log_debug("Suggested group ID " GID_FMT " for %s already used.", i->gid, i->name);
+                        i->gid_set = false;
+                }
+        }
+
+        /* Try to reuse the numeric uid, if there's one */
+        if (!i->gid_set && i->uid_set) {
+                r = gid_is_ok((gid_t) i->uid);
+                if (r < 0) {
+                        log_error("Failed to verify gid " GID_FMT ": %s", i->gid, strerror(-r));
+                        return r;
+                }
+                if (r > 0) {
+                        i->gid = (gid_t) i->uid;
+                        i->gid_set = true;
+                }
+        }
+
+        /* If that didn't work, try to read it from the specified path */
+        if (!i->gid_set) {
+                gid_t c;
+
+                if (read_id_from_file(i, NULL, &c) > 0) {
+
+                        if (c <= 0 || c > SYSTEM_GID_MAX)
+                                log_debug("Group ID " GID_FMT " of file not suitable for %s.", c, i->name);
+                        else {
+                                r = gid_is_ok(c);
+                                if (r < 0) {
+                                        log_error("Failed to verify gid " GID_FMT ": %s", i->gid, strerror(-r));
+                                        return r;
+                                } else if (r > 0) {
+                                        i->gid = c;
+                                        i->gid_set = true;
+                                } else
+                                        log_debug("Group ID " GID_FMT " of file for %s already used.", c, i->name);
+                        }
+                }
+        }
+
+        /* And if that didn't work either, let's try to find a free one */
+        if (!i->gid_set) {
+                for (; search_gid > 0; search_gid--) {
+                        r = gid_is_ok(search_gid);
+                        if (r < 0) {
+                                log_error("Failed to verify gid " GID_FMT ": %s", i->gid, strerror(-r));
+                                return r;
+                        } else if (r > 0)
+                                break;
+                }
+
+                if (search_gid <= 0) {
+                        log_error("No free group ID available for %s.", i->name);
+                        return -E2BIG;
+                }
+
+                i->gid_set = true;
+                i->gid = search_gid;
+
+                search_gid--;
+        }
+
+        r = hashmap_ensure_allocated(&todo_gids, trivial_hash_func, trivial_compare_func);
+        if (r < 0)
+                return log_oom();
+
+        r = hashmap_put(todo_gids, GID_TO_PTR(i->gid), i);
+        if (r < 0)
+                return log_oom();
+
+        i->todo_group = true;
+        log_info("Creating group %s with gid " GID_FMT ".", i->name, i->gid);
+
+        return 0;
+}
+
+static int process_item(Item *i) {
+        int r;
+
+        assert(i);
+
+        switch (i->type) {
+
+        case ADD_USER:
+                r = add_group(i);
+                if (r < 0)
+                        return r;
+
+                return add_user(i);
+
+        case ADD_GROUP: {
+                Item *j;
+
+                j = hashmap_get(users, i->name);
+                if (j) {
+                        /* There's already user to be created for this
+                         * name, let's process that in one step */
+
+                        if (i->gid_set) {
+                                j->gid = i->gid;
+                                j->gid_set = true;
+                        }
+
+                        if (i->gid_path) {
+                                free(j->gid_path);
+                                j->gid_path = strdup(i->gid_path);
+                                if (!j->gid_path)
+                                        return log_oom();
+                        }
+
+                        return 0;
+                }
+
+                return add_group(i);
+        }
+
+        default:
+                assert_not_reached("Unknown item type");
+        }
+}
+
+static void item_free(Item *i) {
+
+        if (!i)
+                return;
+
+        free(i->name);
+        free(i->uid_path);
+        free(i->gid_path);
+        free(i->description);
+        free(i);
+}
+
+DEFINE_TRIVIAL_CLEANUP_FUNC(Item*, item_free);
+
+static int add_implicit(void) {
+        char *g, **l;
+        Iterator iterator;
+        int r;
+
+        /* Implicitly create additional users and groups, if they were listed in "m" lines */
+
+        HASHMAP_FOREACH_KEY(l, g, members, iterator) {
+                Item *i;
+                char **m;
+
+                i = hashmap_get(groups, g);
+                if (!i) {
+                        _cleanup_(item_freep) Item *j = NULL;
+
+                        r = hashmap_ensure_allocated(&groups, string_hash_func, string_compare_func);
+                        if (r < 0)
+                                return log_oom();
+
+                        j = new0(Item, 1);
+                        if (!j)
+                                return log_oom();
+
+                        j->type = ADD_GROUP;
+                        j->name = strdup(g);
+                        if (!j->name)
+                                return log_oom();
+
+                        r = hashmap_put(groups, j->name, j);
+                        if (r < 0)
+                                return log_oom();
+
+                        log_debug("Adding implicit group '%s' due to m line", j->name);
+                        j = NULL;
+                }
+
+                STRV_FOREACH(m, l) {
+
+                        i = hashmap_get(users, *m);
+                        if (!i) {
+                                _cleanup_(item_freep) Item *j = NULL;
+
+                                r = hashmap_ensure_allocated(&users, string_hash_func, string_compare_func);
+                                if (r < 0)
+                                        return log_oom();
+
+                                j = new0(Item, 1);
+                                if (!j)
+                                        return log_oom();
+
+                                j->type = ADD_USER;
+                                j->name = strdup(*m);
+                                if (!j->name)
+                                        return log_oom();
+
+                                r = hashmap_put(users, j->name, j);
+                                if (r < 0)
+                                        return log_oom();
+
+                                log_debug("Adding implicit user '%s' due to m line", j->name);
+                                j = NULL;
+                        }
+                }
+        }
+
+        return 0;
+}
+
+static bool item_equal(Item *a, Item *b) {
+        assert(a);
+        assert(b);
+
+        if (a->type != b->type)
+                return false;
+
+        if (!streq_ptr(a->name, b->name))
+                return false;
+
+        if (!streq_ptr(a->uid_path, b->uid_path))
+                return false;
+
+        if (!streq_ptr(a->gid_path, b->gid_path))
+                return false;
+
+        if (!streq_ptr(a->description, b->description))
+                return false;
+
+        if (a->uid_set != b->uid_set)
+                return false;
+
+        if (a->uid_set && a->uid != b->uid)
+                return false;
+
+        if (a->gid_set != b->gid_set)
+                return false;
+
+        if (a->gid_set && a->gid != b->gid)
+                return false;
+
+        return true;
+}
+
+static bool valid_user_group_name(const char *u) {
+        const char *i;
+        long sz;
+
+        if (isempty(u) < 0)
+                return false;
+
+        if (!(u[0] >= 'a' && u[0] <= 'z') &&
+            !(u[0] >= 'A' && u[0] <= 'Z') &&
+            u[0] != '_')
+                return false;
+
+        for (i = u+1; *i; i++) {
+                if (!(*i >= 'a' && *i <= 'z') &&
+                    !(*i >= 'A' && *i <= 'Z') &&
+                    !(*i >= '0' && *i <= '9') &&
+                    *i != '_' &&
+                    *i != '-')
+                        return false;
+        }
+
+        sz = sysconf(_SC_LOGIN_NAME_MAX);
+        assert_se(sz > 0);
+
+        if ((size_t) (i-u) > (size_t) sz)
+                return false;
+
+        return true;
+}
+
+static bool valid_gecos(const char *d) {
+
+        if (!utf8_is_valid(d))
+                return false;
+
+        if (strpbrk(d, ":\n"))
+                return false;
+
+        return true;
+}
+
+static int parse_line(const char *fname, unsigned line, const char *buffer) {
+
+        static const Specifier specifier_table[] = {
+                { 'm', specifier_machine_id, NULL },
+                { 'b', specifier_boot_id, NULL },
+                { 'H', specifier_host_name, NULL },
+                { 'v', specifier_kernel_release, NULL },
+                {}
+        };
+
+        _cleanup_free_ char *action = NULL, *name = NULL, *id = NULL, *resolved_name = NULL;
+        _cleanup_(item_freep) Item *i = NULL;
+        Item *existing;
+        Hashmap *h;
+        int r, n = -1;
+
+        assert(fname);
+        assert(line >= 1);
+        assert(buffer);
+
+        r = sscanf(buffer,
+                   "%ms %ms %ms %n",
+                   &action,
+                   &name,
+                   &id,
+                   &n);
+        if (r < 2) {
+                log_error("[%s:%u] Syntax error.", fname, line);
+                return -EIO;
+        }
+
+        if (strlen(action) != 1) {
+                log_error("[%s:%u] Unknown modifier '%s'", fname, line, action);
+                return -EINVAL;
+        }
+
+        if (!IN_SET(action[0], ADD_USER, ADD_GROUP, ADD_MEMBER)) {
+                log_error("[%s:%u] Unknown command command type '%c'.", fname, line, action[0]);
+                return -EBADMSG;
+        }
+
+        r = specifier_printf(name, specifier_table, NULL, &resolved_name);
+        if (r < 0) {
+                log_error("[%s:%u] Failed to replace specifiers: %s", fname, line, name);
+                return r;
+        }
+
+        if (!valid_user_group_name(resolved_name)) {
+                log_error("[%s:%u] '%s' is not a valid user or group name.", fname, line, resolved_name);
+                return -EINVAL;
+        }
+
+        if (n >= 0) {
+                n += strspn(buffer+n, WHITESPACE);
+
+                if (STR_IN_SET(buffer + n, "", "-"))
+                        n = -1;
+        }
+
+        switch (action[0]) {
+
+        case ADD_MEMBER: {
+                _cleanup_free_ char *resolved_id = NULL;
+                char **l;
+
+                r = hashmap_ensure_allocated(&members, string_hash_func, string_compare_func);
+                if (r < 0)
+                        return log_oom();
+
+                /* Try to extend an existing member or group item */
+
+                if (!id || streq(id, "-")) {
+                        log_error("[%s:%u] Lines of type 'm' require a group name in the third field.", fname, line);
+                        return -EINVAL;
+                }
+
+                r = specifier_printf(id, specifier_table, NULL, &resolved_id);
+                if (r < 0) {
+                        log_error("[%s:%u] Failed to replace specifiers: %s", fname, line, name);
+                        return r;
+                }
+
+                if (!valid_user_group_name(resolved_id)) {
+                        log_error("[%s:%u] '%s' is not a valid user or group name.", fname, line, resolved_id);
+                        return -EINVAL;
+                }
+
+                if (n >= 0) {
+                        log_error("[%s:%u] Lines of type 'm' don't take a GECOS field.", fname, line);
+                        return -EINVAL;
+                }
+
+                l = hashmap_get(members, resolved_id);
+                if (l) {
+                        /* A list for this group name already exists, let's append to it */
+                        r = strv_push(&l, resolved_name);
+                        if (r < 0)
+                                return log_oom();
+
+                        resolved_name = NULL;
+
+                        assert_se(hashmap_update(members, resolved_id, l) >= 0);
+                } else {
+                        /* No list for this group name exists yet, create one */
+
+                        l = new0(char *, 2);
+                        if (!l)
+                                return -ENOMEM;
+
+                        l[0] = resolved_name;
+                        l[1] = NULL;
+
+                        r = hashmap_put(members, resolved_id, l);
+                        if (r < 0) {
+                                free(l);
+                                return log_oom();
+                        }
+
+                        resolved_id = resolved_name = NULL;
+                }
+
+                return 0;
+        }
+
+        case ADD_USER:
+                r = hashmap_ensure_allocated(&users, string_hash_func, string_compare_func);
+                if (r < 0)
+                        return log_oom();
+
+                i = new0(Item, 1);
+                if (!i)
+                        return log_oom();
+
+                if (id && !streq(id, "-")) {
+
+                        if (path_is_absolute(id)) {
+                                i->uid_path = strdup(id);
+                                if (!i->uid_path)
+                                        return log_oom();
+
+                                path_kill_slashes(i->uid_path);
+
+                        } else {
+                                r = parse_uid(id, &i->uid);
+                                if (r < 0) {
+                                        log_error("Failed to parse UID: %s", id);
+                                        return -EBADMSG;
+                                }
+
+                                i->uid_set = true;
+                        }
+                }
+
+                if (n >= 0) {
+                        i->description = unquote(buffer+n, "\"");
+                        if (!i->description)
+                                return log_oom();
+
+                        if (!valid_gecos(i->description)) {
+                                log_error("[%s:%u] '%s' is not a valid GECOS field.", fname, line, i->description);
+                                return -EINVAL;
+                        }
+                }
+
+                h = users;
+                break;
+
+        case ADD_GROUP:
+                r = hashmap_ensure_allocated(&groups, string_hash_func, string_compare_func);
+                if (r < 0)
+                        return log_oom();
+
+                if (n >= 0) {
+                        log_error("[%s:%u] Lines of type 'g' don't take a GECOS field.", fname, line);
+                        return -EINVAL;
+                }
+
+                i = new0(Item, 1);
+                if (!i)
+                        return log_oom();
+
+                if (id && !streq(id, "-")) {
+
+                        if (path_is_absolute(id)) {
+                                i->gid_path = strdup(id);
+                                if (!i->gid_path)
+                                        return log_oom();
+
+                                path_kill_slashes(i->gid_path);
+                        } else {
+                                r = parse_gid(id, &i->gid);
+                                if (r < 0) {
+                                        log_error("Failed to parse GID: %s", id);
+                                        return -EBADMSG;
+                                }
+
+                                i->gid_set = true;
+                        }
+                }
+
+
+                h = groups;
+                break;
+        }
+
+        i->type = action[0];
+        i->name = resolved_name;
+        resolved_name = NULL;
+
+        existing = hashmap_get(h, i->name);
+        if (existing) {
+
+                /* Two identical items are fine */
+                if (!item_equal(existing, i))
+                        log_warning("Two or more conflicting lines for %s configured, ignoring.", i->name);
+
+                return 0;
+        }
+
+        r = hashmap_put(h, i->name, i);
+        if (r < 0)
+                return log_oom();
+
+        i = NULL;
+        return 0;
+}
+
+static int read_config_file(const char *fn, bool ignore_enoent) {
+        _cleanup_fclose_ FILE *f = NULL;
+        char line[LINE_MAX];
+        unsigned v = 0;
+        int r;
+
+        assert(fn);
+
+        r = search_and_fopen_nulstr(fn, "re", arg_root, conf_file_dirs, &f);
+        if (r < 0) {
+                if (ignore_enoent && r == -ENOENT)
+                        return 0;
+
+                log_error("Failed to open '%s', ignoring: %s", fn, strerror(-r));
+                return r;
+        }
+
+        FOREACH_LINE(line, f, break) {
+                char *l;
+                int k;
+
+                v++;
+
+                l = strstrip(line);
+                if (*l == '#' || *l == 0)
+                        continue;
+
+                k = parse_line(fn, v, l);
+                if (k < 0 && r == 0)
+                        r = k;
+        }
+
+        if (ferror(f)) {
+                log_error("Failed to read from file %s: %m", fn);
+                if (r == 0)
+                        r = -EIO;
+        }
+
+        return r;
+}
+
+static int take_lock(void) {
+
+        struct flock flock = {
+                .l_type = F_WRLCK,
+                .l_whence = SEEK_SET,
+                .l_start = 0,
+                .l_len = 0,
+        };
+
+        const char *path;
+        int fd, r;
+
+        /* This is roughly the same as lckpwdf(), but not as awful. We
+         * don't want to use alarm() and signals, hence we implement
+         * our own trivial version of this.
+         *
+         * Note that shadow-utils also takes per-database locks in
+         * addition to lckpwdf(). However, we don't given that they
+         * are redundant as they they invoke lckpwdf() first and keep
+         * it during everything they do. The per-database locks are
+         * awfully racy, and thus we just won't do them. */
+
+        path = fix_root("/etc/.pwd.lock");
+        fd = open(path, O_WRONLY|O_CREAT|O_CLOEXEC|O_NOCTTY|O_NOFOLLOW, 0600);
+        if (fd < 0)
+                return -errno;
+
+        r = fcntl(fd, F_SETLKW, &flock);
+        if (r < 0) {
+                safe_close(fd);
+                return -errno;
+        }
+
+        return fd;
+}
+
+static void free_database(Hashmap *by_name, Hashmap *by_id) {
+        char *name;
+
+        for (;;) {
+                name = hashmap_first(by_id);
+                if (!name)
+                        break;
+
+                hashmap_remove(by_name, name);
+
+                hashmap_steal_first_key(by_id);
+                free(name);
+        }
+
+        while ((name = hashmap_steal_first_key(by_name)))
+                free(name);
+
+        hashmap_free(by_name);
+        hashmap_free(by_id);
+}
+
+static int help(void) {
+
+        printf("%s [OPTIONS...] [CONFIGURATION FILE...]\n\n"
+               "Creates system user accounts.\n\n"
+               "  -h --help                 Show this help\n"
+               "     --version              Show package version\n"
+               "     --root=PATH            Operate on an alternate filesystem root\n",
+               program_invocation_short_name);
+
+        return 0;
+}
+
+static int parse_argv(int argc, char *argv[]) {
+
+        enum {
+                ARG_VERSION = 0x100,
+                ARG_ROOT,
+        };
+
+        static const struct option options[] = {
+                { "help",    no_argument,       NULL, 'h'         },
+                { "version", no_argument,       NULL, ARG_VERSION },
+                { "root",    required_argument, NULL, ARG_ROOT    },
+                {}
+        };
+
+        int c;
+
+        assert(argc >= 0);
+        assert(argv);
+
+        while ((c = getopt_long(argc, argv, "h", options, NULL)) >= 0) {
+
+                switch (c) {
+
+                case 'h':
+                        return help();
+
+                case ARG_VERSION:
+                        puts(PACKAGE_STRING);
+                        puts(SYSTEMD_FEATURES);
+                        return 0;
+
+                case ARG_ROOT:
+                        free(arg_root);
+                        arg_root = path_make_absolute_cwd(optarg);
+                        if (!arg_root)
+                                return log_oom();
+
+                        path_kill_slashes(arg_root);
+                        break;
+
+                case '?':
+                        return -EINVAL;
+
+                default:
+                        assert_not_reached("Unhandled option");
+                }
+        }
+
+        return 1;
+}
+
+int main(int argc, char *argv[]) {
+
+        _cleanup_close_ int lock = -1;
+        Iterator iterator;
+        int r, k;
+        Item *i;
+        char *n;
+
+        r = parse_argv(argc, argv);
+        if (r <= 0)
+                goto finish;
+
+        log_set_target(LOG_TARGET_AUTO);
+        log_parse_environment();
+        log_open();
+
+        umask(0022);
+
+        r = 0;
+
+        if (optind < argc) {
+                int j;
+
+                for (j = optind; j < argc; j++) {
+                        k = read_config_file(argv[j], false);
+                        if (k < 0 && r == 0)
+                                r = k;
+                }
+        } else {
+                _cleanup_strv_free_ char **files = NULL;
+                char **f;
+
+                r = conf_files_list_nulstr(&files, ".conf", arg_root, conf_file_dirs);
+                if (r < 0) {
+                        log_error("Failed to enumerate sysusers.d files: %s", strerror(-r));
+                        goto finish;
+                }
+
+                STRV_FOREACH(f, files) {
+                        k = read_config_file(*f, true);
+                        if (k < 0 && r == 0)
+                                r = k;
+                }
+        }
+
+        r = add_implicit();
+        if (r < 0)
+                goto finish;
+
+        lock = take_lock();
+        if (lock < 0) {
+                log_error("Failed to take lock: %s", strerror(-lock));
+                goto finish;
+        }
+
+        r = load_user_database();
+        if (r < 0) {
+                log_error("Failed to load user database: %s", strerror(-r));
+                goto finish;
+        }
+
+        r = load_group_database();
+        if (r < 0) {
+                log_error("Failed to read group database: %s", strerror(-r));
+                goto finish;
+        }
+
+        HASHMAP_FOREACH(i, groups, iterator)
+                process_item(i);
+
+        HASHMAP_FOREACH(i, users, iterator)
+                process_item(i);
+
+        r = write_files();
+        if (r < 0)
+                log_error("Failed to write files: %s", strerror(-r));
+
+finish:
+        while ((i = hashmap_steal_first(groups)))
+                item_free(i);
+
+        while ((i = hashmap_steal_first(users)))
+                item_free(i);
+
+        while ((n = hashmap_first_key(members))) {
+                strv_free(hashmap_steal_first(members));
+                free(n);
+        }
+
+        hashmap_free(groups);
+        hashmap_free(users);
+        hashmap_free(members);
+        hashmap_free(todo_uids);
+        hashmap_free(todo_gids);
+
+        free_database(database_user, database_uid);
+        free_database(database_group, database_gid);
+
+        free(arg_root);
+
+        return r < 0 ? EXIT_FAILURE : EXIT_SUCCESS;
+}
index 0b8d8f73ddec2915f35f2702a95326faec507f19..52062793844ae192ebe6e8bbe56dc6b18a915a33 100644 (file)
@@ -78,6 +78,7 @@ typedef struct SysvStub {
         char **before;
         char **after;
         char **wants;
+        char **wanted_by;
         char **conflicts;
         bool has_lsb;
         bool reload;
@@ -118,6 +119,7 @@ static int generate_unit_file(SysvStub *s) {
         _cleanup_fclose_ FILE *f = NULL;
         _cleanup_free_ char *before = NULL;
         _cleanup_free_ char *after = NULL;
+        _cleanup_free_ char *wants = NULL;
         _cleanup_free_ char *conflicts = NULL;
         int r;
 
@@ -129,6 +131,10 @@ static int generate_unit_file(SysvStub *s) {
         if (!after)
                 return log_oom();
 
+        wants = strv_join(s->wants, " ");
+        if (!wants)
+                return log_oom();
+
         conflicts = strv_join(s->conflicts, " ");
         if (!conflicts)
                 return log_oom();
@@ -154,6 +160,8 @@ static int generate_unit_file(SysvStub *s) {
                 fprintf(f, "Before=%s\n", before);
         if (!isempty(after))
                 fprintf(f, "After=%s\n", after);
+        if (!isempty(wants))
+                fprintf(f, "Wants=%s\n", wants);
         if (!isempty(conflicts))
                 fprintf(f, "Conflicts=%s\n", conflicts);
 
@@ -172,7 +180,7 @@ static int generate_unit_file(SysvStub *s) {
                 fprintf(f, "SysVStartPriority=%d\n", s->sysv_start_priority);
 
         if (s->pid_file)
-                fprintf(f, "PidFile=%s\n", s->pid_file);
+                fprintf(f, "PIDFile=%s\n", s->pid_file);
 
         fprintf(f,
                 "ExecStart=%s start\n"
@@ -182,7 +190,7 @@ static int generate_unit_file(SysvStub *s) {
         if (s->reload)
                 fprintf(f, "ExecReload=%s reload\n", s->path);
 
-        STRV_FOREACH(p, s->wants) {
+        STRV_FOREACH(p, s->wanted_by) {
                 r = add_symlink(s->name, *p);
                 if (r < 0)
                         log_error_unit(s->name, "Failed to create 'Wants' symlink to %s: %s", *p, strerror(-r));
@@ -791,7 +799,7 @@ static int set_dependencies_from_rcnd(LookupPaths lp, Hashmap *all_services) {
                                 if (hashmap_contains(all_services, name))
                                         service = hashmap_get(all_services, name);
                                 else {
-                                        log_warning("Could not find init scirpt for %s", name);
+                                        log_warning("Could not find init script for %s", name);
                                         continue;
                                 }
 
@@ -832,7 +840,7 @@ static int set_dependencies_from_rcnd(LookupPaths lp, Hashmap *all_services) {
                         r = strv_extend(&service->before, rcnd_table[i].target);
                         if (r < 0)
                                 return log_oom();
-                        r = strv_extend(&service->wants, rcnd_table[i].target);
+                        r = strv_extend(&service->wanted_by, rcnd_table[i].target);
                         if (r < 0)
                                 return log_oom();
                 }
index 7e171c7bbc3d8ab75e1f704da2bf3b8038b4a98f..24217ad3693e8fb30a5172610420b0e9f618d647 100644 (file)
@@ -48,5 +48,8 @@ int main(int argc, char *argv[]) {
         assert_se(a >= 0);
 
         log_info("native architecture=%s", architecture_to_string(a));
+
+        log_info("primary library architecture=" LIB_ARCH_TUPLE);
+
         return 0;
 }
diff --git a/src/test/test-async.c b/src/test/test-async.c
new file mode 100644 (file)
index 0000000..c1c535b
--- /dev/null
@@ -0,0 +1,50 @@
+/***
+  This file is part of systemd
+
+  Copyright 2014 Ronny Chevalier
+
+  systemd is free software; you can redistribute it and/or modify it
+  under the terms of the GNU Lesser General Public License as published by
+  the Free Software Foundation; either version 2.1 of the License, or
+  (at your option) any later version.
+
+  systemd is distributed in the hope that it will be useful, but
+  WITHOUT ANY WARRANTY; without even the implied warranty of
+  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+  Lesser General Public License for more details.
+
+  You should have received a copy of the GNU Lesser General Public License
+  along with systemd; If not, see <http://www.gnu.org/licenses/>.
+***/
+
+#include <unistd.h>
+
+#include "async.h"
+#include "util.h"
+#include "macro.h"
+
+static bool test_async = false;
+
+static void *async_func(void *arg) {
+        test_async = true;
+
+        return NULL;
+}
+
+int main(int argc, char *argv[]) {
+        int fd;
+        char name[] = "/tmp/test-asynchronous_close.XXXXXX";
+
+        fd = mkostemp_safe(name, O_RDWR|O_CLOEXEC);
+        assert_se(fd >= 0);
+        asynchronous_close(fd);
+        assert_se(asynchronous_job(async_func, NULL) >= 0);
+        assert_se(asynchronous_sync() >= 0);
+
+        sleep(1);
+
+        assert_se(fcntl(fd, F_GETFD) == -1);
+        assert_se(test_async);
+
+        return 0;
+}
diff --git a/src/test/test-capability.c b/src/test/test-capability.c
new file mode 100644 (file)
index 0000000..a362fc6
--- /dev/null
@@ -0,0 +1,161 @@
+/***
+  This file is part of systemd
+
+  Copyright 2014 Ronny Chevalier
+
+  systemd is free software; you can redistribute it and/or modify it
+  under the terms of the GNU Lesser General Public License as published by
+  the Free Software Foundation; either version 2.1 of the License, or
+  (at your option) any later version.
+
+  systemd is distributed in the hope that it will be useful, but
+  WITHOUT ANY WARRANTY; without even the implied warranty of
+  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+  Lesser General Public License for more details.
+
+  You should have received a copy of the GNU Lesser General Public License
+  along with systemd; If not, see <http://www.gnu.org/licenses/>.
+***/
+
+#include <sys/types.h>
+#include <sys/wait.h>
+#include <sys/capability.h>
+#include <sys/socket.h>
+#include <netinet/in.h>
+#include <pwd.h>
+#include <unistd.h>
+
+#include "capability.h"
+#include "util.h"
+#include "macro.h"
+
+static uid_t test_uid = -1;
+static gid_t test_gid = -1;
+// We keep CAP_DAC_OVERRIDE to avoid errors with gcov when doing test coverage
+static uint64_t test_flags = 1ULL << CAP_DAC_OVERRIDE;
+
+static void fork_test(void (*test_func)(void)) {
+        pid_t pid = 0;
+
+        pid = fork();
+        assert_se(pid >= 0);
+        if (pid == 0) {
+                test_func();
+                exit(0);
+        } else if (pid > 0) {
+                int status;
+
+                assert_se(waitpid(pid, &status, 0) > 0);
+                assert_se(WIFEXITED(status) && WEXITSTATUS(status) == 0);
+        }
+}
+
+static void show_capabilities(void) {
+        cap_t caps;
+        char *text;
+
+        caps = cap_get_proc();
+        assert_se(caps);
+
+        text = cap_to_text(caps, NULL);
+        assert_se(text);
+
+        log_info("Capabilities:%s", text);
+        cap_free(caps);
+        cap_free(text);
+}
+
+static int setup_tests(void) {
+        struct passwd *nobody;
+
+        nobody = getpwnam("nobody");
+        if (!nobody) {
+                log_error("Could not find nobody user: %m");
+                return -EXIT_TEST_SKIP;
+        }
+        test_uid = nobody->pw_uid;
+        test_gid = nobody->pw_gid;
+
+        return 0;
+}
+
+static void test_drop_privileges_keep_net_raw(void) {
+        int sock;
+
+        sock = socket(AF_INET, SOCK_RAW, IPPROTO_UDP);
+        assert_se(sock >= 0);
+        safe_close(sock);
+
+        assert_se(drop_privileges(test_uid, test_gid, test_flags | (1ULL << CAP_NET_RAW)) >= 0);
+        assert_se(getuid() == test_uid);
+        assert_se(getgid() == test_gid);
+        show_capabilities();
+
+        sock = socket(AF_INET, SOCK_RAW, IPPROTO_UDP);
+        assert_se(sock >= 0);
+        safe_close(sock);
+}
+
+static void test_drop_privileges_dontkeep_net_raw(void) {
+        int sock;
+
+        sock = socket(AF_INET, SOCK_RAW, IPPROTO_UDP);
+        assert_se(sock >= 0);
+        safe_close(sock);
+
+        assert_se(drop_privileges(test_uid, test_gid, test_flags) >= 0);
+        assert_se(getuid() == test_uid);
+        assert_se(getgid() == test_gid);
+        show_capabilities();
+
+        sock = socket(AF_INET, SOCK_RAW, IPPROTO_UDP);
+        assert_se(sock < 0);
+}
+
+static void test_drop_privileges_fail(void) {
+        assert_se(drop_privileges(test_uid, test_gid, test_flags) >= 0);
+        assert_se(getuid() == test_uid);
+        assert_se(getgid() == test_gid);
+
+        assert_se(drop_privileges(test_uid, test_gid, test_flags) < 0);
+        assert_se(drop_privileges(0, 0, test_flags) < 0);
+}
+
+static void test_drop_privileges(void) {
+        fork_test(test_drop_privileges_keep_net_raw);
+        fork_test(test_drop_privileges_dontkeep_net_raw);
+        fork_test(test_drop_privileges_fail);
+}
+
+static void test_have_effective_cap(void) {
+        assert_se(have_effective_cap(CAP_KILL));
+        assert_se(have_effective_cap(CAP_CHOWN));
+
+        assert_se(drop_privileges(test_uid, test_gid, test_flags | (1ULL << CAP_KILL)) >= 0);
+        assert_se(getuid() == test_uid);
+        assert_se(getgid() == test_gid);
+
+        assert_se(have_effective_cap(CAP_KILL));
+        assert_se(!have_effective_cap(CAP_CHOWN));
+}
+
+int main(int argc, char *argv[]) {
+        int r;
+
+        log_parse_environment();
+        log_open();
+
+        if (getuid() != 0)
+                return EXIT_TEST_SKIP;
+
+        r = setup_tests();
+        if (r < 0)
+                return -r;
+
+        show_capabilities();
+
+        test_drop_privileges();
+        fork_test(test_have_effective_cap);
+
+        return 0;
+}
diff --git a/src/test/test-conf-files.c b/src/test/test-conf-files.c
new file mode 100644 (file)
index 0000000..e801c59
--- /dev/null
@@ -0,0 +1,84 @@
+/*-*- Mode: C; c-basic-offset: 8; indent-tabs-mode: nil -*-*/
+
+/***
+  This file is part of systemd.
+
+  Copyright 2014 Michael Marineau
+
+  systemd is free software; you can redistribute it and/or modify it
+  under the terms of the GNU Lesser General Public License as published by
+  the Free Software Foundation; either version 2.1 of the License, or
+  (at your option) any later version.
+
+  systemd is distributed in the hope that it will be useful, but
+  WITHOUT ANY WARRANTY; without even the implied warranty of
+  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+  Lesser General Public License for more details.
+
+  You should have received a copy of the GNU Lesser General Public License
+  along with systemd; If not, see <http://www.gnu.org/licenses/>.
+***/
+
+#include <stdio.h>
+#include <stdarg.h>
+
+#include "conf-files.h"
+#include "macro.h"
+#include "strv.h"
+#include "util.h"
+
+
+static void setup_test_dir(char *tmp_dir, const char *files, ...) {
+        va_list ap;
+
+        assert_se(mkdtemp(tmp_dir) != NULL);
+
+        va_start(ap, files);
+        while (files != NULL) {
+                _cleanup_free_ char *path = strappend(tmp_dir, files);
+                assert_se(touch_file(path, true, (usec_t) -1, (uid_t) -1, (gid_t) -1, 0) == 0);
+                files = va_arg(ap, const char *);
+        }
+        va_end(ap);
+}
+
+static void test_conf_files_list(bool use_root) {
+        char tmp_dir[] = "/tmp/test-conf-files-XXXXXX";
+        _cleanup_strv_free_ char **found_files = NULL;
+        const char *root_dir, *search_1, *search_2, *expect_a, *expect_b;
+
+        setup_test_dir(tmp_dir,
+                       "/dir1/a.conf",
+                       "/dir2/a.conf",
+                       "/dir2/b.conf",
+                       NULL);
+
+        if (use_root) {
+                root_dir = tmp_dir;
+                search_1 = "/dir1";
+                search_2 = "/dir2";
+        } else {
+                root_dir = NULL;
+                search_1 = strappenda(tmp_dir, "/dir1");
+                search_2 = strappenda(tmp_dir, "/dir2");
+        }
+
+        expect_a = strappenda(tmp_dir, "/dir1/a.conf");
+        expect_b = strappenda(tmp_dir, "/dir2/b.conf");
+
+        assert_se(conf_files_list(&found_files, ".conf", root_dir, search_1, search_2, NULL) == 0);
+        strv_print(found_files);
+
+        assert_se(found_files);
+        assert_se(streq_ptr(found_files[0], expect_a));
+        assert_se(streq_ptr(found_files[1], expect_b));
+        assert_se(found_files[2] == NULL);
+
+        assert_se(rm_rf_dangerous(tmp_dir, false, true, false) == 0);
+}
+
+int main(int argc, char **argv) {
+        test_conf_files_list(false);
+        test_conf_files_list(true);
+        return 0;
+}
diff --git a/src/test/test-fdset.c b/src/test/test-fdset.c
new file mode 100644 (file)
index 0000000..3b77415
--- /dev/null
@@ -0,0 +1,137 @@
+/***
+  This file is part of systemd
+
+  Copyright 2014 Ronny Chevalier
+
+  systemd is free software; you can redistribute it and/or modify it
+  under the terms of the GNU Lesser General Public License as published by
+  the Free Software Foundation; either version 2.1 of the License, or
+  (at your option) any later version.
+
+  systemd is distributed in the hope that it will be useful, but
+  WITHOUT ANY WARRANTY; without even the implied warranty of
+  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+  Lesser General Public License for more details.
+
+  You should have received a copy of the GNU Lesser General Public License
+  along with systemd; If not, see <http://www.gnu.org/licenses/>.
+***/
+
+#include <fcntl.h>
+#include <unistd.h>
+
+#include "fdset.h"
+#include "util.h"
+#include "macro.h"
+
+static void test_fdset_new_fill(void) {
+        int fd = -1;
+        _cleanup_fdset_free_ FDSet *fdset = NULL;
+        char name[] = "/tmp/test-fdset_new_fill.XXXXXX";
+
+        fd = mkostemp_safe(name, O_RDWR|O_CLOEXEC);
+        assert_se(fd >= 0);
+        assert_se(fdset_new_fill(&fdset) >= 0);
+        assert_se(fdset_contains(fdset, fd));
+
+        unlink(name);
+}
+
+static void test_fdset_put_dup(void) {
+        _cleanup_close_ int fd = -1;
+        int copyfd = -1;
+        _cleanup_fdset_free_ FDSet *fdset = NULL;
+        char name[] = "/tmp/test-fdset_put_dup.XXXXXX";
+
+        fd = mkostemp_safe(name, O_RDWR|O_CLOEXEC);
+        assert_se(fd >= 0);
+
+        fdset = fdset_new();
+        assert_se(fdset);
+        copyfd = fdset_put_dup(fdset, fd);
+        assert_se(copyfd >= 0 && copyfd != fd);
+        assert_se(fdset_contains(fdset, copyfd));
+        assert_se(!fdset_contains(fdset, fd));
+
+        unlink(name);
+}
+
+static void test_fdset_cloexec(void) {
+        int fd = -1;
+        _cleanup_fdset_free_ FDSet *fdset = NULL;
+        int flags = -1;
+        char name[] = "/tmp/test-fdset_cloexec.XXXXXX";
+
+        fd = mkostemp_safe(name, O_RDWR|O_CLOEXEC);
+        assert_se(fd >= 0);
+
+        fdset = fdset_new();
+        assert_se(fdset);
+        assert_se(fdset_put(fdset, fd));
+
+        assert_se(fdset_cloexec(fdset, false) >= 0);
+        flags = fcntl(fd, F_GETFD);
+        assert_se(flags >= 0);
+        assert_se(!(flags & FD_CLOEXEC));
+
+        assert_se(fdset_cloexec(fdset, true) >= 0);
+        flags = fcntl(fd, F_GETFD);
+        assert_se(flags >= 0);
+        assert_se(flags & FD_CLOEXEC);
+
+        unlink(name);
+}
+
+static void test_fdset_close_others(void) {
+        int fd = -1;
+        int copyfd = -1;
+        _cleanup_fdset_free_ FDSet *fdset = NULL;
+        int flags = -1;
+        char name[] = "/tmp/test-fdset_close_others.XXXXXX";
+
+        fd = mkostemp_safe(name, O_RDWR|O_CLOEXEC);
+        assert_se(fd >= 0);
+
+        fdset = fdset_new();
+        assert_se(fdset);
+        copyfd = fdset_put_dup(fdset, fd);
+        assert_se(copyfd >= 0);
+
+        assert_se(fdset_close_others(fdset) >= 0);
+        flags = fcntl(fd, F_GETFD);
+        assert_se(flags < 0);
+        flags = fcntl(copyfd, F_GETFD);
+        assert_se(flags >= 0);
+
+        unlink(name);
+}
+
+static void test_fdset_remove(void) {
+        _cleanup_close_ int fd = -1;
+        FDSet *fdset = NULL;
+        char name[] = "/tmp/test-fdset_remove.XXXXXX";
+
+        fd = mkostemp_safe(name, O_RDWR|O_CLOEXEC);
+        assert_se(fd >= 0);
+
+        fdset = fdset_new();
+        assert_se(fdset);
+        assert_se(fdset_put(fdset, fd) >= 0);
+        assert_se(fdset_remove(fdset, fd) >= 0);
+        assert_se(!fdset_contains(fdset, fd));
+        fdset_free(fdset);
+
+        assert_se(fcntl(fd, F_GETFD) >= 0);
+
+        unlink(name);
+}
+
+int main(int argc, char *argv[]) {
+        test_fdset_new_fill();
+        test_fdset_put_dup();
+        test_fdset_cloexec();
+        test_fdset_close_others();
+        test_fdset_remove();
+
+        return 0;
+}
index 47a0907f9059a35227a12cb57c1b7c0e57dda85b..1de59fa573634d361341956fc4a24358fbac2b43 100644 (file)
@@ -72,7 +72,7 @@ static void test_parse_env_file(void) {
         fflush(f);
         fclose(f);
 
-        r = load_env_file(t, NULL, &a);
+        r = load_env_file(NULL, t, NULL, &a);
         assert_se(r >= 0);
 
         STRV_FOREACH(i, a)
@@ -139,7 +139,7 @@ static void test_parse_env_file(void) {
         r = write_env_file(p, a);
         assert_se(r >= 0);
 
-        r = load_env_file(p, NULL, &b);
+        r = load_env_file(NULL, p, NULL, &b);
         assert_se(r >= 0);
 
         unlink(t);
@@ -179,7 +179,7 @@ static void test_parse_multiline_env_file(void) {
         fflush(f);
         fclose(f);
 
-        r = load_env_file(t, NULL, &a);
+        r = load_env_file(NULL, t, NULL, &a);
         assert_se(r >= 0);
 
         STRV_FOREACH(i, a)
@@ -193,7 +193,7 @@ static void test_parse_multiline_env_file(void) {
         r = write_env_file(p, a);
         assert_se(r >= 0);
 
-        r = load_env_file(p, NULL, &b);
+        r = load_env_file(NULL, p, NULL, &b);
         assert_se(r >= 0);
 
         unlink(t);
index 56a9b58c24d355cb90cba96769b4ceb040f21060..ccef61f55c1bb4ca9e75e6b56da873f65d470cd9 100644 (file)
@@ -231,6 +231,32 @@ static void test_hashmap_put(void) {
         hashmap_free(m);
 }
 
+static void test_hashmap_remove_and_put(void) {
+        _cleanup_hashmap_free_ Hashmap *m = NULL;
+        int valid;
+        char *r;
+
+        m = hashmap_new(string_hash_func, string_compare_func);
+        assert_se(m);
+
+        valid = hashmap_remove_and_put(m, "unvalid key", "new key", NULL);
+        assert_se(valid < 0);
+
+        valid = hashmap_put(m, "key 1", (void*) (const char *) "val 1");
+        assert_se(valid == 1);
+        valid = hashmap_remove_and_put(m, "key 1", "key 2", (void*) (const char *) "val 2");
+        assert_se(valid == 0);
+
+        r = hashmap_get(m, "key 2");
+        assert_se(streq(r, "val 2"));
+        assert_se(!hashmap_get(m, "key 1"));
+
+        valid = hashmap_put(m, "key 3", (void*) (const char *) "val 3");
+        assert_se(valid == 1);
+        valid = hashmap_remove_and_put(m, "key 3", "key 2", (void*) (const char *) "val 2");
+        assert_se(valid < 0);
+}
+
 static void test_hashmap_ensure_allocated(void) {
         Hashmap *m;
         int valid_hashmap;
@@ -491,6 +517,63 @@ static void test_hashmap_many(void) {
         hashmap_free(h);
 }
 
+static void test_hashmap_first_key(void) {
+        _cleanup_hashmap_free_ Hashmap *m = NULL;
+
+        m = hashmap_new(string_hash_func, string_compare_func);
+        assert_se(m);
+
+        assert_se(!hashmap_first_key(m));
+        assert_se(hashmap_put(m, "key 1", NULL) == 1);
+        assert_se(streq(hashmap_first_key(m), "key 1"));
+        assert_se(hashmap_put(m, "key 2", NULL) == 1);
+        assert_se(streq(hashmap_first_key(m), "key 1"));
+        assert_se(hashmap_remove(m, "key 1") == NULL);
+        assert_se(streq(hashmap_first_key(m), "key 2"));
+}
+
+static void test_hashmap_last(void) {
+        _cleanup_hashmap_free_ Hashmap *m = NULL;
+
+        m = hashmap_new(string_hash_func, string_compare_func);
+        assert_se(m);
+
+        assert_se(!hashmap_last(m));
+        assert_se(hashmap_put(m, "key 1", (void *) (const char *) "val 1") == 1);
+        assert_se(streq(hashmap_last(m), "val 1"));
+        assert_se(hashmap_put(m, "key 2", (void *) (const char *) "bar") == 1);
+        assert_se(streq(hashmap_last(m), "bar"));
+        assert_se(hashmap_remove(m, "key 2"));
+        assert_se(streq(hashmap_last(m), "val 1"));
+}
+
+static void test_hashmap_steal_first_key(void) {
+        _cleanup_hashmap_free_ Hashmap *m = NULL;
+
+        m = hashmap_new(string_hash_func, string_compare_func);
+        assert_se(m);
+
+        assert_se(!hashmap_steal_first_key(m));
+        assert_se(hashmap_put(m, "key 1", NULL) == 1);
+        assert_se(streq(hashmap_steal_first_key(m), "key 1"));
+
+        assert_se(hashmap_isempty(m));
+}
+
+static void test_hashmap_clear_free_free(void) {
+        _cleanup_hashmap_free_ Hashmap *m = NULL;
+
+        m = hashmap_new(string_hash_func, string_compare_func);
+        assert_se(m);
+
+        assert_se(hashmap_put(m, strdup("key 1"), NULL) == 1);
+        assert_se(hashmap_put(m, strdup("key 2"), NULL) == 1);
+        assert_se(hashmap_put(m, strdup("key 3"), NULL) == 1);
+
+        hashmap_clear_free_free(m);
+        assert_se(hashmap_isempty(m));
+}
+
 static void test_uint64_compare_func(void) {
         const uint64_t a = 0x100, b = 0x101;
 
@@ -518,6 +601,7 @@ int main(int argc, const char *argv[]) {
         test_hashmap_replace();
         test_hashmap_update();
         test_hashmap_put();
+        test_hashmap_remove_and_put();
         test_hashmap_ensure_allocated();
         test_hashmap_foreach();
         test_hashmap_foreach_backwards();
@@ -528,6 +612,10 @@ int main(int argc, const char *argv[]) {
         test_hashmap_get();
         test_hashmap_size();
         test_hashmap_many();
+        test_hashmap_first_key();
+        test_hashmap_last();
+        test_hashmap_steal_first_key();
+        test_hashmap_clear_free_free();
         test_uint64_compare_func();
         test_trivial_compare_func();
         test_string_compare_func();
index 2087d5299436dafb9d698df853c7e859aa6d0755..099eb401d7e55301af642526ff7faa23e3d1f164 100644 (file)
@@ -253,7 +253,7 @@ int main(int argc, char* argv[]) {
         changes = NULL;
         n_changes = 0;
 
-        r = unit_file_preset(UNIT_FILE_SYSTEM, false, NULL, (char**) files, false, &changes, &n_changes);
+        r = unit_file_preset(UNIT_FILE_SYSTEM, false, NULL, (char**) files, UNIT_FILE_PRESET_FULL, false, &changes, &n_changes);
         assert_se(r >= 0);
 
         dump_changes(changes, n_changes);
index 9f8ae4dee1ea5e3f1570e23b8232a218c6c1c251..19462c357183cd3563916a63d997aea18fb341e5 100644 (file)
 ***/
 
 #include <stdio.h>
+#include <unistd.h>
 
 #include "path-util.h"
 #include "util.h"
 #include "macro.h"
+#include "strv.h"
 
 
 static void test_path(void) {
@@ -56,7 +58,7 @@ static void test_path(void) {
         assert_se(streq(basename("file.../"), ""));
 
 #define test_parent(x, y) {                                \
-                char _cleanup_free_ *z = NULL;             \
+                _cleanup_free_ char *z = NULL;             \
                 int r = path_get_parent(x, &z);            \
                 printf("expected: %s\n", y ? y : "error"); \
                 printf("actual: %s\n", r<0 ? "error" : z); \
@@ -191,11 +193,40 @@ static void test_make_relative(void) {
         test("//extra/////slashes///won't////fool///anybody//", "////extra///slashes////are/just///fine///", "../../../are/just/fine");
 }
 
+static void test_strv_resolve(void) {
+        char tmp_dir[] = "/tmp/test-path-util-XXXXXX";
+        _cleanup_strv_free_ char **search_dirs = NULL;
+        _cleanup_strv_free_ char **absolute_dirs = NULL;
+        char **d;
+
+        assert_se(mkdtemp(tmp_dir) != NULL);
+
+        search_dirs = strv_new("/dir1", "/dir2", "/dir3", NULL);
+        assert_se(search_dirs);
+        STRV_FOREACH(d, search_dirs) {
+                char *p = strappend(tmp_dir, *d);
+                assert_se(p);
+                assert_se(strv_push(&absolute_dirs, p) == 0);
+        }
+
+        assert_se(mkdir(absolute_dirs[0], 0700) == 0);
+        assert_se(mkdir(absolute_dirs[1], 0700) == 0);
+        assert_se(symlink("dir2", absolute_dirs[2]) == 0);
+
+        path_strv_resolve(search_dirs, tmp_dir);
+        assert_se(streq(search_dirs[0], "/dir1"));
+        assert_se(streq(search_dirs[1], "/dir2"));
+        assert_se(streq(search_dirs[2], "/dir2"));
+
+        assert_se(rm_rf_dangerous(tmp_dir, false, true, false) == 0);
+}
+
 int main(int argc, char **argv) {
         test_path();
         test_find_binary(argv[0]);
         test_prefixes();
         test_fsck_exists();
         test_make_relative();
+        test_strv_resolve();
         return 0;
 }
diff --git a/src/test/test-ratelimit.c b/src/test/test-ratelimit.c
new file mode 100644 (file)
index 0000000..b7f6dfe
--- /dev/null
@@ -0,0 +1,49 @@
+/***
+  This file is part of systemd
+
+  Copyright 2014 Ronny Chevalier
+
+  systemd is free software; you can redistribute it and/or modify it
+  under the terms of the GNU Lesser General Public License as published by
+  the Free Software Foundation; either version 2.1 of the License, or
+  (at your option) any later version.
+
+  systemd is distributed in the hope that it will be useful, but
+  WITHOUT ANY WARRANTY; without even the implied warranty of
+  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+  Lesser General Public License for more details.
+
+  You should have received a copy of the GNU Lesser General Public License
+  along with systemd; If not, see <http://www.gnu.org/licenses/>.
+***/
+
+#include <unistd.h>
+
+#include "ratelimit.h"
+#include "time-util.h"
+#include "macro.h"
+
+static void test_ratelimit_test(void) {
+        int i;
+        RATELIMIT_DEFINE(ratelimit, 1 * USEC_PER_SEC, 10);
+
+        for (i = 0; i < 10; i++) {
+                assert_se(ratelimit_test(&ratelimit));
+        }
+        assert_se(!ratelimit_test(&ratelimit));
+        sleep(1);
+        for (i = 0; i < 10; i++) {
+                assert_se(ratelimit_test(&ratelimit));
+        }
+
+        RATELIMIT_INIT(ratelimit, 0, 10);
+        for (i = 0; i < 10000; i++) {
+                assert_se(ratelimit_test(&ratelimit));
+        }
+}
+
+int main(int argc, char *argv[]) {
+        test_ratelimit_test();
+
+        return 0;
+}
diff --git a/src/test/test-socket-util.c b/src/test/test-socket-util.c
new file mode 100644 (file)
index 0000000..9f42dbf
--- /dev/null
@@ -0,0 +1,227 @@
+/***
+  This file is part of systemd
+
+  Copyright 2014 Ronny Chevalier
+
+  systemd is free software; you can redistribute it and/or modify it
+  under the terms of the GNU Lesser General Public License as published by
+  the Free Software Foundation; either version 2.1 of the License, or
+  (at your option) any later version.
+
+  systemd is distributed in the hope that it will be useful, but
+  WITHOUT ANY WARRANTY; without even the implied warranty of
+  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+  Lesser General Public License for more details.
+
+  You should have received a copy of the GNU Lesser General Public License
+  along with systemd; If not, see <http://www.gnu.org/licenses/>.
+***/
+
+#include "socket-util.h"
+#include "util.h"
+#include "macro.h"
+#include "log.h"
+
+static void test_socket_address_parse(void) {
+        SocketAddress a;
+
+        assert_se(socket_address_parse(&a, "junk") < 0);
+        assert_se(socket_address_parse(&a, "192.168.1.1") < 0);
+        assert_se(socket_address_parse(&a, ".168.1.1") < 0);
+        assert_se(socket_address_parse(&a, "989.168.1.1") < 0);
+        assert_se(socket_address_parse(&a, "192.168.1.1:65536") < 0);
+        assert_se(socket_address_parse(&a, "192.168.1.1:0") < 0);
+        assert_se(socket_address_parse(&a, "0") < 0);
+        assert_se(socket_address_parse(&a, "65536") < 0);
+
+        assert_se(socket_address_parse(&a, "65535") >= 0);
+
+        if (socket_ipv6_is_supported()) {
+                assert_se(socket_address_parse(&a, "[::1]") < 0);
+                assert_se(socket_address_parse(&a, "[::1]8888") < 0);
+                assert_se(socket_address_parse(&a, "::1") < 0);
+                assert_se(socket_address_parse(&a, "[::1]:0") < 0);
+                assert_se(socket_address_parse(&a, "[::1]:65536") < 0);
+                assert_se(socket_address_parse(&a, "[a:b:1]:8888") < 0);
+
+                assert_se(socket_address_parse(&a, "8888") >= 0);
+                assert_se(a.sockaddr.sa.sa_family == AF_INET6);
+
+                assert_se(socket_address_parse(&a, "[2001:0db8:0000:85a3:0000:0000:ac1f:8001]:8888") >= 0);
+                assert_se(a.sockaddr.sa.sa_family == AF_INET6);
+
+                assert_se(socket_address_parse(&a, "[::1]:8888") >= 0);
+                assert_se(a.sockaddr.sa.sa_family == AF_INET6);
+        } else {
+                assert_se(socket_address_parse(&a, "[::1]:8888") < 0);
+
+                assert_se(socket_address_parse(&a, "8888") >= 0);
+                assert_se(a.sockaddr.sa.sa_family == AF_INET);
+        }
+
+        assert_se(socket_address_parse(&a, "192.168.1.254:8888") >= 0);
+        assert_se(a.sockaddr.sa.sa_family == AF_INET);
+
+        assert_se(socket_address_parse(&a, "/foo/bar") >= 0);
+        assert_se(a.sockaddr.sa.sa_family == AF_UNIX);
+
+        assert_se(socket_address_parse(&a, "@abstract") >= 0);
+        assert_se(a.sockaddr.sa.sa_family == AF_UNIX);
+}
+
+static void test_socket_address_parse_netlink(void) {
+        SocketAddress a;
+
+        assert_se(socket_address_parse_netlink(&a, "junk") < 0);
+        assert_se(socket_address_parse_netlink(&a, "") < 0);
+
+        assert_se(socket_address_parse_netlink(&a, "route") >= 0);
+        assert_se(socket_address_parse_netlink(&a, "route 10") >= 0);
+        assert_se(a.sockaddr.sa.sa_family == AF_NETLINK);
+        assert_se(a.protocol == NETLINK_ROUTE);
+}
+
+static void test_socket_address_equal(void) {
+        SocketAddress a;
+        SocketAddress b;
+
+        assert_se(socket_address_parse(&a, "192.168.1.1:8888") >= 0);
+        assert_se(socket_address_parse(&b, "192.168.1.1:888") >= 0);
+        assert_se(!socket_address_equal(&a, &b));
+
+        assert_se(socket_address_parse(&a, "192.168.1.1:8888") >= 0);
+        assert_se(socket_address_parse(&b, "192.16.1.1:8888") >= 0);
+        assert_se(!socket_address_equal(&a, &b));
+
+        assert_se(socket_address_parse(&a, "192.168.1.1:8888") >= 0);
+        assert_se(socket_address_parse(&b, "8888") >= 0);
+        assert_se(!socket_address_equal(&a, &b));
+
+        assert_se(socket_address_parse(&a, "192.168.1.1:8888") >= 0);
+        assert_se(socket_address_parse(&b, "/foo/bar/") >= 0);
+        assert_se(!socket_address_equal(&a, &b));
+
+        assert_se(socket_address_parse(&a, "192.168.1.1:8888") >= 0);
+        assert_se(socket_address_parse(&b, "192.168.1.1:8888") >= 0);
+        assert_se(socket_address_equal(&a, &b));
+
+        assert_se(socket_address_parse(&a, "/foo/bar") >= 0);
+        assert_se(socket_address_parse(&b, "/foo/bar") >= 0);
+        assert_se(socket_address_equal(&a, &b));
+
+        assert_se(socket_address_parse(&a, "[::1]:8888") >= 0);
+        assert_se(socket_address_parse(&b, "[::1]:8888") >= 0);
+        assert_se(socket_address_equal(&a, &b));
+
+        assert_se(socket_address_parse(&a, "@abstract") >= 0);
+        assert_se(socket_address_parse(&b, "@abstract") >= 0);
+        assert_se(socket_address_equal(&a, &b));
+
+        assert_se(socket_address_parse_netlink(&a, "firewall") >= 0);
+        assert_se(socket_address_parse_netlink(&b, "firewall") >= 0);
+        assert_se(socket_address_equal(&a, &b));
+}
+
+static void test_socket_address_get_path(void) {
+        SocketAddress a;
+
+        assert_se(socket_address_parse(&a, "192.168.1.1:8888") >= 0);
+        assert_se(!socket_address_get_path(&a));
+
+        assert_se(socket_address_parse(&a, "@abstract") >= 0);
+        assert_se(!socket_address_get_path(&a));
+
+        assert_se(socket_address_parse(&a, "[::1]:8888") >= 0);
+        assert_se(!socket_address_get_path(&a));
+
+        assert_se(socket_address_parse(&a, "/foo/bar") >= 0);
+        assert_se(streq(socket_address_get_path(&a), "/foo/bar"));
+}
+
+static void test_in_addr_prefix_intersect_one(unsigned f, const char *a, unsigned apl, const char *b, unsigned bpl, int result) {
+        union in_addr_union ua, ub;
+
+        assert_se(in_addr_from_string(f, a, &ua) >= 0);
+        assert_se(in_addr_from_string(f, b, &ub) >= 0);
+
+        assert_se(in_addr_prefix_intersect(f, &ua, apl, &ub, bpl) == result);
+}
+
+static void test_in_addr_prefix_intersect(void) {
+
+        test_in_addr_prefix_intersect_one(AF_INET, "255.255.255.255", 32, "255.255.255.254", 32, 0);
+        test_in_addr_prefix_intersect_one(AF_INET, "255.255.255.255", 0, "255.255.255.255", 32, 1);
+        test_in_addr_prefix_intersect_one(AF_INET, "0.0.0.0", 0, "47.11.8.15", 32, 1);
+
+        test_in_addr_prefix_intersect_one(AF_INET, "1.1.1.1", 24, "1.1.1.1", 24, 1);
+        test_in_addr_prefix_intersect_one(AF_INET, "2.2.2.2", 24, "1.1.1.1", 24, 0);
+
+        test_in_addr_prefix_intersect_one(AF_INET, "1.1.1.1", 24, "1.1.1.127", 25, 1);
+        test_in_addr_prefix_intersect_one(AF_INET, "1.1.1.1", 24, "1.1.1.127", 26, 1);
+        test_in_addr_prefix_intersect_one(AF_INET, "1.1.1.1", 25, "1.1.1.127", 25, 1);
+        test_in_addr_prefix_intersect_one(AF_INET, "1.1.1.1", 25, "1.1.1.255", 25, 0);
+
+        test_in_addr_prefix_intersect_one(AF_INET6, "ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff", 128, "ffff:ffff:ffff:ffff:ffff:ffff:ffff:fffe", 128, 0);
+        test_in_addr_prefix_intersect_one(AF_INET6, "ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff", 0, "ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff", 128, 1);
+        test_in_addr_prefix_intersect_one(AF_INET6, "::", 0, "beef:beef:beef:beef:beef:beef:beef:beef", 128, 1);
+
+        test_in_addr_prefix_intersect_one(AF_INET6, "1::2", 64, "1::2", 64, 1);
+        test_in_addr_prefix_intersect_one(AF_INET6, "2::2", 64, "1::2", 64, 0);
+
+        test_in_addr_prefix_intersect_one(AF_INET6, "1::1", 120, "1::007f", 121, 1);
+        test_in_addr_prefix_intersect_one(AF_INET6, "1::1", 120, "1::007f", 122, 1);
+        test_in_addr_prefix_intersect_one(AF_INET6, "1::1", 121, "1::007f", 121, 1);
+        test_in_addr_prefix_intersect_one(AF_INET6, "1::1", 121, "1::00ff", 121, 0);
+}
+
+static void test_in_addr_prefix_next_one(unsigned f, const char *before, unsigned pl, const char *after) {
+        union in_addr_union ubefore, uafter, t;
+
+        assert_se(in_addr_from_string(f, before, &ubefore) >= 0);
+
+        t = ubefore;
+        assert_se((in_addr_prefix_next(f, &t, pl) > 0) == !!after);
+
+        if (after) {
+                assert_se(in_addr_from_string(f, after, &uafter) >= 0);
+                assert_se(in_addr_equal(f, &t, &uafter) > 0);
+        }
+}
+
+static void test_in_addr_prefix_next(void) {
+
+        test_in_addr_prefix_next_one(AF_INET, "192.168.0.0", 24, "192.168.1.0");
+        test_in_addr_prefix_next_one(AF_INET, "192.168.0.0", 16, "192.169.0.0");
+        test_in_addr_prefix_next_one(AF_INET, "192.168.0.0", 20, "192.168.16.0");
+
+        test_in_addr_prefix_next_one(AF_INET, "0.0.0.0", 32, "0.0.0.1");
+        test_in_addr_prefix_next_one(AF_INET, "255.255.255.255", 32, NULL);
+        test_in_addr_prefix_next_one(AF_INET, "255.255.255.0", 24, NULL);
+
+        test_in_addr_prefix_next_one(AF_INET6, "4400::", 128, "4400::0001");
+        test_in_addr_prefix_next_one(AF_INET6, "4400::", 120, "4400::0100");
+        test_in_addr_prefix_next_one(AF_INET6, "4400::", 127, "4400::0002");
+        test_in_addr_prefix_next_one(AF_INET6, "4400::", 8, "4500::");
+        test_in_addr_prefix_next_one(AF_INET6, "4400::", 7, "4600::");
+
+        test_in_addr_prefix_next_one(AF_INET6, "::", 128, "::1");
+
+        test_in_addr_prefix_next_one(AF_INET6, "ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff", 128, NULL);
+        test_in_addr_prefix_next_one(AF_INET6, "ffff:ffff:ffff:ffff:ffff:ffff:ffff:ff00", 120, NULL);
+
+}
+
+int main(int argc, char *argv[]) {
+
+        log_set_max_level(LOG_DEBUG);
+
+        test_socket_address_parse();
+        test_socket_address_parse_netlink();
+        test_socket_address_equal();
+        test_socket_address_get_path();
+
+        test_in_addr_prefix_intersect();
+        test_in_addr_prefix_next();
+
+        return 0;
+}
index c8c5fc97a8bb8447785a6c10b6d740fddc753cd4..24ed681482ec240c8eb0a9c9c687a92853ee49bc 100644 (file)
@@ -323,6 +323,20 @@ static void test_strv_extend(void) {
         assert_se(streq(b[0], "test3"));
 }
 
+static void test_strv_extendf(void) {
+        _cleanup_strv_free_ char **a = NULL, **b = NULL;
+
+        a = strv_new("test", "test1", NULL);
+        assert_se(a);
+        assert_se(strv_extendf(&a, "test2 %s %d %s", "foo", 128, "bar") >= 0);
+        assert_se(strv_extendf(&b, "test3 %s %s %d", "bar", "foo", 128) >= 0);
+
+        assert_se(streq(a[0], "test"));
+        assert_se(streq(a[1], "test1"));
+        assert_se(streq(a[2], "test2 foo 128 bar"));
+        assert_se(streq(b[0], "test3 bar foo 128"));
+}
+
 static void test_strv_foreach(void) {
         _cleanup_strv_free_ char **a;
         unsigned i = 0;
@@ -421,6 +435,7 @@ int main(int argc, char *argv[]) {
         test_strv_extend_strv();
         test_strv_extend_strv_concat();
         test_strv_extend();
+        test_strv_extendf();
         test_strv_from_stdarg_alloca();
 
         return 0;
index 48133428df393960214f1079cefc5242bbd20548..34865729f29c0b97748f3a4cd6398c58d7f0f608 100644 (file)
@@ -234,7 +234,7 @@ static void test_load_env_file_1(void) {
         assert(fd >= 0);
         assert_se(write(fd, env_file_1, sizeof(env_file_1)) == sizeof(env_file_1));
 
-        r = load_env_file(name, NULL, &data);
+        r = load_env_file(NULL, name, NULL, &data);
         assert(r == 0);
         assert(streq(data[0], "a=a"));
         assert(streq(data[1], "b=bc"));
@@ -257,7 +257,7 @@ static void test_load_env_file_2(void) {
         assert(fd >= 0);
         assert_se(write(fd, env_file_2, sizeof(env_file_2)) == sizeof(env_file_2));
 
-        r = load_env_file(name, NULL, &data);
+        r = load_env_file(NULL, name, NULL, &data);
         assert(r == 0);
         assert(streq(data[0], "a=a"));
         assert(data[1] == NULL);
@@ -275,7 +275,7 @@ static void test_load_env_file_3(void) {
         assert(fd >= 0);
         assert_se(write(fd, env_file_3, sizeof(env_file_3)) == sizeof(env_file_3));
 
-        r = load_env_file(name, NULL, &data);
+        r = load_env_file(NULL, name, NULL, &data);
         assert(r == 0);
         assert(data == NULL);
         unlink(name);
@@ -291,7 +291,7 @@ static void test_load_env_file_4(void) {
         assert(fd >= 0);
         assert_se(write(fd, env_file_4, sizeof(env_file_4)) == sizeof(env_file_4));
 
-        r = load_env_file(name, NULL, &data);
+        r = load_env_file(NULL, name, NULL, &data);
         assert(r == 0);
         assert(streq(data[0], "HWMON_MODULES=coretemp f71882fg"));
         assert(streq(data[1], "MODULE_0=coretemp"));
index fff3e16ed816b82344433112c8dd534139ac8e0c..db728bcefb352e05925d83188c548aaf99378498 100644 (file)
@@ -5,6 +5,7 @@
 
   Copyright 2012 Lennart Poettering
   Copyright 2013 Zbigniew Jędrzejewski-Szmek
+  Copyright 2014 Ronny Chevalier
 
   systemd is free software; you can redistribute it and/or modify it
   under the terms of the GNU Lesser General Public License as published by
@@ -145,6 +146,7 @@ static int test_unit_printf(void) {
 
         assert_se(setenv("USER", "root", 1) == 0);
         assert_se(setenv("HOME", "/root", 1) == 0);
+        assert_se(setenv("XDG_RUNTIME_DIR", "/run/user/1/", 1) == 0);
 
         assert_se(u = unit_new(m, sizeof(Service)));
         assert_se(unit_add_name(u, "blah.service") == 0);
@@ -193,9 +195,135 @@ static int test_unit_printf(void) {
         return 0;
 }
 
+static void test_unit_instance_is_valid(void) {
+        assert_se(unit_instance_is_valid("fooBar"));
+        assert_se(unit_instance_is_valid("foo-bar"));
+        assert_se(unit_instance_is_valid("foo.stUff"));
+        assert_se(unit_instance_is_valid("fOo123.stuff"));
+        assert_se(unit_instance_is_valid("@f_oo123.Stuff"));
+
+        assert_se(!unit_instance_is_valid("$¢£"));
+        assert_se(!unit_instance_is_valid(""));
+        assert_se(!unit_instance_is_valid("foo bar"));
+        assert_se(!unit_instance_is_valid("foo/bar"));
+}
+
+static void test_unit_prefix_is_valid(void) {
+        assert_se(unit_prefix_is_valid("fooBar"));
+        assert_se(unit_prefix_is_valid("foo-bar"));
+        assert_se(unit_prefix_is_valid("foo.stUff"));
+        assert_se(unit_prefix_is_valid("fOo123.stuff"));
+        assert_se(unit_prefix_is_valid("foo123.Stuff"));
+
+        assert_se(!unit_prefix_is_valid("$¢£"));
+        assert_se(!unit_prefix_is_valid(""));
+        assert_se(!unit_prefix_is_valid("foo bar"));
+        assert_se(!unit_prefix_is_valid("foo/bar"));
+        assert_se(!unit_prefix_is_valid("@foo-bar"));
+}
+
+static void test_unit_name_change_suffix(void) {
+        char *r;
+
+        r = unit_name_change_suffix("foo.bar", ".service");
+        assert_se(r);
+        assert_se(streq(r, "foo.service"));
+        free(r);
+
+        r = unit_name_change_suffix("foo@stuff.bar", ".boo");
+        assert_se(r);
+        assert_se(streq(r, "foo@stuff.boo"));
+        free(r);
+}
+
+static void test_unit_name_build(void) {
+        char *r;
+
+        r = unit_name_build("foo", "bar", ".service");
+        assert_se(r);
+        assert_se(streq(r, "foo@bar.service"));
+        free(r);
+
+        r = unit_name_build("fo0-stUff_b", "bar", ".mount");
+        assert_se(r);
+        assert_se(streq(r, "fo0-stUff_b@bar.mount"));
+        free(r);
+
+        r = unit_name_build("foo", NULL, ".service");
+        assert_se(r);
+        assert_se(streq(r, "foo.service"));
+        free(r);
+}
+
+static void test_unit_name_is_instance(void) {
+        assert_se(unit_name_is_instance("a@b.service"));
+        assert_se(unit_name_is_instance("a-c_c01Aj@b05Dii_-oioi.service"));
+
+        assert_se(!unit_name_is_instance("a.service"));
+        assert_se(!unit_name_is_instance("junk"));
+        assert_se(!unit_name_is_instance(""));
+}
+
+static void test_build_subslice(void) {
+        char *a;
+        char *b;
+
+        assert_se(build_subslice("-.slice", "foo", &a) >= 0);
+        assert_se(build_subslice(a, "bar", &b) >= 0);
+        free(a);
+        assert_se(build_subslice(b, "barfoo", &a) >= 0);
+        free(b);
+        assert_se(build_subslice(a, "foobar", &b) >= 0);
+        free(a);
+        assert_se(streq(b, "foo-bar-barfoo-foobar.slice"));
+        free(b);
+
+        assert_se(build_subslice("foo.service", "bar", &a) < 0);
+        assert_se(build_subslice("foo", "bar", &a) < 0);
+}
+
+static void test_unit_name_to_instance(void) {
+        char *instance;
+        int r;
+
+        r = unit_name_to_instance("foo@bar.service", &instance);
+        assert_se(r >= 0);
+        assert_se(streq(instance, "bar"));
+        free(instance);
+
+        r = unit_name_to_instance("fo0-stUff_b@b.e", &instance);
+        assert_se(r >= 0);
+        assert_se(streq(instance, "b"));
+        free(instance);
+
+        r = unit_name_to_instance("foo.bar", &instance);
+        assert_se(r >= 0);
+        assert_se(!instance);
+
+        r = unit_name_to_instance("fooj@unk", &instance);
+        assert_se(r < 0);
+}
+
+static void test_unit_name_escape(void) {
+        _cleanup_free_ char *r;
+
+        r = unit_name_escape("ab+-c.a/bc@foo.service");
+        assert_se(r);
+        assert_se(streq(r, "ab\\x2b\\x2dc.a-bc\\x40foo.service"));
+}
+
 int main(int argc, char* argv[]) {
         int rc = 0;
         test_replacements();
         TEST_REQ_RUNNING_SYSTEMD(rc = test_unit_printf());
+        test_unit_instance_is_valid();
+        test_unit_prefix_is_valid();
+        test_unit_name_change_suffix();
+        test_unit_name_build();
+        test_unit_name_is_instance();
+        test_build_subslice();
+        test_unit_name_to_instance();
+        test_unit_name_escape();
+
         return rc;
 }
index 2b466991255e445253c85db3c3086a4d191f6b4a..44921bd15668045f9448c9446f466157ecbcdb14 100644 (file)
 #include <fcntl.h>
 #include <locale.h>
 #include <errno.h>
+#include <signal.h>
 
 #include "util.h"
+#include "mkdir.h"
 #include "strv.h"
 #include "def.h"
 #include "fileio.h"
@@ -295,14 +297,16 @@ static void test_undecchar(void) {
 
 static void test_cescape(void) {
         _cleanup_free_ char *escaped;
-        escaped = cescape("abc\\\"\b\f\n\r\t\v\003\177\234\313");
-        assert_se(streq(escaped, "abc\\\\\\\"\\b\\f\\n\\r\\t\\v\\003\\177\\234\\313"));
+
+        assert_se(escaped = cescape("abc\\\"\b\f\n\r\t\v\a\003\177\234\313"));
+        assert_se(streq(escaped, "abc\\\\\\\"\\b\\f\\n\\r\\t\\v\\a\\003\\177\\234\\313"));
 }
 
 static void test_cunescape(void) {
         _cleanup_free_ char *unescaped;
-        unescaped = cunescape("abc\\\\\\\"\\b\\f\\n\\r\\t\\v\\003\\177\\234\\313");
-        assert_se(streq(unescaped, "abc\\\"\b\f\n\r\t\v\003\177\234\313"));
+
+        assert_se(unescaped = cunescape("abc\\\\\\\"\\b\\f\\a\\n\\r\\t\\v\\003\\177\\234\\313\\000\\x00"));
+        assert_se(streq(unescaped, "abc\\\"\b\f\a\n\r\t\v\003\177\234\313\\000\\x00"));
 }
 
 static void test_foreach_word(void) {
@@ -654,6 +658,8 @@ static void test_writing_tmpfile(void) {
         assert(r == 0);
         printf("contents: %s", contents);
         assert(streq(contents, "abc\n" ALPHANUMERICAL "\n"));
+
+        unlink(name);
 }
 
 static void test_hexdump(void) {
@@ -705,6 +711,186 @@ static void test_foreach_string(void) {
                 assert_se(streq(x, "zzz"));
 }
 
+static void test_filename_is_safe(void) {
+        char foo[FILENAME_MAX+2];
+        int i;
+
+        assert_se(!filename_is_safe(""));
+        assert_se(!filename_is_safe("/bar/foo"));
+        assert_se(!filename_is_safe("/"));
+        assert_se(!filename_is_safe("."));
+        assert_se(!filename_is_safe(".."));
+
+        for (i=0; i<FILENAME_MAX+1; i++)
+                foo[i] = 'a';
+        foo[FILENAME_MAX+1] = '\0';
+
+        assert_se(!filename_is_safe(foo));
+
+        assert_se(filename_is_safe("foo_bar-333"));
+        assert_se(filename_is_safe("o.o"));
+}
+
+static void test_ascii_strlower(void) {
+        char a[] = "AabBcC Jk Ii Od LKJJJ kkd LK";
+        assert_se(streq(ascii_strlower(a), "aabbcc jk ii od lkjjj kkd lk"));
+}
+
+static void test_files_same(void) {
+        _cleanup_close_ int fd = -1;
+        char name[] = "/tmp/test-files_same.XXXXXX";
+        char name_alias[] = "/tmp/test-files_same.alias";
+
+        fd = mkostemp_safe(name, O_RDWR|O_CLOEXEC);
+        assert_se(fd >= 0);
+        assert_se(symlink(name, name_alias) >= 0);
+
+        assert_se(files_same(name, name));
+        assert_se(files_same(name, name_alias));
+
+        unlink(name);
+        unlink(name_alias);
+}
+
+static void test_is_valid_documentation_url(void) {
+        assert_se(is_valid_documentation_url("http://www.freedesktop.org/wiki/Software/systemd"));
+        assert_se(is_valid_documentation_url("https://www.kernel.org/doc/Documentation/binfmt_misc.txt"));
+        assert_se(is_valid_documentation_url("file:foo"));
+        assert_se(is_valid_documentation_url("man:systemd.special(7)"));
+        assert_se(is_valid_documentation_url("info:bar"));
+
+        assert_se(!is_valid_documentation_url("foo:"));
+        assert_se(!is_valid_documentation_url("info:"));
+        assert_se(!is_valid_documentation_url(""));
+}
+
+static void test_file_in_same_dir(void) {
+        assert_se(streq(file_in_same_dir("/", "a"), "/a"));
+        assert_se(streq(file_in_same_dir("/", "/a"), "/a"));
+        assert_se(streq(file_in_same_dir("", "a"), "a"));
+        assert_se(streq(file_in_same_dir("a/", "a"), "a/a"));
+        assert_se(streq(file_in_same_dir("bar/foo", "bar"), "bar/bar"));
+}
+
+static void test_endswith(void) {
+        assert_se(endswith("foobar", "bar"));
+        assert_se(endswith("foobar", ""));
+        assert_se(endswith("foobar", "foobar"));
+        assert_se(endswith("", ""));
+
+        assert_se(!endswith("foobar", "foo"));
+        assert_se(!endswith("foobar", "foobarfoofoo"));
+}
+
+static void test_close_nointr(void) {
+        char name[] = "/tmp/test-test-close_nointr.XXXXXX";
+        int fd;
+
+        fd = mkostemp_safe(name, O_RDWR|O_CLOEXEC);
+        assert_se(fd >= 0);
+        assert_se(close_nointr(fd) >= 0);
+        assert_se(close_nointr(fd) < 0);
+
+        unlink(name);
+}
+
+
+static void test_unlink_noerrno(void) {
+        char name[] = "/tmp/test-close_nointr.XXXXXX";
+        int fd;
+
+        fd = mkostemp_safe(name, O_RDWR|O_CLOEXEC);
+        assert_se(fd >= 0);
+        assert_se(close_nointr(fd) >= 0);
+
+        {
+                PROTECT_ERRNO;
+                errno = -42;
+                assert_se(unlink_noerrno(name) >= 0);
+                assert_se(errno == -42);
+                assert_se(unlink_noerrno(name) < 0);
+                assert_se(errno == -42);
+        }
+}
+
+static void test_readlink_and_make_absolute(void) {
+        char tempdir[] = "/tmp/test-readlink_and_make_absolute";
+        char name[] = "/tmp/test-readlink_and_make_absolute/original";
+        char name2[] = "test-readlink_and_make_absolute/original";
+        char name_alias[] = "/tmp/test-readlink_and_make_absolute-alias";
+        char *r = NULL;
+
+        assert(mkdir_safe(tempdir, 0755, getuid(), getgid()) >= 0);
+        assert_se(touch(name) >= 0);
+
+        assert_se(symlink(name, name_alias) >= 0);
+        assert_se(readlink_and_make_absolute(name_alias, &r) >= 0);
+        assert_se(streq(r, name));
+        free(r);
+        assert_se(unlink(name_alias) >= 0);
+
+        assert_se(chdir(tempdir) >= 0);
+        assert_se(symlink(name2, name_alias) >= 0);
+        assert_se(readlink_and_make_absolute(name_alias, &r) >= 0);
+        assert_se(streq(r, name));
+        free(r);
+        assert_se(unlink(name_alias) >= 0);
+
+        assert_se(rm_rf_dangerous(tempdir, false, true, false) >= 0);
+}
+
+static void test_read_one_char(void) {
+        char r;
+        bool need_nl;
+        char name[] = "/tmp/test-read_one_char.XXXXXX";
+        _cleanup_close_ int fd = -1;
+        FILE *file;
+
+        fd = mkostemp_safe(name, O_RDWR|O_CLOEXEC);
+        assert_se(fd >= 0);
+        file = fdopen(fd, "r+");
+        assert_se(file);
+        assert_se(fputs("c\n", file) >= 0);
+        rewind(file);
+
+        assert_se(read_one_char(file, &r, 1000000, &need_nl) >= 0);
+        assert_se(!need_nl);
+        assert_se(r == 'c');
+        assert_se(read_one_char(file, &r, 1000000, &need_nl) < 0);
+
+        rewind(file);
+        assert_se(fputs("foobar\n", file) >= 0);
+        rewind(file);
+        assert_se(read_one_char(file, &r, 1000000, &need_nl) < 0);
+
+        rewind(file);
+        assert_se(fputs("\n", file) >= 0);
+        rewind(file);
+        assert_se(read_one_char(file, &r, 1000000, &need_nl) < 0);
+
+        unlink(name);
+}
+
+static void test_ignore_signals(void) {
+        assert_se(ignore_signals(SIGINT, -1) >= 0);
+        assert_se(kill(getpid(), SIGINT) >= 0);
+        assert_se(ignore_signals(SIGUSR1, SIGUSR2, SIGTERM, SIGPIPE, -1) >= 0);
+        assert_se(kill(getpid(), SIGUSR1) >= 0);
+        assert_se(kill(getpid(), SIGUSR2) >= 0);
+        assert_se(kill(getpid(), SIGTERM) >= 0);
+        assert_se(kill(getpid(), SIGPIPE) >= 0);
+        assert_se(default_signals(SIGINT, SIGUSR1, SIGUSR2, SIGTERM, SIGPIPE, -1) >= 0);
+}
+
+static void test_strshorten(void) {
+        char s[] = "foobar";
+
+        assert_se(strlen(strshorten(s, 6)) == 6);
+        assert_se(strlen(strshorten(s, 12)) == 6);
+        assert_se(strlen(strshorten(s, 2)) == 2);
+        assert_se(strlen(strshorten(s, 0)) == 0);
+}
+
 int main(int argc, char *argv[]) {
         log_parse_environment();
         log_open();
@@ -750,6 +936,18 @@ int main(int argc, char *argv[]) {
         test_hexdump();
         test_log2i();
         test_foreach_string();
+        test_filename_is_safe();
+        test_ascii_strlower();
+        test_files_same();
+        test_is_valid_documentation_url();
+        test_file_in_same_dir();
+        test_endswith();
+        test_close_nointr();
+        test_unlink_noerrno();
+        test_readlink_and_make_absolute();
+        test_read_one_char();
+        test_ignore_signals();
+        test_strshorten();
 
         return 0;
 }
diff --git a/src/timedate/org.freedesktop.timedate1.policy b/src/timedate/org.freedesktop.timedate1.policy
new file mode 100644 (file)
index 0000000..ab26b4b
--- /dev/null
@@ -0,0 +1,98 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE policyconfig PUBLIC "-//freedesktop//DTD PolicyKit Policy Configuration 1.0//EN"
+        "http://www.freedesktop.org/standards/PolicyKit/1/policyconfig.dtd">
+<policyconfig>
+
+        <vendor>The systemd Project</vendor>
+        <vendor_url>http://www.freedesktop.org/wiki/Software/systemd</vendor_url>
+
+        <action id="org.freedesktop.timedate1.set-time">
+                <description>Set system time</description>
+                <description xml:lang="de">Die Systemzeit festlegen</description>
+                <description xml:lang="el">Ορισμός ώρας συστήματος</description>
+                <description xml:lang="fr">Définir l'heure du système</description>
+                <description xml:lang="it">Configura l'orario di sistema</description>
+                <description xml:lang="pl">Ustawienie czasu systemu</description>
+                <description xml:lang="ru">Настроить системное время</description>
+                <message>Authentication is required to set the system time.</message>
+                <message xml:lang="de">Legitimierung ist zum Festlegen der Systemzeit notwendig.</message>
+                <message xml:lang="el">Απαιτείται πιστοποίηση για να ορίσετε την ώρα του συστήματος.</message>
+                <message xml:lang="fr">Authentification requise pour définir l'heure du système.</message>
+                <message xml:lang="it">Autenticazione richiesta per configurare l'orario di sistema.</message>
+                <message xml:lang="pl">Wymagane jest uwierzytelnienie, aby ustawić czas systemu.</message>
+                <message xml:lang="ru">Чтобы настроить системное время, необходимо пройти аутентификацию.</message>
+                <defaults>
+                        <allow_any>auth_admin_keep</allow_any>
+                        <allow_inactive>auth_admin_keep</allow_inactive>
+                        <allow_active>auth_admin_keep</allow_active>
+                </defaults>
+                <annotate key="org.freedesktop.policykit.imply">org.freedesktop.timedate1.set-timezone org.freedesktop.timedate1.set-ntp</annotate>
+        </action>
+
+        <action id="org.freedesktop.timedate1.set-timezone">
+                <description>Set system timezone</description>
+                <description xml:lang="de">Die Systemzeitzone festlegen</description>
+                <description xml:lang="el">Ορισμός ζώνης ώρας συστήματος</description>
+                <description xml:lang="fr">Définir le fuseau horaire du système</description>
+                <description xml:lang="it">Configura il fuso orario di sistema</description>
+                <description xml:lang="pl">Ustawienie strefy czasowej systemu</description>
+                <description xml:lang="ru">Настроить часовой пояс</description>
+                <message>Authentication is required to set the system timezone.</message>
+                <message xml:lang="de">Legitimierung ist zum Festlegen der Systemzeitzone notwendig.</message>
+                <message xml:lang="el">Απαιτείται πιστοποίηση για να ορίσετε την ώρα ζώνης του συστήματος.</message>
+                <message xml:lang="fr">Authentification requise pour définir le fuseau horaire du système.</message>
+                <message xml:lang="it">Autenticazione richiesta per configurare il fuso orario di sistema.</message>
+                <message xml:lang="pl">Wymagane jest uwierzytelnienie, aby ustawić strefę czasową systemu.</message>
+                <message xml:lang="ru">Чтобы настроить часовой пояс, необходимо пройти аутентификацию.</message>
+                <defaults>
+                        <allow_any>auth_admin_keep</allow_any>
+                        <allow_inactive>auth_admin_keep</allow_inactive>
+                        <allow_active>auth_admin_keep</allow_active>
+                </defaults>
+        </action>
+
+        <action id="org.freedesktop.timedate1.set-local-rtc">
+                <description>Set RTC to local timezone or UTC</description>
+                <description xml:lang="de">Echtzeituhr auf lokale Zeitzone oder UTC setzen</description>
+                <description xml:lang="el">Ορισμός RTC στην τοπική ζώνη ώρας ή UTC</description>
+                <description xml:lang="fr">Positionner l'horloge matérielle à l'heure locale ou sur le temps universel coordonné (UTC)</description>
+                <description xml:lang="it">Configura l'orologio di sistema (RTC) al fuso orario locale o al tempo civile (UTC)</description>
+                <description xml:lang="pl">Ustawienie RTC na lokalną strefę czasową lub strefę UTC</description>
+                <description xml:lang="ru">Установить аппаратные часы по местному времени или по Гринвичу</description>
+                <message>Authentication is required to control whether the RTC stores the local or UTC time.</message>
+                <message xml:lang="de">Legitimierung ist notwendig zum Festlegen, ob die Echtzeituhr auf lokale Zeitzone oder UTC eingestellt ist.</message>
+                <message xml:lang="el">Απαιτείται πιστοποίηση για να ελέγξετε αν το RTC αποθηκεύει την τοπική ή την ώρα UTC.</message>
+                <message xml:lang="fr">Authentification requise pour positionner l'horloge matérielle à l'heure locale ou sur le temps universel coordonné (UTC).</message>
+                <message xml:lang="it">Autenticazione richiesta per verificare se l'orologio di sistema (RTC) è configurato all'orario locale o al tempo civile (UTC).</message>
+                <message xml:lang="pl">Wymagane jest uwierzytelnienie, aby kontrolować, czy RTC przechowuje czas lokalny lub czas UTC.</message>
+                <message xml:lang="ru">Чтобы контролировать, установлены аппаратные часы по местному времени или по Гринвичу, необходимо пройти аутентификацию.</message>
+                <defaults>
+                        <allow_any>auth_admin_keep</allow_any>
+                        <allow_inactive>auth_admin_keep</allow_inactive>
+                        <allow_active>auth_admin_keep</allow_active>
+                </defaults>
+        </action>
+
+        <action id="org.freedesktop.timedate1.set-ntp">
+                <description>Turn network time synchronization on or off</description>
+                <description xml:lang="de">Netzwerkzeitabgeich ein- oder ausschalten</description>
+                <description xml:lang="el">Ενεργοποίηση/Απενεργοποίηση συγχρονισμού ώρας δικτύου</description>
+                <description xml:lang="fr">Activer ou désactiver la synchronisation de l'heure avec le réseau</description>
+                <description xml:lang="it">Abilita o meno la sincronizzazione dell'orario in rete</description>
+                <description xml:lang="pl">Włączenie lub wyłączenie synchronizacji czasu przez sieć</description>
+                <description xml:lang="ru">Включить или выключить синхронизацию времени по сети</description>
+                <message>Authentication is required to control whether network time synchronization shall be enabled.</message>
+                <message xml:lang="de">Legitimierung ist zum Festlegen, ob Netzwerkzeitabgeich eingeschaltet sein soll, erforderlich.</message>
+                <message xml:lang="el">Απαιτείται πιστοποίηση για να ελέγξετε αν ο συγχρονισμός ώρας δικτύου θα ενεργοποιηθεί.</message>
+                <message xml:lang="fr">Authentification requise pour activer ou désactiver la synchronisation de l'heure avec le réseau.</message>
+                <message xml:lang="it">Autenticazione richiesta per verificare se la sincronizzazione dell'orario in rete debba essere attivata.</message>
+                <message xml:lang="pl">Wymagane jest uwierzytelnienie, aby kontrolować, czy włączyć synchronizację czasu przez sieć.</message>
+                <message xml:lang="ru">Чтобы включить или выключить синхронизацию времени по сети, необходимо пройти аутентификацию.</message>
+                <defaults>
+                        <allow_any>auth_admin_keep</allow_any>
+                        <allow_inactive>auth_admin_keep</allow_inactive>
+                        <allow_active>auth_admin_keep</allow_active>
+                </defaults>
+        </action>
+
+</policyconfig>
\ No newline at end of file
index bb12dd0b5a3a37cd3bd12917df4fbba72e752483..68cfa55ce9cee09e96985c76ac2390cfbe5140f7 100644 (file)
@@ -103,6 +103,8 @@ typedef struct Item {
 
         bool keep_first_level:1;
 
+        bool force:1;
+
         bool done:1;
 } Item;
 
@@ -492,20 +494,19 @@ static int item_set_perms(Item *i, const char *path) {
 }
 
 static int write_one_file(Item *i, const char *path) {
-        int flags;
-        int fd = -1;
+        _cleanup_close_ int fd = -1;
+        int flags, r = 0;
         struct stat st;
-        int r = 0;
 
         assert(i);
         assert(path);
 
-        flags = i->type == CREATE_FILE ? O_CREAT|O_APPEND :
-                i->type == TRUNCATE_FILE ? O_CREAT|O_TRUNC : 0;
+        flags = i->type == CREATE_FILE ? O_CREAT|O_APPEND|O_NOFOLLOW :
+                i->type == TRUNCATE_FILE ? O_CREAT|O_TRUNC|O_NOFOLLOW : 0;
 
-        RUN_WITH_UMASK(0) {
+        RUN_WITH_UMASK(0000) {
                 label_context_set(path, S_IFREG);
-                fd = open(path, flags|O_NDELAY|O_CLOEXEC|O_WRONLY|O_NOCTTY|O_NOFOLLOW, i->mode);
+                fd = open(path, flags|O_NDELAY|O_CLOEXEC|O_WRONLY|O_NOCTTY, i->mode);
                 label_context_clear();
         }
 
@@ -523,22 +524,19 @@ static int write_one_file(Item *i, const char *path) {
                 size_t l;
 
                 unescaped = cunescape(i->argument);
-                if (unescaped == NULL) {
-                        safe_close(fd);
+                if (!unescaped)
                         return log_oom();
-                }
 
                 l = strlen(unescaped);
                 n = write(fd, unescaped, l);
 
                 if (n < 0 || (size_t) n < l) {
                         log_error("Failed to write file %s: %s", path, n < 0 ? strerror(-n) : "Short write");
-                        safe_close(fd);
                         return n < 0 ? n : -EIO;
                 }
         }
 
-        safe_close(fd);
+        fd = safe_close(fd);
 
         if (stat(path, &st) < 0) {
                 log_error("stat(%s) failed: %m", path);
@@ -669,10 +667,29 @@ static int create_item(Item *i) {
                 break;
 
         case COPY_FILES:
-                r = copy_tree(i->argument, i->path);
+                r = copy_tree(i->argument, i->path, false);
                 if (r < 0) {
-                        log_error("Failed to copy files: %s", strerror(-r));
-                        return r;
+                        struct stat a, b;
+
+                        if (r != -EEXIST) {
+                                log_error("Failed to copy files to %s: %s", i->path, strerror(-r));
+                                return -r;
+                        }
+
+                        if (stat(i->argument, &a) < 0) {
+                                log_error("stat(%s) failed: %m", i->argument);
+                                return -errno;
+                        }
+
+                        if (stat(i->path, &b) < 0) {
+                                log_error("stat(%s) failed: %m", i->path);
+                                return -errno;
+                        }
+
+                        if ((a.st_mode ^ b.st_mode) & S_IFMT) {
+                                log_debug("Can't copy to %s, file exists already and is of different type", i->path);
+                                return 0;
+                        }
                 }
 
                 r = item_set_perms(i, i->path);
@@ -693,22 +710,24 @@ static int create_item(Item *i) {
 
                 RUN_WITH_UMASK(0000) {
                         mkdir_parents_label(i->path, 0755);
-                        r = mkdir(i->path, i->mode);
+                        r = mkdir_label(i->path, i->mode);
                 }
 
-                if (r < 0 && errno != EEXIST) {
-                        log_error("Failed to create directory %s: %m", i->path);
-                        return -errno;
-                }
+                if (r < 0) {
+                        if (r != -EEXIST) {
+                                log_error("Failed to create directory %s: %s", i->path, strerror(-r));
+                                return r;
+                        }
 
-                if (stat(i->path, &st) < 0) {
-                        log_error("stat(%s) failed: %m", i->path);
-                        return -errno;
-                }
+                        if (stat(i->path, &st) < 0) {
+                                log_error("stat(%s) failed: %m", i->path);
+                                return -errno;
+                        }
 
-                if (!S_ISDIR(st.st_mode)) {
-                        log_error("%s is not a directory.", i->path);
-                        return -EEXIST;
+                        if (!S_ISDIR(st.st_mode)) {
+                                log_debug("%s already exists and is not a directory.", i->path);
+                                return 0;
+                        }
                 }
 
                 r = item_set_perms(i, i->path);
@@ -720,22 +739,41 @@ static int create_item(Item *i) {
         case CREATE_FIFO:
 
                 RUN_WITH_UMASK(0000) {
+                        label_context_set(i->path, S_IFIFO);
                         r = mkfifo(i->path, i->mode);
+                        label_context_clear();
                 }
 
-                if (r < 0 && errno != EEXIST) {
-                        log_error("Failed to create fifo %s: %m", i->path);
-                        return -errno;
-                }
+                if (r < 0) {
+                        if (errno != EEXIST) {
+                                log_error("Failed to create fifo %s: %m", i->path);
+                                return -errno;
+                        }
 
-                if (stat(i->path, &st) < 0) {
-                        log_error("stat(%s) failed: %m", i->path);
-                        return -errno;
-                }
+                        if (stat(i->path, &st) < 0) {
+                                log_error("stat(%s) failed: %m", i->path);
+                                return -errno;
+                        }
+
+                        if (!S_ISFIFO(st.st_mode)) {
+
+                                if (i->force) {
+
+                                        RUN_WITH_UMASK(0000) {
+                                                label_context_set(i->path, S_IFIFO);
+                                                r = mkfifo_atomic(i->path, i->mode);
+                                                label_context_clear();
+                                        }
 
-                if (!S_ISFIFO(st.st_mode)) {
-                        log_error("%s is not a fifo.", i->path);
-                        return -EEXIST;
+                                        if (r < 0) {
+                                                log_error("Failed to create fifo %s: %s", i->path, strerror(-r));
+                                                return r;
+                                        }
+                                } else {
+                                        log_debug("%s is not a fifo.", i->path);
+                                        return 0;
+                                }
+                        }
                 }
 
                 r = item_set_perms(i, i->path);
@@ -744,31 +782,40 @@ static int create_item(Item *i) {
 
                 break;
 
-        case CREATE_SYMLINK: {
-                _cleanup_free_ char *x = NULL;
+        case CREATE_SYMLINK:
 
                 label_context_set(i->path, S_IFLNK);
                 r = symlink(i->argument, i->path);
                 label_context_clear();
 
-                if (r < 0 && errno != EEXIST) {
-                        log_error("symlink(%s, %s) failed: %m", i->argument, i->path);
-                        return -errno;
-                }
-
-                r = readlink_malloc(i->path, &x);
                 if (r < 0) {
-                        log_error("readlink(%s) failed: %s", i->path, strerror(-r));
-                        return -errno;
-                }
+                        _cleanup_free_ char *x = NULL;
+
+                        if (errno != EEXIST) {
+                                log_error("symlink(%s, %s) failed: %m", i->argument, i->path);
+                                return -errno;
+                        }
+
+                        r = readlink_malloc(i->path, &x);
+                        if (r < 0 || !streq(i->argument, x)) {
+
+                                if (i->force) {
+                                        label_context_set(i->path, S_IFLNK);
+                                        r = symlink_atomic(i->argument, i->path);
+                                        label_context_clear();
 
-                if (!streq(i->argument, x)) {
-                        log_error("%s is not the right symlink.", i->path);
-                        return -EEXIST;
+                                        if (r < 0) {
+                                                log_error("symlink(%s, %s) failed: %s", i->argument, i->path, strerror(-r));
+                                                return r;
+                                        }
+                                } else {
+                                        log_debug("%s is not a symlink or does not point to the correct path.", i->path);
+                                        return 0;
+                                }
+                        }
                 }
 
                 break;
-        }
 
         case CREATE_BLOCK_DEVICE:
         case CREATE_CHAR_DEVICE: {
@@ -784,7 +831,7 @@ static int create_item(Item *i) {
                         return 0;
                 }
 
-                file_type = (i->type == CREATE_BLOCK_DEVICE ? S_IFBLK : S_IFCHR);
+                file_type = i->type == CREATE_BLOCK_DEVICE ? S_IFBLK : S_IFCHR;
 
                 RUN_WITH_UMASK(0000) {
                         label_context_set(i->path, file_type);
@@ -792,19 +839,42 @@ static int create_item(Item *i) {
                         label_context_clear();
                 }
 
-                if (r < 0 && errno != EEXIST) {
-                        log_error("Failed to create device node %s: %m", i->path);
-                        return -errno;
-                }
+                if (r < 0) {
+                        if (errno == EPERM) {
+                                log_debug("We lack permissions, possibly because of cgroup configuration; "
+                                          "skipping creation of device node %s.", i->path);
+                                return 0;
+                        }
 
-                if (stat(i->path, &st) < 0) {
-                        log_error("stat(%s) failed: %m", i->path);
-                        return -errno;
-                }
+                        if (errno != EEXIST) {
+                                log_error("Failed to create device node %s: %m", i->path);
+                                return -errno;
+                        }
+
+                        if (stat(i->path, &st) < 0) {
+                                log_error("stat(%s) failed: %m", i->path);
+                                return -errno;
+                        }
 
-                if ((st.st_mode & S_IFMT) != file_type) {
-                        log_error("%s is not a device node.", i->path);
-                        return -EEXIST;
+                        if ((st.st_mode & S_IFMT) != file_type) {
+
+                                if (i->force) {
+
+                                        RUN_WITH_UMASK(0000) {
+                                                label_context_set(i->path, file_type);
+                                                r = mknod_atomic(i->path, i->mode | file_type, i->major_minor);
+                                                label_context_clear();
+                                        }
+
+                                        if (r < 0) {
+                                                log_error("Failed to create device node %s: %s", i->path, strerror(-r));
+                                                return r;
+                                        }
+                                } else {
+                                        log_debug("%s is not a device node.", i->path);
+                                        return 0;
+                                }
+                        }
                 }
 
                 r = item_set_perms(i, i->path);
@@ -1021,7 +1091,9 @@ static int process_item(Item *i) {
 }
 
 static void item_free(Item *i) {
-        assert(i);
+
+        if (!i)
+                return;
 
         free(i->path);
         free(i->argument);
@@ -1123,10 +1195,17 @@ static int parse_line(const char *fname, unsigned line, const char *buffer) {
                 return -EIO;
         }
 
-        if (strlen(action) > 2 || (strlen(action) > 1 && action[1] != '!')) {
-                log_error("[%s:%u] Unknown modifier '%s'", fname, line, action);
+        if (isempty(action)) {
+                log_error("[%s:%u] Command too short '%s'.", fname, line, action);
                 return -EINVAL;
-        } else if (strlen(action) > 1 && !arg_boot)
+        }
+
+        if (strlen(action) > 1 && !in_charset(action+1, "!+")) {
+                log_error("[%s:%u] Unknown modifiers in command '%s'", fname, line, action);
+                return -EINVAL;
+        }
+
+        if (strchr(action+1, '!') && !arg_boot)
                 return 0;
 
         type = action[0];
@@ -1135,6 +1214,8 @@ static int parse_line(const char *fname, unsigned line, const char *buffer) {
         if (!i)
                 return log_oom();
 
+        i->force = !!strchr(action+1, '+');
+
         r = specifier_printf(path, specifier_table, NULL, &i->path);
         if (r < 0) {
                 log_error("[%s:%u] Failed to replace specifiers: %s", fname, line, path);
@@ -1150,7 +1231,7 @@ static int parse_line(const char *fname, unsigned line, const char *buffer) {
                 }
         }
 
-        switch(type) {
+        switch (type) {
 
         case CREATE_FILE:
         case TRUNCATE_FILE:
@@ -1168,10 +1249,10 @@ static int parse_line(const char *fname, unsigned line, const char *buffer) {
 
         case CREATE_SYMLINK:
                 if (!i->argument) {
-                        log_error("[%s:%u] Symlink file requires argument.", fname, line);
-                        return -EBADMSG;
+                        i->argument = strappend("/usr/share/factory", i->path);
+                        if (!i->argument)
+                                return log_oom();
                 }
-
                 break;
 
         case WRITE_FILE:
@@ -1183,8 +1264,9 @@ static int parse_line(const char *fname, unsigned line, const char *buffer) {
 
         case COPY_FILES:
                 if (!i->argument) {
-                        log_error("[%s:%u] Copy files requires argument.", fname, line);
-                        return -EBADMSG;
+                        i->argument = strappend("/usr/share/factory", i->path);
+                        if (!i->argument)
+                                return log_oom();
                 }
 
                 if (!path_is_absolute(i->argument)) {
@@ -1214,7 +1296,7 @@ static int parse_line(const char *fname, unsigned line, const char *buffer) {
         }
 
         default:
-                log_error("[%s:%u] Unknown file type '%c'.", fname, line, type);
+                log_error("[%s:%u] Unknown command type '%c'.", fname, line, type);
                 return -EBADMSG;
         }
 
@@ -1413,9 +1495,11 @@ static int parse_argv(int argc, char *argv[]) {
                         break;
 
                 case ARG_ROOT:
+                        free(arg_root);
                         arg_root = path_make_absolute_cwd(optarg);
                         if (!arg_root)
                                 return log_oom();
+
                         path_kill_slashes(arg_root);
                         break;
 
@@ -1513,7 +1597,7 @@ int main(int argc, char *argv[]) {
 
         r = parse_argv(argc, argv);
         if (r <= 0)
-                return r < 0 ? EXIT_FAILURE : EXIT_SUCCESS;
+                goto finish;
 
         log_set_target(LOG_TARGET_AUTO);
         log_parse_environment();
index a9acc3ddb7f3173058a07209f4680abb16abba54..b8650a6c6c315cda23a4aecf6e3cd7b7f1d688b2 100644 (file)
@@ -92,14 +92,20 @@ static int link_config_ctx_connect(link_config_ctx *ctx) {
 
         if (ctx->ethtool_fd == -1) {
                 r = ethtool_connect(&ctx->ethtool_fd);
-                if (r < 0)
+                if (r < 0) {
+                        log_warning("link_config: could not connect to ethtool: %s",
+                                    strerror(-r));
                         return r;
+                }
         }
 
         if (!ctx->rtnl) {
                 r = sd_rtnl_open(&ctx->rtnl, 0);
-                if (r < 0)
+                if (r < 0) {
+                        log_warning("link_config: could not connect to rtnl: %s",
+                                    strerror(-r));
                         return r;
+                }
         }
 
         return 0;
@@ -185,7 +191,7 @@ static int load_link(link_config_ctx *ctx, const char *filename) {
 }
 
 static bool enable_name_policy(void) {
-        _cleanup_free_ char *line;
+        _cleanup_free_ char *line = NULL;
         char *w, *state;
         int r;
         size_t l;
index c80c30ac77328c0fedfd8d653415e17d3b677148..96ac21c16771ff0f25cbb881e2e14049140f4e81 100644 (file)
@@ -36,9 +36,9 @@
  *   b<number>                             -- BCMA bus core number
  *   ccw<name>                             -- CCW bus group name
  *   o<index>                              -- on-board device index number
- *   s<slot>[f<function>][d<dev_id>]       -- hotplug slot index number
+ *   s<slot>[f<function>][d<dev_port>]     -- hotplug slot index number
  *   x<MAC>                                -- MAC address
- *   [P<domain>]p<bus>s<slot>[f<function>][d<dev_id>]
+ *   [P<domain>]p<bus>s<slot>[f<function>][d<dev_port>]
  *                                         -- PCI geographical location
  *   [P<domain>]p<bus>s<slot>[f<function>][u<port>][..][c<config>][i<interface>]
  *                                         -- USB port number chain
@@ -172,7 +172,7 @@ out:
 
 static int dev_pci_slot(struct udev_device *dev, struct netnames *names) {
         struct udev *udev = udev_device_get_udev(names->pcidev);
-        unsigned domain, bus, slot, func, dev_id = 0;
+        unsigned domain, bus, slot, func, dev_port = 0;
         size_t l;
         char *s;
         const char *attr;
@@ -186,9 +186,9 @@ static int dev_pci_slot(struct udev_device *dev, struct netnames *names) {
                 return -ENOENT;
 
         /* kernel provided multi-device index */
-        attr = udev_device_get_sysattr_value(dev, "dev_id");
+        attr = udev_device_get_sysattr_value(dev, "dev_port");
         if (attr)
-                dev_id = strtol(attr, NULL, 16);
+                dev_port = strtol(attr, NULL, 10);
 
         /* compose a name based on the raw kernel's PCI bus, slot numbers */
         s = names->pci_path;
@@ -198,8 +198,8 @@ static int dev_pci_slot(struct udev_device *dev, struct netnames *names) {
         l = strpcpyf(&s, l, "p%ds%d", bus, slot);
         if (func > 0 || is_pci_multifunction(names->pcidev))
                 l = strpcpyf(&s, l, "f%d", func);
-        if (dev_id > 0)
-                l = strpcpyf(&s, l, "d%d", dev_id);
+        if (dev_port > 0)
+                l = strpcpyf(&s, l, "d%d", dev_port);
         if (l == 0)
                 names->pci_path[0] = '\0';
 
@@ -248,8 +248,8 @@ static int dev_pci_slot(struct udev_device *dev, struct netnames *names) {
                 l = strpcpyf(&s, l, "s%d", hotplug_slot);
                 if (func > 0 || is_pci_multifunction(names->pcidev))
                         l = strpcpyf(&s, l, "f%d", func);
-                if (dev_id > 0)
-                        l = strpcpyf(&s, l, "d%d", dev_id);
+                if (dev_port > 0)
+                        l = strpcpyf(&s, l, "d%d", dev_port);
                 if (l == 0)
                         names->pci_path[0] = '\0';
         }
index 3cd384e94dc8ecf144dc039317175fc9bc7a959c..6207269ab9cd129721e9d772b430df7d01122bba 100644 (file)
@@ -43,17 +43,17 @@ static int builtin_net_setup_link(struct udev_device *dev, int argc, char **argv
         r = link_config_get(ctx, dev, &link);
         if (r < 0) {
                 if (r == -ENOENT) {
-                        log_debug("No matching link configuration found");
+                        log_debug("No matching link configuration found.");
                         return EXIT_SUCCESS;
                 } else {
-                        log_error("Could not get link config");
+                        log_error("Could not get link config: %s", strerror(-r));
                         return EXIT_FAILURE;
                 }
         }
 
         r = link_config_apply(ctx, link, dev, &name);
         if (r < 0) {
-                log_error("Could not apply link config to %s", udev_device_get_sysname(dev));
+                log_error("Could not apply link config to %s: %s", udev_device_get_sysname(dev), strerror(-r));
                 return EXIT_FAILURE;
         }
 
@@ -77,18 +77,18 @@ static int builtin_net_setup_link_init(struct udev *udev) {
         if (r < 0)
                 return r;
 
-        log_debug("Created link configuration context");
+        log_debug("Created link configuration context.");
         return 0;
 }
 
 static void builtin_net_setup_link_exit(struct udev *udev) {
         link_config_ctx_free(ctx);
         ctx = NULL;
-        log_debug("Unloaded link configuration context");
+        log_debug("Unloaded link configuration context.");
 }
 
 static bool builtin_net_setup_link_validate(struct udev *udev) {
-        log_debug("Check if link configuration needs reloading");
+        log_debug("Check if link configuration needs reloading.");
         if (!ctx)
                 return false;
 
index 66fd843012393fac123bd86514ddad5e46a4c374..fa5b0c2d2ed8119b85e3719a923de6f8c407e01b 100644 (file)
@@ -29,7 +29,6 @@
 #include <getopt.h>
 #include <signal.h>
 #include <time.h>
-#include <sys/inotify.h>
 #include <sys/poll.h>
 #include <sys/stat.h>
 #include <sys/types.h>
@@ -59,7 +58,9 @@ static int adm_settle(struct udev *udev, int argc, char *argv[])
         const char *exists = NULL;
         unsigned int timeout = 120;
         struct pollfd pfd[1] = { {.fd = -1}, };
-        int rc = EXIT_FAILURE, c;
+        int c;
+        struct udev_queue *queue;
+        int rc = EXIT_FAILURE;
 
         while ((c = getopt_long(argc, argv, "s:e:t:E:qh", options, NULL)) >= 0) {
                 switch (c) {
@@ -79,9 +80,9 @@ static int adm_settle(struct udev *udev, int argc, char *argv[])
                         break;
                 case 'h':
                         help();
-                        exit(EXIT_SUCCESS);
+                        return EXIT_SUCCESS;
                 case '?':
-                        exit(EXIT_FAILURE);
+                        return EXIT_FAILURE;
                 default:
                         assert_not_reached("Unknown argument");
                 }
@@ -89,7 +90,7 @@ static int adm_settle(struct udev *udev, int argc, char *argv[])
 
         if (optind < argc) {
                 fprintf(stderr, "Extraneous argument: '%s'\n", argv[optind]);
-                exit(EXIT_FAILURE);
+                return EXIT_FAILURE;
         }
 
         /* guarantee that the udev daemon isn't pre-processing */
@@ -101,26 +102,23 @@ static int adm_settle(struct udev *udev, int argc, char *argv[])
                         if (udev_ctrl_send_ping(uctrl, timeout) < 0) {
                                 log_debug("no connection to daemon");
                                 udev_ctrl_unref(uctrl);
-                                rc = EXIT_SUCCESS;
-                                goto out;
+                                return EXIT_SUCCESS;
                         }
                         udev_ctrl_unref(uctrl);
                 }
         }
 
-        pfd[0].events = POLLIN;
-        pfd[0].fd = inotify_init1(IN_CLOEXEC);
-        if (pfd[0].fd < 0) {
-                log_error("inotify_init failed: %m");
-                goto out;
+        queue = udev_queue_new(udev);
+        if (!queue) {
+                log_error("unable to get udev queue");
+                return EXIT_FAILURE;
         }
 
-        if (inotify_add_watch(pfd[0].fd, "/run/udev/queue" , IN_DELETE) < 0) {
-                /* If it does not exist, we don't have to wait */
-                if (errno == ENOENT)
-                        rc = EXIT_SUCCESS;
-                else
-                        log_debug("watching /run/udev/queue failed");
+        pfd[0].events = POLLIN;
+        pfd[0].fd = udev_queue_get_fd(queue);
+        if (pfd[0].fd < 0) {
+                log_debug("queue is empty, nothing to watch");
+                rc = EXIT_SUCCESS;
                 goto out;
         }
 
@@ -131,22 +129,18 @@ static int adm_settle(struct udev *udev, int argc, char *argv[])
                 }
 
                 /* exit if queue is empty */
-                if (access("/run/udev/queue", F_OK) < 0) {
+                if (udev_queue_get_queue_is_empty(queue)) {
                         rc = EXIT_SUCCESS;
                         break;
                 }
 
-                /* wake up when "queue" file is deleted */
-                if (poll(pfd, 1, 100) > 0 && pfd[0].revents & POLLIN) {
-                        char buf[sizeof(struct inotify_event) + PATH_MAX];
-
-                        read(pfd[0].fd, buf, sizeof(buf));
-                }
+                /* wake up when queue is empty */
+                if (poll(pfd, 1, MSEC_PER_SEC) > 0 && pfd[0].revents & POLLIN)
+                        udev_queue_flush(queue);
         }
 
 out:
-        if (pfd[0].fd >= 0)
-                close(pfd[0].fd);
+        udev_queue_unref(queue);
         return rc;
 }
 
diff --git a/src/update-done/update-done.c b/src/update-done/update-done.c
new file mode 100644 (file)
index 0000000..10ba85c
--- /dev/null
@@ -0,0 +1,104 @@
+/*-*- Mode: C; c-basic-offset: 8; indent-tabs-mode: nil -*-*/
+
+/***
+  This file is part of systemd.
+
+  Copyright 2014 Lennart Poettering
+
+  systemd is free software; you can redistribute it and/or modify it
+  under the terms of the GNU Lesser General Public License as published by
+  the Free Software Foundation; either version 2.1 of the License, or
+  (at your option) any later version.
+
+  systemd is distributed in the hope that it will be useful, but
+  WITHOUT ANY WARRANTY; without even the implied warranty of
+  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+  Lesser General Public License for more details.
+
+  You should have received a copy of the GNU Lesser General Public License
+  along with systemd; If not, see <http://www.gnu.org/licenses/>.
+***/
+
+#include "util.h"
+
+static int apply_timestamp(const char *path, struct timespec *ts) {
+        struct timespec twice[2];
+        struct stat st;
+
+        assert(path);
+        assert(ts);
+
+        if (stat(path, &st) >= 0) {
+                /* Is the timestamp file already newer than the OS? If so, there's nothing to do. */
+                if (st.st_mtim.tv_sec > ts->tv_sec ||
+                    (st.st_mtim.tv_sec == ts->tv_sec && st.st_mtim.tv_nsec >= ts->tv_nsec))
+                        return 0;
+
+                /* It is older? Then let's update it */
+                twice[0] = *ts;
+                twice[1] = *ts;
+
+                if (utimensat(AT_FDCWD, path, twice, AT_SYMLINK_NOFOLLOW) < 0) {
+
+                        if (errno == EROFS) {
+                                log_debug("Can't update timestamp file %s, file system is read-only.", path);
+                                return 0;
+                        }
+
+                        log_error("Failed to update timestamp on %s: %m", path);
+                        return -errno;
+                }
+
+        } else if (errno == ENOENT) {
+                _cleanup_close_ int fd = -1;
+
+                /* The timestamp file doesn't exist yet? Then let's create it. */
+
+                fd = open(path, O_CREAT|O_EXCL|O_WRONLY|O_TRUNC|O_CLOEXEC|O_NOCTTY|O_NOFOLLOW, 0644);
+                if (fd < 0) {
+
+                        if (errno == EROFS) {
+                                log_debug("Can't create timestamp file %s, file system is read-only.", path);
+                                return 0;
+                        }
+
+                        log_error("Failed to create timestamp file %s: %m", path);
+                        return -errno;
+                }
+
+                twice[0] = *ts;
+                twice[1] = *ts;
+
+                if (futimens(fd, twice) < 0) {
+                        log_error("Failed to update timestamp on %s: %m", path);
+                        return -errno;
+                }
+        } else {
+                log_error("Failed to stat() timestamp file %s: %m", path);
+                return -errno;
+        }
+
+        return 0;
+}
+
+int main(int argc, char *argv[]) {
+        struct stat st;
+        int r, q;
+
+        log_set_target(LOG_TARGET_AUTO);
+        log_parse_environment();
+        log_open();
+
+        if (stat("/usr", &st) < 0) {
+                log_error("Failed to stat /usr: %m");
+                return EXIT_FAILURE;
+        }
+
+        r = apply_timestamp("/etc/.updated", &st.st_mtim);
+
+        q = apply_timestamp("/var/.updated", &st.st_mtim);
+        if (q < 0 && r == 0)
+                r = q;
+
+        return r < 0 ? EXIT_FAILURE : EXIT_SUCCESS;
+}
index 0f2b7066e2bcd8279097e1751f3c4a945681323c..e0c40506112d7aba92bfd8a913c28177aedd0057 100644 (file)
@@ -180,6 +180,10 @@ static int font_load(const char *vc, const char *font, const char *map, const ch
  */
 static void font_copy_to_all_vcs(int fd) {
         struct vt_stat vcs = {};
+        unsigned char map8[E_TABSZ];
+        unsigned short map16[E_TABSZ];
+        struct unimapdesc unimapd;
+        struct unipair unipairs[USHRT_MAX];
         int i, r;
 
         /* get active, and 16 bit mask of used VT numbers */
@@ -209,6 +213,26 @@ static void font_copy_to_all_vcs(int fd) {
                 cfo.op = KD_FONT_OP_COPY;
                 cfo.height = vcs.v_active-1; /* tty1 == index 0 */
                 ioctl(vcfd, KDFONTOP, &cfo);
+
+                /* copy map of 8bit chars */
+                if (ioctl(fd, GIO_SCRNMAP, map8) >= 0)
+                    ioctl(vcfd, PIO_SCRNMAP, map8);
+
+                /* copy map of 8bit chars -> 16bit Unicode values */
+                if (ioctl(fd, GIO_UNISCRNMAP, map16) >= 0)
+                    ioctl(vcfd, PIO_UNISCRNMAP, map16);
+
+                /* copy unicode translation table */
+                /* unimapd is a ushort count and a pointer to an
+                   array of struct unipair { ushort, ushort } */
+                unimapd.entries  = unipairs;
+                unimapd.entry_ct = USHRT_MAX;
+                if (ioctl(fd, GIO_UNIMAP, &unimapd) >= 0) {
+                        struct unimapinit adv = { 0, 0, 0 };
+
+                        ioctl(vcfd, PIO_UNIMAPCLR, &adv);
+                        ioctl(vcfd, PIO_UNIMAP, &unimapd);
+                }
         }
 }
 
diff --git a/system-preset/90-systemd.preset b/system-preset/90-systemd.preset
new file mode 100644 (file)
index 0000000..e4a9e17
--- /dev/null
@@ -0,0 +1,31 @@
+#  This file is part of systemd.
+#
+#  systemd is free software; you can redistribute it and/or modify it
+#  under the terms of the GNU Lesser General Public License as published by
+#  the Free Software Foundation; either version 2.1 of the License, or
+#  (at your option) any later version.
+
+# These ones should be enabled by default, even if distributions
+# generally follow a default-off policy.
+
+enable remote-fs.target
+enable getty@.service
+enable systemd-readahead-*
+enable systemd-timesyncd.service
+enable systemd-networkd.service
+enable systemd-resolved.service
+
+disable console-getty.service
+disable console-shell.service
+disable debug-shell.service
+
+disable halt.target
+disable kexec.target
+disable poweroff.target
+disable reboot.target
+disable rescue.target
+
+disable syslog.socket
+
+disable systemd-journal-gatewayd.*
+disable systemd-networkd-wait-online.service
diff --git a/sysusers.d/basic.conf.in b/sysusers.d/basic.conf.in
new file mode 100644 (file)
index 0000000..d463ce5
--- /dev/null
@@ -0,0 +1,37 @@
+#  This file is part of systemd.
+#
+#  systemd is free software; you can redistribute it and/or modify it
+#  under the terms of the GNU Lesser General Public License as published by
+#  the Free Software Foundation; either version 2.1 of the License, or
+#  (at your option) any later version.
+
+# The superuser
+u root                          0               "Super User"
+
+# The nobody user for NFS file systems
+u nobody                        65534           "Nobody"
+
+# Administrator group: can *see* more than normal users
+g adm                           -               -
+
+# Administrator group: can *do* more than normal users
+g wheel                         -               -
+
+# Access to certain kernel and userspace facilities
+g kmem                          -               -
+g lock                          -               -
+g tty                           @TTY_GID@               -
+g utmp                          -               -
+
+# Hardware access groups
+g audio                         -               -
+g cdrom                         -               -
+g dialout                       -               -
+g disk                          -               -
+g input                         -               -
+g lp                            -               -
+g tape                          -               -
+g video                         -               -
+
+# Default group for normal users
+g users                         -               -
diff --git a/sysusers.d/systemd.conf b/sysusers.d/systemd.conf
new file mode 100644 (file)
index 0000000..139f010
--- /dev/null
@@ -0,0 +1,13 @@
+#  This file is part of systemd.
+#
+#  systemd is free software; you can redistribute it and/or modify it
+#  under the terms of the GNU Lesser General Public License as published by
+#  the Free Software Foundation; either version 2.1 of the License, or
+#  (at your option) any later version.
+
+g systemd-journal               -               -
+u systemd-journal-gateway       -               "systemd Journal Gateway"
+u systemd-bus-proxy             -               "systemd Bus Proxy"
+u systemd-network               -               "systemd Network Management"
+u systemd-resolve               -               "systemd Resolver"
+u systemd-timesync              -               "systemd Time Synchronization"
index 3fba63d4006220f85bb533de722cb9115b88b849..62ab51eec1bc754e950f895b413845237ea6f278 100644 (file)
@@ -74,6 +74,8 @@ udev_queue_get_seqnum_sequence_is_finished,
 udev_queue_get_udev,
 udev_queue_get_udev_is_active,
 udev_queue_get_udev_seqnum,
+udev_queue_get_fd,
+udev_queue_flush,
 udev_queue_new,
 udev_queue_ref,
 udev_queue_unref,
diff --git a/tmpfiles.d/etc.conf b/tmpfiles.d/etc.conf
new file mode 100644 (file)
index 0000000..e809dff
--- /dev/null
@@ -0,0 +1,13 @@
+#  This file is part of systemd.
+#
+#  systemd is free software; you can redistribute it and/or modify it
+#  under the terms of the GNU Lesser General Public License as published by
+#  the Free Software Foundation; either version 2.1 of the License, or
+#  (at your option) any later version.
+
+# See tmpfiles.d(5) for details
+
+L /etc/os-release - - - - ../usr/lib/os-release
+L /etc/localtime - - - - ../usr/share/zoneinfo/UTC
+L+ /etc/mtab - - - - ../proc/self/mounts
+L /etc/resolv.conf - - - - ../run/systemd/resolve/resolv.conf
index fbc47823dbb015611464c4a3a9e62b5b6ac69202..9ca5ad2bc806c38523ca19d60ceffaae8dc279dc 100644 (file)
@@ -7,7 +7,7 @@
 
 # See tmpfiles.d(5) for details
 
-d /run/user 0755 root root ~10d
+d /run/user 0755 root root -
 F! /run/utmp 0664 root utmp -
 
 d /run/systemd/ask-password 0755 root root -
@@ -20,8 +20,13 @@ d /run/systemd/netif 0755 systemd-network systemd-network -
 d /run/systemd/netif/links 0755 systemd-network systemd-network -
 d /run/systemd/netif/leases 0755 systemd-network systemd-network -
 
+d /run/log 0755 root root -
+
 z /run/log/journal 2755 root systemd-journal - -
 Z /run/log/journal/%m ~2750 root systemd-journal - -
 
 z /var/log/journal 2755 root systemd-journal - -
 z /var/log/journal/%m 2755 root systemd-journal - -
+
+d /var/lib/systemd 0755 root root -
+d /var/lib/systemd/coredump 0755 root root 3d
index 45822e4a1072246b1d6b2859cd395fac6071f977..4b63e4197ba3bc115f5640d2d20ef99cb3893ccc 100644 (file)
@@ -16,7 +16,6 @@ f /var/log/wtmp 0664 root utmp -
 f /var/log/btmp 0600 root utmp -
 
 d /var/cache 0755 - - -
-d /var/cache/man - - - 30d
 
 d /var/lib 0755 - - -
 d /var/spool 0755 - - -
index 2ff304fddc1ca14f743c58409b1d6d24f5ae5779..5c80a7b9e671f67e441b17c3a63a13fc4b8a54aa 100755 (executable)
@@ -113,12 +113,13 @@ TEMPLATE = '''\
         </refsect1>
 
         <refsect1>
-                <title>crypttab options</title>
+                <title><filename>/etc/crypttab</filename> and
+                <filename>/etc/fstab</filename> options</title>
 
                 <para>Options which influence mounted filesystems and
                 encrypted volumes.</para>
 
-                <variablelist id='crypttab-options' />
+                <variablelist id='fstab-options' />
         </refsect1>
 
         <refsect1>
index 9f46f7b889c694c0937fb789c21d055f4ca82dc1..e75bfffba140c6cab9508618acc9d30b358a8c03 100644 (file)
@@ -62,7 +62,7 @@ FOOTER = '''\
 # Really, do not edit this file.
 
 EXTRA_DIST += \\
-       {files}
+       {files}
 '''
 
 def man(page, number):
index d7c68f4e2c217bdc7a3143eb6e3690894ae20ea0..b890d48bbceca74b5583a69bf542cefcae62467a 100644 (file)
@@ -11,4 +11,3 @@ Documentation=man:systemd.special(7)
 Requires=sysinit.target
 Wants=sockets.target timers.target paths.target slices.target
 After=sysinit.target sockets.target timers.target paths.target slices.target
-RefuseManualStart=yes
diff --git a/units/cryptsetup-pre.target b/units/cryptsetup-pre.target
new file mode 100644 (file)
index 0000000..6535341
--- /dev/null
@@ -0,0 +1,11 @@
+#  This file is part of systemd.
+#
+#  systemd is free software; you can redistribute it and/or modify it
+#  under the terms of the GNU Lesser General Public License as published by
+#  the Free Software Foundation; either version 2.1 of the License, or
+#  (at your option) any later version.
+
+[Unit]
+Description=Encrypted Volumes (Pre)
+Documentation=man:systemd.special(7)
+RefuseManualStart=yes
index a6acad3ec598e7a464a023f3481b0086b4cf7c19..59f6e494b375d58e42fc73314867b475550ff6ed 100644 (file)
@@ -10,6 +10,7 @@ Description=Early root shell on @DEBUGTTY@ FOR DEBUGGING ONLY
 Documentation=man:sushell(8)
 DefaultDependencies=no
 IgnoreOnIsolate=yes
+ConditionPathExists=@DEBUGTTY@
 
 [Service]
 Environment=TERM=linux
index aa853b8d6d17ce3932a54abff9553235323b523a..46164ab9d809ee848bc92c82a708ccffc262ec74 100644 (file)
@@ -46,3 +46,4 @@ Environment=LANG= LANGUAGE= LC_CTYPE= LC_NUMERIC= LC_TIME= LC_COLLATE= LC_MONETA
 
 [Install]
 WantedBy=getty.target
+DefaultInstance=tty1
diff --git a/units/ldconfig.service b/units/ldconfig.service
new file mode 100644 (file)
index 0000000..43c145b
--- /dev/null
@@ -0,0 +1,20 @@
+#  This file is part of systemd.
+#
+#  systemd is free software; you can redistribute it and/or modify it
+#  under the terms of the GNU Lesser General Public License as published by
+#  the Free Software Foundation; either version 2.1 of the License, or
+#  (at your option) any later version.
+
+[Unit]
+Description=Rebuild Dynamic Linker Cache
+Documentation=man:ldconfig(8)
+DefaultDependencies=no
+Conflicts=shutdown.target
+After=systemd-readahead-collect.service systemd-readahead-replay.service systemd-remount-fs.service
+Before=sysinit.target shutdown.target systemd-update-done.service
+ConditionNeedsUpdate=/etc
+
+[Service]
+Type=oneshot
+RemainAfterExit=yes
+ExecStart=/sbin/ldconfig -X
index 70cb13f25d4be4db4046a51ed11fe27336254ece..d2e5429c710f0753f25ec5c4f5e3fd4ee5bfd492 100644 (file)
@@ -8,6 +8,8 @@
 [Unit]
 Description=Local File Systems
 Documentation=man:systemd.special(7)
+DefaultDependencies=no
+Conflicts=shutdown.target
 After=local-fs-pre.target
 OnFailure=emergency.target
 OnFailureJobMode=replace-irreversibly
index 8f4fb8f5c12f26cd3e2ea2ee47ce8ad65bc92957..ec335033304ff309048096e8db7db3f37d528004 100644 (file)
@@ -11,4 +11,3 @@ Documentation=man:systemd.special(7)
 Conflicts=emergency.service emergency.target
 Wants=local-fs.target swap.target
 After=local-fs.target swap.target emergency.service emergency.target
-RefuseManualStart=yes
diff --git a/units/systemd-journal-catalog-update.service.in b/units/systemd-journal-catalog-update.service.in
new file mode 100644 (file)
index 0000000..0cb7076
--- /dev/null
@@ -0,0 +1,20 @@
+#  This file is part of systemd.
+#
+#  systemd is free software; you can redistribute it and/or modify it
+#  under the terms of the GNU Lesser General Public License as published by
+#  the Free Software Foundation; either version 2.1 of the License, or
+#  (at your option) any later version.
+
+[Unit]
+Description=Rebuild Journal Catalog
+Documentation=man:systemd-journald.service(8) man:journald.conf(5)
+DefaultDependencies=no
+Conflicts=shutdown.target
+After=systemd-readahead-collect.service systemd-readahead-replay.service local-fs.target
+Before=sysinit.target shutdown.target systemd-update-done.service
+ConditionNeedsUpdate=/etc
+
+[Service]
+Type=oneshot
+RemainAfterExit=yes
+ExecStart=@rootbindir@/journalctl --update-catalog
index 3ae0847b7906b30421518f288195e973a6ae1f68..bbb13de315dc07393a73be7c5f1365b767497623 100644 (file)
@@ -15,7 +15,7 @@ After=machine.slice
 [Service]
 ExecStart=@rootlibexecdir@/systemd-machined
 BusName=org.freedesktop.machine1
-CapabilityBoundingSet=CAP_KILL
+CapabilityBoundingSet=CAP_KILL CAP_SYS_PTRACE CAP_SYS_ADMIN CAP_SETGID CAP_SYS_CHROOT
 WatchdogSec=1min
 PrivateTmp=yes
 PrivateDevices=yes
index 8597f7c443a8f38d1cae09e02beb70cf95a6f05a..a9bad7aa8f28a4632c59dd5ec54f8cd6546e667b 100644 (file)
@@ -12,7 +12,7 @@ DefaultDependencies=no
 Conflicts=shutdown.target
 Requisite=systemd-networkd.service
 After=systemd-networkd.service
-Before=network.target network-online.target
+Before=network-online.target
 
 [Service]
 Type=oneshot
index 48f4d63a8727a3073799a1512b821db0bcabc600..f33c65e6ff07e433a3c81cddfc02183c3e630ba6 100644 (file)
@@ -8,11 +8,12 @@
 [Unit]
 Description=Network Service
 Documentation=man:systemd-networkd.service(8)
+ConditionCapability=CAP_NET_ADMIN
 DefaultDependencies=no
-After=dbus.service network-pre.target
-Before=network.target
+After=dbus.service network-pre.target systemd-sysusers.service
+Before=network.target multi-user.target shutdown.target
+Conflicts=shutdown.target
 Wants=network.target
-ConditionCapability=CAP_NET_ADMIN
 
 [Service]
 Type=notify
@@ -25,5 +26,4 @@ ProtectHome=yes
 WatchdogSec=1min
 
 [Install]
-Also=systemd-networkd-wait-online.service
 WantedBy=multi-user.target
index e37362847a3ae793cb7382ea14569b4996f4b0ef..574d0deafa204af47f15b335ea0e12e5a653c79b 100644 (file)
@@ -13,6 +13,8 @@ Documentation=man:systemd-nspawn(1)
 ExecStart=@bindir@/systemd-nspawn --quiet --keep-unit --boot --link-journal=guest --directory=/var/lib/container/%i
 KillMode=mixed
 Type=notify
+RestartForceExitStatus=133
+SuccessExitStatus=133
 
 [Install]
 WantedBy=multi-user.target
index 5baf22c183e325a9faf7be0487944ab965db4068..ade9dc300714f5d67d9c62f20a20170fb7f620aa 100644 (file)
@@ -11,13 +11,9 @@ Documentation=man:systemd-sysctl.service(8) man:sysctl.d(5)
 DefaultDependencies=no
 Conflicts=shutdown.target
 After=systemd-readahead-collect.service systemd-readahead-replay.service
+After=systemd-modules-load.service
 Before=sysinit.target shutdown.target
 ConditionPathIsReadWrite=/proc/sys/
-ConditionDirectoryNotEmpty=|/lib/sysctl.d
-ConditionDirectoryNotEmpty=|/usr/lib/sysctl.d
-ConditionDirectoryNotEmpty=|/usr/local/lib/sysctl.d
-ConditionDirectoryNotEmpty=|/etc/sysctl.d
-ConditionDirectoryNotEmpty=|/run/sysctl.d
 
 [Service]
 Type=oneshot
diff --git a/units/systemd-sysusers.service.in b/units/systemd-sysusers.service.in
new file mode 100644 (file)
index 0000000..69fea11
--- /dev/null
@@ -0,0 +1,20 @@
+#  This file is part of systemd.
+#
+#  systemd is free software; you can redistribute it and/or modify it
+#  under the terms of the GNU Lesser General Public License as published by
+#  the Free Software Foundation; either version 2.1 of the License, or
+#  (at your option) any later version.
+
+[Unit]
+Description=Create System Users
+Documentation=man:sysusers.d(5) man:systemd-sysusers.service(8)
+DefaultDependencies=no
+Conflicts=shutdown.target
+After=systemd-readahead-collect.service systemd-readahead-replay.service systemd-remount-fs.service
+Before=sysinit.target shutdown.target systemd-update-done.service
+ConditionNeedsUpdate=/etc
+
+[Service]
+Type=oneshot
+RemainAfterExit=yes
+ExecStart=@rootbindir@/systemd-sysusers
index 3a1bc48a91e91de6ba2eb8ded0dfe2fe55ccd2d0..39edafc8d295d7b92536002144cdeac4f5dcb899 100644 (file)
@@ -9,13 +9,13 @@
 Description=Network Time Synchronization
 Documentation=man:systemd-timesyncd.service(8)
 ConditionCapability=CAP_SYS_TIME
-DefaultDependencies=off
+ConditionVirtualization=no
+DefaultDependencies=no
 RequiresMountsFor=/var/lib/systemd/clock
-After=systemd-remount-fs.service systemd-tmpfiles-setup.service
-Before=sysinit.target shutdown.target
+After=systemd-remount-fs.service systemd-tmpfiles-setup.service systemd-sysusers.service
+Before=time-sync.target sysinit.target shutdown.target
 Conflicts=shutdown.target
 Wants=time-sync.target
-Before=time-sync.target
 
 [Service]
 Type=notify
index a5b5acb0c2aca92560a8a2fec184de391f16d3dd..31b2378410804835386626faca04ff542104b0b5 100644 (file)
@@ -9,13 +9,9 @@
 Description=Cleanup of Temporary Directories
 Documentation=man:tmpfiles.d(5) man:systemd-tmpfiles(8)
 DefaultDependencies=no
-Wants=local-fs.target
-After=systemd-readahead-collect.service systemd-readahead-replay.service local-fs.target
-Before=sysinit.target shutdown.target
-ConditionDirectoryNotEmpty=|/usr/lib/tmpfiles.d
-ConditionDirectoryNotEmpty=|/usr/local/lib/tmpfiles.d
-ConditionDirectoryNotEmpty=|/etc/tmpfiles.d
-ConditionDirectoryNotEmpty=|/run/tmpfiles.d
+Conflicts=shutdown.target
+After=systemd-readahead-collect.service systemd-readahead-replay.service local-fs.target time-sync.target
+Before=shutdown.target
 
 [Service]
 Type=oneshot
index 05b60a1a7ded4b7dcb7d6ee99709024456cc6ba2..b9cfc53bd140001711b39f63c6b4934bedef01f6 100644 (file)
@@ -9,7 +9,9 @@
 Description=Create Static Device Nodes in /dev
 Documentation=man:tmpfiles.d(5) man:systemd-tmpfiles(8)
 DefaultDependencies=no
-Before=sysinit.target local-fs-pre.target systemd-udevd.service
+Conflicts=shutdown.target
+After=systemd-readahead-collect.service systemd-readahead-replay.service systemd-sysusers.service
+Before=sysinit.target local-fs-pre.target systemd-udevd.service shutdown.target
 ConditionCapability=CAP_MKNOD
 
 [Service]
index 01043b7a9600a02ebb785a7972b1890525fe43e2..72ab083d54d91cfcd485fffce5c36b1661691b2e 100644 (file)
@@ -9,16 +9,9 @@
 Description=Create Volatile Files and Directories
 Documentation=man:tmpfiles.d(5) man:systemd-tmpfiles(8)
 DefaultDependencies=no
-Wants=local-fs.target
 Conflicts=shutdown.target
-After=systemd-readahead-collect.service systemd-readahead-replay.service local-fs.target
+After=systemd-readahead-collect.service systemd-readahead-replay.service local-fs.target systemd-sysusers.service
 Before=sysinit.target shutdown.target
-ConditionDirectoryNotEmpty=|/usr/lib/tmpfiles.d
-ConditionDirectoryNotEmpty=|/lib/tmpfiles.d
-ConditionDirectoryNotEmpty=|/usr/local/lib/tmpfiles.d
-ConditionDirectoryNotEmpty=|/etc/tmpfiles.d
-ConditionDirectoryNotEmpty=|/run/tmpfiles.d
-RefuseManualStart=yes
 RefuseManualStop=yes
 
 [Service]
diff --git a/units/systemd-udev-hwdb-update.service.in b/units/systemd-udev-hwdb-update.service.in
new file mode 100644 (file)
index 0000000..153d93c
--- /dev/null
@@ -0,0 +1,20 @@
+#  This file is part of systemd.
+#
+#  systemd is free software; you can redistribute it and/or modify it
+#  under the terms of the GNU Lesser General Public License as published by
+#  the Free Software Foundation; either version 2.1 of the License, or
+#  (at your option) any later version.
+
+[Unit]
+Description=Rebuild Hardware Database
+Documentation=man:udev(7) man:systemd-udevd.service(8)
+DefaultDependencies=no
+Conflicts=shutdown.target
+After=systemd-readahead-collect.service systemd-readahead-replay.service systemd-remount-fs.service
+Before=sysinit.target shutdown.target systemd-update-done.service
+ConditionNeedsUpdate=/etc
+
+[Service]
+Type=oneshot
+RemainAfterExit=yes
+ExecStart=@rootbindir@/udevadm hwdb --update
index ddee01537aa54829c69f4ae795187668a366d059..f6acd6fe4c76dd4a4d77befa3374eda8abee6b6d 100644 (file)
@@ -10,7 +10,7 @@ Description=udev Kernel Device Manager
 Documentation=man:systemd-udevd.service(8) man:udev(7)
 DefaultDependencies=no
 Wants=systemd-udevd-control.socket systemd-udevd-kernel.socket
-After=systemd-udevd-control.socket systemd-udevd-kernel.socket
+After=systemd-udevd-control.socket systemd-udevd-kernel.socket systemd-udev-hwdb-update.service systemd-sysusers.service
 Before=sysinit.target
 ConditionPathIsReadWrite=/sys
 
diff --git a/units/systemd-update-done.service.in b/units/systemd-update-done.service.in
new file mode 100644 (file)
index 0000000..7031bff
--- /dev/null
@@ -0,0 +1,21 @@
+#  This file is part of systemd.
+#
+#  systemd is free software; you can redistribute it and/or modify it
+#  under the terms of the GNU Lesser General Public License as published by
+#  the Free Software Foundation; either version 2.1 of the License, or
+#  (at your option) any later version.
+
+[Unit]
+Description=Update is Completed
+Documentation=man:systemd-update-done.service(8)
+DefaultDependencies=no
+Conflicts=shutdown.target
+After=systemd-readahead-collect.service systemd-readahead-replay.service local-fs.target
+Before=sysinit.target shutdown.target
+ConditionNeedsUpdate=|/etc
+ConditionNeedsUpdate=|/var
+
+[Service]
+Type=oneshot
+RemainAfterExit=yes
+ExecStart=@rootlibexecdir@/systemd-update-done
index 99a3ba3f6c929d3d9119c3ca8c9f2a3a7678e3f1..00a0d28722449038f17e6aa66cb6c70def0cf9f8 100644 (file)
@@ -9,6 +9,7 @@
 Description=Temporary Directory
 Documentation=man:hier(7)
 Documentation=http://www.freedesktop.org/wiki/Software/systemd/APIFileSystems
+ConditionPathIsSymbolicLink=!/tmp
 DefaultDependencies=no
 Conflicts=umount.target
 Before=local-fs.target umount.target
index b74d13c29caa4431f035d6454cb9738f1196a288..afc6e9360a0e39114a89288032b062810d112749 100644 (file)
@@ -10,4 +10,3 @@ Description=Basic System
 Documentation=man:systemd.special(7)
 Wants=sockets.target timers.target paths.target
 After=sockets.target timers.target paths.target
-RefuseManualStart=yes